github.com/searKing/golang/go@v1.2.117/os/signal/cgo/include/boost/config/compiler/digitalmars.hpp (about)

     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
    74  #define BOOST_NO_CXX11_SFINAE_EXPR
    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_ALIGNOF
    83  #define BOOST_NO_CXX11_TRAILING_RESULT_TYPES
    84  #define BOOST_NO_CXX11_INLINE_NAMESPACES
    85  #define BOOST_NO_CXX11_REF_QUALIFIERS
    86  #define BOOST_NO_CXX11_FINAL
    87  #define BOOST_NO_CXX11_OVERRIDE
    88  #define BOOST_NO_CXX11_THREAD_LOCAL
    89  #define BOOST_NO_CXX11_UNRESTRICTED_UNION
    90  
    91  // C++ 14:
    92  #if !defined(__cpp_aggregate_nsdmi) || (__cpp_aggregate_nsdmi < 201304)
    93  #  define BOOST_NO_CXX14_AGGREGATE_NSDMI
    94  #endif
    95  #if !defined(__cpp_binary_literals) || (__cpp_binary_literals < 201304)
    96  #  define BOOST_NO_CXX14_BINARY_LITERALS
    97  #endif
    98  #if !defined(__cpp_constexpr) || (__cpp_constexpr < 201304)
    99  #  define BOOST_NO_CXX14_CONSTEXPR
   100  #endif
   101  #if !defined(__cpp_decltype_auto) || (__cpp_decltype_auto < 201304)
   102  #  define BOOST_NO_CXX14_DECLTYPE_AUTO
   103  #endif
   104  #if (__cplusplus < 201304) // There's no SD6 check for this....
   105  #  define BOOST_NO_CXX14_DIGIT_SEPARATORS
   106  #endif
   107  #if !defined(__cpp_generic_lambdas) || (__cpp_generic_lambdas < 201304)
   108  #  define BOOST_NO_CXX14_GENERIC_LAMBDAS
   109  #endif
   110  #if !defined(__cpp_init_captures) || (__cpp_init_captures < 201304)
   111  #  define BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES
   112  #endif
   113  #if !defined(__cpp_return_type_deduction) || (__cpp_return_type_deduction < 201304)
   114  #  define BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION
   115  #endif
   116  #if !defined(__cpp_variable_templates) || (__cpp_variable_templates < 201304)
   117  #  define BOOST_NO_CXX14_VARIABLE_TEMPLATES
   118  #endif
   119  
   120  // C++17
   121  #if !defined(__cpp_structured_bindings) || (__cpp_structured_bindings < 201606)
   122  #  define BOOST_NO_CXX17_STRUCTURED_BINDINGS
   123  #endif
   124  #if !defined(__cpp_inline_variables) || (__cpp_inline_variables < 201606)
   125  #  define BOOST_NO_CXX17_INLINE_VARIABLES
   126  #endif
   127  #if !defined(__cpp_fold_expressions) || (__cpp_fold_expressions < 201603)
   128  #  define BOOST_NO_CXX17_FOLD_EXPRESSIONS
   129  #endif
   130  #if !defined(__cpp_if_constexpr) || (__cpp_if_constexpr < 201606)
   131  #  define BOOST_NO_CXX17_IF_CONSTEXPR
   132  #endif
   133  
   134  #if (__DMC__ <= 0x840)
   135  #error "Compiler not supported or configured - please reconfigure"
   136  #endif
   137  //
   138  // last known and checked version is ...:
   139  #if (__DMC__ > 0x848)
   140  #  if defined(BOOST_ASSERT_CONFIG)
   141  #     error "boost: Unknown compiler version - please run the configure tests and report the results"
   142  #  endif
   143  #endif