diff options
Diffstat (limited to 'libstdc++-v3/testsuite/tr1')
79 files changed, 1058 insertions, 43 deletions
diff --git a/libstdc++-v3/testsuite/tr1/2_general_utilities/headers/functional/synopsis.cc b/libstdc++-v3/testsuite/tr1/2_general_utilities/headers/functional/synopsis.cc new file mode 100644 index 00000000000..cd6e2b0dcfe --- /dev/null +++ b/libstdc++-v3/testsuite/tr1/2_general_utilities/headers/functional/synopsis.cc @@ -0,0 +1,35 @@ +// { dg-do compile } + +// 2007-02-04 Benjamin Kosnik <bkoz@redhat.com> +// +// Copyright (C) 2007 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 2, or (at your option) +// any later version. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this library; see the file COPYING. If not, write to +// the Free Software Foundation, 51 Franklin Street, Fifth Floor, +// Boston, MA 02110-1301, USA. + +#include <tr1/functional> + +namespace std { +namespace tr1 { + + template <class T> class reference_wrapper; + template <class T> reference_wrapper<T> ref(T&); + template <class T> reference_wrapper<const T> cref(const T&); + template <class T> reference_wrapper<T> ref(reference_wrapper<T>); + template <class T> reference_wrapper<const T> cref(reference_wrapper<T>); + +} // namespace tr1 +} // namespace std diff --git a/libstdc++-v3/testsuite/tr1/2_general_utilities/headers/memory/synopsis.cc b/libstdc++-v3/testsuite/tr1/2_general_utilities/headers/memory/synopsis.cc new file mode 100644 index 00000000000..d3f15203c56 --- /dev/null +++ b/libstdc++-v3/testsuite/tr1/2_general_utilities/headers/memory/synopsis.cc @@ -0,0 +1,66 @@ +// { dg-do compile } + +// 2007-02-04 Benjamin Kosnik <bkoz@redhat.com> +// +// Copyright (C) 2007 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 2, or (at your option) +// any later version. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this library; see the file COPYING. If not, write to +// the Free Software Foundation, 51 Franklin Street, Fifth Floor, +// Boston, MA 02110-1301, USA. + +#include <tr1/memory> + +namespace std { +namespace tr1 { + + // [2.2.2] Class bad_weak_ptr + class bad_weak_ptr; + + // [2.2.3] Class template shared_ptr + template<class T> class shared_ptr; + + // [2.2.3.6] shared_ptr comparisons + template<class T, class U> bool operator==(shared_ptr<T> const& a, shared_ptr<U> const& b); + template<class T, class U> bool operator!=(shared_ptr<T> const& a, shared_ptr<U> const& b); + template<class T, class U> bool operator<(shared_ptr<T> const& a, shared_ptr<U> const& b); + + // [2.2.3.8] shared_ptr specialized algorithms + template<class T> void swap(shared_ptr<T>& a, shared_ptr<T>& b); + + // [2.2.3.9] shared_ptr casts + template<class T, class U> shared_ptr<T> static_pointer_cast(shared_ptr<U> const& r); + template<class T, class U> shared_ptr<T> dynamic_pointer_cast(shared_ptr<U> const& r); + template<class T, class U> shared_ptr<T> const_pointer_cast(shared_ptr<U> const& r); + + // [2.2.3.7] shared_ptr I/O + template<class E, class T, class Y> + basic_ostream<E, T>& operator<< (basic_ostream<E, T>& os, shared_ptr<Y> const& p); + + // [2.2.3.10] shared_ptr get_deleter + template<class D, class T> D* get_deleter(shared_ptr<T> const& p); + + // [2.2.4] Class template weak_ptr + template<class T> class weak_ptr; + + // [2.2.4.6] weak_ptr comparison + template<class T, class U> bool operator<(weak_ptr<T> const& a, weak_ptr<U> const& b); + + // [2.2.4.7] weak_ptr specialized algorithms + template<class T> void swap(weak_ptr<T>& a, weak_ptr<T>& b); + + // [2.2.5] Class enable_shared_from_this + template<class T> class enable_shared_from_this; +} // namespace tr1 +} // namespace std diff --git a/libstdc++-v3/testsuite/tr1/2_general_utilities/headers/memory/types_std_tr1.cc b/libstdc++-v3/testsuite/tr1/2_general_utilities/headers/memory/types_std_tr1.cc new file mode 100644 index 00000000000..3a3717a3301 --- /dev/null +++ b/libstdc++-v3/testsuite/tr1/2_general_utilities/headers/memory/types_std_tr1.cc @@ -0,0 +1,26 @@ +// { dg-do compile } + +// Copyright (C) 2007 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 2, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING. If not, write to the Free +// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, +// USA. + +#include <tr1/memory> + +namespace gnu +{ + using std::tr1::bad_weak_ptr; +} diff --git a/libstdc++-v3/testsuite/tr1/2_general_utilities/memory/enable_shared_from_this/explicit_instantiation/1.cc b/libstdc++-v3/testsuite/tr1/2_general_utilities/memory/enable_shared_from_this/requirements/explicit_instantiation/1.cc index b497ebb0a4a..b497ebb0a4a 100644 --- a/libstdc++-v3/testsuite/tr1/2_general_utilities/memory/enable_shared_from_this/explicit_instantiation/1.cc +++ b/libstdc++-v3/testsuite/tr1/2_general_utilities/memory/enable_shared_from_this/requirements/explicit_instantiation/1.cc diff --git a/libstdc++-v3/testsuite/tr1/2_general_utilities/memory/shared_ptr/explicit_instantiation/1.cc b/libstdc++-v3/testsuite/tr1/2_general_utilities/memory/shared_ptr/requirements/explicit_instantiation/1.cc index 015e22ec79b..015e22ec79b 100644 --- a/libstdc++-v3/testsuite/tr1/2_general_utilities/memory/shared_ptr/explicit_instantiation/1.cc +++ b/libstdc++-v3/testsuite/tr1/2_general_utilities/memory/shared_ptr/requirements/explicit_instantiation/1.cc diff --git a/libstdc++-v3/testsuite/tr1/2_general_utilities/memory/weak_ptr/explicit_instantiation/1.cc b/libstdc++-v3/testsuite/tr1/2_general_utilities/memory/weak_ptr/requirements/explicit_instantiation/1.cc index 6c22459dab6..6c22459dab6 100644 --- a/libstdc++-v3/testsuite/tr1/2_general_utilities/memory/weak_ptr/explicit_instantiation/1.cc +++ b/libstdc++-v3/testsuite/tr1/2_general_utilities/memory/weak_ptr/requirements/explicit_instantiation/1.cc diff --git a/libstdc++-v3/testsuite/tr1/3_function_objects/headers/functional/synopsis.cc b/libstdc++-v3/testsuite/tr1/3_function_objects/headers/functional/synopsis.cc new file mode 100644 index 00000000000..836c67005e7 --- /dev/null +++ b/libstdc++-v3/testsuite/tr1/3_function_objects/headers/functional/synopsis.cc @@ -0,0 +1,80 @@ +// { dg-do compile } + +// 2007-02-04 Benjamin Kosnik <bkoz@redhat.com> +// +// Copyright (C) 2007 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 2, or (at your option) +// any later version. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this library; see the file COPYING. If not, write to +// the Free Software Foundation, 51 Franklin Street, Fifth Floor, +// Boston, MA 02110-1301, USA. + +#include <tr1/functional> + +namespace std { +namespace tr1 { + + // [3.4] class template result_of + template <class FunctionCallType> class result_of; + +#if 0 + // [3.5] function template mem_fn + template<class R, class T> unspecified mem_fn(R T::* pm); +#endif + + // [3.6] function object binders + template<class T> struct is_bind_expression; + template<class T> struct is_placeholder; + +#if 0 + template<class F, class T1, ..., class TN> + unspecified bind(F f, T1 t1, ..., TN tN); + + template<class R, class F, class T1, ..., class Tn > + unspecified bind(F f, T1 t1, ..., TN tN); + + namespace placeholders { + // M is the implementation-defined number of placeholders + extern unspecified _1; + extern unspecified _2; + . + . + . + extern unspecified _M; + } +#endif + + // [3.7] polymorphic function wrappers + class bad_function_call; + template<class Function> class function; + template<class Function> + void swap(function<Function>&, function<Function>&); + template<class Function1, class Function2> + void operator==(const function<Function1>&, const function<Function2>&); + template<class Function1, class Function2> + void operator!=(const function<Function1>&, const function<Function2>&); + +#if 0 + template <class Function> + bool operator==(const function<Function>&, unspecified-null-pointer-type); + template <class Function> + bool operator==(unspecified-null-pointer-type, const function<Function>&); + template <class Function> + bool operator!=(const function<Function>&, unspecified-null-pointer-type); + template <class Function> + bool operator!=(unspecified-null-pointer-type, const function<Function>&); +#endif + +} // namespace tr1 +} // namespace std diff --git a/libstdc++-v3/testsuite/tr1/3_function_objects/headers/functional/types_std_tr1.cc b/libstdc++-v3/testsuite/tr1/3_function_objects/headers/functional/types_std_tr1.cc new file mode 100644 index 00000000000..b61e5f2acfb --- /dev/null +++ b/libstdc++-v3/testsuite/tr1/3_function_objects/headers/functional/types_std_tr1.cc @@ -0,0 +1,26 @@ +// { dg-do compile } + +// Copyright (C) 2007 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 2, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING. If not, write to the Free +// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, +// USA. + +#include <tr1/functional> + +namespace gnu +{ + using std::tr1::bad_function_call; +} diff --git a/libstdc++-v3/testsuite/tr1/3_function_objects/headers/functional/using_namespace_std_tr1_placeholders.cc b/libstdc++-v3/testsuite/tr1/3_function_objects/headers/functional/using_namespace_std_tr1_placeholders.cc new file mode 100644 index 00000000000..faddc0dcc65 --- /dev/null +++ b/libstdc++-v3/testsuite/tr1/3_function_objects/headers/functional/using_namespace_std_tr1_placeholders.cc @@ -0,0 +1,26 @@ +// { dg-do compile } + +// Copyright (C) 2007 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 2, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING. If not, write to the Free +// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, +// USA. + +#include <tr1/tuple> + +namespace gnu +{ + using namespace std::tr1::placeholders; +} diff --git a/libstdc++-v3/testsuite/tr1/4_metaprogramming/headers/type_traits/synopsis.cc b/libstdc++-v3/testsuite/tr1/4_metaprogramming/headers/type_traits/synopsis.cc new file mode 100644 index 00000000000..83ea1acdf82 --- /dev/null +++ b/libstdc++-v3/testsuite/tr1/4_metaprogramming/headers/type_traits/synopsis.cc @@ -0,0 +1,104 @@ +// { dg-do compile } + +// 2007-02-04 Benjamin Kosnik <bkoz@redhat.com> +// +// Copyright (C) 2007 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 2, or (at your option) +// any later version. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this library; see the file COPYING. If not, write to +// the Free Software Foundation, 51 Franklin Street, Fifth Floor, +// Boston, MA 02110-1301, USA. + +#include <tr1/type_traits> + +namespace std { +namespace tr1 { + + // [4.3] helper class: + template <class T, T v> struct integral_constant; + typedef integral_constant<bool, true> true_type; + typedef integral_constant<bool, false> false_type; + + // [4.5.1] primary type categories: + template <class T> struct is_void; + template <class T> struct is_integral; + template <class T> struct is_floating_point; + template <class T> struct is_array; + template <class T> struct is_pointer; + template <class T> struct is_reference; + template <class T> struct is_member_object_pointer; + template <class T> struct is_member_function_pointer; + template <class T> struct is_enum; + template <class T> struct is_union; + template <class T> struct is_class; + template <class T> struct is_function; + + // [4.5.2] composite type categories: + template <class T> struct is_arithmetic; + template <class T> struct is_fundamental; + template <class T> struct is_object; + template <class T> struct is_scalar; + template <class T> struct is_compound; + template <class T> struct is_member_pointer; + + // [4.5.3] type properties: + template <class T> struct is_const; + template <class T> struct is_volatile; + template <class T> struct is_pod; + template <class T> struct is_empty; + template <class T> struct is_polymorphic; + template <class T> struct is_abstract; + template <class T> struct has_trivial_constructor; + template <class T> struct has_trivial_copy; + template <class T> struct has_trivial_assign; + template <class T> struct has_trivial_destructor; + template <class T> struct has_nothrow_constructor; + template <class T> struct has_nothrow_copy; + template <class T> struct has_nothrow_assign; + template <class T> struct has_virtual_destructor; + template <class T> struct is_signed; + template <class T> struct is_unsigned; + template <class T> struct alignment_of; + template <class T> struct rank; + template <class T, unsigned I> struct extent; + + // [4.6] type relations: + template <class T, class U> struct is_same; + template <class Base, class Derived> struct is_base_of; + template <class From, class To> struct is_convertible; + + // [4.7.1] const-volatile modifications: + template <class T> struct remove_const; + template <class T> struct remove_volatile; + template <class T> struct remove_cv; + template <class T> struct add_const; + template <class T> struct add_volatile; + template <class T> struct add_cv; + + // [4.7.2] reference modifications: + template <class T> struct remove_reference; + template <class T> struct add_reference; + + // [4.7.3] array modifications: + template <class T> struct remove_extent; + template <class T> struct remove_all_extents; + + // [4.7.4] pointer modifications: + template <class T> struct remove_pointer; + template <class T> struct add_pointer; + + // [4.8] other transformations: + template <std::size_t Len, std::size_t Align> struct aligned_storage; +} // namespace tr1 +} // namespace std diff --git a/libstdc++-v3/testsuite/tr1/4_metaprogramming/headers/type_traits/types_std_tr1.cc b/libstdc++-v3/testsuite/tr1/4_metaprogramming/headers/type_traits/types_std_tr1.cc new file mode 100644 index 00000000000..bdb3a6e3f54 --- /dev/null +++ b/libstdc++-v3/testsuite/tr1/4_metaprogramming/headers/type_traits/types_std_tr1.cc @@ -0,0 +1,27 @@ +// { dg-do compile } + +// Copyright (C) 2007 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 2, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING. If not, write to the Free +// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, +// USA. + +#include <tr1/type_traits> + +namespace gnu +{ + using std::tr1::true_type; + using std::tr1::false_type; +} diff --git a/libstdc++-v3/testsuite/tr1/5_numerical_facilities/headers/random/synopsis.cc b/libstdc++-v3/testsuite/tr1/5_numerical_facilities/headers/random/synopsis.cc new file mode 100644 index 00000000000..fe0c2df42f1 --- /dev/null +++ b/libstdc++-v3/testsuite/tr1/5_numerical_facilities/headers/random/synopsis.cc @@ -0,0 +1,97 @@ +// { dg-do compile } + +// 2007-02-04 Benjamin Kosnik <bkoz@redhat.com> +// +// Copyright (C) 2007 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 2, or (at your option) +// any later version. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this library; see the file COPYING. If not, write to +// the Free Software Foundation, 51 Franklin Street, Fifth Floor, +// Boston, MA 02110-1301, USA. + +#include <tr1/random> + +namespace std { +namespace tr1 { + + // [5.1.3] Class template variate_generator + template<class UniformRandomNumberGenerator, class Distribution> + class variate_generator; + + // [5.1.4.1] Class template linear_congruential + template<class IntType, IntType a, IntType c, IntType m> + class linear_congruential; + + // [5.1.4.2] Class template mersenne_twister + template<class UIntType, int w, int n, int m, int r, + UIntType a, int u, int s, UIntType b, int t, UIntType c, int l> + class mersenne_twister; + + // [5.1.4.3] Class template subtract_with_carry + template<class IntType, IntType m, int s, int r> + class subtract_with_carry; + + // [5.1.4.4] Class template subtract_with_carry_01 + template<class RealType, int w, int s, int r> + class subtract_with_carry_01; + + // [5.1.4.5] Class template discard_block + template<class UniformRandomNumberGenerator, int p, int r> + class discard_block; + + // [5.1.4.6] Class template xor_combine + template<class UniformRandomNumberGenerator1, int s1, + class UniformRandomNumberGenerator2, int s2> + class xor_combine; + + // [5.1.6] Class random_device + class random_device; + + // [5.1.7.1] Class template uniform_int + template<class IntType> + class uniform_int; + + // [5.1.7.2] Class bernoulli_distribution + class bernoulli_distribution; + + // [5.1.7.3] Class template geometric_distribution + template<class IntType, class RealType> + class geometric_distribution; + + // [5.1.7.4] Class template poisson_distribution + template<class IntType, class RealType> + class poisson_distribution; + + // [5.1.7.5] Class template binomial_distribution + template<class IntType, class RealType> + class binomial_distribution; + + // [5.1.7.6] Class template uniform_real + template<class RealType> + class uniform_real; + + // [5.1.7.7] Class template exponential_distribution + template<class RealType> + class exponential_distribution; + + // [5.1.7.8] Class template normal_distribution + template<class RealType> + class normal_distribution; + + // [5.1.7.9] Class template gamma_distribution + template<class RealType> + class gamma_distribution; + +} // namespace tr1 +} // namespace std diff --git a/libstdc++-v3/testsuite/tr1/5_numerical_facilities/headers/random/types_std_tr1.cc b/libstdc++-v3/testsuite/tr1/5_numerical_facilities/headers/random/types_std_tr1.cc new file mode 100644 index 00000000000..2fd21499116 --- /dev/null +++ b/libstdc++-v3/testsuite/tr1/5_numerical_facilities/headers/random/types_std_tr1.cc @@ -0,0 +1,27 @@ +// { dg-do compile } + +// Copyright (C) 2007 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 2, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING. If not, write to the Free +// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, +// USA. + +#include <tr1/random> + +namespace gnu +{ + using std::tr1::random_device; + using std::tr1::bernoulli_distribution; +} diff --git a/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/discard_block/requirements/requirements.cc b/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/discard_block/requirements/typedefs.cc index ced6ba17fdd..ced6ba17fdd 100644 --- a/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/discard_block/requirements/requirements.cc +++ b/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/discard_block/requirements/typedefs.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/array/requirements/instantiate.cc b/libstdc++-v3/testsuite/tr1/6_containers/array/requirements/explicit_instantiation.cc index 7ab5c2ad68c..7ab5c2ad68c 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/array/requirements/instantiate.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/array/requirements/explicit_instantiation.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/hash/24799.cc b/libstdc++-v3/testsuite/tr1/6_containers/hash/24799.cc index 90a336bdf2e..90a336bdf2e 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/hash/24799.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/hash/24799.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/hash/requirements/base_classes.cc b/libstdc++-v3/testsuite/tr1/6_containers/hash/requirements/base_classes.cc new file mode 100644 index 00000000000..4a4916c9cf0 --- /dev/null +++ b/libstdc++-v3/testsuite/tr1/6_containers/hash/requirements/base_classes.cc @@ -0,0 +1,33 @@ +// { dg-do compile } + +// Copyright (C) 2007 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 2, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING. If not, write to the Free +// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, +// USA. + +#include <tr1/functional> + +void test01() +{ + // Check for required base class. + typedef long value_type; + typedef std::tr1::hash<value_type> test_type; + typedef std::unary_function<value_type, std::size_t> base_type; + + test_type b; + const test_type& obj = b; + const base_type* base __attribute__((unused)) = &obj; +} diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/instantiate/hash.cc b/libstdc++-v3/testsuite/tr1/6_containers/hash/requirements/explicit_instantiation.cc index 382d69f715c..382d69f715c 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/instantiate/hash.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/hash/requirements/explicit_instantiation.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/headers/array/synopsis.cc b/libstdc++-v3/testsuite/tr1/6_containers/headers/array/synopsis.cc new file mode 100644 index 00000000000..463f3aca9dc --- /dev/null +++ b/libstdc++-v3/testsuite/tr1/6_containers/headers/array/synopsis.cc @@ -0,0 +1,52 @@ +// { dg-do compile } + +// 2007-02-04 Benjamin Kosnik <bkoz@redhat.com> +// +// Copyright (C) 2007 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 2, or (at your option) +// any later version. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this library; see the file COPYING. If not, write to +// the Free Software Foundation, 51 Franklin Street, Fifth Floor, +// Boston, MA 02110-1301, USA. + +#include <tr1/array> + +namespace std { +namespace tr1 { + + // [6.2.2] Class template array + template <class T, size_t N > struct array; + + // Array comparisons + template <class T, size_t N> bool operator==(const array<T,N>& x, const array<T,N>& y); + template <class T, size_t N> bool operator!=(const array<T,N>& x, const array<T,N>& y); + template <class T, size_t N> bool operator<(const array<T,N>& x, const array<T,N>& y); + template <class T, size_t N> bool operator>(const array<T,N>& x, const array<T,N>& y); + template <class T, size_t N> bool operator<=(const array<T,N>& x, const array<T,N>& y); + template <class T, size_t N> bool operator>=(const array<T,N>& x, const array<T,N>& y); + + // [6.2.2.2] Specialized algorithms + template <class T, size_t N > void swap(array<T,N>& x, array<T,N>& y); + + // [6.2.2.5] Tuple interface to class template array + template <class T> class tuple_size; // forward declaration + template <int I, class T> class tuple_element; // forward declaration + template <class T, size_t N> struct tuple_size<array<T, N> >; + template <int I, class T, size_t N> struct tuple_element<I, array<T, N> >; + template <int I, class T, size_t N> T& get(array<T, N>&); + template <int I, class T, size_t N> const T& get(const array<T, N>&); + +} // namespace tr1 +} // namespace std + diff --git a/libstdc++-v3/testsuite/tr1/6_containers/headers/functional/synopsis.cc b/libstdc++-v3/testsuite/tr1/6_containers/headers/functional/synopsis.cc new file mode 100644 index 00000000000..682593c295a --- /dev/null +++ b/libstdc++-v3/testsuite/tr1/6_containers/headers/functional/synopsis.cc @@ -0,0 +1,51 @@ +// { dg-do compile } + +// 2007-02-04 Benjamin Kosnik <bkoz@redhat.com> +// +// Copyright (C) 2007 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 2, or (at your option) +// any later version. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this library; see the file COPYING. If not, write to +// the Free Software Foundation, 51 Franklin Street, Fifth Floor, +// Boston, MA 02110-1301, USA. + +#include <tr1/functional> + +namespace std { +namespace tr1 { + + // [6.3.3] Hash function base template + template <class T> struct hash; + + // Hash function specializations + template <> struct hash<bool>; + template <> struct hash<char>; + template <> struct hash<signed char>; + template <> struct hash<unsigned char>; + template <> struct hash<wchar_t>; + template <> struct hash<short>; + template <> struct hash<unsigned short>; + template <> struct hash<int>; + template <> struct hash<unsigned int>; + template <> struct hash<long>; + template <> struct hash<unsigned long>; + template <> struct hash<float>; + template <> struct hash<double>; + template <> struct hash<long double>; + template<class T> struct hash<T*>; + template <> struct hash<std::string>; + template <> struct hash<std::wstring>; + +} // namespace tr1 +} // namespace std diff --git a/libstdc++-v3/testsuite/tr1/6_containers/headers/tuple/synopsis.cc b/libstdc++-v3/testsuite/tr1/6_containers/headers/tuple/synopsis.cc new file mode 100644 index 00000000000..72fb92900e9 --- /dev/null +++ b/libstdc++-v3/testsuite/tr1/6_containers/headers/tuple/synopsis.cc @@ -0,0 +1,71 @@ +// { dg-do compile } + +// 2007-02-04 Benjamin Kosnik <bkoz@redhat.com> +// +// Copyright (C) 2007 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 2, or (at your option) +// any later version. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this library; see the file COPYING. If not, write to +// the Free Software Foundation, 51 Franklin Street, Fifth Floor, +// Boston, MA 02110-1301, USA. + +#include <tr1/tuple> + +namespace std { +namespace tr1 { + +#if 0 + // [6.1.3] Class template tuple + template <class T1 = unspecified , + class T2 = unspecified , + ..., + class TM = unspecified > class tuple; + + // [6.1.3.2] Tuple creation functions + const unspecified ignore; + template<class T1, class T2, ..., class TN> + tuple<V1, V2, ..., VN> make_tuple(const T1&, const T2& , ..., const TN&); + + template<class T1, class T2, ..., class TN> + tuple<T1&, T2&, ..., TN&> tie(T1&, T2& , ..., TN&); +#endif + + // [6.1.3.3] Tuple helper classes + template <class T> class tuple_size; + template <int I, class T> class tuple_element; + +#if 0 + // [6.1.3.4] Element access + template <int I, class T1, class T2, ..., class TN> + RJ get(tuple<T1, T2, ..., TN>&); + template <int I, class T1, class T2, ..., class TN> + PJ get(const tuple<T1, T2, ..., TN>&); + + // [6.1.3.5] relational operators + template<class T1, class T2, ..., class TM, class U1, class U2, ..., class UM> + bool operator==(const tuple<T1, T2, ..., TM>&, const tuple<U1, U2, ..., UM>&); + template<class T1, class T2, ..., class TM, class U1, class U2, ..., class UM> + bool operator<(const tuple<T1, T2, ..., TM>&, const tuple<U1, U2, ..., UM>&); + template<class T1, class T2, ..., class TM, class U1, class U2, ..., class UM> + bool operator!=(const tuple<T1, T2, ..., TM>&, const tuple<U1, U2, ..., UM>&); + template<class T1, class T2, ..., class TM, class U1, class U2, ..., class UM> + bool operator>(const tuple<T1, T2, ..., TM>&, const tuple<U1, U2, ..., UM>&); + template<class T1, class T2, ..., class TM, class U1, class U2, ..., class UM> + bool operator<=(const tuple<T1, T2, ..., TM>&, const tuple<U1, U2, ..., UM>&); + template<class T1, class T2, ..., class TM, class U1, class U2, ..., class UM> + bool operator>=(const tuple<T1, T2, ..., TM>&, const tuple<U1, U2, ..., UM>&); +#endif + +} // namespace tr1 +} // namespace std diff --git a/libstdc++-v3/testsuite/tr1/6_containers/headers/tuple/types_std_tr1.cc b/libstdc++-v3/testsuite/tr1/6_containers/headers/tuple/types_std_tr1.cc new file mode 100644 index 00000000000..2c543f0df34 --- /dev/null +++ b/libstdc++-v3/testsuite/tr1/6_containers/headers/tuple/types_std_tr1.cc @@ -0,0 +1,26 @@ +// { dg-do compile } + +// Copyright (C) 2007 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 2, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING. If not, write to the Free +// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, +// USA. + +#include <tr1/tuple> + +namespace gnu +{ + using std::tr1::ignore; +} diff --git a/libstdc++-v3/testsuite/tr1/6_containers/headers/unordered_map/synopsis.cc b/libstdc++-v3/testsuite/tr1/6_containers/headers/unordered_map/synopsis.cc new file mode 100644 index 00000000000..45080fc40f5 --- /dev/null +++ b/libstdc++-v3/testsuite/tr1/6_containers/headers/unordered_map/synopsis.cc @@ -0,0 +1,54 @@ +// { dg-do compile { xfail *-*-* } } +// { dg-excess-errors "" } + +// 2007-02-04 Benjamin Kosnik <bkoz@redhat.com> +// +// Copyright (C) 2007 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 2, or (at your option) +// any later version. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this library; see the file COPYING. If not, write to +// the Free Software Foundation, 51 Franklin Street, Fifth Floor, +// Boston, MA 02110-1301, USA. + +#include <tr1/unordered_map> + +namespace std { +namespace tr1 { + + // [6.3.4.4] Class template unordered_map + template <class Key, + class T, + class Hash, + class Pred, + class Alloc> + class unordered_map; + + // [6.3.4.6] Class template unordered_multimap + template <class Key, + class T, + class Hash, + class Pred, + class Alloc> + class unordered_multimap; + +template <class Key, class T, class Hash, class Pred, class Alloc> + void swap(unordered_map<Key, T, Hash, Pred, Alloc>& x, + unordered_map<Key, T, Hash, Pred, Alloc>& y); +template <class Key, class T, class Hash, class Pred, class Alloc> + void swap(unordered_multimap<Key, T, Hash, Pred, Alloc>& x, + unordered_multimap<Key, T, Hash, Pred, Alloc>& y); + +} // namespace tr1 +} // namespace std + diff --git a/libstdc++-v3/testsuite/tr1/6_containers/headers/unordered_set/synopsis.cc b/libstdc++-v3/testsuite/tr1/6_containers/headers/unordered_set/synopsis.cc new file mode 100644 index 00000000000..29cced09bd2 --- /dev/null +++ b/libstdc++-v3/testsuite/tr1/6_containers/headers/unordered_set/synopsis.cc @@ -0,0 +1,53 @@ +// { dg-do compile { xfail *-*-* } } +// { dg-excess-errors "" } + +// 2007-02-04 Benjamin Kosnik <bkoz@redhat.com> +// +// Copyright (C) 2007 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 2, or (at your option) +// any later version. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this library; see the file COPYING. If not, write to +// the Free Software Foundation, 51 Franklin Street, Fifth Floor, +// Boston, MA 02110-1301, USA. + +#include <tr1/unordered_set> + +namespace std { +namespace tr1 { + + // [6.3.4.3] Class template unordered_set + template <class Value, + class Hash, + class Pred, + class Alloc> + class unordered_set; + + // [6.3.4.5] Class template unordered_multiset + template <class Value, + class Hash, + class Pred, + class Alloc> + class unordered_multiset; + + template <class Value, class Hash, class Pred, class Alloc> + void swap(unordered_set<Value, Hash, Pred, Alloc>& x, + unordered_set<Value, Hash, Pred, Alloc>& y); + + template <class Value, class Hash, class Pred, class Alloc> + void swap(unordered_multiset<Value, Hash, Pred, Alloc>& x, + unordered_multiset<Value, Hash, Pred, Alloc>& y); + +} // namespace tr1 +} // namespace std + diff --git a/libstdc++-v3/testsuite/tr1/6_containers/tuple/requirements/explicit_instantiation.cc b/libstdc++-v3/testsuite/tr1/6_containers/tuple/requirements/explicit_instantiation.cc new file mode 100644 index 00000000000..c2a2321b08a --- /dev/null +++ b/libstdc++-v3/testsuite/tr1/6_containers/tuple/requirements/explicit_instantiation.cc @@ -0,0 +1,34 @@ +// { dg-do compile } + +// Copyright (C) 2007 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 2, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with this library; see the file COPYING. If not, write to +// the Free Software Foundation, 51 Franklin Street, Fifth Floor, +// Boston, MA 02110-1301, USA. + +// As a special exception, you may use this file as part of a free software +// library without restriction. Specifically, if other files instantiate +// templates or use macros or inline functions from this file, or you compile +// this file and link it with other files to produce an executable, this +// file does not by itself cause the resulting executable to be covered by +// the GNU General Public License. This exception does not however +// invalidate any other reasons why the executable file might be covered by +// the GNU General Public License. + +// This file tests explicit instantiation of library containers. + +#include <tr1/tuple> + +template class std::tr1::tuple<short, int, double>; diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/23781.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered/23781.cc deleted file mode 100644 index a5479932315..00000000000 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/23781.cc +++ /dev/null @@ -1,43 +0,0 @@ -// 2005-09-10 Paolo Carlini <pcarlini@suse.de> -// -// Copyright (C) 2005 Free Software Foundation, Inc. -// -// This file is part of the GNU ISO C++ Library. This library is free -// software; you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the -// Free Software Foundation; either version 2, or (at your option) -// any later version. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License along -// with this library; see the file COPYING. If not, write to the Free -// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, -// USA. -// -// As a special exception, you may use this file as part of a free software -// library without restriction. Specifically, if other files instantiate -// templates or use macros or inline functions from this file, or you compile -// this file and link it with other files to produce an executable, this -// file does not by itself cause the resulting executable to be covered by -// the GNU General Public License. This exception does not however -// invalidate any other reasons why the executable file might be covered by -// the GNU General Public License. - -// { dg-do compile } - -// libstdc++/23781 -#include <tr1/unordered_map> -#include <tr1/unordered_set> - -std::tr1::unordered_map<int, int>::iterator it1 = NULL; // { dg-error "conversion" } -std::tr1::unordered_map<int, int>::const_iterator cit1 = NULL; // { dg-error "conversion" } -std::tr1::unordered_multimap<int, int>::iterator it2 = NULL; // { dg-error "conversion" } -std::tr1::unordered_multimap<int, int>::const_iterator cit2 = NULL; // { dg-error "conversion" } -std::tr1::unordered_multiset<int>::iterator it3 = NULL; // { dg-error "conversion" } -std::tr1::unordered_multiset<int>::const_iterator cit3 = NULL; // { dg-error "conversion" } -std::tr1::unordered_set<int>::iterator it4 = NULL; // { dg-error "conversion" } -std::tr1::unordered_set<int>::const_iterator cit4 = NULL; // { dg-error "conversion" } diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/hashtable/24064.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_map/24064.cc index 74eabbf53f9..74eabbf53f9 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/hashtable/24064.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_map/24064.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/capacity/29134-map.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_map/capacity/29134-map.cc index 459ace41a88..459ace41a88 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/capacity/29134-map.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_map/capacity/29134-map.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/erase/24061-map.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_map/erase/24061-map.cc index 9289b65859c..9289b65859c 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/erase/24061-map.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_map/erase/24061-map.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/find/map1.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_map/find/map1.cc index 8ff05d25d1f..8ff05d25d1f 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/find/map1.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_map/find/map1.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/insert/24061-map.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_map/insert/24061-map.cc index 8e290afd7f7..8e290afd7f7 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/insert/24061-map.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_map/insert/24061-map.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/insert/array_syntax.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_map/insert/array_syntax.cc index 2664d76eb57..2664d76eb57 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/insert/array_syntax.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_map/insert/array_syntax.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/insert/map_range.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_map/insert/map_range.cc index 424cfb3948b..424cfb3948b 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/insert/map_range.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_map/insert/map_range.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/insert/map_single.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_map/insert/map_single.cc index a4b02e8bdf0..a4b02e8bdf0 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/insert/map_single.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_map/insert/map_single.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/instantiate/map.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_map/requirements/explicit_instantiation.cc index 41ce95db89e..41ce95db89e 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/instantiate/map.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_map/requirements/explicit_instantiation.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/types/map_iterator.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_map/requirements/iterator_neg.cc index da644048f1b..da644048f1b 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/types/map_iterator.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_map/requirements/iterator_neg.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered_map/requirements/iterator_null_neg.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_map/requirements/iterator_null_neg.cc new file mode 100644 index 00000000000..8031c6de89d --- /dev/null +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_map/requirements/iterator_null_neg.cc @@ -0,0 +1,36 @@ +// 2005-09-10 Paolo Carlini <pcarlini@suse.de> +// +// Copyright (C) 2005 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 2, or (at your option) +// any later version. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING. If not, write to the Free +// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, +// USA. +// +// As a special exception, you may use this file as part of a free software +// library without restriction. Specifically, if other files instantiate +// templates or use macros or inline functions from this file, or you compile +// this file and link it with other files to produce an executable, this +// file does not by itself cause the resulting executable to be covered by +// the GNU General Public License. This exception does not however +// invalidate any other reasons why the executable file might be covered by +// the GNU General Public License. + +// { dg-do compile } + +// libstdc++/23781 +#include <tr1/unordered_map> + +std::tr1::unordered_map<int, int>::iterator it1 = NULL; // { dg-error "conversion" } +std::tr1::unordered_map<int, int>::const_iterator cit1 = NULL; // { dg-error "conversion" } diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/swap/unordered_map/1.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_map/swap/1.cc index d379774926d..d379774926d 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/swap/unordered_map/1.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_map/swap/1.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/swap/unordered_map/2.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_map/swap/2.cc index 8d708292ae3..8d708292ae3 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/swap/unordered_map/2.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_map/swap/2.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/capacity/29134-multimap.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multimap/capacity/29134-multimap.cc index af41fa154d6..af41fa154d6 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/capacity/29134-multimap.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multimap/capacity/29134-multimap.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/erase/24061-multimap.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multimap/erase/24061-multimap.cc index b9980b73136..b9980b73136 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/erase/24061-multimap.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multimap/erase/24061-multimap.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/find/multimap1.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multimap/find/multimap1.cc index 1fc3e18addb..1fc3e18addb 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/find/multimap1.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multimap/find/multimap1.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/insert/24061-multimap.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multimap/insert/24061-multimap.cc index a744c8bb381..a744c8bb381 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/insert/24061-multimap.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multimap/insert/24061-multimap.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/insert/multimap_range.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multimap/insert/multimap_range.cc index 6296c4fd560..6296c4fd560 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/insert/multimap_range.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multimap/insert/multimap_range.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/insert/multimap_single.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multimap/insert/multimap_single.cc index 815b8648ffa..815b8648ffa 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/insert/multimap_single.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multimap/insert/multimap_single.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/instantiate/multimap.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multimap/requirements/explicit_instantiation.cc index d48aef831b6..d48aef831b6 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/instantiate/multimap.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multimap/requirements/explicit_instantiation.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/types/multimap_iterator.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multimap/requirements/iterator_neg.cc index a3d705ae81b..a3d705ae81b 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/types/multimap_iterator.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multimap/requirements/iterator_neg.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered_multimap/requirements/iterator_null_neg.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multimap/requirements/iterator_null_neg.cc new file mode 100644 index 00000000000..72b9505ff5d --- /dev/null +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multimap/requirements/iterator_null_neg.cc @@ -0,0 +1,36 @@ +// 2005-09-10 Paolo Carlini <pcarlini@suse.de> +// +// Copyright (C) 2005 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 2, or (at your option) +// any later version. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING. If not, write to the Free +// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, +// USA. +// +// As a special exception, you may use this file as part of a free software +// library without restriction. Specifically, if other files instantiate +// templates or use macros or inline functions from this file, or you compile +// this file and link it with other files to produce an executable, this +// file does not by itself cause the resulting executable to be covered by +// the GNU General Public License. This exception does not however +// invalidate any other reasons why the executable file might be covered by +// the GNU General Public License. + +// { dg-do compile } + +// libstdc++/23781 +#include <tr1/unordered_map> + +std::tr1::unordered_multimap<int, int>::iterator it2 = NULL; // { dg-error "conversion" } +std::tr1::unordered_multimap<int, int>::const_iterator cit2 = NULL; // { dg-error "conversion" } diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/swap/unordered_multimap/1.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multimap/swap/1.cc index 7648e08bd62..7648e08bd62 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/swap/unordered_multimap/1.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multimap/swap/1.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/swap/unordered_multimap/2.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multimap/swap/2.cc index f7744ebe854..f7744ebe854 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/swap/unordered_multimap/2.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multimap/swap/2.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/hashtable/24054.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multiset/24054.cc index 073d2407512..073d2407512 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/hashtable/24054.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multiset/24054.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/capacity/29134-multiset.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multiset/capacity/29134-multiset.cc index 923af9be118..923af9be118 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/capacity/29134-multiset.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multiset/capacity/29134-multiset.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/erase/24061-multiset.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multiset/erase/24061-multiset.cc index a00beab4943..a00beab4943 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/erase/24061-multiset.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multiset/erase/24061-multiset.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/find/multiset1.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multiset/find/multiset1.cc index b06d511af82..b06d511af82 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/find/multiset1.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multiset/find/multiset1.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/insert/24061-multiset.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multiset/insert/24061-multiset.cc index 9467f418ef3..9467f418ef3 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/insert/24061-multiset.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multiset/insert/24061-multiset.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/insert/multiset_range.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multiset/insert/multiset_range.cc index a83fce3cd61..a83fce3cd61 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/insert/multiset_range.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multiset/insert/multiset_range.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/insert/multiset_single.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multiset/insert/multiset_single.cc index 48fd1d4b580..48fd1d4b580 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/insert/multiset_single.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multiset/insert/multiset_single.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/instantiate/multiset.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multiset/requirements/explicit_instantiation.cc index 5d1e8710b05..5d1e8710b05 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/instantiate/multiset.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multiset/requirements/explicit_instantiation.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/types/multiset_iterator.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multiset/requirements/iterator_neg.cc index 3b3161a0001..3b3161a0001 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/types/multiset_iterator.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multiset/requirements/iterator_neg.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered_multiset/requirements/iterator_null_neg.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multiset/requirements/iterator_null_neg.cc new file mode 100644 index 00000000000..46d79ad7f9c --- /dev/null +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multiset/requirements/iterator_null_neg.cc @@ -0,0 +1,36 @@ +// 2005-09-10 Paolo Carlini <pcarlini@suse.de> +// +// Copyright (C) 2005 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 2, or (at your option) +// any later version. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING. If not, write to the Free +// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, +// USA. +// +// As a special exception, you may use this file as part of a free software +// library without restriction. Specifically, if other files instantiate +// templates or use macros or inline functions from this file, or you compile +// this file and link it with other files to produce an executable, this +// file does not by itself cause the resulting executable to be covered by +// the GNU General Public License. This exception does not however +// invalidate any other reasons why the executable file might be covered by +// the GNU General Public License. + +// { dg-do compile } + +// libstdc++/23781 +#include <tr1/unordered_set> + +std::tr1::unordered_multiset<int>::iterator it3 = NULL; // { dg-error "conversion" } +std::tr1::unordered_multiset<int>::const_iterator cit3 = NULL; // { dg-error "conversion" } diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/swap/unordered_multiset/1.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multiset/swap/1.cc index ca0194e3375..ca0194e3375 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/swap/unordered_multiset/1.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multiset/swap/1.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/swap/unordered_multiset/2.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multiset/swap/2.cc index a95ddd51fc8..a95ddd51fc8 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/swap/unordered_multiset/2.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multiset/swap/2.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/hashtable/23053.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/23053.cc index 8d93c4feddc..8d93c4feddc 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/hashtable/23053.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/23053.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/hashtable/23465.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/23465.cc index 35e52c2c693..35e52c2c693 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/hashtable/23465.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/23465.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/hashtable/26127.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/26127.cc index d14a625b554..d14a625b554 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/hashtable/26127.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/26127.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/hashtable/26132.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/26132.cc index 9d0076e9698..9d0076e9698 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/hashtable/26132.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/26132.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/capacity/29134-set.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/capacity/29134-set.cc index 5822341c85e..5822341c85e 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/capacity/29134-set.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/capacity/29134-set.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/erase/24061-set.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/erase/24061-set.cc index 202a21d1ddd..202a21d1ddd 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/erase/24061-set.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/erase/24061-set.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/find/set1.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/find/set1.cc index a39612a1eea..a39612a1eea 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/find/set1.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/find/set1.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/insert/24061-set.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/insert/24061-set.cc index c7d670c9f49..c7d670c9f49 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/insert/24061-set.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/insert/24061-set.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/insert/set_range.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/insert/set_range.cc index bfa4f73b1b2..bfa4f73b1b2 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/insert/set_range.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/insert/set_range.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/insert/set_single.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/insert/set_single.cc index ab3d68ad8b4..ab3d68ad8b4 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/insert/set_single.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/insert/set_single.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/instantiate/set.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/requirements/explicit_instantiation.cc index ae3214f1bae..ae3214f1bae 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/instantiate/set.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/requirements/explicit_instantiation.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/types/set_iterator.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/requirements/iterator_neg.cc index 40dc9c8ce31..40dc9c8ce31 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/types/set_iterator.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/requirements/iterator_neg.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/requirements/iterator_null_neg.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/requirements/iterator_null_neg.cc new file mode 100644 index 00000000000..aca08c950f4 --- /dev/null +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/requirements/iterator_null_neg.cc @@ -0,0 +1,36 @@ +// 2005-09-10 Paolo Carlini <pcarlini@suse.de> +// +// Copyright (C) 2005 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 2, or (at your option) +// any later version. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING. If not, write to the Free +// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, +// USA. +// +// As a special exception, you may use this file as part of a free software +// library without restriction. Specifically, if other files instantiate +// templates or use macros or inline functions from this file, or you compile +// this file and link it with other files to produce an executable, this +// file does not by itself cause the resulting executable to be covered by +// the GNU General Public License. This exception does not however +// invalidate any other reasons why the executable file might be covered by +// the GNU General Public License. + +// { dg-do compile } + +// libstdc++/23781 +#include <tr1/unordered_set> + +std::tr1::unordered_set<int>::iterator it4 = NULL; // { dg-error "conversion" } +std::tr1::unordered_set<int>::const_iterator cit4 = NULL; // { dg-error "conversion" } diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/hashtable/iterators_default_constructor.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/requirements/iterators_default_constructor.cc index 17705aee04c..17705aee04c 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/hashtable/iterators_default_constructor.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/requirements/iterators_default_constructor.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/swap/unordered_set/1.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/swap/1.cc index 1928c9e1bdc..1928c9e1bdc 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/swap/unordered_set/1.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/swap/1.cc diff --git a/libstdc++-v3/testsuite/tr1/6_containers/unordered/swap/unordered_set/2.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/swap/2.cc index 46e859cabac..46e859cabac 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/unordered/swap/unordered_set/2.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/swap/2.cc diff --git a/libstdc++-v3/testsuite/tr1/using_namespace_std_tr1.cc b/libstdc++-v3/testsuite/tr1/using_namespace_std_tr1.cc new file mode 100644 index 00000000000..21fc682b8f7 --- /dev/null +++ b/libstdc++-v3/testsuite/tr1/using_namespace_std_tr1.cc @@ -0,0 +1,26 @@ +// { dg-do compile } + +// Copyright (C) 2007 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 2, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING. If not, write to the Free +// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, +// USA. + +#include <tr1/tuple> + +namespace gnu +{ + using namespace std::tr1; +} |