From bdaa445236ad169bf757aa9d81c26d7e09a28e0c Mon Sep 17 00:00:00 2001 From: Paolo Carlini Date: Fri, 31 Dec 2004 18:15:22 +0000 Subject: type_traits (is_member_function_pointer): Provide a workaround for c++/19076, correct for functions with up to 15 arguments. 2004-12-31 Paolo Carlini * include/tr1/type_traits (is_member_function_pointer): Provide a workaround for c++/19076, correct for functions with up to 15 arguments. * testsuite/tr1/4_metaprogramming/composite_type_traits/ is_member_pointer/is_member_pointer.cc: Uncomment "XFAILed" tests; add a test for variadic functions. * testsuite/tr1/4_metaprogramming/composite_type_traits/ is_scalar/is_scalar.cc: Uncomment "XFAILed" tests. * testsuite/tr1/4_metaprogramming/primary_type_categories/ is_enum/is_enum.cc: Likewise. * testsuite/tr1/4_metaprogramming/primary_type_categories/ is_member_function_pointer/is_member_function_pointer.cc: Likewise; add a test for variadic functions. * testsuite/tr1/4_metaprogramming/primary_type_categories/ is_member_object_pointer/is_member_object_pointer.cc: Likewise. * testsuite/tr1/4_metaprogramming/type_properties/ has_nothrow_assign/has_nothrow_assign.cc: Uncomment "XFAILed" tests. * testsuite/tr1/4_metaprogramming/type_properties/ has_nothrow_constructor/has_nothrow_constructor.cc: Likewise. * testsuite/tr1/4_metaprogramming/type_properties/ has_nothrow_copy/has_nothrow_copy.cc: Likewise. * testsuite/tr1/4_metaprogramming/type_properties/ has_trivial_assign/has_trivial_assign.cc: Likewise. * testsuite/tr1/4_metaprogramming/type_properties/ has_trivial_constructor/has_trivial_constructor.cc: Likewise. * testsuite/tr1/4_metaprogramming/type_properties/ has_trivial_copy/has_trivial_copy.cc: Likewise. * testsuite/tr1/4_metaprogramming/type_properties/ has_trivial_destructor/has_trivial_destructor.cc: Likewise. * testsuite/tr1/4_metaprogramming/type_properties/ is_pod/is_pod.cc: Likewise. From-SVN: r92769 --- libstdc++-v3/ChangeLog | 34 ++++ libstdc++-v3/include/tr1/type_traits | 213 ++++++++++++++++++++- .../is_member_pointer/is_member_pointer.cc | 20 +- .../composite_type_traits/is_scalar/is_scalar.cc | 3 +- .../primary_type_categories/is_enum/is_enum.cc | 3 +- .../is_member_function_pointer.cc | 21 +- .../is_member_object_pointer.cc | 2 + .../has_nothrow_assign/has_nothrow_assign.cc | 10 +- .../has_nothrow_constructor.cc | 10 +- .../has_nothrow_copy/has_nothrow_copy.cc | 10 +- .../has_trivial_assign/has_trivial_assign.cc | 10 +- .../has_trivial_constructor.cc | 10 +- .../has_trivial_copy/has_trivial_copy.cc | 10 +- .../has_trivial_destructor.cc | 10 +- .../type_properties/is_pod/is_pod.cc | 6 +- 15 files changed, 298 insertions(+), 74 deletions(-) (limited to 'libstdc++-v3') diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index c723e1d..9b58b9e 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,37 @@ +2004-12-31 Paolo Carlini + + * include/tr1/type_traits (is_member_function_pointer): Provide a + workaround for c++/19076, correct for functions with up to 15 + arguments. + * testsuite/tr1/4_metaprogramming/composite_type_traits/ + is_member_pointer/is_member_pointer.cc: Uncomment "XFAILed" tests; + add a test for variadic functions. + * testsuite/tr1/4_metaprogramming/composite_type_traits/ + is_scalar/is_scalar.cc: Uncomment "XFAILed" tests. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_enum/is_enum.cc: Likewise. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_member_function_pointer/is_member_function_pointer.cc: Likewise; + add a test for variadic functions. + * testsuite/tr1/4_metaprogramming/primary_type_categories/ + is_member_object_pointer/is_member_object_pointer.cc: Likewise. + * testsuite/tr1/4_metaprogramming/type_properties/ + has_nothrow_assign/has_nothrow_assign.cc: Uncomment "XFAILed" tests. + * testsuite/tr1/4_metaprogramming/type_properties/ + has_nothrow_constructor/has_nothrow_constructor.cc: Likewise. + * testsuite/tr1/4_metaprogramming/type_properties/ + has_nothrow_copy/has_nothrow_copy.cc: Likewise. + * testsuite/tr1/4_metaprogramming/type_properties/ + has_trivial_assign/has_trivial_assign.cc: Likewise. + * testsuite/tr1/4_metaprogramming/type_properties/ + has_trivial_constructor/has_trivial_constructor.cc: Likewise. + * testsuite/tr1/4_metaprogramming/type_properties/ + has_trivial_copy/has_trivial_copy.cc: Likewise. + * testsuite/tr1/4_metaprogramming/type_properties/ + has_trivial_destructor/has_trivial_destructor.cc: Likewise. + * testsuite/tr1/4_metaprogramming/type_properties/ + is_pod/is_pod.cc: Likewise. + 2004-12-30 Paolo Carlini * include/tr1/type_traits: Add has_trivial_copy, has_trivial_assign, diff --git a/libstdc++-v3/include/tr1/type_traits b/libstdc++-v3/include/tr1/type_traits index 01dd96b..eb1087f 100644 --- a/libstdc++-v3/include/tr1/type_traits +++ b/libstdc++-v3/include/tr1/type_traits @@ -138,11 +138,218 @@ namespace tr1 _DEFINE_SPEC(2, is_member_object_pointer, _Tp _Cp::*, !is_function<_Tp>::value) + // Due to c++/19076, for the time being we cannot use the correct, neat + // implementation :-( + // + // template + // struct is_member_function_pointer + // : public false_type { }; + // _DEFINE_SPEC(2, is_member_function_pointer, _Tp _Cp::*, + // is_function<_Tp>::value) + + // Ugly, temporary workaround for member functions with up to 15 arguments. template + struct __is_mfp_helper + { static const bool __value = false; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) ()> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (...)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, ...)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, _A1)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, _A1, ...)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, _A1, _A2)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, _A1, _A2, ...)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, _A1, _A2, _A3)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, _A1, _A2, _A3, ...)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, _A1, _A2, _A3, _A4)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, _A1, _A2, _A3, _A4, ...)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, _A1, _A2, _A3, _A4, _A5)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, _A1, _A2, _A3, _A4, _A5, ...)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, _A1, _A2, _A3, _A4, _A5, _A6)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, _A1, _A2, _A3, _A4, _A5, _A6, + ...)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, _A1, _A2, _A3, _A4, _A5, _A6, + _A7)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, _A1, _A2, _A3, _A4, _A5, _A6, + _A7, ...)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, _A1, _A2, _A3, _A4, _A5, _A6, + _A7, _A8)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, _A1, _A2, _A3, _A4, _A5, _A6, + _A7, _A8, ...)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, _A1, _A2, _A3, _A4, _A5, _A6, + _A7, _A8, _A9)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, _A1, _A2, _A3, _A4, _A5, _A6, + _A7, _A8, _A9, ...)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, _A1, _A2, _A3, _A4, _A5, _A6, + _A7, _A8, _A9, _A10)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, _A1, _A2, _A3, _A4, _A5, _A6, + _A7, _A8, _A9, _A10, ...)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, _A1, _A2, _A3, _A4, _A5, _A6, + _A7, _A8, _A9, _A10, _A11)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, _A1, _A2, _A3, _A4, _A5, _A6, + _A7, _A8, _A9, _A10, _A11, ...)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, _A1, _A2, _A3, _A4, _A5, _A6, + _A7, _A8, _A9, _A10, _A11, _A12)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, _A1, _A2, _A3, _A4, _A5, _A6, + _A7, _A8, _A9, _A10, _A11, _A12, ...)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, _A1, _A2, _A3, _A4, _A5, _A6, + _A7, _A8, _A9, _A10, _A11, _A12, + _A13)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, _A1, _A2, _A3, _A4, _A5, _A6, + _A7, _A8, _A9, _A10, _A11, _A12, + _A13, ...)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, _A1, _A2, _A3, _A4, _A5, _A6, + _A7, _A8, _A9, _A10, _A11, _A12, + _A13, _A14)> + { static const bool __value = true; }; + + template + struct __is_mfp_helper<_Rt (_Cp::*) (_A0, _A1, _A2, _A3, _A4, _A5, _A6, + _A7, _A8, _A9, _A10, _A11, _A12, + _A13, _A14, ...)> + { static const bool __value = true; }; + + template struct is_member_function_pointer - : public false_type { }; - _DEFINE_SPEC(2, is_member_function_pointer, _Tp _Cp::*, - is_function<_Tp>::value) + : public integral_constant::type>::__value)> + { }; template::value || is_array<_Tp>::value diff --git a/libstdc++-v3/testsuite/tr1/4_metaprogramming/composite_type_traits/is_member_pointer/is_member_pointer.cc b/libstdc++-v3/testsuite/tr1/4_metaprogramming/composite_type_traits/is_member_pointer/is_member_pointer.cc index 918417e..f7ae576 100644 --- a/libstdc++-v3/testsuite/tr1/4_metaprogramming/composite_type_traits/is_member_pointer/is_member_pointer.cc +++ b/libstdc++-v3/testsuite/tr1/4_metaprogramming/composite_type_traits/is_member_pointer/is_member_pointer.cc @@ -34,16 +34,16 @@ void test01() VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); - // Temporarily disabled because of c++/19076 :-( - - //VERIFY( (test_category(true)) ); - //VERIFY( (test_category(true)) ); - //VERIFY( (test_category(true)) ); - //VERIFY( (test_category(true)) ); + VERIFY( (test_category(true)) ); + VERIFY( (test_category(true)) ); + VERIFY( (test_category(true)) ); + VERIFY( (test_category(true)) ); + VERIFY( (test_category(true)) ); // Sanity check. VERIFY( (test_category(false)) ); diff --git a/libstdc++-v3/testsuite/tr1/4_metaprogramming/composite_type_traits/is_scalar/is_scalar.cc b/libstdc++-v3/testsuite/tr1/4_metaprogramming/composite_type_traits/is_scalar/is_scalar.cc index 37d6592..7fc1faf 100644 --- a/libstdc++-v3/testsuite/tr1/4_metaprogramming/composite_type_traits/is_scalar/is_scalar.cc +++ b/libstdc++-v3/testsuite/tr1/4_metaprogramming/composite_type_traits/is_scalar/is_scalar.cc @@ -36,8 +36,7 @@ void test01() VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); - // Temporarily disabled because of c++/19076 :-( - // VERIFY( (test_category(true)) ); + VERIFY( (test_category(true)) ); // Sanity check. VERIFY( (test_category(false)) ); diff --git a/libstdc++-v3/testsuite/tr1/4_metaprogramming/primary_type_categories/is_enum/is_enum.cc b/libstdc++-v3/testsuite/tr1/4_metaprogramming/primary_type_categories/is_enum/is_enum.cc index 3de48c4..0ae5887 100644 --- a/libstdc++-v3/testsuite/tr1/4_metaprogramming/primary_type_categories/is_enum/is_enum.cc +++ b/libstdc++-v3/testsuite/tr1/4_metaprogramming/primary_type_categories/is_enum/is_enum.cc @@ -43,8 +43,7 @@ void test01() VERIFY( (test_category(false)) ); VERIFY( (test_category(false)) ); VERIFY( (test_category(false)) ); - // Temporarily disabled because of c++/19076 :-( - // VERIFY( (test_category(false)) ); + VERIFY( (test_category(false)) ); VERIFY( (test_category(false)) ); VERIFY( (test_category(false)) ); diff --git a/libstdc++-v3/testsuite/tr1/4_metaprogramming/primary_type_categories/is_member_function_pointer/is_member_function_pointer.cc b/libstdc++-v3/testsuite/tr1/4_metaprogramming/primary_type_categories/is_member_function_pointer/is_member_function_pointer.cc index 9652e19..54b2711 100644 --- a/libstdc++-v3/testsuite/tr1/4_metaprogramming/primary_type_categories/is_member_function_pointer/is_member_function_pointer.cc +++ b/libstdc++-v3/testsuite/tr1/4_metaprogramming/primary_type_categories/is_member_function_pointer/is_member_function_pointer.cc @@ -31,17 +31,16 @@ void test01() using namespace __gnu_test; // Positive tests. - - // Temporarily disabled because of c++/19076 :-( - - //VERIFY( (test_category(true)) ); - //VERIFY( (test_category(true)) ); - //VERIFY( (test_category(true)) ); - //VERIFY( (test_category(true)) ); + VERIFY( (test_category(true)) ); + VERIFY( (test_category(true)) ); + VERIFY( (test_category(true)) ); + VERIFY( (test_category(true)) ); + VERIFY( (test_category(true)) ); // Negative tests. VERIFY( (test_category(false)) ); VERIFY( (test_category(false)) ); + VERIFY( (test_category(false)) ); VERIFY( (test_category(false)) ); diff --git a/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/has_nothrow_assign/has_nothrow_assign.cc b/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/has_nothrow_assign/has_nothrow_assign.cc index 76dbbb8..e07fa4f 100644 --- a/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/has_nothrow_assign/has_nothrow_assign.cc +++ b/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/has_nothrow_assign/has_nothrow_assign.cc @@ -37,9 +37,8 @@ void test01() VERIFY( (test_assign_property(true)) ); VERIFY( (test_assign_property(true)) ); VERIFY( (test_assign_property(true)) ); - // Temporarily disabled because of c++/19076 :-( - // VERIFY( (test_assign_property(true)) ); + VERIFY( (test_assign_property(true)) ); VERIFY( (test_assign_property(true)) ); VERIFY( (test_assign_property(true)) ); VERIFY( (test_assign_property(true)) ); @@ -47,9 +46,8 @@ void test01() VERIFY( (test_assign_property(true)) ); VERIFY( (test_assign_property(true)) ); - // Temporarily disabled because of c++/19076 :-( - // VERIFY( (test_assign_property(true)) ); + VERIFY( (test_assign_property(true)) ); } int main() diff --git a/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/has_nothrow_constructor/has_nothrow_constructor.cc b/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/has_nothrow_constructor/has_nothrow_constructor.cc index 3db6241..18c3a33 100644 --- a/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/has_nothrow_constructor/has_nothrow_constructor.cc +++ b/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/has_nothrow_constructor/has_nothrow_constructor.cc @@ -37,9 +37,8 @@ void test01() VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); - // Temporarily disabled because of c++/19076 :-( - // VERIFY( (test_category(true)) ); + VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); @@ -47,9 +46,8 @@ void test01() VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); - // Temporarily disabled because of c++/19076 :-( - // VERIFY( (test_category(true)) ); + VERIFY( (test_category(true)) ); // Sanity check. VERIFY( (test_category(false)) ); diff --git a/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/has_nothrow_copy/has_nothrow_copy.cc b/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/has_nothrow_copy/has_nothrow_copy.cc index a596465..7ba63bf 100644 --- a/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/has_nothrow_copy/has_nothrow_copy.cc +++ b/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/has_nothrow_copy/has_nothrow_copy.cc @@ -37,9 +37,8 @@ void test01() VERIFY( (test_copy_property(true)) ); VERIFY( (test_copy_property(true)) ); VERIFY( (test_copy_property(true)) ); - // Temporarily disabled because of c++/19076 :-( - // VERIFY( (test_copy_property(true)) ); + VERIFY( (test_copy_property(true)) ); VERIFY( (test_copy_property(true)) ); VERIFY( (test_copy_property(true)) ); VERIFY( (test_copy_property(true)) ); @@ -47,9 +46,8 @@ void test01() VERIFY( (test_copy_property(true)) ); VERIFY( (test_copy_property(true)) ); - // Temporarily disabled because of c++/19076 :-( - // VERIFY( (test_copy_property(true)) ); + VERIFY( (test_copy_property(true)) ); } int main() diff --git a/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/has_trivial_assign/has_trivial_assign.cc b/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/has_trivial_assign/has_trivial_assign.cc index a85bcad..66b2bc1 100644 --- a/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/has_trivial_assign/has_trivial_assign.cc +++ b/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/has_trivial_assign/has_trivial_assign.cc @@ -37,9 +37,8 @@ void test01() VERIFY( (test_assign_property(true)) ); VERIFY( (test_assign_property(true)) ); VERIFY( (test_assign_property(true)) ); - // Temporarily disabled because of c++/19076 :-( - // VERIFY( (test_assign_property(true)) ); + VERIFY( (test_assign_property(true)) ); VERIFY( (test_assign_property(true)) ); VERIFY( (test_assign_property(true)) ); VERIFY( (test_assign_property(true)) ); @@ -47,9 +46,8 @@ void test01() VERIFY( (test_assign_property(true)) ); VERIFY( (test_assign_property(true)) ); - // Temporarily disabled because of c++/19076 :-( - // VERIFY( (test_assign_property(true)) ); + VERIFY( (test_assign_property(true)) ); } int main() diff --git a/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/has_trivial_constructor/has_trivial_constructor.cc b/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/has_trivial_constructor/has_trivial_constructor.cc index 1de7d1e..7559a43 100644 --- a/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/has_trivial_constructor/has_trivial_constructor.cc +++ b/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/has_trivial_constructor/has_trivial_constructor.cc @@ -37,9 +37,8 @@ void test01() VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); - // Temporarily disabled because of c++/19076 :-( - // VERIFY( (test_category(true)) ); + VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); @@ -47,9 +46,8 @@ void test01() VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); - // Temporarily disabled because of c++/19076 :-( - // VERIFY( (test_category(true)) ); + VERIFY( (test_category(true)) ); // Sanity check. VERIFY( (test_category(false)) ); diff --git a/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/has_trivial_copy/has_trivial_copy.cc b/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/has_trivial_copy/has_trivial_copy.cc index 6002b85..64eed99 100644 --- a/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/has_trivial_copy/has_trivial_copy.cc +++ b/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/has_trivial_copy/has_trivial_copy.cc @@ -37,9 +37,8 @@ void test01() VERIFY( (test_copy_property(true)) ); VERIFY( (test_copy_property(true)) ); VERIFY( (test_copy_property(true)) ); - // Temporarily disabled because of c++/19076 :-( - // VERIFY( (test_copy_property(true)) ); + VERIFY( (test_copy_property(true)) ); VERIFY( (test_copy_property(true)) ); VERIFY( (test_copy_property(true)) ); VERIFY( (test_copy_property(true)) ); @@ -47,9 +46,8 @@ void test01() VERIFY( (test_copy_property(true)) ); VERIFY( (test_copy_property(true)) ); - // Temporarily disabled because of c++/19076 :-( - // VERIFY( (test_copy_property(true)) ); + VERIFY( (test_copy_property(true)) ); } int main() diff --git a/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/has_trivial_destructor/has_trivial_destructor.cc b/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/has_trivial_destructor/has_trivial_destructor.cc index 4e4a284..e3cc9db 100644 --- a/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/has_trivial_destructor/has_trivial_destructor.cc +++ b/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/has_trivial_destructor/has_trivial_destructor.cc @@ -37,9 +37,8 @@ void test01() VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); - // Temporarily disabled because of c++/19076 :-( - // VERIFY( (test_category(true)) ); + VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); @@ -47,9 +46,8 @@ void test01() VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); - // Temporarily disabled because of c++/19076 :-( - // VERIFY( (test_category(true)) ); + VERIFY( (test_category(true)) ); // Sanity check. VERIFY( (test_category(false)) ); diff --git a/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/is_pod/is_pod.cc b/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/is_pod/is_pod.cc index 4fac0f3..4856920 100644 --- a/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/is_pod/is_pod.cc +++ b/libstdc++-v3/testsuite/tr1/4_metaprogramming/type_properties/is_pod/is_pod.cc @@ -37,16 +37,14 @@ void test01() VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); - // Temporarily disabled because of c++/19076 :-( - // VERIFY( (test_category(true)) ); + VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); VERIFY( (test_category(true)) ); - // Temporarily disabled because of c++/19076 :-( - // VERIFY( (test_category(true)) ); + VERIFY( (test_category(true)) ); // Sanity check. VERIFY( (test_category(false)) ); -- cgit v1.1