Go to the source code of this file.
Macros | |
Compiler Identification Macros | |
Macro useful to identify current compiler and its version. | |
#define | YARP_COMPILER_IS_Comeau 0 |
#define | YARP_COMPILER_IS_Intel 0 |
#define | YARP_COMPILER_IS_PathScale 0 |
#define | YARP_COMPILER_IS_Embarcadero 0 |
#define | YARP_COMPILER_IS_Borland 0 |
#define | YARP_COMPILER_IS_Watcom 0 |
#define | YARP_COMPILER_IS_OpenWatcom 0 |
#define | YARP_COMPILER_IS_SunPro 0 |
#define | YARP_COMPILER_IS_HP 0 |
#define | YARP_COMPILER_IS_Compaq 0 |
#define | YARP_COMPILER_IS_zOS 0 |
#define | YARP_COMPILER_IS_XL 0 |
#define | YARP_COMPILER_IS_VisualAge 0 |
#define | YARP_COMPILER_IS_PGI 0 |
#define | YARP_COMPILER_IS_Cray 0 |
#define | YARP_COMPILER_IS_TI 0 |
#define | YARP_COMPILER_IS_Fujitsu 0 |
#define | YARP_COMPILER_IS_SCO 0 |
#define | YARP_COMPILER_IS_AppleClang 0 |
#define | YARP_COMPILER_IS_Clang 0 |
#define | YARP_COMPILER_IS_GNU 0 |
#define | YARP_COMPILER_IS_MSVC 0 |
#define | YARP_COMPILER_IS_ADSP 0 |
#define | YARP_COMPILER_IS_IAR 0 |
#define | YARP_COMPILER_IS_ARMCC 0 |
#define | YARP_COMPILER_IS_MIPSpro 0 |
#define | YARP_COMPILER_IS_Doxygen 1 |
#define | YARP_COMPILER_IS_Swig 0 |
#define | YARP_COMPILER_VERSION_MAJOR DOXYGEN_MAJOR_VERSION |
Current compiler major version number, if defined. | |
#define | YARP_COMPILER_VERSION_MINOR DOXYGEN_MINOR_VERSION |
Current compiler minor version number, if defined. | |
#define | YARP_COMPILER_VERSION_PATCH DOXYGEN_PATCH_VERSION |
Current compiler patch version number, if defined. | |
Compiler Supported Features | |
Macros useful to check if current compiler and build flags combination supports specific features. | |
#define | YARP_COMPILER_CXX_AGGREGATE_DEFAULT_INITIALIZERS 1 |
1 if the current c++ compiler and build flags combination supports aggregate default initializers, as defined in N3605. | |
#define | YARP_COMPILER_CXX_ALIAS_TEMPLATES 1 |
1 if the current c++ compiler and build flags combination supports template aliases, as defined in N2258. | |
#define | YARP_COMPILER_CXX_ALIGNAS 1 |
1 if the current c++ compiler and build flags combination supports alignment control alignas , as defined in N2341. | |
#define | YARP_COMPILER_CXX_ALIGNOF 1 |
1 if the current c++ compiler and build flags combination supports alignment control alignof , as defined in N2341. | |
#define | YARP_COMPILER_CXX_ATTRIBUTES 1 |
1 if the current c++ compiler and build flags combination supports generic attributes, as defined in N2761. | |
#define | YARP_COMPILER_CXX_ATTRIBUTE_DEPRECATED 1 |
1 if the current c++ compiler and build flags combination supports the [[deprecated]] attribute, as defined in N3760. | |
#define | YARP_COMPILER_CXX_AUTO_TYPE 1 |
1 if the current c++ compiler and build flags combination supports automatic type deduction, as defined in N1984. | |
#define | YARP_COMPILER_CXX_BINARY_LITERALS 1 |
1 if the current c++ compiler and build flags combination supports binary literals, as defined in N3472. | |
#define | YARP_COMPILER_CXX_CONSTEXPR 1 |
1 if the current c++ compiler and build flags combination supports constant expressions, as defined in N2235. | |
#define | YARP_COMPILER_CXX_CONTEXTUAL_CONVERSIONS 1 |
1 if the current c++ compiler and build flags combination supports contextual conversions, as defined in N3323. | |
#define | YARP_COMPILER_CXX_DECLTYPE 1 |
1 if the current c++ compiler and build flags combination supports decltype, as defined in N2343. | |
#define | YARP_COMPILER_CXX_DECLTYPE_AUTO 1 |
1 if the current c++ compiler and build flags combination supports decltype(auto) semantics, as defined in N3638. | |
#define | YARP_COMPILER_CXX_DECLTYPE_INCOMPLETE_RETURN_TYPES 1 |
1 if the current c++ compiler and build flags combination supports decltype on incomplete return types, as defined in N3276. | |
#define | YARP_COMPILER_CXX_DEFAULT_FUNCTION_TEMPLATE_ARGS 1 |
1 if the current c++ compiler and build flags combination supports default template arguments for function templates, as defined in DR226. | |
#define | YARP_COMPILER_CXX_DEFAULTED_FUNCTIONS 1 |
1 if the current c++ compiler and build flags combination supports defaulted functions, as defined in N2346. | |
#define | YARP_COMPILER_CXX_DEFAULTED_MOVE_INITIALIZERS 1 |
1 if the current c++ compiler and build flags combination supports defaulted move initializers, as defined in N3053. | |
#define | YARP_COMPILER_CXX_DELEGATING_CONSTRUCTORS 1 |
1 if the current c++ compiler and build flags combination supports delegating constructors, as defined in N1986. | |
#define | YARP_COMPILER_CXX_DELETED_FUNCTIONS 1 |
1 if the current c++ compiler and build flags combination supports deleted functions, as defined in N2346. | |
#define | YARP_COMPILER_CXX_DIGIT_SEPARATORS 1 |
1 if the current c++ compiler and build flags combination supports digit separators, as defined in N3781. | |
#define | YARP_COMPILER_CXX_ENUM_FORWARD_DECLARATIONS 1 |
1 if the current c++ compiler and build flags combination supports enum forward declarations, as defined in N2764. | |
#define | YARP_COMPILER_CXX_EXPLICIT_CONVERSIONS 1 |
1 if the current c++ compiler and build flags combination supports explicit conversion operators, as defined in N2437. | |
#define | YARP_COMPILER_CXX_EXTENDED_FRIEND_DECLARATIONS 1 |
1 if the current c++ compiler and build flags combination supports extended friend declarations, as defined in N1791. | |
#define | YARP_COMPILER_CXX_EXTERN_TEMPLATES 1 |
1 if the current c++ compiler and build flags combination supports extern templates, as defined in N1987. | |
#define | YARP_COMPILER_CXX_FINAL 1 |
1 if the current c++ compiler and build flags combination supports the override control final keyword, as defined in N2928, N3206 and N3272. | |
#define | YARP_COMPILER_CXX_FUNC_IDENTIFIER 1 |
1 if the current c++ compiler and build flags combination supports predefined __func__ identifier, as defined in N2340. | |
#define | YARP_COMPILER_CXX_GENERALIZED_INITIALIZERS 1 |
1 if the current c++ compiler and build flags combination supports initializer lists, as defined in N2672. | |
#define | YARP_COMPILER_CXX_GENERIC_LAMBDAS 1 |
1 if the current c++ compiler and build flags combination supports generic lambdas, as defined in N3649. | |
#define | YARP_COMPILER_CXX_INHERITING_CONSTRUCTORS 1 |
1 if the current c++ compiler and build flags combination supports inheriting constructors, as defined in N2540. | |
#define | YARP_COMPILER_CXX_INLINE_NAMESPACES 1 |
1 if the current c++ compiler and build flags combination supports inline namespaces, as defined in N2535. | |
#define | YARP_COMPILER_CXX_LAMBDAS 1 |
1 if the current c++ compiler and build flags combination supports lambda functions, as defined in N2927. | |
#define | YARP_COMPILER_CXX_LAMBDA_INIT_CAPTURES 1 |
1 if the current c++ compiler and build flags combination supports lambda init captures, as defined in N3648. | |
#define | YARP_COMPILER_CXX_LOCAL_TYPE_TEMPLATE_ARGS 1 |
1 if the current c++ compiler and build flags combination supports local and unnamed types as template arguments, as defined in N2657. | |
#define | YARP_COMPILER_CXX_LONG_LONG_TYPE 1 |
1 if the current c++ compiler and build flags combination supports long long type, as defined in N1811. | |
#define | YARP_COMPILER_CXX_NOEXCEPT 1 |
1 if the current c++ compiler and build flags combination supports exception specifications, as defined in N3050. | |
#define | YARP_COMPILER_CXX_NONSTATIC_MEMBER_INIT 1 |
1 if the current c++ compiler and build flags combination supports non-static data member initialization, as defined in N2756. | |
#define | YARP_COMPILER_CXX_NULLPTR 1 |
1 if the current c++ compiler and build flags combination supports null pointer, as defined in N2431. | |
#define | YARP_COMPILER_CXX_OVERRIDE 1 |
1 if the current c++ compiler and build flags combination supports the override control override keyword, as defined in N2928, N3206 and N3272. | |
#define | YARP_COMPILER_CXX_RANGE_FOR 1 |
1 if the current c++ compiler and build flags combination supports range based for, as defined in N2930. | |
#define | YARP_COMPILER_CXX_RAW_STRING_LITERALS 1 |
1 if the current c++ compiler and build flags combination supports raw string literals, as defined in N2442. | |
#define | YARP_COMPILER_CXX_REFERENCE_QUALIFIED_FUNCTIONS 1 |
1 if the current c++ compiler and build flags combination supports reference qualified functions, as defined in N2439. | |
#define | YARP_COMPILER_CXX_RELAXED_CONSTEXPR 1 |
1 if the current c++ compiler and build flags combination supports relaxed constexpr, as defined in N3652. | |
#define | YARP_COMPILER_CXX_RETURN_TYPE_DEDUCTION 1 |
1 if the current c++ compiler and build flags combination supports return type deduction on normal functions, as defined in N3386. | |
#define | YARP_COMPILER_CXX_RIGHT_ANGLE_BRACKETS 1 |
1 if the current c++ compiler and build flags combination supports right angle bracket parsing, as defined in N1757. | |
#define | YARP_COMPILER_CXX_RVALUE_REFERENCES 1 |
1 if the current c++ compiler and build flags combination supports r-value references, as defined in N2118. | |
#define | YARP_COMPILER_CXX_SIZEOF_MEMBER 1 |
1 if the current c++ compiler and build flags combination supports size of non-static data members, as defined in N2253. | |
#define | YARP_COMPILER_CXX_STATIC_ASSERT 1 |
1 if the current c++ compiler and build flags combination supports static asserts, as defined in N1720. | |
#define | YARP_COMPILER_CXX_STRONG_ENUMS 1 |
1 if the current c++ compiler and build flags combination supports strongly typed enums, as defined in N2347. | |
#define | YARP_COMPILER_CXX_TEMPLATE_TEMPLATE_PARAMETERS 1 |
1 if the current c++ compiler and build flags combination supports template template parameters, as defined in ISO/IEC 14882:1998. | |
#define | YARP_COMPILER_CXX_THREAD_LOCAL 1 |
1 if the current c++ compiler and build flags combination supports thread-local variables, as defined in N2659. | |
#define | YARP_COMPILER_CXX_TRAILING_RETURN_TYPES 1 |
1 if the current c++ compiler and build flags combination supports automatic function return type, as defined in N2541. | |
#define | YARP_COMPILER_CXX_UNICODE_LITERALS 1 |
1 if the current c++ compiler and build flags combination supports unicode string literals, as defined in N2443. | |
#define | YARP_COMPILER_CXX_UNIFORM_INITIALIZATION 1 |
1 if the current c++ compiler and build flags combination supports uniform initialization, as defined in N2640. | |
#define | YARP_COMPILER_CXX_UNRESTRICTED_UNIONS 1 |
1 if the current c++ compiler and build flags combination supports uniform initialization, as defined in N2544. | |
#define | YARP_COMPILER_CXX_USER_LITERALS 1 |
1 if the current c++ compiler and build flags combination supports user-defined literals, as defined in N2765. | |
#define | YARP_COMPILER_CXX_VARIABLE_TEMPLATES 1 |
1 if the current c++ compiler and build flags combination supports user-defined literals, as defined in N3651. | |
#define | YARP_COMPILER_CXX_VARIADIC_MACROS 1 |
1 if the current c++ compiler and build flags combination supports variadic macros, as defined in N1653. | |
#define | YARP_COMPILER_CXX_VARIADIC_TEMPLATES 1 |
1 if the current c++ compiler and build flags combination supports variadic templates, as defined in N2242. | |
Alignment Macros | |
#define | YARP_ALIGNAS(X) alignas(X) |
Expands to the standard alignas decorator if supported, or a compiler-specific decorator such as __attribute__ ((__aligned__)) used by GNU compilers. | |
#define | YARP_ALIGNOF(X) alignof(X) |
Expands to the standard alignof decorator if supported, or a compiler-specific decorator such as __alignof__ used by GNU compilers. | |
Deprecated Functions Macros | |
#define | YARP_DEPRECATED [[deprecated]] |
Expands to either the standard [[deprecated]] attribute or a compiler-specific decorator such as __attribute__((__deprecated__)) used by GNU compilers. | |
#define | YARP_DEPRECATED_MSG(MSG) [[deprecated(MSG)]] |
Expands to either the standard [[deprecated]] attribute or a compiler-specific decorator such as __attribute__((__deprecated__)) used by GNU compilers. | |
Constant Expressions Macros | |
#define | YARP_CONSTEXPR constexpr |
Expands to constexpr if constant expressions are supported by the current c++ compiler and build flags combination, defined empty elsewhere. | |
Deleted Functions Macros | |
#define | YARP_DELETED_FUNCTION = delete |
Expands to = delete if deleted functions are supported by the the current c++ compiler and build flags combination, defined empty elsewhere. | |
Extern Templates Macros | |
#define | YARP_EXTERN_TEMPLATE extern |
Expands to exter if extern templates are supported by the the current c++ compiler and build flags combination, defined empty elsewhere. | |
Override Control Macros | |
#define | YARP_FINAL final |
Expands to the override control final keyword if this is supported by the current c++ compiler and build flags combination, defined empty elsewhere. | |
#define | YARP_OVERRIDE override |
Expands to the override control override keyword if this is supported by the current c++ compiler and build flags combination, defined empty elsewhere. | |
Exception Specifications Macros | |
#define | YARP_NOEXCEPT noexcept |
Expands to noexcept if exception specifications are supported by the current c++ compiler and build flags combination, defined empty elsewhere. | |
#define | YARP_NOEXCEPT_EXPR(X) noexcept(X) |
Expands to noexcept(X) if exception specifications are supported by the current c++ compiler and build flags combination, defined empty elsewhere. | |
Null Pointer Macros | |
#define | YARP_NULLPTR nullptr |
Expands to either the standard nullptr or to 0 elsewhere. | |
Static Assert Macros | |
#define | YARP_STATIC_ASSERT(X) static_assert(X, #X) |
Expands to static_assert(X, #X) if static asserts are supported by the current c++ compiler and build flags combination, to a compatibility implementation otherwise. | |
#define | YARP_STATIC_ASSERT_MSG(X, MSG) static_assert(X, MSG) |
Expands to static_assert(X, MSG) if static asserts are supported by the current c++ compiler and build flags combination, to a compatibility implementation otherwise. | |
Thread-Local Variables Macros | |
#define | YARP_THREAD_LOCAL thread_local |
Expands to either the standard thread_local attribute, to a compiler-specific decorator such as __thread used by GNU compilers, or defined empty if not supported by the current c++ compiler and build flags combination. | |
#define YARP_ALIGNAS | ( | X | ) | alignas(X) |
Expands to the standard alignas
decorator if supported, or a compiler-specific decorator such as __attribute__ ((__aligned__))
used by GNU compilers.
Definition at line 2863 of file compiler.h.
#define YARP_ALIGNOF | ( | X | ) | alignof(X) |
Expands to the standard alignof
decorator if supported, or a compiler-specific decorator such as __alignof__
used by GNU compilers.
Definition at line 2874 of file compiler.h.
#define YARP_COMPILER_CXX_AGGREGATE_DEFAULT_INITIALIZERS 1 |
1 if the current c++ compiler and build flags combination supports aggregate default initializers, as defined in N3605.
Definition at line 2787 of file compiler.h.
#define YARP_COMPILER_CXX_ALIAS_TEMPLATES 1 |
1 if the current c++ compiler and build flags combination supports template aliases, as defined in N2258.
Definition at line 2788 of file compiler.h.
#define YARP_COMPILER_CXX_ALIGNAS 1 |
1 if the current c++ compiler and build flags combination supports alignment control alignas
, as defined in N2341.
Definition at line 2789 of file compiler.h.
#define YARP_COMPILER_CXX_ALIGNOF 1 |
1 if the current c++ compiler and build flags combination supports alignment control alignof
, as defined in N2341.
Definition at line 2790 of file compiler.h.
#define YARP_COMPILER_CXX_ATTRIBUTE_DEPRECATED 1 |
1 if the current c++ compiler and build flags combination supports the [[deprecated]]
attribute, as defined in N3760.
Definition at line 2792 of file compiler.h.
#define YARP_COMPILER_CXX_ATTRIBUTES 1 |
1 if the current c++ compiler and build flags combination supports generic attributes, as defined in N2761.
Definition at line 2791 of file compiler.h.
#define YARP_COMPILER_CXX_AUTO_TYPE 1 |
1 if the current c++ compiler and build flags combination supports automatic type deduction, as defined in N1984.
Definition at line 2793 of file compiler.h.
#define YARP_COMPILER_CXX_BINARY_LITERALS 1 |
1 if the current c++ compiler and build flags combination supports binary literals, as defined in N3472.
Definition at line 2794 of file compiler.h.
#define YARP_COMPILER_CXX_CONSTEXPR 1 |
1 if the current c++ compiler and build flags combination supports constant expressions, as defined in N2235.
Definition at line 2795 of file compiler.h.
#define YARP_COMPILER_CXX_CONTEXTUAL_CONVERSIONS 1 |
1 if the current c++ compiler and build flags combination supports contextual conversions, as defined in N3323.
Definition at line 2796 of file compiler.h.
#define YARP_COMPILER_CXX_DECLTYPE 1 |
1 if the current c++ compiler and build flags combination supports decltype, as defined in N2343.
Definition at line 2797 of file compiler.h.
#define YARP_COMPILER_CXX_DECLTYPE_AUTO 1 |
1 if the current c++ compiler and build flags combination supports decltype(auto)
semantics, as defined in N3638.
Definition at line 2798 of file compiler.h.
#define YARP_COMPILER_CXX_DECLTYPE_INCOMPLETE_RETURN_TYPES 1 |
1 if the current c++ compiler and build flags combination supports decltype on incomplete return types, as defined in N3276.
Definition at line 2799 of file compiler.h.
#define YARP_COMPILER_CXX_DEFAULT_FUNCTION_TEMPLATE_ARGS 1 |
1 if the current c++ compiler and build flags combination supports default template arguments for function templates, as defined in DR226.
Definition at line 2800 of file compiler.h.
#define YARP_COMPILER_CXX_DEFAULTED_FUNCTIONS 1 |
1 if the current c++ compiler and build flags combination supports defaulted functions, as defined in N2346.
Definition at line 2801 of file compiler.h.
#define YARP_COMPILER_CXX_DEFAULTED_MOVE_INITIALIZERS 1 |
1 if the current c++ compiler and build flags combination supports defaulted move initializers, as defined in N3053.
Definition at line 2802 of file compiler.h.
#define YARP_COMPILER_CXX_DELEGATING_CONSTRUCTORS 1 |
1 if the current c++ compiler and build flags combination supports delegating constructors, as defined in N1986.
Definition at line 2803 of file compiler.h.
#define YARP_COMPILER_CXX_DELETED_FUNCTIONS 1 |
1 if the current c++ compiler and build flags combination supports deleted functions, as defined in N2346.
Definition at line 2804 of file compiler.h.
#define YARP_COMPILER_CXX_DIGIT_SEPARATORS 1 |
1 if the current c++ compiler and build flags combination supports digit separators, as defined in N3781.
Definition at line 2805 of file compiler.h.
#define YARP_COMPILER_CXX_ENUM_FORWARD_DECLARATIONS 1 |
1 if the current c++ compiler and build flags combination supports enum forward declarations, as defined in N2764.
Definition at line 2806 of file compiler.h.
#define YARP_COMPILER_CXX_EXPLICIT_CONVERSIONS 1 |
1 if the current c++ compiler and build flags combination supports explicit conversion operators, as defined in N2437.
Definition at line 2807 of file compiler.h.
#define YARP_COMPILER_CXX_EXTENDED_FRIEND_DECLARATIONS 1 |
1 if the current c++ compiler and build flags combination supports extended friend declarations, as defined in N1791.
Definition at line 2808 of file compiler.h.
#define YARP_COMPILER_CXX_EXTERN_TEMPLATES 1 |
1 if the current c++ compiler and build flags combination supports extern templates, as defined in N1987.
Definition at line 2809 of file compiler.h.
#define YARP_COMPILER_CXX_FINAL 1 |
1 if the current c++ compiler and build flags combination supports the override control final
keyword, as defined in N2928, N3206 and N3272.
Definition at line 2810 of file compiler.h.
#define YARP_COMPILER_CXX_FUNC_IDENTIFIER 1 |
1 if the current c++ compiler and build flags combination supports predefined __func__
identifier, as defined in N2340.
Definition at line 2811 of file compiler.h.
#define YARP_COMPILER_CXX_GENERALIZED_INITIALIZERS 1 |
1 if the current c++ compiler and build flags combination supports initializer lists, as defined in N2672.
Definition at line 2812 of file compiler.h.
#define YARP_COMPILER_CXX_GENERIC_LAMBDAS 1 |
1 if the current c++ compiler and build flags combination supports generic lambdas, as defined in N3649.
Definition at line 2813 of file compiler.h.
#define YARP_COMPILER_CXX_INHERITING_CONSTRUCTORS 1 |
1 if the current c++ compiler and build flags combination supports inheriting constructors, as defined in N2540.
Definition at line 2814 of file compiler.h.
#define YARP_COMPILER_CXX_INLINE_NAMESPACES 1 |
1 if the current c++ compiler and build flags combination supports inline namespaces, as defined in N2535.
Definition at line 2815 of file compiler.h.
#define YARP_COMPILER_CXX_LAMBDA_INIT_CAPTURES 1 |
1 if the current c++ compiler and build flags combination supports lambda init captures, as defined in N3648.
Definition at line 2817 of file compiler.h.
#define YARP_COMPILER_CXX_LAMBDAS 1 |
1 if the current c++ compiler and build flags combination supports lambda functions, as defined in N2927.
Definition at line 2816 of file compiler.h.
#define YARP_COMPILER_CXX_LOCAL_TYPE_TEMPLATE_ARGS 1 |
1 if the current c++ compiler and build flags combination supports local and unnamed types as template arguments, as defined in N2657.
Definition at line 2818 of file compiler.h.
#define YARP_COMPILER_CXX_LONG_LONG_TYPE 1 |
1 if the current c++ compiler and build flags combination supports long long
type, as defined in N1811.
Definition at line 2819 of file compiler.h.
#define YARP_COMPILER_CXX_NOEXCEPT 1 |
1 if the current c++ compiler and build flags combination supports exception specifications, as defined in N3050.
Definition at line 2820 of file compiler.h.
#define YARP_COMPILER_CXX_NONSTATIC_MEMBER_INIT 1 |
1 if the current c++ compiler and build flags combination supports non-static data member initialization, as defined in N2756.
Definition at line 2821 of file compiler.h.
#define YARP_COMPILER_CXX_NULLPTR 1 |
1 if the current c++ compiler and build flags combination supports null pointer, as defined in N2431.
Definition at line 2822 of file compiler.h.
#define YARP_COMPILER_CXX_OVERRIDE 1 |
1 if the current c++ compiler and build flags combination supports the override control override
keyword, as defined in N2928, N3206 and N3272.
Definition at line 2823 of file compiler.h.
#define YARP_COMPILER_CXX_RANGE_FOR 1 |
1 if the current c++ compiler and build flags combination supports range based for, as defined in N2930.
Definition at line 2824 of file compiler.h.
#define YARP_COMPILER_CXX_RAW_STRING_LITERALS 1 |
1 if the current c++ compiler and build flags combination supports raw string literals, as defined in N2442.
Definition at line 2825 of file compiler.h.
#define YARP_COMPILER_CXX_REFERENCE_QUALIFIED_FUNCTIONS 1 |
1 if the current c++ compiler and build flags combination supports reference qualified functions, as defined in N2439.
Definition at line 2826 of file compiler.h.
#define YARP_COMPILER_CXX_RELAXED_CONSTEXPR 1 |
1 if the current c++ compiler and build flags combination supports relaxed constexpr, as defined in N3652.
Definition at line 2827 of file compiler.h.
#define YARP_COMPILER_CXX_RETURN_TYPE_DEDUCTION 1 |
1 if the current c++ compiler and build flags combination supports return type deduction on normal functions, as defined in N3386.
Definition at line 2828 of file compiler.h.
#define YARP_COMPILER_CXX_RIGHT_ANGLE_BRACKETS 1 |
1 if the current c++ compiler and build flags combination supports right angle bracket parsing, as defined in N1757.
Definition at line 2829 of file compiler.h.
#define YARP_COMPILER_CXX_RVALUE_REFERENCES 1 |
1 if the current c++ compiler and build flags combination supports r-value references, as defined in N2118.
Definition at line 2830 of file compiler.h.
#define YARP_COMPILER_CXX_SIZEOF_MEMBER 1 |
1 if the current c++ compiler and build flags combination supports size of non-static data members, as defined in N2253.
Definition at line 2831 of file compiler.h.
#define YARP_COMPILER_CXX_STATIC_ASSERT 1 |
1 if the current c++ compiler and build flags combination supports static asserts, as defined in N1720.
Definition at line 2832 of file compiler.h.
#define YARP_COMPILER_CXX_STRONG_ENUMS 1 |
1 if the current c++ compiler and build flags combination supports strongly typed enums, as defined in N2347.
Definition at line 2833 of file compiler.h.
#define YARP_COMPILER_CXX_TEMPLATE_TEMPLATE_PARAMETERS 1 |
1 if the current c++ compiler and build flags combination supports template template parameters, as defined in ISO/IEC 14882:1998.
Definition at line 2834 of file compiler.h.
#define YARP_COMPILER_CXX_THREAD_LOCAL 1 |
1 if the current c++ compiler and build flags combination supports thread-local variables, as defined in N2659.
Definition at line 2835 of file compiler.h.
#define YARP_COMPILER_CXX_TRAILING_RETURN_TYPES 1 |
1 if the current c++ compiler and build flags combination supports automatic function return type, as defined in N2541.
Definition at line 2836 of file compiler.h.
#define YARP_COMPILER_CXX_UNICODE_LITERALS 1 |
1 if the current c++ compiler and build flags combination supports unicode string literals, as defined in N2443.
Definition at line 2837 of file compiler.h.
#define YARP_COMPILER_CXX_UNIFORM_INITIALIZATION 1 |
1 if the current c++ compiler and build flags combination supports uniform initialization, as defined in N2640.
Definition at line 2838 of file compiler.h.
#define YARP_COMPILER_CXX_UNRESTRICTED_UNIONS 1 |
1 if the current c++ compiler and build flags combination supports uniform initialization, as defined in N2544.
Definition at line 2839 of file compiler.h.
#define YARP_COMPILER_CXX_USER_LITERALS 1 |
1 if the current c++ compiler and build flags combination supports user-defined literals, as defined in N2765.
Definition at line 2840 of file compiler.h.
#define YARP_COMPILER_CXX_VARIABLE_TEMPLATES 1 |
1 if the current c++ compiler and build flags combination supports user-defined literals, as defined in N3651.
Definition at line 2841 of file compiler.h.
#define YARP_COMPILER_CXX_VARIADIC_MACROS 1 |
1 if the current c++ compiler and build flags combination supports variadic macros, as defined in N1653.
Definition at line 2842 of file compiler.h.
#define YARP_COMPILER_CXX_VARIADIC_TEMPLATES 1 |
1 if the current c++ compiler and build flags combination supports variadic templates, as defined in N2242.
Definition at line 2843 of file compiler.h.
#define YARP_COMPILER_IS_ADSP 0 |
Definition at line 2773 of file compiler.h.
#define YARP_COMPILER_IS_AppleClang 0 |
Definition at line 2769 of file compiler.h.
#define YARP_COMPILER_IS_ARMCC 0 |
Definition at line 2775 of file compiler.h.
#define YARP_COMPILER_IS_Borland 0 |
Definition at line 2755 of file compiler.h.
#define YARP_COMPILER_IS_Clang 0 |
Definition at line 2770 of file compiler.h.
#define YARP_COMPILER_IS_Comeau 0 |
Definition at line 2751 of file compiler.h.
#define YARP_COMPILER_IS_Compaq 0 |
Definition at line 2760 of file compiler.h.
#define YARP_COMPILER_IS_Cray 0 |
Definition at line 2765 of file compiler.h.
#define YARP_COMPILER_IS_Doxygen 1 |
Definition at line 2777 of file compiler.h.
#define YARP_COMPILER_IS_Embarcadero 0 |
Definition at line 2754 of file compiler.h.
#define YARP_COMPILER_IS_Fujitsu 0 |
Definition at line 2767 of file compiler.h.
#define YARP_COMPILER_IS_GNU 0 |
Definition at line 2771 of file compiler.h.
#define YARP_COMPILER_IS_HP 0 |
Definition at line 2759 of file compiler.h.
#define YARP_COMPILER_IS_IAR 0 |
Definition at line 2774 of file compiler.h.
#define YARP_COMPILER_IS_Intel 0 |
Definition at line 2752 of file compiler.h.
#define YARP_COMPILER_IS_MIPSpro 0 |
Definition at line 2776 of file compiler.h.
#define YARP_COMPILER_IS_MSVC 0 |
Definition at line 2772 of file compiler.h.
#define YARP_COMPILER_IS_OpenWatcom 0 |
Definition at line 2757 of file compiler.h.
#define YARP_COMPILER_IS_PathScale 0 |
Definition at line 2753 of file compiler.h.
#define YARP_COMPILER_IS_PGI 0 |
Definition at line 2764 of file compiler.h.
#define YARP_COMPILER_IS_SCO 0 |
Definition at line 2768 of file compiler.h.
#define YARP_COMPILER_IS_SunPro 0 |
Definition at line 2758 of file compiler.h.
#define YARP_COMPILER_IS_Swig 0 |
Definition at line 2778 of file compiler.h.
#define YARP_COMPILER_IS_TI 0 |
Definition at line 2766 of file compiler.h.
#define YARP_COMPILER_IS_VisualAge 0 |
Definition at line 2763 of file compiler.h.
#define YARP_COMPILER_IS_Watcom 0 |
Definition at line 2756 of file compiler.h.
#define YARP_COMPILER_IS_XL 0 |
Definition at line 2762 of file compiler.h.
#define YARP_COMPILER_IS_zOS 0 |
Definition at line 2761 of file compiler.h.
#define YARP_COMPILER_VERSION_MAJOR DOXYGEN_MAJOR_VERSION |
Current compiler major version number, if defined.
Definition at line 2780 of file compiler.h.
#define YARP_COMPILER_VERSION_MINOR DOXYGEN_MINOR_VERSION |
Current compiler minor version number, if defined.
Definition at line 2781 of file compiler.h.
#define YARP_COMPILER_VERSION_PATCH DOXYGEN_PATCH_VERSION |
Current compiler patch version number, if defined.
Definition at line 2782 of file compiler.h.
#define YARP_CONSTEXPR constexpr |
Expands to constexpr
if constant expressions are supported by the current c++ compiler and build flags combination, defined empty elsewhere.
Definition at line 2900 of file compiler.h.
#define YARP_DELETED_FUNCTION = delete |
Expands to = delete
if deleted functions are supported by the the current c++ compiler and build flags combination, defined empty elsewhere.
Definition at line 2907 of file compiler.h.
#define YARP_DEPRECATED [[deprecated]] |
Expands to either the standard [[deprecated]]
attribute or a compiler-specific decorator such as __attribute__((__deprecated__))
used by GNU compilers.
Definition at line 2884 of file compiler.h.
#define YARP_DEPRECATED_MSG | ( | MSG | ) | [[deprecated(MSG)]] |
Expands to either the standard [[deprecated]]
attribute or a compiler-specific decorator such as __attribute__((__deprecated__))
used by GNU compilers.
Definition at line 2885 of file compiler.h.
#define YARP_EXTERN_TEMPLATE extern |
Expands to exter
if extern templates are supported by the the current c++ compiler and build flags combination, defined empty elsewhere.
Definition at line 2914 of file compiler.h.
#define YARP_FINAL final |
Expands to the override control final
keyword if this is supported by the current c++ compiler and build flags combination, defined empty elsewhere.
Definition at line 2921 of file compiler.h.
#define YARP_NOEXCEPT noexcept |
Expands to noexcept
if exception specifications are supported by the current c++ compiler and build flags combination, defined empty elsewhere.
Definition at line 2928 of file compiler.h.
#define YARP_NOEXCEPT_EXPR | ( | X | ) | noexcept(X) |
Expands to noexcept(X)
if exception specifications are supported by the current c++ compiler and build flags combination, defined empty elsewhere.
Definition at line 2929 of file compiler.h.
#define YARP_NULLPTR nullptr |
Expands to either the standard nullptr
or to 0
elsewhere.
Definition at line 2937 of file compiler.h.
#define YARP_OVERRIDE override |
Expands to the override control override
keyword if this is supported by the current c++ compiler and build flags combination, defined empty elsewhere.
Definition at line 2944 of file compiler.h.
#define YARP_STATIC_ASSERT | ( | X | ) | static_assert(X, #X) |
Expands to static_assert(X, #X)
if static asserts are supported by the current c++ compiler and build flags combination, to a compatibility implementation otherwise.
static_assert
, see CMake#16185). Moreover, in order to be portable, if the X
argument is an expression, it must be enclosed in parenthesis. For example: Definition at line 2950 of file compiler.h.
#define YARP_STATIC_ASSERT_MSG | ( | X, | |
MSG | |||
) | static_assert(X, MSG) |
Expands to static_assert(X, MSG)
if static asserts are supported by the current c++ compiler and build flags combination, to a compatibility implementation otherwise.
static_assert
, see CMake#16185). Moreover, in order to be portable, if the X
argument is an expression, it must be enclosed in parenthesis. For example: Definition at line 2951 of file compiler.h.
#define YARP_THREAD_LOCAL thread_local |
Expands to either the standard thread_local
attribute, to a compiler-specific decorator such as __thread
used by GNU compilers, or defined empty if not supported by the current c++ compiler and build flags combination.
Definition at line 2963 of file compiler.h.