#ifndef BOOST_HAS_TYPE_HPP #define BOOST_HAS_TYPE_HPP #include #include #include #include // character #if defined(__cpp_char32_t) || defined(__cpp_unicode_characters) || defined(BOOST_HAS_CHAR32_T) || defined(BOOST_HAS_CHAR32) || defined(__SIZEOF_CHAR32__) || defined(__CHAR32_TYPE__) #if !defined(BOOST_HAS_CHAR32_T) #define BOOST_HAS_CHAR32_T #endif #endif #if defined(__cpp_char16_t) || defined(__cpp_unicode_characters) || defined(BOOST_HAS_CHAR16_T) || defined(BOOST_HAS_CHAR16) || defined(__SIZEOF_CHAR16__) || defined(__CHAR16_TYPE__) #if !defined(BOOST_HAS_CHAR16_T) #define BOOST_HAS_CHAR16_T #endif #endif #if defined(__cpp_char8_t) || defined(BOOST_HAS_CHAR8_T) || defined(BOOST_HAS_CHAR8) || defined(__SIZEOF_CHAR8__) || defined(__CHAR8_TYPE__) #if !defined(BOOST_HAS_CHAR8_T) #define BOOST_HAS_CHAR8_T #endif #endif #if defined(__cpp_wchar_t) || defined(BOOST_HAS_WCHAR_T) || defined(BOOST_HAS_WCHAR) || defined(__SIZEOF_WCHAR__) || defined(__WCHAR_TYPE__) #if !defined(BOOST_HAS_WCHAR_T) #define BOOST_HAS_WCHAR_T #endif #endif #if !defined(BOOST_HAS_CHAR_T) #define BOOST_HAS_CHAR_T #endif // float #if defined(__cpp_float512_t) || defined(BOOST_CSTDFLOAT_FLOAT512_NATIVE_TYPE) || defined(BOOST_HAS_FLOAT512_T) || defined(BOOST_HAS_FLOAT512) || defined(__SIZEOF_FLOAT512__) || defined(__FLOAT512_TYPE__) #if !defined(BOOST_HAS_FLOAT512_T) #define BOOST_HAS_FLOAT512_T #endif #endif #if defined(__cpp_float256_t) || defined(BOOST_CSTDFLOAT_FLOAT256_NATIVE_TYPE) || defined(BOOST_HAS_FLOAT256_T) || defined(BOOST_HAS_FLOAT256) || defined(__SIZEOF_FLOAT256__) || defined(__FLOAT256_TYPE__) #if !defined(BOOST_HAS_FLOAT256_T) #define BOOST_HAS_FLOAT256_T #endif #endif #if defined(__cpp_float128_t) || defined(BOOST_CSTDFLOAT_FLOAT128_NATIVE_TYPE) || defined(BOOST_HAS_FLOAT128_T) || defined(BOOST_HAS_FLOAT128) || defined(__SIZEOF_FLOAT128__) || defined(__FLOAT128_TYPE__) #if !defined(BOOST_HAS_FLOAT128_T) #define BOOST_HAS_FLOAT128_T #endif #endif #if defined(__cpp_float80_t) || defined(BOOST_CSTDFLOAT_FLOAT80_NATIVE_TYPE) || defined(BOOST_HAS_FLOAT80_T) || defined(BOOST_HAS_FLOAT80) || defined(__SIZEOF_FLOAT80__) || defined(__FLOAT80_TYPE__) #if !defined(BOOST_HAS_FLOAT80_T) #define BOOST_HAS_FLOAT80_T #endif #endif #if defined(__cpp_float64_t) || defined(BOOST_CSTDFLOAT_FLOAT64_NATIVE_TYPE) || defined(BOOST_HAS_FLOAT64_T) || defined(BOOST_HAS_FLOAT64) || defined(__SIZEOF_FLOAT64__) || defined(__FLOAT64_TYPE__) #if !defined(BOOST_HAS_FLOAT64_T) #define BOOST_HAS_FLOAT64_T #endif #endif #if defined(__cpp_float40_t) || defined(BOOST_CSTDFLOAT_FLOAT40_NATIVE_TYPE) || defined(BOOST_HAS_FLOAT40_T) || defined(BOOST_HAS_FLOAT40) || defined(__SIZEOF_FLOAT40__) || defined(__FLOAT40_TYPE__) #if !defined(BOOST_HAS_FLOAT40_T) #define BOOST_HAS_FLOAT40_T #endif #endif #if defined(__cpp_float32_t) || defined(BOOST_CSTDFLOAT_FLOAT32_NATIVE_TYPE) || defined(BOOST_HAS_FLOAT32_T) || defined(BOOST_HAS_FLOAT32) || defined(__SIZEOF_FLOAT32__) || defined(__FLOAT32_TYPE__) #if !defined(BOOST_HAS_FLOAT32_T) #define BOOST_HAS_FLOAT32_T #endif #endif #if defined(__cpp_float16_t) || defined(BOOST_CSTDFLOAT_FLOAT16_NATIVE_TYPE) || defined(BOOST_HAS_FLOAT16_T) || defined(BOOST_HAS_FLOAT16) || defined(__SIZEOF_FLOAT16__) || defined(__FLOAT16_TYPE__) #if !defined(BOOST_HAS_FLOAT16_T) #define BOOST_HAS_FLOAT16_T #endif #endif #if defined(__cpp_float16b_t) || defined(BOOST_CSTDFLOAT_FLOAT16B_NATIVE_TYPE) || defined(BOOST_HAS_FLOAT16B_T) || defined(BOOST_HAS_FLOAT16B) || defined(__SIZEOF_FLOAT16B__) || defined(__FLOAT16B_TYPE__) #if !defined(BOOST_HAS_FLOAT16B_T) #define BOOST_HAS_FLOAT16B_T #endif #endif #if defined(__cpp_float8_t) || defined(BOOST_CSTDFLOAT_FLOAT8_NATIVE_TYPE) || defined(BOOST_HAS_FLOAT8_T) || defined(BOOST_HAS_FLOAT8) || defined(__SIZEOF_FLOAT8__) || defined(__FLOAT8_TYPE__) #if !defined(BOOST_HAS_FLOAT8_T) #define BOOST_HAS_FLOAT8_T #endif #endif // integer #if defined(__cpp_int512_t) || defined(BOOST_HAS_INT512_T) || defined(BOOST_HAS_INT512) || defined(__SIZEOF_INT512__) || defined(__INT512_TYPE__) #if !defined(BOOST_HAS_INT512_T) #define BOOST_HAS_INT512_T #endif #endif #if defined(__cpp_int256_t) || defined(BOOST_HAS_INT256_T) || defined(BOOST_HAS_INT256) || defined(__SIZEOF_INT256__) || defined(__INT256_TYPE__) #if !defined(BOOST_HAS_INT256_T) #define BOOST_HAS_INT256_T #endif #endif #if defined(__cpp_int128_t) || defined(BOOST_HAS_INT128_T) || defined(BOOST_HAS_INT128) || defined(__SIZEOF_INT128__) || defined(__INT128_TYPE__) #if !defined(BOOST_HAS_INT128_T) #define BOOST_HAS_INT128_T #endif #endif #if defined(__cpp_int96_t) || defined(BOOST_HAS_INT96_T) || defined(BOOST_HAS_INT96) || defined(__SIZEOF_INT96__) || defined(__INT96_TYPE__) #if !defined(BOOST_HAS_INT96_T) #define BOOST_HAS_INT96_T #endif #endif #if defined(__cpp_int80_t) || defined(BOOST_HAS_INT80_T) || defined(BOOST_HAS_INT80) || defined(__SIZEOF_INT80__) || defined(__INT80_TYPE__) #if !defined(BOOST_HAS_INT80_T) #define BOOST_HAS_INT80_T #endif #endif #if defined(__cpp_int64_t) || defined(BOOST_HAS_INT64_T) || defined(BOOST_HAS_INT64) || defined(__SIZEOF_INT64__) || defined(__INT64_TYPE__) #if !defined(BOOST_HAS_INT64_T) #define BOOST_HAS_INT64_T #endif #endif #if defined(__cpp_int40_t) || defined(BOOST_HAS_INT40_T) || defined(BOOST_HAS_INT40) || defined(__SIZEOF_INT40__) || defined(__INT40_TYPE__) #if !defined(BOOST_HAS_INT40_T) #define BOOST_HAS_INT40_T #endif #endif #if defined(__cpp_int32_t) || defined(BOOST_HAS_INT32_T) || defined(BOOST_HAS_INT32) || defined(__SIZEOF_INT32__) || defined(__INT32_TYPE__) #if !defined(BOOST_HAS_INT32_T) #define BOOST_HAS_INT32_T #endif #endif #if defined(__cpp_int16_t) || defined(BOOST_HAS_INT16_T) || defined(BOOST_HAS_INT16) || defined(__SIZEOF_INT16__) || defined(__INT16_TYPE__) #if !defined(BOOST_HAS_INT16_T) #define BOOST_HAS_INT16_T #endif #endif #if defined(__cpp_int8_t) || defined(BOOST_HAS_INT8_T) || defined(BOOST_HAS_INT8) || defined(__SIZEOF_INT8__) || defined(__INT8_TYPE__) #if !defined(BOOST_HAS_INT8_T) #define BOOST_HAS_INT8_T #endif #endif #endif // BOOST_HAS_TYPE_HPP