mpw.hpp 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. // (C) Copyright John Maddock 2001 - 2002.
  2. // (C) Copyright Aleksey Gurtovoy 2002.
  3. // Use, modification and distribution are subject to the
  4. // Boost Software License, Version 1.0. (See accompanying file
  5. // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  6. // See http://www.boost.org for most recent version.
  7. // MPW C++ compilers setup:
  8. # if defined(__SC__)
  9. # define BOOST_COMPILER "MPW SCpp version " BOOST_STRINGIZE(__SC__)
  10. # elif defined(__MRC__)
  11. # define BOOST_COMPILER "MPW MrCpp version " BOOST_STRINGIZE(__MRC__)
  12. # else
  13. # error "Using MPW compiler configuration by mistake. Please update."
  14. # endif
  15. //
  16. // MPW 8.90:
  17. //
  18. #if (MPW_CPLUS <= 0x890) || !defined(BOOST_STRICT_CONFIG)
  19. # define BOOST_NO_CV_SPECIALIZATIONS
  20. # define BOOST_NO_DEPENDENT_NESTED_DERIVATIONS
  21. # define BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS
  22. # define BOOST_NO_INCLASS_MEMBER_INITIALIZATION
  23. # define BOOST_NO_INTRINSIC_WCHAR_T
  24. # define BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
  25. # define BOOST_NO_USING_TEMPLATE
  26. # define BOOST_NO_CWCHAR
  27. # define BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS
  28. # define BOOST_NO_STD_ALLOCATOR /* actually a bug with const reference overloading */
  29. #endif
  30. //
  31. // C++0x features
  32. //
  33. // See boost\config\suffix.hpp for BOOST_NO_LONG_LONG
  34. //
  35. #define BOOST_NO_CXX11_AUTO_DECLARATIONS
  36. #define BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS
  37. #define BOOST_NO_CXX11_CHAR16_T
  38. #define BOOST_NO_CXX11_CHAR32_T
  39. #define BOOST_NO_CXX11_CONSTEXPR
  40. #define BOOST_NO_CXX11_DECLTYPE
  41. #define BOOST_NO_CXX11_DECLTYPE_N3276
  42. #define BOOST_NO_CXX11_DEFAULTED_FUNCTIONS
  43. #define BOOST_NO_CXX11_DELETED_FUNCTIONS
  44. #define BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS
  45. #define BOOST_NO_CXX11_EXTERN_TEMPLATE
  46. #define BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS
  47. #define BOOST_NO_CXX11_HDR_INITIALIZER_LIST
  48. #define BOOST_NO_CXX11_LAMBDAS
  49. #define BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS
  50. #define BOOST_NO_CXX11_NOEXCEPT
  51. #define BOOST_NO_CXX11_NULLPTR
  52. #define BOOST_NO_CXX11_RANGE_BASED_FOR
  53. #define BOOST_NO_CXX11_RAW_LITERALS
  54. #define BOOST_NO_CXX11_RVALUE_REFERENCES
  55. #define BOOST_NO_CXX11_SCOPED_ENUMS
  56. #define BOOST_NO_SFINAE_EXPR
  57. #define BOOST_NO_CXX11_STATIC_ASSERT
  58. #define BOOST_NO_CXX11_TEMPLATE_ALIASES
  59. #define BOOST_NO_CXX11_UNICODE_LITERALS
  60. #define BOOST_NO_CXX11_VARIADIC_TEMPLATES
  61. #define BOOST_NO_CXX11_VARIADIC_MACROS
  62. #define BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX
  63. #define BOOST_NO_CXX11_USER_DEFINED_LITERALS
  64. #define BOOST_NO_CXX11_ALIGNAS
  65. #define BOOST_NO_CXX11_TRAILING_RESULT_TYPES
  66. #define BOOST_NO_CXX11_INLINE_NAMESPACES
  67. //
  68. // versions check:
  69. // we don't support MPW prior to version 8.9:
  70. #if MPW_CPLUS < 0x890
  71. # error "Compiler not supported or configured - please reconfigure"
  72. #endif
  73. //
  74. // last known and checked version is 0x890:
  75. #if (MPW_CPLUS > 0x890)
  76. # if defined(BOOST_ASSERT_CONFIG)
  77. # error "Unknown compiler version - please run the configure tests and report the results"
  78. # endif
  79. #endif