Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-12-16 09:44:41

0001 //  (C) Copyright John Maddock 2001.
0002 //  (C) Copyright Darin Adler 2001.
0003 //  (C) Copyright Peter Dimov 2001.
0004 //  (C) Copyright David Abrahams 2001 - 2002.
0005 //  (C) Copyright Beman Dawes 2001 - 2003.
0006 //  (C) Copyright Stefan Slapeta 2004.
0007 //  Use, modification and distribution are subject to the
0008 //  Boost Software License, Version 1.0. (See accompanying file
0009 //  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
0010 
0011 //  See http://www.boost.org for most recent version.
0012 
0013 //  Metrowerks C++ compiler setup:
0014 
0015 // locale support is disabled when linking with the dynamic runtime
0016 #   ifdef _MSL_NO_LOCALE
0017 #     define BOOST_NO_STD_LOCALE
0018 #   endif
0019 
0020 #   if __MWERKS__ <= 0x2301  // 5.3
0021 #     define BOOST_NO_FUNCTION_TEMPLATE_ORDERING
0022 #     define BOOST_NO_POINTER_TO_MEMBER_CONST
0023 #     define BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS
0024 #     define BOOST_NO_MEMBER_TEMPLATE_KEYWORD
0025 #   endif
0026 
0027 #   if __MWERKS__ <= 0x2401  // 6.2
0028 //#     define BOOST_NO_FUNCTION_TEMPLATE_ORDERING
0029 #   endif
0030 
0031 #   if(__MWERKS__ <= 0x2407)  // 7.x
0032 #     define BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS
0033 #     define BOOST_NO_UNREACHABLE_RETURN_DETECTION
0034 #   endif
0035 
0036 #   if(__MWERKS__ <= 0x3003)  // 8.x
0037 #     define BOOST_NO_SFINAE
0038 #    endif
0039 
0040 // the "|| !defined(BOOST_STRICT_CONFIG)" part should apply to the last
0041 // tested version *only*:
0042 #   if(__MWERKS__ <= 0x3207) || !defined(BOOST_STRICT_CONFIG) // 9.6
0043 #     define BOOST_NO_MEMBER_TEMPLATE_FRIENDS
0044 #     define BOOST_NO_IS_ABSTRACT
0045 #    endif
0046 
0047 #if !__option(wchar_type)
0048 #   define BOOST_NO_INTRINSIC_WCHAR_T
0049 #endif
0050 
0051 #if !__option(exceptions) && !defined(BOOST_NO_EXCEPTIONS)
0052 #   define BOOST_NO_EXCEPTIONS
0053 #endif
0054 
0055 #if (__INTEL__ && _WIN32) || (__POWERPC__ && macintosh)
0056 #   if __MWERKS__ == 0x3000
0057 #     define BOOST_COMPILER_VERSION 8.0
0058 #   elif __MWERKS__ == 0x3001
0059 #     define BOOST_COMPILER_VERSION 8.1
0060 #   elif __MWERKS__ == 0x3002
0061 #     define BOOST_COMPILER_VERSION 8.2
0062 #   elif __MWERKS__ == 0x3003
0063 #     define BOOST_COMPILER_VERSION 8.3
0064 #   elif __MWERKS__ == 0x3200
0065 #     define BOOST_COMPILER_VERSION 9.0
0066 #   elif __MWERKS__ == 0x3201
0067 #     define BOOST_COMPILER_VERSION 9.1
0068 #   elif __MWERKS__ == 0x3202
0069 #     define BOOST_COMPILER_VERSION 9.2
0070 #   elif __MWERKS__ == 0x3204
0071 #     define BOOST_COMPILER_VERSION 9.3
0072 #   elif __MWERKS__ == 0x3205
0073 #     define BOOST_COMPILER_VERSION 9.4
0074 #   elif __MWERKS__ == 0x3206
0075 #     define BOOST_COMPILER_VERSION 9.5
0076 #   elif __MWERKS__ == 0x3207
0077 #     define BOOST_COMPILER_VERSION 9.6
0078 #   else
0079 #     define BOOST_COMPILER_VERSION __MWERKS__
0080 #   endif
0081 #else
0082 #  define BOOST_COMPILER_VERSION __MWERKS__
0083 #endif
0084 
0085 //
0086 // C++0x features
0087 //
0088 //   See boost\config\suffix.hpp for BOOST_NO_LONG_LONG
0089 //
0090 #if __MWERKS__ > 0x3206 && __option(rvalue_refs)
0091 #  define BOOST_HAS_RVALUE_REFS
0092 #else
0093 #  define BOOST_NO_CXX11_RVALUE_REFERENCES
0094 #endif
0095 #define BOOST_NO_CXX11_AUTO_DECLARATIONS
0096 #define BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS
0097 #define BOOST_NO_CXX11_CHAR16_T
0098 #define BOOST_NO_CXX11_CHAR32_T
0099 #define BOOST_NO_CXX11_CONSTEXPR
0100 #define BOOST_NO_CXX11_DECLTYPE
0101 #define BOOST_NO_CXX11_DECLTYPE_N3276
0102 #define BOOST_NO_CXX11_DEFAULTED_FUNCTIONS
0103 #define BOOST_NO_CXX11_DELETED_FUNCTIONS
0104 #define BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS
0105 #define BOOST_NO_CXX11_EXTERN_TEMPLATE
0106 #define BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS
0107 #define BOOST_NO_CXX11_HDR_INITIALIZER_LIST
0108 #define BOOST_NO_CXX11_LAMBDAS
0109 #define BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS
0110 #define BOOST_NO_CXX11_NOEXCEPT
0111 #define BOOST_NO_CXX11_NULLPTR
0112 #define BOOST_NO_CXX11_RANGE_BASED_FOR
0113 #define BOOST_NO_CXX11_RAW_LITERALS
0114 #define BOOST_NO_CXX11_SCOPED_ENUMS
0115 #define BOOST_NO_SFINAE_EXPR
0116 #define BOOST_NO_CXX11_SFINAE_EXPR
0117 #define BOOST_NO_CXX11_STATIC_ASSERT
0118 #define BOOST_NO_CXX11_TEMPLATE_ALIASES
0119 #define BOOST_NO_CXX11_UNICODE_LITERALS
0120 #define BOOST_NO_CXX11_VARIADIC_TEMPLATES
0121 #define BOOST_NO_CXX11_VARIADIC_MACROS
0122 #define BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX
0123 #define BOOST_NO_CXX11_USER_DEFINED_LITERALS
0124 #define BOOST_NO_CXX11_ALIGNAS
0125 #define BOOST_NO_CXX11_ALIGNOF
0126 #define BOOST_NO_CXX11_TRAILING_RESULT_TYPES
0127 #define BOOST_NO_CXX11_INLINE_NAMESPACES
0128 #define BOOST_NO_CXX11_REF_QUALIFIERS
0129 #define BOOST_NO_CXX11_FINAL
0130 #define BOOST_NO_CXX11_OVERRIDE
0131 #define BOOST_NO_CXX11_THREAD_LOCAL
0132 #define BOOST_NO_CXX11_UNRESTRICTED_UNION
0133 
0134 // C++ 14:
0135 #if !defined(__cpp_aggregate_nsdmi) || (__cpp_aggregate_nsdmi < 201304)
0136 #  define BOOST_NO_CXX14_AGGREGATE_NSDMI
0137 #endif
0138 #if !defined(__cpp_binary_literals) || (__cpp_binary_literals < 201304)
0139 #  define BOOST_NO_CXX14_BINARY_LITERALS
0140 #endif
0141 #if !defined(__cpp_constexpr) || (__cpp_constexpr < 201304)
0142 #  define BOOST_NO_CXX14_CONSTEXPR
0143 #endif
0144 #if !defined(__cpp_decltype_auto) || (__cpp_decltype_auto < 201304)
0145 #  define BOOST_NO_CXX14_DECLTYPE_AUTO
0146 #endif
0147 #if (__cplusplus < 201304) // There's no SD6 check for this....
0148 #  define BOOST_NO_CXX14_DIGIT_SEPARATORS
0149 #endif
0150 #if !defined(__cpp_generic_lambdas) || (__cpp_generic_lambdas < 201304)
0151 #  define BOOST_NO_CXX14_GENERIC_LAMBDAS
0152 #endif
0153 #if !defined(__cpp_init_captures) || (__cpp_init_captures < 201304)
0154 #  define BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES
0155 #endif
0156 #if !defined(__cpp_return_type_deduction) || (__cpp_return_type_deduction < 201304)
0157 #  define BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION
0158 #endif
0159 #if !defined(__cpp_variable_templates) || (__cpp_variable_templates < 201304)
0160 #  define BOOST_NO_CXX14_VARIABLE_TEMPLATES
0161 #endif
0162 
0163 // C++17
0164 #if !defined(__cpp_structured_bindings) || (__cpp_structured_bindings < 201606)
0165 #  define BOOST_NO_CXX17_STRUCTURED_BINDINGS
0166 #endif
0167 #if !defined(__cpp_inline_variables) || (__cpp_inline_variables < 201606)
0168 #  define BOOST_NO_CXX17_INLINE_VARIABLES
0169 #endif
0170 #if !defined(__cpp_fold_expressions) || (__cpp_fold_expressions < 201603)
0171 #  define BOOST_NO_CXX17_FOLD_EXPRESSIONS
0172 #endif
0173 #if !defined(__cpp_if_constexpr) || (__cpp_if_constexpr < 201606)
0174 #  define BOOST_NO_CXX17_IF_CONSTEXPR
0175 #endif
0176 #if !defined(__cpp_nontype_template_parameter_auto) || (__cpp_nontype_template_parameter_auto < 201606)
0177 #  define BOOST_NO_CXX17_AUTO_NONTYPE_TEMPLATE_PARAMS
0178 #endif
0179 
0180 #define BOOST_COMPILER "Metrowerks CodeWarrior C++ version " BOOST_STRINGIZE(BOOST_COMPILER_VERSION)
0181 
0182 //
0183 // versions check:
0184 // we don't support Metrowerks prior to version 5.3:
0185 #if __MWERKS__ < 0x2301
0186 #  error "Compiler not supported or configured - please reconfigure"
0187 #endif
0188 //
0189 // last known and checked version:
0190 #if (__MWERKS__ > 0x3205)
0191 #  if defined(BOOST_ASSERT_CONFIG)
0192 #     error "boost: Unknown compiler version - please run the configure tests and report the results"
0193 #  endif
0194 #endif
0195 
0196 
0197 
0198 
0199 
0200 
0201