Imported Upstream version 1.57.0
[platform/upstream/boost.git] / boost / variant / detail / config.hpp
1 //-----------------------------------------------------------------------------
2 // boost variant/detail/config.hpp header file
3 // See http://www.boost.org for updates, documentation, and revision history.
4 //-----------------------------------------------------------------------------
5 //
6 // Copyright (c) 2003
7 // Eric Friedman
8 //
9 // Distributed under the Boost Software License, Version 1.0. (See
10 // accompanying file LICENSE_1_0.txt or copy at
11 // http://www.boost.org/LICENSE_1_0.txt)
12
13 #ifndef BOOST_VARIANT_DETAIL_CONFIG_HPP
14 #define BOOST_VARIANT_DETAIL_CONFIG_HPP
15
16 #include "boost/config.hpp"
17 #include "boost/detail/workaround.hpp"
18
19 ///////////////////////////////////////////////////////////////////////////////
20 // macro BOOST_VARIANT_AUX_BROKEN_CONSTRUCTOR_TEMPLATE_ORDERING
21 //
22 #if BOOST_WORKAROUND(__MWERKS__, <= 0x3201) \
23  || BOOST_WORKAROUND(BOOST_INTEL, <= 700) \
24  && !defined(BOOST_VARIANT_AUX_BROKEN_CONSTRUCTOR_TEMPLATE_ORDERING)
25 #   define BOOST_VARIANT_AUX_BROKEN_CONSTRUCTOR_TEMPLATE_ORDERING
26 #endif
27
28 ///////////////////////////////////////////////////////////////////////////////
29 // macro BOOST_VARIANT_AUX_HAS_CONSTRUCTOR_TEMPLATE_ORDERING_SFINAE_WKND
30 //
31 #if !defined(BOOST_NO_SFINAE) \
32  && !BOOST_WORKAROUND(BOOST_INTEL, <= 700) \
33  && !defined(BOOST_VARIANT_AUX_HAS_CONSTRUCTOR_TEMPLATE_ORDERING_SFINAE_WKND)
34 #   define BOOST_VARIANT_AUX_HAS_CONSTRUCTOR_TEMPLATE_ORDERING_SFINAE_WKND
35 #endif
36
37 #endif // BOOST_VARIANT_DETAIL_CONFIG_HPP