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