File indexing completed on 2025-01-18 09:30:36
0001 #ifndef DATE_TIME_COMPILER_CONFIG_HPP___
0002 #define DATE_TIME_COMPILER_CONFIG_HPP___
0003
0004
0005
0006
0007
0008
0009
0010
0011 #include <cstdlib>
0012 #include <boost/config.hpp>
0013 #include <boost/detail/workaround.hpp>
0014
0015
0016
0017
0018 #include <boost/date_time/locale_config.hpp> //set up locale configurations
0019
0020
0021
0022 #if defined(BOOST_HAS_GETTIMEOFDAY) || defined(BOOST_HAS_FTIME)
0023 #define BOOST_DATE_TIME_HAS_HIGH_PRECISION_CLOCK
0024 #endif
0025
0026
0027
0028
0029
0030 #define BOOST_DATE_TIME_OPTIONAL_GREGORIAN_TYPES
0031
0032 #if (defined(BOOST_NO_INCLASS_MEMBER_INITIALIZATION) || BOOST_WORKAROUND( BOOST_BORLANDC, BOOST_TESTED_AT(0x581) ) )
0033 #define BOOST_DATE_TIME_NO_MEMBER_INIT
0034 #endif
0035
0036
0037 #include <boost/cstdint.hpp>
0038
0039
0040 #if (!defined(INT64_C))
0041 #define INT64_C(value) int64_t(value)
0042 #endif
0043
0044
0045
0046 #if defined(BOOST_BORLANDC) && defined(BOOST_BCB_WITH_RW_LIB)
0047 #define BOOST_DATE_TIME_NO_WISTREAM_ITERATOR
0048 #endif
0049
0050
0051
0052 #if defined(BOOST_BORLANDC) && defined(BOOST_BCB_WITH_STLPORT)
0053 #include <locale>
0054 namespace std {
0055 using stlport::tolower;
0056 using stlport::ctype;
0057 using stlport::use_facet;
0058 }
0059 #endif
0060
0061
0062
0063
0064
0065
0066 #if (((defined(__GNUC__) && (__GNUC__ < 3)) || \
0067 (defined(_MSC_VER) && (_MSC_VER < 1300)) ) && \
0068 !defined(_STLP_OWN_IOSTREAMS) ) || \
0069 BOOST_WORKAROUND( BOOST_BORLANDC, BOOST_TESTED_AT(0x581) )
0070 #define BOOST_DATE_TIME_INCLUDE_LIMITED_HEADERS
0071 #endif
0072
0073
0074
0075
0076
0077 #if defined(_MSC_VER)
0078
0079 # define BOOST_DATE_TIME_UNREACHABLE_EXPRESSION(x) __assume(false)
0080 #elif !defined(BOOST_NO_UNREACHABLE_RETURN_DETECTION)
0081
0082 # if defined(BOOST_NO_STDC_NAMESPACE)
0083 namespace std {
0084 using ::abort;
0085 }
0086 # endif
0087 # define BOOST_DATE_TIME_UNREACHABLE_EXPRESSION(x) std::abort()
0088 #else
0089
0090 # define BOOST_DATE_TIME_UNREACHABLE_EXPRESSION(x) x
0091 #endif
0092
0093
0094
0095
0096
0097
0098
0099
0100
0101
0102
0103
0104
0105
0106
0107
0108 #if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_DATE_TIME_DYN_LINK)
0109
0110 # ifdef BOOST_DATE_TIME_SOURCE
0111 # define BOOST_DATE_TIME_DECL BOOST_SYMBOL_EXPORT
0112 # else
0113 # define BOOST_DATE_TIME_DECL BOOST_SYMBOL_IMPORT
0114 # endif
0115 #endif
0116
0117
0118 #ifndef BOOST_DATE_TIME_DECL
0119 # define BOOST_DATE_TIME_DECL
0120 #endif
0121
0122
0123 #if defined(BOOST_HAS_THREADS)
0124 # if defined(_MSC_VER) || defined(__MWERKS__) || defined(__MINGW32__) || defined(__BORLANDC__)
0125
0126 # elif (!defined(__hpux) || (defined(__hpux) && defined(_REENTRANT)))
0127 # define BOOST_DATE_TIME_HAS_REENTRANT_STD_FUNCTIONS
0128 # endif
0129 #endif
0130
0131 #if defined(BOOST_NO_CXX11_NULLPTR)
0132 # define BOOST_DATE_TIME_NULLPTR 0
0133 #else
0134 # define BOOST_DATE_TIME_NULLPTR nullptr
0135 #endif
0136
0137 #endif