Make use of extensions more explicit in libstdc++ tests
authorJonathan Wakely <jwakely@redhat.com>
Mon, 18 Apr 2016 15:44:25 +0000 (16:44 +0100)
committerJonathan Wakely <redi@gcc.gnu.org>
Mon, 18 Apr 2016 15:44:25 +0000 (16:44 +0100)
* testsuite/18_support/bad_exception/23591_thread-1.c: Add
-Wno-pedantic to dg-options.
* testsuite/20_util/align/2.cc: Use type as operand of alignof.
* testsuite/20_util/is_floating_point/value.cc: Add -Wno-pedantic
to dg-options.
* testsuite/20_util/specialized_algorithms/uninitialized_fill/32158.cc:
Remove extra semi-colon.
* testsuite/23_containers/array/tuple_interface/tuple_element.cc:
Always supply second argument to static_assert.
* testsuite/25_algorithms/lower_bound/no_operator_ne.cc: Remove extra
semi-colon.
* testsuite/26_numerics/complex/c99.cc: Add -Wno-pedantic to
dg-options.
* testsuite/26_numerics/complex/literals/values.cc: Likewise.
* testsuite/29_atomics/atomic/60695.cc: Likewise.
* testsuite/29_atomics/atomic/62259.cc: use __alignof__ instead of
alignof when operand is an object not a type.
* testsuite/decimal/ctor.cc: Add -Wno-pedantic to dg-options.
* testsuite/decimal/make-decimal.cc: Likewise.
* testsuite/experimental/type_traits/value.cc: Always supply second
argument to static_assert.
* testsuite/util/testsuite_common_types.h: Use __extension__ for
__int128 types.

From-SVN: r235154

15 files changed:
libstdc++-v3/ChangeLog
libstdc++-v3/testsuite/18_support/bad_exception/23591_thread-1.c
libstdc++-v3/testsuite/20_util/align/2.cc
libstdc++-v3/testsuite/20_util/is_floating_point/value.cc
libstdc++-v3/testsuite/20_util/specialized_algorithms/uninitialized_fill/32158.cc
libstdc++-v3/testsuite/23_containers/array/tuple_interface/tuple_element.cc
libstdc++-v3/testsuite/25_algorithms/lower_bound/no_operator_ne.cc
libstdc++-v3/testsuite/26_numerics/complex/c99.cc
libstdc++-v3/testsuite/26_numerics/complex/literals/values.cc
libstdc++-v3/testsuite/29_atomics/atomic/60695.cc
libstdc++-v3/testsuite/29_atomics/atomic/62259.cc
libstdc++-v3/testsuite/decimal/ctor.cc
libstdc++-v3/testsuite/decimal/make-decimal.cc
libstdc++-v3/testsuite/experimental/type_traits/value.cc
libstdc++-v3/testsuite/util/testsuite_common_types.h

index 076f18b..385363b 100644 (file)
@@ -1,5 +1,29 @@
 2016-04-18  Jonathan Wakely  <jwakely@redhat.com>
 
+       * testsuite/18_support/bad_exception/23591_thread-1.c: Add
+       -Wno-pedantic to dg-options.
+       * testsuite/20_util/align/2.cc: Use type as operand of alignof.
+       * testsuite/20_util/is_floating_point/value.cc: Add -Wno-pedantic
+       to dg-options.
+       * testsuite/20_util/specialized_algorithms/uninitialized_fill/32158.cc:
+       Remove extra semi-colon.
+       * testsuite/23_containers/array/tuple_interface/tuple_element.cc:
+       Always supply second argument to static_assert.
+       * testsuite/25_algorithms/lower_bound/no_operator_ne.cc: Remove extra
+       semi-colon.
+       * testsuite/26_numerics/complex/c99.cc: Add -Wno-pedantic to
+       dg-options.
+       * testsuite/26_numerics/complex/literals/values.cc: Likewise.
+       * testsuite/29_atomics/atomic/60695.cc: Likewise.
+       * testsuite/29_atomics/atomic/62259.cc: use __alignof__ instead of
+       alignof when operand is an object not a type.
+       * testsuite/decimal/ctor.cc: Add -Wno-pedantic to dg-options.
+       * testsuite/decimal/make-decimal.cc: Likewise.
+       * testsuite/experimental/type_traits/value.cc: Always supply second
+       argument to static_assert.
+       * testsuite/util/testsuite_common_types.h: Use __extension__ for
+       __int128 types.
+
        * testsuite/experimental/type_erased_allocator/1.cc: Don't include
        internal header.
        * testsuite/experimental/type_erased_allocator/1_neg.cc: Likewise.
index a0fe0d7..fd1a76c 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-require-sharedlib "" }
-// { dg-options "-g -O2 -pthread -ldl -x c -fvtable-verify=none" { target *-*-linux* *-*-gnu* *-*-solaris2.1[2-9]* } }
+// { dg-options "-g -O2 -pthread -ldl -x c -fvtable-verify=none -Wno-pedantic" { target *-*-linux* *-*-gnu* *-*-solaris2.1[2-9]* } }
 
 // Copyright (C) 2005-2016 Free Software Foundation, Inc.
 //
index 243debb..e2d1907 100644 (file)
@@ -32,7 +32,7 @@ test01()
   int i = 0;
   void* ptr = &i;
   auto space = sizeof(i);
-  auto p2 = std::align(alignof(i), space, ptr, space);
+  auto p2 = std::align(alignof(int), space, ptr, space);
   VERIFY( ptr == &i );
   VERIFY( p2 == &i );
   VERIFY(space == sizeof(i));
index d476383..8ed73fc 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++11" }
+// { dg-options "-std=gnu++11 -Wno-pedantic" }
 // { dg-do compile }
 //
 // Copyright (C) 2011-2016 Free Software Foundation, Inc.
index 6abe049..96e0bfb 100644 (file)
@@ -47,7 +47,7 @@ test01()
   static_assert(is_same<tuple_element<1, volatile array_type>::type,
                 volatile int>::value, "");
   static_assert( (is_same<tuple_element<2, volatile array_type>::type,
-           volatile int>::value == true) );
+           volatile int>::value == true), "" );
 
   static_assert(is_same<tuple_element<0, const volatile array_type>::type,
                 const volatile int>::value, "");
index d787ff0..219e093 100644 (file)
@@ -22,8 +22,8 @@
 // http://gcc.gnu.org/ml/libstdc++/2000-06/msg00316.html
 struct foo { };
 
-bool operator== (const foo&, const foo&) { return true; };
-bool operator< (const foo&, const foo&) { return true; };
+bool operator== (const foo&, const foo&) { return true; }
+bool operator< (const foo&, const foo&) { return true; }
 
 void bar(foo* a, foo* b, foo& x)
 {
index 4dfaad6..c550520 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do compile }
-// { dg-options "-std=gnu++11" }
+// { dg-options "-std=gnu++11 -Wno-pedantic" }
 
 // Copyright (C) 2012-2016 Free Software Foundation, Inc.
 //
index b50aad9..1353112 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++14" }
+// { dg-options "-std=gnu++14 -Wno-pedantic" }
 // { dg-do run }
 
 // Copyright (C) 2013-2016 Free Software Foundation, Inc.
index e9b8b20..ddd1b2c 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-require-atomic-builtins "" }
-// { dg-options "-std=gnu++11" }
+// { dg-options "-std=gnu++11 -Wno-pedantic" }
 // { dg-do compile }
 
 // Copyright (C) 2014-2016 Free Software Foundation, Inc.
index 5429ca9..458194a 100644 (file)
@@ -44,7 +44,7 @@ struct power_of_two_obj {
 
 std::atomic<power_of_two_obj> obj1;
 
-static_assert( alignof(obj1) >= alignof(int64_t),
+static_assert( __alignof__(obj1) >= alignof(int64_t),
                "std::atomic not suitably aligned" );
 
 struct container_struct {
@@ -54,5 +54,5 @@ struct container_struct {
 
 container_struct obj2;
 
-static_assert( alignof(obj2.ao) >= alignof(int64_t),
+static_assert( __alignof__(obj2.ao) >= alignof(int64_t),
                "std::atomic not suitably aligned" );
index f322e7f..b289ed0 100644 (file)
@@ -16,6 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-require-effective-target dfp }
+// { dg-options "-Wno-pedantic" }
 
 // ISO/IEC TR 24733  3.2.2.1  Construct/copy/destroy (decimal32).
 // ISO/IEC TR 24733  3.2.3.1  Construct/copy/destroy (decimal64).
index 42a608a..b5aafa2 100644 (file)
@@ -16,6 +16,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // { dg-require-effective-target dfp }
+// { dg-options "-Wno-pedantic" }
 
 // ISO/IEC TR 24733  3.2.5  Initialization from coefficient and exponent.
 
index 5bbdab4..16b63cb 100644 (file)
@@ -323,23 +323,23 @@ static_assert(is_convertible_v<int&, const int&>
 static_assert(!is_convertible_v<const int&, int&>
              && !is_convertible<const int&, int&>::value, "");
 
-static_assert(negation_v<false_type>);
-static_assert(!negation_v<true_type>);
-static_assert(conjunction_v<>);
-static_assert(!disjunction_v<>);
-static_assert(conjunction_v<true_type>);
-static_assert(!conjunction_v<false_type>);
-static_assert(disjunction_v<true_type>);
-static_assert(!disjunction_v<false_type>);
-static_assert(conjunction_v<true_type, true_type>);
-static_assert(!conjunction_v<true_type, false_type>);
-static_assert(disjunction_v<false_type, true_type>);
-static_assert(!disjunction_v<false_type, false_type>);
+static_assert(negation_v<false_type>, "");
+static_assert(!negation_v<true_type>, "");
+static_assert(conjunction_v<>, "");
+static_assert(!disjunction_v<>, "");
+static_assert(conjunction_v<true_type>, "");
+static_assert(!conjunction_v<false_type>, "");
+static_assert(disjunction_v<true_type>, "");
+static_assert(!disjunction_v<false_type>, "");
+static_assert(conjunction_v<true_type, true_type>, "");
+static_assert(!conjunction_v<true_type, false_type>, "");
+static_assert(disjunction_v<false_type, true_type>, "");
+static_assert(!disjunction_v<false_type, false_type>, "");
 static_assert(conjunction_v<true_type, true_type,
-              true_type>);
+              true_type>, "");
 static_assert(!conjunction_v<true_type, true_type,
-              false_type>);
+              false_type>, "");
 static_assert(disjunction_v<false_type, false_type,
-              true_type>);
+              true_type>, "");
 static_assert(!disjunction_v<false_type, false_type,
-              false_type>);
+              false_type>, "");
index bf1035e..d6a766d 100644 (file)
@@ -304,8 +304,8 @@ namespace __gnu_test
     typedef char16_t           a14;
     typedef char32_t           a15;
 # if !defined(__STRICT_ANSI__) && defined(_GLIBCXX_USE_INT128)
-    typedef __int128            a16;
-    typedef unsigned __int128   a17;
+    __extension__ typedef __int128            a16;
+    __extension__ typedef unsigned __int128   a17;
 
     typedef node<_GLIBCXX_TYPELIST_CHAIN17(a1, a2, a3, a4, a5, a6, a7, a8, a9, 
                                           a10, a11, a12, a13, a14, a15,
@@ -316,8 +316,8 @@ namespace __gnu_test
 # endif
 #else
 # if !defined(__STRICT_ANSI__) && defined(_GLIBCXX_USE_INT128)
-    typedef __int128            a14;
-    typedef unsigned __int128   a15;
+    __extension__ typedef __int128            a14;
+    __extension__ typedef unsigned __int128   a15;
 
     typedef node<_GLIBCXX_TYPELIST_CHAIN15(a1, a2, a3, a4, a5, a6, a7, a8, a9, 
                                           a10, a11, a12, a13, a14, a15)> type;