diff options
author | Brad King <brad.king@kitware.com> | 2023-10-03 19:19:44 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2023-10-03 20:06:46 (GMT) |
commit | 7ac696549a8608490e871ee77efe4086daf28add (patch) | |
tree | 57cce92f87b2cfa9c747661d61cd057591e6556b /Source/cmParseArgumentsCommand.cxx | |
parent | 8bd2c8d1fdd5b2dad9e65835a9c704ebe9b7371a (diff) | |
download | CMake-7ac696549a8608490e871ee77efe4086daf28add.zip CMake-7ac696549a8608490e871ee77efe4086daf28add.tar.gz CMake-7ac696549a8608490e871ee77efe4086daf28add.tar.bz2 |
cxxmodules: Fix CMP0155 NEW behavior when C++ compile features are not known
With CMP0155 NEW behavior, we scan C++ sources in targets using C++ 20,
i.e., in which the `cxx_std_20` feature is available. However, our
check for C++ feature availability may incorrectly succeed in two cases:
* MSVC versions from VS 2013 do not model C++ standard levels,
so we assume all features are available as a heuristic to let
projects at least try compiling with them.
* During ABI detection the `CMAKE_CXX20_COMPILE_FEATURES` variable is not
populated so we assume all features are available, knowing that our
ABI detection project does not need them.
For purposes of detecting targets using C++ 20, we do not want to assume
`cxx_std_20` is available, so verify that we really know it is.
Diffstat (limited to 'Source/cmParseArgumentsCommand.cxx')
0 files changed, 0 insertions, 0 deletions