This can use static_assert instead of a runtime assert().
* testsuite/20_util/conditional/requirements/typedefs.cc: Change to
compile-only test.
Tested x86_64-linux, committed to trunk.
commit 26ae1ac1207f9cdc6d533eaa3c0786a2a09f5dac
Author: Jonathan Wakely <[email protected]>
Date: Sun Jul 31 20:35:34 2016 +0100
Change std::conditional test to compile-only
* testsuite/20_util/conditional/requirements/typedefs.cc: Change to
compile-only test.
diff --git
a/libstdc++-v3/testsuite/20_util/conditional/requirements/typedefs.cc
b/libstdc++-v3/testsuite/20_util/conditional/requirements/typedefs.cc
index 5729cec..c00db41 100644
--- a/libstdc++-v3/testsuite/20_util/conditional/requirements/typedefs.cc
+++ b/libstdc++-v3/testsuite/20_util/conditional/requirements/typedefs.cc
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do compile { target c++11 } }
// 2007-05-02 Benjamin Kosnik <[email protected]>
//
@@ -20,22 +20,12 @@
// <http://www.gnu.org/licenses/>.
#include <type_traits>
-#include <testsuite_hooks.h>
-void test01()
-{
- bool test __attribute__((unused)) = true;
- using std::conditional;
+using std::conditional;
+using std::is_same;
- typedef conditional<true, char, int>::type test1_type;
- VERIFY( (std::is_same<test1_type, char>::value) );
+typedef conditional<true, char, int>::type test1_type;
+static_assert( is_same<test1_type, char>::value, "conditional<true, ...>" );
- typedef conditional<false, char, int>::type test2_type;
- VERIFY( (std::is_same<test2_type, int>::value) );
-}
-
-int main()
-{
- test01();
- return 0;
-}
+typedef conditional<false, char, int>::type test2_type;
+static_assert( is_same<test2_type, int>::value, "conditional<false, ...>" );