aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple')
-rw-r--r--gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/comparison_operators/35480.cc33
-rw-r--r--gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/comparison_operators/comparisons.cc49
-rw-r--r--gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/cons/assignment.cc52
-rw-r--r--gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/cons/big_tuples.cc104
-rw-r--r--gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/cons/constructor.cc64
-rw-r--r--gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/creation_functions/23978.cc45
-rw-r--r--gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/creation_functions/make_tuple.cc37
-rw-r--r--gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/creation_functions/tie.cc42
-rw-r--r--gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/creation_functions/tie2.cc38
-rw-r--r--gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/element_access/get.cc44
-rw-r--r--gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/moveable.cc42
-rw-r--r--gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/moveable2.cc64
-rw-r--r--gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/requirements/explicit_instantiation.cc24
-rw-r--r--gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/swap.cc109
-rw-r--r--gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/tuple_element.cc37
-rw-r--r--gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/tuple_size.cc38
16 files changed, 0 insertions, 822 deletions
diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/comparison_operators/35480.cc b/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/comparison_operators/35480.cc
deleted file mode 100644
index 613c27f8b..000000000
--- a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/comparison_operators/35480.cc
+++ /dev/null
@@ -1,33 +0,0 @@
-// { dg-options "-std=gnu++0x" }
-// { dg-do compile }
-
-// Copyright (C) 2008, 2009 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 3, 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 COPYING3. If not see
-// <http://www.gnu.org/licenses/>.
-
-// Tuple
-
-#include <tuple>
-
-// libstdc++/35480
-void test01()
-{
- std::tuple<int> t1( 1 );
- std::tuple<int, int> t2( 1, 2 );
- if ( t1 < t2 ) {} // { dg-error "here" }
- if ( t1 == t2 ) {} // { dg-error "here" }
-}
-// { dg-excess-errors "incomplete type" }
diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/comparison_operators/comparisons.cc b/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/comparison_operators/comparisons.cc
deleted file mode 100644
index c10fb1cbc..000000000
--- a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/comparison_operators/comparisons.cc
+++ /dev/null
@@ -1,49 +0,0 @@
-// { dg-options "-std=gnu++0x" }
-
-// Copyright (C) 2007, 2009 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 3, 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 COPYING3. If not see
-// <http://www.gnu.org/licenses/>.
-
-// Tuple
-
-#include <tuple>
-#include <testsuite_hooks.h>
-
-using namespace std;
-
-bool test __attribute__((unused)) = true;
-
-#define TEST1(x) VERIFY( x == x && !(x != x) && x <= x && !(x < x) )
-
-int
-main()
-{
- int i=0;
- int j=0;
- int k=2;
- tuple<int, int, int> a(0, 0, 0);
- tuple<int, int, int> b(0, 0, 1);
- tuple<int& , int& , int&> c(i,j,k);
- tuple<const int&, const int&, const int&> d(c);
- TEST1(a);
- TEST1(b);
- TEST1(c);
- TEST1(d);
- VERIFY(!(a > a) && !(b > b));
- VERIFY(a >= a && b >= b);
- VERIFY(a < b && !(b < a) && a <= b && !(b <= a));
- VERIFY(b > a && !(a > b) && b >= a && !(a >= b));
-}
diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/cons/assignment.cc b/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/cons/assignment.cc
deleted file mode 100644
index 111a398ff..000000000
--- a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/cons/assignment.cc
+++ /dev/null
@@ -1,52 +0,0 @@
-// { dg-options "-std=gnu++0x" }
-
-// Copyright (C) 2007, 2009 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 3, 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 COPYING3. If not see
-// <http://www.gnu.org/licenses/>.
-
-// Tuple
-
-#include <tuple>
-#include <testsuite_hooks.h>
-
-using namespace std;
-
-int
-main()
-{
- bool test __attribute__((unused)) = true;
-
- tuple<> ta;
- tuple<> tb;
- ta = tb;
-
- tuple<int> tc(1);
- tuple<int> td(0);
- td = tc;
- VERIFY(get<0>(td) == 1);
-
- int i=0;
- tuple<int&> te(i);
- te = tc;
- VERIFY(i == 1);
-
- tuple<const int&> tf(tc);
-
- get<0>(tc) = 2;
- VERIFY(get<0>(tf) == 2);
- tuple<double> tg;
- tg = tc;
-}
diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/cons/big_tuples.cc b/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/cons/big_tuples.cc
deleted file mode 100644
index f979623e9..000000000
--- a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/cons/big_tuples.cc
+++ /dev/null
@@ -1,104 +0,0 @@
-// { dg-options "-std=gnu++0x" }
-
-// Copyright (C) 2007, 2009 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 3, 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 COPYING3. If not see
-// <http://www.gnu.org/licenses/>.
-
-// Tuple
-
-#include <tuple>
-#include <testsuite_hooks.h>
-
-using namespace std;
-
-// A simple class without conversions to check some things
-struct foo
-{ };
-
-void
-test_constructors()
-{
- bool test __attribute__((unused)) = true;
-
- int x1=0,x2=0;
- const int &z1=x1;
-
- // Test empty constructor
- tuple<> ta __attribute__((unused));
- tuple<int,int> tb;
- // Test construction from values
- tuple<int,int> tc(x1,x2);
- tuple<int,int&> td(x1,x2);
- tuple<const int&> te(z1);
- x1=1;
- x2=1;
- VERIFY(get<0>(td) == 0 && get<1>(td) == 1 && get<0>(te) == 1);
-
- // Test identical tuple copy constructor
- tuple<int,int> tf(tc);
- tuple<int,int> tg(td);
- tuple<const int&> th(te);
- // Test different tuple copy constructor
- tuple<int,double> ti(tc);
- tuple<int,double> tj(td);
- // Test constructing from a pair
- pair<int,int> pair1(1,1);
- const pair<int,int> pair2(pair1);
- tuple<int,int> tl(pair1);
- tuple<int,const int&> tm(pair1);
- tuple<int,int> tn(pair2);
- tuple<int,const int&> to(pair2);
-}
-
-int
-main(void)
-{
- //test construction
- typedef tuple<int,int,int,int,int,int,int,int,int,int> type1;
- type1 a(0, 0, 0, 0, 0, 0, 0, 0, 0, 1);
- type1 b(0, 0, 0, 0, 0, 0, 0, 0, 0, 2);
- type1 c(a);
- typedef tuple<int,int,int,int,int,int,int,int,int,char> type2;
- type2 d(0, 0, 0, 0, 0, 0, 0, 0, 0, 3);
- type1 e(d);
- typedef tuple<foo,int,int,int,int,int,int,int,int,foo> type3;
- // get
- VERIFY(get<9>(a)==1 && get<9>(b)==2);
- // comparisons
- VERIFY(a==a && !(a!=a) && a<=a && a>=a && !(a<a) && !(a>a));
- VERIFY(!(a==b) && a!=b && a<=b && a<b && !(a>=b) && !(a>b));
- //tie
- {
- int i = 0;
- tie(ignore, ignore, ignore, ignore, ignore, ignore, ignore, ignore,
- ignore, i) = a;
- VERIFY(i == 1);
- }
- //test_assignment
- a=d;
- a=b;
- //make_tuple
- make_tuple(0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
-
- //tuple_size
- VERIFY(tuple_size<type3>::value == 10);
- //tuple_element
- {
- foo q1;
- tuple_element<0,type3>::type q2(q1);
- tuple_element<9,type3>::type q3(q1);
- }
-}
diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/cons/constructor.cc b/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/cons/constructor.cc
deleted file mode 100644
index 3afb059ce..000000000
--- a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/cons/constructor.cc
+++ /dev/null
@@ -1,64 +0,0 @@
-// { dg-options "-std=gnu++0x" }
-
-// Copyright (C) 2007, 2008, 2009 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 3, 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 COPYING3. If not see
-// <http://www.gnu.org/licenses/>.
-
-// Tuple
-
-#include <tuple>
-#include <testsuite_hooks.h>
-
-using namespace std;
-
-int
-main()
-{
- bool test __attribute__((unused)) = true;
-
- int x1=0,x2=0;
- const int &z1=x1;
-
- // Test empty constructor
- tuple<> ta __attribute__((unused));
- tuple<int,int> tb;
- // Test construction from values
- tuple<int,int> tc(x1,x2);
- tuple<int,int&> td(x1,x2);
- tuple<const int&> te(z1);
- x1=1;
- x2=1;
- VERIFY(get<0>(td) == 0 && get<1>(td) == 1 && get<0>(te) == 1);
-
- // Test identical tuple copy constructor
- tuple<int,int> tf(tc);
- tuple<int,int> tg(td);
- tuple<const int&> th(te);
- // Test different tuple copy constructor
- tuple<int,double> ti(tc);
- tuple<int,double> tj(td);
- //tuple<int&, int&> tk(tc);
- tuple<const int&, const int&> tl(tc);
- tuple<const int&, const int&> tm(tl);
- // Test constructing from a pair
- pair<int,int> pair1(1,1);
- const pair<int,int> pair2(pair1);
- tuple<int,int> tn(pair1);
- tuple<int,const int&> to(pair1);
- tuple<int,int> tp(pair2);
- tuple<int,const int&> tq(pair2);
- return 0;
-}
diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/creation_functions/23978.cc b/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/creation_functions/23978.cc
deleted file mode 100644
index 7db57bc70..000000000
--- a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/creation_functions/23978.cc
+++ /dev/null
@@ -1,45 +0,0 @@
-// { dg-options "-std=gnu++0x" }
-//
-// Copyright (C) 2007, 2009 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 3, 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 COPYING3. If not see
-// <http://www.gnu.org/licenses/>.
-
-// Tuple
-
-#include <tuple>
-#include <utility>
-#include <testsuite_hooks.h>
-
-using namespace std;
-
-// libstdc++/23978
-void test01()
-{
- bool test __attribute__((unused)) = true;
-
- pair<int, int> p(1, 2);
- int x = 0;
- int y = 0;
- tie(x, y) = p;
- VERIFY( x == 1 && y == 2 );
-}
-
-int
-main()
-{
- test01();
- return 0;
-}
diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/creation_functions/make_tuple.cc b/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/creation_functions/make_tuple.cc
deleted file mode 100644
index 7521111fa..000000000
--- a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/creation_functions/make_tuple.cc
+++ /dev/null
@@ -1,37 +0,0 @@
-// { dg-options "-std=gnu++0x" }
-
-// Copyright (C) 2007, 2009 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 3, 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 COPYING3. If not see
-// <http://www.gnu.org/licenses/>.
-
-// Tuple
-
-#include <tuple>
-#include <functional>
-#include <testsuite_hooks.h>
-
-using namespace std;
-
-int
-main()
-{
- bool test __attribute__((unused)) = true;
-
- int i=0;
- make_tuple(1,2,4.0);
- make_tuple(ref(i)) = tuple<int>(1);
- VERIFY(i == 1);
-}
diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/creation_functions/tie.cc b/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/creation_functions/tie.cc
deleted file mode 100644
index a76928979..000000000
--- a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/creation_functions/tie.cc
+++ /dev/null
@@ -1,42 +0,0 @@
-// { dg-options "-std=gnu++0x" }
-
-// Copyright (C) 2007, 2009 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 3, 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 COPYING3. If not see
-// <http://www.gnu.org/licenses/>.
-
-// Tuple
-
-#include <tuple>
-#include <testsuite_hooks.h>
-
-using namespace std;
-
-int
-main()
-{
- bool test __attribute__((unused)) = true;
-
- int x1 = 0;
- int x2 = 0;
- int y1 = 0;
- int y2 = 0;
- tuple<int,int> ta(1,1);
- tuple<const int&,const int&> tc(x1,x2);
- tie(y1,y2)=ta;
- VERIFY(y1 == 1 && y2 == 1);
- tie(y1,y2)=tc;
- VERIFY(y1 == 0 && y2 == 0);
-}
diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/creation_functions/tie2.cc b/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/creation_functions/tie2.cc
deleted file mode 100644
index 538c3e8e1..000000000
--- a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/creation_functions/tie2.cc
+++ /dev/null
@@ -1,38 +0,0 @@
-// { dg-options "-std=gnu++0x" }
-
-// Copyright (C) 2007, 2009 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 3, 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 COPYING3. If not see
-// <http://www.gnu.org/licenses/>.
-
-// Tuple
-
-#include <tuple>
-#include <string>
-#include <testsuite_hooks.h>
-
-int
-main()
-{
- bool test __attribute__((unused)) = true;
- using namespace std;
-
- int i;
- string s;
-
- tie(i, ignore, s) = make_tuple(42, 3.14, "C++");
- VERIFY( i == 42 );
- VERIFY( s == "C++" );
-}
diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/element_access/get.cc b/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/element_access/get.cc
deleted file mode 100644
index 1ec01cfca..000000000
--- a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/element_access/get.cc
+++ /dev/null
@@ -1,44 +0,0 @@
-// { dg-options "-std=gnu++0x" }
-
-// Copyright (C) 2007, 2009 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 3, 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 COPYING3. If not see
-// <http://www.gnu.org/licenses/>.
-
-// Tuple
-
-#include <tuple>
-#include <testsuite_hooks.h>
-
-using namespace std;
-
-int
-main()
-{
- bool test __attribute__((unused)) = true;
-
- int j=1;
- const int k=2;
- tuple<int,int &,const int&> a(0,j,k);
- const tuple<int,int &,const int&> b(1,j,k);
- VERIFY(get<0>(a)==0 && get<1>(a)==1 && get<2>(a)==2);
- get<0>(a)=3;
- get<1>(a)=4;
- VERIFY(get<0>(a)==3 && get<1>(a)==4);
- VERIFY(j==4);
- get<1>(b)=5;
- VERIFY(get<0>(b)==1 && get<1>(b)==5 && get<2>(b)==2);
- VERIFY(j==5);
-}
diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/moveable.cc b/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/moveable.cc
deleted file mode 100644
index 0fedd83ed..000000000
--- a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/moveable.cc
+++ /dev/null
@@ -1,42 +0,0 @@
-// { dg-options "-std=gnu++0x" }
-
-// Copyright (C) 2007, 2009 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 3, 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 COPYING3. If not see
-// <http://www.gnu.org/licenses/>.
-
-
-// NOTE: This makes use of the fact that we know how moveable
-// is implemented on tuple. If the implementation changed
-// this test may begin to fail.
-
-#include <tuple>
-#include <utility>
-#include <testsuite_hooks.h>
-
-int main()
-{
- bool test __attribute__((unused)) = true;
-
- std::tuple<int, double> a(1, 2.0), b;
- b = std::move(a);
- VERIFY( std::get<0>(b) == 1 && std::get<1>(b) == 2.0 );
- VERIFY( std::get<0>(a) == 1 && std::get<1>(a) == 2.0 );
-
- std::tuple<int, double> c(std::move(b));
- VERIFY( std::get<0>(c) == 1 && std::get<1>(c) == 2.0 );
- VERIFY( std::get<0>(b) == 1 && std::get<1>(b) == 2.0 );
- return 0;
-}
diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/moveable2.cc b/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/moveable2.cc
deleted file mode 100644
index f08007421..000000000
--- a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/moveable2.cc
+++ /dev/null
@@ -1,64 +0,0 @@
-// { dg-options "-std=gnu++0x" }
-
-// Copyright (C) 2008, 2009 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 3, 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 COPYING3. If not see
-// <http://www.gnu.org/licenses/>.
-
-
-#include <tuple>
-#include <utility>
-
-struct MoveOnly
-{
- MoveOnly () { }
-
- MoveOnly (MoveOnly&&) { }
-
- MoveOnly& operator=(MoveOnly&&)
- { return *this; }
-
-private:
- MoveOnly(MoveOnly const&); // = delete
- MoveOnly& operator=(MoveOnly const&); // = delete
-};
-
-MoveOnly
-make_move_only ()
-{ return MoveOnly(); }
-
-// http://gcc.gnu.org/ml/libstdc++/2008-02/msg00046.html
-void test01()
-{
- typedef std::tuple<MoveOnly> move_only_tuple;
-
- move_only_tuple t1(make_move_only());
- move_only_tuple t2(std::move(t1));
- move_only_tuple t3 = std::move(t2);
- t1 = std::move(t3);
-
- typedef std::tuple<MoveOnly, MoveOnly> move_only_tuple2;
-
- move_only_tuple2 t4(make_move_only(), make_move_only());
- move_only_tuple2 t5(std::move(t4));
- move_only_tuple2 t6 = std::move(t5);
- t4 = std::move(t6);
-}
-
-int main()
-{
- test01();
- return 0;
-}
diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/requirements/explicit_instantiation.cc b/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/requirements/explicit_instantiation.cc
deleted file mode 100644
index 22b8f50f5..000000000
--- a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/requirements/explicit_instantiation.cc
+++ /dev/null
@@ -1,24 +0,0 @@
-// { dg-options "-std=gnu++0x" }
-// { dg-do compile }
-
-// Copyright (C) 2007, 2009 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 3, 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 COPYING3. If not see
-// <http://www.gnu.org/licenses/>.
-
-
-#include <tuple>
-
-template class std::tuple<short, int, double>;
diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/swap.cc b/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/swap.cc
deleted file mode 100644
index 1e65f0521..000000000
--- a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/swap.cc
+++ /dev/null
@@ -1,109 +0,0 @@
-// { dg-options "-std=gnu++0x" }
-
-// Copyright (C) 2007, 2009 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 3, 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 COPYING3. If not see
-// <http://www.gnu.org/licenses/>.
-
-
-// NOTE: This makes use of the fact that we know how moveable
-// is implemented on tuple. If the implementation changed
-// this test may begin to fail.
-
-#include <tuple>
-#include <utility>
-#include <testsuite_hooks.h>
-
-struct MoveOnly
-{
- explicit MoveOnly (int j) : i(j) { }
-
- MoveOnly (MoveOnly&& m) : i(m.i) { }
-
- MoveOnly& operator=(MoveOnly&& m)
- { i = m.i; return *this; }
-
- MoveOnly(MoveOnly const&) = delete;
- MoveOnly& operator=(MoveOnly const&) = delete;
-
- bool operator==(MoveOnly const& m)
- { return i == m.i; }
-
- void swap(MoveOnly&& m)
- { std::swap(m.i, i); }
-
- int i;
-};
-
-void swap(MoveOnly& m1, MoveOnly& m2)
-{ m1.swap(m2); }
-
-MoveOnly
-make_move_only (int i)
-{ return MoveOnly(i); }
-
-void test01()
-{
- std::tuple<> t1, t2;
- std::swap(t1, t2);
-
- VERIFY( t1 == t2 );
-}
-
-void test02()
-{
- bool test __attribute__((unused)) = true;
-
- std::tuple<int> t1(1), t2(2);
- std::swap(t1, t2);
-
- VERIFY( std::get<0>(t1) == 2 && std::get<0>(t2) == 1 );
-}
-
-void test03()
-{
- bool test __attribute__((unused)) = true;
-
- std::tuple<int, float> t1(1, 1.0f), t2(2, 2.0f);
- std::swap(t1, t2);
-
- VERIFY( std::get<0>(t1) == 2 && std::get<0>(t2) == 1 );
- VERIFY( std::get<1>(t1) == 2.0f && std::get<1>(t2) == 1.0f );
-}
-
-void test04()
-{
- bool test __attribute__((unused)) = true;
-
- std::tuple<int, float, MoveOnly>
- t1(1, 1.0f, make_move_only(1)),
- t2(2, 2.0f, make_move_only(2));
-
- std::swap(t1, t2);
-
- VERIFY( std::get<0>(t1) == 2 && std::get<0>(t2) == 1 );
- VERIFY( std::get<1>(t1) == 2.0f && std::get<1>(t2) == 1.0f );
- VERIFY( std::get<2>(t1) == make_move_only(2)
- && std::get<2>(t2) == make_move_only(1) );
-}
-
-int main()
-{
- test01();
- test02();
- test03();
- test04();
- return 0;
-}
diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/tuple_element.cc b/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/tuple_element.cc
deleted file mode 100644
index 9344ea082..000000000
--- a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/tuple_element.cc
+++ /dev/null
@@ -1,37 +0,0 @@
-// { dg-options "-std=gnu++0x" }
-
-// Copyright (C) 2007, 2009 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 3, 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 COPYING3. If not see
-// <http://www.gnu.org/licenses/>.
-
-// Tuple
-
-#include <tuple>
-
-using namespace std;
-
-struct foo
-{ };
-
-int
-main()
-{
- // As foo isn't constructible from anything else, this
- // lets us check if type is returning foo when it should
- foo q1;
- tuple_element<0,tuple<foo,void,int> >::type q2(q1);
- tuple_element<2,tuple<void,int,foo> >::type q3(q1);
-}
diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/tuple_size.cc b/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/tuple_size.cc
deleted file mode 100644
index 51f4a2db8..000000000
--- a/gcc-4.4.3/libstdc++-v3/testsuite/20_util/tuple/tuple_size.cc
+++ /dev/null
@@ -1,38 +0,0 @@
-// { dg-options "-std=gnu++0x" }
-
-// Copyright (C) 2007, 2009 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 3, 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 COPYING3. If not see
-// <http://www.gnu.org/licenses/>.
-
-// Tuple
-
-#include <tuple>
-#include <testsuite_hooks.h>
-
-using namespace std;
-
-int
-main()
-{
- bool test __attribute__((unused)) = true;
-
- VERIFY(tuple_size<tuple<> >::value == 0);
- VERIFY(tuple_size<tuple<int> >::value == 1);
- VERIFY(tuple_size<tuple<void> >::value == 1);
- typedef tuple<int,const int&,void> test_tuple1;
- VERIFY(tuple_size<test_tuple1>::value == 3);
- VERIFY(tuple_size<tuple<tuple<void> > >::value == 1);
-}