Example #1
0
//-----------------------------------------------------------------------------
void CompilerInfo::FillCxx14Features( Features& features )
{
    (void)features;

#ifdef CXX14_DECLTYPE_AUTO
    features.emplace_back( "cxx14_decltype_auto" );
#endif

#ifdef CXX14_INIT_CAPTURES
    features.emplace_back( "cxx14_init_captures" );
#endif

#ifdef CXX14_RELAXED_CONSTEXPR
    features.emplace_back( "cxx14_relaxed_constexpr" );
#endif
}
Example #2
0
//-----------------------------------------------------------------------------
void CompilerInfo::FillCxx17Features( Features& features )
{
    (void)features;

#ifdef CXX17_NESTED_NAMESPACES
    features.emplace_back( "cxx17_nested_namespaces" );
#endif
}
Example #3
0
//-----------------------------------------------------------------------------
void CompilerInfo::FillMacros( Features& features )
{
    (void)features;

#ifdef CXX_HAS_ATTRIBUTE
    features.emplace_back( "cxx_macro_has_attribute" );
#endif

#ifdef CXX_HAS_ATTRIBUTE_CPP
    features.emplace_back( "cxx_macro_has_attribute_cpp" );
#endif

#ifdef CXX_HAS_ATTRIBUTE_DECLSPEC
    features.emplace_back( "cxx_macro_has_attribute_declspec" );
#endif

#ifdef CXX_HAS_BUILTIN
    features.emplace_back( "cxx_macro_has_builtin" );
#endif

#ifdef CXX_HAS_EXTENSION
    features.emplace_back( "cxx_macro_has_extension" );
#endif

#ifdef CXX_HAS_FEATURE
    features.emplace_back( "cxx_macro_has_feature" );
#endif

#ifdef CXX_HAS_INCLUDE
    features.emplace_back( "cxx_macro_has_include" );
#endif

#ifdef CXX_HAS_INCLUDE_NEXT
    features.emplace_back( "cxx_macro_has_include_next" );
#endif

#ifdef CXX_HAS_WARNING
    features.emplace_back( "cxx_macro_has_warning" );
#endif
}
Example #4
0
//-----------------------------------------------------------------------------
void CompilerInfo::FillCxx11Features( Features& features )
{
    (void)features;

#ifdef CXX11_ALIAS_TEMPLATES
    features.emplace_back( "cxx11_alias_templates" );
#endif

#ifdef CXX11_CONSTEXPR
    features.emplace_back( "cxx11_constexpr" );
#endif

#ifdef CXX11_DECLTYPE
    features.emplace_back( "cxx11_decltype" );
#endif

#ifdef CXX11_DEFAULTED_FUNCTIONS
    features.emplace_back( "cxx11_defaulted_functions" );
#endif

#ifdef CXX11_DELEGATING_CONSTRUCTORS
    features.emplace_back( "cxx11_delegating_constructors" );
#endif

#ifdef CXX11_DELETED_FUNCTIONS
    features.emplace_back( "cxx11_deleted_functions" );
#endif

#ifdef CXX11_GENERALIZED_INITIALIZERS
    features.emplace_back( "cxx11_generalized_initializers" );
#endif

#ifdef CXX11_IMPLICIT_MOVES
    features.emplace_back( "cxx11_implicit_moves" );
#endif

#ifdef CXX11_INHERITING_CONSTRUCTORS
    features.emplace_back( "cxx11_inheriting_constructors" );
#endif

#ifdef CXX11_LAMBDAS
    features.emplace_back( "cxx11_lambdas" );
#endif

#ifdef CXX11_NOEXCEPT
    features.emplace_back( "cxx11_noexcept" );
#endif

#ifdef CXX11_NULLPTR
    features.emplace_back( "cxx11_nullptr" );
#endif

#ifdef CXX11_OVERRIDE_CONTROL
    features.emplace_back( "cxx11_override_control" );
#endif

#ifdef CXX11_STRONG_ENUMS
    features.emplace_back( "cxx11_strong_enums" );
#endif

#ifdef CXX11_VARIADIC_TEMPLATES
    features.emplace_back( "cxx11_variadic_templates" );
#endif
}