diff options
Diffstat (limited to 'boost/config/compiler')
-rw-r--r-- | boost/config/compiler/intel.hpp | 9 | ||||
-rw-r--r-- | boost/config/compiler/nvcc.hpp | 8 | ||||
-rw-r--r-- | boost/config/compiler/sunpro_cc.hpp | 2 | ||||
-rw-r--r-- | boost/config/compiler/visualc.hpp | 19 |
4 files changed, 27 insertions, 11 deletions
diff --git a/boost/config/compiler/intel.hpp b/boost/config/compiler/intel.hpp index 80969e9edd..1885ea281f 100644 --- a/boost/config/compiler/intel.hpp +++ b/boost/config/compiler/intel.hpp @@ -35,6 +35,10 @@ #endif +#if (__INTEL_COMPILER <= 1600) && !defined(BOOST_NO_CXX14_VARIABLE_TEMPLATES) +# define BOOST_NO_CXX14_VARIABLE_TEMPLATES +#endif + #else #include <boost/config/compiler/gcc.hpp> @@ -496,6 +500,11 @@ template<> struct assert_intrinsic_wchar_t<unsigned short> {}; # define BOOST_NO_CXX11_HDR_TUPLE #endif +// Broken in all versions up to 17: +#if !defined(BOOST_NO_CXX14_CONSTEXPR) +#define BOOST_NO_CXX14_CONSTEXPR +#endif + #if (BOOST_INTEL_CXX_VERSION < 1200) // // fenv.h appears not to work with Intel prior to 12.0: diff --git a/boost/config/compiler/nvcc.hpp b/boost/config/compiler/nvcc.hpp index 5a047070af..b31d4f4fa4 100644 --- a/boost/config/compiler/nvcc.hpp +++ b/boost/config/compiler/nvcc.hpp @@ -22,3 +22,11 @@ #if !defined(__CUDACC_VER__) || (__CUDACC_VER__ < 70500) # define BOOST_NO_CXX11_VARIADIC_TEMPLATES #endif +// The same bug is back again in 8.0: +#if (__CUDACC_VER__ > 80000) && (__CUDACC_VER__ < 80100) +# define BOOST_NO_CXX11_VARIADIC_TEMPLATES +#endif +// Most recent CUDA (8.0) has no constexpr support in msvc mode: +#if defined(_MSC_VER) +# define BOOST_NO_CXX11_CONSTEXPR +#endif diff --git a/boost/config/compiler/sunpro_cc.hpp b/boost/config/compiler/sunpro_cc.hpp index 8f07e0e9a2..ac259fce28 100644 --- a/boost/config/compiler/sunpro_cc.hpp +++ b/boost/config/compiler/sunpro_cc.hpp @@ -152,7 +152,7 @@ #if !defined(__cpp_constexpr) || (__cpp_constexpr < 201304) # define BOOST_NO_CXX14_CONSTEXPR #endif -#if !defined(__cpp_decltype_auto) || (__cpp_decltype_auto < 201304) +#if !defined(__cpp_decltype_auto) || (__cpp_decltype_auto < 201304) || (__cplusplus < 201402L) # define BOOST_NO_CXX14_DECLTYPE_AUTO #endif #if (__cplusplus < 201304) // There's no SD6 check for this.... diff --git a/boost/config/compiler/visualc.hpp b/boost/config/compiler/visualc.hpp index 72caff4974..cdbc9b6701 100644 --- a/boost/config/compiler/visualc.hpp +++ b/boost/config/compiler/visualc.hpp @@ -190,6 +190,13 @@ # define BOOST_NO_CXX11_CONSTEXPR #endif +// C++14 features supported by VC++ 15 Preview 5 +// +#if (_MSC_VER < 1910) +# define BOOST_NO_CXX14_AGGREGATE_NSDMI +# define BOOST_NO_CXX14_CONSTEXPR +#endif + // MSVC including version 14 has not yet completely // implemented value-initialization, as is reported: // "VC++ does not value-initialize members of derived classes without @@ -210,14 +217,6 @@ // C++ 11: // #define BOOST_NO_TWO_PHASE_NAME_LOOKUP -// -// C++ 14: -#if !defined(__cpp_aggregate_nsdmi) || (__cpp_aggregate_nsdmi < 201304) -# define BOOST_NO_CXX14_AGGREGATE_NSDMI -#endif -#if !defined(__cpp_constexpr) || (__cpp_constexpr < 201304) -# define BOOST_NO_CXX14_CONSTEXPR -#endif // // prefix and suffix headers: @@ -294,8 +293,8 @@ #endif // -// last known and checked version is 19.00.23026 (VC++ 2015 RTM): -#if (_MSC_VER > 1900) +// last known and checked version is 19.10.24629 (VC++ 2017 RC): +#if (_MSC_VER > 1910) # if defined(BOOST_ASSERT_CONFIG) # error "Unknown compiler version - please run the configure tests and report the results" # else |