/*============================================================================= Copyright (c) 2011-2017 Bolero MURAKAMI https://github.com/bolero-MURAKAMI/Sprout Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) =============================================================================*/ #ifndef SPROUT_CONFIG_AUTO_CONFIG_HPP #define SPROUT_CONFIG_AUTO_CONFIG_HPP #include #include // // SPROUT_CONFIG_DISABLE_CONSTEXPR // #ifndef SPROUT_CONFIG_DISABLE_CONSTEXPR # if defined(SPROUT_NO_CXX11_CONSTEXPR) && !defined(SPROUT_CONFIG_FORCE_CONSTEXPR) # define SPROUT_CONFIG_DISABLE_CONSTEXPR # endif // #ifdef SPROUT_NO_CXX11_CONSTEXPR #endif // #ifndef SPROUT_CONFIG_DISABLE_CONSTEXPR // // SPROUT_CONFIG_DISABLE_CXX14_CONSTEXPR // #ifndef SPROUT_CONFIG_DISABLE_CXX14_CONSTEXPR # if defined(SPROUT_NO_CXX14_CONSTEXPR) && !defined(SPROUT_CONFIG_FORCE_CXX14_CONSTEXPR) # define SPROUT_CONFIG_DISABLE_CXX14_CONSTEXPR # endif // #ifdef SPROUT_NO_CXX14_CONSTEXPR #endif // #ifndef SPROUT_CONFIG_DISABLE_CONSTEXPR // // SPROUT_CONFIG_DISABLE_DEFAULTED_FUNCTIONS // #ifndef SPROUT_CONFIG_DISABLE_DEFAULTED_FUNCTIONS # if defined(SPROUT_NO_CXX11_DEFAULTED_FUNCTIONS) && !defined(SPROUT_CONFIG_FORCE_DEFAULTED_FUNCTIONS) # define SPROUT_CONFIG_DISABLE_DEFAULTED_FUNCTIONS # endif // #ifdef SPROUT_NO_CXX11_CONSTEXPR #endif // #ifndef SPROUT_CONFIG_DISABLE_DEFAULTED_FUNCTIONS // // SPROUT_CONFIG_DISABLE_DELETED_FUNCTIONS // #ifndef SPROUT_CONFIG_DISABLE_DELETED_FUNCTIONS # if defined(SPROUT_NO_CXX11_DELETED_FUNCTIONS) && !defined(SPROUT_CONFIG_FORCE_DELETED_FUNCTIONS) # define SPROUT_CONFIG_DISABLE_DELETED_FUNCTIONS # endif // #ifdef SPROUT_NO_CXX11_CONSTEXPR #endif // #ifndef SPROUT_CONFIG_DISABLE_DELETED_FUNCTIONS // // SPROUT_CONFIG_DISABLE_EXPLICIT_CONVERSION_OPERATORS // #ifndef SPROUT_CONFIG_DISABLE_EXPLICIT_CONVERSION_OPERATORS # if defined(SPROUT_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS) && !defined(SPROUT_CONFIG_FORCE_EXPLICIT_CONVERSION_OPERATORS) # define SPROUT_CONFIG_DISABLE_EXPLICIT_CONVERSION_OPERATORS # endif // #ifdef SPROUT_NO_CXX11_CONSTEXPR #endif // #ifndef SPROUT_CONFIG_DISABLE_EXPLICIT_CONVERSION_OPERATORS // // SPROUT_CONFIG_DISABLE_NOEXCEPT // #ifndef SPROUT_CONFIG_DISABLE_NOEXCEPT # if defined(SPROUT_NO_CXX11_NOEXCEPT) && !defined(SPROUT_CONFIG_FORCE_NOEXCEPT) # define SPROUT_CONFIG_DISABLE_NOEXCEPT # endif // #ifdef SPROUT_NO_CXX11_NOEXCEPT #endif // #ifndef SPROUT_CONFIG_DISABLE_NOEXCEPT // // SPROUT_CONFIG_DISABLE_TEMPLATE_ALIASES // #ifndef SPROUT_CONFIG_DISABLE_TEMPLATE_ALIASES # if defined(SPROUT_NO_CXX11_TEMPLATE_ALIASES) && !defined(SPROUT_CONFIG_FORCE_TEMPLATE_ALIASES) # define SPROUT_CONFIG_DISABLE_TEMPLATE_ALIASES # endif // #ifdef SPROUT_NO_CXX11_TEMPLATE_ALIASES #endif // #ifndef SPROUT_CONFIG_DISABLE_TEMPLATE_ALIASES // // SPROUT_USE_USER_DEFINED_LITERALS // #ifndef SPROUT_USE_USER_DEFINED_LITERALS # if defined(SPROUT_NO_CXX11_USER_DEFINED_LITERALS) && !defined(SPROUT_CONFIG_FORCE_USER_DEFINED_LITERALS) # define SPROUT_CONFIG_DISABLE_USER_DEFINED_LITERALS # endif // #ifdef SPROUT_NO_CXX11_USER_DEFINED_LITERALS #endif // #ifndef SPROUT_USE_USER_DEFINED_LITERALS // // SPROUT_CONFIG_DISABLE_DELEGATING_CONSTRUCTORS // #ifndef SPROUT_CONFIG_DISABLE_DELEGATING_CONSTRUCTORS # if defined(SPROUT_NO_CXX11_DELEGATING_CONSTRUCTORS) && !defined(SPROUT_CONFIG_FORCE_DELEGATING_CONSTRUCTORS) # define SPROUT_CONFIG_DISABLE_DELEGATING_CONSTRUCTORS # endif // #ifdef SPROUT_NO_CXX11_DELEGATING_CONSTRUCTORS #endif // #ifndef SPROUT_CONFIG_DISABLE_DELEGATING_CONSTRUCTORS // // SPROUT_CONFIG_DISABLE_UNICODE_LITERALS // #ifndef SPROUT_CONFIG_DISABLE_UNICODE_LITERALS # if defined(SPROUT_NO_CXX11_UNICODE_LITERALS) && !defined(SPROUT_CONFIG_FORCE_UNICODE_LITERALS) # define SPROUT_CONFIG_DISABLE_UNICODE_LITERALS # endif // #ifdef SPROUT_NO_CXX11_UNICODE_LITERALS #endif // #ifndef SPROUT_CONFIG_DISABLE_UNICODE_LITERALS // // SPROUT_CONFIG_DISABLE_VARIABLE_TEMPLATES // #ifndef SPROUT_CONFIG_DISABLE_VARIABLE_TEMPLATES # if defined(SPROUT_NO_CXX14_VARIABLE_TEMPLATES) && !defined(SPROUT_CONFIG_FORCE_VARIABLE_TEMPLATES) # define SPROUT_CONFIG_DISABLE_VARIABLE_TEMPLATES # endif // #ifdef SPROUT_NO_CXX14_VARIABLE_TEMPLATES #endif // #ifndef SPROUT_CONFIG_DISABLE_VARIABLE_TEMPLATES // // SPROUT_CONFIG_USE_SSCRISK_CEL // // // SPROUT_CONFIG_DISABLE_BUILTIN_CMATH_FUNCTION // #ifndef SPROUT_CONFIG_DISABLE_BUILTIN_CMATH_FUNCTION # ifndef SPROUT_HAS_CONSTEXPR_CMATH_FUNCTION # define SPROUT_CONFIG_DISABLE_BUILTIN_CMATH_FUNCTION # endif // #ifdef SPROUT_HAS_CONSTEXPR_CMATH_FUNCTION #endif // #ifndef SPROUT_CONFIG_DISABLE_BUILTIN_CMATH_FUNCTION // // SPROUT_CONFIG_DISABLE_BUILTIN_COPYSIGN_FUNCTION // #ifndef SPROUT_CONFIG_DISABLE_BUILTIN_COPYSIGN_FUNCTION # ifndef SPROUT_HAS_CONSTEXPR_COPYSIGN_FUNCTION # define SPROUT_CONFIG_DISABLE_BUILTIN_COPYSIGN_FUNCTION # endif // #ifdef SPROUT_HAS_CONSTEXPR_COPYSIGN_FUNCTION #endif // #ifndef SPROUT_CONFIG_DISABLE_BUILTIN_COPYSIGN_FUNCTION // // SPROUT_CONFIG_DISABLE_BUILTIN_BIT_OPERATION // #ifndef SPROUT_CONFIG_DISABLE_BUILTIN_BIT_OPERATION # ifndef SPROUT_HAS_CONSTEXPR_BIT_OPERATION # define SPROUT_CONFIG_DISABLE_BUILTIN_BIT_OPERATION # endif // #ifdef SPROUT_HAS_CONSTEXPR_BIT_OPERATION #endif // #ifndef SPROUT_CONFIG_DISABLE_BUILTIN_BIT_OPERATION // // SPROUT_CONFIG_DISABLE_SUPPORT_TEMPORARY_CONTAINER_ITERATION // SPROUT_CONFIG_SUPPORT_TEMPORARY_CONTAINER_ITERATION // #ifndef SPROUT_CONFIG_DISABLE_SUPPORT_TEMPORARY_CONTAINER_ITERATION # define SPROUT_CONFIG_SUPPORT_TEMPORARY_CONTAINER_ITERATION #endif // #ifndef SPROUT_CONFIG_DISABLE_SUPPORT_TEMPORARY_CONTAINER_ITERATION #include #endif // #ifndef SPROUT_CONFIG_AUTO_CONFIG_HPP