2013-08-08 09:54:33 +00:00
|
|
|
/*=============================================================================
|
2016-02-25 09:48:28 +00:00
|
|
|
Copyright (c) 2011-2016 Bolero MURAKAMI
|
2013-08-08 09:54:33 +00:00
|
|
|
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)
|
|
|
|
=============================================================================*/
|
2012-04-13 07:00:30 +00:00
|
|
|
#ifndef SPROUT_CONFIG_COMPILER_GCC_HPP
|
|
|
|
#define SPROUT_CONFIG_COMPILER_GCC_HPP
|
|
|
|
|
2015-12-06 05:34:37 +00:00
|
|
|
#if defined(__GXX_EXPERIMENTAL_CXX0X__) || (__cplusplus >= 201103L)
|
|
|
|
# define SPROUT_GCC_CXX11
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#if (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 6) || !defined(SPROUT_GCC_CXX11))
|
2013-06-29 04:27:11 +00:00
|
|
|
# define SPROUT_NO_CXX11_CONSTEXPR
|
2012-04-13 07:00:30 +00:00
|
|
|
#endif
|
|
|
|
|
2015-12-06 05:34:37 +00:00
|
|
|
#if (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 4) || !defined(SPROUT_GCC_CXX11))
|
2013-06-29 04:27:11 +00:00
|
|
|
# define SPROUT_NO_CXX11_DEFAULTED_FUNCTIONS
|
2012-12-17 14:10:23 +00:00
|
|
|
#endif
|
|
|
|
|
2015-12-06 05:34:37 +00:00
|
|
|
#if (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 4) || !defined(SPROUT_GCC_CXX11))
|
2013-06-29 04:27:11 +00:00
|
|
|
# define SPROUT_NO_CXX11_DELETED_FUNCTIONS
|
2012-12-17 14:10:23 +00:00
|
|
|
#endif
|
|
|
|
|
2015-12-06 05:34:37 +00:00
|
|
|
#if (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5) || !defined(SPROUT_GCC_CXX11))
|
2013-06-29 04:27:11 +00:00
|
|
|
# define SPROUT_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS
|
2013-02-18 17:49:10 +00:00
|
|
|
#endif
|
|
|
|
|
2015-12-06 05:34:37 +00:00
|
|
|
#if (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 6) || !defined(SPROUT_GCC_CXX11))
|
2013-06-29 04:27:11 +00:00
|
|
|
# define SPROUT_NO_CXX11_NOEXCEPT
|
2012-04-13 07:00:30 +00:00
|
|
|
#endif
|
|
|
|
|
2015-12-06 05:34:37 +00:00
|
|
|
#if (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 7) || !defined(SPROUT_GCC_CXX11))
|
2013-06-29 04:27:11 +00:00
|
|
|
# define SPROUT_NO_CXX11_TEMPLATE_ALIASES
|
2012-04-13 07:00:30 +00:00
|
|
|
#endif
|
|
|
|
|
2015-12-06 05:34:37 +00:00
|
|
|
#if (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 7) || !defined(SPROUT_GCC_CXX11))
|
2013-06-29 04:27:11 +00:00
|
|
|
# define SPROUT_NO_CXX11_USER_DEFINED_LITERALS
|
2012-04-13 07:00:30 +00:00
|
|
|
#endif
|
|
|
|
|
2015-12-06 05:34:37 +00:00
|
|
|
#if (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 7) || !defined(SPROUT_GCC_CXX11))
|
2013-06-29 04:27:11 +00:00
|
|
|
# define SPROUT_NO_CXX11_DELEGATING_CONSTRUCTORS
|
2012-04-13 07:00:30 +00:00
|
|
|
#endif
|
|
|
|
|
2015-12-06 05:34:37 +00:00
|
|
|
#if (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5) || !defined(SPROUT_GCC_CXX11))
|
2013-06-29 04:27:11 +00:00
|
|
|
# define SPROUT_NO_CXX11_UNICODE_LITERALS
|
2012-12-17 14:10:23 +00:00
|
|
|
#endif
|
|
|
|
|
2015-12-06 05:34:37 +00:00
|
|
|
#if ((__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 8)) && defined(SPROUT_GCC_CXX11))
|
2014-02-20 15:25:55 +00:00
|
|
|
# define SPROUT_NO_CXX11_ATTRIBUTES
|
|
|
|
#endif
|
|
|
|
|
2015-12-06 05:34:37 +00:00
|
|
|
#if ((__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) && defined(SPROUT_GCC_CXX11))
|
2012-05-04 03:09:06 +00:00
|
|
|
# define SPROUT_HAS_CONSTEXPR_CMATH_FUNCTION
|
|
|
|
#endif
|
|
|
|
|
2015-12-06 05:34:37 +00:00
|
|
|
#if ((__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) && defined(SPROUT_GCC_CXX11))
|
2014-03-19 10:50:00 +00:00
|
|
|
# define SPROUT_HAS_CONSTEXPR_COPYSIGN_FUNCTION
|
|
|
|
#endif
|
|
|
|
|
2015-12-06 05:34:37 +00:00
|
|
|
#if ((__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) && defined(SPROUT_GCC_CXX11))
|
2012-06-22 13:56:25 +00:00
|
|
|
# define SPROUT_HAS_CONSTEXPR_BIT_OPERATION
|
|
|
|
#endif
|
|
|
|
|
2015-04-05 15:21:34 +00:00
|
|
|
#if !defined(__cpp_constexpr) || (__cpp_constexpr < 201304)
|
|
|
|
# define SPROUT_NO_CXX14_CONSTEXPR
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#if !defined(__cpp_variable_templates) || (__cpp_variable_templates < 201304)
|
|
|
|
# define SPROUT_NO_CXX14_VARIABLE_TEMPLATES
|
|
|
|
#endif
|
2013-06-29 04:27:11 +00:00
|
|
|
|
2012-04-13 07:00:30 +00:00
|
|
|
#endif // #ifndef SPROUT_CONFIG_COMPILER_GCC_HPP
|