From 1a8dca4f2c223965ffe965a551971674c40a7d1c Mon Sep 17 00:00:00 2001 From: Peter Dimov Date: Mon, 28 Nov 2022 05:15:06 +0200 Subject: [PATCH] Disable is_tuple_like for msvc-12.0 and earlier --- include/boost/container_hash/is_tuple_like.hpp | 3 ++- test/is_tuple_like_test.cpp | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/include/boost/container_hash/is_tuple_like.hpp b/include/boost/container_hash/is_tuple_like.hpp index 5368283..8f57364 100644 --- a/include/boost/container_hash/is_tuple_like.hpp +++ b/include/boost/container_hash/is_tuple_like.hpp @@ -7,6 +7,7 @@ #include #include +#include #include namespace boost @@ -18,7 +19,7 @@ template struct is_tuple_like_: false_type { }; -#if !defined(BOOST_NO_CXX11_HDR_TUPLE) +#if !defined(BOOST_NO_CXX11_HDR_TUPLE) && !BOOST_WORKAROUND(BOOST_MSVC, <= 1800) template struct is_tuple_like_::value == std::tuple_size::value> >: true_type { diff --git a/test/is_tuple_like_test.cpp b/test/is_tuple_like_test.cpp index 728dec3..d00dca7 100644 --- a/test/is_tuple_like_test.cpp +++ b/test/is_tuple_like_test.cpp @@ -9,6 +9,7 @@ #include #include #include +#include #include struct X @@ -73,7 +74,7 @@ int main() BOOST_TEST_TRAIT_FALSE((is_tuple_like)); BOOST_TEST_TRAIT_FALSE((is_tuple_like)); -#if !defined(BOOST_NO_CXX11_HDR_TUPLE) +#if !defined(BOOST_NO_CXX11_HDR_TUPLE) && !BOOST_WORKAROUND(BOOST_MSVC, <= 1800) BOOST_TEST_TRAIT_TRUE((is_tuple_like< std::pair >));