The variations are:
These properties specify language standard versions which are requested. When a
newer standard is specified than is supported by the compiler, then it will
fallback to the latest supported standard. This "decay" behavior may be
controlled with the
<LANG>_STANDARD_REQUIRED target property.
Note that the actual language standard used may be higher than that specified
<LANG>_STANDARD, regardless of the value of
<LANG>_STANDARD_REQUIRED. In particular,
transitive usage requirements or the use of
compile features can raise the required
language standard above what
These properties are initialized by the value of the
CMAKE_<LANG>_STANDARD variable if it is set when a target is
For supported values and CMake versions see the respective pages.
To control compiler-specific extensions see
cmake-compile-features(7) manual for information on
compile features and a list of supported compilers.