Dark Mode

Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Fix build on GCC 13+ by explicitly declaring to CLI11 ;#2740

Closed
gluonparticle wants to merge 1 commit intosu2code:developfrom
gluonparticle:master
Closed

Fix build on GCC 13+ by explicitly declaring to CLI11 ;#2740
gluonparticle wants to merge 1 commit intosu2code:developfrom
gluonparticle:master

Conversation

Copy link

gluonparticle commented Mar 1, 2026

Proposed Changes

GCC 13 and newer removed implicit includes of from standard library headers. This causes the build to fail on modern compilers (like GCC 15 on Arch Linux) when compiling the vendorized CLI11 library due to uint64_t not being defined. This patch explicitly includes in externals/CLI11/CLI11.hpp to restore compatibility without breaking older compilers.

Related Work

Resolves local build failures on rolling-release Linux distributions.

System Information:

  • OS: Arch Linux (Kernel 6.18.13-arch1-1)
  • Compiler: GCC 15.2.1

Error Log Addressed:
../externals/CLI11/CLI11.hpp:2412:22: error: 'uint64_t' does not name a type
2412 | using result_t = uint64_t;
| ^~~~~~~~
../externals/CLI11/CLI11.hpp:152:1: note: 'uint64_t' is defined in header ''; this is probably fixable by adding '#include '

PR Checklist

  • I am submitting my contribution to the develop branch.
  • My contribution generates no new compiler warnings (try with --warnlevel=3 when using meson).
  • My contribution is commented and consistent with SU2 style (https://su2code.github.io/docs_v7/Style-Guide/).
  • I used the pre-commit hook to prevent dirty commits and used pre-commit run --all to format old commits. (Note: Skipped as this is a 1-line fix to a 3rd-party vendor file)
  • I have added a test case that demonstrates my contribution, if necessary.
  • I have updated appropriate documentation (Tutorials, Docs Page, config_template.cpp), if necessary;

GCC 13 and newer removed implicit includes of from standard library headers. This causes the build to fail on modern compilers (like those on Arch Linux) when compiling the vendorized CLI11 library due to uint64_t not being defined. This patch explicitly includes in externals/CLI11/CLI11.hpp to restore compatibility;
Copy link
Member

pcarruscag commented Mar 2, 2026

see #2735

pcarruscag closed this Mar 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

No reviews

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

2 participants