-
Notifications
You must be signed in to change notification settings - Fork 273
Build using C++17 #7172
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
Build using C++17 #7172
Conversation
Codecov ReportBase: 78.02% // Head: 78.01% // Decreases project coverage by
Additional details and impacted files@@ Coverage Diff @@
## develop #7172 +/- ##
===========================================
- Coverage 78.02% 78.01% -0.01%
===========================================
Files 1625 1622 -3
Lines 187427 187412 -15
===========================================
- Hits 146231 146211 -20
- Misses 41196 41201 +5
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. ☔ View full report at Codecov. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
General "dependencies are barriers to users, especially new ones" feelings but #6749 (comment) seems sufficiently reassuring and motivating for why this is useful.
Could we bump the cmake version to avoid "hard coding" the compiler flags? #7184 |
I would probably wait for 6.0 with this. |
For bumping the cmake version or for moving to C++17 or both? |
@tautschnig I have now merged the cmake version bump PR. Therefore it should no longer be necessary to "hard-code the necessary command-line options." |
f8c1367
to
1a1695a
Compare
Done. |
This raises the minimum GCC version supported to 7 (see https://gcc.gnu.org/projects/cxx-status.html#cxx17). Add -Wno-register to silence warnings about the use of the `register` storage class by older flex versions (as present on macOS).
1a1695a
to
0a3b0ef
Compare
Another PR has been created for this #7989. Closing as duplicate |
This raises the minimum GCC version supported to 7 (see https://gcc.gnu.org/projects/cxx-status.html#cxx17).
Add -Wno-register to silence warnings about the use of the
register
storage class by older flex versions (as present on macOS).CMake doesn't know about C++ 17 until version 3.8, so we need to hard-code the necessary command-line options.
This is now the single commit from #6749 that actually switches over to C++17. All other commits in #6749 are improvements enabled by this commit, but some of them require large changes that may take a lot of time to get reviewed. The aim of this PR is to unblock use of C++17, without necessarily reaping all benefit right away.