2013-06-15 13:48:07 +00:00
// (C) Copyright John Maddock 2001 - 2003.
// (C) Copyright Darin Adler 2001 - 2002.
// (C) Copyright Peter Dimov 2001.
// (C) Copyright Aleksey Gurtovoy 2002.
// (C) Copyright David Abrahams 2002 - 2003.
// (C) Copyright Beman Dawes 2002 - 2003.
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
2003-10-04 11:29:20 +00:00
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
2001-09-18 11:13:39 +00:00
// See http://www.boost.org for most recent version.
2012-01-20 18:18:04 +00:00
//
2001-09-18 11:13:39 +00:00
// Microsoft Visual C++ compiler setup:
2012-01-20 18:18:04 +00:00
//
// We need to be careful with the checks in this file, as contrary
// to popular belief there are versions with _MSC_VER with the final
// digit non-zero (mainly the MIPS cross compiler).
//
// So we either test _MSC_VER >= XXXX or else _MSC_VER < XXXX.
// No other comparisons (==, >, or <=) are safe.
//
2001-09-18 11:13:39 +00:00
# define BOOST_MSVC _MSC_VER
2012-01-20 18:18:04 +00:00
//
// Helper macro BOOST_MSVC_FULL_VER for use in Boost code:
//
2009-08-06 09:13:09 +00:00
# if _MSC_FULL_VER > 100000000
# define BOOST_MSVC_FULL_VER _MSC_FULL_VER
# else
# define BOOST_MSVC_FULL_VER (_MSC_FULL_VER * 10)
# endif
2012-01-20 18:18:04 +00:00
// Attempt to suppress VC6 warnings about the length of decorated names (obsolete):
2001-09-18 11:13:39 +00:00
# pragma warning( disable : 4503 ) // warning: decorated name length exceeded
2013-08-10 12:41:58 +00:00
# define BOOST_HAS_PRAGMA_ONCE
2013-06-15 16:40:46 +00:00
2012-01-20 18:18:04 +00:00
//
// versions check:
2013-08-10 12:41:58 +00:00
// we don't support Visual C++ prior to version 7.1:
# if _MSC_VER < 1310
2012-01-20 18:18:04 +00:00
# error "Compiler not supported or configured - please reconfigure"
# endif
2019-03-31 16:07:14 +03:00
// VS2005 (VC8) docs: __assume has been in Visual C++ for multiple releases
2019-04-01 17:53:33 +03:00
# define BOOST_UNREACHABLE_RETURN(x) __assume(0);
2019-03-31 16:07:14 +03:00
2013-09-20 14:39:56 +00:00
# if _MSC_FULL_VER < 180020827
2013-09-17 12:24:36 +00:00
# define BOOST_NO_FENV_H
# endif
2011-01-30 06:24:30 +00:00
2013-06-15 13:48:07 +00:00
# if _MSC_VER < 1400
2005-12-12 13:38:32 +00:00
// although a conforming signature for swprint exists in VC7.1
// it appears not to actually work:
2002-04-22 09:36:25 +00:00
# define BOOST_NO_SWPRINTF
2010-06-04 12:37:44 +00:00
// Our extern template tests also fail for this compiler:
2012-07-10 13:57:24 +00:00
# define BOOST_NO_CXX11_EXTERN_TEMPLATE
2010-08-17 10:19:29 +00:00
// Variadic macros do not exist for VC7.1 and lower
2012-07-10 13:57:24 +00:00
# define BOOST_NO_CXX11_VARIADIC_MACROS
2015-10-22 10:17:24 +01:00
# define BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS
2002-04-22 09:36:25 +00:00
# endif
2012-01-20 18:18:04 +00:00
# if _MSC_VER < 1500 // 140X == VC++ 8.0
2003-02-21 22:08:01 +00:00
# define BOOST_NO_MEMBER_TEMPLATE_FRIENDS
2007-11-07 17:17:39 +00:00
# endif
2012-01-20 18:18:04 +00:00
# if _MSC_VER < 1600 // 150X == VC++ 9.0
2008-03-28 17:03:42 +00:00
// A bug in VC9:
# define BOOST_NO_ADL_BARRIER
# endif
2010-05-17 16:24:58 +00:00
2001-09-18 11:13:39 +00:00
# ifndef _NATIVE_WCHAR_T_DEFINED
# define BOOST_NO_INTRINSIC_WCHAR_T
# endif
2013-06-15 13:48:07 +00:00
//
// check for exception handling support:
2010-05-05 17:55:15 +00:00
# if !defined(_CPPUNWIND) && !defined(BOOST_NO_EXCEPTIONS)
2013-06-15 13:48:07 +00:00
# define BOOST_NO_EXCEPTIONS
# endif
2002-04-03 10:29:32 +00:00
2002-05-07 11:24:29 +00:00
//
// __int64 support:
//
2013-08-10 12:41:58 +00:00
# define BOOST_HAS_MS_INT64
# if defined(_MSC_EXTENSIONS) || (_MSC_VER >= 1400)
2002-09-06 10:16:56 +00:00
# define BOOST_HAS_LONG_LONG
2009-02-25 18:04:27 +00:00
# else
# define BOOST_NO_LONG_LONG
2002-09-06 10:16:56 +00:00
# endif
2005-12-12 13:38:32 +00:00
# if (_MSC_VER >= 1400) && !defined(_DEBUG)
# define BOOST_HAS_NRVO
# endif
2014-10-29 23:41:06 +03:00
# if _MSC_VER >= 1600 // 160X == VC++ 10.0
2014-08-22 18:44:16 +04:00
# define BOOST_HAS_PRAGMA_DETECT_MISMATCH
2014-08-19 17:58:48 +01:00
# endif
2002-05-07 11:24:29 +00:00
//
2013-12-08 12:53:57 +00:00
// disable Win32 API's if compiler extensions are
2002-05-09 11:40:52 +00:00
// turned off:
//
2009-05-19 11:39:24 +00:00
# if !defined(_MSC_EXTENSIONS) && !defined(BOOST_DISABLE_WIN32)
2002-05-09 11:40:52 +00:00
# define BOOST_DISABLE_WIN32
# endif
2009-05-19 11:39:24 +00:00
# if !defined(_CPPRTTI) && !defined(BOOST_NO_RTTI)
2008-08-25 10:06:15 +00:00
# define BOOST_NO_RTTI
# endif
2002-05-07 11:24:29 +00:00
2022-08-14 16:10:26 +03:00
// Deprecated symbol markup
# if (_MSC_VER >= 1400)
# define BOOST_DEPRECATED(msg) __declspec(deprecated(msg))
# else
// MSVC 7.1 only supports the attribute without a message
# define BOOST_DEPRECATED(msg) __declspec(deprecated)
# endif
2012-08-22 18:21:29 +00:00
//
// TR1 features:
//
2017-04-15 19:19:46 +01:00
# if (_MSC_VER >= 1700) && defined(_HAS_CXX17) && (_HAS_CXX17 > 0)
2019-08-20 18:51:17 +01:00
// # define BOOST_HAS_TR1_HASH // don't know if this is true yet.
// # define BOOST_HAS_TR1_TYPE_TRAITS // don't know if this is true yet.
2012-08-22 18:21:29 +00:00
# define BOOST_HAS_TR1_UNORDERED_MAP
# define BOOST_HAS_TR1_UNORDERED_SET
# endif
2003-08-12 11:21:26 +00:00
//
2009-02-25 18:04:27 +00:00
// C++0x features
//
// See above for BOOST_NO_LONG_LONG
2009-05-21 15:16:39 +00:00
// C++ features supported by VC++ 10 (aka 2010)
//
# if _MSC_VER < 1600
2012-07-10 13:57:24 +00:00
# define BOOST_NO_CXX11_AUTO_DECLARATIONS
# define BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS
# define BOOST_NO_CXX11_LAMBDAS
# define BOOST_NO_CXX11_RVALUE_REFERENCES
# define BOOST_NO_CXX11_STATIC_ASSERT
# define BOOST_NO_CXX11_NULLPTR
# define BOOST_NO_CXX11_DECLTYPE
2009-05-21 15:16:39 +00:00
# endif // _MSC_VER < 1600
2010-11-08 17:01:44 +00:00
2010-05-18 12:02:23 +00:00
# if _MSC_VER >= 1600
2012-01-20 18:18:04 +00:00
# define BOOST_HAS_STDINT_H
2010-05-18 12:02:23 +00:00
# endif
2009-05-21 15:16:39 +00:00
2013-09-17 12:24:36 +00:00
// C++11 features supported by VC++ 11 (aka 2012)
2012-07-10 19:10:08 +00:00
//
# if _MSC_VER < 1700
2014-08-15 16:04:42 -03:00
# define BOOST_NO_CXX11_FINAL
2012-07-10 19:10:08 +00:00
# define BOOST_NO_CXX11_RANGE_BASED_FOR
# define BOOST_NO_CXX11_SCOPED_ENUMS
2020-04-09 13:10:15 -04:00
# define BOOST_NO_CXX11_OVERRIDE
2012-07-10 19:10:08 +00:00
# endif // _MSC_VER < 1700
2013-09-17 12:24:36 +00:00
// C++11 features supported by VC++ 12 (aka 2013).
2013-01-17 02:18:31 +00:00
//
2013-09-20 14:39:56 +00:00
# if _MSC_FULL_VER < 180020827
2013-09-17 12:24:36 +00:00
# define BOOST_NO_CXX11_DEFAULTED_FUNCTIONS
# define BOOST_NO_CXX11_DELETED_FUNCTIONS
2013-01-17 02:18:31 +00:00
# define BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS
# define BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS
# define BOOST_NO_CXX11_RAW_LITERALS
2013-09-17 12:24:36 +00:00
# define BOOST_NO_CXX11_TEMPLATE_ALIASES
2013-06-22 12:23:09 +00:00
# define BOOST_NO_CXX11_TRAILING_RESULT_TYPES
2013-10-23 20:04:30 +00:00
# define BOOST_NO_CXX11_VARIADIC_TEMPLATES
2013-09-17 12:24:36 +00:00
# define BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX
2013-12-13 13:47:50 +00:00
# define BOOST_NO_CXX11_DECLTYPE_N3276
2013-01-17 02:18:31 +00:00
# endif
2016-03-26 19:10:18 +00:00
# if _MSC_FULL_VER >= 180020827
# define BOOST_HAS_EXPM1
# define BOOST_HAS_LOG1P
# endif
2015-07-21 10:53:56 -04:00
// C++11 features supported by VC++ 14 (aka 2015)
2014-06-05 21:47:53 +02:00
//
2015-07-21 10:53:56 -04:00
# if (_MSC_FULL_VER < 190023026)
2014-06-05 21:47:53 +02:00
# define BOOST_NO_CXX11_NOEXCEPT
2018-01-04 00:58:32 +01:00
# define BOOST_NO_CXX11_DEFAULTED_MOVES
2014-06-05 21:47:53 +02:00
# define BOOST_NO_CXX11_REF_QUALIFIERS
# define BOOST_NO_CXX11_USER_DEFINED_LITERALS
# define BOOST_NO_CXX11_ALIGNAS
2022-11-21 19:50:11 +02:00
# define BOOST_NO_CXX11_ALIGNOF
2014-06-05 21:47:53 +02:00
# define BOOST_NO_CXX11_INLINE_NAMESPACES
2014-11-13 16:40:55 +01:00
# define BOOST_NO_CXX11_CHAR16_T
# define BOOST_NO_CXX11_CHAR32_T
# define BOOST_NO_CXX11_UNICODE_LITERALS
2014-10-19 17:05:01 +01:00
# define BOOST_NO_CXX14_DECLTYPE_AUTO
# define BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES
2014-10-20 11:37:19 +01:00
# define BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION
2014-11-13 16:40:55 +01:00
# define BOOST_NO_CXX14_BINARY_LITERALS
# define BOOST_NO_CXX14_GENERIC_LAMBDAS
2015-04-21 11:32:10 +02:00
# define BOOST_NO_CXX14_DIGIT_SEPARATORS
2016-07-02 09:09:19 +01:00
# define BOOST_NO_CXX11_THREAD_LOCAL
2019-12-14 18:06:07 -05:00
# define BOOST_NO_CXX11_UNRESTRICTED_UNION
2014-06-05 21:47:53 +02:00
# endif
2016-07-03 09:18:56 +01:00
// C++11 features supported by VC++ 14 update 3 (aka 2015)
//
# if (_MSC_FULL_VER < 190024210)
# define BOOST_NO_CXX14_VARIABLE_TEMPLATES
# define BOOST_NO_SFINAE_EXPR
2016-07-04 18:03:05 +01:00
# define BOOST_NO_CXX11_CONSTEXPR
2016-07-03 09:18:56 +01:00
# endif
2014-06-05 21:47:53 +02:00
2017-03-13 18:59:09 +00:00
// C++14 features supported by VC++ 14.1 (Visual Studio 2017)
2016-11-14 16:35:54 +01:00
//
# if (_MSC_VER < 1910)
# define BOOST_NO_CXX14_AGGREGATE_NSDMI
# endif
2017-08-18 13:30:07 +02:00
// C++17 features supported by VC++ 14.1 (Visual Studio 2017) Update 3
//
# if (_MSC_VER < 1911) || (_MSVC_LANG < 201703)
# define BOOST_NO_CXX17_STRUCTURED_BINDINGS
2018-03-06 00:53:15 -06:00
# define BOOST_NO_CXX17_IF_CONSTEXPR
2019-04-01 18:26:43 +01:00
// Let the defaults handle these now:
2019-04-01 18:23:26 +01:00
//# define BOOST_NO_CXX17_HDR_OPTIONAL
//# define BOOST_NO_CXX17_HDR_STRING_VIEW
2017-08-18 13:30:07 +02:00
# endif
2015-07-23 09:53:39 +01:00
// MSVC including version 14 has not yet completely
// implemented value-initialization, as is reported:
// "VC++ does not value-initialize members of derived classes without
// user-declared constructor", reported in 2009 by Sylvester Hesp:
// https://connect.microsoft.com/VisualStudio/feedback/details/484295
// "Presence of copy constructor breaks member class initialization",
// reported in 2009 by Alex Vakulenko:
// https://connect.microsoft.com/VisualStudio/feedback/details/499606
// "Value-initialization in new-expression", reported in 2005 by
// Pavel Kuznetsov (MetaCommunications Engineering):
// https://connect.microsoft.com/VisualStudio/feedback/details/100744
2015-07-23 18:16:39 +01:00
// Reported again by John Maddock in 2015 for VC14:
// https://connect.microsoft.com/VisualStudio/feedback/details/1582233/c-subobjects-still-not-value-initialized-correctly
2015-07-23 09:53:39 +01:00
// See also: http://www.boost.org/libs/utility/value_init.htm#compiler_issues
// (Niels Dekker, LKEB, May 2010)
2017-12-09 18:02:33 +00:00
// Still present in VC15.5, Dec 2017.
2015-07-23 09:53:39 +01:00
# define BOOST_NO_COMPLETE_VALUE_INITIALIZATION
2016-04-30 15:03:15 -04:00
//
2016-07-05 18:06:57 +01:00
// C++ 11:
//
2017-12-11 19:27:07 +00:00
// This is supported with /permissive- for 15.5 onwards, unfortunately we appear to have no way to tell
// if this is in effect or not, in any case nothing in Boost is currently using this, so we'll just go
// on defining it for now:
2016-07-05 18:06:57 +01:00
//
2021-11-23 19:22:21 +00:00
# if (_MSC_FULL_VER < 193030705) || (_MSVC_LANG < 202004)
2017-12-09 18:02:33 +00:00
# define BOOST_NO_TWO_PHASE_NAME_LOOKUP
2021-11-23 16:04:45 +00:00
# endif
2017-12-11 19:27:07 +00:00
2017-12-08 20:01:39 +00:00
# if (_MSC_VER < 1912) || (_MSVC_LANG < 201402)
2017-12-09 12:44:38 +00:00
// Supported from msvc-15.5 onwards:
2017-02-03 23:57:44 -05:00
# define BOOST_NO_CXX11_SFINAE_EXPR
2014-10-12 10:01:22 +01:00
# endif
2018-09-15 08:22:00 +01:00
# if (_MSC_VER < 1915) || (_MSVC_LANG < 201402)
2017-05-29 19:15:22 +01:00
// C++ 14:
2017-12-09 12:44:38 +00:00
// Still gives internal compiler error for msvc-15.5:
2014-10-12 10:01:22 +01:00
# define BOOST_NO_CXX14_CONSTEXPR
2018-09-15 08:22:00 +01:00
# endif
2017-05-29 01:16:47 -04:00
// C++ 17:
2017-12-09 12:44:38 +00:00
# if (_MSC_VER < 1912) || (_MSVC_LANG < 201703)
2017-05-29 09:34:41 -04:00
# define BOOST_NO_CXX17_INLINE_VARIABLES
2017-05-29 10:15:41 -04:00
# define BOOST_NO_CXX17_FOLD_EXPRESSIONS
2017-12-09 18:02:33 +00:00
# endif
2014-10-12 10:01:22 +01:00
2016-12-27 19:34:05 +00:00
//
// Things that don't work in clr mode:
//
# ifdef _M_CEE
# ifndef BOOST_NO_CXX11_THREAD_LOCAL
# define BOOST_NO_CXX11_THREAD_LOCAL
# endif
2023-01-13 19:23:21 +00:00
# if !defined(BOOST_NO_SFINAE_EXPR) && !defined(_MSVC_LANG)
2016-12-27 19:34:05 +00:00
# define BOOST_NO_SFINAE_EXPR
# endif
# ifndef BOOST_NO_CXX11_REF_QUALIFIERS
# define BOOST_NO_CXX11_REF_QUALIFIERS
# endif
# endif
# ifdef _M_CEE_PURE
# ifndef BOOST_NO_CXX11_CONSTEXPR
# define BOOST_NO_CXX11_CONSTEXPR
# endif
2014-10-12 10:01:22 +01:00
# endif
2009-02-25 18:04:27 +00:00
//
2003-08-12 11:21:26 +00:00
// prefix and suffix headers:
//
# ifndef BOOST_ABI_PREFIX
# define BOOST_ABI_PREFIX "boost / config / abi / msvc_prefix.hpp"
# endif
# ifndef BOOST_ABI_SUFFIX
# define BOOST_ABI_SUFFIX "boost / config / abi / msvc_suffix.hpp"
# endif
2021-03-03 17:00:24 +00:00
//
// Approximate compiler conformance version
//
# ifdef _MSVC_LANG
# define BOOST_CXX_VERSION _MSVC_LANG
# elif defined(_HAS_CXX17)
# define BOOST_CXX_VERSION 201703L
# elif BOOST_MSVC >= 1916
# define BOOST_CXX_VERSION 201402L
# endif
2023-08-25 18:54:49 +01:00
# if BOOST_CXX_VERSION >= 201703L
# define BOOST_ATTRIBUTE_UNUSED [[maybe_unused]]
# endif
2012-07-09 11:11:53 +00:00
# ifndef BOOST_COMPILER
2005-08-25 16:27:28 +00:00
// TODO:
2013-06-15 13:48:07 +00:00
// these things are mostly bogus. 1200 means version 12.0 of the compiler. The
2005-08-25 16:27:28 +00:00
// artificial versions assigned to them only refer to the versions of some IDE
// these compilers have been shipped with, and even that is not all of it. Some
// were shipped with freely downloadable SDKs, others as crosscompilers in eVC.
// IOW, you can't use these 'versions' in any sensible way. Sorry.
# if defined(UNDER_CE)
2013-08-10 12:41:58 +00:00
# if _MSC_VER < 1400
2012-01-29 12:56:58 +00:00
// Note: I'm not aware of any CE compiler with version 13xx
# if defined(BOOST_ASSERT_CONFIG)
2018-07-12 09:23:53 +03:00
# error "boost: Unknown EVC++ compiler version - please run the configure tests and report the results"
2012-01-29 12:56:58 +00:00
# else
2018-07-12 09:23:53 +03:00
# pragma message("boost: Unknown EVC++ compiler version - please run the configure tests and report the results")
2012-01-29 12:56:58 +00:00
# endif
# elif _MSC_VER < 1500
2006-01-13 10:48:08 +00:00
# define BOOST_COMPILER_VERSION evc8
2012-01-29 12:56:58 +00:00
# elif _MSC_VER < 1600
2009-03-03 10:06:46 +00:00
# define BOOST_COMPILER_VERSION evc9
2012-01-29 12:56:58 +00:00
# elif _MSC_VER < 1700
2009-03-03 10:06:46 +00:00
# define BOOST_COMPILER_VERSION evc10
2013-10-22 17:32:53 +00:00
# elif _MSC_VER < 1800
# define BOOST_COMPILER_VERSION evc11
# elif _MSC_VER < 1900
# define BOOST_COMPILER_VERSION evc12
2014-10-02 17:46:49 +01:00
# elif _MSC_VER < 2000
# define BOOST_COMPILER_VERSION evc14
2005-08-25 16:27:28 +00:00
# else
2005-12-16 14:08:34 +00:00
# if defined(BOOST_ASSERT_CONFIG)
2018-07-12 09:23:53 +03:00
# error "boost: Unknown EVC++ compiler version - please run the configure tests and report the results"
2005-12-16 14:08:34 +00:00
# else
2018-07-12 09:23:53 +03:00
# pragma message("boost: Unknown EVC++ compiler version - please run the configure tests and report the results")
2005-12-16 14:08:34 +00:00
# endif
2005-08-25 16:27:28 +00:00
# endif
2002-07-23 19:47:15 +00:00
# else
2017-08-08 17:36:58 -07:00
# if _MSC_VER < 1200
2019-03-20 07:32:07 -05:00
// Note: Versions up to 10.0 aren't supported.
2013-08-10 12:43:26 +00:00
# define BOOST_COMPILER_VERSION 5.0
# elif _MSC_VER < 1300
# define BOOST_COMPILER_VERSION 6.0
# elif _MSC_VER < 1310
# define BOOST_COMPILER_VERSION 7.0
# elif _MSC_VER < 1400
2005-08-25 16:27:28 +00:00
# define BOOST_COMPILER_VERSION 7.1
2012-01-29 12:56:58 +00:00
# elif _MSC_VER < 1500
2005-08-25 16:27:28 +00:00
# define BOOST_COMPILER_VERSION 8.0
2012-01-29 12:56:58 +00:00
# elif _MSC_VER < 1600
2007-11-07 17:17:39 +00:00
# define BOOST_COMPILER_VERSION 9.0
2012-01-29 12:56:58 +00:00
# elif _MSC_VER < 1700
2008-10-29 17:11:50 +00:00
# define BOOST_COMPILER_VERSION 10.0
2013-07-23 17:32:10 +00:00
# elif _MSC_VER < 1800
2013-06-15 13:48:07 +00:00
# define BOOST_COMPILER_VERSION 11.0
2013-07-23 17:32:10 +00:00
# elif _MSC_VER < 1900
# define BOOST_COMPILER_VERSION 12.0
2017-03-13 18:59:09 +00:00
# elif _MSC_VER < 1910
2014-06-05 21:47:53 +02:00
# define BOOST_COMPILER_VERSION 14.0
2017-03-13 18:59:09 +00:00
# elif _MSC_VER < 1920
# define BOOST_COMPILER_VERSION 14.1
2019-03-20 07:32:07 -05:00
# elif _MSC_VER < 1930
# define BOOST_COMPILER_VERSION 14.2
2022-11-09 14:49:18 +02:00
# elif _MSC_VER < 1940
# define BOOST_COMPILER_VERSION 14.3
2005-08-25 16:27:28 +00:00
# else
# define BOOST_COMPILER_VERSION _MSC_VER
# endif
2002-07-23 19:47:15 +00:00
# endif
2012-07-09 11:11:53 +00:00
# define BOOST_COMPILER "Microsoft Visual C++ version " BOOST_STRINGIZE(BOOST_COMPILER_VERSION)
# endif
2001-09-18 11:13:39 +00:00
2017-12-12 18:20:27 +00:00
# include <boost/config/pragma_message.hpp>
2001-09-18 11:13:39 +00:00
//
2022-11-09 14:49:18 +02:00
// last known and checked version is 19.3x (VS2022):
# if (_MSC_VER >= 1940)
2001-09-18 11:13:39 +00:00
# if defined(BOOST_ASSERT_CONFIG)
2017-08-17 17:51:48 +01:00
# error "Boost.Config is older than your current compiler version."
# elif !defined(BOOST_CONFIG_SUPPRESS_OUTDATED_MESSAGE)
2018-03-07 18:02:01 +00:00
//
// Disabled as of March 2018 - the pace of VS releases is hard to keep up with
// and in any case, we have relatively few defect macros defined now.
// BOOST_PRAGMA_MESSAGE("Info: Boost.Config is older than your compiler version - probably nothing bad will happen - but you may wish to look for an updated Boost version. Define BOOST_CONFIG_SUPPRESS_OUTDATED_MESSAGE to suppress this message.")
2001-09-18 11:13:39 +00:00
# endif
# endif