Prefer consteval to _CONSTEVAL, enable <source_location> for Clang
#3584
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
And enable support for
source_locationfor Clang.I've observed that there're already some unprotected uses of
constevalin C++20/23 modes, which should have proved thatconstevalgets well with MSVC and Clang. EDG is not well tested, but it is claimed that immediate functions are supported since 5.1. So I thinkconstevalis also well supported.I think
_CONSTEVALis still useful since there may be some other candidate functions for_CONSTEVALthat are needed for pre-C++20.After this change, there'll be only one occurrence of
_CONSTEVAL, which is in<random>:STL/stl/inc/random
Line 1002 in 5116678
Edit:
__cpp_constevalbut acceptsconstevalwithout error.__builtin_COLUMN().__builtin_COLUMN()seem unchanged between Clang15 and 17 (Godbolt link).