]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/config/include/boost/config/compiler/pgi.hpp
add subtree-ish sources for 12.0.3
[ceph.git] / ceph / src / boost / libs / config / include / boost / config / compiler / pgi.hpp
1 // (C) Copyright Noel Belcourt 2007.
2 // Use, modification and distribution are subject to the
3 // Boost Software License, Version 1.0. (See accompanying file
4 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
5
6 // See http://www.boost.org for most recent version.
7
8 // PGI C++ compiler setup:
9
10 #define BOOST_COMPILER_VERSION __PGIC__##__PGIC_MINOR__
11 #define BOOST_COMPILER "PGI compiler version " BOOST_STRINGIZE(BOOST_COMPILER_VERSION)
12
13 //
14 // Threading support:
15 // Turn this on unconditionally here, it will get turned off again later
16 // if no threading API is detected.
17 //
18
19 #if __PGIC__ >= 11
20
21 // options requested by configure --enable-test
22 #define BOOST_HAS_PTHREADS
23 #define BOOST_HAS_THREADS
24 #define BOOST_HAS_PTHREAD_YIELD
25 #define BOOST_HAS_NRVO
26 #define BOOST_HAS_LONG_LONG
27
28 // options --enable-test wants undefined
29 #undef BOOST_NO_STDC_NAMESPACE
30 #undef BOOST_NO_EXCEPTION_STD_NAMESPACE
31 #undef BOOST_DEDUCED_TYPENAME
32
33 #define BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL
34 #define BOOST_NO_TWO_PHASE_NAME_LOOKUP
35 #define BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS
36 #define BOOST_NO_CXX11_AUTO_DECLARATIONS
37
38 #elif __PGIC__ >= 10
39
40 // options requested by configure --enable-test
41 #define BOOST_HAS_THREADS
42 #define BOOST_HAS_NRVO
43 #define BOOST_HAS_LONG_LONG
44 #if defined(linux) || defined(__linux) || defined(__linux__)
45 # define BOOST_HAS_STDINT_H
46 #endif
47
48 // options --enable-test wants undefined
49 #undef BOOST_NO_STDC_NAMESPACE
50 #undef BOOST_NO_EXCEPTION_STD_NAMESPACE
51 #undef BOOST_DEDUCED_TYPENAME
52
53 #elif __PGIC__ >= 7
54
55 #define BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL
56 #define BOOST_NO_TWO_PHASE_NAME_LOOKUP
57 #define BOOST_NO_SWPRINTF
58 #define BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS
59 #define BOOST_NO_CXX11_AUTO_DECLARATIONS
60
61 #else
62
63 # error "Pgi compiler not configured - please reconfigure"
64
65 #endif
66 //
67 // C++0x features
68 //
69 // See boost\config\suffix.hpp for BOOST_NO_LONG_LONG
70 //
71 #define BOOST_NO_CXX11_CHAR16_T
72 #define BOOST_NO_CXX11_CHAR32_T
73 #define BOOST_NO_CXX11_CONSTEXPR
74 #define BOOST_NO_CXX11_DECLTYPE
75 #define BOOST_NO_CXX11_DECLTYPE_N3276
76 #define BOOST_NO_CXX11_DEFAULTED_FUNCTIONS
77 #define BOOST_NO_CXX11_DELETED_FUNCTIONS
78 #define BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS
79 #define BOOST_NO_CXX11_EXTERN_TEMPLATE
80 #define BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS
81 #define BOOST_NO_CXX11_LAMBDAS
82 #define BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS
83 #define BOOST_NO_CXX11_NOEXCEPT
84 #define BOOST_NO_CXX11_NULLPTR
85 #define BOOST_NO_CXX11_NUMERIC_LIMITS
86 #define BOOST_NO_CXX11_RANGE_BASED_FOR
87 #define BOOST_NO_CXX11_RAW_LITERALS
88 #define BOOST_NO_CXX11_RVALUE_REFERENCES
89 #define BOOST_NO_CXX11_SCOPED_ENUMS
90 #define BOOST_NO_SFINAE_EXPR
91 #define BOOST_NO_CXX11_STATIC_ASSERT
92 #define BOOST_NO_SWPRINTF
93 #define BOOST_NO_CXX11_TEMPLATE_ALIASES
94 #define BOOST_NO_CXX11_UNICODE_LITERALS
95 #define BOOST_NO_CXX11_VARIADIC_TEMPLATES
96 #define BOOST_NO_CXX11_VARIADIC_MACROS
97 #define BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX
98
99 #define BOOST_NO_CXX11_HDR_UNORDERED_SET
100 #define BOOST_NO_CXX11_HDR_UNORDERED_MAP
101 #define BOOST_NO_CXX11_HDR_TYPEINDEX
102 #define BOOST_NO_CXX11_HDR_TYPE_TRAITS
103 #define BOOST_NO_CXX11_HDR_TUPLE
104 #define BOOST_NO_CXX11_HDR_THREAD
105 #define BOOST_NO_CXX11_HDR_SYSTEM_ERROR
106 #define BOOST_NO_CXX11_HDR_REGEX
107 #define BOOST_NO_CXX11_HDR_RATIO
108 #define BOOST_NO_CXX11_HDR_RANDOM
109 #define BOOST_NO_CXX11_HDR_MUTEX
110 #define BOOST_NO_CXX11_HDR_INITIALIZER_LIST
111 #define BOOST_NO_CXX11_HDR_FUTURE
112 #define BOOST_NO_CXX11_HDR_FORWARD_LIST
113 #define BOOST_NO_CXX11_HDR_CONDITION_VARIABLE
114 #define BOOST_NO_CXX11_HDR_CODECVT
115 #define BOOST_NO_CXX11_HDR_CHRONO
116 #define BOOST_NO_CXX11_HDR_ARRAY
117 #define BOOST_NO_CXX11_USER_DEFINED_LITERALS
118 #define BOOST_NO_CXX11_ALIGNAS
119 #define BOOST_NO_CXX11_TRAILING_RESULT_TYPES
120 #define BOOST_NO_CXX11_INLINE_NAMESPACES
121 #define BOOST_NO_CXX11_REF_QUALIFIERS
122 #define BOOST_NO_CXX11_FINAL
123 #define BOOST_NO_CXX11_THREAD_LOCAL
124
125 // C++ 14:
126 #if !defined(__cpp_aggregate_nsdmi) || (__cpp_aggregate_nsdmi < 201304)
127 # define BOOST_NO_CXX14_AGGREGATE_NSDMI
128 #endif
129 #if !defined(__cpp_binary_literals) || (__cpp_binary_literals < 201304)
130 # define BOOST_NO_CXX14_BINARY_LITERALS
131 #endif
132 #if !defined(__cpp_constexpr) || (__cpp_constexpr < 201304)
133 # define BOOST_NO_CXX14_CONSTEXPR
134 #endif
135 #if !defined(__cpp_decltype_auto) || (__cpp_decltype_auto < 201304)
136 # define BOOST_NO_CXX14_DECLTYPE_AUTO
137 #endif
138 #if (__cplusplus < 201304) // There's no SD6 check for this....
139 # define BOOST_NO_CXX14_DIGIT_SEPARATORS
140 #endif
141 #if !defined(__cpp_generic_lambdas) || (__cpp_generic_lambdas < 201304)
142 # define BOOST_NO_CXX14_GENERIC_LAMBDAS
143 #endif
144 #if !defined(__cpp_init_captures) || (__cpp_init_captures < 201304)
145 # define BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES
146 #endif
147 #if !defined(__cpp_return_type_deduction) || (__cpp_return_type_deduction < 201304)
148 # define BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION
149 #endif
150 #if !defined(__cpp_variable_templates) || (__cpp_variable_templates < 201304)
151 # define BOOST_NO_CXX14_VARIABLE_TEMPLATES
152 #endif
153 //
154 // version check:
155 // probably nothing to do here?
156