/extlibs/Boost/include/boost/config/compiler/vacpp.hpp

https://bitbucket.org/hugoruscitti/pilascpp · C++ Header · 96 lines · 51 code · 14 blank · 31 comment · 2 complexity · 4bce436b4be22c570c4c94e152358aef MD5 · raw file

  1. // (C) Copyright John Maddock 2001 - 2003.
  2. // (C) Copyright Toon Knapen 2001 - 2003.
  3. // (C) Copyright Lie-Quan Lee 2001.
  4. // (C) Copyright Markus Schoepflin 2002 - 2003.
  5. // (C) Copyright Beman Dawes 2002 - 2003.
  6. // Use, modification and distribution are subject to the
  7. // Boost Software License, Version 1.0. (See accompanying file
  8. // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  9. // See http://www.boost.org for most recent version.
  10. // Visual Age (IBM) C++ compiler setup:
  11. #if __IBMCPP__ <= 501
  12. # define BOOST_NO_MEMBER_TEMPLATE_FRIENDS
  13. # define BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS
  14. #endif
  15. #if (__IBMCPP__ <= 502)
  16. // Actually the compiler supports inclass member initialization but it
  17. // requires a definition for the class member and it doesn't recognize
  18. // it as an integral constant expression when used as a template argument.
  19. # define BOOST_NO_INCLASS_MEMBER_INITIALIZATION
  20. # define BOOST_NO_INTEGRAL_INT64_T
  21. # define BOOST_NO_MEMBER_TEMPLATE_KEYWORD
  22. #endif
  23. #if (__IBMCPP__ <= 600) || !defined(BOOST_STRICT_CONFIG)
  24. # define BOOST_NO_POINTER_TO_MEMBER_TEMPLATE_PARAMETERS
  25. # define BOOST_NO_INITIALIZER_LISTS
  26. #endif
  27. #if (__IBMCPP__ <= 1110)
  28. // XL C++ V11.1 and earlier versions may not always value-initialize
  29. // a temporary object T(), when T is a non-POD aggregate class type.
  30. // Michael Wong (IBM Canada Ltd) has confirmed this issue and gave it
  31. // high priority. -- Niels Dekker (LKEB), May 2010.
  32. # define BOOST_NO_COMPLETE_VALUE_INITIALIZATION
  33. #endif
  34. //
  35. // On AIX thread support seems to be indicated by _THREAD_SAFE:
  36. //
  37. #ifdef _THREAD_SAFE
  38. # define BOOST_HAS_THREADS
  39. #endif
  40. #define BOOST_COMPILER "IBM Visual Age version " BOOST_STRINGIZE(__IBMCPP__)
  41. //
  42. // versions check:
  43. // we don't support Visual age prior to version 5:
  44. #if __IBMCPP__ < 500
  45. #error "Compiler not supported or configured - please reconfigure"
  46. #endif
  47. //
  48. // last known and checked version is 600:
  49. #if (__IBMCPP__ > 1010)
  50. # if defined(BOOST_ASSERT_CONFIG)
  51. # error "Unknown compiler version - please run the configure tests and report the results"
  52. # endif
  53. #endif
  54. // Some versions of the compiler have issues with default arguments on partial specializations
  55. #define BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS
  56. //
  57. // C++0x features
  58. //
  59. // See boost\config\suffix.hpp for BOOST_NO_LONG_LONG
  60. //
  61. #define BOOST_NO_AUTO_DECLARATIONS
  62. #define BOOST_NO_AUTO_MULTIDECLARATIONS
  63. #define BOOST_NO_CHAR16_T
  64. #define BOOST_NO_CHAR32_T
  65. #define BOOST_NO_CONCEPTS
  66. #define BOOST_NO_CONSTEXPR
  67. #define BOOST_NO_DECLTYPE
  68. #define BOOST_NO_DEFAULTED_FUNCTIONS
  69. #define BOOST_NO_DELETED_FUNCTIONS
  70. #define BOOST_NO_EXPLICIT_CONVERSION_OPERATORS
  71. #define BOOST_NO_EXTERN_TEMPLATE
  72. #define BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS
  73. #define BOOST_NO_LAMBDAS
  74. #define BOOST_NO_NULLPTR
  75. #define BOOST_NO_RAW_LITERALS
  76. #define BOOST_NO_RVALUE_REFERENCES
  77. #define BOOST_NO_SCOPED_ENUMS
  78. #define BOOST_NO_SFINAE_EXPR
  79. #define BOOST_NO_STATIC_ASSERT
  80. #define BOOST_NO_TEMPLATE_ALIASES
  81. #define BOOST_NO_UNICODE_LITERALS
  82. #define BOOST_NO_VARIADIC_TEMPLATES