Skip to content

Building Rust bindings fails because GCC hangs on -Wall/-Wextra #89

@larsluthman

Description

@larsluthman

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions