From 21d6d7bc210eeac4b467b69f41838fe54b30f7ad Mon Sep 17 00:00:00 2001 From: Daniel James Date: Mon, 3 Oct 2016 10:48:02 +0100 Subject: [PATCH] Fix detection of is_nothrow_move_constructible support. I should possibly also check how it handles `throw()`? --- test/unordered/noexcept_tests.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/test/unordered/noexcept_tests.cpp b/test/unordered/noexcept_tests.cpp index ba31b6e3..9ccc846c 100644 --- a/test/unordered/noexcept_tests.cpp +++ b/test/unordered/noexcept_tests.cpp @@ -84,9 +84,11 @@ namespace noexcept_tests // Copied from boost::is_nothrow_move_constructible implementation // to make sure this does actually detect it when expected. -#ifdef BOOST_IS_NOTHROW_MOVE_CONSTRUCT - BOOST_TEST(have_is_nothrow_move); -#elif !defined(BOOST_NO_CXX11_NOEXCEPT) && !defined(BOOST_NO_SFINAE_EXPR) && !BOOST_WORKAROUND(BOOST_GCC_VERSION, < 40800) + // + // The type trait is also available when BOOST_IS_NOTHROW_MOVE_CONSTRUCT + // is defined (for some versions of Visual C++?) but detects 'throw()', + // not noexcept. +#if !defined(BOOST_NO_CXX11_NOEXCEPT) && !defined(BOOST_NO_SFINAE_EXPR) && !BOOST_WORKAROUND(BOOST_GCC_VERSION, < 40800) BOOST_TEST(have_is_nothrow_move); #endif }