2013-06-15 13:48:07 +00:00
|
|
|
// (C) Copyright John Maddock 2001.
|
|
|
|
|
// (C) Copyright Jens Maurer 2001 - 2003.
|
|
|
|
|
// (C) Copyright Peter Dimov 2002.
|
|
|
|
|
// (C) Copyright Aleksey Gurtovoy 2002 - 2003.
|
|
|
|
|
// (C) Copyright David Abrahams 2002.
|
|
|
|
|
// 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.
|
|
|
|
|
|
|
|
|
|
// Sun C++ compiler setup:
|
|
|
|
|
|
2014-01-26 10:04:00 +00:00
|
|
|
# if __SUNPRO_CC <= 0x500
|
|
|
|
|
# define BOOST_NO_MEMBER_TEMPLATES
|
|
|
|
|
# define BOOST_NO_FUNCTION_TEMPLATE_ORDERING
|
|
|
|
|
# endif
|
|
|
|
|
|
|
|
|
|
# if (__SUNPRO_CC <= 0x520)
|
|
|
|
|
//
|
|
|
|
|
// Sunpro 5.2 and earler:
|
|
|
|
|
//
|
|
|
|
|
// although sunpro 5.2 supports the syntax for
|
|
|
|
|
// inline initialization it often gets the value
|
|
|
|
|
// wrong, especially where the value is computed
|
|
|
|
|
// from other constants (J Maddock 6th May 2001)
|
|
|
|
|
# define BOOST_NO_INCLASS_MEMBER_INITIALIZATION
|
|
|
|
|
|
|
|
|
|
// Although sunpro 5.2 supports the syntax for
|
|
|
|
|
// partial specialization, it often seems to
|
|
|
|
|
// bind to the wrong specialization. Better
|
|
|
|
|
// to disable it until suppport becomes more stable
|
|
|
|
|
// (J Maddock 6th May 2001).
|
|
|
|
|
# define BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
|
|
|
|
|
# endif
|
|
|
|
|
|
|
|
|
|
# if (__SUNPRO_CC <= 0x530)
|
|
|
|
|
// Requesting debug info (-g) with Boost.Python results
|
|
|
|
|
// in an internal compiler error for "static const"
|
|
|
|
|
// initialized in-class.
|
|
|
|
|
// >> Assertion: (../links/dbg_cstabs.cc, line 611)
|
|
|
|
|
// while processing ../test.cpp at line 0.
|
|
|
|
|
// (Jens Maurer according to Gottfried Ganssauge 04 Mar 2002)
|
|
|
|
|
# define BOOST_NO_INCLASS_MEMBER_INITIALIZATION
|
|
|
|
|
|
|
|
|
|
// SunPro 5.3 has better support for partial specialization,
|
|
|
|
|
// but breaks when compiling std::less<shared_ptr<T> >
|
|
|
|
|
// (Jens Maurer 4 Nov 2001).
|
|
|
|
|
|
|
|
|
|
// std::less specialization fixed as reported by George
|
|
|
|
|
// Heintzelman; partial specialization re-enabled
|
|
|
|
|
// (Peter Dimov 17 Jan 2002)
|
|
|
|
|
|
|
|
|
|
//# define BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
|
|
|
|
|
|
|
|
|
|
// integral constant expressions with 64 bit numbers fail
|
|
|
|
|
# define BOOST_NO_INTEGRAL_INT64_T
|
|
|
|
|
# endif
|
|
|
|
|
|
2013-06-15 13:48:07 +00:00
|
|
|
# if (__SUNPRO_CC < 0x570)
|
2002-07-11 10:38:21 +00:00
|
|
|
# define BOOST_NO_TEMPLATE_TEMPLATES
|
2003-05-08 12:10:36 +00:00
|
|
|
// see http://lists.boost.org/MailArchives/boost/msg47184.php
|
|
|
|
|
// and http://lists.boost.org/MailArchives/boost/msg47220.php
|
|
|
|
|
# define BOOST_NO_INCLASS_MEMBER_INITIALIZATION
|
2003-12-03 21:04:44 +00:00
|
|
|
# define BOOST_NO_SFINAE
|
2004-01-23 04:56:10 +00:00
|
|
|
# define BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS
|
2005-12-12 18:03:20 +00:00
|
|
|
# endif
|
2013-06-15 13:48:07 +00:00
|
|
|
# if (__SUNPRO_CC <= 0x580)
|
2004-12-14 12:51:01 +00:00
|
|
|
# define BOOST_NO_IS_ABSTRACT
|
2001-09-18 11:13:39 +00:00
|
|
|
# endif
|
|
|
|
|
|
2010-05-03 17:43:56 +00:00
|
|
|
# if (__SUNPRO_CC <= 0x5100)
|
|
|
|
|
// Sun 5.10 may not correctly value-initialize objects of
|
|
|
|
|
// some user defined types, as was reported in April 2010
|
|
|
|
|
// (CR 6947016), and confirmed by Steve Clamage.
|
|
|
|
|
// (Niels Dekker, LKEB, May 2010).
|
|
|
|
|
# define BOOST_NO_COMPLETE_VALUE_INITIALIZATION
|
|
|
|
|
# endif
|
|
|
|
|
|
2010-05-25 14:38:34 +00:00
|
|
|
//
|
|
|
|
|
// Dynamic shared object (DSO) and dynamic-link library (DLL) support
|
|
|
|
|
//
|
2014-01-26 10:04:00 +00:00
|
|
|
#if __SUNPRO_CC > 0x500
|
|
|
|
|
# define BOOST_SYMBOL_EXPORT __global
|
|
|
|
|
# define BOOST_SYMBOL_IMPORT __global
|
|
|
|
|
# define BOOST_SYMBOL_VISIBLE __global
|
|
|
|
|
#endif
|
|
|
|
|
|
2015-02-22 13:16:37 +00:00
|
|
|
#if (__SUNPRO_CC < 0x5130)
|
|
|
|
|
// C++03 features in 12.4:
|
2007-09-10 17:18:16 +00:00
|
|
|
#define BOOST_NO_TWO_PHASE_NAME_LOOKUP
|
2015-02-22 13:16:37 +00:00
|
|
|
#define BOOST_NO_SFINAE_EXPR
|
2008-04-18 10:15:09 +00:00
|
|
|
#define BOOST_NO_ADL_BARRIER
|
2015-02-22 13:16:37 +00:00
|
|
|
#define BOOST_NO_CXX11_VARIADIC_MACROS
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#if (__SUNPRO_CC < 0x5130) || (__cplusplus < 201100)
|
|
|
|
|
// C++11 only featuires in 12.4:
|
2012-07-10 13:57:24 +00:00
|
|
|
#define BOOST_NO_CXX11_AUTO_DECLARATIONS
|
|
|
|
|
#define BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS
|
|
|
|
|
#define BOOST_NO_CXX11_CHAR16_T
|
|
|
|
|
#define BOOST_NO_CXX11_CHAR32_T
|
|
|
|
|
#define BOOST_NO_CXX11_CONSTEXPR
|
|
|
|
|
#define BOOST_NO_CXX11_DECLTYPE
|
|
|
|
|
#define BOOST_NO_CXX11_DEFAULTED_FUNCTIONS
|
|
|
|
|
#define BOOST_NO_CXX11_DELETED_FUNCTIONS
|
|
|
|
|
#define BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS
|
|
|
|
|
#define BOOST_NO_CXX11_EXTERN_TEMPLATE
|
|
|
|
|
#define BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS
|
2012-03-04 03:00:49 +00:00
|
|
|
#define BOOST_NO_CXX11_HDR_INITIALIZER_LIST
|
2012-07-10 13:57:24 +00:00
|
|
|
#define BOOST_NO_CXX11_LAMBDAS
|
|
|
|
|
#define BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS
|
|
|
|
|
#define BOOST_NO_CXX11_NOEXCEPT
|
|
|
|
|
#define BOOST_NO_CXX11_NULLPTR
|
2012-07-10 19:10:08 +00:00
|
|
|
#define BOOST_NO_CXX11_RANGE_BASED_FOR
|
2012-07-10 13:57:24 +00:00
|
|
|
#define BOOST_NO_CXX11_RAW_LITERALS
|
|
|
|
|
#define BOOST_NO_CXX11_RVALUE_REFERENCES
|
|
|
|
|
#define BOOST_NO_CXX11_SCOPED_ENUMS
|
|
|
|
|
#define BOOST_NO_CXX11_STATIC_ASSERT
|
|
|
|
|
#define BOOST_NO_CXX11_TEMPLATE_ALIASES
|
|
|
|
|
#define BOOST_NO_CXX11_UNICODE_LITERALS
|
2013-06-15 13:48:07 +00:00
|
|
|
#define BOOST_NO_CXX11_ALIGNAS
|
2013-06-22 12:23:09 +00:00
|
|
|
#define BOOST_NO_CXX11_TRAILING_RESULT_TYPES
|
|
|
|
|
#define BOOST_NO_CXX11_INLINE_NAMESPACES
|
2014-08-19 18:34:09 +01:00
|
|
|
#define BOOST_NO_CXX11_FINAL
|
2020-04-09 13:10:15 -04:00
|
|
|
#define BOOST_NO_CXX11_OVERRIDE
|
2019-12-11 21:58:12 -05:00
|
|
|
#define BOOST_NO_CXX11_UNRESTRICTED_UNION
|
2015-02-21 17:30:56 +00:00
|
|
|
#endif
|
|
|
|
|
|
2015-10-01 11:26:08 -07:00
|
|
|
#if (__SUNPRO_CC < 0x5140) || (__cplusplus < 201103)
|
2015-02-21 17:30:56 +00:00
|
|
|
#define BOOST_NO_CXX11_VARIADIC_TEMPLATES
|
|
|
|
|
#define BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX
|
|
|
|
|
#define BOOST_NO_CXX11_FIXED_LENGTH_VARIADIC_TEMPLATE_EXPANSION_PACKS
|
|
|
|
|
#define BOOST_NO_CXX11_DECLTYPE_N3276
|
|
|
|
|
#define BOOST_NO_CXX11_USER_DEFINED_LITERALS
|
|
|
|
|
#define BOOST_NO_CXX11_REF_QUALIFIERS
|
2016-07-02 09:09:19 +01:00
|
|
|
#define BOOST_NO_CXX11_THREAD_LOCAL
|
2015-10-01 11:26:08 -07:00
|
|
|
#endif
|
|
|
|
|
|
2015-02-21 17:30:56 +00:00
|
|
|
#define BOOST_NO_COMPLETE_VALUE_INITIALIZATION
|
|
|
|
|
//
|
|
|
|
|
// C++0x features
|
|
|
|
|
//
|
|
|
|
|
# define BOOST_HAS_LONG_LONG
|
|
|
|
|
|
2017-02-03 23:57:44 -05:00
|
|
|
#define BOOST_NO_CXX11_SFINAE_EXPR
|
2009-02-25 18:04:27 +00:00
|
|
|
|
2014-10-12 10:01:22 +01:00
|
|
|
// C++ 14:
|
2014-10-12 11:46:15 +01:00
|
|
|
#if !defined(__cpp_aggregate_nsdmi) || (__cpp_aggregate_nsdmi < 201304)
|
|
|
|
|
# define BOOST_NO_CXX14_AGGREGATE_NSDMI
|
|
|
|
|
#endif
|
|
|
|
|
#if !defined(__cpp_binary_literals) || (__cpp_binary_literals < 201304)
|
|
|
|
|
# define BOOST_NO_CXX14_BINARY_LITERALS
|
|
|
|
|
#endif
|
|
|
|
|
#if !defined(__cpp_constexpr) || (__cpp_constexpr < 201304)
|
|
|
|
|
# define BOOST_NO_CXX14_CONSTEXPR
|
|
|
|
|
#endif
|
2016-11-23 08:17:25 -08:00
|
|
|
#if !defined(__cpp_decltype_auto) || (__cpp_decltype_auto < 201304) || (__cplusplus < 201402L)
|
2014-10-12 11:46:15 +01:00
|
|
|
# define BOOST_NO_CXX14_DECLTYPE_AUTO
|
|
|
|
|
#endif
|
|
|
|
|
#if (__cplusplus < 201304) // There's no SD6 check for this....
|
2014-10-21 12:39:17 +01:00
|
|
|
# define BOOST_NO_CXX14_DIGIT_SEPARATORS
|
2014-10-12 11:46:15 +01:00
|
|
|
#endif
|
|
|
|
|
#if !defined(__cpp_generic_lambdas) || (__cpp_generic_lambdas < 201304)
|
|
|
|
|
# define BOOST_NO_CXX14_GENERIC_LAMBDAS
|
|
|
|
|
#endif
|
|
|
|
|
#if !defined(__cpp_init_captures) || (__cpp_init_captures < 201304)
|
|
|
|
|
# define BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES
|
|
|
|
|
#endif
|
|
|
|
|
#if !defined(__cpp_return_type_deduction) || (__cpp_return_type_deduction < 201304)
|
|
|
|
|
# define BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION
|
|
|
|
|
#endif
|
|
|
|
|
#if !defined(__cpp_variable_templates) || (__cpp_variable_templates < 201304)
|
|
|
|
|
# define BOOST_NO_CXX14_VARIABLE_TEMPLATES
|
|
|
|
|
#endif
|
2016-09-06 10:13:11 -07:00
|
|
|
|
2017-05-29 01:16:47 -04:00
|
|
|
// C++17
|
|
|
|
|
#if !defined(__cpp_structured_bindings) || (__cpp_structured_bindings < 201606)
|
|
|
|
|
# define BOOST_NO_CXX17_STRUCTURED_BINDINGS
|
|
|
|
|
#endif
|
2017-05-29 09:34:41 -04:00
|
|
|
#if !defined(__cpp_inline_variables) || (__cpp_inline_variables < 201606)
|
|
|
|
|
# define BOOST_NO_CXX17_INLINE_VARIABLES
|
|
|
|
|
#endif
|
2017-05-29 10:15:41 -04:00
|
|
|
#if !defined(__cpp_fold_expressions) || (__cpp_fold_expressions < 201603)
|
|
|
|
|
# define BOOST_NO_CXX17_FOLD_EXPRESSIONS
|
|
|
|
|
#endif
|
2018-03-06 00:53:15 -06:00
|
|
|
#if !defined(__cpp_if_constexpr) || (__cpp_if_constexpr < 201606)
|
|
|
|
|
# define BOOST_NO_CXX17_IF_CONSTEXPR
|
|
|
|
|
#endif
|
2017-05-29 01:16:47 -04:00
|
|
|
|
2016-09-06 10:13:11 -07:00
|
|
|
// Turn on threading support for Solaris 12.
|
|
|
|
|
// Ticket #11972
|
|
|
|
|
#if (__SUNPRO_CC >= 0x5140) && defined(__SunOS_5_12) && !defined(BOOST_HAS_THREADS)
|
|
|
|
|
# define BOOST_HAS_THREADS
|
|
|
|
|
#endif
|
|
|
|
|
|
2009-02-25 18:04:27 +00:00
|
|
|
//
|
|
|
|
|
// Version
|
|
|
|
|
//
|
2007-09-10 17:18:16 +00:00
|
|
|
|
2001-09-18 11:13:39 +00:00
|
|
|
#define BOOST_COMPILER "Sun compiler version " BOOST_STRINGIZE(__SUNPRO_CC)
|
|
|
|
|
|
|
|
|
|
//
|
|
|
|
|
// versions check:
|
2014-01-26 10:04:00 +00:00
|
|
|
// we don't support sunpro prior to version 4:
|
|
|
|
|
#if __SUNPRO_CC < 0x400
|
2001-09-18 11:13:39 +00:00
|
|
|
#error "Compiler not supported or configured - please reconfigure"
|
|
|
|
|
#endif
|
|
|
|
|
//
|
2017-08-18 08:04:06 +01:00
|
|
|
// last known and checked version:
|
2017-08-17 17:51:48 +01:00
|
|
|
#if (__SUNPRO_CC > 0x5150)
|
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 compiler - please check for an updated Boost release."
|
2001-09-18 11:13:39 +00:00
|
|
|
# endif
|
|
|
|
|
#endif
|