Skip to content

fix: Fix Rust builds by adding a workaround for a GCC bug (#89)#90

Open
larsluthman wants to merge 1 commit into
gbprod:mainfrom
larsluthman:main
Open

fix: Fix Rust builds by adding a workaround for a GCC bug (#89)#90
larsluthman wants to merge 1 commit into
gbprod:mainfrom
larsluthman:main

Conversation

@larsluthman
Copy link
Copy Markdown

On x86_64 with GCC 12.2.0, the following command runs forever, slowly allocating more and more memory:

cc -I src -Wall -o parser.o -c src/parser.c

Since the cc crate for Rust adds -Wall and -Wextra by default when compiling C code using GCC, this means that cargo build also won't finish.

This is probably a bug in GCC, but as a workaround it can be avoided by explicitly disabling -Wall and -Wextra in bindings/rust/build.rs using warnings(false) and
extra_warnings(false).

Bindings for other languages that also compile the C code using GCC and enable -Wall or -Wextra are probably affected in the same way.

On x86_64 with GCC 12.2.0, the following command runs forever,
slowly allocating more and more memory:

  cc -I src -Wall -o parser.o -c src/parser.c

Since the cc crate for Rust adds -Wall and -Wextra by default
when compiling C code using GCC, this means that cargo build
also won't finish.

This is probably a bug in GCC, but as a workaround it can be
avoided by explicitly disabling -Wall and -Wextra in
bindings/rust/build.rs using warnings(false) and
extra_warnings(false).

Bindings for other languages that also compile the C code
using GCC and enable -Wall or -Wextra are probably affected
in the same way.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant