CMAKE_CXX_KNOWN_FEATURES

List of C++ features known to this version of CMake.

The features listed in this global property may be known to be available to the C++ compiler. If the feature is available with the C++ compiler, it will be listed in the CMAKE_CXX_COMPILE_FEATURES variable.

The features listed here may be used with the target_compile_features() command. See the cmake-compile-features(7) manual for information on compile features and a list of supported compilers.

The features known to this version of CMake are:

cxx_std_98

Compiler mode is at least C++ 98.

cxx_std_11

Compiler mode is at least C++ 11.

cxx_std_14

Compiler mode is at least C++ 14.

cxx_std_17

Compiler mode is at least C++ 17.

cxx_std_20

Compiler mode is at least C++ 20.

cxx_aggregate_default_initializers

Aggregate default initializers, as defined in N3605.

cxx_alias_templates

Template aliases, as defined in N2258.

cxx_alignas

Alignment control alignas, as defined in N2341.

cxx_alignof

Alignment control alignof, as defined in N2341.

cxx_attributes

Generic attributes, as defined in N2761.

cxx_attribute_deprecated

[[deprecated]] attribute, as defined in N3760.

cxx_auto_type

Automatic type deduction, as defined in N1984.

cxx_binary_literals

Binary literals, as defined in N3472.

cxx_constexpr

Constant expressions, as defined in N2235.

cxx_contextual_conversions

Contextual conversions, as defined in N3323.

cxx_decltype_incomplete_return_types

Decltype on incomplete return types, as defined in N3276.

cxx_decltype

Decltype, as defined in N2343.

cxx_decltype_auto

decltype(auto) semantics, as defined in N3638.

cxx_default_function_template_args

Default template arguments for function templates, as defined in DR226

cxx_defaulted_functions

Defaulted functions, as defined in N2346.

cxx_defaulted_move_initializers

Defaulted move initializers, as defined in N3053.

cxx_delegating_constructors

Delegating constructors, as defined in N1986.

cxx_deleted_functions

Deleted functions, as defined in N2346.

cxx_digit_separators

Digit separators, as defined in N3781.

cxx_enum_forward_declarations

Enum forward declarations, as defined in N2764.

cxx_explicit_conversions

Explicit conversion operators, as defined in N2437.

cxx_extended_friend_declarations

Extended friend declarations, as defined in N1791.

cxx_extern_templates

Extern templates, as defined in N1987.

cxx_final

Override control final keyword, as defined in N2928, N3206 and N3272.

cxx_func_identifier

Predefined __func__ identifier, as defined in N2340.

cxx_generalized_initializers

Initializer lists, as defined in N2672.

cxx_generic_lambdas

Generic lambdas, as defined in N3649.

cxx_inheriting_constructors

Inheriting constructors, as defined in N2540.

cxx_inline_namespaces

Inline namespaces, as defined in N2535.

cxx_lambdas

Lambda functions, as defined in N2927.

cxx_lambda_init_captures

Initialized lambda captures, as defined in N3648.

cxx_local_type_template_args

Local and unnamed types as template arguments, as defined in N2657.

cxx_long_long_type

long long type, as defined in N1811.

cxx_noexcept

Exception specifications, as defined in N3050.

cxx_nonstatic_member_init

Non-static data member initialization, as defined in N2756.

cxx_nullptr

Null pointer, as defined in N2431.

cxx_override

Override control override keyword, as defined in N2928, N3206 and N3272.

cxx_range_for

Range-based for, as defined in N2930.

cxx_raw_string_literals

Raw string literals, as defined in N2442.

cxx_reference_qualified_functions

Reference qualified functions, as defined in N2439.

cxx_relaxed_constexpr

Relaxed constexpr, as defined in N3652.

cxx_return_type_deduction

Return type deduction on normal functions, as defined in N3386.

cxx_right_angle_brackets

Right angle bracket parsing, as defined in N1757.

cxx_rvalue_references

R-value references, as defined in N2118.

cxx_sizeof_member

Size of non-static data members, as defined in N2253.

cxx_static_assert

Static assert, as defined in N1720.

cxx_strong_enums

Strongly typed enums, as defined in N2347.

cxx_thread_local

Thread-local variables, as defined in N2659.

cxx_trailing_return_types

Automatic function return type, as defined in N2541.

cxx_unicode_literals

Unicode string literals, as defined in N2442.

cxx_uniform_initialization

Uniform initialization, as defined in N2640.

cxx_unrestricted_unions

Unrestricted unions, as defined in N2544.

cxx_user_literals

User-defined literals, as defined in N2765.

cxx_variable_templates

Variable templates, as defined in N3651.

cxx_variadic_macros

Variadic macros, as defined in N1653.

cxx_variadic_templates

Variadic templates, as defined in N2242.

cxx_template_template_parameters

Template template parameters, as defined in ISO/IEC 14882:1998.

© 2000–2020 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.17/prop_gbl/CMAKE_CXX_KNOWN_FEATURES.html