From 19f66e89924bc980636334120078e848d4ee87da Mon Sep 17 00:00:00 2001 From: jzmaddock Date: Thu, 22 Oct 2015 10:17:24 +0100 Subject: [PATCH 1/3] VC7.1 requires BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS --- include/boost/config/compiler/visualc.hpp | 1 + 1 file changed, 1 insertion(+) diff --git a/include/boost/config/compiler/visualc.hpp b/include/boost/config/compiler/visualc.hpp index 93908cea..baaab589 100644 --- a/include/boost/config/compiler/visualc.hpp +++ b/include/boost/config/compiler/visualc.hpp @@ -55,6 +55,7 @@ # define BOOST_NO_CXX11_EXTERN_TEMPLATE // Variadic macros do not exist for VC7.1 and lower # define BOOST_NO_CXX11_VARIADIC_MACROS +# define BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS #endif #if _MSC_VER < 1500 // 140X == VC++ 8.0 From 94a3bf4f12807275b32827c7a43cabbcaf404a26 Mon Sep 17 00:00:00 2001 From: jzmaddock Date: Thu, 29 Oct 2015 11:48:13 +0000 Subject: [PATCH 2/3] Update to set BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE on MacOS. --- include/boost/config/platform/macos.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/boost/config/platform/macos.hpp b/include/boost/config/platform/macos.hpp index 6d876b12..5be4e3b3 100644 --- a/include/boost/config/platform/macos.hpp +++ b/include/boost/config/platform/macos.hpp @@ -47,7 +47,7 @@ # define BOOST_NO_STDC_NAMESPACE # endif -# if (__GNUC__ == 4) +# if (__GNUC__ >= 4) // Both gcc and intel require these. # define BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE From 05d55111e487002ac772d87931890265262eedc9 Mon Sep 17 00:00:00 2001 From: jzmaddock Date: Tue, 8 Dec 2015 08:58:29 +0000 Subject: [PATCH 3/3] Apply patch for clang from https://svn.boost.org/trac/boost/ticket/11833 --- include/boost/config/compiler/clang.hpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/include/boost/config/compiler/clang.hpp b/include/boost/config/compiler/clang.hpp index 48ed3c71..5481e5ee 100644 --- a/include/boost/config/compiler/clang.hpp +++ b/include/boost/config/compiler/clang.hpp @@ -62,9 +62,11 @@ // even though it defines __SIZEOF_INT128__. // See https://svn.boost.org/trac/boost/ticket/10418 // Only re-enable this for nvcc if you're absolutely sure -// of the circumstances under which it's supported: +// of the circumstances under which it's supported. +// Similarly __SIZEOF_INT128__ is defined when targetting msvc +// compatibility even though the required support functions are absent. // -#if defined(__SIZEOF_INT128__) && !defined(__CUDACC__) +#if defined(__SIZEOF_INT128__) && !defined(__CUDACC__) && !defined(_MSC_VER) # define BOOST_HAS_INT128 #endif