Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:40:50

0001 #ifndef BOOST_METAPARSE_CONFIG_HPP
0002 #define BOOST_METAPARSE_CONFIG_HPP
0003 
0004 // Copyright Abel Sinkovics (abel@sinkovics.hu)  2013.
0005 // Distributed under the Boost Software License, Version 1.0.
0006 //    (See accompanying file LICENSE_1_0.txt or copy at
0007 //          http://www.boost.org/LICENSE_1_0.txt)
0008 
0009 #include <boost/config.hpp>
0010 
0011 /*
0012  * Compiler workarounds
0013  */
0014 
0015 // BOOST_NO_CXX11_CONSTEXPR is not defined in gcc 4.6
0016 #if \
0017   defined BOOST_NO_CXX11_CONSTEXPR || defined BOOST_NO_CONSTEXPR || ( \
0018     !defined __clang__ && defined __GNUC__ \
0019     && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 7)) \
0020   )
0021 
0022 #  define BOOST_NO_CONSTEXPR_C_STR
0023 
0024 #endif
0025 
0026 /*
0027  * C++ standard to use
0028  */
0029 
0030 // Allow overriding this
0031 #ifndef BOOST_METAPARSE_STD
0032 
0033 // special-case MSCV >= 1900 as its constexpr support is good enough for
0034 // Metaparse
0035 #  if \
0036     !defined BOOST_NO_CXX11_VARIADIC_TEMPLATES \
0037     && !defined BOOST_NO_VARIADIC_TEMPLATES \
0038     && ( \
0039       (!defined BOOST_NO_CONSTEXPR && !defined BOOST_NO_CXX11_CONSTEXPR) \
0040       || (defined _MSC_VER && _MSC_VER >= 1900) \
0041     ) \
0042     && (!defined BOOST_GCC || BOOST_GCC >= 40700)
0043 
0044 #    if !defined BOOST_NO_CXX14_CONSTEXPR
0045 
0046 #      define BOOST_METAPARSE_STD 2014
0047 
0048 #    else
0049 
0050 #      define BOOST_METAPARSE_STD 2011
0051 
0052 #    endif
0053 
0054 #  else
0055 
0056 #    define BOOST_METAPARSE_STD 1998
0057 
0058 #  endif
0059 
0060 #endif
0061 
0062 /*
0063  * Metaparse config
0064  */
0065 
0066 #if BOOST_METAPARSE_STD >= 2011
0067 #  define BOOST_METAPARSE_VARIADIC_STRING
0068 #endif
0069 
0070 #endif
0071