From 5d5c651ea65098a323e6cb44a277136fc1492d7e Mon Sep 17 00:00:00 2001 From: jzmaddock Date: Sun, 28 Jan 2018 10:44:12 +0000 Subject: [PATCH] Type_traits.is_default_constructible: workaround for std::pair is required for more compilers. We don't need functional appveyor.yml any more. --- appveyor.yml | 1 - include/boost/type_traits/is_default_constructible.hpp | 4 ++-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index ecee07e..415436c 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -59,7 +59,6 @@ install: - git submodule update --init libs/throw_exception - git submodule update --init libs/type_index - git submodule update --init libs/utility - - git submodule update --init libs/functional - git submodule update --init libs/container_hash - xcopy /s /e /q %APPVEYOR_BUILD_FOLDER% libs\type_traits - bootstrap diff --git a/include/boost/type_traits/is_default_constructible.hpp b/include/boost/type_traits/is_default_constructible.hpp index b463748..dc8ea13 100644 --- a/include/boost/type_traits/is_default_constructible.hpp +++ b/include/boost/type_traits/is_default_constructible.hpp @@ -16,7 +16,7 @@ #if BOOST_WORKAROUND(BOOST_GCC_VERSION, < 40700) #include #endif -#if defined(__clang__) || (defined(__GNUC__) && (__GNUC__ == 5)) +#if defined(__clang__) || (defined(__GNUC__) && (__GNUC__ <= 5)) || (defined(BOOST_MSVC) && (BOOST_MSVC == 1800)) #include // std::pair #endif @@ -58,7 +58,7 @@ namespace boost{ template struct is_default_constructible : public is_default_constructible{}; template struct is_default_constructible : public is_default_constructible{}; template struct is_default_constructible : public integral_constant{}; -#if defined(__clang__) || (defined(__GNUC__) && (__GNUC__ == 5)) +#if defined(__clang__) || (defined(__GNUC__) && (__GNUC__ <= 5))|| (defined(BOOST_MSVC) && (BOOST_MSVC == 1800)) template struct is_default_constructible > : public integral_constant::value && is_default_constructible::value>{}; #endif #if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)