[v3] Update a testcase vs c++/53000

Paolo Carlini paolo.carlini@oracle.com
Wed Oct 15 21:10:00 GMT 2014


Hi,

contributed by Daniel. Thanks!

Paolo.

/////////////////////
-------------- next part --------------
2014-10-15  Daniel Krugler  <daniel.kruegler@gmail.com>

	* testsuite/20_util/common_type/requirements/sfinae_friendly_1.cc:
	Enable tests predicated on PR c++/53000.

-------------- next part --------------
Index: testsuite/20_util/common_type/requirements/sfinae_friendly_1.cc
===================================================================
--- testsuite/20_util/common_type/requirements/sfinae_friendly_1.cc	(revision 216284)
+++ testsuite/20_util/common_type/requirements/sfinae_friendly_1.cc	(working copy)
@@ -21,9 +21,6 @@
 #include <type_traits>
 #include <initializer_list>
 
-//TODO: Uncomment this once gcc bug 53000 has been resolved:
-//#define HAS_53000_FIXED
-
 // Helper types:
 struct has_type_impl
 {
@@ -246,15 +243,17 @@
 static_assert(is_type<std::common_type<UConv1, UConv2>, Abstract*>(), "");
 static_assert(is_type<std::common_type<UConv1&, UConv2&>, Abstract*>(), "");
 
-#ifdef HAS_53000_FIXED
 static_assert(is_type<std::common_type<Abstract&&, Abstract&&>,
 	      Abstract>(), "");
 static_assert(is_type<std::common_type<const Abstract&&,
+				       const Abstract&&>, Abstract>(), "");
+static_assert(is_type<std::common_type<volatile Abstract&&,
 				       volatile Abstract&&>, Abstract>(), "");
 static_assert(is_type<std::common_type<Ukn&&, Ukn&&>, Ukn>(), "");
-static_assert(is_type<std::common_type<const Ukn&&, volatile Ukn&&>,
+static_assert(is_type<std::common_type<const Ukn&&, const Ukn&&>,
 	      Ukn>(), "");
-#endif
+static_assert(is_type<std::common_type<volatile Ukn&&, volatile Ukn&&>,
+	      Ukn>(), "");
 
 static_assert(is_type<std::common_type<X1, X2>, RX12>(), "");
 static_assert(is_type<std::common_type<X2, X1>, RX21>(), "");


More information about the Libstdc++ mailing list