1 #ifndef BOOST_METAPARSE_CONFIG_HPP
2 #define BOOST_METAPARSE_CONFIG_HPP
4 // Copyright Abel Sinkovics (abel@sinkovics.hu) 2013.
5 // Distributed under the Boost Software License, Version 1.0.
6 // (See accompanying file LICENSE_1_0.txt or copy at
7 // http://www.boost.org/LICENSE_1_0.txt)
9 #include <boost/config.hpp>
12 * Compiler workarounds
15 // BOOST_NO_CXX11_CONSTEXPR is not defined in gcc 4.6
17 defined BOOST_NO_CXX11_CONSTEXPR || defined BOOST_NO_CONSTEXPR || ( \
18 !defined __clang__ && defined __GNUC__ \
19 && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 7)) \
22 # define BOOST_NO_CONSTEXPR_C_STR
30 // Allow overriding this
31 #ifndef BOOST_METAPARSE_STD
33 // special-case MSCV >= 1900 as its constexpr support is good enough for
36 !defined BOOST_NO_CXX11_VARIADIC_TEMPLATES \
37 && !defined BOOST_NO_VARIADIC_TEMPLATES \
39 (!defined BOOST_NO_CONSTEXPR && !defined BOOST_NO_CXX11_CONSTEXPR) \
40 || (defined _MSC_VER && _MSC_VER >= 1900) \
42 && (!defined BOOST_GCC || BOOST_GCC >= 40700)
44 # define BOOST_METAPARSE_STD 2011
48 # define BOOST_METAPARSE_STD 1998
58 #if BOOST_METAPARSE_STD >= 2011
59 # define BOOST_METAPARSE_VARIADIC_STRING