diff options
author | Jonathan Wakely <jwakely@redhat.com> | 2018-10-19 22:50:15 +0100 |
---|---|---|
committer | Jonathan Wakely <redi@gcc.gnu.org> | 2018-10-19 22:50:15 +0100 |
commit | f3245887551932de6aba1aa3e9f911b78a57b5ef (patch) | |
tree | 714686f623c2028aadf31de8c17d56c966581d4c | |
parent | 92bab15297a57121317df803c9c688955af30722 (diff) | |
download | gcc-f3245887551932de6aba1aa3e9f911b78a57b5ef.zip gcc-f3245887551932de6aba1aa3e9f911b78a57b5ef.tar.gz gcc-f3245887551932de6aba1aa3e9f911b78a57b5ef.tar.bz2 |
Skip tests for GNU extensions when testing with strict mode
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, 66 insertions, 8 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index e0265c5..0399ec6 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -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. diff --git a/libstdc++-v3/testsuite/23_containers/array/requirements/explicit_instantiation/3.cc b/libstdc++-v3/testsuite/23_containers/array/requirements/explicit_instantiation/3.cc index 56c6492..000281c 100644 --- a/libstdc++-v3/testsuite/23_containers/array/requirements/explicit_instantiation/3.cc +++ b/libstdc++-v3/testsuite/23_containers/array/requirements/explicit_instantiation/3.cc @@ -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> diff --git a/libstdc++-v3/testsuite/23_containers/deque/requirements/explicit_instantiation/3.cc b/libstdc++-v3/testsuite/23_containers/deque/requirements/explicit_instantiation/3.cc index ced9c45..22aa6cf 100644 --- a/libstdc++-v3/testsuite/23_containers/deque/requirements/explicit_instantiation/3.cc +++ b/libstdc++-v3/testsuite/23_containers/deque/requirements/explicit_instantiation/3.cc @@ -15,12 +15,13 @@ // 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> >; diff --git a/libstdc++-v3/testsuite/23_containers/forward_list/requirements/explicit_instantiation/3.cc b/libstdc++-v3/testsuite/23_containers/forward_list/requirements/explicit_instantiation/3.cc index 097cee3..808b591 100644 --- a/libstdc++-v3/testsuite/23_containers/forward_list/requirements/explicit_instantiation/3.cc +++ b/libstdc++-v3/testsuite/23_containers/forward_list/requirements/explicit_instantiation/3.cc @@ -16,12 +16,13 @@ // 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> >; diff --git a/libstdc++-v3/testsuite/23_containers/list/requirements/explicit_instantiation/3.cc b/libstdc++-v3/testsuite/23_containers/list/requirements/explicit_instantiation/3.cc index 9fb4985..33a3315 100644 --- a/libstdc++-v3/testsuite/23_containers/list/requirements/explicit_instantiation/3.cc +++ b/libstdc++-v3/testsuite/23_containers/list/requirements/explicit_instantiation/3.cc @@ -15,12 +15,13 @@ // 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> >; diff --git a/libstdc++-v3/testsuite/23_containers/map/requirements/explicit_instantiation/3.cc b/libstdc++-v3/testsuite/23_containers/map/requirements/explicit_instantiation/3.cc index eed1023..def50c6 100644 --- a/libstdc++-v3/testsuite/23_containers/map/requirements/explicit_instantiation/3.cc +++ b/libstdc++-v3/testsuite/23_containers/map/requirements/explicit_instantiation/3.cc @@ -15,12 +15,13 @@ // 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> >; diff --git a/libstdc++-v3/testsuite/23_containers/multimap/requirements/explicit_instantiation/3.cc b/libstdc++-v3/testsuite/23_containers/multimap/requirements/explicit_instantiation/3.cc index 0dcf962..af33f7c 100644 --- a/libstdc++-v3/testsuite/23_containers/multimap/requirements/explicit_instantiation/3.cc +++ b/libstdc++-v3/testsuite/23_containers/multimap/requirements/explicit_instantiation/3.cc @@ -15,12 +15,13 @@ // 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> >; diff --git a/libstdc++-v3/testsuite/23_containers/multiset/requirements/explicit_instantiation/3.cc b/libstdc++-v3/testsuite/23_containers/multiset/requirements/explicit_instantiation/3.cc index 366f9a6..18b20b6 100644 --- a/libstdc++-v3/testsuite/23_containers/multiset/requirements/explicit_instantiation/3.cc +++ b/libstdc++-v3/testsuite/23_containers/multiset/requirements/explicit_instantiation/3.cc @@ -15,12 +15,13 @@ // 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> >; diff --git a/libstdc++-v3/testsuite/23_containers/set/requirements/explicit_instantiation/3.cc b/libstdc++-v3/testsuite/23_containers/set/requirements/explicit_instantiation/3.cc index cd5c096..a51bf47 100644 --- a/libstdc++-v3/testsuite/23_containers/set/requirements/explicit_instantiation/3.cc +++ b/libstdc++-v3/testsuite/23_containers/set/requirements/explicit_instantiation/3.cc @@ -15,12 +15,13 @@ // 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> >; diff --git a/libstdc++-v3/testsuite/23_containers/unordered_map/requirements/explicit_instantiation/3.cc b/libstdc++-v3/testsuite/23_containers/unordered_map/requirements/explicit_instantiation/3.cc index 1332d76..09e2267 100644 --- a/libstdc++-v3/testsuite/23_containers/unordered_map/requirements/explicit_instantiation/3.cc +++ b/libstdc++-v3/testsuite/23_containers/unordered_map/requirements/explicit_instantiation/3.cc @@ -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; diff --git a/libstdc++-v3/testsuite/23_containers/unordered_multimap/requirements/explicit_instantiation/3.cc b/libstdc++-v3/testsuite/23_containers/unordered_multimap/requirements/explicit_instantiation/3.cc index 024b439..64c13e5 100644 --- a/libstdc++-v3/testsuite/23_containers/unordered_multimap/requirements/explicit_instantiation/3.cc +++ b/libstdc++-v3/testsuite/23_containers/unordered_multimap/requirements/explicit_instantiation/3.cc @@ -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; diff --git a/libstdc++-v3/testsuite/23_containers/unordered_multiset/requirements/explicit_instantiation/3.cc b/libstdc++-v3/testsuite/23_containers/unordered_multiset/requirements/explicit_instantiation/3.cc index ebbb627..7118954 100644 --- a/libstdc++-v3/testsuite/23_containers/unordered_multiset/requirements/explicit_instantiation/3.cc +++ b/libstdc++-v3/testsuite/23_containers/unordered_multiset/requirements/explicit_instantiation/3.cc @@ -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; diff --git a/libstdc++-v3/testsuite/23_containers/unordered_set/requirements/explicit_instantiation/3.cc b/libstdc++-v3/testsuite/23_containers/unordered_set/requirements/explicit_instantiation/3.cc index f1b6d97..892f552 100644 --- a/libstdc++-v3/testsuite/23_containers/unordered_set/requirements/explicit_instantiation/3.cc +++ b/libstdc++-v3/testsuite/23_containers/unordered_set/requirements/explicit_instantiation/3.cc @@ -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; diff --git a/libstdc++-v3/testsuite/23_containers/vector/ext_pointer/explicit_instantiation/3.cc b/libstdc++-v3/testsuite/23_containers/vector/ext_pointer/explicit_instantiation/3.cc index bbb4e1b..b067404b 100644 --- a/libstdc++-v3/testsuite/23_containers/vector/ext_pointer/explicit_instantiation/3.cc +++ b/libstdc++-v3/testsuite/23_containers/vector/ext_pointer/explicit_instantiation/3.cc @@ -17,11 +17,14 @@ // 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> >; diff --git a/libstdc++-v3/testsuite/23_containers/vector/requirements/explicit_instantiation/3.cc b/libstdc++-v3/testsuite/23_containers/vector/requirements/explicit_instantiation/3.cc index d3a5682..3d41864 100644 --- a/libstdc++-v3/testsuite/23_containers/vector/requirements/explicit_instantiation/3.cc +++ b/libstdc++-v3/testsuite/23_containers/vector/requirements/explicit_instantiation/3.cc @@ -15,12 +15,13 @@ // 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> >; |