Fix C++20/gcc-12 issues (Part 1)#3379
Conversation
|
The remaining CI failure is the one observed here: #3138 (comment) The changes here are needed for PR #3380 not to reveal even more broken tests.
|
738a5c1 to
3ab32b7
Compare
Allocator tests fail to compile in C++20 mode with clang+MS STL due to missing copy constructors.
* alt_string has multiple member functions that should be marked noexcept. * nlohmann::ordered_map constructors can be noexcept. Compilation failures result from the warning flag -Werror=noexcept and gcc-12.
3ab32b7 to
5ec7ebe
Compare
5ec7ebe to
5c51ac7
Compare
|
Will merge when the CI is done. |
Great. Feel free to cancel all my unrelated, pending AppVeyor CI runs. |
|
Good point - it's a pity AppVeyor is so slow... @falbrechtskirchinger Thanks so much for your recent contributions! |
@nlohmann You're very welcome! There are more on the way, so I'd like to thank you for reviewing them as juggling all these items is becoming mentally taxing. |
This is the first small batch of fixes to address build failures in C++20 mode and/or using gcc-12.
It incorporates 3 commits from @nlohmann, although cc01459 should arguably not be part of this (should I remove that commit?).
The spaceship operator is needed to fully address
#3138and #3207 (Part 2) and CI will not pass all checks.Fixes #3138.
Closes #3226.
NOTE: Based on myupdate-cibranch. The (currently) 3 bottom commits are not part of this PR. Once #3368 is merged I can rebase and remove draft status.