Skip to content

Test builds using clang-14 in CI #7496

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

Merged
merged 7 commits into from
Jan 25, 2023

Conversation

tautschnig
Copy link
Collaborator

Ubuntu 22.04 ships version 14 of clang by default. Use it in CI (and not just clang-10, as other jobs already do).

  • Each commit message has a non-empty body, explaining why the change was made.
  • n/a Methods or procedures I have added are documented, following the guidelines provided in CODING_STANDARD.md.
  • n/a The feature or user visible behaviour I have added or modified has been documented in the User Guide in doc/cprover-manual/
  • Regression or unit tests are included, or existing tests cover the modified code (in this case I have detailed which ones those are in the commit message).
  • n/a My commit message includes data points confirming performance improvements (if claimed).
  • My PR is restricted to a single feature or bugfix.
  • n/a White-space or formatting changes outside the feature-related changed lines are in commits of their own.

@tautschnig tautschnig added the CI label Jan 23, 2023
@tautschnig tautschnig self-assigned this Jan 23, 2023
@tautschnig tautschnig force-pushed the bugfixes/clang-14 branch 4 times, most recently from 7548ed2 to 947b072 Compare January 23, 2023 13:17
@tautschnig tautschnig force-pushed the bugfixes/clang-14 branch 5 times, most recently from b2e0440 to 54a7b5a Compare January 23, 2023 21:41
Compiler names may include spaces (such as `ccache gcc`).
Clang warns when bitwise operations are used with Boolean operands.
glibc headers define C99 variants via asm renaming. Library checks
(rightly) failed when using clang 14, reporting duplicate definitions.

Fixes: diffblue#7366
All functions must be declared before being used, and library checks
should not fail due to duplicate definitions.
The rules were already in place, but there was no dependency to ensure
invocation.
Ubuntu 22.04 ships version 14 of clang by default. Use it in CI (and
not just clang-10, as other jobs already do).
Copy link
Contributor

@TGWDB TGWDB left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I recognise all the fixes are mostly to get things to work with clang-14, but typically it's nice to be in separate PRs (here it's ok, and in clear commits).

Also it would be good if this was a required job (@peterschrammel ).

@@ -242,6 +242,76 @@ jobs:
- name: Run tests
run: cd build; ctest . -V -L CORE -j2

# This job takes approximately N minutes
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

N=34?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My apologies for failing to clean this up, I've now taken care of this in #7504.

@NlightNFotis NlightNFotis merged commit cb951fb into diffblue:develop Jan 25, 2023
@tautschnig tautschnig deleted the bugfixes/clang-14 branch January 25, 2023 13:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants