-
Notifications
You must be signed in to change notification settings - Fork 675
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Idea: Run expectation tests with specific clang versions #2638
Comments
Clang 16 also causes several tests to fail; at least:
The change for
|
I have some work towards this: main...boydjohnson:rust-bindgen:feature/test-different-clang-versions I used the debs available at apt.llvm.org for ubuntu:22.04 (jammy jellyfish). Here are the The Dockerfiles I included are generally useful for local development, too. These next to commands are to build the required images:
Then you can run local changes to bindgen through bindgen-tests via:
Is this well received and would you want me to build prior versions of llvm/libclang so that libclang 12 and prior can be tested against? |
This would certainly be appreciated. I can review a PR with these changes just ping me when you're ready. |
Right now
bindgen-tests
will run with the system'sclang
version by default. Even though this can be overridden using environment variables, installing differentclang
versions can be cumbersome but not running the expectation tests could lead to unexpected CI failures. The most common example of this is a test that fails because clang 5 lacks a feature available in later clang versions.I've had success using nix to install different clang versions without issue. However using a more ubiquitous tool like docker to set up the right environment would be more accessible and would reduce the time spent going back and forth with CI.
The text was updated successfully, but these errors were encountered: