]>
Commit | Line | Data |
---|---|---|
7c673cae FG |
1 | // Copyright (C) Christof Meerwald 2003 |
2 | // Copyright (C) Dan Watkins 2003 | |
3 | // | |
4 | // Use, modification and distribution are subject to the | |
5 | // Boost Software License, Version 1.0. (See accompanying file | |
6 | // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) | |
7 | ||
8 | // Digital Mars C++ compiler setup: | |
9 | #define BOOST_COMPILER __DMC_VERSION_STRING__ | |
10 | ||
11 | #define BOOST_HAS_LONG_LONG | |
12 | #define BOOST_HAS_PRAGMA_ONCE | |
13 | ||
14 | #if !defined(BOOST_STRICT_CONFIG) | |
15 | #define BOOST_NO_MEMBER_TEMPLATE_FRIENDS | |
16 | #define BOOST_NO_OPERATORS_IN_NAMESPACE | |
17 | #define BOOST_NO_UNREACHABLE_RETURN_DETECTION | |
18 | #define BOOST_NO_SFINAE | |
19 | #define BOOST_NO_USING_TEMPLATE | |
20 | #define BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL | |
21 | #endif | |
22 | ||
23 | // | |
24 | // has macros: | |
25 | #define BOOST_HAS_DIRENT_H | |
26 | #define BOOST_HAS_STDINT_H | |
27 | #define BOOST_HAS_WINTHREADS | |
28 | ||
29 | #if (__DMC__ >= 0x847) | |
30 | #define BOOST_HAS_EXPM1 | |
31 | #define BOOST_HAS_LOG1P | |
32 | #endif | |
33 | ||
34 | // | |
35 | // Is this really the best way to detect whether the std lib is in namespace std? | |
36 | // | |
37 | #ifdef __cplusplus | |
38 | #include <cstddef> | |
39 | #endif | |
40 | #if !defined(__STL_IMPORT_VENDOR_CSTD) && !defined(_STLP_IMPORT_VENDOR_CSTD) | |
41 | # define BOOST_NO_STDC_NAMESPACE | |
42 | #endif | |
43 | ||
44 | ||
45 | // check for exception handling support: | |
46 | #if !defined(_CPPUNWIND) && !defined(BOOST_NO_EXCEPTIONS) | |
47 | # define BOOST_NO_EXCEPTIONS | |
48 | #endif | |
49 | ||
50 | // | |
51 | // C++0x features | |
52 | // | |
53 | #define BOOST_NO_CXX11_AUTO_DECLARATIONS | |
54 | #define BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS | |
55 | #define BOOST_NO_CXX11_CHAR16_T | |
56 | #define BOOST_NO_CXX11_CHAR32_T | |
57 | #define BOOST_NO_CXX11_CONSTEXPR | |
58 | #define BOOST_NO_CXX11_DECLTYPE | |
59 | #define BOOST_NO_CXX11_DECLTYPE_N3276 | |
60 | #define BOOST_NO_CXX11_DEFAULTED_FUNCTIONS | |
61 | #define BOOST_NO_CXX11_DELETED_FUNCTIONS | |
62 | #define BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS | |
63 | #define BOOST_NO_CXX11_EXTERN_TEMPLATE | |
64 | #define BOOST_NO_CXX11_HDR_INITIALIZER_LIST | |
65 | #define BOOST_NO_CXX11_LAMBDAS | |
66 | #define BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS | |
67 | #define BOOST_NO_CXX11_NOEXCEPT | |
68 | #define BOOST_NO_CXX11_NULLPTR | |
69 | #define BOOST_NO_CXX11_RANGE_BASED_FOR | |
70 | #define BOOST_NO_CXX11_RAW_LITERALS | |
71 | #define BOOST_NO_CXX11_RVALUE_REFERENCES | |
72 | #define BOOST_NO_CXX11_SCOPED_ENUMS | |
73 | #define BOOST_NO_SFINAE_EXPR | |
b32b8144 | 74 | #define BOOST_NO_CXX11_SFINAE_EXPR |
7c673cae FG |
75 | #define BOOST_NO_CXX11_STATIC_ASSERT |
76 | #define BOOST_NO_CXX11_TEMPLATE_ALIASES | |
77 | #define BOOST_NO_CXX11_UNICODE_LITERALS | |
78 | #define BOOST_NO_CXX11_VARIADIC_TEMPLATES | |
79 | #define BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX | |
80 | #define BOOST_NO_CXX11_USER_DEFINED_LITERALS | |
81 | #define BOOST_NO_CXX11_ALIGNAS | |
82 | #define BOOST_NO_CXX11_TRAILING_RESULT_TYPES | |
83 | #define BOOST_NO_CXX11_INLINE_NAMESPACES | |
84 | #define BOOST_NO_CXX11_REF_QUALIFIERS | |
85 | #define BOOST_NO_CXX11_FINAL | |
86 | #define BOOST_NO_CXX11_THREAD_LOCAL | |
f67539c2 | 87 | #define BOOST_NO_CXX11_UNRESTRICTED_UNION |
7c673cae FG |
88 | |
89 | // C++ 14: | |
90 | #if !defined(__cpp_aggregate_nsdmi) || (__cpp_aggregate_nsdmi < 201304) | |
91 | # define BOOST_NO_CXX14_AGGREGATE_NSDMI | |
92 | #endif | |
93 | #if !defined(__cpp_binary_literals) || (__cpp_binary_literals < 201304) | |
94 | # define BOOST_NO_CXX14_BINARY_LITERALS | |
95 | #endif | |
96 | #if !defined(__cpp_constexpr) || (__cpp_constexpr < 201304) | |
97 | # define BOOST_NO_CXX14_CONSTEXPR | |
98 | #endif | |
99 | #if !defined(__cpp_decltype_auto) || (__cpp_decltype_auto < 201304) | |
100 | # define BOOST_NO_CXX14_DECLTYPE_AUTO | |
101 | #endif | |
102 | #if (__cplusplus < 201304) // There's no SD6 check for this.... | |
103 | # define BOOST_NO_CXX14_DIGIT_SEPARATORS | |
104 | #endif | |
105 | #if !defined(__cpp_generic_lambdas) || (__cpp_generic_lambdas < 201304) | |
106 | # define BOOST_NO_CXX14_GENERIC_LAMBDAS | |
107 | #endif | |
108 | #if !defined(__cpp_init_captures) || (__cpp_init_captures < 201304) | |
109 | # define BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES | |
110 | #endif | |
111 | #if !defined(__cpp_return_type_deduction) || (__cpp_return_type_deduction < 201304) | |
112 | # define BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION | |
113 | #endif | |
114 | #if !defined(__cpp_variable_templates) || (__cpp_variable_templates < 201304) | |
115 | # define BOOST_NO_CXX14_VARIABLE_TEMPLATES | |
116 | #endif | |
117 | ||
b32b8144 FG |
118 | // C++17 |
119 | #if !defined(__cpp_structured_bindings) || (__cpp_structured_bindings < 201606) | |
120 | # define BOOST_NO_CXX17_STRUCTURED_BINDINGS | |
121 | #endif | |
122 | #if !defined(__cpp_inline_variables) || (__cpp_inline_variables < 201606) | |
123 | # define BOOST_NO_CXX17_INLINE_VARIABLES | |
124 | #endif | |
125 | #if !defined(__cpp_fold_expressions) || (__cpp_fold_expressions < 201603) | |
126 | # define BOOST_NO_CXX17_FOLD_EXPRESSIONS | |
127 | #endif | |
92f5a8d4 TL |
128 | #if !defined(__cpp_if_constexpr) || (__cpp_if_constexpr < 201606) |
129 | # define BOOST_NO_CXX17_IF_CONSTEXPR | |
130 | #endif | |
b32b8144 | 131 | |
7c673cae FG |
132 | #if (__DMC__ <= 0x840) |
133 | #error "Compiler not supported or configured - please reconfigure" | |
134 | #endif | |
135 | // | |
136 | // last known and checked version is ...: | |
137 | #if (__DMC__ > 0x848) | |
138 | # if defined(BOOST_ASSERT_CONFIG) | |
92f5a8d4 | 139 | # error "boost: Unknown compiler version - please run the configure tests and report the results" |
7c673cae FG |
140 | # endif |
141 | #endif |