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
This commit is contained in:
Jonathan Wakely 2018-10-19 22:50:15 +01:00 committed by Jonathan Wakely
parent 92bab15297
commit f324588755
15 changed files with 66 additions and 8 deletions

View 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.

View 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>

View File

@ -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> >;

View File

@ -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> >;

View File

@ -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> >;

View File

@ -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> >;

View File

@ -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> >;

View File

@ -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> >;

View File

@ -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> >;

View 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;

View 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;

View 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;

View 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;

View File

@ -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> >;

View File

@ -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> >;