Skip tests for GNU extensions when testing with strict mode
authorJonathan Wakely <jwakely@redhat.com>
Fri, 19 Oct 2018 21:50:15 +0000 (22:50 +0100)
committerJonathan Wakely <redi@gcc.gnu.org>
Fri, 19 Oct 2018 21:50:15 +0000 (22:50 +0100)
Tests for the implicit allocator rebinding extension will fail if the
extension is disabled, so skip them.

* testsuite/23_containers/array/requirements/explicit_instantiation/
3.cc: Skip test when compiled with a -std=c++NN strict mode.
* testsuite/23_containers/deque/requirements/explicit_instantiation/
3.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/
explicit_instantiation/3.cc: Likewise.
* testsuite/23_containers/list/requirements/explicit_instantiation/
3.cc: Likewise.
* testsuite/23_containers/map/requirements/explicit_instantiation/
3.cc: Likewise.
* testsuite/23_containers/multimap/requirements/explicit_instantiation/
3.cc: Likewise.
* testsuite/23_containers/multiset/requirements/explicit_instantiation/
3.cc: Likewise.
* testsuite/23_containers/set/requirements/explicit_instantiation/
3.cc: Likewise.
* testsuite/23_containers/unordered_map/requirements/
explicit_instantiation/3.cc: Likewise.
* testsuite/23_containers/unordered_multimap/requirements/
explicit_instantiation/3.cc: Likewise.
* testsuite/23_containers/unordered_multiset/requirements/
explicit_instantiation/3.cc: Likewise.
* testsuite/23_containers/unordered_set/requirements/
explicit_instantiation/3.cc: Likewise.
* testsuite/23_containers/vector/ext_pointer/explicit_instantiation/
3.cc: Likewise.
* testsuite/23_containers/vector/requirements/explicit_instantiation/
3.cc: Likewise.

From-SVN: r265334

15 files changed:
libstdc++-v3/ChangeLog
libstdc++-v3/testsuite/23_containers/array/requirements/explicit_instantiation/3.cc
libstdc++-v3/testsuite/23_containers/deque/requirements/explicit_instantiation/3.cc
libstdc++-v3/testsuite/23_containers/forward_list/requirements/explicit_instantiation/3.cc
libstdc++-v3/testsuite/23_containers/list/requirements/explicit_instantiation/3.cc
libstdc++-v3/testsuite/23_containers/map/requirements/explicit_instantiation/3.cc
libstdc++-v3/testsuite/23_containers/multimap/requirements/explicit_instantiation/3.cc
libstdc++-v3/testsuite/23_containers/multiset/requirements/explicit_instantiation/3.cc
libstdc++-v3/testsuite/23_containers/set/requirements/explicit_instantiation/3.cc
libstdc++-v3/testsuite/23_containers/unordered_map/requirements/explicit_instantiation/3.cc
libstdc++-v3/testsuite/23_containers/unordered_multimap/requirements/explicit_instantiation/3.cc
libstdc++-v3/testsuite/23_containers/unordered_multiset/requirements/explicit_instantiation/3.cc
libstdc++-v3/testsuite/23_containers/unordered_set/requirements/explicit_instantiation/3.cc
libstdc++-v3/testsuite/23_containers/vector/ext_pointer/explicit_instantiation/3.cc
libstdc++-v3/testsuite/23_containers/vector/requirements/explicit_instantiation/3.cc

index e0265c51a4ab11b2085b2a00eed18581e4fd2a41..0399ec68209686e716ef3937b2b9e7e5cdaf3f9d 100644 (file)
@@ -1,5 +1,34 @@
 2018-10-19  Jonathan Wakely  <jwakely@redhat.com>
 
+       * testsuite/23_containers/array/requirements/explicit_instantiation/
+       3.cc: Skip test when compiled with a -std=c++NN strict mode.
+       * testsuite/23_containers/deque/requirements/explicit_instantiation/
+       3.cc: Likewise.
+       * testsuite/23_containers/forward_list/requirements/
+       explicit_instantiation/3.cc: Likewise.
+       * testsuite/23_containers/list/requirements/explicit_instantiation/
+       3.cc: Likewise.
+       * testsuite/23_containers/map/requirements/explicit_instantiation/
+       3.cc: Likewise.
+       * testsuite/23_containers/multimap/requirements/explicit_instantiation/
+       3.cc: Likewise.
+       * testsuite/23_containers/multiset/requirements/explicit_instantiation/
+       3.cc: Likewise.
+       * testsuite/23_containers/set/requirements/explicit_instantiation/
+       3.cc: Likewise.
+       * testsuite/23_containers/unordered_map/requirements/
+       explicit_instantiation/3.cc: Likewise.
+       * testsuite/23_containers/unordered_multimap/requirements/
+       explicit_instantiation/3.cc: Likewise.
+       * testsuite/23_containers/unordered_multiset/requirements/
+       explicit_instantiation/3.cc: Likewise.
+       * testsuite/23_containers/unordered_set/requirements/
+       explicit_instantiation/3.cc: Likewise.
+       * testsuite/23_containers/vector/ext_pointer/explicit_instantiation/
+       3.cc: Likewise.
+       * testsuite/23_containers/vector/requirements/explicit_instantiation/
+       3.cc: Likewise.
+
        * testsuite/23_containers/deque/48101_neg.cc: Prune additional errors
        printed when __STRICT_ANSI__ is defined.
        * testsuite/23_containers/forward_list/48101_neg.cc: Likewise.
index 56c6492c176c8ccf637e24011961722035100533..000281c6c566d9f6da4a8eadc856ff8f0c975961 100644 (file)
@@ -1,4 +1,5 @@
 // { dg-do compile { target c++11 } }
+// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
 
 // 2010-05-20  Paolo Carlini  <paolo.carlini@oracle.com>
 //
@@ -20,6 +21,7 @@
 // <http://www.gnu.org/licenses/>.
 
 // This file tests explicit instantiation of library containers
+// with an allocator for a different value_type (which is a GNU extension).
 
 #include <array>
 #include <testsuite_hooks.h>
index ced9c45d0cf4f986149008bb9ca8eef67a09acc1..22aa6cf836fb625c09b9c95267a3c7277cfb77a6 100644 (file)
 // with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
-
 // This file tests explicit instantiation of library containers
+// with an allocator for a different value_type (which is a GNU extension).
 
 #include <deque>
 
 // { dg-do compile }
+// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
 
 // libstdc++/21770
 template class std::deque<int, std::allocator<char> >;
index 097cee38d3d727dfccff9aaf861afd5c5bc436a2..808b5912c3bc9cbbd5ef430958daed89a3520c4f 100644 (file)
 // with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
-
 // This file tests explicit instantiation of library containers
+// with an allocator for a different value_type (which is a GNU extension).
 
 #include <forward_list>
 
 // { dg-do compile { target c++11 } }
+// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
 
 // libstdc++/21770
 template class std::forward_list<int, std::allocator<char> >;
index 9fb49859bede6f24b171aed67f55d157868d76ff..33a3315b84cd8a265a1f48197646d800e92c38aa 100644 (file)
 // with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
-
 // This file tests explicit instantiation of library containers
+// with an allocator for a different value_type (which is a GNU extension).
 
 #include <list>
 
 // { dg-do compile }
+// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
 
 // libstdc++/21770
 template class std::list<int, std::allocator<char> >;
index eed10231e6085d47ee272a474722422eaf62399c..def50c608e77d33678ac7eee290237ec25ca2540 100644 (file)
 // with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
-
 // This file tests explicit instantiation of library containers
+// with an allocator for a different value_type (which is a GNU extension).
 
 #include <map>
 
 // { dg-do compile }
+// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
 
 // libstdc++/21770
 template class std::map<int, double, std::less<int>, std::allocator<char> >;
index 0dcf96219e4ba9000436f2ac2f9aa1fbdfb7680d..af33f7c67f629c9aa675d36cadd354b007fc30dc 100644 (file)
 // with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
-
 // This file tests explicit instantiation of library containers
+// with an allocator for a different value_type (which is a GNU extension).
 
 #include <map>
 
 // { dg-do compile }
+// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
 
 // libstdc++/21770
 template class std::multimap<int, double, std::less<int>, std::allocator<char> >;
index 366f9a6d1ec9b4be924e0214eda0df89abea2480..18b20b61e8f0ed8be5992371a40c5f2c95714242 100644 (file)
 // with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
-
 // This file tests explicit instantiation of library containers
+// with an allocator for a different value_type (which is a GNU extension).
 
 #include <set>
 
 // { dg-do compile }
+// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
 
 // libstdc++/21770
 template class std::multiset<int, std::less<int>, std::allocator<char> >;
index cd5c09692941f9ad5d7506397b4cb1f1bcdceae4..a51bf47da9e3465cbadf383caf98c23246541bb8 100644 (file)
 // with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
-
 // This file tests explicit instantiation of library containers
+// with an allocator for a different value_type (which is a GNU extension).
 
 #include <set>
 
 // { dg-do compile }
+// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
 
 // libstdc++/21770
 template class std::set<int, std::less<int>, std::allocator<char> >;
index 1332d76ec112702843d77bc81f2d51f5e6b261c2..09e2267b666dfa1e6e6eadff24ec078d84bf5be7 100644 (file)
@@ -1,4 +1,5 @@
 // { dg-do compile { target c++11 } }
+// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
 
 // Copyright (C) 2007-2018 Free Software Foundation, Inc.
 //
@@ -17,6 +18,9 @@
 // along with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
+// This file tests explicit instantiation of library containers
+// with an allocator for a different value_type (which is a GNU extension).
+
 #include <unordered_map>
 
 using namespace std;
index 024b4394b19e7ac09c1f35c7fae5723bda8e6576..64c13e5d34dfd9d86ba49c502e92a79a348e48da 100644 (file)
@@ -1,4 +1,5 @@
 // { dg-do compile { target c++11 } }
+// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
 
 // Copyright (C) 2007-2018 Free Software Foundation, Inc.
 //
@@ -17,6 +18,9 @@
 // along with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
+// This file tests explicit instantiation of library containers
+// with an allocator for a different value_type (which is a GNU extension).
+
 #include <unordered_map>
 
 using namespace std;
index ebbb62767e781f3627c2db090e1eadf7c432d207..711895484903c1ec7e07f09d1dac2eed05d7061e 100644 (file)
@@ -1,4 +1,5 @@
 // { dg-do compile { target c++11 } }
+// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
 
 // Copyright (C) 2007-2018 Free Software Foundation, Inc.
 //
@@ -17,6 +18,9 @@
 // along with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
+// This file tests explicit instantiation of library containers
+// with an allocator for a different value_type (which is a GNU extension).
+
 #include <unordered_set>
 
 using namespace std;
index f1b6d97554e315e461195457f350d7288ed47f26..892f5528bd339c791e91ca22a3cf09ee08cbaa2b 100644 (file)
@@ -1,4 +1,5 @@
 // { dg-do compile { target c++11 } }
+// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
 
 // Copyright (C) 2007-2018 Free Software Foundation, Inc.
 //
@@ -17,6 +18,9 @@
 // along with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
+// This file tests explicit instantiation of library containers
+// with an allocator for a different value_type (which is a GNU extension).
+
 #include <unordered_set>
 
 using namespace std;
index bbb4e1bfe115f66f67b04c4d12b5a04226bea7bb..b067404b9631d90635cb7fa49ba61958d3bc8259 100644 (file)
 // with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
+// This file tests explicit instantiation of library containers
+// with an allocator for a different value_type (which is a GNU extension).
 
 #include <vector>
 #include <ext/extptr_allocator.h>
 
 // { dg-do compile }
+// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
 
 // libstdc++/21770
 template class std::vector<int, __gnu_cxx::_ExtPtr_allocator<char> >;
index d3a5682b877ce9857cba85aee3ecfe02a7e09827..3d41864e63c434f8d3528a6ffb2926cb3a2e9989 100644 (file)
 // with this library; see the file COPYING3.  If not see
 // <http://www.gnu.org/licenses/>.
 
-
 // This file tests explicit instantiation of library containers
+// with an allocator for a different value_type (which is a GNU extension).
 
 #include <vector>
 
 // { dg-do compile }
+// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
 
 // libstdc++/21770
 template class std::vector<int, std::allocator<char> >;