From bc58964228c52b208ed6308eebf0c19735d1537a Mon Sep 17 00:00:00 2001 From: jzmaddock Date: Mon, 28 Dec 2015 18:53:44 +0000 Subject: [PATCH 1/8] Disable wchar_t usage when it's not available. See https://svn.boost.org/trac/boost/ticket/11870. --- include/boost/type_traits/detail/common_arithmetic_type.hpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/include/boost/type_traits/detail/common_arithmetic_type.hpp b/include/boost/type_traits/detail/common_arithmetic_type.hpp index 7211002..8c09158 100644 --- a/include/boost/type_traits/detail/common_arithmetic_type.hpp +++ b/include/boost/type_traits/detail/common_arithmetic_type.hpp @@ -35,12 +35,16 @@ template<> struct arithmetic_type<2> typedef char (&result_type) [2]; }; +#ifndef BOOST_NO_INTRINSIC_WCHAR_T + template<> struct arithmetic_type<3> { typedef wchar_t type; typedef char (&result_type) [3]; }; +#endif + // There are five standard signed integer types: // “signed char”, “short int”, “int”, “long int”, and “long long int”. @@ -170,7 +174,9 @@ private: static arithmetic_type<1>::result_type select( arithmetic_type<1>::type ); static arithmetic_type<2>::result_type select( arithmetic_type<2>::type ); +#ifndef BOOST_NO_INTRINSIC_WCHAR_T static arithmetic_type<3>::result_type select( arithmetic_type<3>::type ); +#endif static arithmetic_type<4>::result_type select( arithmetic_type<4>::type ); static arithmetic_type<5>::result_type select( arithmetic_type<5>::type ); static arithmetic_type<6>::result_type select( arithmetic_type<6>::type ); From f80cbb0dad16f974815a4ad8208f056ec58c9efc Mon Sep 17 00:00:00 2001 From: Gregor Jasny Date: Tue, 29 Dec 2015 20:41:10 +0100 Subject: [PATCH 2/8] Change check to s_check (like #8542) --- include/boost/type_traits/detail/mp_defer.hpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/include/boost/type_traits/detail/mp_defer.hpp b/include/boost/type_traits/detail/mp_defer.hpp index 7910e54..f3beeb2 100644 --- a/include/boost/type_traits/detail/mp_defer.hpp +++ b/include/boost/type_traits/detail/mp_defer.hpp @@ -25,12 +25,12 @@ template class F, class... T> struct mp_valid_impl { template class G, class = G> - static boost::true_type check(int); + static boost::true_type check_s(int); template class> - static boost::false_type check(...); + static boost::false_type check_s(...); - using type = decltype(check(0)); + using type = decltype(check_s(0)); }; template class F, class... T> From 217c337233454a41b41176b43577ef534dd0fe97 Mon Sep 17 00:00:00 2001 From: jzmaddock Date: Sun, 10 Jan 2016 18:10:17 +0000 Subject: [PATCH 3/8] Fix result of add_reference. Also update tests. See https://svn.boost.org/trac/boost/ticket/11900. --- include/boost/type_traits/add_reference.hpp | 6 +++--- test/add_lvalue_reference_test.cpp | 7 ++++++- test/add_reference_test.cpp | 5 +++++ test/add_rvalue_reference_test.cpp | 5 +++++ 4 files changed, 19 insertions(+), 4 deletions(-) diff --git a/include/boost/type_traits/add_reference.hpp b/include/boost/type_traits/add_reference.hpp index 526f259..3c91415 100644 --- a/include/boost/type_traits/add_reference.hpp +++ b/include/boost/type_traits/add_reference.hpp @@ -49,9 +49,9 @@ template struct add_reference // these full specialisations are always required: template <> struct add_reference { typedef void type; }; #ifndef BOOST_NO_CV_VOID_SPECIALIZATIONS -template <> struct add_reference { typedef void type; }; -template <> struct add_reference { typedef void type; }; -template <> struct add_reference { typedef void type; }; +template <> struct add_reference { typedef const void type; }; +template <> struct add_reference { typedef const volatile void type; }; +template <> struct add_reference { typedef volatile void type; }; #endif } // namespace boost diff --git a/test/add_lvalue_reference_test.cpp b/test/add_lvalue_reference_test.cpp index 1a9c1cb..0dd1af1 100644 --- a/test/add_lvalue_reference_test.cpp +++ b/test/add_lvalue_reference_test.cpp @@ -52,7 +52,12 @@ TT_TEST_BEGIN(add_lvalue_reference) add_lvalue_reference_test_13a(); #endif -TT_TEST_END + BOOST_CHECK_TYPE(tt::add_lvalue_reference::type, void); + BOOST_CHECK_TYPE(tt::add_lvalue_reference::type, const void); + BOOST_CHECK_TYPE(tt::add_lvalue_reference::type, const volatile void); + BOOST_CHECK_TYPE(tt::add_lvalue_reference::type, volatile void); + + TT_TEST_END diff --git a/test/add_reference_test.cpp b/test/add_reference_test.cpp index 458ceb5..35cf76c 100644 --- a/test/add_reference_test.cpp +++ b/test/add_reference_test.cpp @@ -52,6 +52,11 @@ TT_TEST_BEGIN(add_reference) add_reference_test_13a(); #endif + BOOST_CHECK_TYPE(tt::add_reference::type, void); + BOOST_CHECK_TYPE(tt::add_reference::type, const void); + BOOST_CHECK_TYPE(tt::add_reference::type, const volatile void); + BOOST_CHECK_TYPE(tt::add_reference::type, volatile void); + TT_TEST_END diff --git a/test/add_rvalue_reference_test.cpp b/test/add_rvalue_reference_test.cpp index 92c6cc8..caa2869 100644 --- a/test/add_rvalue_reference_test.cpp +++ b/test/add_rvalue_reference_test.cpp @@ -69,6 +69,11 @@ TT_TEST_BEGIN(add_rvalue_reference) add_rvalue_reference_test_13a(); #endif + BOOST_CHECK_TYPE(tt::add_rvalue_reference::type, void); + BOOST_CHECK_TYPE(tt::add_rvalue_reference::type, const void); + BOOST_CHECK_TYPE(tt::add_rvalue_reference::type, const volatile void); + BOOST_CHECK_TYPE(tt::add_rvalue_reference::type, volatile void); + TT_TEST_END From 1f65f0351d2314bd5e4c6671f3051ca42dd72a04 Mon Sep 17 00:00:00 2001 From: jzmaddock Date: Sun, 10 Jan 2016 18:53:10 +0000 Subject: [PATCH 4/8] Update docs. --- doc/history.qbk | 8 ++++- doc/html/boost_typetraits/history.html | 39 ++++++++++++++++------- doc/html/index/s11.html | 3 +- doc/html/index/s12.html | 2 +- doc/html/index/s13.html | 2 +- doc/html/index/s14.html | 12 +++---- include/boost/type_traits/common_type.hpp | 5 +-- 7 files changed, 47 insertions(+), 24 deletions(-) diff --git a/doc/history.qbk b/doc/history.qbk index 45abeef..31b86a0 100644 --- a/doc/history.qbk +++ b/doc/history.qbk @@ -7,7 +7,13 @@ [section:history History] -[h4 Boost 1.60.0 ???] +[h4 Boost 1.61.0] + +* Fixed wchar_t usage bug for older msvc compilers, see [@https://svn.boost.org/trac/boost/ticket/11870 #11870]. +* Fixed use of name "check" which is a macro on Apple, see [@https://github.com/boostorg/type_traits/pull/23 PR#23]. +* Fix `add_reference::type` to respect cv-qualifiers, see [@https://svn.boost.org/trac/boost/ticket/11900 #11900]. + +[h4 Boost 1.60.0] * Refactored traits to depend only on Boost.Config. Greatly simplified code to improve readability and remove workarounds for old compilers no longer supported. * Fix __decay to follow C++11 semantics, see [@https://svn.boost.org/trac/boost/ticket/7760 #7760]. diff --git a/doc/html/boost_typetraits/history.html b/doc/html/boost_typetraits/history.html index 9a7e09a..501f52d 100644 --- a/doc/html/boost_typetraits/history.html +++ b/doc/html/boost_typetraits/history.html @@ -28,8 +28,25 @@
- Boost - 1.60.0 ??? + Boost + 1.61.0 +
+
    +
  • + Fixed wchar_t usage bug for older msvc compilers, see #11870. +
  • +
  • + Fixed use of name "check" which is a macro on Apple, see PR#23. +
  • +
  • + Fix add_reference<const void>::type + to respect cv-qualifiers, see #11900. +
  • +
+
+ + Boost + 1.60.0
  • @@ -50,7 +67,7 @@
- + Boost 1.58.0
@@ -65,7 +82,7 @@
- + Boost 1.57.0
@@ -79,7 +96,7 @@
- + Boost 1.56.0
@@ -88,7 +105,7 @@ #9474.
- + Boost 1.55.0
@@ -96,7 +113,7 @@ Added new trait is_copy_constructible.
- + Boost 1.54.0
@@ -107,7 +124,7 @@ has_trivial_move_constructor.
- + Boost 1.47.0
@@ -122,7 +139,7 @@
- + Boost 1.45.0
@@ -139,7 +156,7 @@
- + Boost 1.44.0
@@ -156,7 +173,7 @@
- + Boost 1.42.0
diff --git a/doc/html/index/s11.html b/doc/html/index/s11.html index 7234df8..4fcee8e 100644 --- a/doc/html/index/s11.html +++ b/doc/html/index/s11.html @@ -24,7 +24,7 @@

-Class Index

+Class Index

A C D E F H I M N O P R T

@@ -157,6 +157,7 @@
  • has_multiplies_assign

  • has_negate

  • has_new_operator

  • +
  • has_nothrow_assign

  • has_nothrow_constructor

  • has_nothrow_copy

  • diff --git a/doc/html/index/s12.html b/doc/html/index/s12.html index 03377cc..0661896 100644 --- a/doc/html/index/s12.html +++ b/doc/html/index/s12.html @@ -24,7 +24,7 @@
  • -Typedef Index

    +Typedef Index

    F R T V

    diff --git a/doc/html/index/s13.html b/doc/html/index/s13.html index d0133d9..e92b250 100644 --- a/doc/html/index/s13.html +++ b/doc/html/index/s13.html @@ -24,7 +24,7 @@

    -Macro Index

    +Macro Index

    B

    diff --git a/doc/html/index/s14.html b/doc/html/index/s14.html index c0640fc..cd54679 100644 --- a/doc/html/index/s14.html +++ b/doc/html/index/s14.html @@ -23,7 +23,7 @@

    -Index

    +Index

    A B C D E F H I M N O P R T U V

    @@ -204,10 +204,6 @@
    • -

      check

      - -
    • -
    • common_type

      • common_type

      • @@ -517,7 +513,10 @@
      • has_new_operator

      • has_nothrow_assign

        - +
      • has_nothrow_constructor

        @@ -856,7 +855,6 @@

        Operator Type Traits

        • any

        • -
        • check

        • dont_care

        • has_equal_to

        • has_operator

        • diff --git a/include/boost/type_traits/common_type.hpp b/include/boost/type_traits/common_type.hpp index 5c4303b..4a26d92 100644 --- a/include/boost/type_traits/common_type.hpp +++ b/include/boost/type_traits/common_type.hpp @@ -12,12 +12,13 @@ #include #include #include +#include #if defined(BOOST_NO_CXX11_DECLTYPE) #include #endif -#if !defined(BOOST_NO_CXX11_TEMPLATE_ALIASES) && !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) +#if !defined(BOOST_NO_CXX11_TEMPLATE_ALIASES) && !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) && !BOOST_WORKAROUND(__CUDACC_VER__, < 70500) #include #endif @@ -26,7 +27,7 @@ namespace boost // variadic common_type -#if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) +#if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) && !BOOST_WORKAROUND(__CUDACC_VER__, < 70500) template struct common_type { From 23d6106101b1bfdb5fa2ac2decba4949eeeae1e4 Mon Sep 17 00:00:00 2001 From: jzmaddock Date: Mon, 11 Jan 2016 13:44:51 +0000 Subject: [PATCH 5/8] Revert "Update docs." This reverts commit 1f65f0351d2314bd5e4c6671f3051ca42dd72a04. --- doc/history.qbk | 8 +----- doc/html/boost_typetraits/history.html | 39 ++++++++------------------ doc/html/index/s11.html | 3 +- doc/html/index/s12.html | 2 +- doc/html/index/s13.html | 2 +- doc/html/index/s14.html | 12 ++++---- 6 files changed, 22 insertions(+), 44 deletions(-) diff --git a/doc/history.qbk b/doc/history.qbk index 31b86a0..45abeef 100644 --- a/doc/history.qbk +++ b/doc/history.qbk @@ -7,13 +7,7 @@ [section:history History] -[h4 Boost 1.61.0] - -* Fixed wchar_t usage bug for older msvc compilers, see [@https://svn.boost.org/trac/boost/ticket/11870 #11870]. -* Fixed use of name "check" which is a macro on Apple, see [@https://github.com/boostorg/type_traits/pull/23 PR#23]. -* Fix `add_reference::type` to respect cv-qualifiers, see [@https://svn.boost.org/trac/boost/ticket/11900 #11900]. - -[h4 Boost 1.60.0] +[h4 Boost 1.60.0 ???] * Refactored traits to depend only on Boost.Config. Greatly simplified code to improve readability and remove workarounds for old compilers no longer supported. * Fix __decay to follow C++11 semantics, see [@https://svn.boost.org/trac/boost/ticket/7760 #7760]. diff --git a/doc/html/boost_typetraits/history.html b/doc/html/boost_typetraits/history.html index 501f52d..9a7e09a 100644 --- a/doc/html/boost_typetraits/history.html +++ b/doc/html/boost_typetraits/history.html @@ -28,25 +28,8 @@
    - Boost - 1.61.0 -
    -
      -
    • - Fixed wchar_t usage bug for older msvc compilers, see #11870. -
    • -
    • - Fixed use of name "check" which is a macro on Apple, see PR#23. -
    • -
    • - Fix add_reference<const void>::type - to respect cv-qualifiers, see #11900. -
    • -
    -
    - - Boost - 1.60.0 + Boost + 1.60.0 ???
    • @@ -67,7 +50,7 @@
    - + Boost 1.58.0
    @@ -82,7 +65,7 @@
    - + Boost 1.57.0
    @@ -96,7 +79,7 @@
    - + Boost 1.56.0
    @@ -105,7 +88,7 @@ #9474.
    - + Boost 1.55.0
    @@ -113,7 +96,7 @@ Added new trait is_copy_constructible.
    - + Boost 1.54.0
    @@ -124,7 +107,7 @@ has_trivial_move_constructor.
    - + Boost 1.47.0
    @@ -139,7 +122,7 @@
    - + Boost 1.45.0
    @@ -156,7 +139,7 @@
    - + Boost 1.44.0
    @@ -173,7 +156,7 @@
    - + Boost 1.42.0
    diff --git a/doc/html/index/s11.html b/doc/html/index/s11.html index 4fcee8e..7234df8 100644 --- a/doc/html/index/s11.html +++ b/doc/html/index/s11.html @@ -24,7 +24,7 @@

    -Class Index

    +Class Index

    A C D E F H I M N O P R T

    @@ -157,7 +157,6 @@
  • has_multiplies_assign

  • has_negate

  • has_new_operator

  • -
  • has_nothrow_assign

  • has_nothrow_constructor

  • has_nothrow_copy

  • diff --git a/doc/html/index/s12.html b/doc/html/index/s12.html index 0661896..03377cc 100644 --- a/doc/html/index/s12.html +++ b/doc/html/index/s12.html @@ -24,7 +24,7 @@
  • -Typedef Index

    +Typedef Index

    F R T V

    diff --git a/doc/html/index/s13.html b/doc/html/index/s13.html index e92b250..d0133d9 100644 --- a/doc/html/index/s13.html +++ b/doc/html/index/s13.html @@ -24,7 +24,7 @@

    -Macro Index

    +Macro Index

    B

    diff --git a/doc/html/index/s14.html b/doc/html/index/s14.html index cd54679..c0640fc 100644 --- a/doc/html/index/s14.html +++ b/doc/html/index/s14.html @@ -23,7 +23,7 @@

    -Index

    +Index

    A B C D E F H I M N O P R T U V

    @@ -204,6 +204,10 @@
    • +

      check

      + +
    • +
    • common_type

      • common_type

      • @@ -513,10 +517,7 @@
      • has_new_operator

      • has_nothrow_assign

        - +
      • has_nothrow_constructor

        @@ -855,6 +856,7 @@

        Operator Type Traits

        • any

        • +
        • check

        • dont_care

        • has_equal_to

        • has_operator

        • From c526c89267a6863fbfabea84f58c98f437ff15f7 Mon Sep 17 00:00:00 2001 From: jzmaddock Date: Mon, 11 Jan 2016 13:45:41 +0000 Subject: [PATCH 6/8] Update docs. --- doc/html/index/s11.html | 3 ++- doc/html/index/s12.html | 2 +- doc/html/index/s13.html | 2 +- doc/html/index/s14.html | 12 +++++------- 4 files changed, 9 insertions(+), 10 deletions(-) diff --git a/doc/html/index/s11.html b/doc/html/index/s11.html index 7234df8..21f2f0c 100644 --- a/doc/html/index/s11.html +++ b/doc/html/index/s11.html @@ -24,7 +24,7 @@

        -Class Index

        +Class Index

    A C D E F H I M N O P R T

    @@ -157,6 +157,7 @@
  • has_multiplies_assign

  • has_negate

  • has_new_operator

  • +
  • has_nothrow_assign

  • has_nothrow_constructor

  • has_nothrow_copy

  • diff --git a/doc/html/index/s12.html b/doc/html/index/s12.html index 03377cc..11c8909 100644 --- a/doc/html/index/s12.html +++ b/doc/html/index/s12.html @@ -24,7 +24,7 @@
  • -Typedef Index

    +Typedef Index

    F R T V

    diff --git a/doc/html/index/s13.html b/doc/html/index/s13.html index d0133d9..b68627b 100644 --- a/doc/html/index/s13.html +++ b/doc/html/index/s13.html @@ -24,7 +24,7 @@

    -Macro Index

    +Macro Index

    B

    diff --git a/doc/html/index/s14.html b/doc/html/index/s14.html index c0640fc..a0aa114 100644 --- a/doc/html/index/s14.html +++ b/doc/html/index/s14.html @@ -23,7 +23,7 @@

    -Index

    +Index

    A B C D E F H I M N O P R T U V

    @@ -204,10 +204,6 @@
    • -

      check

      - -
    • -
    • common_type

      • common_type

      • @@ -517,7 +513,10 @@
      • has_new_operator

      • has_nothrow_assign

        - +
      • has_nothrow_constructor

        @@ -856,7 +855,6 @@

        Operator Type Traits

        • any

        • -
        • check

        • dont_care

        • has_equal_to

        • has_operator

        • From 0bbffe0176b60ff877726840f8b46b7a8c2daf4a Mon Sep 17 00:00:00 2001 From: jzmaddock Date: Mon, 11 Jan 2016 13:47:46 +0000 Subject: [PATCH 7/8] Manually revert accidental commit of tentative CUDA changes. --- include/boost/type_traits/common_type.hpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/boost/type_traits/common_type.hpp b/include/boost/type_traits/common_type.hpp index 4a26d92..c887a89 100644 --- a/include/boost/type_traits/common_type.hpp +++ b/include/boost/type_traits/common_type.hpp @@ -18,7 +18,7 @@ #include #endif -#if !defined(BOOST_NO_CXX11_TEMPLATE_ALIASES) && !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) && !BOOST_WORKAROUND(__CUDACC_VER__, < 70500) +#if !defined(BOOST_NO_CXX11_TEMPLATE_ALIASES) && !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) #include #endif @@ -27,7 +27,7 @@ namespace boost // variadic common_type -#if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) && !BOOST_WORKAROUND(__CUDACC_VER__, < 70500) +#if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) template struct common_type { From 1f3a3a1553dc316ed002354dce3ba3f081b2e102 Mon Sep 17 00:00:00 2001 From: jzmaddock Date: Wed, 13 Jan 2016 10:50:22 +0000 Subject: [PATCH 8/8] Fixes for older GCC versions, see issue 11904. --- .../type_traits/is_default_constructible.hpp | 21 ++++++++++++++++++- .../is_nothrow_move_assignable.hpp | 2 +- .../is_nothrow_move_constructible.hpp | 2 +- test/is_default_constr_test.cpp | 2 ++ 4 files changed, 24 insertions(+), 3 deletions(-) diff --git a/include/boost/type_traits/is_default_constructible.hpp b/include/boost/type_traits/is_default_constructible.hpp index 7fd63f8..0b7d960 100644 --- a/include/boost/type_traits/is_default_constructible.hpp +++ b/include/boost/type_traits/is_default_constructible.hpp @@ -12,6 +12,10 @@ #include #include +#if BOOST_WORKAROUND(BOOST_GCC_VERSION, < 40700) +#include +#endif + #if !defined(BOOST_NO_CXX11_DECLTYPE) && !BOOST_WORKAROUND(BOOST_MSVC, < 1800) && !BOOST_WORKAROUND(BOOST_GCC_VERSION, < 40500) #include @@ -28,10 +32,25 @@ namespace boost{ template static boost::type_traits::no_type test(...); }; - +#if BOOST_WORKAROUND(BOOST_GCC_VERSION, < 40700) + template + struct is_default_constructible_abstract_filter + { + static const bool value = sizeof(is_default_constructible_imp::test(0)) == sizeof(boost::type_traits::yes_type); + }; + template + struct is_default_constructible_abstract_filter + { + static const bool value = false; + }; +#endif } +#if BOOST_WORKAROUND(BOOST_GCC_VERSION, < 40700) + template struct is_default_constructible : public integral_constant::value>::value>{}; +#else template struct is_default_constructible : public integral_constant(0)) == sizeof(boost::type_traits::yes_type)>{}; +#endif 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{}; diff --git a/include/boost/type_traits/is_nothrow_move_assignable.hpp b/include/boost/type_traits/is_nothrow_move_assignable.hpp index 9755430..4fb5bd8 100644 --- a/include/boost/type_traits/is_nothrow_move_assignable.hpp +++ b/include/boost/type_traits/is_nothrow_move_assignable.hpp @@ -33,7 +33,7 @@ template struct is_nothrow_move_assignable : public false_type{}; template struct is_nothrow_move_assignable : public false_type{}; #endif -#elif !defined(BOOST_NO_CXX11_NOEXCEPT) && !defined(BOOST_NO_SFINAE_EXPR) +#elif !defined(BOOST_NO_CXX11_NOEXCEPT) && !defined(BOOST_NO_SFINAE_EXPR) && !BOOST_WORKAROUND(BOOST_GCC_VERSION, < 40700) namespace detail{ diff --git a/include/boost/type_traits/is_nothrow_move_constructible.hpp b/include/boost/type_traits/is_nothrow_move_constructible.hpp index 8f4cee2..4c8f734 100644 --- a/include/boost/type_traits/is_nothrow_move_constructible.hpp +++ b/include/boost/type_traits/is_nothrow_move_constructible.hpp @@ -26,7 +26,7 @@ struct is_nothrow_move_constructible : public integral_constant struct is_nothrow_move_constructible : public ::boost::false_type {}; template struct is_nothrow_move_constructible : public ::boost::false_type{}; -#elif !defined(BOOST_NO_CXX11_NOEXCEPT) && !defined(BOOST_NO_SFINAE_EXPR) && !BOOST_WORKAROUND(BOOST_GCC_VERSION, < 40700) +#elif !defined(BOOST_NO_CXX11_NOEXCEPT) && !defined(BOOST_NO_SFINAE_EXPR) && !BOOST_WORKAROUND(BOOST_GCC_VERSION, < 40800) #include #include diff --git a/test/is_default_constr_test.cpp b/test/is_default_constr_test.cpp index 89444b3..acc09ac 100644 --- a/test/is_default_constr_test.cpp +++ b/test/is_default_constr_test.cpp @@ -198,7 +198,9 @@ BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_default_constructible:: #ifndef BOOST_NO_CXX11_DELETED_FUNCTIONS BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_default_constructible::value, false); #endif +#if !BOOST_WORKAROUND(BOOST_GCC_VERSION, < 40700) BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_default_constructible::value, false); +#endif TT_TEST_END