]> git.proxmox.com Git - ceph.git/blame - ceph/src/boost/boost/config/compiler/pathscale.hpp
update source to Ceph Pacific 16.2.2
[ceph.git] / ceph / src / boost / boost / config / compiler / pathscale.hpp
CommitLineData
7c673cae
FG
1// (C) Copyright Bryce Lelbach 2011
2
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
7// See http://www.boost.org for most recent version.
8
9// PathScale EKOPath C++ Compiler
10
11#ifndef BOOST_COMPILER
12# define BOOST_COMPILER "PathScale EKOPath C++ Compiler version " __PATHSCALE__
13#endif
14
b32b8144
FG
15#if __PATHCC__ >= 6
16// PathCC is based on clang, and supports the __has_*() builtins used
17// to detect features in clang.hpp. Since the clang toolset is much
18// better maintained, it is more convenient to reuse its definitions.
19# include "boost/config/compiler/clang.hpp"
20#elif __PATHCC__ >= 4
7c673cae
FG
21# define BOOST_MSVC6_MEMBER_TEMPLATES
22# define BOOST_HAS_UNISTD_H
23# define BOOST_HAS_STDINT_H
24# define BOOST_HAS_SIGACTION
25# define BOOST_HAS_SCHED_YIELD
26# define BOOST_HAS_THREADS
27# define BOOST_HAS_PTHREADS
28# define BOOST_HAS_PTHREAD_YIELD
29# define BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE
30# define BOOST_HAS_PARTIAL_STD_ALLOCATOR
31# define BOOST_HAS_NRVO
32# define BOOST_HAS_NL_TYPES_H
33# define BOOST_HAS_NANOSLEEP
34# define BOOST_HAS_LONG_LONG
35# define BOOST_HAS_LOG1P
36# define BOOST_HAS_GETTIMEOFDAY
37# define BOOST_HAS_EXPM1
38# define BOOST_HAS_DIRENT_H
39# define BOOST_HAS_CLOCK_GETTIME
40# define BOOST_NO_CXX11_VARIADIC_TEMPLATES
41# define BOOST_NO_CXX11_UNICODE_LITERALS
42# define BOOST_NO_CXX11_TEMPLATE_ALIASES
43# define BOOST_NO_CXX11_STATIC_ASSERT
44# define BOOST_NO_SFINAE_EXPR
b32b8144 45# define BOOST_NO_CXX11_SFINAE_EXPR
7c673cae
FG
46# define BOOST_NO_CXX11_SCOPED_ENUMS
47# define BOOST_NO_CXX11_RVALUE_REFERENCES
48# define BOOST_NO_CXX11_RANGE_BASED_FOR
49# define BOOST_NO_CXX11_RAW_LITERALS
50# define BOOST_NO_CXX11_NULLPTR
51# define BOOST_NO_CXX11_NUMERIC_LIMITS
52# define BOOST_NO_CXX11_NOEXCEPT
53# define BOOST_NO_CXX11_LAMBDAS
54# define BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS
55# define BOOST_NO_MS_INT64_NUMERIC_LIMITS
56# define BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS
57# define BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS
58# define BOOST_NO_CXX11_DELETED_FUNCTIONS
59# define BOOST_NO_CXX11_DEFAULTED_FUNCTIONS
60# define BOOST_NO_CXX11_DECLTYPE
61# define BOOST_NO_CXX11_DECLTYPE_N3276
62# define BOOST_NO_CXX11_CONSTEXPR
63# define BOOST_NO_COMPLETE_VALUE_INITIALIZATION
64# define BOOST_NO_CXX11_CHAR32_T
65# define BOOST_NO_CXX11_CHAR16_T
66# define BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS
67# define BOOST_NO_CXX11_AUTO_DECLARATIONS
68# define BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX
69# define BOOST_NO_CXX11_HDR_UNORDERED_SET
70# define BOOST_NO_CXX11_HDR_UNORDERED_MAP
71# define BOOST_NO_CXX11_HDR_TYPEINDEX
72# define BOOST_NO_CXX11_HDR_TUPLE
73# define BOOST_NO_CXX11_HDR_THREAD
74# define BOOST_NO_CXX11_HDR_SYSTEM_ERROR
75# define BOOST_NO_CXX11_HDR_REGEX
76# define BOOST_NO_CXX11_HDR_RATIO
77# define BOOST_NO_CXX11_HDR_RANDOM
78# define BOOST_NO_CXX11_HDR_MUTEX
79# define BOOST_NO_CXX11_HDR_INITIALIZER_LIST
80# define BOOST_NO_CXX11_HDR_FUTURE
81# define BOOST_NO_CXX11_HDR_FORWARD_LIST
82# define BOOST_NO_CXX11_HDR_CONDITION_VARIABLE
83# define BOOST_NO_CXX11_HDR_CODECVT
84# define BOOST_NO_CXX11_HDR_CHRONO
85# define BOOST_NO_CXX11_USER_DEFINED_LITERALS
86# define BOOST_NO_CXX11_ALIGNAS
87# define BOOST_NO_CXX11_TRAILING_RESULT_TYPES
88# define BOOST_NO_CXX11_INLINE_NAMESPACES
89# define BOOST_NO_CXX11_REF_QUALIFIERS
90# define BOOST_NO_CXX11_FINAL
91# define BOOST_NO_CXX11_THREAD_LOCAL
f67539c2 92# define BOOST_NO_CXX11_UNRESTRICTED_UNION
7c673cae
FG
93
94// C++ 14:
95#if !defined(__cpp_aggregate_nsdmi) || (__cpp_aggregate_nsdmi < 201304)
96# define BOOST_NO_CXX14_AGGREGATE_NSDMI
97#endif
98#if !defined(__cpp_binary_literals) || (__cpp_binary_literals < 201304)
99# define BOOST_NO_CXX14_BINARY_LITERALS
100#endif
101#if !defined(__cpp_constexpr) || (__cpp_constexpr < 201304)
102# define BOOST_NO_CXX14_CONSTEXPR
103#endif
104#if !defined(__cpp_decltype_auto) || (__cpp_decltype_auto < 201304)
105# define BOOST_NO_CXX14_DECLTYPE_AUTO
106#endif
107#if (__cplusplus < 201304) // There's no SD6 check for this....
108# define BOOST_NO_CXX14_DIGIT_SEPARATORS
109#endif
110#if !defined(__cpp_generic_lambdas) || (__cpp_generic_lambdas < 201304)
111# define BOOST_NO_CXX14_GENERIC_LAMBDAS
112#endif
113#if !defined(__cpp_init_captures) || (__cpp_init_captures < 201304)
114# define BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES
115#endif
116#if !defined(__cpp_return_type_deduction) || (__cpp_return_type_deduction < 201304)
117# define BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION
118#endif
119#if !defined(__cpp_variable_templates) || (__cpp_variable_templates < 201304)
120# define BOOST_NO_CXX14_VARIABLE_TEMPLATES
121#endif
b32b8144
FG
122
123// C++17
124#if !defined(__cpp_structured_bindings) || (__cpp_structured_bindings < 201606)
125# define BOOST_NO_CXX17_STRUCTURED_BINDINGS
126#endif
127#if !defined(__cpp_inline_variables) || (__cpp_inline_variables < 201606)
128# define BOOST_NO_CXX17_INLINE_VARIABLES
129#endif
130#if !defined(__cpp_fold_expressions) || (__cpp_fold_expressions < 201603)
131# define BOOST_NO_CXX17_FOLD_EXPRESSIONS
132#endif
92f5a8d4
TL
133#if !defined(__cpp_if_constexpr) || (__cpp_if_constexpr < 201606)
134# define BOOST_NO_CXX17_IF_CONSTEXPR
135#endif
7c673cae 136#endif