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
Feature: add GCC 11 to settings.yml #8924
Conversation
…d 23 added Signed-off-by: SSE4 <tomskside@gmail.com>
conans/client/migrations_settings.py
Outdated
"7", "7.1", "7.2", "7.3", "7.4", "7.5", | ||
"8", "8.1", "8.2", "8.3", "8.4", | ||
"9", "9.1", "9.2", "9.3", | ||
"10", "10.1", "11", "11.1"] |
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.
GNU gcc 10.2 and 10.3 also exist
(see https://gcc.gnu.org/)
- shouldn't every major gcc version get its own line?
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.
Yes, better use the same format, please move each major to its own line.
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.
Looking good, please check comments.
conans/client/build/cppstd_flags.py
Outdated
if Version(gcc_version) >= "11": | ||
v20 = "c++20" | ||
vgnu20 = "gnu++20" | ||
v23 = "c++23" |
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.
Isn't this c++2b
at the moment?
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.
both have the same effect, so doesn't matter
-std=gnu++2b Conform to the ISO 2023 C++ draft standard with GNU extensions (experimental and incomplete support). Same as -std=gnu++23.
-std=c++2b Conform to the ISO 2023 C++ draft standard (experimental and incomplete support). Same as -std=c++23.
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.
Yes, effect is the same, but it is the way to indicate the compiler doesn't have full support for c++23, like the above:
if Version(gcc_version) >= "8":
v20 = "c++2a"
vgnu20 = "gnu++2a"
Shouldn't we follow the same approach as above?
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.
seems like c++17, c++20 and c++23 are still incomplete according to the https://gcc.gnu.org/projects/cxx-status.html
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.
I've changed c++23
-> c++2b
and c++20
-> c++2a
as they are incomplete.
not sure if I should touch c++17
, it's still incomplete, but we already use that instead of c++1z
for GCC 10.
conans/client/migrations_settings.py
Outdated
"7", "7.1", "7.2", "7.3", "7.4", "7.5", | ||
"8", "8.1", "8.2", "8.3", "8.4", | ||
"9", "9.1", "9.2", "9.3", | ||
"10", "10.1", "11", "11.1"] |
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.
Yes, better use the same format, please move each major to its own line.
Co-authored-by: James <james@conan.io>
Co-authored-by: James <james@conan.io>
closes: #8885
Changelog: Feature: add GCC 11 to settings.yml.
Docs: omit
develop
branch, documenting this one.Note: By default this PR will skip the slower tests and will use a limited set of python versions. Check here how to increase the testing level by writing some tags in the current PR body text.