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 - 2003.
0002 //  (C) Copyright Jens Maurer 2001 - 2003.
0003 //  (C) Copyright Aleksey Gurtovoy 2002.
0004 //  (C) Copyright David Abrahams 2002 - 2003.
0005 //  (C) Copyright Toon Knapen 2003.
0006 //  (C) Copyright Boris Gubenko 2006 - 2007.
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 //  HP aCC C++ compiler setup:
0014 
0015 #if defined(__EDG__)
0016 #include <boost/config/compiler/common_edg.hpp>
0017 #endif
0018 
0019 #if (__HP_aCC <= 33100)
0020 #    define BOOST_NO_INTEGRAL_INT64_T
0021 #    define BOOST_NO_OPERATORS_IN_NAMESPACE
0022 #  if !defined(_NAMESPACE_STD)
0023 #     define BOOST_NO_STD_LOCALE
0024 #     define BOOST_NO_STRINGSTREAM
0025 #  endif
0026 #endif
0027 
0028 #if (__HP_aCC <= 33300)
0029 // member templates are sufficiently broken that we disable them for now
0030 #    define BOOST_NO_MEMBER_TEMPLATES
0031 #    define BOOST_NO_DEPENDENT_NESTED_DERIVATIONS
0032 #    define BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE
0033 #endif
0034 
0035 #if (__HP_aCC <= 38000)
0036 #  define BOOST_NO_TWO_PHASE_NAME_LOOKUP
0037 #endif
0038 
0039 #if (__HP_aCC > 50000) && (__HP_aCC < 60000)
0040 #    define BOOST_NO_UNREACHABLE_RETURN_DETECTION
0041 #    define BOOST_NO_TEMPLATE_TEMPLATES
0042 #    define BOOST_NO_SWPRINTF
0043 #    define BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS
0044 #    define BOOST_NO_IS_ABSTRACT
0045 #    define BOOST_NO_MEMBER_TEMPLATE_FRIENDS
0046 #endif
0047 
0048 // optional features rather than defects:
0049 #if (__HP_aCC >= 33900)
0050 #    define BOOST_HAS_LONG_LONG
0051 #    define BOOST_HAS_PARTIAL_STD_ALLOCATOR
0052 #endif
0053 
0054 #if (__HP_aCC >= 50000 ) && (__HP_aCC <= 53800 ) || (__HP_aCC < 31300 )
0055 #    define BOOST_NO_MEMBER_TEMPLATE_KEYWORD
0056 #endif
0057 
0058 // This macro should not be defined when compiling in strict ansi
0059 // mode, but, currently, we don't have the ability to determine
0060 // what standard mode we are compiling with. Some future version
0061 // of aCC6 compiler will provide predefined macros reflecting the
0062 // compilation options, including the standard mode.
0063 #if (__HP_aCC >= 60000) || ((__HP_aCC > 38000) && defined(__hpxstd98))
0064 #    define BOOST_NO_TWO_PHASE_NAME_LOOKUP
0065 #endif
0066 
0067 #define BOOST_COMPILER "HP aCC version " BOOST_STRINGIZE(__HP_aCC)
0068 
0069 //
0070 // versions check:
0071 // we don't support HP aCC prior to version 33000:
0072 #if __HP_aCC < 33000
0073 #  error "Compiler not supported or configured - please reconfigure"
0074 #endif
0075 
0076 //
0077 // Extended checks for supporting aCC on PA-RISC
0078 #if __HP_aCC > 30000 && __HP_aCC < 50000
0079 #  if __HP_aCC < 38000
0080       // versions prior to version A.03.80 not supported
0081 #     error "Compiler version not supported - version A.03.80 or higher is required"
0082 #  elif !defined(__hpxstd98)
0083       // must compile using the option +hpxstd98 with version A.03.80 and above
0084 #     error "Compiler option '+hpxstd98' is required for proper support"
0085 #  endif //PA-RISC
0086 #endif
0087 
0088 //
0089 // C++0x features
0090 //
0091 //   See boost\config\suffix.hpp for BOOST_NO_LONG_LONG
0092 //
0093 #if !defined(__EDG__)
0094 
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_RVALUE_REFERENCES
0115 #define BOOST_NO_CXX11_SCOPED_ENUMS
0116 #define BOOST_NO_SFINAE_EXPR
0117 #define BOOST_NO_CXX11_SFINAE_EXPR
0118 #define BOOST_NO_CXX11_STATIC_ASSERT
0119 #define BOOST_NO_CXX11_TEMPLATE_ALIASES
0120 #define BOOST_NO_CXX11_UNICODE_LITERALS
0121 #define BOOST_NO_CXX11_VARIADIC_TEMPLATES
0122 #define BOOST_NO_CXX11_USER_DEFINED_LITERALS
0123 #define BOOST_NO_CXX11_ALIGNAS
0124 #define BOOST_NO_CXX11_ALIGNOF
0125 #define BOOST_NO_CXX11_TRAILING_RESULT_TYPES
0126 #define BOOST_NO_CXX11_INLINE_NAMESPACES
0127 #define BOOST_NO_CXX11_REF_QUALIFIERS
0128 #define BOOST_NO_CXX11_THREAD_LOCAL
0129 #define BOOST_NO_CXX11_UNRESTRICTED_UNION
0130 
0131 /*
0132   See https://forums13.itrc.hp.com/service/forums/questionanswer.do?threadId=1443331 and
0133       https://forums13.itrc.hp.com/service/forums/questionanswer.do?threadId=1443436
0134 */
0135 
0136 #if (__HP_aCC < 62500) || !defined(HP_CXX0x_SOURCE)
0137   #define BOOST_NO_CXX11_VARIADIC_MACROS
0138 #endif
0139 
0140 #if !defined(__cpp_nontype_template_parameter_auto) || (__cpp_nontype_template_parameter_auto < 201606)
0141 #  define BOOST_NO_CXX17_AUTO_NONTYPE_TEMPLATE_PARAMS
0142 #endif
0143 
0144 #endif
0145 
0146 //
0147 // last known and checked version for HP-UX/ia64 is 61300
0148 // last known and checked version for PA-RISC is 38000
0149 #if ((__HP_aCC > 61300) || ((__HP_aCC > 38000) && defined(__hpxstd98)))
0150 #  if defined(BOOST_ASSERT_CONFIG)
0151 #     error "boost: Unknown compiler version - please run the configure tests and report the results"
0152 #  endif
0153 #endif