blob: 0206dc3815500b0bc7fd9f2ca086b2ff688170a9 [file] [log] [blame]
Jeff Thompsonf7d49942013-08-01 16:47:40 -07001// 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 (__DMC__ <= 0x833)
15#define BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL
16#define BOOST_NO_TEMPLATE_TEMPLATES
17#define BOOST_NEEDS_TOKEN_PASTING_OP_FOR_TOKENS_JUXTAPOSING
18#define BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS
19#define BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS
20#endif
21#if (__DMC__ <= 0x840) || !defined(BOOST_STRICT_CONFIG)
22#define BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS
23#define BOOST_NO_MEMBER_TEMPLATE_FRIENDS
24#define BOOST_NO_OPERATORS_IN_NAMESPACE
25#define BOOST_NO_UNREACHABLE_RETURN_DETECTION
26#define BOOST_NO_SFINAE
27#define BOOST_NO_USING_TEMPLATE
28#define BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL
29#endif
30
31//
32// has macros:
33#if (__DMC__ >= 0x840)
34#define BOOST_HAS_DIRENT_H
35#define BOOST_HAS_STDINT_H
36#define BOOST_HAS_WINTHREADS
37#endif
38
39#if (__DMC__ >= 0x847)
40#define BOOST_HAS_EXPM1
41#define BOOST_HAS_LOG1P
42#endif
43
44//
45// Is this really the best way to detect whether the std lib is in namespace std?
46//
47#ifdef __cplusplus
48#include <cstddef>
49#endif
50#if !defined(__STL_IMPORT_VENDOR_CSTD) && !defined(_STLP_IMPORT_VENDOR_CSTD)
51# define BOOST_NO_STDC_NAMESPACE
52#endif
53
54
55// check for exception handling support:
56#if !defined(_CPPUNWIND) && !defined(BOOST_NO_EXCEPTIONS)
57# define BOOST_NO_EXCEPTIONS
58#endif
59
60//
61// C++0x features
62//
63#define BOOST_NO_CXX11_AUTO_DECLARATIONS
64#define BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS
65#define BOOST_NO_CXX11_CHAR16_T
66#define BOOST_NO_CXX11_CHAR32_T
67#define BOOST_NO_CXX11_CONSTEXPR
68#define BOOST_NO_CXX11_DECLTYPE
69#define BOOST_NO_CXX11_DECLTYPE_N3276
70#define BOOST_NO_CXX11_DEFAULTED_FUNCTIONS
71#define BOOST_NO_CXX11_DELETED_FUNCTIONS
72#define BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS
73#define BOOST_NO_CXX11_EXTERN_TEMPLATE
74#define BOOST_NO_CXX11_HDR_INITIALIZER_LIST
75#define BOOST_NO_CXX11_LAMBDAS
76#define BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS
77#define BOOST_NO_CXX11_NOEXCEPT
78#define BOOST_NO_CXX11_NULLPTR
79#define BOOST_NO_CXX11_RANGE_BASED_FOR
80#define BOOST_NO_CXX11_RAW_LITERALS
81#define BOOST_NO_CXX11_RVALUE_REFERENCES
82#define BOOST_NO_CXX11_SCOPED_ENUMS
83#define BOOST_NO_SFINAE_EXPR
84#define BOOST_NO_CXX11_STATIC_ASSERT
85#define BOOST_NO_CXX11_TEMPLATE_ALIASES
86#define BOOST_NO_CXX11_UNICODE_LITERALS
87#define BOOST_NO_CXX11_VARIADIC_TEMPLATES
88#define BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX
Jeff Thompsona28eed82013-08-22 16:21:10 -070089#define BOOST_NO_CXX11_USER_DEFINED_LITERALS
Jeff Thompsonf7d49942013-08-01 16:47:40 -070090
91#if (__DMC__ < 0x812)
92#define BOOST_NO_CXX11_VARIADIC_MACROS
93#endif
94
95#if __DMC__ < 0x800
96#error "Compiler not supported or configured - please reconfigure"
97#endif
98//
99// last known and checked version is ...:
100#if (__DMC__ > 0x848)
101# if defined(BOOST_ASSERT_CONFIG)
102# error "Unknown compiler version - please run the configure tests and report the results"
103# endif
104#endif