diff options
Diffstat (limited to 'libstdc++-v3/testsuite')
483 files changed, 6140 insertions, 1242 deletions
diff --git a/libstdc++-v3/testsuite/18_support/bad_exception/23591_thread-1.c b/libstdc++-v3/testsuite/18_support/bad_exception/23591_thread-1.c index 9e621c3f786..f6c623043cd 100644 --- a/libstdc++-v3/testsuite/18_support/bad_exception/23591_thread-1.c +++ b/libstdc++-v3/testsuite/18_support/bad_exception/23591_thread-1.c @@ -1,7 +1,7 @@ // { dg-require-sharedlib "" } // { dg-options "-g -O2 -pthread -ldl -x c" { target *-*-linux* } } -// Copyright (C) 2005, 2009 Free Software Foundation, Inc. +// Copyright (C) 2005, 2009, 2010 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 @@ -32,20 +32,20 @@ static void* run(void* arg) void (*cb)(); lib = dlopen("./testsuite_shared.so", RTLD_NOW); - if (lib == NULL) + if (!lib) { printf("dlopen failed: %s\n", strerror(errno)); - return NULL; + return 0; } cb = (function_type) dlsym(lib, "try_throw_exception"); - if (cb == NULL) + if (!cb) { printf("dlsym failed: %s\n", strerror(errno)); - return NULL; + return 0; } cb(); dlclose(lib); - return NULL; + return 0; } // libstdc++/23591 @@ -53,9 +53,9 @@ int main(void) { pthread_t pt; - if (pthread_create(&pt, NULL, &run, NULL) != 0) + if (pthread_create(&pt, 0, &run, 0) != 0) return 1; - if (pthread_join(pt, NULL) != 0) + if (pthread_join(pt, 0) != 0) return 1; return 0; diff --git a/libstdc++-v3/testsuite/18_support/exception/38732.cc b/libstdc++-v3/testsuite/18_support/exception/38732.cc index 43cf5b891ba..7c70f3a17b3 100644 --- a/libstdc++-v3/testsuite/18_support/exception/38732.cc +++ b/libstdc++-v3/testsuite/18_support/exception/38732.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2009 Free Software Foundation, Inc. +// Copyright (C) 2009, 2010 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 @@ -17,7 +17,6 @@ #include <typeinfo> #include <exception> -#include <cstddef> #include "unwind.h" #include <testsuite_hooks.h> @@ -67,21 +66,21 @@ void test01 () throw 0; } catch(...) { __cxa_exception *exc = __cxa_get_globals()->caughtExceptions; - VERIFY ( exc != NULL ); + VERIFY ( exc != 0 ); VERIFY ( typeid(int) == *exc->exceptionType ); } try { throw 0LL; } catch(...) { __cxa_exception *exc = __cxa_get_globals()->caughtExceptions; - VERIFY ( exc != NULL ); + VERIFY ( exc != 0 ); VERIFY ( typeid(long long int) == *exc->exceptionType ); } try { throw 0.0; } catch(...) { __cxa_exception *exc = __cxa_get_globals()->caughtExceptions; - VERIFY ( exc != NULL ); + VERIFY ( exc != 0 ); VERIFY ( typeid(double) == *exc->exceptionType ); } } diff --git a/libstdc++-v3/testsuite/18_support/exception_ptr/make_exception_ptr.cc b/libstdc++-v3/testsuite/18_support/exception_ptr/make_exception_ptr.cc index bc16ccdfa1b..4a7283f67de 100644 --- a/libstdc++-v3/testsuite/18_support/exception_ptr/make_exception_ptr.cc +++ b/libstdc++-v3/testsuite/18_support/exception_ptr/make_exception_ptr.cc @@ -21,7 +21,7 @@ #include <exception> #include <testsuite_hooks.h> -bool test01() +void test01() { bool test __attribute__((unused)) = true; diff --git a/libstdc++-v3/testsuite/18_support/exception_ptr/requirements.cc b/libstdc++-v3/testsuite/18_support/exception_ptr/requirements.cc new file mode 100644 index 00000000000..36e6375d9a9 --- /dev/null +++ b/libstdc++-v3/testsuite/18_support/exception_ptr/requirements.cc @@ -0,0 +1,60 @@ +// { dg-options "-std=gnu++0x" } +// { dg-require-atomic-builtins "" } + +// Copyright (C) 2010 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 <exception> +#include <testsuite_hooks.h> + +// test NullablePointer requirements +void test01() +{ + std::exception_ptr p1; // DefaultConstructible + std::exception_ptr p2(p1); // CopyConstructible + p1 = p2; // CopyAssignable + VERIFY( p1 == p2 ); // EqualityComparable + VERIFY( !bool(p1) ); // contextually convertible to bool + swap(p1, p2); // Swappable + + // Table 39 expressions + std::exception_ptr p3 = nullptr; + std::exception_ptr p4(nullptr); + VERIFY( std::exception_ptr() == nullptr ); + p4 = nullptr; + VERIFY( p4 == nullptr ); + VERIFY( nullptr == p4 ); + VERIFY( (p4 != nullptr) == !(p4 == nullptr) ); + VERIFY( (nullptr != p4) == !(p4 == nullptr) ); + + std::exception_ptr p5{}; // value initialized ... + VERIFY( p5 == nullptr ); // ... is equivalent to null +} + +// additional exception_ptr requirements +void test02() +{ + std::exception_ptr p1; + VERIFY( p1 == nullptr ); +} + +int main() +{ + test01(); + test02(); + return 0; +} diff --git a/libstdc++-v3/testsuite/18_support/exception_ptr/requirements_neg.cc b/libstdc++-v3/testsuite/18_support/exception_ptr/requirements_neg.cc new file mode 100644 index 00000000000..b897b506dfe --- /dev/null +++ b/libstdc++-v3/testsuite/18_support/exception_ptr/requirements_neg.cc @@ -0,0 +1,33 @@ +// { dg-do compile } +// { dg-options "-std=gnu++0x" } +// { dg-require-atomic-builtins "" } + +// Copyright (C) 2010 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 <exception> + +// test implicit conversions +void test01() +{ + std::exception_ptr p; + + int __attribute__((unused)) i = p; // { dg-error "cannot convert" } + bool __attribute__((unused)) b = p; // { dg-error "cannot convert" } + void* __attribute__((unused)) v = p; // { dg-error "cannot convert" } +} + diff --git a/libstdc++-v3/testsuite/18_support/headers/cstdbool/std_c++0x_neg.cc b/libstdc++-v3/testsuite/18_support/headers/cstdbool/std_c++0x_neg.cc index e764fbb4a99..264e1a3692b 100644 --- a/libstdc++-v3/testsuite/18_support/headers/cstdbool/std_c++0x_neg.cc +++ b/libstdc++-v3/testsuite/18_support/headers/cstdbool/std_c++0x_neg.cc @@ -18,7 +18,7 @@ // with this library; see the file COPYING3. If not see // <http://www.gnu.org/licenses/>. -#include <cstdbool> // { dg-excess-errors "In file included from" } +#include <cstdbool> // { dg-error "upcoming ISO" "" { target *-*-* } 31 } diff --git a/libstdc++-v3/testsuite/18_support/headers/cstdint/std_c++0x_neg.cc b/libstdc++-v3/testsuite/18_support/headers/cstdint/std_c++0x_neg.cc index 569dc678223..fdbb1dae515 100644 --- a/libstdc++-v3/testsuite/18_support/headers/cstdint/std_c++0x_neg.cc +++ b/libstdc++-v3/testsuite/18_support/headers/cstdint/std_c++0x_neg.cc @@ -18,7 +18,7 @@ // with this library; see the file COPYING3. If not see // <http://www.gnu.org/licenses/>. -#include <cstdint> // { dg-excess-errors "In file included from" } +#include <cstdint> // { dg-error "upcoming ISO" "" { target *-*-* } 31 } diff --git a/libstdc++-v3/testsuite/18_support/new_delete_placement.cc b/libstdc++-v3/testsuite/18_support/new_delete_placement.cc index ef845d3a391..866a89b79cb 100644 --- a/libstdc++-v3/testsuite/18_support/new_delete_placement.cc +++ b/libstdc++-v3/testsuite/18_support/new_delete_placement.cc @@ -1,6 +1,6 @@ // 2002-07-24 Benjamin Kosnik -// Copyright (C) 2002, 2004, 2009 Free Software Foundation +// Copyright (C) 2002, 2004, 2009, 2010 Free Software Foundation // // 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 @@ -27,7 +27,7 @@ void test01() { void* pc = new char; void* pa = new char[10]; - void* tmp = NULL; + void* tmp = 0; operator delete(pc, tmp); operator delete[](pa, tmp); } diff --git a/libstdc++-v3/testsuite/18_support/pthread_guard.cc b/libstdc++-v3/testsuite/18_support/pthread_guard.cc index 965328ebcba..5389316bab0 100644 --- a/libstdc++-v3/testsuite/18_support/pthread_guard.cc +++ b/libstdc++-v3/testsuite/18_support/pthread_guard.cc @@ -1,5 +1,5 @@ // -// Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc. +// Copyright (C) 2007, 2008, 2009, 2010 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 @@ -40,7 +40,7 @@ void* do_something (void *arg) { static int bar __attribute__((unused)) = get_bar (); - return NULL; + return 0; } int @@ -48,10 +48,10 @@ get_foo (void) { pthread_t new_thread; - if (pthread_create (&new_thread, NULL, do_something, NULL) != 0) + if (pthread_create (&new_thread, 0, do_something, 0) != 0) std::abort (); - if (pthread_join (new_thread, NULL) != 0) + if (pthread_join (new_thread, 0) != 0) std::abort (); return 1; diff --git a/libstdc++-v3/testsuite/19_diagnostics/error_category/cons/copy_neg.cc b/libstdc++-v3/testsuite/19_diagnostics/error_category/cons/copy_neg.cc index e09ab757b54..12258cac0e4 100644 --- a/libstdc++-v3/testsuite/19_diagnostics/error_category/cons/copy_neg.cc +++ b/libstdc++-v3/testsuite/19_diagnostics/error_category/cons/copy_neg.cc @@ -27,12 +27,10 @@ int main() bool test __attribute__((unused)) = true; __gnu_test::test_category c1; - __gnu_test::test_category c2(c1); + __gnu_test::test_category c2(c1); // { dg-error "deleted" } return 0; } -// { dg-error "deleted function" "" { target *-*-* } 72 } -// { dg-error "used here" "" { target *-*-* } 30 } -// { dg-error "first required here" "" { target *-*-* } 30 } -// { dg-excess-errors "copy constructor" } +// { dg-prune-output "testsuite_error" } +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/19_diagnostics/headers/system_error/std_c++0x_neg.cc b/libstdc++-v3/testsuite/19_diagnostics/headers/system_error/std_c++0x_neg.cc index e9294bfd2b5..46f046d6570 100644 --- a/libstdc++-v3/testsuite/19_diagnostics/headers/system_error/std_c++0x_neg.cc +++ b/libstdc++-v3/testsuite/19_diagnostics/headers/system_error/std_c++0x_neg.cc @@ -17,7 +17,7 @@ // with this library; see the file COPYING3. If not see // <http://www.gnu.org/licenses/>. -#include <system_error> // { dg-excess-errors "In file included from" } +#include <system_error> // { dg-error "upcoming ISO" "" { target *-*-* } 31 } diff --git a/libstdc++-v3/testsuite/19_diagnostics/logic_error/what-3.cc b/libstdc++-v3/testsuite/19_diagnostics/logic_error/what-3.cc index 13438f0fbe6..0656d42f068 100644 --- a/libstdc++-v3/testsuite/19_diagnostics/logic_error/what-3.cc +++ b/libstdc++-v3/testsuite/19_diagnostics/logic_error/what-3.cc @@ -1,6 +1,6 @@ // { dg-options "-std=gnu++0x" } -// Copyright (C) 2007, 2009 +// Copyright (C) 2007, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -32,6 +32,9 @@ void allocate_on_stack(void) __extension__ char array[num]; for (size_t i = 0; i < num; i++) array[i]=0; + // Suppress unused warnings. + for (size_t i = 0; i < num; i++) + array[i]=array[i]; } void test04() diff --git a/libstdc++-v3/testsuite/19_diagnostics/runtime_error/what-3.cc b/libstdc++-v3/testsuite/19_diagnostics/runtime_error/what-3.cc index d28fc8ea95e..b252cea3647 100644 --- a/libstdc++-v3/testsuite/19_diagnostics/runtime_error/what-3.cc +++ b/libstdc++-v3/testsuite/19_diagnostics/runtime_error/what-3.cc @@ -1,6 +1,6 @@ // 2001-02-26 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009 +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -34,6 +34,9 @@ void allocate_on_stack(void) __extension__ char array[num]; for (size_t i = 0; i < num; i++) array[i]=0; + // Suppress unused warnings. + for (size_t i = 0; i < num; i++) + array[i]=array[i]; } void test04() diff --git a/libstdc++-v3/testsuite/19_diagnostics/system_error/what-3.cc b/libstdc++-v3/testsuite/19_diagnostics/system_error/what-3.cc index 9dc7010988a..da4c80dfc1e 100644 --- a/libstdc++-v3/testsuite/19_diagnostics/system_error/what-3.cc +++ b/libstdc++-v3/testsuite/19_diagnostics/system_error/what-3.cc @@ -1,6 +1,6 @@ // { dg-options "-std=gnu++0x" } -// Copyright (C) 2007, 2009 +// Copyright (C) 2007, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -32,6 +32,9 @@ void allocate_on_stack(void) __extension__ char array[num]; for (size_t i = 0; i < num; i++) array[i]=0; + // Suppress unused warnings. + for (size_t i = 0; i < num; i++) + array[i]=array[i]; } void test04() diff --git a/libstdc++-v3/testsuite/20_util/clocks/1.cc b/libstdc++-v3/testsuite/20_util/clocks/1.cc index e808f45f755..ead20873c7b 100644 --- a/libstdc++-v3/testsuite/20_util/clocks/1.cc +++ b/libstdc++-v3/testsuite/20_util/clocks/1.cc @@ -1,7 +1,7 @@ // { dg-options "-std=gnu++0x" } // { dg-require-cstdint "" } -// Copyright (C) 2008, 2009 Free Software Foundation +// Copyright (C) 2008, 2009, 2010 Free Software Foundation // // 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 @@ -33,6 +33,7 @@ main() is_monotonic = is_monotonic; // suppress unused warning std::time_t t2 = system_clock::to_time_t(t1); system_clock::time_point t3 = system_clock::from_time_t(t2); + t3 = t3; // suppress unused warning return 0; } diff --git a/libstdc++-v3/testsuite/20_util/declval/requirements/1_neg.cc b/libstdc++-v3/testsuite/20_util/declval/requirements/1_neg.cc index c3b5022f77a..115c3236839 100644 --- a/libstdc++-v3/testsuite/20_util/declval/requirements/1_neg.cc +++ b/libstdc++-v3/testsuite/20_util/declval/requirements/1_neg.cc @@ -19,13 +19,11 @@ // with this library; see the file COPYING3. If not see // <http://www.gnu.org/licenses/>. -// { dg-error "static assertion failed" "" { target *-*-* } 654 } -// { dg-error "instantiated from here" "" { target *-*-* } 30 } -// { dg-excess-errors "In function" } +// { dg-error "static assertion failed" "" { target *-*-* } 676 } #include <utility> void test01() { - std::declval<int>(); + std::declval<int>(); // { dg-error "instantiated from here" } } diff --git a/libstdc++-v3/testsuite/20_util/duration/requirements/typedefs_neg1.cc b/libstdc++-v3/testsuite/20_util/duration/requirements/typedefs_neg1.cc index 297b5cb690d..98a35f10539 100644 --- a/libstdc++-v3/testsuite/20_util/duration/requirements/typedefs_neg1.cc +++ b/libstdc++-v3/testsuite/20_util/duration/requirements/typedefs_neg1.cc @@ -33,4 +33,3 @@ void test01() // { dg-error "rep cannot be a duration" "" { target *-*-* } 203 } // { dg-error "instantiated from here" "" { target *-*-* } 31 } -// { dg-excess-errors "In instantiation of" } diff --git a/libstdc++-v3/testsuite/20_util/duration/requirements/typedefs_neg3.cc b/libstdc++-v3/testsuite/20_util/duration/requirements/typedefs_neg3.cc index b4224401d47..86f349319f0 100644 --- a/libstdc++-v3/testsuite/20_util/duration/requirements/typedefs_neg3.cc +++ b/libstdc++-v3/testsuite/20_util/duration/requirements/typedefs_neg3.cc @@ -35,4 +35,3 @@ void test01() // { dg-error "period must be positive" "" { target *-*-* } 206 } // { dg-error "instantiated from here" "" { target *-*-* } 33 } -// { dg-excess-errors "In instantiation of" } diff --git a/libstdc++-v3/testsuite/20_util/function/cmp/cmp_neg.cc b/libstdc++-v3/testsuite/20_util/function/cmp/cmp_neg.cc index a196ef64e2e..bb3c25d1cd9 100644 --- a/libstdc++-v3/testsuite/20_util/function/cmp/cmp_neg.cc +++ b/libstdc++-v3/testsuite/20_util/function/cmp/cmp_neg.cc @@ -18,15 +18,16 @@ // with this library; see the file COPYING3. If not see // <http://www.gnu.org/licenses/>. +// { dg-prune-output "include" } + #include <functional> void test01() { std::function<void()> f1; std::function<void()> f2; - f1 == f2; // { dg-error "here" } - f1 != f2; // { dg-error "here" } - // { dg-excess-errors "" } + f1 == f2; // { dg-error "deleted" } + f1 != f2; // { dg-error "deleted" } } int main() diff --git a/libstdc++-v3/testsuite/20_util/has_nothrow_copy_assign/requirements/explicit_instantiation.cc b/libstdc++-v3/testsuite/20_util/has_nothrow_copy_assign/requirements/explicit_instantiation.cc new file mode 100644 index 00000000000..0a4a6224b8a --- /dev/null +++ b/libstdc++-v3/testsuite/20_util/has_nothrow_copy_assign/requirements/explicit_instantiation.cc @@ -0,0 +1,30 @@ +// { dg-options "-std=gnu++0x" } +// { dg-do compile } +// 2010-06-08 Paolo Carlini <paolo.carlini@oracle.com> + +// Copyright (C) 2010 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/>. + +// NB: This file is for testing type_traits with NO OTHER INCLUDES. + +#include <type_traits> + +namespace std +{ + typedef short test_type; + template struct has_nothrow_copy_assign<test_type>; +} diff --git a/libstdc++-v3/testsuite/20_util/has_nothrow_copy_assign/requirements/typedefs.cc b/libstdc++-v3/testsuite/20_util/has_nothrow_copy_assign/requirements/typedefs.cc new file mode 100644 index 00000000000..3781d1f9bec --- /dev/null +++ b/libstdc++-v3/testsuite/20_util/has_nothrow_copy_assign/requirements/typedefs.cc @@ -0,0 +1,36 @@ +// { dg-options "-std=gnu++0x" } +// 2010-06-08 Paolo Carlini <paolo.carlini@oracle.com> +// +// Copyright (C) 2010 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/>. + +// +// NB: This file is for testing type_traits with NO OTHER INCLUDES. + +#include <type_traits> + +// { dg-do compile } + +void test01() +{ + // Check for required typedefs + typedef std::has_nothrow_copy_assign<int> test_type; + typedef test_type::value_type value_type; + typedef test_type::type type; + typedef test_type::type::value_type type_value_type; + typedef test_type::type::type type_type; +} diff --git a/libstdc++-v3/testsuite/20_util/has_nothrow_copy_assign/value.cc b/libstdc++-v3/testsuite/20_util/has_nothrow_copy_assign/value.cc new file mode 100644 index 00000000000..0201c9cb91d --- /dev/null +++ b/libstdc++-v3/testsuite/20_util/has_nothrow_copy_assign/value.cc @@ -0,0 +1,57 @@ +// { dg-options "-std=gnu++0x" } +// 2010-06-08 Paolo Carlini <paolo.carlini@oracle.com> +// +// Copyright (C) 2010 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 <type_traits> +#include <testsuite_hooks.h> +#include <testsuite_tr1.h> + +void test01() +{ + bool test __attribute__((unused)) = true; + using std::has_nothrow_copy_assign; + using namespace __gnu_test; + + VERIFY( (test_property<has_nothrow_copy_assign, int>(true)) ); + VERIFY( (test_property<has_nothrow_copy_assign, float>(true)) ); + VERIFY( (test_property<has_nothrow_copy_assign, EnumType>(true)) ); + VERIFY( (test_property<has_nothrow_copy_assign, int*>(true)) ); + VERIFY( (test_property<has_nothrow_copy_assign, int(*)(int)>(true)) ); + VERIFY( (test_property<has_nothrow_copy_assign, int (ClassType::*)>(true)) ); + VERIFY( (test_property<has_nothrow_copy_assign, + int (ClassType::*) (int)>(true)) ); + VERIFY( (test_property<has_nothrow_copy_assign, int[2]>(true)) ); + VERIFY( (test_property<has_nothrow_copy_assign, float[][3]>(true)) ); + VERIFY( (test_property<has_nothrow_copy_assign, EnumType[2][3][4]>(true)) ); + VERIFY( (test_property<has_nothrow_copy_assign, int*[3]>(true)) ); + VERIFY( (test_property<has_nothrow_copy_assign, int(*[][2])(int)>(true)) ); + VERIFY( (test_property<has_nothrow_copy_assign, + int (ClassType::*[2][3])>(true)) ); + VERIFY( (test_property<has_nothrow_copy_assign, + int (ClassType::*[][2][3]) (int)>(true)) ); + + // Negative tests. + VERIFY( (test_property<has_nothrow_copy_assign, void>(false)) ); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/20_util/has_trivial_copy_assign/requirements/explicit_instantiation.cc b/libstdc++-v3/testsuite/20_util/has_trivial_copy_assign/requirements/explicit_instantiation.cc new file mode 100644 index 00000000000..6ec5c5a427e --- /dev/null +++ b/libstdc++-v3/testsuite/20_util/has_trivial_copy_assign/requirements/explicit_instantiation.cc @@ -0,0 +1,30 @@ +// { dg-options "-std=gnu++0x" } +// { dg-do compile } +// 2010-06-08 Paolo Carlini <paolo.carlini@oracle.com> + +// Copyright (C) 2010 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/>. + +// NB: This file is for testing type_traits with NO OTHER INCLUDES. + +#include <type_traits> + +namespace std +{ + typedef short test_type; + template struct has_trivial_copy_assign<test_type>; +} diff --git a/libstdc++-v3/testsuite/20_util/has_trivial_copy_assign/requirements/typedefs.cc b/libstdc++-v3/testsuite/20_util/has_trivial_copy_assign/requirements/typedefs.cc new file mode 100644 index 00000000000..1c5f0fe7ab0 --- /dev/null +++ b/libstdc++-v3/testsuite/20_util/has_trivial_copy_assign/requirements/typedefs.cc @@ -0,0 +1,36 @@ +// { dg-options "-std=gnu++0x" } +// 2010-06-08 Paolo Carlini <paolo.carlini@oracle.com> +// +// Copyright (C) 2010 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/>. + +// +// NB: This file is for testing type_traits with NO OTHER INCLUDES. + +#include <type_traits> + +// { dg-do compile } + +void test01() +{ + // Check for required typedefs + typedef std::has_trivial_copy_assign<int> test_type; + typedef test_type::value_type value_type; + typedef test_type::type type; + typedef test_type::type::value_type type_value_type; + typedef test_type::type::type type_type; +} diff --git a/libstdc++-v3/testsuite/20_util/has_trivial_copy_assign/value.cc b/libstdc++-v3/testsuite/20_util/has_trivial_copy_assign/value.cc new file mode 100644 index 00000000000..7663a688a68 --- /dev/null +++ b/libstdc++-v3/testsuite/20_util/has_trivial_copy_assign/value.cc @@ -0,0 +1,57 @@ +// { dg-options "-std=gnu++0x" } +// 2010-06-08 Paolo Carlini <paolo.carlini@oracle.com> +// +// Copyright (C) 2010 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 <type_traits> +#include <testsuite_hooks.h> +#include <testsuite_tr1.h> + +void test01() +{ + bool test __attribute__((unused)) = true; + using std::has_trivial_copy_assign; + using namespace __gnu_test; + + VERIFY( (test_property<has_trivial_copy_assign, int>(true)) ); + VERIFY( (test_property<has_trivial_copy_assign, float>(true)) ); + VERIFY( (test_property<has_trivial_copy_assign, EnumType>(true)) ); + VERIFY( (test_property<has_trivial_copy_assign, int*>(true)) ); + VERIFY( (test_property<has_trivial_copy_assign, int(*)(int)>(true)) ); + VERIFY( (test_property<has_trivial_copy_assign, int (ClassType::*)>(true)) ); + VERIFY( (test_property<has_trivial_copy_assign, + int (ClassType::*) (int)>(true)) ); + VERIFY( (test_property<has_trivial_copy_assign, int[2]>(true)) ); + VERIFY( (test_property<has_trivial_copy_assign, float[][3]>(true)) ); + VERIFY( (test_property<has_trivial_copy_assign, EnumType[2][3][4]>(true)) ); + VERIFY( (test_property<has_trivial_copy_assign, int*[3]>(true)) ); + VERIFY( (test_property<has_trivial_copy_assign, int(*[][2])(int)>(true)) ); + VERIFY( (test_property<has_trivial_copy_assign, + int (ClassType::*[2][3])>(true)) ); + VERIFY( (test_property<has_trivial_copy_assign, + int (ClassType::*[][2][3]) (int)>(true)) ); + + // Negative tests. + VERIFY( (test_property<has_trivial_copy_assign, void>(false)) ); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/20_util/headers/type_traits/std_c++0x_neg.cc b/libstdc++-v3/testsuite/20_util/headers/type_traits/std_c++0x_neg.cc index 7d83fd9f994..e596b6ac6ee 100644 --- a/libstdc++-v3/testsuite/20_util/headers/type_traits/std_c++0x_neg.cc +++ b/libstdc++-v3/testsuite/20_util/headers/type_traits/std_c++0x_neg.cc @@ -18,7 +18,7 @@ // with this library; see the file COPYING3. If not see // <http://www.gnu.org/licenses/>. -#include <type_traits> // { dg-excess-errors "In file included from" } +#include <type_traits> // { dg-error "upcoming ISO" "" { target *-*-* } 31 } diff --git a/libstdc++-v3/testsuite/20_util/is_nothrow_constructible/requirements/explicit_instantiation.cc b/libstdc++-v3/testsuite/20_util/is_nothrow_constructible/requirements/explicit_instantiation.cc new file mode 100644 index 00000000000..37ba9eb8bc1 --- /dev/null +++ b/libstdc++-v3/testsuite/20_util/is_nothrow_constructible/requirements/explicit_instantiation.cc @@ -0,0 +1,31 @@ +// { dg-options "-std=gnu++0x" } +// { dg-do compile } + +// 2010-06-09 Paolo Carlini <paolo.carlini@oracle.com> + +// Copyright (C) 2010 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/>. + +// NB: This file is for testing type_traits with NO OTHER INCLUDES. + +#include <type_traits> + +namespace std +{ + typedef short test_type; + template struct is_nothrow_constructible<test_type, test_type>; +} diff --git a/libstdc++-v3/testsuite/20_util/is_nothrow_constructible/requirements/typedefs.cc b/libstdc++-v3/testsuite/20_util/is_nothrow_constructible/requirements/typedefs.cc new file mode 100644 index 00000000000..53a64a78f3f --- /dev/null +++ b/libstdc++-v3/testsuite/20_util/is_nothrow_constructible/requirements/typedefs.cc @@ -0,0 +1,36 @@ +// { dg-options "-std=gnu++0x" } +// { dg-do compile } + +// 2010-06-09 Paolo Carlini <paolo.carlini@oracle.com> +// +// Copyright (C) 2010 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/>. + +// +// NB: This file is for testing type_traits with NO OTHER INCLUDES. + +#include <type_traits> + +void test01() +{ + // Check for required typedefs + typedef std::is_nothrow_constructible<int, int> test_type; + typedef test_type::value_type value_type; + typedef test_type::type type; + typedef test_type::type::value_type type_value_type; + typedef test_type::type::type type_type; +} diff --git a/libstdc++-v3/testsuite/20_util/is_nothrow_constructible/value.cc b/libstdc++-v3/testsuite/20_util/is_nothrow_constructible/value.cc new file mode 100644 index 00000000000..b3246fad119 --- /dev/null +++ b/libstdc++-v3/testsuite/20_util/is_nothrow_constructible/value.cc @@ -0,0 +1,78 @@ +// { dg-options "-std=gnu++0x" } + +// 2010-06-09 Paolo Carlini <paolo.carlini@oracle.com> + +// Copyright (C) 2010 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 <type_traits> +#include <testsuite_hooks.h> +#include <testsuite_tr1.h> + +void test01() +{ + bool test __attribute__((unused)) = true; + using std::is_nothrow_constructible; + using namespace __gnu_test; + + // Positive tests. + VERIFY( (test_property<is_nothrow_constructible, NoexceptExplicitClass, + double&>(true)) ); + VERIFY( (test_property<is_nothrow_constructible, NoexceptExplicitClass, + int&>(true)) ); + VERIFY( (test_property<is_nothrow_constructible, NoexceptExplicitClass, + double&, int&, double&>(true)) ); + VERIFY( (test_property<is_nothrow_constructible, NothrowExplicitClass, + double&>(true)) ); + VERIFY( (test_property<is_nothrow_constructible, NothrowExplicitClass, + int&>(true)) ); + VERIFY( (test_property<is_nothrow_constructible, NothrowExplicitClass, + double&, int&, double&>(true)) ); + + // Negative tests. + VERIFY( (test_property<is_nothrow_constructible, NoexceptExplicitClass, + void*>(false)) ); + VERIFY( (test_property<is_nothrow_constructible, NoexceptExplicitClass> + (false)) ); + VERIFY( (test_property<is_nothrow_constructible, NoexceptExplicitClass, + int, double>(false)) ); + VERIFY( (test_property<is_nothrow_constructible, NothrowExplicitClass, + void*>(false)) ); + VERIFY( (test_property<is_nothrow_constructible, NothrowExplicitClass> + (false)) ); + VERIFY( (test_property<is_nothrow_constructible, NothrowExplicitClass, + int, double>(false)) ); + + VERIFY( (test_property<is_nothrow_constructible, ExceptExplicitClass, + double&>(false)) ); + VERIFY( (test_property<is_nothrow_constructible, ExceptExplicitClass, + int&>(false)) ); + VERIFY( (test_property<is_nothrow_constructible, ExceptExplicitClass, + double&, int&, double&>(false)) ); + VERIFY( (test_property<is_nothrow_constructible, ThrowExplicitClass, + double&>(false)) ); + VERIFY( (test_property<is_nothrow_constructible, ThrowExplicitClass, + int&>(false)) ); + VERIFY( (test_property<is_nothrow_constructible, ThrowExplicitClass, + double&, int&, double&>(false)) ); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs_neg.cc b/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs_neg.cc index 7a8ad661d85..8953dac16d4 100644 --- a/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs_neg.cc +++ b/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs_neg.cc @@ -48,8 +48,5 @@ void test01() // { dg-error "instantiated from here" "" { target *-*-* } 40 } // { dg-error "instantiated from here" "" { target *-*-* } 42 } -// { dg-error "invalid use of incomplete type" "" { target *-*-* } 617 } -// { dg-error "declaration of" "" { target *-*-* } 581 } - -// { dg-excess-errors "At global scope" } -// { dg-excess-errors "In instantiation of" } +// { dg-error "invalid use of incomplete type" "" { target *-*-* } 639 } +// { dg-error "declaration of" "" { target *-*-* } 603 } diff --git a/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc b/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc index 23bca2bffa2..e06005dca6c 100644 --- a/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc +++ b/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc @@ -48,8 +48,5 @@ void test01() // { dg-error "instantiated from here" "" { target *-*-* } 40 } // { dg-error "instantiated from here" "" { target *-*-* } 42 } -// { dg-error "invalid use of incomplete type" "" { target *-*-* } 540 } -// { dg-error "declaration of" "" { target *-*-* } 504 } - -// { dg-excess-errors "At global scope" } -// { dg-excess-errors "In instantiation of" } +// { dg-error "invalid use of incomplete type" "" { target *-*-* } 562 } +// { dg-error "declaration of" "" { target *-*-* } 526 } diff --git a/libstdc++-v3/testsuite/20_util/pair/44487.cc b/libstdc++-v3/testsuite/20_util/pair/44487.cc new file mode 100644 index 00000000000..833d9864534 --- /dev/null +++ b/libstdc++-v3/testsuite/20_util/pair/44487.cc @@ -0,0 +1,51 @@ +// { dg-options "-std=gnu++0x" } +// { dg-do compile } + +// Copyright (C) 2010 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 <utility> + +int x, y; + +std::pair<int&, int&> +foo1() +{ + std::pair<int&, int&> blah(x, y); + return blah; +} + +std::pair<int&, int&> +foo2() +{ + const std::pair<int&, int&> blah(x, y); + return blah; +} + +std::pair<int&, int&> +foo3() +{ + std::pair<int&, int&> blah(x, y); + return std::pair<int&, int&>(std::move(blah)); +} + +std::pair<int&, int&> +foo4() +{ + const std::pair<int&, int&> blah(x, y); + return std::pair<int&, int&>(std::move(blah)); +} diff --git a/libstdc++-v3/testsuite/20_util/ratio/cons/cons_overflow_neg.cc b/libstdc++-v3/testsuite/20_util/ratio/cons/cons_overflow_neg.cc index 03c2c1f582d..eee2644035c 100644 --- a/libstdc++-v3/testsuite/20_util/ratio/cons/cons_overflow_neg.cc +++ b/libstdc++-v3/testsuite/20_util/ratio/cons/cons_overflow_neg.cc @@ -51,4 +51,3 @@ test04() // { dg-error "instantiated from here" "" { target *-*-* } 46 } // { dg-error "denominator cannot be zero" "" { target *-*-* } 153 } // { dg-error "out of range" "" { target *-*-* } 154 } -// { dg-excess-errors "In instantiation of" } diff --git a/libstdc++-v3/testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc b/libstdc++-v3/testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc index 4d9d1a66657..e0d09dee900 100644 --- a/libstdc++-v3/testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc +++ b/libstdc++-v3/testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc @@ -20,7 +20,7 @@ // 20.6.6.2 Template class shared_ptr [util.smartptr.shared] -#include <memory> // { dg-excess-errors "In file included from" } +#include <memory> #include <testsuite_hooks.h> struct A { }; diff --git a/libstdc++-v3/testsuite/20_util/shared_ptr/cons/43820.cc b/libstdc++-v3/testsuite/20_util/shared_ptr/cons/43820.cc index 63500799838..09be153d4c6 100644 --- a/libstdc++-v3/testsuite/20_util/shared_ptr/cons/43820.cc +++ b/libstdc++-v3/testsuite/20_util/shared_ptr/cons/43820.cc @@ -32,11 +32,9 @@ void test01() { X* px = 0; std::shared_ptr<X> p1(px); // { dg-error "here" } - // { dg-error "incomplete" "" { target *-*-* } 549 } + // { dg-error "incomplete" "" { target *-*-* } 566 } std::shared_ptr<X> p9(ap()); // { dg-error "here" } - // { dg-error "incomplete" "" { target *-*-* } 630 } + // { dg-error "incomplete" "" { target *-*-* } 657 } } - -// { dg-excess-errors "" } diff --git a/libstdc++-v3/testsuite/20_util/shared_ptr/cons/nullptr.cc b/libstdc++-v3/testsuite/20_util/shared_ptr/cons/nullptr.cc new file mode 100644 index 00000000000..82acaed3615 --- /dev/null +++ b/libstdc++-v3/testsuite/20_util/shared_ptr/cons/nullptr.cc @@ -0,0 +1,93 @@ +// { dg-options "-std=gnu++0x" } + +// Copyright (C) 2010 Free Software Foundation +// +// 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/>. + +// 20.9.11.2 Class template shared_ptr [util.smartptr.shared] + +#include <memory> +#include <cstddef> +#include <testsuite_hooks.h> +#include <testsuite_allocator.h> + +// 20.9.11.2.1 shared_ptr constructors [util.smartptr.shared.const] + +// Construction from nullptr + +struct deleter +{ + int count; + deleter() : count(0) { } + void operator()(std::nullptr_t) { ++count; } + void operator()(int*) const { throw "wrong type passed to deleter"; } +}; + +void +test01() +{ + bool test __attribute__((unused)) = true; + + std::shared_ptr<int> p = nullptr; + VERIFY( p.get() == nullptr ); + VERIFY( p.use_count() == 0 ); + +} + +void +test02() +{ + bool test __attribute__((unused)) = true; + + deleter d; + std::shared_ptr<int> p(nullptr, std::ref(d)); + VERIFY( p.get() == nullptr ); + VERIFY( p.use_count() == 1 ); + + p = nullptr; + VERIFY( p.use_count() == 0 ); + VERIFY( d.count == 1 ); +} + + +void +test03() +{ + bool test __attribute__((unused)) = true; + + deleter d; + __gnu_test::tracker_allocator<int> a; + std::shared_ptr<int> p(nullptr, std::ref(d), a); + VERIFY( p.get() == nullptr ); + VERIFY( p.use_count() == 1 ); + + p = nullptr; + VERIFY( p.use_count() == 0 ); + VERIFY( d.count == 1 ); + + typedef __gnu_test::tracker_allocator_counter c; + VERIFY( c::get_destruct_count() == c::get_construct_count() ); + VERIFY( c::get_deallocation_count() == c::get_allocation_count() ); +} + +int +main() +{ + test01(); + test02(); + test03(); + return 0; +} diff --git a/libstdc++-v3/testsuite/20_util/shared_ptr/hash/1.cc b/libstdc++-v3/testsuite/20_util/shared_ptr/hash/1.cc new file mode 100644 index 00000000000..93f4739d782 --- /dev/null +++ b/libstdc++-v3/testsuite/20_util/shared_ptr/hash/1.cc @@ -0,0 +1,48 @@ +// { dg-options "-std=gnu++0x" } + +// 2010-06-11 Paolo Carlini <paolo.carlini@oracle.com> + +// Copyright (C) 2010 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 <memory> +#include <testsuite_hooks.h> + +void test01() +{ + bool test __attribute__((unused)) = true; + + struct T { }; + + std::shared_ptr<T> s0(new T); + std::hash<std::shared_ptr<T>> hs0; + std::hash<T*> hp0; + + VERIFY( hs0(s0) == hp0(s0.get()) ); + + std::__shared_ptr<T> s1(new T); + std::hash<std::__shared_ptr<T>> hs1; + std::hash<T*> hp1; + + VERIFY( hs1(s1) == hp1(s1.get()) ); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/20_util/tuple/cons/44487.cc b/libstdc++-v3/testsuite/20_util/tuple/cons/44487.cc new file mode 100644 index 00000000000..dade58de8bc --- /dev/null +++ b/libstdc++-v3/testsuite/20_util/tuple/cons/44487.cc @@ -0,0 +1,51 @@ +// { dg-options "-std=gnu++0x" } +// { dg-do compile } + +// Copyright (C) 2010 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> + +int x, y; + +std::tuple<int&, int&> +foo1() +{ + std::pair<int&, int&> blah(x, y); + return blah; +} + +std::tuple<int&, int&> +foo2() +{ + const std::pair<int&, int&> blah(x, y); + return blah; +} + +std::tuple<int&, int&> +foo3() +{ + std::pair<int&, int&> blah(x, y); + return std::tuple<int&, int&>(std::move(blah)); +} + +std::tuple<int&, int&> +foo4() +{ + const std::pair<int&, int&> blah(x, y); + return std::tuple<int&, int&>(std::move(blah)); +} diff --git a/libstdc++-v3/testsuite/20_util/unique_ptr/assign/assign_neg.cc b/libstdc++-v3/testsuite/20_util/unique_ptr/assign/assign_neg.cc index 4aa93b91d91..95c1d5dc5ba 100644 --- a/libstdc++-v3/testsuite/20_util/unique_ptr/assign/assign_neg.cc +++ b/libstdc++-v3/testsuite/20_util/unique_ptr/assign/assign_neg.cc @@ -39,24 +39,14 @@ void test02() { std::unique_ptr<int[]> p1(new int(420)); - std::unique_ptr<int[]> p2 = p1; + std::unique_ptr<int[]> p2 = p1; // { dg-error "deleted" } } void test03() { - std::unique_ptr<int[2]> p1(new int[3]); - std::unique_ptr<int[2]> p2 = p1; + std::unique_ptr<int[2]> p1(new int[3]); // { dg-error "no match" } + std::unique_ptr<int[2]> p2 = p1; // { dg-error "deleted" } } -// { dg-error "deleted function" "" { target *-*-* } 357 } -// { dg-error "used here" "" { target *-*-* } 42 } -// { dg-error "no matching" "" { target *-*-* } 48 } -// { dg-warning "note" "" { target *-*-* } 130 } -// { dg-warning "note" "" { target *-*-* } 134 } -// { dg-warning "note" "" { target *-*-* } 123 } -// { dg-warning "note" "" { target *-*-* } 118 } -// { dg-warning "note" "" { target *-*-* } 113 } -// { dg-warning "note" "" { target *-*-* } 107 } -// { dg-error "deleted function" "" { target *-*-* } 222 } -// { dg-error "used here" "" { target *-*-* } 49 } +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/20_util/unique_ptr/assign/nullptr.cc b/libstdc++-v3/testsuite/20_util/unique_ptr/assign/nullptr.cc new file mode 100644 index 00000000000..6f067ee4d6b --- /dev/null +++ b/libstdc++-v3/testsuite/20_util/unique_ptr/assign/nullptr.cc @@ -0,0 +1,54 @@ +// { dg-options "-std=gnu++0x" } + +// Copyright (C) 2010 Free Software Foundation +// +// 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/>. + +// 20.9.10 Class template unique_ptr [unique.ptr] + +#include <memory> +#include <testsuite_hooks.h> + +struct A { }; + +void +test01() +{ + bool test __attribute__((unused)) = true; + + std::unique_ptr<A> p(new A); + p = nullptr; + + VERIFY( p.get() == nullptr ); +} + +void +test02() +{ + bool test __attribute__((unused)) = true; + + std::unique_ptr<A[]> p(new A[2]); + p = nullptr; + + VERIFY( p.get() == nullptr ); +} + +int main() +{ + test01(); + test02(); + return 0; +} diff --git a/libstdc++-v3/testsuite/20_util/unique_ptr/cons/nullptr.cc b/libstdc++-v3/testsuite/20_util/unique_ptr/cons/nullptr.cc new file mode 100644 index 00000000000..1f515ea53cc --- /dev/null +++ b/libstdc++-v3/testsuite/20_util/unique_ptr/cons/nullptr.cc @@ -0,0 +1,52 @@ +// { dg-options "-std=gnu++0x" } + +// Copyright (C) 2010 Free Software Foundation +// +// 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/>. + +// 20.9.10 Class template unique_ptr [unique.ptr] + +#include <memory> +#include <testsuite_hooks.h> + +struct A { }; + +void +test01() +{ + bool test __attribute__((unused)) = true; + + std::unique_ptr<A> p = nullptr; + + VERIFY( p.get() == nullptr ); +} + +void +test02() +{ + bool test __attribute__((unused)) = true; + + std::unique_ptr<A[]> p = nullptr; + + VERIFY( p.get() == nullptr ); +} + +int main() +{ + test01(); + test02(); + return 0; +} diff --git a/libstdc++-v3/testsuite/20_util/unique_ptr/cons/pointer_array_convertible.cc b/libstdc++-v3/testsuite/20_util/unique_ptr/cons/pointer_array_convertible.cc index 7e0f30741f9..2a4a89b4037 100644 --- a/libstdc++-v3/testsuite/20_util/unique_ptr/cons/pointer_array_convertible.cc +++ b/libstdc++-v3/testsuite/20_util/unique_ptr/cons/pointer_array_convertible.cc @@ -37,4 +37,5 @@ test01() { std::unique_ptr<B[]> B_from_A(new A[3]); //{ dg-error "invalid conversion from" } } -//{ dg-excess-errors "initialization" } + +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/20_util/unique_ptr/hash/1.cc b/libstdc++-v3/testsuite/20_util/unique_ptr/hash/1.cc new file mode 100644 index 00000000000..53ece26ecff --- /dev/null +++ b/libstdc++-v3/testsuite/20_util/unique_ptr/hash/1.cc @@ -0,0 +1,48 @@ +// { dg-options "-std=gnu++0x" } + +// 2010-06-11 Paolo Carlini <paolo.carlini@oracle.com> + +// Copyright (C) 2010 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 <memory> +#include <testsuite_hooks.h> + +void test01() +{ + bool test __attribute__((unused)) = true; + + struct T { }; + + std::unique_ptr<T> u0(new T); + std::hash<std::unique_ptr<T>> hu0; + std::hash<typename std::unique_ptr<T>::pointer> hp0; + + VERIFY( hu0(u0) == hp0(u0.get()) ); + + std::unique_ptr<T[]> u1(new T[10]); + std::hash<std::unique_ptr<T[]>> hu1; + std::hash<typename std::unique_ptr<T[]>::pointer> hp1; + + VERIFY( hu1(u1) == hp1(u1.get()) ); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/20_util/unique_ptr/modifiers/reset_neg.cc b/libstdc++-v3/testsuite/20_util/unique_ptr/modifiers/reset_neg.cc index 3b389b9da68..29bb57d22b2 100644 --- a/libstdc++-v3/testsuite/20_util/unique_ptr/modifiers/reset_neg.cc +++ b/libstdc++-v3/testsuite/20_util/unique_ptr/modifiers/reset_neg.cc @@ -32,8 +32,7 @@ struct B : A void test01() { std::unique_ptr<B[]> up; - up.reset(new A[3]); + up.reset(new A[3]); // { dg-error "deleted" } } -// { dg-error "used here" "" { target *-*-* } 35 } -// { dg-error "deleted function" "" { target *-*-* } 347 } +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/20_util/weak_ptr/comparison/cmp_neg.cc b/libstdc++-v3/testsuite/20_util/weak_ptr/comparison/cmp_neg.cc index cbe5f9fdbe8..db7907607c3 100644 --- a/libstdc++-v3/testsuite/20_util/weak_ptr/comparison/cmp_neg.cc +++ b/libstdc++-v3/testsuite/20_util/weak_ptr/comparison/cmp_neg.cc @@ -41,11 +41,11 @@ main() return 0; } -// { dg-warning "note" "" { target *-*-* } 281 } -// { dg-warning "note" "" { target *-*-* } 407 } -// { dg-warning "note" "" { target *-*-* } 831 } -// { dg-warning "note" "" { target *-*-* } 511 } +// { dg-warning "note" "" { target *-*-* } 324 } +// { dg-warning "note" "" { target *-*-* } 423 } +// { dg-warning "note" "" { target *-*-* } 862 } +// { dg-warning "note" "" { target *-*-* } 510 } // { dg-warning "note" "" { target *-*-* } 1005 } // { dg-warning "note" "" { target *-*-* } 340 } // { dg-warning "note" "" { target *-*-* } 290 } -// { dg-warning "note" "" { target *-*-* } 201 } +// { dg-warning "note" "" { target *-*-* } 197 } diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/cons/char/5.cc b/libstdc++-v3/testsuite/21_strings/basic_string/cons/char/5.cc index 73839d26c22..5652478f42b 100644 --- a/libstdc++-v3/testsuite/21_strings/basic_string/cons/char/5.cc +++ b/libstdc++-v3/testsuite/21_strings/basic_string/cons/char/5.cc @@ -1,6 +1,6 @@ // 1999-06-04 bkoz -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2009 +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -33,7 +33,7 @@ void test05() std::string empty2(empty.begin(), empty.end()); // libstdc++/8716 (same underlying situation, same fix) - char const * s = NULL; + char const * s = 0; std::string zero_length_built_with_NULL(s,0); } diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/cons/wchar_t/5.cc b/libstdc++-v3/testsuite/21_strings/basic_string/cons/wchar_t/5.cc index 4fe58b6aced..e72377de66a 100644 --- a/libstdc++-v3/testsuite/21_strings/basic_string/cons/wchar_t/5.cc +++ b/libstdc++-v3/testsuite/21_strings/basic_string/cons/wchar_t/5.cc @@ -1,6 +1,6 @@ // 1999-06-04 bkoz -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2009 +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -33,7 +33,7 @@ void test05() std::wstring empty2(empty.begin(), empty.end()); // libstdc++/8716 (same underlying situation, same fix) - wchar_t const * s = NULL; + wchar_t const * s = 0; std::wstring zero_length_built_with_NULL(s,0); } diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/operations/char/1.cc b/libstdc++-v3/testsuite/21_strings/basic_string/operations/char/1.cc index c39f6b416f7..de0fe168e98 100644 --- a/libstdc++-v3/testsuite/21_strings/basic_string/operations/char/1.cc +++ b/libstdc++-v3/testsuite/21_strings/basic_string/operations/char/1.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2004, 2009 Free Software Foundation, Inc. +// Copyright (C) 2004, 2009, 2010 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 @@ -29,7 +29,7 @@ int test01(void) // data() for size == 0 is non-NULL. VERIFY( empty.size() == 0 ); const std::string::value_type* p = empty.data(); - VERIFY( p != NULL ); + VERIFY( p ); return 0; } diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/operations/wchar_t/1.cc b/libstdc++-v3/testsuite/21_strings/basic_string/operations/wchar_t/1.cc index 1ddde927227..a57464aa5b5 100644 --- a/libstdc++-v3/testsuite/21_strings/basic_string/operations/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/21_strings/basic_string/operations/wchar_t/1.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2004, 2009 Free Software Foundation, Inc. +// Copyright (C) 2004, 2009, 2010 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 @@ -29,7 +29,7 @@ int test01(void) // data() for size == 0 is non-NULL. VERIFY( empty.size() == 0 ); const std::wstring::value_type* p = empty.data(); - VERIFY( p != NULL ); + VERIFY( p ); return 0; } diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/pthread4.cc b/libstdc++-v3/testsuite/21_strings/basic_string/pthread4.cc index fb48898d696..b3dc9b20e7c 100644 --- a/libstdc++-v3/testsuite/21_strings/basic_string/pthread4.cc +++ b/libstdc++-v3/testsuite/21_strings/basic_string/pthread4.cc @@ -2,7 +2,7 @@ // Adapted from http://gcc.gnu.org/ml/gcc-bugs/2002-01/msg00679.html // which was adapted from pthread1.cc by Mike Lu <MLu@dynamicsoft.com> // -// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009 +// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -95,12 +95,12 @@ main (void) #endif pthread_t prod; - pthread_create (&prod, NULL, produce, NULL); + pthread_create (&prod, 0, produce, 0); pthread_t cons; - pthread_create (&cons, NULL, consume, NULL); + pthread_create (&cons, 0, consume, 0); - pthread_join (prod, NULL); - pthread_join (cons, NULL); + pthread_join (prod, 0); + pthread_join (cons, 0); return 0; } diff --git a/libstdc++-v3/testsuite/21_strings/c_strings/char/1.cc b/libstdc++-v3/testsuite/21_strings/c_strings/char/1.cc index 67bcac39645..9142018d0de 100644 --- a/libstdc++-v3/testsuite/21_strings/c_strings/char/1.cc +++ b/libstdc++-v3/testsuite/21_strings/c_strings/char/1.cc @@ -1,6 +1,6 @@ // 2001-04-02 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 2001, 2003, 2009, 2010 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 @@ -60,6 +60,9 @@ void test01() // void* memchr( void* s, int c, size_t n); cv = std::memchr(cv, 'a', 3); v = std::memchr(v, 'a', 3); + + cc1 = cc1; // Suppress unused warnings. + c1 = c1; } int main() diff --git a/libstdc++-v3/testsuite/21_strings/c_strings/char/2.cc b/libstdc++-v3/testsuite/21_strings/c_strings/char/2.cc index 464713bed32..5d751900473 100644 --- a/libstdc++-v3/testsuite/21_strings/c_strings/char/2.cc +++ b/libstdc++-v3/testsuite/21_strings/c_strings/char/2.cc @@ -1,6 +1,6 @@ // 2001-04-02 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 2001, 2003, 2009, 2010 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 @@ -40,6 +40,10 @@ void test02() cc = strrchr(ccarray1, 'c'); cc = strpbrk(ccarray1, ccarray2); c = strstr(carray, carray); + + cv1 = cv1; // Suppress unused warnings. + cc = cc; + c = c; } int main() diff --git a/libstdc++-v3/testsuite/21_strings/c_strings/wchar_t/1.cc b/libstdc++-v3/testsuite/21_strings/c_strings/wchar_t/1.cc index 2e7a6c35d7c..4702581d90f 100644 --- a/libstdc++-v3/testsuite/21_strings/c_strings/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/21_strings/c_strings/wchar_t/1.cc @@ -1,6 +1,6 @@ // 2001-04-02 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2009 Free Software Foundation, Inc. +// Copyright (C) 2001, 2009, 2010 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 @@ -59,6 +59,9 @@ void test01() // wchar_t* wmemchr( wchar_t* s, wchar_t c, size_t n); cc1 = std::wmemchr(ccarray1, L'a', 3); c1 = std::wmemchr(carray, L'a', 3); + + cc1 = cc1; // Suppress unused warnings. + c1 = c1; } int main() diff --git a/libstdc++-v3/testsuite/21_strings/c_strings/wchar_t/2.cc b/libstdc++-v3/testsuite/21_strings/c_strings/wchar_t/2.cc index aea01b0f16b..7637ecddf26 100644 --- a/libstdc++-v3/testsuite/21_strings/c_strings/wchar_t/2.cc +++ b/libstdc++-v3/testsuite/21_strings/c_strings/wchar_t/2.cc @@ -1,6 +1,6 @@ // 2001-04-02 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2009 Free Software Foundation, Inc. +// Copyright (C) 2001, 2009, 2010 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 @@ -39,6 +39,9 @@ void test02() cw = wcspbrk(ccarray1, ccarray2); cw = wcsrchr(ccarray1, L'c'); w = wcsstr(carray, carray); + + cw = cw; // Suppress unused warnings. + w = w; } int main() diff --git a/libstdc++-v3/testsuite/22_locale/ctype/is/char/1.cc b/libstdc++-v3/testsuite/22_locale/ctype/is/char/1.cc index 4a96797bf52..2df9553a35d 100644 --- a/libstdc++-v3/testsuite/22_locale/ctype/is/char/1.cc +++ b/libstdc++-v3/testsuite/22_locale/ctype/is/char/1.cc @@ -1,4 +1,5 @@ -// Copyright (C) 2000, 2001, 2002, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 2000, 2001, 2002, 2003, 2009, 2010 +// 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 @@ -84,8 +85,8 @@ void test01() std::ctype_base::mask m01[3]; std::ctype_base::mask m02[13]; const char_type* cc0 = strlit00; - const char_type* cc1 = NULL; - const char_type* cc2 = NULL; + const char_type* cc1 = 0; + const char_type* cc2 = 0; cc0 = strlit00; for (std::size_t i = 0; i < 3; ++i) diff --git a/libstdc++-v3/testsuite/22_locale/ctype/is/wchar_t/1.cc b/libstdc++-v3/testsuite/22_locale/ctype/is/wchar_t/1.cc index cf2f845ca3b..0b989cbe729 100644 --- a/libstdc++-v3/testsuite/22_locale/ctype/is/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/22_locale/ctype/is/wchar_t/1.cc @@ -1,4 +1,5 @@ -// Copyright (C) 2000, 2001, 2002, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 2000, 2001, 2002, 2003, 2009, 2010 +// 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 @@ -84,8 +85,8 @@ void test01() std::ctype_base::mask m01[3]; std::ctype_base::mask m02[13]; const char_type* cc0 = strlit00; - const char_type* cc1 = NULL; - const char_type* cc2 = NULL; + const char_type* cc1 = 0; + const char_type* cc2 = 0; cc0 = strlit00; for (std::size_t i = 0; i < 3; ++i) diff --git a/libstdc++-v3/testsuite/22_locale/ctype_base/mask.cc b/libstdc++-v3/testsuite/22_locale/ctype_base/mask.cc index aec9f31607b..f503ce7f41e 100644 --- a/libstdc++-v3/testsuite/22_locale/ctype_base/mask.cc +++ b/libstdc++-v3/testsuite/22_locale/ctype_base/mask.cc @@ -1,7 +1,7 @@ // { dg-do compile } // 1999-08-24 bkoz -// Copyright (C) 1999, 2000, 2003, 2009 Free Software Foundation +// Copyright (C) 1999, 2000, 2003, 2009, 2010 Free Software Foundation // // 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 @@ -43,6 +43,8 @@ test01() res = m01 | m02; res = m01 ^ m02; res = ~m01; + res = res; // Suppress unused warning. + m01 &= m02; m01 |= m02; m01 ^= m02; diff --git a/libstdc++-v3/testsuite/22_locale/locale/cons/12658_thread-1.cc b/libstdc++-v3/testsuite/22_locale/locale/cons/12658_thread-1.cc index d7ad84137da..f36559ea27c 100644 --- a/libstdc++-v3/testsuite/22_locale/locale/cons/12658_thread-1.cc +++ b/libstdc++-v3/testsuite/22_locale/locale/cons/12658_thread-1.cc @@ -3,7 +3,7 @@ // { dg-options "-pthreads" { target *-*-solaris* } } // { dg-require-namedlocale "" } -// Copyright (C) 2004, 2005, 2007, 2009 Free Software Foundation +// Copyright (C) 2004, 2005, 2007, 2009, 2010 Free Software Foundation // // 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 @@ -59,10 +59,10 @@ main() pthread_t tid[max_thread_count]; for (int i = 0; i < max_thread_count; i++) - pthread_create (&tid[i], NULL, thread_main, 0); + pthread_create (&tid[i], 0, thread_main, 0); for (int i = 0; i < max_thread_count; i++) - pthread_join (tid[i], NULL); + pthread_join (tid[i], 0); return 0; } diff --git a/libstdc++-v3/testsuite/22_locale/locale/cons/12658_thread-2.cc b/libstdc++-v3/testsuite/22_locale/locale/cons/12658_thread-2.cc index 2d92afcad39..5b882cce683 100644 --- a/libstdc++-v3/testsuite/22_locale/locale/cons/12658_thread-2.cc +++ b/libstdc++-v3/testsuite/22_locale/locale/cons/12658_thread-2.cc @@ -3,7 +3,7 @@ // { dg-options "-pthreads" { target *-*-solaris* } } // { dg-require-namedlocale "" } -// Copyright (C) 2004, 2005, 2007, 2009 Free Software Foundation +// Copyright (C) 2004, 2005, 2007, 2009, 2010 Free Software Foundation // // 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 @@ -55,10 +55,10 @@ main() loc[j] = std::locale(j % 2 ? "en_US" : "fr_FR"); for (int i = 0; i < max_thread_count; i++) - pthread_create(&tid[i], NULL, thread_main, 0); + pthread_create(&tid[i], 0, thread_main, 0); for (int i = 0; i < max_thread_count; i++) - pthread_join(tid[i], NULL); + pthread_join(tid[i], 0); return 0; } diff --git a/libstdc++-v3/testsuite/22_locale/locale/cons/2.cc b/libstdc++-v3/testsuite/22_locale/locale/cons/2.cc index c5c70dcc9d7..c09b000130e 100644 --- a/libstdc++-v3/testsuite/22_locale/locale/cons/2.cc +++ b/libstdc++-v3/testsuite/22_locale/locale/cons/2.cc @@ -2,7 +2,8 @@ // 2000-09-13 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009 +// Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, +// 2009, 2010 // Free Software Foundation // // This file is part of the GNU ISO C++ Library. This library is free @@ -96,7 +97,7 @@ void test01() VERIFY( loc07 != loc02 ); VERIFY( loc07.name() != "" ); try - { locale loc08(static_cast<const char*>(NULL)); } + { locale loc08(static_cast<const char*>(0)); } catch(runtime_error& obj) { VERIFY( true ); } catch(...) @@ -130,7 +131,7 @@ void test01() VERIFY( loc11 == loc01 ); try - { locale loc12(loc01, static_cast<const char*>(NULL), locale::ctype); } + { locale loc12(loc01, static_cast<const char*>(0), locale::ctype); } catch(runtime_error& obj) { VERIFY( true ); } catch(...) @@ -178,7 +179,7 @@ void test01() VERIFY( loc11 == loc01 ); try - { locale loc12(loc01, static_cast<const char*>(NULL), locale::ctype); } + { locale loc12(loc01, static_cast<const char*>(0), locale::ctype); } catch(runtime_error& obj) { VERIFY( true ); } catch(...) diff --git a/libstdc++-v3/testsuite/22_locale/locale/cons/29217.cc b/libstdc++-v3/testsuite/22_locale/locale/cons/29217.cc index 428efc952b6..6693f5d2d6d 100644 --- a/libstdc++-v3/testsuite/22_locale/locale/cons/29217.cc +++ b/libstdc++-v3/testsuite/22_locale/locale/cons/29217.cc @@ -1,6 +1,6 @@ // { dg-require-namedlocale "" } -// Copyright (C) 2006, 2009 Free Software Foundation +// Copyright (C) 2006, 2009, 2010 Free Software Foundation // // 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 @@ -36,7 +36,7 @@ void test01() "LC_PAPER=C;LC_NAME=C;LC_ADDRESS=C;LC_TELEPHONE=C;" "LC_MEASUREMENT=C;LC_IDENTIFICATION=C" ); - VERIFY( locale().name() == setlocale(LC_ALL, NULL) ); + VERIFY( locale().name() == setlocale(LC_ALL, 0) ); locale loc1 = locale(locale::classic(), "en_US.UTF-8", locale::time); diff --git a/libstdc++-v3/testsuite/22_locale/locale/global_locale_objects/14071.cc b/libstdc++-v3/testsuite/22_locale/locale/global_locale_objects/14071.cc index 4927e5647a1..30e133fd49a 100644 --- a/libstdc++-v3/testsuite/22_locale/locale/global_locale_objects/14071.cc +++ b/libstdc++-v3/testsuite/22_locale/locale/global_locale_objects/14071.cc @@ -2,7 +2,7 @@ // 2004-02-09 Petur Runolfsson <peturr02@ru.is> -// Copyright (C) 2004, 2005, 2009 Free Software Foundation +// Copyright (C) 2004, 2005, 2009, 2010 Free Software Foundation // // 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 @@ -39,7 +39,7 @@ void test01() if (loc.name() != "*") { locale::global(loc); - VERIFY( loc.name() == setlocale(LC_ALL, NULL) ); + VERIFY( loc.name() == setlocale(LC_ALL, 0) ); } } diff --git a/libstdc++-v3/testsuite/22_locale/locale/global_locale_objects/2.cc b/libstdc++-v3/testsuite/22_locale/locale/global_locale_objects/2.cc index 21d52fd4b2e..3265f71a29c 100644 --- a/libstdc++-v3/testsuite/22_locale/locale/global_locale_objects/2.cc +++ b/libstdc++-v3/testsuite/22_locale/locale/global_locale_objects/2.cc @@ -2,7 +2,7 @@ // 2000-09-13 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2000, 2002, 2003, 2005, 2009 Free Software Foundation +// Copyright (C) 2000, 2002, 2003, 2005, 2009, 2010 Free Software Foundation // // 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 @@ -33,7 +33,7 @@ void test02() const string ph("en_PH"); const string mx("es_MX"); - const char* orig = setlocale(LC_ALL, NULL); + const char* orig = setlocale(LC_ALL, 0); const char* testph = setlocale(LC_ALL, ph.c_str()); const char* testmx = setlocale(LC_ALL, mx.c_str()); setlocale(LC_ALL, orig); @@ -54,7 +54,7 @@ void test02() // Change global locale. locale global_orig = locale::global(loc_mx); - const char* lc_all_mx = setlocale(LC_ALL, NULL); + const char* lc_all_mx = setlocale(LC_ALL, 0); if (lc_all_mx) { VERIFY( mx == lc_all_mx ); diff --git a/libstdc++-v3/testsuite/22_locale/money_put/put/char/1.cc b/libstdc++-v3/testsuite/22_locale/money_put/put/char/1.cc index 0a76d4334d0..0dad40accf5 100644 --- a/libstdc++-v3/testsuite/22_locale/money_put/put/char/1.cc +++ b/libstdc++-v3/testsuite/22_locale/money_put/put/char/1.cc @@ -2,7 +2,8 @@ // 2001-08-27 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2009 Free Software Foundation +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2009, 2010 +// Free Software Foundation // // 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 @@ -52,12 +53,12 @@ void test01() oss.imbue(loc_de); const money_put<char>& mon_put = use_facet<money_put<char> >(oss.getloc()); - iterator_type os_it01 = mon_put.put(oss.rdbuf(), true, oss, ' ', digits1); + mon_put.put(oss.rdbuf(), true, oss, ' ', digits1); string result1 = oss.str(); VERIFY( result1 == "7.200.000.000,00 "); oss.str(empty); - iterator_type os_it02 = mon_put.put(oss.rdbuf(), false, oss, ' ', digits1); + mon_put.put(oss.rdbuf(), false, oss, ' ', digits1); string result2 = oss.str(); VERIFY( result2 == "7.200.000.000,00 "); @@ -68,12 +69,12 @@ void test01() oss.setf(ios_base::showbase); oss.str(empty); - iterator_type os_it03 = mon_put.put(oss.rdbuf(), true, oss, ' ', digits1); + mon_put.put(oss.rdbuf(), true, oss, ' ', digits1); string result3 = oss.str(); VERIFY( result3 == "7.200.000.000,00 EUR "); oss.str(empty); - iterator_type os_it04 = mon_put.put(oss.rdbuf(), false, oss, ' ', digits1); + mon_put.put(oss.rdbuf(), false, oss, ' ', digits1); string result4 = oss.str(); VERIFY( result4 == "7.200.000.000,00 \244"); @@ -88,14 +89,14 @@ void test01() // test various fill strategies oss.str(empty); oss.width(20); - iterator_type os_it10 = mon_put.put(oss.rdbuf(), true, oss, '*', digits2); + mon_put.put(oss.rdbuf(), true, oss, '*', digits2); string result10 = oss.str(); VERIFY( result10 == "***************-,01*"); oss.str(empty); oss.width(20); oss.setf(ios_base::internal); - iterator_type os_it11 = mon_put.put(oss.rdbuf(), true, oss, '*', digits2); + mon_put.put(oss.rdbuf(), true, oss, '*', digits2); string result11 = oss.str(); VERIFY( result11 == "-,01****************"); } diff --git a/libstdc++-v3/testsuite/22_locale/money_put/put/char/12971.cc b/libstdc++-v3/testsuite/22_locale/money_put/put/char/12971.cc index 15efd377e00..5ccb9ba4afc 100644 --- a/libstdc++-v3/testsuite/22_locale/money_put/put/char/12971.cc +++ b/libstdc++-v3/testsuite/22_locale/money_put/put/char/12971.cc @@ -1,6 +1,6 @@ // 2003-11-09 Paolo Carlini <pcarlini@suse.de> -// Copyright (C) 2003, 2009 Free Software Foundation +// Copyright (C) 2003, 2009, 2010 Free Software Foundation // // 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 @@ -37,7 +37,7 @@ void test01() ostringstream oss; const money_put<char>& mon_put = use_facet<money_put<char> >(oss.getloc()); - iterator_type os_it01 = mon_put.put(oss.rdbuf(), true, oss, ' ', amount); + mon_put.put(oss.rdbuf(), true, oss, ' ', amount); string result = oss.str(); VERIFY( result == "11" ); } diff --git a/libstdc++-v3/testsuite/22_locale/money_put/put/char/2.cc b/libstdc++-v3/testsuite/22_locale/money_put/put/char/2.cc index b3defe8b279..7707c7e2a42 100644 --- a/libstdc++-v3/testsuite/22_locale/money_put/put/char/2.cc +++ b/libstdc++-v3/testsuite/22_locale/money_put/put/char/2.cc @@ -2,7 +2,8 @@ // 2001-08-27 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2009 Free Software Foundation +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2009, 2010 +// Free Software Foundation // // 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 @@ -63,12 +64,12 @@ void test02() // test sign of more than one digit, say hong kong. oss.str(empty); - iterator_type os_it05 = mon_put.put(oss.rdbuf(), false, oss, ' ', digits1); + mon_put.put(oss.rdbuf(), false, oss, ' ', digits1); string result5 = oss.str(); VERIFY( result5 == "HK$7,200,000,000.00"); oss.str(empty); - iterator_type os_it06 = mon_put.put(oss.rdbuf(), true, oss, ' ', digits2); + mon_put.put(oss.rdbuf(), true, oss, ' ', digits2); string result6 = oss.str(); VERIFY( result6 == "(HKD 100,000,000,000.00)"); @@ -76,7 +77,7 @@ void test02() oss.imbue(loc_c); oss.str(empty); const money_put<char>& mon_put2 = use_facet<money_put<char> >(oss.getloc()); - iterator_type os_it07 = mon_put2.put(oss.rdbuf(), true, oss, ' ', digits4); + mon_put2.put(oss.rdbuf(), true, oss, ' ', digits4); string result7 = oss.str(); VERIFY( result7 == "1"); @@ -84,7 +85,7 @@ void test02() oss.imbue(loc_hk); oss.str(empty); const money_put<char>& mon_put3 = use_facet<money_put<char> >(oss.getloc()); - iterator_type os_it08 = mon_put3.put(oss.rdbuf(), true, oss, ' ', digits4); + mon_put3.put(oss.rdbuf(), true, oss, ' ', digits4); string result8 = oss.str(); VERIFY( result8 == "(HKD .01)"); @@ -92,7 +93,7 @@ void test02() // test bunk input oss.str(empty); - iterator_type os_it09 = mon_put.put(oss.rdbuf(), true, oss, ' ', digits3); + mon_put.put(oss.rdbuf(), true, oss, ' ', digits3); string result9 = oss.str(); VERIFY( result9 == ""); } diff --git a/libstdc++-v3/testsuite/22_locale/money_put/put/char/3.cc b/libstdc++-v3/testsuite/22_locale/money_put/put/char/3.cc index 6f571fda828..609bb7f6373 100644 --- a/libstdc++-v3/testsuite/22_locale/money_put/put/char/3.cc +++ b/libstdc++-v3/testsuite/22_locale/money_put/put/char/3.cc @@ -2,7 +2,8 @@ // 2001-08-27 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2009 Free Software Foundation +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2009, 2010 +// Free Software Foundation // // 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 @@ -49,12 +50,12 @@ void test03() oss.imbue(loc_de); const money_put<char>& mon_put = use_facet<money_put<char> >(oss.getloc()); - iterator_type os_it01 = mon_put.put(oss.rdbuf(), true, oss, ' ', digits1); + mon_put.put(oss.rdbuf(), true, oss, ' ', digits1); string result1 = oss.str(); VERIFY( result1 == "7.200.000.000,00 "); oss.str(empty); - iterator_type os_it02 = mon_put.put(oss.rdbuf(), false, oss, ' ', digits1); + mon_put.put(oss.rdbuf(), false, oss, ' ', digits1); string result2 = oss.str(); VERIFY( result2 == "7.200.000.000,00 "); @@ -65,12 +66,12 @@ void test03() oss.setf(ios_base::showbase); oss.str(empty); - iterator_type os_it03 = mon_put.put(oss.rdbuf(), true, oss, ' ', digits1); + mon_put.put(oss.rdbuf(), true, oss, ' ', digits1); string result3 = oss.str(); VERIFY( result3 == "7.200.000.000,00 EUR "); oss.str(empty); - iterator_type os_it04 = mon_put.put(oss.rdbuf(), false, oss, ' ', digits1); + mon_put.put(oss.rdbuf(), false, oss, ' ', digits1); string result4 = oss.str(); VERIFY( result4 == "7.200.000.000,00 \244"); diff --git a/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/1.cc b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/1.cc index 1fceb279971..d48b8aa320c 100644 --- a/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/1.cc @@ -2,7 +2,8 @@ // 2001-08-27 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2009 Free Software Foundation +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2009, 2010 +// Free Software Foundation // // 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 @@ -53,12 +54,12 @@ void test01() const money_put<wchar_t>& mon_put = use_facet<money_put<wchar_t> >(oss.getloc()); - iterator_type os_it01 = mon_put.put(oss.rdbuf(), true, oss, L' ', digits1); + mon_put.put(oss.rdbuf(), true, oss, L' ', digits1); wstring result1 = oss.str(); VERIFY( result1 == L"7.200.000.000,00 " ); oss.str(empty); - iterator_type os_it02 = mon_put.put(oss.rdbuf(), false, oss, L' ', digits1); + mon_put.put(oss.rdbuf(), false, oss, L' ', digits1); wstring result2 = oss.str(); VERIFY( result2 == L"7.200.000.000,00 " ); @@ -69,12 +70,12 @@ void test01() oss.setf(ios_base::showbase); oss.str(empty); - iterator_type os_it03 = mon_put.put(oss.rdbuf(), true, oss, L' ', digits1); + mon_put.put(oss.rdbuf(), true, oss, L' ', digits1); wstring result3 = oss.str(); VERIFY( result3 == L"7.200.000.000,00 EUR " ); oss.str(empty); - iterator_type os_it04 = mon_put.put(oss.rdbuf(), false, oss, L' ', digits1); + mon_put.put(oss.rdbuf(), false, oss, L' ', digits1); wstring result4 = oss.str(); VERIFY( result4 == L"7.200.000.000,00 \x20ac" ); @@ -89,14 +90,14 @@ void test01() // test various fill strategies oss.str(empty); oss.width(20); - iterator_type os_it10 = mon_put.put(oss.rdbuf(), true, oss, L'*', digits2); + mon_put.put(oss.rdbuf(), true, oss, L'*', digits2); wstring result10 = oss.str(); VERIFY( result10 == L"***************-,01*" ); oss.str(empty); oss.width(20); oss.setf(ios_base::internal); - iterator_type os_it11 = mon_put.put(oss.rdbuf(), true, oss, L'*', digits2); + mon_put.put(oss.rdbuf(), true, oss, L'*', digits2); wstring result11 = oss.str(); VERIFY( result11 == L"-,01****************" ); } diff --git a/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/12971.cc b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/12971.cc index fd8bcf517e1..cd430a9e1bd 100644 --- a/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/12971.cc +++ b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/12971.cc @@ -1,6 +1,6 @@ // 2003-11-09 Paolo Carlini <pcarlini@suse.de> -// Copyright (C) 2003, 2004, 2009 Free Software Foundation +// Copyright (C) 2003, 2004, 2009, 2010 Free Software Foundation // // 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 @@ -38,7 +38,7 @@ void test01() const money_put<wchar_t>& mon_put = use_facet<money_put<wchar_t> >(oss.getloc()); - iterator_type os_it01 = mon_put.put(oss.rdbuf(), true, oss, L' ', amount); + mon_put.put(oss.rdbuf(), true, oss, L' ', amount); wstring result = oss.str(); VERIFY( result == L"11" ); } diff --git a/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/2.cc b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/2.cc index 33f7727458b..592c913f084 100644 --- a/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/2.cc +++ b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/2.cc @@ -2,7 +2,8 @@ // 2001-08-27 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2009 Free Software Foundation +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2009, 2010 +// Free Software Foundation // // 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 @@ -64,12 +65,12 @@ void test02() // test sign of more than one digit, say hong kong. oss.str(empty); - iterator_type os_it05 = mon_put.put(oss.rdbuf(), false, oss, L' ', digits1); + mon_put.put(oss.rdbuf(), false, oss, L' ', digits1); wstring result5 = oss.str(); VERIFY( result5 == L"HK$7,200,000,000.00" ); oss.str(empty); - iterator_type os_it06 = mon_put.put(oss.rdbuf(), true, oss, L' ', digits2); + mon_put.put(oss.rdbuf(), true, oss, L' ', digits2); wstring result6 = oss.str(); VERIFY( result6 == L"(HKD 100,000,000,000.00)" ); @@ -78,7 +79,7 @@ void test02() oss.str(empty); const money_put<wchar_t>& mon_put2 = use_facet<money_put<wchar_t> >(oss.getloc()); - iterator_type os_it07 = mon_put2.put(oss.rdbuf(), true, oss, L' ', digits4); + mon_put2.put(oss.rdbuf(), true, oss, L' ', digits4); wstring result7 = oss.str(); VERIFY( result7 == L"1" ); @@ -87,7 +88,7 @@ void test02() oss.str(empty); const money_put<wchar_t>& mon_put3 = use_facet<money_put<wchar_t> >(oss.getloc()); - iterator_type os_it08 = mon_put3.put(oss.rdbuf(), true, oss, L' ', digits4); + mon_put3.put(oss.rdbuf(), true, oss, L' ', digits4); wstring result8 = oss.str(); VERIFY( result8 == L"(HKD .01)" ); @@ -95,7 +96,7 @@ void test02() // test bunk input oss.str(empty); - iterator_type os_it09 = mon_put.put(oss.rdbuf(), true, oss, L' ', digits3); + mon_put.put(oss.rdbuf(), true, oss, L' ', digits3); wstring result9 = oss.str(); VERIFY( result9 == L"" ); } diff --git a/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/3.cc b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/3.cc index a0fbcda9e09..798745bac0e 100644 --- a/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/3.cc +++ b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/3.cc @@ -2,7 +2,8 @@ // 2001-08-27 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2009 Free Software Foundation +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2009, 2010 +// Free Software Foundation // // 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 @@ -50,12 +51,12 @@ void test03() const money_put<wchar_t>& mon_put = use_facet<money_put<wchar_t> >(oss.getloc()); - iterator_type os_it01 = mon_put.put(oss.rdbuf(), true, oss, L' ', digits1); + mon_put.put(oss.rdbuf(), true, oss, L' ', digits1); wstring result1 = oss.str(); VERIFY( result1 == L"7.200.000.000,00 " ); oss.str(empty); - iterator_type os_it02 = mon_put.put(oss.rdbuf(), false, oss, L' ', digits1); + mon_put.put(oss.rdbuf(), false, oss, L' ', digits1); wstring result2 = oss.str(); VERIFY( result2 == L"7.200.000.000,00 " ); @@ -66,12 +67,12 @@ void test03() oss.setf(ios_base::showbase); oss.str(empty); - iterator_type os_it03 = mon_put.put(oss.rdbuf(), true, oss, L' ', digits1); + mon_put.put(oss.rdbuf(), true, oss, L' ', digits1); wstring result3 = oss.str(); VERIFY( result3 == L"7.200.000.000,00 EUR " ); oss.str(empty); - iterator_type os_it04 = mon_put.put(oss.rdbuf(), false, oss, L' ', digits1); + mon_put.put(oss.rdbuf(), false, oss, L' ', digits1); wstring result4 = oss.str(); VERIFY( result4 == L"7.200.000.000,00 \x20ac" ); diff --git a/libstdc++-v3/testsuite/22_locale/moneypunct/members/char/1.cc b/libstdc++-v3/testsuite/22_locale/moneypunct/members/char/1.cc index fac61ec3d58..fd28b63fbeb 100644 --- a/libstdc++-v3/testsuite/22_locale/moneypunct/members/char/1.cc +++ b/libstdc++-v3/testsuite/22_locale/moneypunct/members/char/1.cc @@ -1,6 +1,6 @@ // 2001-08-23 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2009 Free Software Foundation +// Copyright (C) 2001, 2002, 2003, 2009, 2010 Free Software Foundation // // 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 @@ -59,6 +59,8 @@ void test01() pattern neg1 = monp_c_t.neg_format(); pattern pos2 = monp_c_f.pos_format(); pattern neg2 = monp_c_f.neg_format(); + neg1 = neg1; + neg2 = neg2; VERIFY( q1 == '.' ); VERIFY( q3 == '.' ); diff --git a/libstdc++-v3/testsuite/22_locale/moneypunct/members/wchar_t/1.cc b/libstdc++-v3/testsuite/22_locale/moneypunct/members/wchar_t/1.cc index bb862deda25..eb5e50684be 100644 --- a/libstdc++-v3/testsuite/22_locale/moneypunct/members/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/22_locale/moneypunct/members/wchar_t/1.cc @@ -1,6 +1,6 @@ // 2001-08-23 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2009 Free Software Foundation +// Copyright (C) 2001, 2002, 2003, 2009, 2010 Free Software Foundation // // 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 @@ -59,6 +59,8 @@ void test01() pattern neg1 = monp_c_t.neg_format(); pattern pos2 = monp_c_f.pos_format(); pattern neg2 = monp_c_f.neg_format(); + neg1 = neg1; + neg2 = neg2; VERIFY( q1 == L'.' ); VERIFY( q3 == L'.' ); diff --git a/libstdc++-v3/testsuite/22_locale/num_get/get/char/1.cc b/libstdc++-v3/testsuite/22_locale/num_get/get/char/1.cc index dd849c6fca8..c951c4c3e5e 100644 --- a/libstdc++-v3/testsuite/22_locale/num_get/get/char/1.cc +++ b/libstdc++-v3/testsuite/22_locale/num_get/get/char/1.cc @@ -2,7 +2,7 @@ // 2001-11-21 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009 +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010 // Free Software Foundation // // This file is part of the GNU ISO C++ Library. This library is free @@ -63,7 +63,7 @@ void test01() // bool, simple iss.str("1"); iterator_type os_it00 = iss.rdbuf(); - iterator_type os_it01 = ng.get(os_it00, 0, iss, err, b1); + ng.get(os_it00, 0, iss, err, b1); VERIFY( b1 == true ); VERIFY( err & ios_base::eofbit ); diff --git a/libstdc++-v3/testsuite/22_locale/num_get/get/wchar_t/1.cc b/libstdc++-v3/testsuite/22_locale/num_get/get/wchar_t/1.cc index d36f5caf019..8b4884738a7 100644 --- a/libstdc++-v3/testsuite/22_locale/num_get/get/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/22_locale/num_get/get/wchar_t/1.cc @@ -2,7 +2,7 @@ // 2001-11-21 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009 +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010 // Free Software Foundation // // This file is part of the GNU ISO C++ Library. This library is free @@ -63,7 +63,7 @@ void test01() // bool, simple iss.str(L"1"); iterator_type os_it00 = iss.rdbuf(); - iterator_type os_it01 = ng.get(os_it00, 0, iss, err, b1); + ng.get(os_it00, 0, iss, err, b1); VERIFY( b1 == true ); VERIFY( err & ios_base::eofbit ); diff --git a/libstdc++-v3/testsuite/22_locale/num_put/put/char/1.cc b/libstdc++-v3/testsuite/22_locale/num_put/put/char/1.cc index 1398aeeaa72..df1a86dca3f 100644 --- a/libstdc++-v3/testsuite/22_locale/num_put/put/char/1.cc +++ b/libstdc++-v3/testsuite/22_locale/num_put/put/char/1.cc @@ -2,7 +2,8 @@ // 2001-11-19 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2009 Free Software Foundation +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2009, 2010 +// Free Software Foundation // // 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 @@ -61,7 +62,7 @@ void test01() // bool, simple iterator_type os_it00 = oss.rdbuf(); - iterator_type os_it01 = np.put(os_it00, oss, '+', b1); + np.put(os_it00, oss, '+', b1); result1 = oss.str(); VERIFY( result1 == "1" ); diff --git a/libstdc++-v3/testsuite/22_locale/num_put/put/wchar_t/1.cc b/libstdc++-v3/testsuite/22_locale/num_put/put/wchar_t/1.cc index 83da0d2802e..01b06d6b552 100644 --- a/libstdc++-v3/testsuite/22_locale/num_put/put/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/22_locale/num_put/put/wchar_t/1.cc @@ -2,7 +2,7 @@ // 2001-11-19 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009 +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010 // Free Software Foundation // // This file is part of the GNU ISO C++ Library. This library is free @@ -62,7 +62,7 @@ void test01() // bool, simple iterator_type os_it00 = oss.rdbuf(); - iterator_type os_it01 = np.put(os_it00, oss, L'+', b1); + np.put(os_it00, oss, L'+', b1); result1 = oss.str(); VERIFY( result1 == L"1" ); diff --git a/libstdc++-v3/testsuite/22_locale/time_get/get_date/char/5.cc b/libstdc++-v3/testsuite/22_locale/time_get/get_date/char/5.cc index 5a31f33565a..f08cd6f0761 100644 --- a/libstdc++-v3/testsuite/22_locale/time_get/get_date/char/5.cc +++ b/libstdc++-v3/testsuite/22_locale/time_get/get_date/char/5.cc @@ -1,6 +1,6 @@ // 2006-06-16 Paolo Carlini <pcarlini@suse.de> -// Copyright (C) 2006, 2009 Free Software Foundation +// Copyright (C) 2006, 2009, 2010 Free Software Foundation // // 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 @@ -48,7 +48,7 @@ void test01() const time_get_type& tg = use_facet<time_get_type>(iss.getloc()); const string str0 = "1"; - iter_type end0 = tg.get_date(str0.begin(), str0.end(), iss, err, &tm0); + tg.get_date(str0.begin(), str0.end(), iss, err, &tm0); VERIFY( err == (failbit | eofbit) ); VERIFY( tm0.tm_year == 0 ); VERIFY( tm0.tm_mon == 0 ); diff --git a/libstdc++-v3/testsuite/22_locale/time_get/get_date/wchar_t/5.cc b/libstdc++-v3/testsuite/22_locale/time_get/get_date/wchar_t/5.cc index 194e1505901..9110884fae9 100644 --- a/libstdc++-v3/testsuite/22_locale/time_get/get_date/wchar_t/5.cc +++ b/libstdc++-v3/testsuite/22_locale/time_get/get_date/wchar_t/5.cc @@ -1,6 +1,6 @@ // 2006-06-16 Paolo Carlini <pcarlini@suse.de> -// Copyright (C) 2006, 2009 Free Software Foundation +// Copyright (C) 2006, 2009, 2010 Free Software Foundation // // 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 @@ -48,7 +48,7 @@ void test01() const time_get_type& tg = use_facet<time_get_type>(iss.getloc()); const wstring str0 = L"1"; - iter_type end0 = tg.get_date(str0.begin(), str0.end(), iss, err, &tm0); + tg.get_date(str0.begin(), str0.end(), iss, err, &tm0); VERIFY( err == (failbit | eofbit) ); VERIFY( tm0.tm_year == 0 ); VERIFY( tm0.tm_mon == 0 ); diff --git a/libstdc++-v3/testsuite/22_locale/time_get/get_monthname/char/5.cc b/libstdc++-v3/testsuite/22_locale/time_get/get_monthname/char/5.cc index 64b0a2e6b21..c1966fe4b95 100644 --- a/libstdc++-v3/testsuite/22_locale/time_get/get_monthname/char/5.cc +++ b/libstdc++-v3/testsuite/22_locale/time_get/get_monthname/char/5.cc @@ -1,6 +1,6 @@ // 2006-06-16 Paolo Carlini <pcarlini@suse.de> -// Copyright (C) 2006, 2009 Free Software Foundation +// Copyright (C) 2006, 2009, 2010 Free Software Foundation // // 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 @@ -48,7 +48,7 @@ void test01() const time_get_type& tg = use_facet<time_get_type>(iss.getloc()); const string str0 = "S"; - iter_type end0 = tg.get_monthname(str0.begin(), str0.end(), iss, err, &tm0); + tg.get_monthname(str0.begin(), str0.end(), iss, err, &tm0); VERIFY( err == (failbit | eofbit) ); VERIFY( tm0.tm_mon == 0 ); diff --git a/libstdc++-v3/testsuite/22_locale/time_get/get_monthname/wchar_t/5.cc b/libstdc++-v3/testsuite/22_locale/time_get/get_monthname/wchar_t/5.cc index 5b48a30f88a..192d19c945b 100644 --- a/libstdc++-v3/testsuite/22_locale/time_get/get_monthname/wchar_t/5.cc +++ b/libstdc++-v3/testsuite/22_locale/time_get/get_monthname/wchar_t/5.cc @@ -1,6 +1,6 @@ // 2006-06-16 Paolo Carlini <pcarlini@suse.de> -// Copyright (C) 2006, 2009 Free Software Foundation +// Copyright (C) 2006, 2009, 2010 Free Software Foundation // // 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 @@ -48,7 +48,7 @@ void test01() const time_get_type& tg = use_facet<time_get_type>(iss.getloc()); const wstring str0 = L"S"; - iter_type end0 = tg.get_monthname(str0.begin(), str0.end(), iss, err, &tm0); + tg.get_monthname(str0.begin(), str0.end(), iss, err, &tm0); VERIFY( err == (failbit | eofbit) ); VERIFY( tm0.tm_mon == 0 ); diff --git a/libstdc++-v3/testsuite/22_locale/time_get/get_time/char/5.cc b/libstdc++-v3/testsuite/22_locale/time_get/get_time/char/5.cc index f0808bf8a88..b099b6e7ba4 100644 --- a/libstdc++-v3/testsuite/22_locale/time_get/get_time/char/5.cc +++ b/libstdc++-v3/testsuite/22_locale/time_get/get_time/char/5.cc @@ -1,6 +1,6 @@ // 2006-06-16 Paolo Carlini <pcarlini@suse.de> -// Copyright (C) 2006, 2009 Free Software Foundation +// Copyright (C) 2006, 2009, 2010 Free Software Foundation // // 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 @@ -49,7 +49,7 @@ void test01() const time_get_type& tg = use_facet<time_get_type>(iss.getloc()); const string str0 = "1"; - iter_type end0 = tg.get_time(str0.begin(), str0.end(), iss, err, &tm0); + tg.get_time(str0.begin(), str0.end(), iss, err, &tm0); VERIFY( err == (failbit | eofbit) ); VERIFY( tm0.tm_sec == 0 ); VERIFY( tm0.tm_min == 0 ); diff --git a/libstdc++-v3/testsuite/22_locale/time_get/get_time/wchar_t/5.cc b/libstdc++-v3/testsuite/22_locale/time_get/get_time/wchar_t/5.cc index b06ccf6ffb8..ffce43218cd 100644 --- a/libstdc++-v3/testsuite/22_locale/time_get/get_time/wchar_t/5.cc +++ b/libstdc++-v3/testsuite/22_locale/time_get/get_time/wchar_t/5.cc @@ -1,6 +1,6 @@ // 2006-06-16 Paolo Carlini <pcarlini@suse.de> -// Copyright (C) 2006, 2009 Free Software Foundation +// Copyright (C) 2006, 2009, 2010 Free Software Foundation // // 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 @@ -49,7 +49,7 @@ void test01() const time_get_type& tg = use_facet<time_get_type>(iss.getloc()); const wstring str0 = L"1"; - iter_type end0 = tg.get_time(str0.begin(), str0.end(), iss, err, &tm0); + tg.get_time(str0.begin(), str0.end(), iss, err, &tm0); VERIFY( err == (failbit | eofbit) ); VERIFY( tm0.tm_sec == 0 ); VERIFY( tm0.tm_min == 0 ); diff --git a/libstdc++-v3/testsuite/22_locale/time_get/get_weekday/char/5.cc b/libstdc++-v3/testsuite/22_locale/time_get/get_weekday/char/5.cc index 1583f107d6d..4157a08b560 100644 --- a/libstdc++-v3/testsuite/22_locale/time_get/get_weekday/char/5.cc +++ b/libstdc++-v3/testsuite/22_locale/time_get/get_weekday/char/5.cc @@ -1,6 +1,6 @@ // 2006-06-16 Paolo Carlini <pcarlini@suse.de> -// Copyright (C) 2006, 2009 Free Software Foundation +// Copyright (C) 2006, 2009, 2010 Free Software Foundation // // 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 @@ -49,7 +49,7 @@ void test01() const time_get_type& tg = use_facet<time_get_type>(iss.getloc()); const string str0 = "T"; - iter_type end0 = tg.get_weekday(str0.begin(), str0.end(), iss, err, &tm0); + tg.get_weekday(str0.begin(), str0.end(), iss, err, &tm0); VERIFY( err == (failbit | eofbit) ); VERIFY( tm1.tm_wday == 0 ); diff --git a/libstdc++-v3/testsuite/22_locale/time_get/get_weekday/wchar_t/5.cc b/libstdc++-v3/testsuite/22_locale/time_get/get_weekday/wchar_t/5.cc index 29de6a26d59..02664bf0b3d 100644 --- a/libstdc++-v3/testsuite/22_locale/time_get/get_weekday/wchar_t/5.cc +++ b/libstdc++-v3/testsuite/22_locale/time_get/get_weekday/wchar_t/5.cc @@ -1,6 +1,6 @@ // 2006-06-16 Paolo Carlini <pcarlini@suse.de> -// Copyright (C) 2006, 2009 Free Software Foundation +// Copyright (C) 2006, 2009, 2010 Free Software Foundation // // 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 @@ -49,7 +49,7 @@ void test01() const time_get_type& tg = use_facet<time_get_type>(iss.getloc()); const wstring str0 = L"T"; - iter_type end0 = tg.get_weekday(str0.begin(), str0.end(), iss, err, &tm0); + tg.get_weekday(str0.begin(), str0.end(), iss, err, &tm0); VERIFY( err == (failbit | eofbit) ); VERIFY( tm1.tm_wday == 0 ); diff --git a/libstdc++-v3/testsuite/22_locale/time_get/get_year/char/5.cc b/libstdc++-v3/testsuite/22_locale/time_get/get_year/char/5.cc index 0f6e5a92a04..f3a47bf87b5 100644 --- a/libstdc++-v3/testsuite/22_locale/time_get/get_year/char/5.cc +++ b/libstdc++-v3/testsuite/22_locale/time_get/get_year/char/5.cc @@ -1,6 +1,6 @@ // 2006-06-16 Paolo Carlini <pcarlini@suse.de> -// Copyright (C) 2006, 2009 Free Software Foundation +// Copyright (C) 2006, 2009, 2010 Free Software Foundation // // 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 @@ -49,7 +49,7 @@ void test01() const time_get_type& tg = use_facet<time_get_type>(iss.getloc()); const string str0 = "1"; - iter_type end0 = tg.get_year(str0.begin(), str0.end(), iss, err, &tm0); + tg.get_year(str0.begin(), str0.end(), iss, err, &tm0); VERIFY( err == (failbit | eofbit) ); VERIFY( tm0.tm_year == 0 ); diff --git a/libstdc++-v3/testsuite/22_locale/time_get/get_year/wchar_t/5.cc b/libstdc++-v3/testsuite/22_locale/time_get/get_year/wchar_t/5.cc index 6c5cbf194ce..c932bebdb64 100644 --- a/libstdc++-v3/testsuite/22_locale/time_get/get_year/wchar_t/5.cc +++ b/libstdc++-v3/testsuite/22_locale/time_get/get_year/wchar_t/5.cc @@ -1,6 +1,6 @@ // 2006-06-16 Paolo Carlini <pcarlini@suse.de> -// Copyright (C) 2006, 2009 Free Software Foundation +// Copyright (C) 2006, 2009, 2010 Free Software Foundation // // 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 @@ -49,7 +49,7 @@ void test01() const time_get_type& tg = use_facet<time_get_type>(iss.getloc()); const wstring str0 = L"1"; - iter_type end0 = tg.get_year(str0.begin(), str0.end(), iss, err, &tm0); + tg.get_year(str0.begin(), str0.end(), iss, err, &tm0); VERIFY( err == (failbit | eofbit) ); VERIFY( tm0.tm_year == 0 ); diff --git a/libstdc++-v3/testsuite/22_locale/time_put/put/char/1.cc b/libstdc++-v3/testsuite/22_locale/time_put/put/char/1.cc index 8fed3437a57..32388cc6f0b 100644 --- a/libstdc++-v3/testsuite/22_locale/time_put/put/char/1.cc +++ b/libstdc++-v3/testsuite/22_locale/time_put/put/char/1.cc @@ -1,6 +1,6 @@ // 2001-09-17 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2009 +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2009, 2010 // Free Software Foundation // // This file is part of the GNU ISO C++ Library. This library is free @@ -48,27 +48,27 @@ void test01() // put(iter_type s, ios_base& str, char_type fill, const tm* t, // char format, char modifier = 0) const; oss.str(empty); - iterator_type os_it01 = tim_put.put(oss.rdbuf(), oss, '*', &time1, 'a'); + tim_put.put(oss.rdbuf(), oss, '*', &time1, 'a'); string result1 = oss.str(); VERIFY( result1 == "Sun" ); oss.str(empty); - iterator_type os_it21 = tim_put.put(oss.rdbuf(), oss, '*', &time1, 'x'); + tim_put.put(oss.rdbuf(), oss, '*', &time1, 'x'); string result21 = oss.str(); // "04/04/71" VERIFY( result21 == "04/04/71" ); oss.str(empty); - iterator_type os_it22 = tim_put.put(oss.rdbuf(), oss, '*', &time1, 'X'); + tim_put.put(oss.rdbuf(), oss, '*', &time1, 'X'); string result22 = oss.str(); // "12:00:00" VERIFY( result22 == "12:00:00" ); oss.str(empty); - iterator_type os_it31 = tim_put.put(oss.rdbuf(), oss, '*', &time1, 'x', 'E'); + tim_put.put(oss.rdbuf(), oss, '*', &time1, 'x', 'E'); string result31 = oss.str(); // "04/04/71" VERIFY( result31 == "04/04/71" ); oss.str(empty); - iterator_type os_it32 = tim_put.put(oss.rdbuf(), oss, '*', &time1, 'X', 'E'); + tim_put.put(oss.rdbuf(), oss, '*', &time1, 'X', 'E'); string result32 = oss.str(); // "12:00:00" VERIFY( result32 == "12:00:00" ); } diff --git a/libstdc++-v3/testsuite/22_locale/time_put/put/char/12439_1.cc b/libstdc++-v3/testsuite/22_locale/time_put/put/char/12439_1.cc index 7de5471495f..3c6ad92e483 100644 --- a/libstdc++-v3/testsuite/22_locale/time_put/put/char/12439_1.cc +++ b/libstdc++-v3/testsuite/22_locale/time_put/put/char/12439_1.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2003, 2009 Free Software Foundation +// Copyright (C) 2003, 2009, 2010 Free Software Foundation // // 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 @@ -47,7 +47,7 @@ void test01() bool test __attribute__((unused)) = true; ostringstream stream; - time_t tt = time(NULL); + time_t tt = time(0); const char* fmt = "%c"; diff --git a/libstdc++-v3/testsuite/22_locale/time_put/put/char/12439_3.cc b/libstdc++-v3/testsuite/22_locale/time_put/put/char/12439_3.cc index 54d4cde7cef..3d19d36c20b 100644 --- a/libstdc++-v3/testsuite/22_locale/time_put/put/char/12439_3.cc +++ b/libstdc++-v3/testsuite/22_locale/time_put/put/char/12439_3.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2003, 2009 Free Software Foundation +// Copyright (C) 2003, 2009, 2010 Free Software Foundation // // 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 @@ -46,7 +46,7 @@ void test03() bool test __attribute__((unused)) = true; ostringstream stream; - time_t tt = time(NULL); + time_t tt = time(0); const char* fmt = "%c"; diff --git a/libstdc++-v3/testsuite/22_locale/time_put/put/char/17038.cc b/libstdc++-v3/testsuite/22_locale/time_put/put/char/17038.cc index 318c05dc2d3..77f2972ca6e 100644 --- a/libstdc++-v3/testsuite/22_locale/time_put/put/char/17038.cc +++ b/libstdc++-v3/testsuite/22_locale/time_put/put/char/17038.cc @@ -2,7 +2,7 @@ // 2004-08-25 Paolo Carlini <pcarlini@suse.de> -// Copyright (C) 2004, 2005, 2006, 2009 Free Software Foundation +// Copyright (C) 2004, 2005, 2006, 2009, 2010 Free Software Foundation // // 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 @@ -47,7 +47,7 @@ void test01() const time_put<char>& tim_put = use_facet<time_put<char> >(oss.getloc()); - iterator_type os_it01 = tim_put.put(oss.rdbuf(), oss, '*', &time1, 'c'); + tim_put.put(oss.rdbuf(), oss, '*', &time1, 'c'); string result1 = oss.str(); char time_buffer[128]; diff --git a/libstdc++-v3/testsuite/22_locale/time_put/put/char/2.cc b/libstdc++-v3/testsuite/22_locale/time_put/put/char/2.cc index 7c65ad9985b..255636cbd2c 100644 --- a/libstdc++-v3/testsuite/22_locale/time_put/put/char/2.cc +++ b/libstdc++-v3/testsuite/22_locale/time_put/put/char/2.cc @@ -2,7 +2,7 @@ // 2001-09-17 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2009 +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2009, 2010 // Free Software Foundation // // This file is part of the GNU ISO C++ Library. This library is free @@ -47,27 +47,27 @@ void test02() oss.imbue(loc_de); const time_put<char>& tim_put = use_facet<time_put<char> >(oss.getloc()); - iterator_type os_it02 = tim_put.put(oss.rdbuf(), oss, '*', &time1, 'a'); + tim_put.put(oss.rdbuf(), oss, '*', &time1, 'a'); string result2 = oss.str(); VERIFY( result2 == "Son" || result2 == "So" ); oss.str(empty); // "%d.%m.%Y" - iterator_type os_it23 = tim_put.put(oss.rdbuf(), oss, '*', &time1, 'x'); + tim_put.put(oss.rdbuf(), oss, '*', &time1, 'x'); string result23 = oss.str(); // "04.04.1971" VERIFY( result23 == "04.04.1971" ); oss.str(empty); // "%T" - iterator_type os_it24 = tim_put.put(oss.rdbuf(), oss, '*', &time1, 'X'); + tim_put.put(oss.rdbuf(), oss, '*', &time1, 'X'); string result24 = oss.str(); // "12:00:00" VERIFY( result24 == "12:00:00" ); oss.str(empty); - iterator_type os_it33 = tim_put.put(oss.rdbuf(), oss, '*', &time1, 'x', 'E'); + tim_put.put(oss.rdbuf(), oss, '*', &time1, 'x', 'E'); string result33 = oss.str(); // "04.04.1971" VERIFY( result33 == "04.04.1971" ); oss.str(empty); - iterator_type os_it34 = tim_put.put(oss.rdbuf(), oss, '*', &time1, 'X', 'E'); + tim_put.put(oss.rdbuf(), oss, '*', &time1, 'X', 'E'); string result34 = oss.str(); // "12:00:00" VERIFY( result34 == "12:00:00" ); } diff --git a/libstdc++-v3/testsuite/22_locale/time_put/put/char/3.cc b/libstdc++-v3/testsuite/22_locale/time_put/put/char/3.cc index c71b5e46d26..6b9b330aef7 100644 --- a/libstdc++-v3/testsuite/22_locale/time_put/put/char/3.cc +++ b/libstdc++-v3/testsuite/22_locale/time_put/put/char/3.cc @@ -2,7 +2,7 @@ // 2001-09-17 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2009 +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2009, 2010 // Free Software Foundation // // This file is part of the GNU ISO C++ Library. This library is free @@ -47,27 +47,27 @@ void test03() oss.imbue(loc_hk); const time_put<char>& tim_put = use_facet<time_put<char> >(oss.getloc()); - iterator_type os_it03 = tim_put.put(oss.rdbuf(), oss, '*', &time1, 'a'); + tim_put.put(oss.rdbuf(), oss, '*', &time1, 'a'); string result3 = oss.str(); VERIFY( result3 == "Sun" ); oss.str(empty); // "%A, %B %d, %Y" - iterator_type os_it25 = tim_put.put(oss.rdbuf(), oss, '*', &time1, 'x'); + tim_put.put(oss.rdbuf(), oss, '*', &time1, 'x'); string result25 = oss.str(); // "Sunday, April 04, 1971" VERIFY( result25 == "Sunday, April 04, 1971" ); oss.str(empty); // "%I:%M:%S %Z" - iterator_type os_it26 = tim_put.put(oss.rdbuf(), oss, '*', &time1, 'X'); + tim_put.put(oss.rdbuf(), oss, '*', &time1, 'X'); string result26 = oss.str(); // "12:00:00 CET" or whatever timezone VERIFY( result26.find("12:00:00") != string::npos ); oss.str(empty); - iterator_type os_it35 = tim_put.put(oss.rdbuf(), oss, '*', &time1, 'x', 'E'); + tim_put.put(oss.rdbuf(), oss, '*', &time1, 'x', 'E'); string result35 = oss.str(); // "Sunday, April 04, 1971" VERIFY( result35 == "Sunday, April 04, 1971" ); oss.str(empty); - iterator_type os_it36 = tim_put.put(oss.rdbuf(), oss, '*', &time1, 'X', 'E'); + tim_put.put(oss.rdbuf(), oss, '*', &time1, 'X', 'E'); string result36 = oss.str(); // "12:00:00 CET" VERIFY( result36.find("12:00:00") != string::npos ); } diff --git a/libstdc++-v3/testsuite/22_locale/time_put/put/char/4.cc b/libstdc++-v3/testsuite/22_locale/time_put/put/char/4.cc index 196c1aa9088..21b9725c6b9 100644 --- a/libstdc++-v3/testsuite/22_locale/time_put/put/char/4.cc +++ b/libstdc++-v3/testsuite/22_locale/time_put/put/char/4.cc @@ -2,7 +2,8 @@ // 2001-09-17 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, +// 2009, 2010 // Free Software Foundation // // This file is part of the GNU ISO C++ Library. This library is free @@ -46,27 +47,27 @@ void test04() ostringstream oss; oss.imbue(loc_es); const time_put<char>& tim_put = use_facet<time_put<char> >(oss.getloc()); - iterator_type os_it04 = tim_put.put(oss.rdbuf(), oss, '*', &time1, 'a'); + tim_put.put(oss.rdbuf(), oss, '*', &time1, 'a'); string result4 = oss.str(); VERIFY( result4 == "dom" ); oss.str(empty); // "%d/%m/%y" - iterator_type os_it27 = tim_put.put(oss.rdbuf(), oss, '*', &time1, 'x'); + tim_put.put(oss.rdbuf(), oss, '*', &time1, 'x'); string result27 = oss.str(); // "04/04/71" VERIFY( result27 == "04/04/71" ); oss.str(empty); // "%T" - iterator_type os_it28 = tim_put.put(oss.rdbuf(), oss, '*', &time1, 'X'); + tim_put.put(oss.rdbuf(), oss, '*', &time1, 'X'); string result28 = oss.str(); // "12:00:00" VERIFY( result28 == "12:00:00" ); oss.str(empty); - iterator_type os_it37 = tim_put.put(oss.rdbuf(), oss, '*', &time1, 'x', 'E'); + tim_put.put(oss.rdbuf(), oss, '*', &time1, 'x', 'E'); string result37 = oss.str(); // "04/04/71" VERIFY( result37 == "04/04/71" ); oss.str(empty); - iterator_type os_it38 = tim_put.put(oss.rdbuf(), oss, '*', &time1, 'X', 'E'); + tim_put.put(oss.rdbuf(), oss, '*', &time1, 'X', 'E'); string result38 = oss.str(); // "12:00:00" VERIFY( result38 == "12:00:00" ); } diff --git a/libstdc++-v3/testsuite/22_locale/time_put/put/char/5.cc b/libstdc++-v3/testsuite/22_locale/time_put/put/char/5.cc index 2f9c6a6bc64..96ce947c2af 100644 --- a/libstdc++-v3/testsuite/22_locale/time_put/put/char/5.cc +++ b/libstdc++-v3/testsuite/22_locale/time_put/put/char/5.cc @@ -1,6 +1,6 @@ // 2001-09-17 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009 +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010 // Free Software Foundation // // This file is part of the GNU ISO C++ Library. This library is free @@ -48,13 +48,12 @@ void test05() // 2 oss.str(empty); - iterator_type os_it05 = tim_put.put(oss.rdbuf(), oss, '*', &time1, - date, date + traits::length(date)); + tim_put.put(oss.rdbuf(), oss, '*', &time1, + date, date + traits::length(date)); string result5 = oss.str(); VERIFY( result5 == "Sunday, the second of April"); - iterator_type os_it06 = tim_put.put(oss.rdbuf(), oss, '*', &time1, - date_ex, - date_ex + traits::length(date_ex)); + tim_put.put(oss.rdbuf(), oss, '*', &time1, + date_ex, date_ex + traits::length(date_ex)); string result6 = oss.str(); VERIFY( result6 != result5 ); } diff --git a/libstdc++-v3/testsuite/22_locale/time_put/put/char/6.cc b/libstdc++-v3/testsuite/22_locale/time_put/put/char/6.cc index ff3938cc9e4..9e144ffcb03 100644 --- a/libstdc++-v3/testsuite/22_locale/time_put/put/char/6.cc +++ b/libstdc++-v3/testsuite/22_locale/time_put/put/char/6.cc @@ -2,7 +2,7 @@ // 2001-09-17 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009 +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010 // Free Software Foundation // // This file is part of the GNU ISO C++ Library. This library is free @@ -50,13 +50,12 @@ void test06() oss.imbue(loc_de); const time_put<char>& tim_put = use_facet<time_put<char> >(oss.getloc()); - iterator_type os_it07 = tim_put.put(oss.rdbuf(), oss, '*', &time1, - date, date + traits::length(date)); + tim_put.put(oss.rdbuf(), oss, '*', &time1, + date, date + traits::length(date)); string result7 = oss.str(); VERIFY( result7 == "Sonntag, the second of April"); - iterator_type os_it08 = tim_put.put(oss.rdbuf(), oss, '*', &time1, - date_ex, - date_ex + traits::length(date_ex)); + tim_put.put(oss.rdbuf(), oss, '*', &time1, + date_ex, date_ex + traits::length(date_ex)); string result8 = oss.str(); VERIFY( result8 != result7 ); } diff --git a/libstdc++-v3/testsuite/22_locale/time_put/put/char/7.cc b/libstdc++-v3/testsuite/22_locale/time_put/put/char/7.cc index 93b139d95d1..67f1aa580f6 100644 --- a/libstdc++-v3/testsuite/22_locale/time_put/put/char/7.cc +++ b/libstdc++-v3/testsuite/22_locale/time_put/put/char/7.cc @@ -2,7 +2,7 @@ // 2001-09-17 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009 +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010 // Free Software Foundation // // This file is part of the GNU ISO C++ Library. This library is free @@ -50,13 +50,12 @@ void test07() oss.imbue(loc_hk); const time_put<char>& tim_put = use_facet<time_put<char> >(oss.getloc()); - iterator_type os_it09 = tim_put.put(oss.rdbuf(), oss, '*', &time1, - date, date + traits::length(date)); + tim_put.put(oss.rdbuf(), oss, '*', &time1, + date, date + traits::length(date)); string result9 = oss.str(); VERIFY( result9 == "Sunday, the second of April"); - iterator_type os_it10 = tim_put.put(oss.rdbuf(), oss, '*', &time1, - date_ex, - date_ex + traits::length(date_ex)); + tim_put.put(oss.rdbuf(), oss, '*', &time1, + date_ex, date_ex + traits::length(date_ex)); string result10 = oss.str(); VERIFY( result10 != result9 ); } diff --git a/libstdc++-v3/testsuite/22_locale/time_put/put/char/8.cc b/libstdc++-v3/testsuite/22_locale/time_put/put/char/8.cc index 2834954616a..c3fc4d83acd 100644 --- a/libstdc++-v3/testsuite/22_locale/time_put/put/char/8.cc +++ b/libstdc++-v3/testsuite/22_locale/time_put/put/char/8.cc @@ -2,7 +2,7 @@ // 2001-09-17 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009 +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010 // Free Software Foundation // // This file is part of the GNU ISO C++ Library. This library is free @@ -49,13 +49,12 @@ void test08() ostringstream oss; oss.imbue(loc_fr); const time_put<char>& tim_put = use_facet<time_put<char> >(oss.getloc()); - iterator_type os_it11 = tim_put.put(oss.rdbuf(), oss, '*', &time1, - date, date + traits::length(date)); + tim_put.put(oss.rdbuf(), oss, '*', &time1, + date, date + traits::length(date)); string result11 = oss.str(); VERIFY( result11 == "dimanche, the second of avril"); - iterator_type os_it12 = tim_put.put(oss.rdbuf(), oss, '*', &time1, - date_ex, - date_ex + traits::length(date_ex)); + tim_put.put(oss.rdbuf(), oss, '*', &time1, + date_ex, date_ex + traits::length(date_ex)); string result12 = oss.str(); VERIFY( result12 != result11 ); } diff --git a/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/1.cc b/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/1.cc index 2ed02a5daa9..23259753199 100644 --- a/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/1.cc @@ -1,6 +1,6 @@ // 2001-09-17 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2009 +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2009, 2010 // Free Software Foundation // // This file is part of the GNU ISO C++ Library. This library is free @@ -43,34 +43,35 @@ void test01() const wstring empty; wostringstream oss; oss.imbue(loc_c); - const time_put<wchar_t>& tim_put = use_facet<time_put<wchar_t> >(oss.getloc()); + const time_put<wchar_t>& tim_put + = use_facet<time_put<wchar_t> >(oss.getloc()); // 1 // iter_type // put(iter_type s, ios_base& str, char_type fill, const tm* t, // char format, char modifier = 0) const; oss.str(empty); - iterator_type os_it01 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'a'); + tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'a'); wstring result1 = oss.str(); VERIFY( result1 == L"Sun" ); oss.str(empty); - iterator_type os_it21 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'x'); + tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'x'); wstring result21 = oss.str(); // "04/04/71" VERIFY( result21 == L"04/04/71" ); oss.str(empty); - iterator_type os_it22 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'X'); + tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'X'); wstring result22 = oss.str(); // "12:00:00" VERIFY( result22 == L"12:00:00" ); oss.str(empty); - iterator_type os_it31 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'x', 'E'); + tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'x', 'E'); wstring result31 = oss.str(); // "04/04/71" VERIFY( result31 == L"04/04/71" ); oss.str(empty); - iterator_type os_it32 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'X', 'E'); + tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'X', 'E'); wstring result32 = oss.str(); // "12:00:00" VERIFY( result32 == L"12:00:00" ); } diff --git a/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/12439_1.cc b/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/12439_1.cc index 159b8f193bd..1298fa9e5e9 100644 --- a/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/12439_1.cc +++ b/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/12439_1.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2003, 2009 Free Software Foundation +// Copyright (C) 2003, 2009, 2010 Free Software Foundation // // 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 @@ -45,7 +45,7 @@ void test01() bool test __attribute__((unused)) = true; wostringstream stream; - time_t tt = time(NULL); + time_t tt = time(0); const wchar_t* fmt = L"%c"; diff --git a/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/12439_2.cc b/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/12439_2.cc index 515c998c2b1..c231354743e 100644 --- a/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/12439_2.cc +++ b/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/12439_2.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2003, 2009 Free Software Foundation +// Copyright (C) 2003, 2009, 2010 Free Software Foundation // // 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 @@ -42,7 +42,7 @@ void test02() locale loc; const tp_type& tp = use_facet<tp_type>(loc); - time_t tt = time(NULL); + time_t tt = time(0); wostringstream stream; tp.put(tp_type::iter_type(stream), stream, stream.fill(), diff --git a/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/12439_3.cc b/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/12439_3.cc index 8127c75ea47..2ec4225ba9c 100644 --- a/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/12439_3.cc +++ b/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/12439_3.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2003, 2009 Free Software Foundation +// Copyright (C) 2003, 2009, 2010 Free Software Foundation // // 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 @@ -44,7 +44,7 @@ void test03() bool test __attribute__((unused)) = true; wostringstream stream; - time_t tt = time(NULL); + time_t tt = time(0); const wchar_t* fmt = L"%c"; diff --git a/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/17038.cc b/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/17038.cc index d4f90468869..088acf2f3f4 100644 --- a/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/17038.cc +++ b/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/17038.cc @@ -2,7 +2,7 @@ // 2004-08-25 Paolo Carlini <pcarlini@suse.de> -// Copyright (C) 2004, 2005, 2006, 2009 Free Software Foundation +// Copyright (C) 2004, 2005, 2006, 2009, 2010 Free Software Foundation // // 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 @@ -47,7 +47,7 @@ void test01() const time_put<wchar_t>& tim_put = use_facet<time_put<wchar_t> >(oss.getloc()); - iterator_type os_it01 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'c'); + tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'c'); wstring result1 = oss.str(); wchar_t time_buffer[128]; diff --git a/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/2.cc b/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/2.cc index c8cc42c2cf7..7ead914b166 100644 --- a/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/2.cc +++ b/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/2.cc @@ -2,7 +2,7 @@ // 2001-09-17 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2009 +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2009, 2010 // Free Software Foundation // // This file is part of the GNU ISO C++ Library. This library is free @@ -45,29 +45,30 @@ void test02() const wstring empty; wostringstream oss; oss.imbue(loc_de); - const time_put<wchar_t>& tim_put = use_facet<time_put<wchar_t> >(oss.getloc()); + const time_put<wchar_t>& tim_put + = use_facet<time_put<wchar_t> >(oss.getloc()); - iterator_type os_it02 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'a'); + tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'a'); wstring result2 = oss.str(); VERIFY( result2 == L"Son" || result2 == L"So" ); oss.str(empty); // "%d.%m.%Y" - iterator_type os_it23 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'x'); + tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'x'); wstring result23 = oss.str(); // "04.04.1971" VERIFY( result23 == L"04.04.1971" ); oss.str(empty); // "%T" - iterator_type os_it24 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'X'); + tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'X'); wstring result24 = oss.str(); // "12:00:00" VERIFY( result24 == L"12:00:00" ); oss.str(empty); - iterator_type os_it33 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'x', 'E'); + tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'x', 'E'); wstring result33 = oss.str(); // "04.04.1971" VERIFY( result33 == L"04.04.1971" ); oss.str(empty); - iterator_type os_it34 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'X', 'E'); + tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'X', 'E'); wstring result34 = oss.str(); // "12:00:00" VERIFY( result34 == L"12:00:00" ); } diff --git a/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/3.cc b/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/3.cc index eec2fa7a358..6e099d64a76 100644 --- a/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/3.cc +++ b/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/3.cc @@ -2,7 +2,7 @@ // 2001-09-17 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2009 +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2009, 2010 // Free Software Foundation // // This file is part of the GNU ISO C++ Library. This library is free @@ -45,32 +45,32 @@ void test03() const wstring empty; wostringstream oss; oss.imbue(loc_hk); - const time_put<wchar_t>& tim_put = use_facet<time_put<wchar_t> >(oss.getloc()); + const time_put<wchar_t>& tim_put + = use_facet<time_put<wchar_t> >(oss.getloc()); - iterator_type os_it03 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'a'); + tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'a'); wstring result3 = oss.str(); VERIFY( result3 == L"Sun" ); oss.str(empty); // "%A, %B %d, %Y" - iterator_type os_it25 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'x'); + tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'x'); wstring result25 = oss.str(); // "Sunday, April 04, 1971" VERIFY( result25 == L"Sunday, April 04, 1971" ); oss.str(empty); // "%I:%M:%S %Z" - iterator_type os_it26 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'X'); + tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'X'); wstring result26 = oss.str(); // "12:00:00 CET" or whatever timezone VERIFY( result26.find(L"12:00:00") != wstring::npos ); oss.str(empty); - iterator_type os_it35 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'x', 'E'); + tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'x', 'E'); wstring result35 = oss.str(); // "Sunday, April 04, 1971" VERIFY( result35 == L"Sunday, April 04, 1971" ); oss.str(empty); - iterator_type os_it36 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'X', 'E'); + tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'X', 'E'); wstring result36 = oss.str(); // "12:00:00 CET" VERIFY( result36.find(L"12:00:00") != wstring::npos ); - } int main() diff --git a/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/4.cc b/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/4.cc index e56f14ebbd5..0ae2a1f8898 100644 --- a/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/4.cc +++ b/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/4.cc @@ -2,7 +2,8 @@ // 2001-09-17 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, +// 2009, 2010 // Free Software Foundation // // This file is part of the GNU ISO C++ Library. This library is free @@ -45,28 +46,30 @@ void test04() const wstring empty; wostringstream oss; oss.imbue(loc_es); - const time_put<wchar_t>& tim_put = use_facet<time_put<wchar_t> >(oss.getloc()); - iterator_type os_it04 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'a'); + const time_put<wchar_t>& tim_put + = use_facet<time_put<wchar_t> >(oss.getloc()); + + tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'a'); wstring result4 = oss.str(); VERIFY( result4 == L"dom" ); oss.str(empty); // "%d/%m/%y" - iterator_type os_it27 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'x'); + tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'x'); wstring result27 = oss.str(); // "04/04/71" VERIFY( result27 == L"04/04/71" ); oss.str(empty); // "%T" - iterator_type os_it28 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'X'); + tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'X'); wstring result28 = oss.str(); // "12:00:00" VERIFY( result28 == L"12:00:00" ); oss.str(empty); - iterator_type os_it37 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'x', 'E'); + tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'x', 'E'); wstring result37 = oss.str(); // "04/04/71" VERIFY( result37 == L"04/04/71" ); oss.str(empty); - iterator_type os_it38 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'X', 'E'); + tim_put.put(oss.rdbuf(), oss, L'*', &time1, 'X', 'E'); wstring result38 = oss.str(); // "12:00:00" VERIFY( result38 == L"12:00:00" ); } diff --git a/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/5.cc b/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/5.cc index 77f7798abe4..1a355e0a514 100644 --- a/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/5.cc +++ b/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/5.cc @@ -1,6 +1,6 @@ // 2001-09-17 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009 +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010 // Free Software Foundation // // This file is part of the GNU ISO C++ Library. This library is free @@ -46,17 +46,17 @@ void test05() const wstring empty; wostringstream oss; oss.imbue(loc_c); - const time_put<wchar_t>& tim_put = use_facet<time_put<wchar_t> >(oss.getloc()); + const time_put<wchar_t>& tim_put + = use_facet<time_put<wchar_t> >(oss.getloc()); // 2 oss.str(empty); - iterator_type os_it05 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, - date, date + traits::length(date)); + tim_put.put(oss.rdbuf(), oss, L'*', &time1, + date, date + traits::length(date)); wstring result5 = oss.str(); VERIFY( result5 == L"Sunday, the second of April"); - iterator_type os_it06 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, - date_ex, - date_ex + traits::length(date_ex)); + tim_put.put(oss.rdbuf(), oss, L'*', &time1, + date_ex, date_ex + traits::length(date_ex)); wstring result6 = oss.str(); VERIFY( result6 != result5 ); } diff --git a/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/6.cc b/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/6.cc index 91a68a05c03..dedac7b78fd 100644 --- a/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/6.cc +++ b/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/6.cc @@ -2,7 +2,7 @@ // 2001-09-17 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2009 +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2009, 2010 // Free Software Foundation // // This file is part of the GNU ISO C++ Library. This library is free @@ -48,14 +48,15 @@ void test06() const wstring empty; wostringstream oss; oss.imbue(loc_de); - const time_put<wchar_t>& tim_put = use_facet<time_put<wchar_t> >(oss.getloc()); + const time_put<wchar_t>& tim_put + = use_facet<time_put<wchar_t> >(oss.getloc()); - iterator_type os_it07 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, - date, date + traits::length(date)); + tim_put.put(oss.rdbuf(), oss, L'*', &time1, + date, date + traits::length(date)); wstring result7 = oss.str(); VERIFY( result7 == L"Sonntag, the second of April"); - iterator_type os_it08 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, - date_ex, date_ex + traits::length(date)); + tim_put.put(oss.rdbuf(), oss, L'*', &time1, + date_ex, date_ex + traits::length(date)); wstring result8 = oss.str(); VERIFY( result8 != result7 ); } diff --git a/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/7.cc b/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/7.cc index 439d6086ca0..5f0926c88d0 100644 --- a/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/7.cc +++ b/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/7.cc @@ -2,7 +2,7 @@ // 2001-09-17 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2009 +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2009, 2010 // Free Software Foundation // // This file is part of the GNU ISO C++ Library. This library is free @@ -48,14 +48,15 @@ void test07() const wstring empty; wostringstream oss; oss.imbue(loc_hk); - const time_put<wchar_t>& tim_put = use_facet<time_put<wchar_t> >(oss.getloc()); + const time_put<wchar_t>& tim_put + = use_facet<time_put<wchar_t> >(oss.getloc()); - iterator_type os_it09 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, - date, date + traits::length(date)); + tim_put.put(oss.rdbuf(), oss, L'*', &time1, + date, date + traits::length(date)); wstring result9 = oss.str(); VERIFY( result9 == L"Sunday, the second of April"); - iterator_type os_it10 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, - date_ex, date_ex + traits::length(date)); + tim_put.put(oss.rdbuf(), oss, L'*', &time1, + date_ex, date_ex + traits::length(date)); wstring result10 = oss.str(); VERIFY( result10 != result9 ); } diff --git a/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/8.cc b/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/8.cc index b073e8b9287..09311f4c2c8 100644 --- a/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/8.cc +++ b/libstdc++-v3/testsuite/22_locale/time_put/put/wchar_t/8.cc @@ -2,7 +2,7 @@ // 2001-09-17 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2009 +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2009, 2010 // Free Software Foundation // // This file is part of the GNU ISO C++ Library. This library is free @@ -48,13 +48,15 @@ void test08() const wstring empty; wostringstream oss; oss.imbue(loc_fr); - const time_put<wchar_t>& tim_put = use_facet<time_put<wchar_t> >(oss.getloc()); - iterator_type os_it11 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, - date, date + traits::length(date)); + const time_put<wchar_t>& tim_put + = use_facet<time_put<wchar_t> >(oss.getloc()); + + tim_put.put(oss.rdbuf(), oss, L'*', &time1, + date, date + traits::length(date)); wstring result11 = oss.str(); VERIFY( result11 == L"dimanche, the second of avril"); - iterator_type os_it12 = tim_put.put(oss.rdbuf(), oss, L'*', &time1, - date_ex, date_ex + traits::length(date)); + tim_put.put(oss.rdbuf(), oss, L'*', &time1, + date_ex, date_ex + traits::length(date)); wstring result12 = oss.str(); VERIFY( result12 != result11 ); } diff --git a/libstdc++-v3/testsuite/23_containers/deque/capacity/moveable.cc b/libstdc++-v3/testsuite/23_containers/deque/capacity/moveable.cc index 089b10b83a6..475880888cc 100644 --- a/libstdc++-v3/testsuite/23_containers/deque/capacity/moveable.cc +++ b/libstdc++-v3/testsuite/23_containers/deque/capacity/moveable.cc @@ -1,6 +1,6 @@ // { dg-options "-std=gnu++0x" } -// Copyright (C) 2005, 2006, 2007, 2009 Free Software Foundation, Inc. +// Copyright (C) 2005, 2006, 2007, 2009, 2010 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 @@ -17,16 +17,12 @@ // with this library; see the file COPYING3. If not see // <http://www.gnu.org/licenses/>. - #include <deque> #include <testsuite_hooks.h> #include <testsuite_rvalref.h> using namespace __gnu_test; -// According to n1771, there should be two resizes, with and without -// parameter. We only have one at present, whose second parameter defaults -// to a default-constructed object. void test01() { @@ -38,30 +34,17 @@ test01() a.resize(98); a.resize(99); a.resize(100); -#if ! defined _GLIBCXX_DEBUG && ! defined _GLIBCXX_PROFILE - VERIFY( copycounter::copycount == 100 ); -#else - VERIFY( copycounter::copycount == 100 + 4 ); -#endif + VERIFY( copycounter::copycount == 0 ); + a.resize(99); a.resize(0); -#if ! defined _GLIBCXX_DEBUG && ! defined _GLIBCXX_PROFILE - VERIFY( copycounter::copycount == 100 ); -#else - VERIFY( copycounter::copycount == 100 + 6 ); -#endif + VERIFY( copycounter::copycount == 0 ); + a.resize(100); -#if ! defined _GLIBCXX_DEBUG && ! defined _GLIBCXX_PROFILE - VERIFY( copycounter::copycount == 200 ); -#else - VERIFY( copycounter::copycount == 200 + 7 ); -#endif + VERIFY( copycounter::copycount == 0 ); + a.clear(); -#if ! defined _GLIBCXX_DEBUG && ! defined _GLIBCXX_PROFILE - VERIFY( copycounter::copycount == 200 ); -#else - VERIFY( copycounter::copycount == 200 + 7 ); -#endif + VERIFY( copycounter::copycount == 0 ); } diff --git a/libstdc++-v3/testsuite/23_containers/deque/capacity/resize_size.cc b/libstdc++-v3/testsuite/23_containers/deque/capacity/resize_size.cc new file mode 100644 index 00000000000..229a0eb60bc --- /dev/null +++ b/libstdc++-v3/testsuite/23_containers/deque/capacity/resize_size.cc @@ -0,0 +1,43 @@ +// { dg-options "-std=gnu++0x" } + +// 2010-06-18 Paolo Carlini <paolo.carlini@oracle.com> + +// Copyright (C) 2010 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 <deque> +#include <testsuite_hooks.h> +#include <testsuite_api.h> + +void test01() +{ + bool test __attribute__((unused)) = true; + + std::deque<__gnu_test::NonCopyConstructible> d; + VERIFY( std::distance(d.begin(), d.end()) == 0 ); + + d.resize(1000); + VERIFY( std::distance(d.begin(), d.end()) == 1000 ); + for(auto it = d.begin(); it != d.end(); ++it) + VERIFY( *it == -1 ); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/23_containers/deque/cons/cons_size.cc b/libstdc++-v3/testsuite/23_containers/deque/cons/cons_size.cc new file mode 100644 index 00000000000..0207fd7174c --- /dev/null +++ b/libstdc++-v3/testsuite/23_containers/deque/cons/cons_size.cc @@ -0,0 +1,40 @@ +// { dg-options "-std=gnu++0x" } + +// 2010-06-18 Paolo Carlini <paolo.carlini@oracle.com> + +// Copyright (C) 2010 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 <deque> +#include <testsuite_hooks.h> +#include <testsuite_api.h> + +void test01() +{ + bool test __attribute__((unused)) = true; + + std::deque<__gnu_test::NonCopyConstructible> d(1000); + VERIFY( std::distance(d.begin(), d.end()) == 1000 ); + for(auto it = d.begin(); it != d.end(); ++it) + VERIFY( *it == -1 ); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/23_containers/deque/requirements/dr438/assign_neg.cc b/libstdc++-v3/testsuite/23_containers/deque/requirements/dr438/assign_neg.cc index 96be31cb62a..bd6ee636305 100644 --- a/libstdc++-v3/testsuite/23_containers/deque/requirements/dr438/assign_neg.cc +++ b/libstdc++-v3/testsuite/23_containers/deque/requirements/dr438/assign_neg.cc @@ -18,7 +18,7 @@ // <http://www.gnu.org/licenses/>. // { dg-do compile } -// { dg-error "no matching" "" { target *-*-* } 1577 } +// { dg-error "no matching" "" { target *-*-* } 1659 } // { dg-excess-errors "" } #include <deque> diff --git a/libstdc++-v3/testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc b/libstdc++-v3/testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc index 59d4e2f4158..21c9d4e4f3c 100644 --- a/libstdc++-v3/testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc +++ b/libstdc++-v3/testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc @@ -18,7 +18,7 @@ // <http://www.gnu.org/licenses/>. // { dg-do compile } -// { dg-error "no matching" "" { target *-*-* } 1516 } +// { dg-error "no matching" "" { target *-*-* } 1592 } // { dg-excess-errors "" } #include <deque> diff --git a/libstdc++-v3/testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc b/libstdc++-v3/testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc index 6208581b877..08f54d68018 100644 --- a/libstdc++-v3/testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc +++ b/libstdc++-v3/testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc @@ -1,6 +1,6 @@ // 2007-04-27 Paolo Carlini <pcarlini@suse.de> -// Copyright (C) 2007, 2008, 2009 Free Software Foundation +// Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation // // 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 @@ -18,7 +18,7 @@ // <http://www.gnu.org/licenses/>. // { dg-do compile } -// { dg-error "no matching" "" { target *-*-* } 1516 } +// { dg-error "no matching" "" { target *-*-* } 1592 } // { dg-excess-errors "" } #include <deque> diff --git a/libstdc++-v3/testsuite/23_containers/deque/requirements/dr438/insert_neg.cc b/libstdc++-v3/testsuite/23_containers/deque/requirements/dr438/insert_neg.cc index 7fb2479d02c..a5bd6065c1c 100644 --- a/libstdc++-v3/testsuite/23_containers/deque/requirements/dr438/insert_neg.cc +++ b/libstdc++-v3/testsuite/23_containers/deque/requirements/dr438/insert_neg.cc @@ -18,7 +18,7 @@ // <http://www.gnu.org/licenses/>. // { dg-do compile } -// { dg-error "no matching" "" { target *-*-* } 1661 } +// { dg-error "no matching" "" { target *-*-* } 1743 } // { dg-excess-errors "" } #include <deque> diff --git a/libstdc++-v3/testsuite/23_containers/forward_list/cons/10.cc b/libstdc++-v3/testsuite/23_containers/forward_list/capacity/resize_size.cc index 4e599dab6bc..e22af3cbc19 100644 --- a/libstdc++-v3/testsuite/23_containers/forward_list/cons/10.cc +++ b/libstdc++-v3/testsuite/23_containers/forward_list/capacity/resize_size.cc @@ -21,24 +21,17 @@ #include <forward_list> #include <testsuite_hooks.h> - -struct NoCopyConstructor -{ - NoCopyConstructor() : num(-1) { } - NoCopyConstructor(const NoCopyConstructor&) = delete; - - operator int() { return num; } - -private: - int num; -}; +#include <testsuite_api.h> void test01() { bool test __attribute__((unused)) = true; - std::forward_list<NoCopyConstructor> fl(5); - VERIFY( std::distance(fl.begin(), fl.end()) == 5 ); + std::forward_list<__gnu_test::NonCopyConstructible> fl; + VERIFY( std::distance(fl.begin(), fl.end()) == 0 ); + + fl.resize(1000); + VERIFY( std::distance(fl.begin(), fl.end()) == 1000 ); for(auto it = fl.begin(); it != fl.end(); ++it) VERIFY( *it == -1 ); } diff --git a/libstdc++-v3/testsuite/23_containers/forward_list/modifiers/6.cc b/libstdc++-v3/testsuite/23_containers/forward_list/cons/cons_size.cc index 985f592e602..3d07f672089 100644 --- a/libstdc++-v3/testsuite/23_containers/forward_list/modifiers/6.cc +++ b/libstdc++-v3/testsuite/23_containers/forward_list/cons/cons_size.cc @@ -21,27 +21,14 @@ #include <forward_list> #include <testsuite_hooks.h> - -struct NoCopyConstructor -{ - NoCopyConstructor() : num(-1) { } - NoCopyConstructor(const NoCopyConstructor&) = delete; - - operator int() { return num; } - -private: - int num; -}; +#include <testsuite_api.h> void test01() { bool test __attribute__((unused)) = true; - std::forward_list<NoCopyConstructor> fl; - VERIFY( std::distance(fl.begin(), fl.end()) == 0 ); - - fl.resize(10); - VERIFY( std::distance(fl.begin(), fl.end()) == 10 ); + std::forward_list<__gnu_test::NonCopyConstructible> fl(1000); + VERIFY( std::distance(fl.begin(), fl.end()) == 1000 ); for(auto it = fl.begin(); it != fl.end(); ++it) VERIFY( *it == -1 ); } diff --git a/libstdc++-v3/testsuite/23_containers/forward_list/requirements/dr438/assign_neg.cc b/libstdc++-v3/testsuite/23_containers/forward_list/requirements/dr438/assign_neg.cc index 1625e3bc76b..aa0f3e07def 100644 --- a/libstdc++-v3/testsuite/23_containers/forward_list/requirements/dr438/assign_neg.cc +++ b/libstdc++-v3/testsuite/23_containers/forward_list/requirements/dr438/assign_neg.cc @@ -1,6 +1,6 @@ // { dg-do compile } // { dg-options "-std=gnu++0x" } -// { dg-error "no matching" "" { target *-*-* } 1196 } +// { dg-error "no matching" "" { target *-*-* } 1198 } // { dg-excess-errors "" } // Copyright (C) 2009, 2010 Free Software Foundation diff --git a/libstdc++-v3/testsuite/23_containers/forward_list/requirements/dr438/constructor_1_neg.cc b/libstdc++-v3/testsuite/23_containers/forward_list/requirements/dr438/constructor_1_neg.cc index 5acfcd1f47f..3975b051611 100644 --- a/libstdc++-v3/testsuite/23_containers/forward_list/requirements/dr438/constructor_1_neg.cc +++ b/libstdc++-v3/testsuite/23_containers/forward_list/requirements/dr438/constructor_1_neg.cc @@ -1,6 +1,6 @@ // { dg-do compile } // { dg-options "-std=gnu++0x" } -// { dg-error "no matching" "" { target *-*-* } 1196 } +// { dg-error "no matching" "" { target *-*-* } 1198 } // { dg-excess-errors "" } // Copyright (C) 2009, 2010 Free Software Foundation diff --git a/libstdc++-v3/testsuite/23_containers/forward_list/requirements/dr438/constructor_2_neg.cc b/libstdc++-v3/testsuite/23_containers/forward_list/requirements/dr438/constructor_2_neg.cc index dcf69089b00..0b0471c8cc9 100644 --- a/libstdc++-v3/testsuite/23_containers/forward_list/requirements/dr438/constructor_2_neg.cc +++ b/libstdc++-v3/testsuite/23_containers/forward_list/requirements/dr438/constructor_2_neg.cc @@ -1,6 +1,6 @@ // { dg-do compile } // { dg-options "-std=gnu++0x" } -// { dg-error "no matching" "" { target *-*-* } 1196 } +// { dg-error "no matching" "" { target *-*-* } 1198 } // { dg-excess-errors "" } // Copyright (C) 2009, 2010 Free Software Foundation diff --git a/libstdc++-v3/testsuite/23_containers/forward_list/requirements/dr438/insert_neg.cc b/libstdc++-v3/testsuite/23_containers/forward_list/requirements/dr438/insert_neg.cc index 22574fd081a..849eb643e87 100644 --- a/libstdc++-v3/testsuite/23_containers/forward_list/requirements/dr438/insert_neg.cc +++ b/libstdc++-v3/testsuite/23_containers/forward_list/requirements/dr438/insert_neg.cc @@ -1,6 +1,6 @@ // { dg-do compile } // { dg-options "-std=gnu++0x" } -// { dg-error "no matching" "" { target *-*-* } 1196 } +// { dg-error "no matching" "" { target *-*-* } 1198 } // { dg-excess-errors "" } // Copyright (C) 2009, 2010 Free Software Foundation diff --git a/libstdc++-v3/testsuite/23_containers/headers/array/std_c++0x_neg.cc b/libstdc++-v3/testsuite/23_containers/headers/array/std_c++0x_neg.cc index 3c47ae204c1..5d9bf7e0a3f 100644 --- a/libstdc++-v3/testsuite/23_containers/headers/array/std_c++0x_neg.cc +++ b/libstdc++-v3/testsuite/23_containers/headers/array/std_c++0x_neg.cc @@ -18,7 +18,7 @@ // with this library; see the file COPYING3. If not see // <http://www.gnu.org/licenses/>. -#include <array> // { dg-excess-errors "In file included from" } +#include <array> // { dg-error "upcoming ISO" "" { target *-*-* } 31 } diff --git a/libstdc++-v3/testsuite/23_containers/headers/tuple/std_c++0x_neg.cc b/libstdc++-v3/testsuite/23_containers/headers/tuple/std_c++0x_neg.cc index 89f850cc090..266874da23b 100644 --- a/libstdc++-v3/testsuite/23_containers/headers/tuple/std_c++0x_neg.cc +++ b/libstdc++-v3/testsuite/23_containers/headers/tuple/std_c++0x_neg.cc @@ -18,7 +18,7 @@ // with this library; see the file COPYING3. If not see // <http://www.gnu.org/licenses/>. -#include <tuple> // { dg-excess-errors "In file included from" } +#include <tuple> // { dg-error "upcoming ISO" "" { target *-*-* } 31 } diff --git a/libstdc++-v3/testsuite/23_containers/headers/unordered_map/std_c++0x_neg.cc b/libstdc++-v3/testsuite/23_containers/headers/unordered_map/std_c++0x_neg.cc index 65f05e1e693..dc85bc50e92 100644 --- a/libstdc++-v3/testsuite/23_containers/headers/unordered_map/std_c++0x_neg.cc +++ b/libstdc++-v3/testsuite/23_containers/headers/unordered_map/std_c++0x_neg.cc @@ -18,7 +18,7 @@ // with this library; see the file COPYING3. If not see // <http://www.gnu.org/licenses/>. -#include <unordered_map> // { dg-excess-errors "In file included from" } +#include <unordered_map> // { dg-error "upcoming ISO" "" { target *-*-* } 31 } diff --git a/libstdc++-v3/testsuite/23_containers/headers/unordered_set/std_c++0x_neg.cc b/libstdc++-v3/testsuite/23_containers/headers/unordered_set/std_c++0x_neg.cc index 3dabc3207be..ab22c39a6ba 100644 --- a/libstdc++-v3/testsuite/23_containers/headers/unordered_set/std_c++0x_neg.cc +++ b/libstdc++-v3/testsuite/23_containers/headers/unordered_set/std_c++0x_neg.cc @@ -18,7 +18,7 @@ // with this library; see the file COPYING3. If not see // <http://www.gnu.org/licenses/>. -#include <unordered_set> // { dg-excess-errors "In file included from" } +#include <unordered_set> // { dg-error "upcoming ISO" "" { target *-*-* } 31 } diff --git a/libstdc++-v3/testsuite/23_containers/list/23781.cc b/libstdc++-v3/testsuite/23_containers/list/23781.cc index ca275bda5ad..7b291df798a 100644 --- a/libstdc++-v3/testsuite/23_containers/list/23781.cc +++ b/libstdc++-v3/testsuite/23_containers/list/23781.cc @@ -1,6 +1,6 @@ // 2005-09-10 Paolo Carlini <pcarlini@suse.de> // -// Copyright (C) 2005, 2009 Free Software Foundation, Inc. +// Copyright (C) 2005, 2009, 2010 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 @@ -22,6 +22,7 @@ // libstdc++/23781 #include <list> +#include <cstddef> typedef std::list<int> list_type; list_type::iterator it = NULL; // { dg-error "conversion" } diff --git a/libstdc++-v3/testsuite/23_containers/list/capacity/resize_size.cc b/libstdc++-v3/testsuite/23_containers/list/capacity/resize_size.cc new file mode 100644 index 00000000000..06424c0a8c1 --- /dev/null +++ b/libstdc++-v3/testsuite/23_containers/list/capacity/resize_size.cc @@ -0,0 +1,43 @@ +// { dg-options "-std=gnu++0x" } + +// 2010-06-18 Paolo Carlini <paolo.carlini@oracle.com> + +// Copyright (C) 2010 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 <list> +#include <testsuite_hooks.h> +#include <testsuite_api.h> + +void test01() +{ + bool test __attribute__((unused)) = true; + + std::list<__gnu_test::NonCopyConstructible> l; + VERIFY( std::distance(l.begin(), l.end()) == 0 ); + + l.resize(1000); + VERIFY( std::distance(l.begin(), l.end()) == 1000 ); + for(auto it = l.begin(); it != l.end(); ++it) + VERIFY( *it == -1 ); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/23_containers/list/cons/cons_size.cc b/libstdc++-v3/testsuite/23_containers/list/cons/cons_size.cc new file mode 100644 index 00000000000..f59f520f928 --- /dev/null +++ b/libstdc++-v3/testsuite/23_containers/list/cons/cons_size.cc @@ -0,0 +1,40 @@ +// { dg-options "-std=gnu++0x" } + +// 2010-06-18 Paolo Carlini <paolo.carlini@oracle.com> + +// Copyright (C) 2010 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 <list> +#include <testsuite_hooks.h> +#include <testsuite_api.h> + +void test01() +{ + bool test __attribute__((unused)) = true; + + std::list<__gnu_test::NonCopyConstructible> l(1000); + VERIFY( std::distance(l.begin(), l.end()) == 1000 ); + for(auto it = l.begin(); it != l.end(); ++it) + VERIFY( *it == -1 ); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/23_containers/list/pthread1.cc b/libstdc++-v3/testsuite/23_containers/list/pthread1.cc index fcbb039dce3..00dc817b152 100644 --- a/libstdc++-v3/testsuite/23_containers/list/pthread1.cc +++ b/libstdc++-v3/testsuite/23_containers/list/pthread1.cc @@ -1,6 +1,6 @@ // 2002-01-23 Loren J. Rittle <rittle@labs.mot.com> <ljrittle@acm.org> // -// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009 +// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -45,9 +45,9 @@ class task_queue public: task_queue () { - pthread_mutex_init (&fooLock, NULL); - pthread_cond_init (&fooCond1, NULL); - pthread_cond_init (&fooCond2, NULL); + pthread_mutex_init (&fooLock, 0); + pthread_cond_init (&fooCond1, 0); + pthread_cond_init (&fooCond2, 0); } ~task_queue () { @@ -115,14 +115,14 @@ main() for (int i = 0; i < thread_pairs; i++) { tq[i] = new task_queue; - pthread_create (&prod[i], NULL, produce, static_cast<void*> (tq[i])); - pthread_create (&cons[i], NULL, consume, static_cast<void*> (tq[i])); + pthread_create (&prod[i], 0, produce, static_cast<void*> (tq[i])); + pthread_create (&cons[i], 0, consume, static_cast<void*> (tq[i])); } for (int i = 0; i < thread_pairs; i++) { - pthread_join (prod[i], NULL); - pthread_join (cons[i], NULL); + pthread_join (prod[i], 0); + pthread_join (cons[i], 0); delete tq[i]; } } diff --git a/libstdc++-v3/testsuite/23_containers/list/pthread5.cc b/libstdc++-v3/testsuite/23_containers/list/pthread5.cc index 57411eef3f0..4f464372124 100644 --- a/libstdc++-v3/testsuite/23_containers/list/pthread5.cc +++ b/libstdc++-v3/testsuite/23_containers/list/pthread5.cc @@ -2,7 +2,7 @@ // Adpated from libstdc++/5464 submitted by jjessel@amadeus.net // Jean-Francois JESSEL (Amadeus SAS Development) // -// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009 +// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -99,7 +99,7 @@ main () #endif pthread_attr_t tattr; - int ret = pthread_attr_init (&tattr); + int ret __attribute__((unused)) = pthread_attr_init (&tattr); #ifdef _POSIX_THREAD_PRIORITY_SCHEDULING ret = pthread_attr_setscope(&tattr, PTHREAD_SCOPE_SYSTEM); #endif diff --git a/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/assign_neg.cc b/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/assign_neg.cc index eb35a24c89d..2446157597f 100644 --- a/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/assign_neg.cc +++ b/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/assign_neg.cc @@ -18,7 +18,7 @@ // <http://www.gnu.org/licenses/>. // { dg-do compile } -// { dg-error "no matching" "" { target *-*-* } 1411 } +// { dg-error "no matching" "" { target *-*-* } 1478 } // { dg-excess-errors "" } #include <list> diff --git a/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc b/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc index 937404b26a8..cbac8e80cbf 100644 --- a/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc +++ b/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc @@ -18,7 +18,7 @@ // <http://www.gnu.org/licenses/>. // { dg-do compile } -// { dg-error "no matching" "" { target *-*-* } 1380 } +// { dg-error "no matching" "" { target *-*-* } 1434 } // { dg-excess-errors "" } #include <list> diff --git a/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc b/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc index 74fc1b7a163..232bd042ddb 100644 --- a/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc +++ b/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc @@ -18,7 +18,7 @@ // <http://www.gnu.org/licenses/>. // { dg-do compile } -// { dg-error "no matching" "" { target *-*-* } 1380 } +// { dg-error "no matching" "" { target *-*-* } 1434 } // { dg-excess-errors "" } #include <list> diff --git a/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/insert_neg.cc b/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/insert_neg.cc index 3aebda5ddb2..aefb1f583fd 100644 --- a/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/insert_neg.cc +++ b/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/insert_neg.cc @@ -18,7 +18,7 @@ // <http://www.gnu.org/licenses/>. // { dg-do compile } -// { dg-error "no matching" "" { target *-*-* } 1380 } +// { dg-error "no matching" "" { target *-*-* } 1434 } // { dg-excess-errors "" } #include <list> diff --git a/libstdc++-v3/testsuite/23_containers/map/23781.cc b/libstdc++-v3/testsuite/23_containers/map/23781.cc index f7967693f79..e282c754667 100644 --- a/libstdc++-v3/testsuite/23_containers/map/23781.cc +++ b/libstdc++-v3/testsuite/23_containers/map/23781.cc @@ -1,6 +1,6 @@ // 2005-09-10 Paolo Carlini <pcarlini@suse.de> // -// Copyright (C) 2005, 2009 Free Software Foundation, Inc. +// Copyright (C) 2005, 2009, 2010 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 @@ -22,6 +22,7 @@ // libstdc++/23781 #include <map> +#include <cstddef> std::map<int, int>::iterator it = NULL; // { dg-error "conversion" } std::map<int, int>::const_iterator cit = NULL; // { dg-error "conversion" } diff --git a/libstdc++-v3/testsuite/23_containers/map/dr130.cc b/libstdc++-v3/testsuite/23_containers/map/dr130.cc index d7f3c2b0856..9186a621ea7 100644 --- a/libstdc++-v3/testsuite/23_containers/map/dr130.cc +++ b/libstdc++-v3/testsuite/23_containers/map/dr130.cc @@ -1,7 +1,7 @@ // { dg-options "-std=gnu++0x" } // 2008-07-22 Edward Smith-Rowland <3dw4rd@verizon.net> // -// Copyright (C) 2009 Free Software Foundation, Inc. +// Copyright (C) 2009, 2010 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 @@ -34,7 +34,7 @@ test01() typedef map<int, int>::value_type value_type; typedef pair<iterator, bool> insert_return_type; - insert_return_type irt0 = m0.insert(value_type(1, 1)); + m0.insert(value_type(1, 1)); insert_return_type irt1 = m0.insert(value_type(2, 2)); insert_return_type irt2 = m0.insert(value_type(3, 3)); @@ -58,7 +58,7 @@ test02() typedef pair<iterator, bool> insert_return_type; insert_return_type irt0 = m0.insert(value_type(1, 1)); - insert_return_type irt1 = m0.insert(value_type(2, 2)); + m0.insert(value_type(2, 2)); insert_return_type irt2 = m0.insert(value_type(3, 3)); insert_return_type irt3 = m0.insert(value_type(4, 4)); diff --git a/libstdc++-v3/testsuite/23_containers/map/pthread6.cc b/libstdc++-v3/testsuite/23_containers/map/pthread6.cc index 608527e8f08..38c20ed647f 100644 --- a/libstdc++-v3/testsuite/23_containers/map/pthread6.cc +++ b/libstdc++-v3/testsuite/23_containers/map/pthread6.cc @@ -1,7 +1,7 @@ // 2002-01-23 Loren J. Rittle <rittle@labs.mot.com> <ljrittle@acm.org> // Adpated from libstdc++/5444 submitted by markus.breuer@materna.de // -// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009 +// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -78,10 +78,10 @@ main (void) #endif for (int i = 0; i < max_thread_count; i++) - pthread_create (&tid[i], NULL, thread_main, 0); + pthread_create (&tid[i], 0, thread_main, 0); for (int i = 0; i < max_thread_count; i++) - pthread_join (tid[i], NULL); + pthread_join (tid[i], 0); return 0; } diff --git a/libstdc++-v3/testsuite/23_containers/multimap/23781.cc b/libstdc++-v3/testsuite/23_containers/multimap/23781.cc index 912bb926b98..50ec929064e 100644 --- a/libstdc++-v3/testsuite/23_containers/multimap/23781.cc +++ b/libstdc++-v3/testsuite/23_containers/multimap/23781.cc @@ -1,6 +1,6 @@ // 2005-09-10 Paolo Carlini <pcarlini@suse.de> // -// Copyright (C) 2005, 2009 Free Software Foundation, Inc. +// Copyright (C) 2005, 2009, 2010 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 @@ -22,6 +22,7 @@ // libstdc++/23781 #include <map> +#include <cstddef> std::multimap<int, int>::iterator it = NULL; // { dg-error "conversion" } std::multimap<int, int>::const_iterator cit = NULL; // { dg-error "conversion" } diff --git a/libstdc++-v3/testsuite/23_containers/multiset/23781.cc b/libstdc++-v3/testsuite/23_containers/multiset/23781.cc index 80d13370345..6b0bacf955b 100644 --- a/libstdc++-v3/testsuite/23_containers/multiset/23781.cc +++ b/libstdc++-v3/testsuite/23_containers/multiset/23781.cc @@ -1,6 +1,6 @@ // 2005-09-10 Paolo Carlini <pcarlini@suse.de> // -// Copyright (C) 2005, 2009 Free Software Foundation, Inc. +// Copyright (C) 2005, 2009, 2010 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 @@ -22,6 +22,7 @@ // libstdc++/23781 #include <set> +#include <cstddef> std::multiset<int>::iterator it = NULL; // { dg-error "conversion" } std::multiset<int>::const_iterator cit = NULL; // { dg-error "conversion" } diff --git a/libstdc++-v3/testsuite/23_containers/priority_queue/members/7161.cc b/libstdc++-v3/testsuite/23_containers/priority_queue/members/7161.cc index 416468617f1..0c21b25f900 100644 --- a/libstdc++-v3/testsuite/23_containers/priority_queue/members/7161.cc +++ b/libstdc++-v3/testsuite/23_containers/priority_queue/members/7161.cc @@ -1,6 +1,6 @@ // 2002-06-28 pme -// Copyright (C) 2002, 2004, 2005, 2009 Free Software Foundation, Inc. +// Copyright (C) 2002, 2004, 2005, 2009, 2010 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 @@ -28,12 +28,10 @@ test03() { int data[] = {1, 2, 3}; std::priority_queue<int> pq; - std::size_t size = pq.size(); for (int i = 0; i < 3; ++i) pq.push(data[i]); - size = pq.size(); pq.top(); for (int i = 0; i < 2; ++i) pq.pop(); diff --git a/libstdc++-v3/testsuite/23_containers/set/23781.cc b/libstdc++-v3/testsuite/23_containers/set/23781.cc index 7a2a2bc7240..b47b748ec8d 100644 --- a/libstdc++-v3/testsuite/23_containers/set/23781.cc +++ b/libstdc++-v3/testsuite/23_containers/set/23781.cc @@ -1,6 +1,6 @@ // 2005-09-10 Paolo Carlini <pcarlini@suse.de> // -// Copyright (C) 2005, 2009 Free Software Foundation, Inc. +// Copyright (C) 2005, 2009, 2010 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 @@ -22,6 +22,7 @@ // libstdc++/23781 #include <set> +#include <cstddef> std::set<int>::iterator it = NULL; // { dg-error "conversion" } std::set<int>::const_iterator cit = NULL; // { dg-error "conversion" } diff --git a/libstdc++-v3/testsuite/23_containers/set/dr130.cc b/libstdc++-v3/testsuite/23_containers/set/dr130.cc index 1904dcdc0bd..1dac5628d37 100644 --- a/libstdc++-v3/testsuite/23_containers/set/dr130.cc +++ b/libstdc++-v3/testsuite/23_containers/set/dr130.cc @@ -1,7 +1,7 @@ // { dg-options "-std=gnu++0x" } // 2008-07-22 Edward Smith-Rowland <3dw4rd@verizon.net> // -// Copyright (C) 2009 Free Software Foundation, Inc. +// Copyright (C) 2009, 2010 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 @@ -33,7 +33,7 @@ test01() typedef set<int>::const_iterator const_iterator; typedef pair<iterator, bool> insert_return_type; - insert_return_type irt0 = s0.insert(1); + s0.insert(1); insert_return_type irt1 = s0.insert(2); insert_return_type irt2 = s0.insert(3); @@ -56,7 +56,7 @@ test02() typedef pair<iterator, bool> insert_return_type; insert_return_type irt0 = s0.insert(1); - insert_return_type irt1 = s0.insert(2); + s0.insert(2); insert_return_type irt2 = s0.insert(3); insert_return_type irt3 = s0.insert(4); diff --git a/libstdc++-v3/testsuite/23_containers/vector/resize/1.cc b/libstdc++-v3/testsuite/23_containers/vector/capacity/resize/1.cc index 168df7a4a97..168df7a4a97 100644 --- a/libstdc++-v3/testsuite/23_containers/vector/resize/1.cc +++ b/libstdc++-v3/testsuite/23_containers/vector/capacity/resize/1.cc diff --git a/libstdc++-v3/testsuite/23_containers/vector/resize/moveable.cc b/libstdc++-v3/testsuite/23_containers/vector/capacity/resize/moveable.cc index 47fdf8fcafa..5ba026dbeb5 100644 --- a/libstdc++-v3/testsuite/23_containers/vector/resize/moveable.cc +++ b/libstdc++-v3/testsuite/23_containers/vector/capacity/resize/moveable.cc @@ -1,6 +1,7 @@ // { dg-options "-std=gnu++0x" } -// Copyright (C) 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. +// Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010 +// 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 @@ -17,19 +18,12 @@ // with this library; see the file COPYING3. If not see // <http://www.gnu.org/licenses/>. - #include <vector> #include <testsuite_hooks.h> #include <testsuite_rvalref.h> using namespace __gnu_test; -// According to n1771, there should be two resizes, with and without -// parameter. We only have one at present, whose second parameter defaults -// to a default-constructed object. -// Also, the values are one higher than might be expected because internally -// resize calls fill, which copies its input value in case it is already in -// the vector when the vector isn't moved. void test01() { @@ -41,30 +35,17 @@ test01() a.resize(98); a.resize(99); a.resize(100); -#if !defined(_GLIBCXX_DEBUG) && !defined(_GLIBCXX_PROFILE) - VERIFY( copycounter::copycount == 100 + 1 ); -#else - VERIFY( copycounter::copycount == 100 + 1 + 4 ); -#endif + VERIFY( copycounter::copycount == 0 ); + a.resize(99); a.resize(0); -#if !defined(_GLIBCXX_DEBUG) && !defined(_GLIBCXX_PROFILE) - VERIFY( copycounter::copycount == 100 + 1 ); -#else - VERIFY( copycounter::copycount == 100 + 1 + 6 ); -#endif + VERIFY( copycounter::copycount == 0 ); + a.resize(100); -#if !defined(_GLIBCXX_DEBUG) && !defined(_GLIBCXX_PROFILE) - VERIFY( copycounter::copycount == 200 + 2 ); -#else - VERIFY( copycounter::copycount == 200 + 2 + 7 ); -#endif + VERIFY( copycounter::copycount == 0 ); + a.clear(); -#if !defined(_GLIBCXX_DEBUG) && !defined(_GLIBCXX_PROFILE) - VERIFY( copycounter::copycount == 200 + 2 ); -#else - VERIFY( copycounter::copycount == 200 + 2 + 7 ); -#endif + VERIFY( copycounter::copycount == 0 ); } diff --git a/libstdc++-v3/testsuite/23_containers/vector/capacity/resize/resize_size.cc b/libstdc++-v3/testsuite/23_containers/vector/capacity/resize/resize_size.cc new file mode 100644 index 00000000000..d181168acf7 --- /dev/null +++ b/libstdc++-v3/testsuite/23_containers/vector/capacity/resize/resize_size.cc @@ -0,0 +1,43 @@ +// { dg-options "-std=gnu++0x" } + +// 2010-06-18 Paolo Carlini <paolo.carlini@oracle.com> + +// Copyright (C) 2010 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 <vector> +#include <testsuite_hooks.h> +#include <testsuite_api.h> + +void test01() +{ + bool test __attribute__((unused)) = true; + + std::vector<__gnu_test::NonCopyConstructible> v; + VERIFY( std::distance(v.begin(), v.end()) == 0 ); + + v.resize(1000); + VERIFY( std::distance(v.begin(), v.end()) == 1000 ); + for(auto it = v.begin(); it != v.end(); ++it) + VERIFY( *it == -1 ); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/23_containers/vector/cons/cons_size.cc b/libstdc++-v3/testsuite/23_containers/vector/cons/cons_size.cc new file mode 100644 index 00000000000..a33ba1ad69e --- /dev/null +++ b/libstdc++-v3/testsuite/23_containers/vector/cons/cons_size.cc @@ -0,0 +1,40 @@ +// { dg-options "-std=gnu++0x" } + +// 2010-06-18 Paolo Carlini <paolo.carlini@oracle.com> + +// Copyright (C) 2010 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 <vector> +#include <testsuite_hooks.h> +#include <testsuite_api.h> + +void test01() +{ + bool test __attribute__((unused)) = true; + + std::vector<__gnu_test::NonCopyConstructible> v(1000); + VERIFY( std::distance(v.begin(), v.end()) == 1000 ); + for(auto it = v.begin(); it != v.end(); ++it) + VERIFY( *it == -1 ); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/assign_neg.cc b/libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/assign_neg.cc index b96b5359963..6925c1776a4 100644 --- a/libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/assign_neg.cc +++ b/libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/assign_neg.cc @@ -18,7 +18,7 @@ // <http://www.gnu.org/licenses/>. // { dg-do compile } -// { dg-error "no matching" "" { target *-*-* } 1063 } +// { dg-error "no matching" "" { target *-*-* } 1148 } // { dg-excess-errors "" } #include <vector> diff --git a/libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc b/libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc index 950643857c5..662bf169b23 100644 --- a/libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc +++ b/libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc @@ -18,7 +18,7 @@ // <http://www.gnu.org/licenses/>. // { dg-do compile } -// { dg-error "no matching" "" { target *-*-* } 1003 } +// { dg-error "no matching" "" { target *-*-* } 1078 } // { dg-excess-errors "" } #include <vector> diff --git a/libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc b/libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc index f17b541a4e0..fe2a2b25475 100644 --- a/libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc +++ b/libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc @@ -18,7 +18,7 @@ // <http://www.gnu.org/licenses/>. // { dg-do compile } -// { dg-error "no matching" "" { target *-*-* } 1003 } +// { dg-error "no matching" "" { target *-*-* } 1078 } // { dg-excess-errors "" } #include <vector> diff --git a/libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/insert_neg.cc b/libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/insert_neg.cc index 19d3fd08c4b..9869af131df 100644 --- a/libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/insert_neg.cc +++ b/libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/insert_neg.cc @@ -18,7 +18,7 @@ // <http://www.gnu.org/licenses/>. // { dg-do compile } -// { dg-error "no matching" "" { target *-*-* } 1104 } +// { dg-error "no matching" "" { target *-*-* } 1189 } // { dg-excess-errors "" } #include <vector> diff --git a/libstdc++-v3/testsuite/24_iterators/back_insert_iterator/2.cc b/libstdc++-v3/testsuite/24_iterators/back_insert_iterator/2.cc index d69155893ac..2c967ac2778 100644 --- a/libstdc++-v3/testsuite/24_iterators/back_insert_iterator/2.cc +++ b/libstdc++-v3/testsuite/24_iterators/back_insert_iterator/2.cc @@ -1,6 +1,7 @@ // 2001-06-21 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2004, 2005, 2009 Free Software Foundation, Inc. +// Copyright (C) 2001, 2002, 2004, 2005, 2009, 2010 +// 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 @@ -27,6 +28,7 @@ void test02() typedef std::back_insert_iterator<std::list<int> > iterator_type; std::list<int> li; iterator_type it = std::back_inserter(li); + it = it; // Suppress unused warning. } int main() diff --git a/libstdc++-v3/testsuite/24_iterators/front_insert_iterator/2.cc b/libstdc++-v3/testsuite/24_iterators/front_insert_iterator/2.cc index 69aefe869e3..e72723764cb 100644 --- a/libstdc++-v3/testsuite/24_iterators/front_insert_iterator/2.cc +++ b/libstdc++-v3/testsuite/24_iterators/front_insert_iterator/2.cc @@ -1,6 +1,6 @@ // 2001-06-21 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2004, 2005, 2009 Free Software Foundation, Inc. +// Copyright (C) 2001, 2004, 2005, 2009, 2010 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 @@ -27,6 +27,7 @@ void test02() typedef std::front_insert_iterator<std::list<int> > iterator_type; std::list<int> li; iterator_type it = std::front_inserter(li); + it = it; // Suppress unused warning. } int main() diff --git a/libstdc++-v3/testsuite/24_iterators/insert_iterator/2.cc b/libstdc++-v3/testsuite/24_iterators/insert_iterator/2.cc index a5961211a37..ac949307e09 100644 --- a/libstdc++-v3/testsuite/24_iterators/insert_iterator/2.cc +++ b/libstdc++-v3/testsuite/24_iterators/insert_iterator/2.cc @@ -1,6 +1,6 @@ // 2001-06-21 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2004, 2005, 2009 Free Software Foundation, Inc. +// Copyright (C) 2001, 2004, 2005, 2009, 2010 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 @@ -30,6 +30,8 @@ void test02() std::list<int>::iterator liit = li.begin(); iterator_type it01(li, liit); iterator_type it02 = std::inserter(li, liit); + it01 = it01; // Suppress unused warnings. + it02 = it02; } int main() diff --git a/libstdc++-v3/testsuite/24_iterators/ostreambuf_iterator/2.cc b/libstdc++-v3/testsuite/24_iterators/ostreambuf_iterator/2.cc index 36d8adde348..0b86efacb92 100644 --- a/libstdc++-v3/testsuite/24_iterators/ostreambuf_iterator/2.cc +++ b/libstdc++-v3/testsuite/24_iterators/ostreambuf_iterator/2.cc @@ -1,6 +1,6 @@ // 2001-04-30 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 2001, 2003, 2009, 2010 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 @@ -49,7 +49,7 @@ bool test02(void) *ostrb_it01; VERIFY( !ostrb_it01.failed() ); - costreambuf_iter ostrb_it02(NULL); + costreambuf_iter ostrb_it02(0); VERIFY( ostrb_it02.failed() ); ostrb_it02++; ++ostrb_it02; diff --git a/libstdc++-v3/testsuite/25_algorithms/minmax/3.cc b/libstdc++-v3/testsuite/25_algorithms/minmax/3.cc index f0944b0bfde..0e99d51d210 100644 --- a/libstdc++-v3/testsuite/25_algorithms/minmax/3.cc +++ b/libstdc++-v3/testsuite/25_algorithms/minmax/3.cc @@ -2,7 +2,7 @@ // 2008-09-16 Chris Fairles <chris.fairles@gmail.com> -// Copyright (C) 2008, 2009 Free Software Foundation, Inc. +// Copyright (C) 2008, 2009, 2010 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 @@ -41,8 +41,7 @@ void test01() { bool test __attribute__((unused)) = true; - std::pair<int, int> z = std::minmax({1, 2, 3, 4, 5, 6, 7, 8}, - compare_counter()); + std::minmax({1, 2, 3, 4, 5, 6, 7, 8}, compare_counter()); // If N is the number of arguments in the minmax function call, // 25.3.7 specifies that at most 3N/2 comparisons are allowed. diff --git a/libstdc++-v3/testsuite/26_numerics/complex/complex_value.cc b/libstdc++-v3/testsuite/26_numerics/complex/complex_value.cc index 9dd25077c38..dc05a2b19b4 100644 --- a/libstdc++-v3/testsuite/26_numerics/complex/complex_value.cc +++ b/libstdc++-v3/testsuite/26_numerics/complex/complex_value.cc @@ -3,7 +3,7 @@ // 2000-11-20 // Benjamin Kosnik bkoz@redhat.com -// Copyright (C) 2000, 2003, 2004, 2009 Free Software Foundation, Inc. +// Copyright (C) 2000, 2003, 2004, 2009, 2010 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 @@ -34,27 +34,27 @@ void test01() complex_type a(cd1, cd2); double d; d = a.real(); - VERIFY( d == cd1); + VERIFY( d == cd1 ); d = a.imag(); - VERIFY(d == cd2); + VERIFY( d == cd2 ); complex_type c(cd1, cd2); double d6 = abs(c); - VERIFY( d6 >= 0); + VERIFY( d6 >= 0 ); double d7 = arg(c); double d8 = atan2(c.imag(), c.real()); - VERIFY( d7 == d8); + VERIFY( d7 == d8 ); double d9 = norm(c); double d10 = d6 * d6; - VERIFY(d9 - d10 == 0); + VERIFY( d9 - d10 == 0 ); - complex_type e = conj(c); + complex_type e __attribute__((unused)) = conj(c); complex_type f = polar(c.imag(), 0.0); - VERIFY(f.real() != 0); + VERIFY( f.real() != 0 ); } diff --git a/libstdc++-v3/testsuite/26_numerics/headers/ccomplex/std_c++0x_neg.cc b/libstdc++-v3/testsuite/26_numerics/headers/ccomplex/std_c++0x_neg.cc index f44757851e0..d81271ab07a 100644 --- a/libstdc++-v3/testsuite/26_numerics/headers/ccomplex/std_c++0x_neg.cc +++ b/libstdc++-v3/testsuite/26_numerics/headers/ccomplex/std_c++0x_neg.cc @@ -18,7 +18,7 @@ // with this library; see the file COPYING3. If not see // <http://www.gnu.org/licenses/>. -#include <ccomplex> // { dg-excess-errors "In file included from" } +#include <ccomplex> // { dg-error "upcoming ISO" "" { target *-*-* } 31 } diff --git a/libstdc++-v3/testsuite/26_numerics/headers/cfenv/std_c++0x_neg.cc b/libstdc++-v3/testsuite/26_numerics/headers/cfenv/std_c++0x_neg.cc index c4573758adc..a353da9e820 100644 --- a/libstdc++-v3/testsuite/26_numerics/headers/cfenv/std_c++0x_neg.cc +++ b/libstdc++-v3/testsuite/26_numerics/headers/cfenv/std_c++0x_neg.cc @@ -18,7 +18,7 @@ // with this library; see the file COPYING3. If not see // <http://www.gnu.org/licenses/>. -#include <cfenv> // { dg-excess-errors "In file included from" } +#include <cfenv> // { dg-error "upcoming ISO" "" { target *-*-* } 31 } diff --git a/libstdc++-v3/testsuite/26_numerics/headers/cmath/c99_classification_macros_c++.cc b/libstdc++-v3/testsuite/26_numerics/headers/cmath/c99_classification_macros_c++.cc index e85ecab818a..3f4b8ba26e1 100644 --- a/libstdc++-v3/testsuite/26_numerics/headers/cmath/c99_classification_macros_c++.cc +++ b/libstdc++-v3/testsuite/26_numerics/headers/cmath/c99_classification_macros_c++.cc @@ -70,6 +70,7 @@ template <typename _Tp> res = std::islessequal(f1,f2); res = std::islessgreater(f1, f2); res = std::isunordered(f1, f2); + res = res; // Suppress unused warning. } #endif diff --git a/libstdc++-v3/testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc b/libstdc++-v3/testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc index 142e1da38bd..716dda51b1e 100644 --- a/libstdc++-v3/testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc +++ b/libstdc++-v3/testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc @@ -20,8 +20,8 @@ // { dg-do compile } // { dg-add-options no_pch } -// { dg-xfail-if "" { { *-*-linux* *-*-darwin* hppa*-*-hpux* } || { uclibc || newlib } } { "*" } { "" } } -// { dg-excess-errors "" { target { { *-*-linux* *-*-darwin* hppa*-*-hpux* } || { uclibc || newlib } } } } +// { dg-xfail-if "" { { *-*-linux* *-*-darwin* *-*-solaris2.1[0-9]* hppa*-*-hpux* } || { uclibc || newlib } } { "*" } { "" } } +// { dg-excess-errors "" { target { { *-*-linux* *-*-darwin* *-*-solaris2.1[0-9]* hppa*-*-hpux* } || { uclibc || newlib } } } } #include <math.h> diff --git a/libstdc++-v3/testsuite/26_numerics/headers/cmath/overloads.cc b/libstdc++-v3/testsuite/26_numerics/headers/cmath/overloads.cc index 4418bc31b20..5819e1a18a7 100644 --- a/libstdc++-v3/testsuite/26_numerics/headers/cmath/overloads.cc +++ b/libstdc++-v3/testsuite/26_numerics/headers/cmath/overloads.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009 +// Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -43,4 +43,5 @@ int main() ans = std::sinh(j); ans = std::tan(i); ans = std::tanh(i); + ans = ans; // Suppress unused warnings. } diff --git a/libstdc++-v3/testsuite/26_numerics/headers/ctgmath/std_c++0x_neg.cc b/libstdc++-v3/testsuite/26_numerics/headers/ctgmath/std_c++0x_neg.cc index f1f2a77224a..15175885cb4 100644 --- a/libstdc++-v3/testsuite/26_numerics/headers/ctgmath/std_c++0x_neg.cc +++ b/libstdc++-v3/testsuite/26_numerics/headers/ctgmath/std_c++0x_neg.cc @@ -18,7 +18,7 @@ // with this library; see the file COPYING3. If not see // <http://www.gnu.org/licenses/>. -#include <ctgmath> // { dg-excess-errors "In file included from" } +#include <ctgmath> // { dg-error "upcoming ISO" "" { target *-*-* } 31 } diff --git a/libstdc++-v3/testsuite/26_numerics/headers/random/std_c++0x_neg.cc b/libstdc++-v3/testsuite/26_numerics/headers/random/std_c++0x_neg.cc index 6463f520db5..41311965aff 100644 --- a/libstdc++-v3/testsuite/26_numerics/headers/random/std_c++0x_neg.cc +++ b/libstdc++-v3/testsuite/26_numerics/headers/random/std_c++0x_neg.cc @@ -18,7 +18,7 @@ // with this library; see the file COPYING3. If not see // <http://www.gnu.org/licenses/>. -#include <random> // { dg-excess-errors "In file included from" } +#include <random> // { dg-error "upcoming ISO" "" { target *-*-* } 31 } diff --git a/libstdc++-v3/testsuite/26_numerics/random/discard_block_engine/cons/copy.cc b/libstdc++-v3/testsuite/26_numerics/random/discard_block_engine/cons/copy.cc index d244c769162..6010c536cef 100644 --- a/libstdc++-v3/testsuite/26_numerics/random/discard_block_engine/cons/copy.cc +++ b/libstdc++-v3/testsuite/26_numerics/random/discard_block_engine/cons/copy.cc @@ -33,6 +33,7 @@ test01() const auto f(e); auto g(f); + g = g; // Suppress unused warning. } int main() diff --git a/libstdc++-v3/testsuite/26_numerics/random/independent_bits_engine/cons/copy.cc b/libstdc++-v3/testsuite/26_numerics/random/independent_bits_engine/cons/copy.cc index 1e88b89efe8..111af1964e4 100644 --- a/libstdc++-v3/testsuite/26_numerics/random/independent_bits_engine/cons/copy.cc +++ b/libstdc++-v3/testsuite/26_numerics/random/independent_bits_engine/cons/copy.cc @@ -34,6 +34,7 @@ test01() const auto f(e); auto g(f); + g = g; // Suppress unused warning. } int main() diff --git a/libstdc++-v3/testsuite/26_numerics/random/linear_congruential_engine/cons/copy.cc b/libstdc++-v3/testsuite/26_numerics/random/linear_congruential_engine/cons/copy.cc index 06360aa0678..6f5b8d29754 100644 --- a/libstdc++-v3/testsuite/26_numerics/random/linear_congruential_engine/cons/copy.cc +++ b/libstdc++-v3/testsuite/26_numerics/random/linear_congruential_engine/cons/copy.cc @@ -28,7 +28,8 @@ test01() std::linear_congruential_engine<unsigned long, 48271, 0, 2147483647> e(1); const auto f(e); - auto g(f); + auto g(f); + g = g; // Suppress unused warning. } int main() diff --git a/libstdc++-v3/testsuite/26_numerics/random/linear_congruential_engine/requirements/constants.cc b/libstdc++-v3/testsuite/26_numerics/random/linear_congruential_engine/requirements/constants.cc index af0c4b1e356..2b48164fb83 100644 --- a/libstdc++-v3/testsuite/26_numerics/random/linear_congruential_engine/requirements/constants.cc +++ b/libstdc++-v3/testsuite/26_numerics/random/linear_congruential_engine/requirements/constants.cc @@ -4,7 +4,7 @@ // // 2009-09-29 Paolo Carlini <paolo.carlini@oracle.com> // -// Copyright (C) 2009 Free Software Foundation, Inc. +// Copyright (C) 2009, 2010 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 @@ -31,6 +31,7 @@ void test01() p = &lc.increment; p = &lc.modulus; p = &lc.default_seed; + p = p; // Suppress unused warning. } int main() diff --git a/libstdc++-v3/testsuite/26_numerics/random/mersenne_twister_engine/cons/copy.cc b/libstdc++-v3/testsuite/26_numerics/random/mersenne_twister_engine/cons/copy.cc index 3da72cbf5fd..98ea4fe0387 100644 --- a/libstdc++-v3/testsuite/26_numerics/random/mersenne_twister_engine/cons/copy.cc +++ b/libstdc++-v3/testsuite/26_numerics/random/mersenne_twister_engine/cons/copy.cc @@ -36,6 +36,7 @@ test01() const auto f(e); auto g(f); + g = g; // Suppress unused warning. } int main() diff --git a/libstdc++-v3/testsuite/26_numerics/random/mersenne_twister_engine/requirements/constants.cc b/libstdc++-v3/testsuite/26_numerics/random/mersenne_twister_engine/requirements/constants.cc index 2abc5ab9b64..ad38bec01c0 100644 --- a/libstdc++-v3/testsuite/26_numerics/random/mersenne_twister_engine/requirements/constants.cc +++ b/libstdc++-v3/testsuite/26_numerics/random/mersenne_twister_engine/requirements/constants.cc @@ -4,7 +4,7 @@ // // 2009-09-29 Paolo Carlini <paolo.carlini@oracle.com> // -// Copyright (C) 2009 Free Software Foundation, Inc. +// Copyright (C) 2009, 2010 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 @@ -41,6 +41,7 @@ void test01() p = &mt.tempering_l; p = &mt.initialization_multiplier; p = &mt.default_seed; + p = p; // Suppress unused warning. } int main() diff --git a/libstdc++-v3/testsuite/26_numerics/random/shuffle_order_engine/cons/copy.cc b/libstdc++-v3/testsuite/26_numerics/random/shuffle_order_engine/cons/copy.cc index c589a4edc8a..55e38e22f80 100644 --- a/libstdc++-v3/testsuite/26_numerics/random/shuffle_order_engine/cons/copy.cc +++ b/libstdc++-v3/testsuite/26_numerics/random/shuffle_order_engine/cons/copy.cc @@ -33,6 +33,7 @@ test01() const auto f(e); auto g(f); + g = g; // Suppress unused warning. } int main() diff --git a/libstdc++-v3/testsuite/26_numerics/random/shuffle_order_engine/requirements/constants.cc b/libstdc++-v3/testsuite/26_numerics/random/shuffle_order_engine/requirements/constants.cc index c1d5b3a2e45..2a96488cd3d 100644 --- a/libstdc++-v3/testsuite/26_numerics/random/shuffle_order_engine/requirements/constants.cc +++ b/libstdc++-v3/testsuite/26_numerics/random/shuffle_order_engine/requirements/constants.cc @@ -4,7 +4,7 @@ // // 2009-09-29 Paolo Carlini <paolo.carlini@oracle.com> // -// Copyright (C) 2009 Free Software Foundation, Inc. +// Copyright (C) 2009, 2010 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 @@ -29,6 +29,7 @@ void test01() const void* p = &so.table_size; p = &so.table_size; + p = p; // Suppress unused warning. } int main() diff --git a/libstdc++-v3/testsuite/26_numerics/random/subtract_with_carry_engine/cons/copy.cc b/libstdc++-v3/testsuite/26_numerics/random/subtract_with_carry_engine/cons/copy.cc index 21df0a07e3c..2639e87dd4c 100644 --- a/libstdc++-v3/testsuite/26_numerics/random/subtract_with_carry_engine/cons/copy.cc +++ b/libstdc++-v3/testsuite/26_numerics/random/subtract_with_carry_engine/cons/copy.cc @@ -29,6 +29,7 @@ test01() const auto f(e); auto g(f); + g = g; // Suppress unused warning. } int main() diff --git a/libstdc++-v3/testsuite/26_numerics/random/subtract_with_carry_engine/requirements/constants.cc b/libstdc++-v3/testsuite/26_numerics/random/subtract_with_carry_engine/requirements/constants.cc index 2ab13a30309..8c033cd26e3 100644 --- a/libstdc++-v3/testsuite/26_numerics/random/subtract_with_carry_engine/requirements/constants.cc +++ b/libstdc++-v3/testsuite/26_numerics/random/subtract_with_carry_engine/requirements/constants.cc @@ -4,7 +4,7 @@ // // 2009-09-29 Paolo Carlini <paolo.carlini@oracle.com> // -// Copyright (C) 2009 Free Software Foundation, Inc. +// Copyright (C) 2009, 2010 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 @@ -31,6 +31,7 @@ void test01() p = &swc.short_lag; p = &swc.long_lag; p = &swc.default_seed; + p = p; // Suppress unused warning. } int main() diff --git a/libstdc++-v3/testsuite/26_numerics/slice_array/array_assignment.cc b/libstdc++-v3/testsuite/26_numerics/slice_array/array_assignment.cc index 59bf014a475..0357e5de71e 100644 --- a/libstdc++-v3/testsuite/26_numerics/slice_array/array_assignment.cc +++ b/libstdc++-v3/testsuite/26_numerics/slice_array/array_assignment.cc @@ -1,6 +1,6 @@ // 20010613 gdr -// Copyright (C) 2001, 2002, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 2001, 2002, 2003, 2009, 2010 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 @@ -17,8 +17,6 @@ // with this library; see the file COPYING3. If not see // <http://www.gnu.org/licenses/>. - - // This is DR-253. Test for accessible assignment-operators. #include <valarray> #include <testsuite_hooks.h> @@ -36,7 +34,7 @@ int main() VERIFY(v[3] == 1 && w[3] == 1); VERIFY(v[6] == 1 && w[6] == 1); - std::slice_array<int> t = v[slice(0, 10, 1)]; + std::slice_array<int> t __attribute__((unused)) = v[slice(0, 10, 1)]; return 0; } diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/close/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/close/char/1.cc index 6dc56f9b154..0a12e722450 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/close/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/close/char/1.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2001, 2002, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 2001, 2002, 2003, 2009, 2010 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 @@ -61,19 +61,19 @@ void test_01() // filebuf_type* close() std::filebuf* f; f = fb_01.close(); - VERIFY( f != NULL ); + VERIFY( f ); VERIFY( !fb_01.is_open() ); f = fb_02.close(); - VERIFY( f != NULL ); + VERIFY( f ); VERIFY( !fb_02.is_open() ); f = fb_03.close(); - VERIFY( f != NULL ); + VERIFY( f ); VERIFY( !fb_03.is_open() ); f = fb_03.close(); - VERIFY( f == NULL ); + VERIFY( !f ); VERIFY( !fb_03.is_open() ); } diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/close/char/12790-3.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/close/char/12790-3.cc index 2074ee78a0b..fe0624d109e 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/close/char/12790-3.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/close/char/12790-3.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 2003, 2009, 2010 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 @@ -71,7 +71,7 @@ void test01() VERIFY( !cvt->unshift_called ); filebuf* ret = fb.close(); VERIFY( cvt->unshift_called ); - VERIFY( ret == NULL ); + VERIFY( !ret ); } int main() diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/close/char/2.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/close/char/2.cc index 9d0cb0f7499..c1a0f79c8e2 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/close/char/2.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/close/char/2.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2001, 2002, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 2001, 2002, 2003, 2009, 2010 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 @@ -48,7 +48,7 @@ void test_02() // read (ext) FILE* f2 = fopen(name_01, "r"); - VERIFY( f2 != NULL ); + VERIFY( f2 ); if (f2) { __gnu_cxx::stdio_filebuf<char> fb(f2, std::ios_base::in, 512); @@ -58,7 +58,7 @@ void test_02() // read (standard) FILE* f = fopen(name_01, "r"); - VERIFY( f != NULL ); + VERIFY( f ); if (f) { std::ifstream ifstream1(name_01); diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/close/char/9964.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/close/char/9964.cc index e520682b112..f2c5abc3eb3 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/close/char/9964.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/close/char/9964.cc @@ -1,7 +1,7 @@ // { dg-require-fork "" } // { dg-require-mkfifo "" } -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009 +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -69,14 +69,14 @@ bool test_07() filebuf fb; filebuf* ret = fb.open(name, ios_base::in | ios_base::out); - VERIFY( ret != NULL ); + VERIFY( ret != 0 ); VERIFY( fb.is_open() ); s1.signal(); s2.wait(); fb.sputc('a'); ret = fb.close(); - VERIFY( ret != NULL ); + VERIFY( ret != 0 ); VERIFY( !fb.is_open() ); return test; diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/close/wchar_t/12790-3.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/close/wchar_t/12790-3.cc index baa4ed31eb8..417fbc2ce39 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/close/wchar_t/12790-3.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/close/wchar_t/12790-3.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 2003, 2009, 2010 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 @@ -69,7 +69,7 @@ void test01() VERIFY( !cvt->unshift_called ); wfilebuf* ret = fb.close(); VERIFY( cvt->unshift_called ); - VERIFY( ret == NULL ); + VERIFY( !ret ); } int main() diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc index a3a78120e78..b233f65637e 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc @@ -4,7 +4,8 @@ // 2004-04-16 Petur Runolfsson <peturr02@ru.is> -// Copyright (C) 2004, 2005, 2006, 2007, 2009 Free Software Foundation, Inc. +// Copyright (C) 2004, 2005, 2006, 2007, 2009, 2010 +// 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 @@ -68,7 +69,7 @@ bool test01() wfilebuf fb; fb.pubimbue(loc_us); wfilebuf* ret = fb.open(name, ios_base::out); - VERIFY( ret != NULL ); + VERIFY( ret != 0 ); VERIFY( fb.is_open() ); s1.wait(); diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/open/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/open/char/1.cc index e10bd9153f2..1a40da155cf 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/open/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/open/char/1.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2001, 2002, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 2001, 2002, 2003, 2009, 2010 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 @@ -53,11 +53,11 @@ void test_01() // Should keep the old file attached, and disregard attempt to overthrow. std::filebuf* f = fb_02.open(name_02, std::ios_base::in | std::ios_base::out | std::ios_base::trunc); - VERIFY( f != NULL ); + VERIFY( f ); VERIFY( fb_02.is_open() ); f = fb_02.open(name_03, std::ios_base::in | std::ios_base::out); - VERIFY( f == NULL ); + VERIFY( !f ); VERIFY( fb_02.is_open() ); fb_03.open(name_03, std::ios_base::out | std::ios_base::trunc); diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/open/char/2.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/open/char/2.cc index 1bd81ee14d9..755784fb9ae 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/open/char/2.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/open/char/2.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2001, 2002, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 2001, 2002, 2003, 2009, 2010 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 @@ -41,7 +41,7 @@ void test_03() int first_fd = ::open(name_01, O_RDONLY); VERIFY( first_fd != -1 ); FILE* first_file = ::fdopen(first_fd, "r"); - VERIFY( first_file != NULL ); + VERIFY( first_file ); __gnu_cxx::stdio_filebuf<char> fb(first_file, std::ios_base::in); int second_fd = fb.fd(); diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/open/char/9507.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/open/char/9507.cc index cfec76b310b..5b404375e63 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/open/char/9507.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/open/char/9507.cc @@ -1,6 +1,7 @@ // { dg-require-mkfifo "" } -// Copyright (C) 2001, 2002, 2003, 2005, 2009 Free Software Foundation, Inc. +// Copyright (C) 2001, 2002, 2003, 2005, 2009, 2010 +// 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 @@ -55,7 +56,7 @@ void test_06() std::ios_base::in | std::ios_base::out | std::ios_base::ate); - if (r == NULL) + if (!r) VERIFY( !fbuf.is_open() ); else VERIFY( fbuf.is_open() ); diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1.cc index db02187dece..d762fb48c2c 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1.cc @@ -1,6 +1,6 @@ // { dg-require-namedlocale "" } -// Copyright (C) 2003, 2005, 2009 Free Software Foundation, Inc. +// Copyright (C) 2003, 2005, 2009, 2010 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 @@ -37,7 +37,7 @@ void test01() wfilebuf* f = fb.close(); VERIFY( n1 != wfilebuf::traits_type::eof() ); - VERIFY( f != NULL ); + VERIFY( f ); } int main() diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2.cc index 9ea64cc3e93..f11916e6f77 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2.cc @@ -1,6 +1,6 @@ // { dg-require-namedlocale "" } -// Copyright (C) 2003, 2005, 2009 Free Software Foundation, Inc. +// Copyright (C) 2003, 2005, 2009, 2010 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 @@ -39,7 +39,7 @@ void test02() VERIFY( n1 != wfilebuf::traits_type::eof() ); VERIFY( n2 != wfilebuf::traits_type::eof() ); - VERIFY( f != NULL ); + VERIFY( f ); } int main() diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3.cc index 2f10e0dec42..2be9b52cbd2 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3.cc @@ -1,6 +1,6 @@ // { dg-require-namedlocale "" } -// Copyright (C) 2003, 2005, 2009 Free Software Foundation, Inc. +// Copyright (C) 2003, 2005, 2009, 2010 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 @@ -36,7 +36,7 @@ void test03() wfilebuf* f = fb.close(); VERIFY( n1 != wfilebuf::traits_type::eof() ); - VERIFY( f != NULL ); + VERIFY( f ); } int main() diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4.cc index a03d9e8d1ab..7b48bfe7bb9 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4.cc @@ -1,6 +1,6 @@ // { dg-require-namedlocale "" } -// Copyright (C) 2003, 2005, 2009 Free Software Foundation, Inc. +// Copyright (C) 2003, 2005, 2009, 2010 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 @@ -38,7 +38,7 @@ void test04() VERIFY( n1 != wfilebuf::traits_type::eof() ); VERIFY( n2 != wfilebuf::traits_type::eof() ); - VERIFY( f != NULL ); + VERIFY( f ); } int main() diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/12790-4.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/12790-4.cc index 53ee751ed44..3bf4353d7e6 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/12790-4.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/12790-4.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2003, 2005, 2009 Free Software Foundation, Inc. +// Copyright (C) 2003, 2005, 2009, 2010 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 @@ -47,7 +47,7 @@ void test01() fb.sputc(pod_uchar::from<char>(0xff)); // Check that seekoff sets the current state during output - traits_type::pos_type pos = fb.pubseekoff(0, ios_base::cur); + fb.pubseekoff(0, ios_base::cur); fb.sputc(pod_uchar::from<char>('a')); fb.sputc(pod_uchar::from<char>(0xff)); fb.sputc(pod_uchar::from<char>(0)); diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/char/1-in.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/char/1-in.cc index 3d26c1cfc57..24887461719 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/char/1-in.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/char/1-in.cc @@ -1,6 +1,6 @@ // 2001-05-21 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 2001, 2002, 2003, 2009, 2010 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 @@ -41,7 +41,7 @@ void test05() typedef filebuf::traits_type traits_type; bool test __attribute__((unused)) = true; - streamsize strmsz_1, strmsz_2; + streamsize strmsz_1; int_type c1; int_type c2; @@ -65,7 +65,7 @@ void test05() //beg strmsz_1 = fb.in_avail(); pt_1 = fb.pubseekoff(2, ios_base::beg); - strmsz_2 = fb.in_avail(); + fb.in_avail(); off_1 = off_type(pt_1); VERIFY( off_1 > 0 ); c1 = fb.snextc(); //current in pointer +1 diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/char/1-io.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/char/1-io.cc index bb175150556..4dc6d8648be 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/char/1-io.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/char/1-io.cc @@ -1,6 +1,6 @@ // 2001-05-21 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 2001, 2002, 2003, 2009, 2010 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 @@ -41,7 +41,7 @@ void test05() typedef filebuf::off_type off_type; bool test __attribute__((unused)) = true; - streamsize strmsz_1, strmsz_2; + streamsize strmsz_1; int_type c1; int_type c2; @@ -66,7 +66,7 @@ void test05() //beg strmsz_1 = fb.in_avail(); pt_1 = fb.pubseekoff(2, ios_base::beg); - strmsz_2 = fb.in_avail(); + fb.in_avail(); off_1 = off_type(pt_1); VERIFY( off_1 > 0 ); c1 = fb.snextc(); //current in pointer +1 diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/char/1-out.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/char/1-out.cc index f786504984d..8d7ab1dfc11 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/char/1-out.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/char/1-out.cc @@ -1,6 +1,6 @@ // 2001-05-21 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 2001, 2002, 2003, 2009, 2010 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 @@ -41,7 +41,7 @@ void test05() typedef filebuf::traits_type traits_type; bool test __attribute__((unused)) = true; - streamsize strmsz_1, strmsz_2; + streamsize strmsz_1; int_type c1; int_type c2; @@ -66,7 +66,7 @@ void test05() //beg strmsz_1 = fb.in_avail(); pt_1 = fb.pubseekoff(2, ios_base::beg); - strmsz_2 = fb.in_avail(); + fb.in_avail(); off_1 = off_type(pt_1); VERIFY( off_1 > 0 ); c1 = fb.snextc(); //current in pointer +1 diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/char/2-in.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/char/2-in.cc index f8385b25a8a..3a8809da2f6 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/char/2-in.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/char/2-in.cc @@ -1,6 +1,6 @@ // 2001-05-21 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 2001, 2002, 2003, 2009, 2010 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 @@ -41,7 +41,7 @@ void test05() typedef filebuf::traits_type traits_type; bool test __attribute__((unused)) = true; - streamsize strmsz_1, strmsz_2; + streamsize strmsz_1; int_type c1; int_type c2; @@ -66,7 +66,7 @@ void test05() //beg strmsz_1 = fb.in_avail(); pt_1 = fb.pubseekoff(2, ios_base::beg); - strmsz_2 = fb.in_avail(); + fb.in_avail(); off_1 = off_type(pt_1); VERIFY( off_1 > 0 ); c1 = fb.snextc(); //current in pointer +1 diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/char/2-io.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/char/2-io.cc index 67a376e67c4..89fab2aed90 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/char/2-io.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/char/2-io.cc @@ -1,6 +1,6 @@ // 2001-05-21 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 2001, 2002, 2003, 2009, 2010 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 @@ -41,7 +41,7 @@ void test05() typedef filebuf::off_type off_type; bool test __attribute__((unused)) = true; - streamsize strmsz_1, strmsz_2; + streamsize strmsz_1; int_type c1; int_type c2; @@ -66,7 +66,7 @@ void test05() //beg strmsz_1 = fb.in_avail(); pt_1 = fb.pubseekoff(2, ios_base::beg); - strmsz_2 = fb.in_avail(); + fb.in_avail(); off_1 = off_type(pt_1); VERIFY( off_1 > 0 ); c1 = fb.snextc(); //current in pointer +1 diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/char/2-out.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/char/2-out.cc index e1e98261f22..b1ad66e8933 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/char/2-out.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/char/2-out.cc @@ -1,6 +1,6 @@ // 2001-05-21 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 2001, 2002, 2003, 2009, 2010 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 @@ -41,7 +41,7 @@ void test05() typedef filebuf::traits_type traits_type; bool test __attribute__((unused)) = true; - streamsize strmsz_1, strmsz_2; + streamsize strmsz_1; int_type c1; int_type c2; @@ -66,7 +66,7 @@ void test05() //beg strmsz_1 = fb.in_avail(); pt_1 = fb.pubseekoff(2, ios_base::beg); - strmsz_2 = fb.in_avail(); + fb.in_avail(); off_1 = off_type(pt_1); VERIFY( off_1 > 0 ); c1 = fb.snextc(); //current in pointer +1 diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/setbuf/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/setbuf/char/1.cc index 3b434ba7a52..42688e825e0 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/setbuf/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/setbuf/char/1.cc @@ -1,6 +1,6 @@ // 2001-05-21 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 2001, 2002, 2003, 2009, 2010 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 @@ -40,8 +40,8 @@ public: check_pointers() { bool test __attribute__((unused)) = true; - test = (this->pbase() == NULL); - test &= (this->pptr() == NULL); + test = (!this->pbase()); + test &= (!this->pptr()); return test; } }; diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/setbuf/char/12875-2.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/setbuf/char/12875-2.cc index ff22967600e..b736b146070 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/setbuf/char/12875-2.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/setbuf/char/12875-2.cc @@ -44,7 +44,7 @@ void test02() FILE* in = fopen(name, "r"); char str[256]; - fgets(str, 256, in); + VERIFY( fgets(str, 256, in) ); VERIFY( !strcmp(str, "Hello, world") ); fclose(in); } diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/sgetn/char/2-out.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/sgetn/char/2-out.cc index e24941e06af..fd332b68365 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/sgetn/char/2-out.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/sgetn/char/2-out.cc @@ -1,6 +1,6 @@ // 2001-05-21 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 2001, 2002, 2003, 2009, 2010 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 @@ -40,7 +40,7 @@ void test05() streamsize strmsz_1, strmsz_2; char carray2[8192] = ""; - int_type c2, c4; + int_type c2; // streamsize sgetn(char_type *s, streamsize n) // streamsize xsgetn(char_type *s, streamsize n) @@ -63,7 +63,7 @@ void test05() strmsz_2 = fb_02.sgetn(carray2, strmsz_1 + 5); VERIFY( strmsz_1 == -1 ); VERIFY( strmsz_2 == 0 ); - c4 = fb_02.sgetc(); + fb_02.sgetc(); VERIFY( fb_02.unbuffered() ); VERIFY( !fb_02.read_position() ); } diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/sputc/char/1057.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/sputc/char/1057.cc index 4fd2d47130e..a2368f93203 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/sputc/char/1057.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/sputc/char/1057.cc @@ -1,6 +1,6 @@ // 1999-10-11 bkoz -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2009 +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -32,7 +32,7 @@ public: nullsetpbuf() { setp(foo, foo + 64); - setp(NULL, NULL); + setp(0, 0); } }; diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/sputn/char/1057.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/sputn/char/1057.cc index 89ec0e53d1f..c84a079d298 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/sputn/char/1057.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/sputn/char/1057.cc @@ -1,6 +1,6 @@ // 1999-10-11 bkoz -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2009 +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -32,7 +32,7 @@ public: nullsetpbuf() { setp(foo, foo + 64); - setp(NULL, NULL); + setp(0, 0); } }; diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc index 07b971ec5c4..54a1372b467 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc @@ -1,6 +1,6 @@ // 2001-05-21 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 2001, 2002, 2003, 2009, 2010 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 @@ -41,7 +41,7 @@ void test01() bool test __attribute__((unused)) = true; streamsize strmsz_1, strmsz_2; - int_type c1, c2, c3; + int_type c1, c2; // int_type sungetc() // if in_cur not avail, return pbackfail(), else decrement and @@ -56,7 +56,7 @@ void test01() fb_01.sputc('u'); fb_01.sputc('v'); fb_01.pubseekoff(-1, std::ios_base::end); - c3 = fb_01.sbumpc(); + fb_01.sbumpc(); strmsz_1 = fb_01.in_avail(); c2 = fb_01.sungetc(); strmsz_2 = fb_01.in_avail(); @@ -68,7 +68,7 @@ void test01() c1 = fb_01.sgetc(); c2 = fb_01.sungetc(); strmsz_2 = fb_01.in_avail(); // 1 - c3 = fb_01.sgetc(); + fb_01.sgetc(); VERIFY( c1 != c2 ); VERIFY( strmsz_2 != strmsz_1 ); VERIFY( strmsz_2 == 1 ); diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/sungetc/char/2-io.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/sungetc/char/2-io.cc index 753154ea0ae..782a83db91d 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/sungetc/char/2-io.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/sungetc/char/2-io.cc @@ -1,6 +1,6 @@ // 2001-05-21 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 2001, 2002, 2003, 2009, 2010 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 @@ -41,7 +41,7 @@ void test01() bool test __attribute__((unused)) = true; streamsize strmsz_1, strmsz_2; - int_type c1, c2, c3; + int_type c1, c2; // int_type sungetc() // if in_cur not avail, return pbackfail(), else decrement and @@ -56,7 +56,7 @@ void test01() fb_01.sputc('u'); fb_01.sputc('v'); fb_01.pubseekoff(-1, std::ios_base::end); - c3 = fb_01.sbumpc(); + fb_01.sbumpc(); strmsz_1 = fb_01.in_avail(); c2 = fb_01.sungetc(); strmsz_2 = fb_01.in_avail(); @@ -68,7 +68,7 @@ void test01() c1 = fb_01.sgetc(); c2 = fb_01.sungetc(); strmsz_2 = fb_01.in_avail(); // 1 - c3 = fb_01.sgetc(); + fb_01.sgetc(); VERIFY( c1 != c2 ); VERIFY( strmsz_2 != strmsz_1 ); VERIFY( strmsz_2 == 1 ); diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-2.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-2.cc index ff1cc405bd3..f6a2eaca94b 100644 --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-2.cc +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-2.cc @@ -161,7 +161,7 @@ void test02() const char* name = "tmp_11544-2"; FILE* f = fopen(name, "w"); - fwrite("aaaab", 1, 5, f); + VERIFY( fwrite("aaaab", 1, 5, f) == 5 ); fclose(f); wifstream in; diff --git a/libstdc++-v3/testsuite/27_io/basic_ios/clear/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_ios/clear/char/1.cc index 5ac2cc08ccb..b65d0890064 100644 --- a/libstdc++-v3/testsuite/27_io/basic_ios/clear/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_ios/clear/char/1.cc @@ -1,6 +1,6 @@ // 1999-09-20 bkoz -// Copyright (C) 1999, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 1999, 2003, 2009, 2010 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 @@ -35,7 +35,7 @@ void test01() iostate iostate02, iostate03; const iostate iostate01 = std::ios_base::badbit | std::ios_base::eofbit; - std::ios ios_01(NULL); + std::ios ios_01(0); // bool fail() const VERIFY( ios_01.fail() ); diff --git a/libstdc++-v3/testsuite/27_io/basic_ios/copyfmt/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_ios/copyfmt/char/1.cc index 9150d1126bd..0cf07f212b8 100644 --- a/libstdc++-v3/testsuite/27_io/basic_ios/copyfmt/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_ios/copyfmt/char/1.cc @@ -1,6 +1,6 @@ // 1999-09-20 bkoz -// Copyright (C) 1999, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 1999, 2003, 2009, 2010 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 @@ -35,8 +35,8 @@ void test02() // basic_ios& copyfmt(const basic_ios& rhs) { - std::ios ios_01(NULL); - std::ios ios_02(NULL); + std::ios ios_01(0); + std::ios ios_02(0); ios_01.exceptions(std::ios_base::eofbit); ios_02.exceptions(std::ios_base::eofbit); @@ -49,8 +49,8 @@ void test02() } { - std::ios ios_01(NULL); - std::ios ios_02(NULL); + std::ios ios_01(0); + std::ios ios_02(0); ios_01.clear(std::ios_base::eofbit); ios_02.exceptions(std::ios_base::eofbit); diff --git a/libstdc++-v3/testsuite/27_io/basic_ios/copyfmt/char/2.cc b/libstdc++-v3/testsuite/27_io/basic_ios/copyfmt/char/2.cc index 0a171a6fc54..79390eaca1c 100644 --- a/libstdc++-v3/testsuite/27_io/basic_ios/copyfmt/char/2.cc +++ b/libstdc++-v3/testsuite/27_io/basic_ios/copyfmt/char/2.cc @@ -2,7 +2,7 @@ // 1999-09-20 bkoz -// Copyright (C) 1999, 2003, 2005, 2009 Free Software Foundation, Inc. +// Copyright (C) 1999, 2003, 2005, 2009, 2010 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 @@ -37,8 +37,8 @@ void test03() typedef std::ios_base::iostate iostate; locale loc_c = locale::classic(); locale loc_de = locale("de_DE"); - std::ios ios_01(NULL); - std::ios ios_02(NULL); + std::ios ios_01(0); + std::ios ios_02(0); ios_01.imbue(loc_c); ios_02.imbue(loc_de); ios_02.setstate(ios_base::badbit); diff --git a/libstdc++-v3/testsuite/27_io/basic_ios/exceptions/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_ios/exceptions/char/1.cc index 03f70c89458..f0494bd458d 100644 --- a/libstdc++-v3/testsuite/27_io/basic_ios/exceptions/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_ios/exceptions/char/1.cc @@ -1,6 +1,6 @@ // 1999-09-20 bkoz -// Copyright (C) 1999, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 1999, 2003, 2009, 2010 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 @@ -35,13 +35,13 @@ void test01() // iostate exceptions() const iostate iostate02; { - std::ios ios_01(NULL); + std::ios ios_01(0); VERIFY( ios_01.exceptions() == std::ios_base::goodbit ); } // void exceptions(iostate except) { - std::ios ios_01(NULL); + std::ios ios_01(0); try { ios_01.exceptions(std::ios_base::eofbit); } @@ -53,7 +53,7 @@ void test01() } { - std::ios ios_01(NULL); + std::ios ios_01(0); ios_01.clear(std::ios_base::eofbit); try { ios_01.exceptions(std::ios_base::eofbit); diff --git a/libstdc++-v3/testsuite/27_io/basic_ios/locales/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_ios/locales/char/1.cc index 3d5bf772434..20de8a95708 100644 --- a/libstdc++-v3/testsuite/27_io/basic_ios/locales/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_ios/locales/char/1.cc @@ -1,6 +1,6 @@ // 1999-09-20 bkoz -// Copyright (C) 1999, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 1999, 2003, 2009, 2010 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 @@ -29,7 +29,7 @@ void test01() bool test __attribute__((unused)) = true; const std::locale c_loc = std::locale::classic(); - std::ios ios_01(NULL); + std::ios ios_01(0); std::ios::char_type ct01; std::ios::char_type ct02('x');; diff --git a/libstdc++-v3/testsuite/27_io/basic_iostream/cons/2020.cc b/libstdc++-v3/testsuite/27_io/basic_iostream/cons/2020.cc index 4aec0e3cad3..44fe41323c7 100644 --- a/libstdc++-v3/testsuite/27_io/basic_iostream/cons/2020.cc +++ b/libstdc++-v3/testsuite/27_io/basic_iostream/cons/2020.cc @@ -1,7 +1,7 @@ // 1999-01-17 bkoz test functionality of basic_filebuf for char_type == char // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, -// 2006, 2007, 2008, 2009 +// 2006, 2007, 2008, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -34,7 +34,7 @@ void test07() try { - gnu_iostr obj(NULL); + gnu_iostr obj(0); } catch(std::exception& obj) { diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/cons/3.cc b/libstdc++-v3/testsuite/27_io/basic_istream/cons/3.cc index 4162f9e68aa..3b2cb845e08 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/cons/3.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/cons/3.cc @@ -1,6 +1,7 @@ // 1999-01-17 bkoz test functionality of basic_filebuf for char_type == char -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2009 +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, +// 2005, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -33,7 +34,7 @@ void test07() typedef std::basic_istream<__gnu_test::pod_ushort> gnu_istr; try - { gnu_istr obj(NULL); } + { gnu_istr obj(0); } catch(std::exception& obj) { test = false; diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc index 619751506ab..a8d91695b07 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc @@ -1,6 +1,7 @@ // 1999-04-12 bkoz -// Copyright (C) 1999, 2000, 2002, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 1999, 2000, 2002, 2003, 2009, 2010 +// 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 @@ -35,7 +36,7 @@ std::stringbuf isbuf_02(str_02, std::ios_base::in); std::stringbuf isbuf_03(str_03, std::ios_base::in); std::stringbuf isbuf_04(str_04, std::ios_base::in); -std::istream is_01(NULL); +std::istream is_01(0); std::istream is_02(&isbuf_02); std::istream is_03(&isbuf_03); std::istream is_04(&isbuf_04); @@ -61,11 +62,8 @@ bool test01() { long double ld1 = 0; // process alphanumeric versions of bool values - std::ios_base::fmtflags fmt = is_02.flags(); - bool testfmt = fmt & std::ios_base::boolalpha; is_02.setf(std::ios_base::boolalpha); - fmt = is_02.flags(); - testfmt = fmt & std::ios_base::boolalpha; + is_02.flags(); is_02 >> b1; VERIFY( b1 == 1 ); is_02 >> b1; @@ -73,8 +71,7 @@ bool test01() { // process numeric versions of of bool values is_02.unsetf(std::ios_base::boolalpha); - fmt = is_02.flags(); - testfmt = fmt & std::ios_base::boolalpha; + is_02.flags(); is_02 >> b1; VERIFY( b1 == 0 ); is_02 >> b1; diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/01.cc b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/01.cc index f0d1635da1b..5d7ec97a59b 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/01.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/01.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2004, 2009 Free Software Foundation, Inc. +// Copyright (C) 2004, 2009, 2010 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 @@ -33,7 +33,7 @@ std::wstringbuf isbuf_02(str_02, std::ios_base::in); std::wstringbuf isbuf_03(str_03, std::ios_base::in); std::wstringbuf isbuf_04(str_04, std::ios_base::in); -std::wistream is_01(NULL); +std::wistream is_01(0); std::wistream is_02(&isbuf_02); std::wistream is_03(&isbuf_03); std::wistream is_04(&isbuf_04); @@ -59,11 +59,8 @@ bool test01() { long double ld1 = 0; // process alphanumeric versions of bool values - std::ios_base::fmtflags fmt = is_02.flags(); - bool testfmt = fmt & std::ios_base::boolalpha; is_02.setf(std::ios_base::boolalpha); - fmt = is_02.flags(); - testfmt = fmt & std::ios_base::boolalpha; + is_02.flags(); is_02 >> b1; VERIFY( b1 == 1 ); is_02 >> b1; @@ -71,8 +68,7 @@ bool test01() { // process numeric versions of of bool values is_02.unsetf(std::ios_base::boolalpha); - fmt = is_02.flags(); - testfmt = fmt & std::ios_base::boolalpha; + is_02.flags(); is_02 >> b1; VERIFY( b1 == 0 ); is_02 >> b1; diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/char/1.cc index c6fba2f2001..7e4387d315d 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/char/1.cc @@ -1,6 +1,6 @@ // 1999-07-26 bkoz -// Copyright (C) 1999, 2003, 2005, 2009 Free Software Foundation +// Copyright (C) 1999, 2003, 2005, 2009, 2010 Free Software Foundation // // 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 @@ -32,7 +32,7 @@ void test01() std::stringbuf isbuf_01(std::ios_base::in); std::stringbuf isbuf_02(str_02, std::ios_base::in); - std::istream is_01(NULL); + std::istream is_01(0); std::istream is_02(&isbuf_02); std::ios_base::iostate state1, state2, statefail; diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/char/2.cc b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/char/2.cc index edff0307194..812d5413412 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/char/2.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/char/2.cc @@ -1,6 +1,6 @@ // 1999-07-26 bkoz -// Copyright (C) 1999, 2003, 2009 Free Software Foundation +// Copyright (C) 1999, 2003, 2009, 2010 Free Software Foundation // // 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 @@ -34,7 +34,7 @@ void test02() std::stringbuf isbuf_01(std::ios_base::in); std::stringbuf isbuf_02(str_02, std::ios_base::in); - std::istream is_01(NULL); + std::istream is_01(0); std::istream is_02(&isbuf_02); std::ios_base::iostate state1, state2, statefail; statefail = std::ios_base::failbit; diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/char/3.cc b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/char/3.cc index cfaf5b11b61..551cb111a49 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/char/3.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/char/3.cc @@ -1,6 +1,6 @@ // 1999-07-26 bkoz -// Copyright (C) 1999, 2003, 2009 Free Software Foundation +// Copyright (C) 1999, 2003, 2009, 2010 Free Software Foundation // // 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 @@ -32,7 +32,7 @@ void test01() std::stringbuf isbuf_01(std::ios_base::in); std::stringbuf isbuf_02(str_02, std::ios_base::in); - std::istream is_01(NULL); + std::istream is_01(0); std::istream is_02(&isbuf_02); std::ios_base::iostate state1, state2, statefail; diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/char/9826.cc b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/char/9826.cc index 224d0565f3a..a2e480ebce6 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/char/9826.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/char/9826.cc @@ -1,6 +1,6 @@ // 2002-07-25 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2002, 2003, 2005, 2009 Free Software Foundation, Inc. +// Copyright (C) 2002, 2003, 2005, 2009, 2010 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 @@ -39,7 +39,7 @@ void test02() sstr >> str; // 2 - pod_char* chr = NULL; + pod_char* chr = 0; sstr >> chr; // 3 diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/wchar_t/1.cc b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/wchar_t/1.cc index 2b428037f6b..f7b749a5df0 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/wchar_t/1.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2004, 2005, 2009 Free Software Foundation +// Copyright (C) 2004, 2005, 2009, 2010 Free Software Foundation // // 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 @@ -30,7 +30,7 @@ void test01() std::wstringbuf isbuf_01(std::ios_base::in); std::wstringbuf isbuf_02(str_02, std::ios_base::in); - std::wistream is_01(NULL); + std::wistream is_01(0); std::wistream is_02(&isbuf_02); std::ios_base::iostate state1, state2, statefail; diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/wchar_t/2.cc b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/wchar_t/2.cc index a6841198d83..a697ef2b256 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/wchar_t/2.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/wchar_t/2.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2004, 2009 Free Software Foundation +// Copyright (C) 2004, 2009, 2010 Free Software Foundation // // 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 @@ -30,7 +30,7 @@ void test02() std::wstringbuf isbuf_01(std::ios_base::in); std::wstringbuf isbuf_02(str_02, std::ios_base::in); - std::wistream is_01(NULL); + std::wistream is_01(0); std::wistream is_02(&isbuf_02); std::ios_base::iostate state1, state2, statefail; statefail = std::ios_base::failbit; diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/wchar_t/3.cc b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/wchar_t/3.cc index 3ba355d6452..6ea22e395de 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/wchar_t/3.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/wchar_t/3.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2004, 2009 Free Software Foundation +// Copyright (C) 2004, 2009, 2010 Free Software Foundation // // 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 @@ -30,7 +30,7 @@ void test01() std::wstringbuf isbuf_01(std::ios_base::in); std::wstringbuf isbuf_02(str_02, std::ios_base::in); - std::wistream is_01(NULL); + std::wistream is_01(0); std::wistream is_02(&isbuf_02); std::ios_base::iostate state1, state2, statefail; diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_other/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_other/char/1.cc index ecc50826f9e..854dc7c8565 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_other/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_other/char/1.cc @@ -1,6 +1,7 @@ // 1999-07-28 bkoz -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009 +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, +// 2009, 2010 // Free Software Foundation // // This file is part of the GNU ISO C++ Library. This library is free @@ -41,7 +42,7 @@ void test01() std::stringbuf isbuf_04(str_02, std::ios_base::in); std::stringbuf isbuf_05(str_02, std::ios_base::in | std::ios_base::out); - std::istream is_00(NULL); + std::istream is_00(0); std::istream is_01(&isbuf_01); std::istream is_02(&isbuf_02); std::istream is_03(&isbuf_03); diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_other/char/exceptions_null.cc b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_other/char/exceptions_null.cc index beab22c0a21..96ba7193021 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_other/char/exceptions_null.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_other/char/exceptions_null.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 2003, 2009, 2010 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 @@ -28,7 +28,7 @@ void test2() { bool test __attribute__((unused)) = true; istringstream stream; - stream >> static_cast<streambuf*>(NULL); + stream >> static_cast<streambuf*>(0); VERIFY(stream.rdstate() & ios_base::failbit); } @@ -40,7 +40,7 @@ void test4() try { - stream >> static_cast<streambuf*>(NULL); + stream >> static_cast<streambuf*>(0); VERIFY(false); } catch (ios_base::failure&) diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_other/wchar_t/1.cc b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_other/wchar_t/1.cc index 809c0083502..eab6650b1ac 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_other/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_other/wchar_t/1.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2004, 2005, 2006, 2009 Free Software Foundation +// Copyright (C) 2004, 2005, 2006, 2009, 2010 Free Software Foundation // // 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 @@ -38,7 +38,7 @@ void test01() std::wstringbuf isbuf_04(str_02, std::ios_base::in); std::wstringbuf isbuf_05(str_02, std::ios_base::in | std::ios_base::out); - std::wistream is_00(NULL); + std::wistream is_00(0); std::wistream is_01(&isbuf_01); std::wistream is_02(&isbuf_02); std::wistream is_03(&isbuf_03); diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_other/wchar_t/exceptions_null.cc b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_other/wchar_t/exceptions_null.cc index eddef0ae43e..bc04b7d9b22 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/extractors_other/wchar_t/exceptions_null.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/extractors_other/wchar_t/exceptions_null.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2004, 2009 Free Software Foundation, Inc. +// Copyright (C) 2004, 2009, 2010 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 @@ -28,7 +28,7 @@ void test2() { bool test __attribute__((unused)) = true; wistringstream stream; - stream >> static_cast<wstreambuf*>(NULL); + stream >> static_cast<wstreambuf*>(0); VERIFY( stream.rdstate() & ios_base::failbit ); } @@ -40,7 +40,7 @@ void test4() try { - stream >> static_cast<wstreambuf*>(NULL); + stream >> static_cast<wstreambuf*>(0); VERIFY( false ); } catch (ios_base::failure&) diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/get/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_istream/get/char/1.cc index 19169d97934..f7957d8a51c 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/get/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/get/char/1.cc @@ -1,6 +1,7 @@ // 1999-08-11 bkoz -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2009 Free Software Foundation +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2009, 2010 +// Free Software Foundation // // 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 @@ -41,7 +42,7 @@ test03() std::stringbuf sbuf_04(str01, std::ios_base::in); std::stringbuf sbuf_05(str01, std::ios_base::in); - std::istream is_00(NULL); + std::istream is_00(0); std::istream is_04(&sbuf_04); std::istream is_05(&sbuf_05); std::ios_base::iostate statefail, stateeof; diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/get/wchar_t/1.cc b/libstdc++-v3/testsuite/27_io/basic_istream/get/wchar_t/1.cc index 7168aefcdbb..b3027c3af95 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/get/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/get/wchar_t/1.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2004, 2009 Free Software Foundation +// Copyright (C) 2004, 2009, 2010 Free Software Foundation // // 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 @@ -39,7 +39,7 @@ test03() std::wstringbuf sbuf_04(str01, std::ios_base::in); std::wstringbuf sbuf_05(str01, std::ios_base::in); - std::wistream is_00(NULL); + std::wistream is_00(0); std::wistream is_04(&sbuf_04); std::wistream is_05(&sbuf_05); std::ios_base::iostate statefail, stateeof; diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/getline/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_istream/getline/char/1.cc index 67b1955fcd6..48b245f9b96 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/getline/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/getline/char/1.cc @@ -1,6 +1,7 @@ // 1999-08-11 bkoz -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2009 Free Software Foundation +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2009, 2010 +// Free Software Foundation // // 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 @@ -41,7 +42,7 @@ test02() std::stringbuf sbuf_04(str01, std::ios_base::in); - std::istream is_00(NULL); + std::istream is_00(0); std::istream is_04(&sbuf_04); std::ios_base::iostate state1, state2, statefail, stateeof; statefail = std::ios_base::failbit; @@ -54,7 +55,7 @@ test02() is_00.getline(carray1, 20, '*'); state2 = is_00.rdstate(); // make sure failbit was set, since we couldn't extract - // from the NULL streambuf... + // from the null streambuf... VERIFY( state1 != state2 ); VERIFY( static_cast<bool>(state2 & statefail) ); diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/getline/wchar_t/1.cc b/libstdc++-v3/testsuite/27_io/basic_istream/getline/wchar_t/1.cc index 49305a33171..2445dd4f749 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/getline/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/getline/wchar_t/1.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2004, 2009 Free Software Foundation +// Copyright (C) 2004, 2009, 2010 Free Software Foundation // // 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 @@ -39,7 +39,7 @@ test02() std::wstringbuf sbuf_04(str01, std::ios_base::in); - std::wistream is_00(NULL); + std::wistream is_00(0); std::wistream is_04(&sbuf_04); std::ios_base::iostate state1, state2, statefail, stateeof; statefail = std::ios_base::failbit; @@ -52,7 +52,7 @@ test02() is_00.getline(carray1, 20, L'*'); state2 = is_00.rdstate(); // make sure failbit was set, since we couldn't extract - // from the NULL streambuf... + // from the null streambuf... VERIFY( state1 != state2 ); VERIFY( static_cast<bool>(state2 & statefail) ); diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/ignore/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_istream/ignore/char/1.cc index e70c1ab5fb2..4e0ce25aa32 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/ignore/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/ignore/char/1.cc @@ -1,6 +1,7 @@ // 1999-08-11 bkoz -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2009 Free Software Foundation +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2009, 2010 +// Free Software Foundation // // 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 @@ -36,12 +37,10 @@ test01() std::stringbuf isbuf_03(str_02, std::ios_base::in); std::stringbuf isbuf_04(str_02, std::ios_base::in); - std::istream is_00(NULL); + std::istream is_00(0); std::istream is_03(&isbuf_03); std::istream is_04(&isbuf_04); - std::ios_base::iostate state1, state2, statefail, stateeof; - statefail = std::ios_base::failbit; - stateeof = std::ios_base::eofbit; + std::ios_base::iostate state1, state2; // istream& read(char_type* s, streamsize n) char carray[60] = ""; diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/ignore/wchar_t/1.cc b/libstdc++-v3/testsuite/27_io/basic_istream/ignore/wchar_t/1.cc index 6254428d368..c4a7a33d002 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/ignore/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/ignore/wchar_t/1.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2004, 2009 Free Software Foundation +// Copyright (C) 2004, 2009, 2010 Free Software Foundation // // 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 @@ -34,12 +34,10 @@ test01() std::wstringbuf isbuf_03(str_02, std::ios_base::in); std::wstringbuf isbuf_04(str_02, std::ios_base::in); - std::wistream is_00(NULL); + std::wistream is_00(0); std::wistream is_03(&isbuf_03); std::wistream is_04(&isbuf_04); - std::ios_base::iostate state1, state2, statefail, stateeof; - statefail = std::ios_base::failbit; - stateeof = std::ios_base::eofbit; + std::ios_base::iostate state1, state2; // istream& read(char_type* s, streamsize n) wchar_t carray[60] = L""; diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/peek/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_istream/peek/char/1.cc index 6d501646ad6..39a3fdff396 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/peek/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/peek/char/1.cc @@ -1,6 +1,7 @@ // 1999-08-11 bkoz -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2009 Free Software Foundation +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2009, 2010 +// Free Software Foundation // // 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 @@ -36,12 +37,10 @@ test01() std::stringbuf isbuf_03(str_02, std::ios_base::in); std::stringbuf isbuf_04(str_02, std::ios_base::in); - std::istream is_00(NULL); + std::istream is_00(0); std::istream is_03(&isbuf_03); std::istream is_04(&isbuf_04); - std::ios_base::iostate state1, state2, statefail, stateeof; - statefail = std::ios_base::failbit; - stateeof = std::ios_base::eofbit; + std::ios_base::iostate state1, state2; char carray[60] = ""; diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/peek/wchar_t/1.cc b/libstdc++-v3/testsuite/27_io/basic_istream/peek/wchar_t/1.cc index b4c0e32c46f..612e60600ff 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/peek/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/peek/wchar_t/1.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2004, 2009 Free Software Foundation +// Copyright (C) 2004, 2009, 2010 Free Software Foundation // // 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 @@ -34,12 +34,10 @@ test01() std::wstringbuf isbuf_03(str_02, std::ios_base::in); std::wstringbuf isbuf_04(str_02, std::ios_base::in); - std::wistream is_00(NULL); + std::wistream is_00(0); std::wistream is_03(&isbuf_03); std::wistream is_04(&isbuf_04); - std::ios_base::iostate state1, state2, statefail, stateeof; - statefail = std::ios_base::failbit; - stateeof = std::ios_base::eofbit; + std::ios_base::iostate state1, state2; wchar_t carray[60] = L""; diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/read/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_istream/read/char/1.cc index b9ebe7dfe9a..3879f7b422d 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/read/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/read/char/1.cc @@ -1,6 +1,6 @@ // 1999-08-11 bkoz -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2009 +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2009, 2010 // Free Software Foundation // // This file is part of the GNU ISO C++ Library. This library is free @@ -34,7 +34,7 @@ test01() std::stringbuf isbuf_03(str_02, std::ios_base::in); std::stringbuf isbuf_04(str_02, std::ios_base::in); - std::istream is_00(NULL); + std::istream is_00(0); std::istream is_03(&isbuf_03); std::istream is_04(&isbuf_04); std::ios_base::iostate state1, state2, statefail, stateeof; diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/read/wchar_t/1.cc b/libstdc++-v3/testsuite/27_io/basic_istream/read/wchar_t/1.cc index 1485aa1abf0..508e0c8cb4d 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/read/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/read/wchar_t/1.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2004, 2009 Free Software Foundation +// Copyright (C) 2004, 2009, 2010 Free Software Foundation // // 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 @@ -31,7 +31,7 @@ test01() std::wstringbuf isbuf_03(str_02, std::ios_base::in); std::wstringbuf isbuf_04(str_02, std::ios_base::in); - std::wistream is_00(NULL); + std::wistream is_00(0); std::wistream is_03(&isbuf_03); std::wistream is_04(&isbuf_04); std::ios_base::iostate state1, state2, statefail, stateeof; diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/seekg/char/8348-2.cc b/libstdc++-v3/testsuite/27_io/basic_istream/seekg/char/8348-2.cc index 0fea44568d0..899a48d7842 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/seekg/char/8348-2.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/seekg/char/8348-2.cc @@ -1,6 +1,6 @@ // 2000-06-29 bkoz -// Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009 +// Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009, 2010 // Free Software Foundation // // This file is part of the GNU ISO C++ Library. This library is free @@ -35,7 +35,7 @@ void test06(void) // seekg { istringstream iss(num1); - istream::pos_type pos1 = iss.tellg(); + iss.tellg(); int asNum = 0; iss >> asNum; VERIFY( test = iss.eof() ); diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/seekg/wchar_t/8348-2.cc b/libstdc++-v3/testsuite/27_io/basic_istream/seekg/wchar_t/8348-2.cc index ec09e45c96d..d428a88ba41 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/seekg/wchar_t/8348-2.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/seekg/wchar_t/8348-2.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2004, 2005, 2006, 2009 Free Software Foundation +// Copyright (C) 2004, 2005, 2006, 2009, 2010 Free Software Foundation // // 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 @@ -32,7 +32,7 @@ void test06(void) // seekg { wistringstream iss(num1); - wistream::pos_type pos1 = iss.tellg(); + iss.tellg(); int asNum = 0; iss >> asNum; VERIFY( test = iss.eof() ); diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/tellg/char/8348.cc b/libstdc++-v3/testsuite/27_io/basic_istream/tellg/char/8348.cc index 1b8f18d72b1..e4b4914ef48 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/tellg/char/8348.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/tellg/char/8348.cc @@ -1,6 +1,6 @@ // 2000-06-29 bkoz -// Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009 +// Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009, 2010 // Free Software Foundation // // This file is part of the GNU ISO C++ Library. This library is free @@ -35,7 +35,7 @@ void test06(void) // tellg { istringstream iss(num1); - istream::pos_type pos1 = iss.tellg(); + iss.tellg(); int asNum = 0; iss >> asNum; VERIFY( test = iss.eof() ); @@ -47,7 +47,7 @@ void test06(void) // seekg { istringstream iss(num1); - istream::pos_type pos1 = iss.tellg(); + iss.tellg(); int asNum = 0; iss >> asNum; VERIFY( test = iss.eof() ); diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/tellg/wchar_t/8348.cc b/libstdc++-v3/testsuite/27_io/basic_istream/tellg/wchar_t/8348.cc index cdbbd0cc6d1..61613817b4d 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/tellg/wchar_t/8348.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/tellg/wchar_t/8348.cc @@ -32,7 +32,7 @@ void test06(void) // tellg { wistringstream iss(num1); - wistream::pos_type pos1 = iss.tellg(); + iss.tellg(); int asNum = 0; iss >> asNum; VERIFY( test = iss.eof() ); @@ -44,7 +44,7 @@ void test06(void) // seekg { wistringstream iss(num1); - wistream::pos_type pos1 = iss.tellg(); + iss.tellg(); int asNum = 0; iss >> asNum; VERIFY( test = iss.eof() ); diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/ws/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_istream/ws/char/1.cc index 703ccedac6d..b59d08839db 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/ws/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/ws/char/1.cc @@ -1,6 +1,7 @@ // 1999-07-22 bkoz -// Copyright (C) 1994, 1999, 2001, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 1994, 1999, 2001, 2003, 2009, 2010 +// 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 @@ -33,7 +34,6 @@ void test01(void) std::string str02(str_lit01); std::string str04; std::string str05; - std::ios_base::iostate flag3, flag4, flag5; // template<_CharT, _Traits> // basic_istream<_CharT, _Traits>& ws(basic_istream<_Char, _Traits>& is) @@ -60,9 +60,6 @@ void test01(void) VERIFY( str05 == "barbara" ); VERIFY( str05 == str04 ); - flag3 = std::ios_base::eofbit; - flag4 = std::ios_base::badbit; - flag5 = std::ios_base::failbit; VERIFY( !iss01.fail() ); VERIFY( !iss02.fail() ); VERIFY( !iss01.eof() ); diff --git a/libstdc++-v3/testsuite/27_io/basic_istream/ws/wchar_t/1.cc b/libstdc++-v3/testsuite/27_io/basic_istream/ws/wchar_t/1.cc index d00dce70e3e..8e60163c148 100644 --- a/libstdc++-v3/testsuite/27_io/basic_istream/ws/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_istream/ws/wchar_t/1.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2004, 2009 Free Software Foundation, Inc. +// Copyright (C) 2004, 2009, 2010 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 @@ -31,7 +31,6 @@ void test01(void) std::wstring str02(str_lit01); std::wstring str04; std::wstring str05; - std::ios_base::iostate flag3, flag4, flag5; // template<_CharT, _Traits> // basic_istream<_CharT, _Traits>& ws(basic_istream<_Char, _Traits>& is) @@ -58,9 +57,6 @@ void test01(void) VERIFY( str05 == L"barbara" ); VERIFY( str05 == str04 ); - flag3 = std::ios_base::eofbit; - flag4 = std::ios_base::badbit; - flag5 = std::ios_base::failbit; VERIFY( !iss01.fail() ); VERIFY( !iss02.fail() ); VERIFY( !iss01.eof() ); diff --git a/libstdc++-v3/testsuite/27_io/basic_ofstream/pthread2.cc b/libstdc++-v3/testsuite/27_io/basic_ofstream/pthread2.cc index 04df562ffda..cb683666ccc 100644 --- a/libstdc++-v3/testsuite/27_io/basic_ofstream/pthread2.cc +++ b/libstdc++-v3/testsuite/27_io/basic_ofstream/pthread2.cc @@ -1,7 +1,7 @@ // 2002-01-23 Loren J. Rittle <rittle@labs.mot.com> <ljrittle@acm.org> // Adpated from libstdc++/5347 submitted by markus.breuer@materna.de // -// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009 +// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -51,10 +51,10 @@ main() #endif for (int i = 0; i < max_thread_count; i++) - pthread_create (&tid[i], NULL, thread_main, 0); + pthread_create (&tid[i], 0, thread_main, 0); for (int i = 0; i < max_thread_count; i++) - pthread_join (tid[i], NULL); + pthread_join (tid[i], 0); return 0; } diff --git a/libstdc++-v3/testsuite/27_io/basic_ostream/cons/2020.cc b/libstdc++-v3/testsuite/27_io/basic_ostream/cons/2020.cc index 125440b0b20..07fb7b82eb2 100644 --- a/libstdc++-v3/testsuite/27_io/basic_ostream/cons/2020.cc +++ b/libstdc++-v3/testsuite/27_io/basic_ostream/cons/2020.cc @@ -1,6 +1,7 @@ // 1999-01-17 bkoz test functionality of basic_filebuf for char_type == char -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2009 +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, +// 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -34,7 +35,7 @@ void test07() try { - gnu_ostr obj(NULL); + gnu_ostr obj(0); } catch(std::exception& obj) { diff --git a/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_character/char/4.cc b/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_character/char/4.cc index 8b85ca21cea..5ec21367b08 100644 --- a/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_character/char/4.cc +++ b/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_character/char/4.cc @@ -1,6 +1,7 @@ // 1999-08-16 bkoz -// Copyright (C) 1999, 2000, 2002, 2003, 2005, 2009 Free Software Foundation +// Copyright (C) 1999, 2000, 2002, 2003, 2005, 2009, 2010 +// Free Software Foundation // // 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 @@ -35,9 +36,6 @@ test04() std::ostringstream oss_02(str_01, std::ios_base::out); - std::ios_base::iostate statefail; - statefail = std::ios_base::failbit; - // template<_CharT, _Traits> // basic_ostream& operator<<(ostream&, const char*) for (int i = 0; i < i_max; ++i) diff --git a/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_character/char/8.cc b/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_character/char/8.cc index 85af3666a3b..f38e2e703db 100644 --- a/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_character/char/8.cc +++ b/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_character/char/8.cc @@ -1,6 +1,6 @@ // 1999-08-16 bkoz -// Copyright (C) 1999, 2000, 2002, 2003, 2009 Free Software Foundation +// Copyright (C) 1999, 2000, 2002, 2003, 2009, 2010 Free Software Foundation // // 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 @@ -27,7 +27,7 @@ void test08() { bool test __attribute__((unused)) = true; - char* pt = NULL; + char* pt = 0; // 1 std::ostringstream oss; diff --git a/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_character/wchar_t/4.cc b/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_character/wchar_t/4.cc index cdcb3545c43..902539e8c20 100644 --- a/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_character/wchar_t/4.cc +++ b/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_character/wchar_t/4.cc @@ -1,6 +1,6 @@ // 1999-08-16 bkoz -// Copyright (C) 1999, 2000, 2002, 2003, 2009 Free Software Foundation +// Copyright (C) 1999, 2000, 2002, 2003, 2009, 2010 Free Software Foundation // // 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 @@ -35,9 +35,6 @@ test04() std::wostringstream oss_02(str_01, std::ios_base::out); - std::ios_base::iostate statefail; - statefail = std::ios_base::failbit; - // template<_CharT, _Traits> // basic_ostream& operator<<(ostream&, const wchar_t*) for (int i = 0; i < i_max; ++i) diff --git a/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc b/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc index a414076b20a..76490b3c590 100644 --- a/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc +++ b/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc @@ -1,6 +1,6 @@ // 1999-08-16 bkoz -// Copyright (C) 1999, 2000, 2002, 2003, 2009 Free Software Foundation +// Copyright (C) 1999, 2000, 2002, 2003, 2009, 2010 Free Software Foundation // // 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 @@ -27,7 +27,7 @@ void test08() { bool test __attribute__((unused)) = true; - char* pt = NULL; + char* pt = 0; // 2 std::wostringstream woss; @@ -40,7 +40,7 @@ void test08() VERIFY( woss.good() ); // 3 - wchar_t* wt = NULL; + wchar_t* wt = 0; woss.clear(); woss << wt; VERIFY( woss.bad() ); diff --git a/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_other/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_other/char/1.cc index c53c160f736..0c94c68156f 100644 --- a/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_other/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_other/char/1.cc @@ -1,7 +1,8 @@ // 1999-08-16 bkoz // 1999-11-01 bkoz -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2009 Free Software Foundation +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2009, 2010 +// Free Software Foundation // // 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 @@ -46,7 +47,7 @@ test02() // filebuf-> NULL std::ifstream f_in1(name_01); std::ofstream f_out1(name_02); - std::stringbuf* strbuf01 = NULL; + std::stringbuf* strbuf01 = 0; iostate state01 = f_in1.rdstate(); f_in1 >> strbuf01; iostate state02 = f_in1.rdstate(); diff --git a/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_other/char/exceptions_null.cc b/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_other/char/exceptions_null.cc index 3e5dddc16e4..6d28c5f0459 100644 --- a/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_other/char/exceptions_null.cc +++ b/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_other/char/exceptions_null.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2003, 2005, 2009 Free Software Foundation, Inc. +// Copyright (C) 2003, 2005, 2009, 2010 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 @@ -28,7 +28,7 @@ void test1() bool test __attribute__((unused)) = true; ostringstream stream; - stream << static_cast<streambuf*>(NULL); + stream << static_cast<streambuf*>(0); VERIFY( stream.rdstate() & ios_base::badbit ); } @@ -42,7 +42,7 @@ void test3() try { - stream << static_cast<streambuf*>(NULL); + stream << static_cast<streambuf*>(0); VERIFY( false ); } catch (ios_base::failure&) diff --git a/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_other/wchar_t/1.cc b/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_other/wchar_t/1.cc index bde6ba5985c..6e12a65bfbe 100644 --- a/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_other/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_other/wchar_t/1.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2005, 2009 Free Software Foundation +// Copyright (C) 2005, 2009, 2010 Free Software Foundation // // 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 @@ -41,7 +41,7 @@ test02() // filebuf-> NULL std::wifstream f_in1(name_01); std::wofstream f_out1(name_02); - std::wstringbuf* strbuf01 = NULL; + std::wstringbuf* strbuf01 = 0; iostate state01 = f_in1.rdstate(); f_in1 >> strbuf01; iostate state02 = f_in1.rdstate(); diff --git a/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_other/wchar_t/error_code.cc b/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_other/wchar_t/error_code.cc index 5df2990fc5a..16f9108a332 100644 --- a/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_other/wchar_t/error_code.cc +++ b/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_other/wchar_t/error_code.cc @@ -1,7 +1,7 @@ // { dg-options "-std=gnu++0x" } // { dg-require-swprintf "" } -// Copyright (C) 2007, 2008, 2009 Free Software Foundation +// Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation // // 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 @@ -22,7 +22,7 @@ #include <sstream> #include <system_error> #include <algorithm> -#include <wchar.h> +#include <cwchar> #include <testsuite_hooks.h> // Effects: os << ec.category().name() << ':' << ec.value(); diff --git a/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_other/wchar_t/exceptions_null.cc b/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_other/wchar_t/exceptions_null.cc index 7e5cd6ddb65..076aece6475 100644 --- a/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_other/wchar_t/exceptions_null.cc +++ b/libstdc++-v3/testsuite/27_io/basic_ostream/inserters_other/wchar_t/exceptions_null.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2005, 2009 Free Software Foundation, Inc. +// Copyright (C) 2005, 2009, 2010 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 @@ -28,7 +28,7 @@ void test1() bool test __attribute__((unused)) = true; wostringstream stream; - stream << static_cast<wstreambuf*>(NULL); + stream << static_cast<wstreambuf*>(0); VERIFY( stream.rdstate() & ios_base::badbit ); } @@ -42,7 +42,7 @@ void test3() try { - stream << static_cast<wstreambuf*>(NULL); + stream << static_cast<wstreambuf*>(0); VERIFY( false ); } catch (ios_base::failure&) diff --git a/libstdc++-v3/testsuite/27_io/basic_ostream/sentry/pod/1.cc b/libstdc++-v3/testsuite/27_io/basic_ostream/sentry/pod/1.cc index 8a4088c95ba..00becef2587 100644 --- a/libstdc++-v3/testsuite/27_io/basic_ostream/sentry/pod/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_ostream/sentry/pod/1.cc @@ -1,6 +1,7 @@ // 1999-10-14 bkoz -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009 +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, +// 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -40,7 +41,7 @@ void test01() const string_type str01; - stringbuf_type* strbuf01 = NULL; + stringbuf_type* strbuf01 = 0; stringbuf_type strbuf02(str01); ostream_type ostr01(strbuf01); ostream_type ostr02(&strbuf02); diff --git a/libstdc++-v3/testsuite/27_io/basic_ostringstream/pthread3.cc b/libstdc++-v3/testsuite/27_io/basic_ostringstream/pthread3.cc index 81a8c96652d..5b87d84c022 100644 --- a/libstdc++-v3/testsuite/27_io/basic_ostringstream/pthread3.cc +++ b/libstdc++-v3/testsuite/27_io/basic_ostringstream/pthread3.cc @@ -1,7 +1,7 @@ // 2002-01-23 Loren J. Rittle <rittle@labs.mot.com> <ljrittle@acm.org> // Adpated from libstdc++/5347 submitted by markus.breuer@materna.de // -// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009 +// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -48,10 +48,10 @@ main() #endif for (int i = 0; i < max_thread_count; i++) - pthread_create (&tid[i], NULL, thread_main, 0); + pthread_create (&tid[i], 0, thread_main, 0); for (int i = 0; i < max_thread_count; i++) - pthread_join (tid[i], NULL); + pthread_join (tid[i], 0); return 0; } diff --git a/libstdc++-v3/testsuite/27_io/basic_ostringstream/str/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_ostringstream/str/char/1.cc index 08ff1d2b9a1..5fe71886897 100644 --- a/libstdc++-v3/testsuite/27_io/basic_ostringstream/str/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_ostringstream/str/char/1.cc @@ -1,6 +1,6 @@ // 2001-05-23 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 2001, 2002, 2003, 2009, 2010 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 @@ -30,10 +30,6 @@ void test01() const std::string str01 = "123"; std::string str02; - std::ios_base::iostate statefail, stateeof; - statefail = std::ios_base::failbit; - stateeof = std::ios_base::eofbit; - // string str() const str02 = os01.str(); VERIFY( str00 == str02 ); diff --git a/libstdc++-v3/testsuite/27_io/basic_ostringstream/str/wchar_t/1.cc b/libstdc++-v3/testsuite/27_io/basic_ostringstream/str/wchar_t/1.cc index ca8a69a5e3d..b66d8fa2524 100644 --- a/libstdc++-v3/testsuite/27_io/basic_ostringstream/str/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_ostringstream/str/wchar_t/1.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2004, 2009 Free Software Foundation, Inc. +// Copyright (C) 2004, 2009, 2010 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 @@ -28,10 +28,6 @@ void test01() const std::wstring str01 = L"123"; std::wstring str02; - std::ios_base::iostate statefail, stateeof; - statefail = std::ios_base::failbit; - stateeof = std::ios_base::eofbit; - // string str() const str02 = os01.str(); VERIFY( str00 == str02 ); diff --git a/libstdc++-v3/testsuite/27_io/basic_streambuf/overflow/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_streambuf/overflow/char/1.cc index 918726c8778..65aff09ec27 100644 --- a/libstdc++-v3/testsuite/27_io/basic_streambuf/overflow/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_streambuf/overflow/char/1.cc @@ -1,6 +1,7 @@ // 1999-10-11 bkoz -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009 +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, +// 2007, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -40,12 +41,12 @@ public: check_pointers() { bool test __attribute__((unused)) = true; - VERIFY( this->eback() == NULL ); - VERIFY( this->gptr() == NULL ); - VERIFY( this->egptr() == NULL ); - VERIFY( this->pbase() == NULL ); - VERIFY( this->pptr() == NULL ); - VERIFY( this->epptr() == NULL ); + VERIFY( !this->eback() ); + VERIFY( !this->gptr() ); + VERIFY( !this->egptr() ); + VERIFY( !this->pbase() ); + VERIFY( !this->pptr() ); + VERIFY( !this->epptr() ); return test; } diff --git a/libstdc++-v3/testsuite/27_io/basic_streambuf/overflow/wchar_t/1.cc b/libstdc++-v3/testsuite/27_io/basic_streambuf/overflow/wchar_t/1.cc index 384ea29afb0..30b67e4e6d1 100644 --- a/libstdc++-v3/testsuite/27_io/basic_streambuf/overflow/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_streambuf/overflow/wchar_t/1.cc @@ -1,6 +1,6 @@ // 1999-10-11 bkoz -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2009 +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -40,12 +40,12 @@ public: check_pointers() { bool test __attribute__((unused)) = true; - VERIFY( this->eback() == NULL ); - VERIFY( this->gptr() == NULL ); - VERIFY( this->egptr() == NULL ); - VERIFY( this->pbase() == NULL ); - VERIFY( this->pptr() == NULL ); - VERIFY( this->epptr() == NULL ); + VERIFY( !this->eback() ); + VERIFY( !this->gptr() ); + VERIFY( !this->egptr() ); + VERIFY( !this->pbase() ); + VERIFY( !this->pptr() ); + VERIFY( !this->epptr() ); return test; } diff --git a/libstdc++-v3/testsuite/27_io/basic_streambuf/sgetc/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_streambuf/sgetc/char/1.cc index 37d729c92ad..cbf17820f38 100644 --- a/libstdc++-v3/testsuite/27_io/basic_streambuf/sgetc/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_streambuf/sgetc/char/1.cc @@ -1,6 +1,7 @@ // 1999-10-11 bkoz -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009 +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, +// 2007, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -40,12 +41,12 @@ public: check_pointers() { bool test __attribute__((unused)) = true; - VERIFY( this->eback() == NULL ); - VERIFY( this->gptr() == NULL ); - VERIFY( this->egptr() == NULL ); - VERIFY( this->pbase() == NULL ); - VERIFY( this->pptr() == NULL ); - VERIFY( this->epptr() == NULL ); + VERIFY( !this->eback() ); + VERIFY( !this->gptr() ); + VERIFY( !this->egptr() ); + VERIFY( !this->pbase() ); + VERIFY( !this->pptr() ); + VERIFY( !this->epptr() ); return test; } diff --git a/libstdc++-v3/testsuite/27_io/basic_streambuf/sgetc/wchar_t/1.cc b/libstdc++-v3/testsuite/27_io/basic_streambuf/sgetc/wchar_t/1.cc index 16df0994dde..0c5c63f337d 100644 --- a/libstdc++-v3/testsuite/27_io/basic_streambuf/sgetc/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_streambuf/sgetc/wchar_t/1.cc @@ -1,6 +1,6 @@ // 1999-10-11 bkoz -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2009 +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -40,12 +40,12 @@ public: check_pointers() { bool test __attribute__((unused)) = true; - VERIFY( this->eback() == NULL ); - VERIFY( this->gptr() == NULL ); - VERIFY( this->egptr() == NULL ); - VERIFY( this->pbase() == NULL ); - VERIFY( this->pptr() == NULL ); - VERIFY( this->epptr() == NULL ); + VERIFY( !this->eback() ); + VERIFY( !this->gptr() ); + VERIFY( !this->egptr() ); + VERIFY( !this->pbase() ); + VERIFY( !this->pptr() ); + VERIFY( !this->epptr() ); return test; } diff --git a/libstdc++-v3/testsuite/27_io/basic_streambuf/sgetn/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_streambuf/sgetn/char/1.cc index be6145c6e6a..d1530b18f3f 100644 --- a/libstdc++-v3/testsuite/27_io/basic_streambuf/sgetn/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_streambuf/sgetn/char/1.cc @@ -1,6 +1,7 @@ // 1999-10-11 bkoz -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009 +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, +// 2007, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -40,12 +41,12 @@ public: check_pointers() { bool test __attribute__((unused)) = true; - VERIFY( this->eback() == NULL ); - VERIFY( this->gptr() == NULL ); - VERIFY( this->egptr() == NULL ); - VERIFY( this->pbase() == NULL ); - VERIFY( this->pptr() == NULL ); - VERIFY( this->epptr() == NULL ); + VERIFY( !this->eback() ); + VERIFY( !this->gptr() ); + VERIFY( !this->egptr() ); + VERIFY( !this->pbase() ); + VERIFY( !this->pptr() ); + VERIFY( !this->epptr() ); return test; } diff --git a/libstdc++-v3/testsuite/27_io/basic_streambuf/sgetn/wchar_t/1.cc b/libstdc++-v3/testsuite/27_io/basic_streambuf/sgetn/wchar_t/1.cc index 948865c5a64..66b4af5d3e6 100644 --- a/libstdc++-v3/testsuite/27_io/basic_streambuf/sgetn/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_streambuf/sgetn/wchar_t/1.cc @@ -1,6 +1,6 @@ // 1999-10-11 bkoz -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2009 +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -40,12 +40,12 @@ public: check_pointers() { bool test __attribute__((unused)) = true; - VERIFY( this->eback() == NULL ); - VERIFY( this->gptr() == NULL ); - VERIFY( this->egptr() == NULL ); - VERIFY( this->pbase() == NULL ); - VERIFY( this->pptr() == NULL ); - VERIFY( this->epptr() == NULL ); + VERIFY( !this->eback() ); + VERIFY( !this->gptr() ); + VERIFY( !this->egptr() ); + VERIFY( !this->pbase() ); + VERIFY( !this->pptr() ); + VERIFY( !this->epptr() ); return test; } diff --git a/libstdc++-v3/testsuite/27_io/basic_streambuf/sputc/char/1057.cc b/libstdc++-v3/testsuite/27_io/basic_streambuf/sputc/char/1057.cc index 11cda23da15..440d82b5abe 100644 --- a/libstdc++-v3/testsuite/27_io/basic_streambuf/sputc/char/1057.cc +++ b/libstdc++-v3/testsuite/27_io/basic_streambuf/sputc/char/1057.cc @@ -1,6 +1,6 @@ // 1999-10-11 bkoz -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2009 +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -32,7 +32,7 @@ public: nullsetpbuf() { setp(foo, foo + 64); - setp(NULL, NULL); + setp(0, 0); } }; diff --git a/libstdc++-v3/testsuite/27_io/basic_streambuf/sputc/wchar_t/1057.cc b/libstdc++-v3/testsuite/27_io/basic_streambuf/sputc/wchar_t/1057.cc index d04be240824..5e7166fdd3d 100644 --- a/libstdc++-v3/testsuite/27_io/basic_streambuf/sputc/wchar_t/1057.cc +++ b/libstdc++-v3/testsuite/27_io/basic_streambuf/sputc/wchar_t/1057.cc @@ -1,6 +1,6 @@ // 1999-10-11 bkoz -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2009 +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -32,7 +32,7 @@ public: nullsetpbuf() { setp(foo, foo + 64); - setp(NULL, NULL); + setp(0, 0); } }; diff --git a/libstdc++-v3/testsuite/27_io/basic_streambuf/sputn/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_streambuf/sputn/char/1.cc index 0fe945eec61..2874b0eea4e 100644 --- a/libstdc++-v3/testsuite/27_io/basic_streambuf/sputn/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_streambuf/sputn/char/1.cc @@ -1,6 +1,7 @@ // 1999-10-11 bkoz -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009 +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, +// 2007, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -40,12 +41,12 @@ public: check_pointers() { bool test __attribute__((unused)) = true; - VERIFY( this->eback() == NULL ); - VERIFY( this->gptr() == NULL ); - VERIFY( this->egptr() == NULL ); - VERIFY( this->pbase() == NULL ); - VERIFY( this->pptr() == NULL ); - VERIFY( this->epptr() == NULL ); + VERIFY( !this->eback() ); + VERIFY( !this->gptr() ); + VERIFY( !this->egptr() ); + VERIFY( !this->pbase() ); + VERIFY( !this->pptr() ); + VERIFY( !this->epptr() ); return test; } diff --git a/libstdc++-v3/testsuite/27_io/basic_streambuf/sputn/char/1057.cc b/libstdc++-v3/testsuite/27_io/basic_streambuf/sputn/char/1057.cc index 227a1c7a54a..dda78bde457 100644 --- a/libstdc++-v3/testsuite/27_io/basic_streambuf/sputn/char/1057.cc +++ b/libstdc++-v3/testsuite/27_io/basic_streambuf/sputn/char/1057.cc @@ -1,6 +1,6 @@ // 1999-10-11 bkoz -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2009 +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -32,7 +32,7 @@ public: nullsetpbuf() { setp(foo, foo + 64); - setp(NULL, NULL); + setp(0, 0); } }; diff --git a/libstdc++-v3/testsuite/27_io/basic_streambuf/sputn/wchar_t/1.cc b/libstdc++-v3/testsuite/27_io/basic_streambuf/sputn/wchar_t/1.cc index b03ab172927..09b263b6c7b 100644 --- a/libstdc++-v3/testsuite/27_io/basic_streambuf/sputn/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_streambuf/sputn/wchar_t/1.cc @@ -1,6 +1,7 @@ // 1999-10-11 bkoz -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009 +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, +// 2007, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -41,12 +42,12 @@ public: check_pointers() { bool test __attribute__((unused)) = true; - VERIFY( this->eback() == NULL ); - VERIFY( this->gptr() == NULL ); - VERIFY( this->egptr() == NULL ); - VERIFY( this->pbase() == NULL ); - VERIFY( this->pptr() == NULL ); - VERIFY( this->epptr() == NULL ); + VERIFY( !this->eback() ); + VERIFY( !this->gptr() ); + VERIFY( !this->egptr() ); + VERIFY( !this->pbase() ); + VERIFY( !this->pptr() ); + VERIFY( !this->epptr() ); return test; } diff --git a/libstdc++-v3/testsuite/27_io/basic_streambuf/sputn/wchar_t/1057.cc b/libstdc++-v3/testsuite/27_io/basic_streambuf/sputn/wchar_t/1057.cc index b40e24ce8a3..9b148bab93f 100644 --- a/libstdc++-v3/testsuite/27_io/basic_streambuf/sputn/wchar_t/1057.cc +++ b/libstdc++-v3/testsuite/27_io/basic_streambuf/sputn/wchar_t/1057.cc @@ -1,6 +1,6 @@ // 1999-10-11 bkoz -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2009 +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -32,7 +32,7 @@ public: nullsetpbuf() { setp(foo, foo + 64); - setp(NULL, NULL); + setp(0, 0); } }; diff --git a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sbumpc/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sbumpc/char/1.cc index 2763a01c3fc..f60911bdc43 100644 --- a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sbumpc/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sbumpc/char/1.cc @@ -1,7 +1,7 @@ // 981208 bkoz test functionality of basic_stringbuf for char_type == char // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, -// 2006, 2007, 2009 +// 2006, 2007, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -33,14 +33,13 @@ std::stringbuf strb_03(str_03, std::ios_base::out); void test04() { bool test __attribute__((unused)) = true; - std::streamoff strmof_1(-1), strmof_2; typedef std::stringbuf::int_type int_type; typedef std::stringbuf::traits_type traits_type; // GET - strmof_1 = strb_01.in_avail(); - strmof_2 = strb_02.in_avail(); - strmof_1 = strb_03.in_avail(); + strb_01.in_avail(); + strb_02.in_avail(); + strb_03.in_avail(); // int_type sbumpc() // if read_cur not avail, return uflow(), else return *read_cur & increment diff --git a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc index 5b0f9862bfd..3ec279a19ef 100644 --- a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc @@ -1,6 +1,6 @@ // 981208 bkoz test functionality of basic_stringbuf for char_type == wchar_t -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2009 +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -32,14 +32,13 @@ std::wstringbuf strb_03(str_03, std::ios_base::out); void test04() { bool test __attribute__((unused)) = true; - std::streamoff strmof_1(-1), strmof_2; typedef std::wstringbuf::int_type int_type; typedef std::wstringbuf::traits_type traits_type; // GET - strmof_1 = strb_01.in_avail(); - strmof_2 = strb_02.in_avail(); - strmof_1 = strb_03.in_avail(); + strb_01.in_avail(); + strb_02.in_avail(); + strb_03.in_avail(); // int_type sbumpc() // if read_cur not avail, return uflow(), else return *read_cur & increment diff --git a/libstdc++-v3/testsuite/27_io/basic_stringbuf/seekoff/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_stringbuf/seekoff/char/1.cc index ee983c256cc..142cde9c7f2 100644 --- a/libstdc++-v3/testsuite/27_io/basic_stringbuf/seekoff/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_stringbuf/seekoff/char/1.cc @@ -1,6 +1,6 @@ // 981208 bkoz test functionality of basic_stringbuf for char_type == char -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2009 +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -36,7 +36,7 @@ void test04() typedef std::stringbuf::off_type off_type; int_type c1 = strb_01.sbumpc(); - int_type c2, c3; + int_type c2; // BUFFER MANAGEMENT & POSITIONING @@ -84,7 +84,7 @@ void test04() c1 = strb_01.sgetc(); c2 = strb_01.sungetc(); strmsz_2 = strb_01.in_avail(); // 1 - c3 = strb_01.sgetc(); + strb_01.sgetc(); VERIFY( c1 != c2 ); VERIFY( strmsz_2 != strmsz_1 ); VERIFY( strmsz_2 == 1 ); diff --git a/libstdc++-v3/testsuite/27_io/basic_stringbuf/seekoff/wchar_t/1.cc b/libstdc++-v3/testsuite/27_io/basic_stringbuf/seekoff/wchar_t/1.cc index 288e76cae8a..1b0ee5fe58f 100644 --- a/libstdc++-v3/testsuite/27_io/basic_stringbuf/seekoff/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_stringbuf/seekoff/wchar_t/1.cc @@ -1,6 +1,6 @@ // 981208 bkoz test functionality of basic_stringbuf for char_type == wchar_t -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2009 +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -36,7 +36,7 @@ void test04() typedef std::wstringbuf::off_type off_type; int_type c1 = strb_01.sbumpc(); - int_type c2, c3; + int_type c2; // BUFFER MANAGEMENT & POSITIONING @@ -84,7 +84,7 @@ void test04() c1 = strb_01.sgetc(); c2 = strb_01.sungetc(); strmsz_2 = strb_01.in_avail(); // 1 - c3 = strb_01.sgetc(); + strb_01.sgetc(); VERIFY( c1 != c2 ); VERIFY( strmsz_2 != strmsz_1 ); VERIFY( strmsz_2 == 1 ); diff --git a/libstdc++-v3/testsuite/27_io/basic_stringbuf/seekpos/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_stringbuf/seekpos/char/1.cc index 4cdca1afc6e..53f98bf98c3 100644 --- a/libstdc++-v3/testsuite/27_io/basic_stringbuf/seekpos/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_stringbuf/seekpos/char/1.cc @@ -1,6 +1,6 @@ // 981208 bkoz test functionality of basic_stringbuf for char_type == char -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2009 +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -34,7 +34,6 @@ void test04() typedef std::stringbuf::off_type off_type; int_type c1 = strb_01.sbumpc(); - int_type c2; int_type c3 = strb_01.sbumpc(); pos_type pt_1(off_type(-1)); @@ -58,7 +57,7 @@ void test04() off_1 = off_type(pt_1); c1 = strb_01.snextc(); //current in pointer +1 VERIFY( c1 == 'o' ); - c2 = strb_01.sputc('x'); //test current out pointer + strb_01.sputc('x'); //test current out pointer str_tmp = std::string("myxonos. . . or what?"); VERIFY( strb_01.str() == str_tmp ); strb_01.pubsync(); //resets pointers @@ -67,7 +66,7 @@ void test04() VERIFY( off_1 == off_2 ); c3 = strb_01.snextc(); //current in pointer +1 VERIFY( c1 == c3 ); - c2 = strb_01.sputc('x'); //test current out pointer + strb_01.sputc('x'); //test current out pointer str_tmp = std::string("myxonos. . . or what?"); VERIFY( strb_01.str() == str_tmp ); } diff --git a/libstdc++-v3/testsuite/27_io/basic_stringbuf/seekpos/wchar_t/1.cc b/libstdc++-v3/testsuite/27_io/basic_stringbuf/seekpos/wchar_t/1.cc index 47414b9d0fd..bc01ea64064 100644 --- a/libstdc++-v3/testsuite/27_io/basic_stringbuf/seekpos/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_stringbuf/seekpos/wchar_t/1.cc @@ -1,6 +1,6 @@ // 981208 bkoz test functionality of basic_stringbuf for char_type == wchar_t -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2009 +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -34,7 +34,6 @@ void test04() typedef std::wstringbuf::off_type off_type; int_type c1 = strb_01.sbumpc(); - int_type c2; int_type c3 = strb_01.sbumpc(); pos_type pt_1(off_type(-1)); @@ -58,7 +57,7 @@ void test04() off_1 = off_type(pt_1); c1 = strb_01.snextc(); //current in pointer +1 VERIFY( c1 == L'o' ); - c2 = strb_01.sputc(L'x'); //test current out pointer + strb_01.sputc(L'x'); //test current out pointer str_tmp = std::wstring(L"myxonos. . . or what?"); VERIFY( strb_01.str() == str_tmp ); strb_01.pubsync(); //resets pointers @@ -67,7 +66,7 @@ void test04() VERIFY( off_1 == off_2 ); c3 = strb_01.snextc(); //current in pointer +1 VERIFY( c1 == c3 ); - c2 = strb_01.sputc(L'x'); //test current out pointer + strb_01.sputc(L'x'); //test current out pointer str_tmp = std::wstring(L"myxonos. . . or what?"); VERIFY( strb_01.str() == str_tmp ); } diff --git a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sgetc/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sgetc/char/1.cc index e686ba24960..f26ec85c565 100644 --- a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sgetc/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sgetc/char/1.cc @@ -1,6 +1,6 @@ // 981208 bkoz test functionality of basic_stringbuf for char_type == char -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2009 +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -32,14 +32,13 @@ std::stringbuf strb_03(str_03, std::ios_base::out); void test04() { bool test __attribute__((unused)) = true; - std::streamoff strmof_1(-1), strmof_2; typedef std::stringbuf::int_type int_type; typedef std::stringbuf::traits_type traits_type; // GET - strmof_1 = strb_01.in_avail(); - strmof_2 = strb_02.in_avail(); - strmof_1 = strb_03.in_avail(); + strb_01.in_avail(); + strb_02.in_avail(); + strb_03.in_avail(); int_type c3 = strb_01.sbumpc(); int_type c4 = strb_02.sbumpc(); diff --git a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sgetc/wchar_t/1.cc b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sgetc/wchar_t/1.cc index 181dba9fe56..98ca73d75fa 100644 --- a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sgetc/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sgetc/wchar_t/1.cc @@ -1,6 +1,6 @@ // 981208 bkoz test functionality of basic_stringbuf for char_type == wchar_t -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2009 +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -32,14 +32,13 @@ std::wstringbuf strb_03(str_03, std::ios_base::out); void test04() { bool test __attribute__((unused)) = true; - std::streamoff strmof_1(-1), strmof_2; typedef std::wstringbuf::int_type int_type; typedef std::wstringbuf::traits_type traits_type; // GET - strmof_1 = strb_01.in_avail(); - strmof_2 = strb_02.in_avail(); - strmof_1 = strb_03.in_avail(); + strb_01.in_avail(); + strb_02.in_avail(); + strb_03.in_avail(); int_type c3 = strb_01.sbumpc(); int_type c4 = strb_02.sbumpc(); diff --git a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sgetn/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sgetn/char/1.cc index 4348f74692f..2f077a508a9 100644 --- a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sgetn/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sgetn/char/1.cc @@ -1,7 +1,7 @@ // 981208 bkoz test functionality of basic_stringbuf for char_type == char // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 -// 2006, 2007, 2009 +// 2006, 2007, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -34,20 +34,19 @@ void test04() { bool test __attribute__((unused)) = true; std::streamsize strmsz_1, strmsz_2; - std::streamoff strmof_1(-1), strmof_2; typedef std::stringbuf::int_type int_type; typedef std::stringbuf::traits_type traits_type; // GET - strmof_1 = strb_01.in_avail(); - strmof_2 = strb_02.in_avail(); - strmof_1 = strb_03.in_avail(); + strb_01.in_avail(); + strb_02.in_avail(); + strb_03.in_avail(); int_type c1 = strb_01.sbumpc(); int_type c2 = strb_02.sbumpc(); strb_01.sbumpc(); int_type c4 = strb_02.sbumpc(); - int_type c5 = strb_03.sbumpc(); + strb_03.sbumpc(); // int_type sgetc() // if read_cur not avail, return uflow(), else return *read_cur @@ -55,13 +54,13 @@ void test04() int_type c7 = strb_02.sgetc(); strb_01.sgetc(); strb_02.sgetc(); - c5 = strb_03.sgetc(); + strb_03.sgetc(); // int_type snextc() // calls sbumpc and if sbumpc != eof, return sgetc c6 = strb_01.snextc(); c7 = strb_02.snextc(); - c5 = strb_03.snextc(); + strb_03.snextc(); // streamsize sgetn(char_type *s, streamsize n) // streamsize xsgetn(char_type *s, streamsize n) diff --git a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sgetn/wchar_t/1.cc b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sgetn/wchar_t/1.cc index 01a149eda45..5c917e10950 100644 --- a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sgetn/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sgetn/wchar_t/1.cc @@ -1,7 +1,7 @@ // 981208 bkoz test functionality of basic_stringbuf for char_type == wchar_t // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, -// 2006, 2007, 2009 +// 2006, 2007, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -34,20 +34,19 @@ void test04() { bool test __attribute__((unused)) = true; std::streamsize strmsz_1, strmsz_2; - std::streamoff strmof_1(-1), strmof_2; typedef std::wstringbuf::int_type int_type; typedef std::wstringbuf::traits_type traits_type; // GET - strmof_1 = strb_01.in_avail(); - strmof_2 = strb_02.in_avail(); - strmof_1 = strb_03.in_avail(); + strb_01.in_avail(); + strb_02.in_avail(); + strb_03.in_avail(); int_type c1 = strb_01.sbumpc(); int_type c2 = strb_02.sbumpc(); strb_01.sbumpc(); int_type c4 = strb_02.sbumpc(); - int_type c5 = strb_03.sbumpc(); + strb_03.sbumpc(); // int_type sgetc() // if read_cur not avail, return uflow(), else return *read_cur @@ -55,13 +54,13 @@ void test04() int_type c7 = strb_02.sgetc(); strb_01.sgetc(); strb_02.sgetc(); - c5 = strb_03.sgetc(); + strb_03.sgetc(); // int_type snextc() // calls sbumpc and if sbumpc != eof, return sgetc c6 = strb_01.snextc(); c7 = strb_02.snextc(); - c5 = strb_03.snextc(); + strb_03.snextc(); // streamsize sgetn(char_type *s, streamsize n) // streamsize xsgetn(char_type *s, streamsize n) diff --git a/libstdc++-v3/testsuite/27_io/basic_stringbuf/snextc/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_stringbuf/snextc/char/1.cc index 960e6e9b17f..afe1dfa5750 100644 --- a/libstdc++-v3/testsuite/27_io/basic_stringbuf/snextc/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_stringbuf/snextc/char/1.cc @@ -1,7 +1,7 @@ // 981208 bkoz test functionality of basic_stringbuf for char_type == char // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, -// 2006, 2007, 2009 +// 2006, 2007, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -33,14 +33,13 @@ std::stringbuf strb_03(str_03, std::ios_base::out); void test04() { bool test __attribute__((unused)) = true; - std::streamoff strmof_1(-1), strmof_2; typedef std::stringbuf::int_type int_type; typedef std::stringbuf::traits_type traits_type; // GET - strmof_1 = strb_01.in_avail(); - strmof_2 = strb_02.in_avail(); - strmof_1 = strb_03.in_avail(); + strb_01.in_avail(); + strb_02.in_avail(); + strb_03.in_avail(); strb_01.sbumpc(); strb_02.sbumpc(); diff --git a/libstdc++-v3/testsuite/27_io/basic_stringbuf/snextc/wchar_t/1.cc b/libstdc++-v3/testsuite/27_io/basic_stringbuf/snextc/wchar_t/1.cc index 62d21a7dc81..0154594b689 100644 --- a/libstdc++-v3/testsuite/27_io/basic_stringbuf/snextc/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_stringbuf/snextc/wchar_t/1.cc @@ -1,7 +1,7 @@ // 981208 bkoz test functionality of basic_stringbuf for char_type == wchar_t // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 -// 2006, 2007, 2009 +// 2006, 2007, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -33,14 +33,13 @@ std::wstringbuf strb_03(str_03, std::ios_base::out); void test04() { bool test __attribute__((unused)) = true; - std::streamoff strmof_1(-1), strmof_2; typedef std::wstringbuf::int_type int_type; typedef std::wstringbuf::traits_type traits_type; // GET - strmof_1 = strb_01.in_avail(); - strmof_2 = strb_02.in_avail(); - strmof_1 = strb_03.in_avail(); + strb_01.in_avail(); + strb_02.in_avail(); + strb_03.in_avail(); strb_01.sbumpc(); strb_02.sbumpc(); diff --git a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputbackc/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputbackc/char/1.cc index c99c2aa1283..67358a3b911 100644 --- a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputbackc/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputbackc/char/1.cc @@ -1,6 +1,6 @@ // 981208 bkoz test functionality of basic_stringbuf for char_type == char -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2009 +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -33,7 +33,6 @@ void test04() { bool test __attribute__((unused)) = true; std::string str_tmp, str_tmp2; - std::streamsize strmsz_1, strmsz_2; typedef std::stringbuf::int_type int_type; typedef std::stringbuf::traits_type traits_type; @@ -44,27 +43,27 @@ void test04() // PUT strb_03.str(str_01); //reset - std::string::size_type sz1 = strb_03.str().length(); - std::string::size_type sz2 = strb_03.str().length(); + strb_03.str().length(); + strb_03.str().length(); // streamsize sputn(const char_typs* s, streamsize n) // write up to n chars to out_cur from s, returning number assigned // NB *sputn will happily put '\0' into your stream if you give it a chance* str_tmp = strb_03.str(); - sz1 = str_tmp.length(); - strmsz_1 = strb_03.sputn("racadabras", 10);//"abracadabras or what?" - sz2 = strb_03.str().length(); - strmsz_2 = strb_03.sputn(", i wanna reach out and", 10); - sz2 = strb_03.str().length(); + str_tmp.length(); + strb_03.sputn("racadabras", 10);//"abracadabras or what?" + strb_03.str().length(); + strb_03.sputn(", i wanna reach out and", 10); + strb_03.str().length(); str_tmp = strb_02.str(); - strmsz_1 = strb_02.sputn("racadabra", 10); + strb_02.sputn("racadabra", 10); // PUTBACK // int_type sputbackc(char_type c) // if in_cur not avail || ! traits::eq(c, gptr() [-1]), return pbfail // otherwise decrements in_cur and returns *gptr() - strmsz_1 = strb_01.in_avail(); + strb_01.in_avail(); str_tmp = strb_01.str(); c1 = strb_01.sgetc(); //"mykonos. . . 'o'r what?" c2 = strb_01.sputbackc('z');//"mykonos. . .zor what?" @@ -76,7 +75,7 @@ void test04() VERIFY( str_tmp.size() == str_tmp2.size() ); //test for _in_cur == _in_beg strb_01.str(str_tmp); - strmsz_1 = strb_01.in_avail(); + strb_01.in_avail(); c1 = strb_01.sgetc(); //"'m'ykonos. . . or what?" c2 = strb_01.sputbackc('z');//"mykonos. . . or what?" c3 = strb_01.sgetc(); @@ -88,7 +87,7 @@ void test04() VERIFY( str_tmp.size() == strb_01.str().size() ); // test for replacing char with identical one strb_01.str(str_01); //reset - strmsz_1 = strb_01.in_avail(); + strb_01.in_avail(); strb_01.sbumpc(); strb_01.sbumpc(); c1 = strb_01.sgetc(); //"my'k'onos. . . or what?" @@ -100,7 +99,7 @@ void test04() VERIFY( strb_01.str() == str_01 ); VERIFY( str_01.size() == strb_01.str().size() ); //test for ios_base::out - strmsz_2 = strb_03.in_avail(); + strb_03.in_avail(); c4 = strb_03.sputbackc('x'); VERIFY( c4 == traits_type::eof() ); } diff --git a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc index f95a695dd00..e0c91a3b2c0 100644 --- a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc @@ -1,6 +1,6 @@ // 981208 bkoz test functionality of basic_stringbuf for char_type == wchar_t -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2009 +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -33,7 +33,6 @@ void test04() { bool test __attribute__((unused)) = true; std::wstring str_tmp, str_tmp2; - std::streamsize strmsz_1, strmsz_2; typedef std::wstringbuf::int_type int_type; typedef std::wstringbuf::traits_type traits_type; @@ -44,27 +43,27 @@ void test04() // PUT strb_03.str(str_01); //reset - std::wstring::size_type sz1 = strb_03.str().length(); - std::wstring::size_type sz2 = strb_03.str().length(); + strb_03.str().length(); + strb_03.str().length(); // streamsize sputn(const char_typs* s, streamsize n) // write up to n chars to out_cur from s, returning number assigned // NB *sputn will happily put '\0' into your stream if you give it a chance* str_tmp = strb_03.str(); - sz1 = str_tmp.length(); - strmsz_1 = strb_03.sputn(L"racadabras", 10);//"abracadabras or what?" - sz2 = strb_03.str().length(); - strmsz_2 = strb_03.sputn(L", i wanna reach out and", 10); - sz2 = strb_03.str().length(); + str_tmp.length(); + strb_03.sputn(L"racadabras", 10);//"abracadabras or what?" + strb_03.str().length(); + strb_03.sputn(L", i wanna reach out and", 10); + strb_03.str().length(); str_tmp = strb_02.str(); - strmsz_1 = strb_02.sputn(L"racadabra", 10); + strb_02.sputn(L"racadabra", 10); // PUTBACK // int_type sputbackc(char_type c) // if in_cur not avail || ! traits::eq(c, gptr() [-1]), return pbfail // otherwise decrements in_cur and returns *gptr() - strmsz_1 = strb_01.in_avail(); + strb_01.in_avail(); str_tmp = strb_01.str(); c1 = strb_01.sgetc(); //"mykonos. . . 'o'r what?" c2 = strb_01.sputbackc(L'z');//"mykonos. . .zor what?" @@ -76,7 +75,7 @@ void test04() VERIFY( str_tmp.size() == str_tmp2.size() ); //test for _in_cur == _in_beg strb_01.str(str_tmp); - strmsz_1 = strb_01.in_avail(); + strb_01.in_avail(); c1 = strb_01.sgetc(); //"'m'ykonos. . . or what?" c2 = strb_01.sputbackc(L'z');//"mykonos. . . or what?" c3 = strb_01.sgetc(); @@ -88,7 +87,7 @@ void test04() VERIFY( str_tmp.size() == strb_01.str().size() ); // test for replacing char with identical one strb_01.str(str_01); //reset - strmsz_1 = strb_01.in_avail(); + strb_01.in_avail(); strb_01.sbumpc(); strb_01.sbumpc(); c1 = strb_01.sgetc(); //"my'k'onos. . . or what?" @@ -100,7 +99,7 @@ void test04() VERIFY( strb_01.str() == str_01 ); VERIFY( str_01.size() == strb_01.str().size() ); //test for ios_base::out - strmsz_2 = strb_03.in_avail(); + strb_03.in_avail(); c4 = strb_03.sputbackc(L'x'); VERIFY( c4 == traits_type::eof() ); } diff --git a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputc/char/1057.cc b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputc/char/1057.cc index 06957dd1926..f88f28e39a1 100644 --- a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputc/char/1057.cc +++ b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputc/char/1057.cc @@ -1,6 +1,6 @@ // 1999-10-11 bkoz -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2009 +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -32,7 +32,7 @@ public: nullsetpbuf() { setp(foo, foo + 64); - setp(NULL, NULL); + setp(0, 0); } }; diff --git a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputc/wchar_t/1057.cc b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputc/wchar_t/1057.cc index 4b4216b883d..ae07ebf30ed 100644 --- a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputc/wchar_t/1057.cc +++ b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputc/wchar_t/1057.cc @@ -1,6 +1,6 @@ // 1999-10-11 bkoz -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2009 +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -32,7 +32,7 @@ public: nullsetpbuf() { setp(foo, foo + 64); - setp(NULL, NULL); + setp(0, 0); } }; diff --git a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputn/char/1057.cc b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputn/char/1057.cc index c05d289846d..c51f47a8d34 100644 --- a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputn/char/1057.cc +++ b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputn/char/1057.cc @@ -1,6 +1,6 @@ // 1999-10-11 bkoz -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2009 +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -32,7 +32,7 @@ public: nullsetpbuf() { setp(foo, foo + 64); - setp(NULL, NULL); + setp(0, 0); } }; diff --git a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputn/wchar_t/1057.cc b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputn/wchar_t/1057.cc index 33d1ad79afe..99f7a550993 100644 --- a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputn/wchar_t/1057.cc +++ b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputn/wchar_t/1057.cc @@ -1,6 +1,6 @@ // 1999-10-11 bkoz -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2009 +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -32,7 +32,7 @@ public: nullsetpbuf() { setp(foo, foo + 64); - setp(NULL, NULL); + setp(0, 0); } }; diff --git a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sungetc/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sungetc/char/1.cc index 5b1fcfca1d1..ae038e518c3 100644 --- a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sungetc/char/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sungetc/char/1.cc @@ -1,6 +1,6 @@ // 981208 bkoz test functionality of basic_stringbuf for char_type == char -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2009 +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -33,7 +33,6 @@ void test04() { bool test __attribute__((unused)) = true; std::string str_tmp; - std::streamsize strmsz_1, strmsz_2; typedef std::stringbuf::int_type int_type; typedef std::stringbuf::traits_type traits_type; @@ -44,47 +43,47 @@ void test04() // PUT strb_03.str(str_01); //reset - std::string::size_type sz1 = strb_03.str().length(); - std::string::size_type sz2 = strb_03.str().length(); + strb_03.str().length(); + strb_03.str().length(); // streamsize sputn(const char_typs* s, streamsize n) // write up to n chars to out_cur from s, returning number assigned // NB *sputn will happily put '\0' into your stream if you give it a chance* str_tmp = strb_03.str(); - sz1 = str_tmp.length(); - strmsz_1 = strb_03.sputn("racadabras", 10);//"abracadabras or what?" - sz2 = strb_03.str().length(); - strmsz_2 = strb_03.sputn(", i wanna reach out and", 10); - sz2 = strb_03.str().length(); + str_tmp.length(); + strb_03.sputn("racadabras", 10);//"abracadabras or what?" + strb_03.str().length(); + strb_03.sputn(", i wanna reach out and", 10); + strb_03.str().length(); str_tmp = strb_02.str(); - strmsz_1 = strb_02.sputn("racadabra", 10); + strb_02.sputn("racadabra", 10); // PUTBACK // int_type sputbackc(char_type c) // if in_cur not avail || ! traits::eq(c, gptr() [-1]), return pbfail // otherwise decrements in_cur and returns *gptr() - strmsz_1 = strb_01.in_avail(); + strb_01.in_avail(); str_tmp = strb_01.str(); c1 = strb_01.sgetc(); //"mykonos. . . 'o'r what?" c2 = strb_01.sputbackc('z');//"mykonos. . .zor what?" c3 = strb_01.sgetc(); //test for _in_cur == _in_beg strb_01.str(str_tmp); - strmsz_1 = strb_01.in_avail(); + strb_01.in_avail(); c1 = strb_01.sgetc(); //"'m'ykonos. . . or what?" c2 = strb_01.sputbackc('z');//"mykonos. . . or what?" c3 = strb_01.sgetc(); // test for replacing char with identical one strb_01.str(str_01); //reset - strmsz_1 = strb_01.in_avail(); + strb_01.in_avail(); strb_01.sbumpc(); strb_01.sbumpc(); c1 = strb_01.sgetc(); //"my'k'onos. . . or what?" c2 = strb_01.sputbackc('y');//"mykonos. . . or what?" c3 = strb_01.sgetc(); //test for ios_base::out - strmsz_2 = strb_03.in_avail(); + strb_03.in_avail(); c4 = strb_03.sputbackc('x'); // int_type sungetc() @@ -92,7 +91,7 @@ void test04() // return to_int_type(*gptr()) for (int i = 0; i<12; ++i) strb_01.sbumpc(); - strmsz_1 = strb_01.in_avail(); + strb_01.in_avail(); str_tmp = strb_01.str(); c1 = strb_01.sgetc(); //"mykonos. . . 'o'r what?" c2 = strb_01.sungetc();//"mykonos. . . or what?" @@ -105,7 +104,7 @@ void test04() VERIFY( str_01.size() == strb_01.str().size() ); //test for _in_cur == _in_beg strb_01.str(str_tmp); - strmsz_1 = strb_01.in_avail(); + strb_01.in_avail(); c1 = strb_01.sgetc(); //"'m'ykonos. . . or what?" c2 = strb_01.sungetc();//"mykonos. . . or what?" c3 = strb_01.sgetc(); @@ -117,7 +116,7 @@ void test04() VERIFY( str_01.size() == strb_01.str().size() ); // test for replacing char with identical one strb_01.str(str_01); //reset - strmsz_1 = strb_01.in_avail(); + strb_01.in_avail(); strb_01.sbumpc(); strb_01.sbumpc(); c1 = strb_01.sgetc(); //"my'k'onos. . . or what?" @@ -129,7 +128,7 @@ void test04() VERIFY( strb_01.str() == str_01 ); VERIFY( str_01.size() == strb_01.str().size() ); //test for ios_base::out - strmsz_2 = strb_03.in_avail(); + strb_03.in_avail(); c4 = strb_03.sungetc(); VERIFY( c4 == traits_type::eof() ); } diff --git a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc index 360a1abb2d0..767b7eac50d 100644 --- a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc @@ -1,6 +1,6 @@ // 981208 bkoz test functionality of basic_stringbuf for char_type == wchar_t -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2009 +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -33,7 +33,6 @@ void test04() { bool test __attribute__((unused)) = true; std::wstring str_tmp; - std::streamsize strmsz_1, strmsz_2; typedef std::wstringbuf::int_type int_type; typedef std::wstringbuf::traits_type traits_type; @@ -44,47 +43,47 @@ void test04() // PUT strb_03.str(str_01); //reset - std::wstring::size_type sz1 = strb_03.str().length(); - std::wstring::size_type sz2 = strb_03.str().length(); + strb_03.str().length(); + strb_03.str().length(); // streamsize sputn(const char_typs* s, streamsize n) // write up to n chars to out_cur from s, returning number assigned // NB *sputn will happily put '\0' into your stream if you give it a chance* str_tmp = strb_03.str(); - sz1 = str_tmp.length(); - strmsz_1 = strb_03.sputn(L"racadabras", 10);//"abracadabras or what?" - sz2 = strb_03.str().length(); - strmsz_2 = strb_03.sputn(L", i wanna reach out and", 10); - sz2 = strb_03.str().length(); + str_tmp.length(); + strb_03.sputn(L"racadabras", 10);//"abracadabras or what?" + strb_03.str().length(); + strb_03.sputn(L", i wanna reach out and", 10); + strb_03.str().length(); str_tmp = strb_02.str(); - strmsz_1 = strb_02.sputn(L"racadabra", 10); + strb_02.sputn(L"racadabra", 10); // PUTBACK // int_type sputbackc(char_type c) // if in_cur not avail || ! traits::eq(c, gptr() [-1]), return pbfail // otherwise decrements in_cur and returns *gptr() - strmsz_1 = strb_01.in_avail(); + strb_01.in_avail(); str_tmp = strb_01.str(); c1 = strb_01.sgetc(); //"mykonos. . . 'o'r what?" c2 = strb_01.sputbackc('z');//"mykonos. . .zor what?" c3 = strb_01.sgetc(); //test for _in_cur == _in_beg strb_01.str(str_tmp); - strmsz_1 = strb_01.in_avail(); + strb_01.in_avail(); c1 = strb_01.sgetc(); //"'m'ykonos. . . or what?" c2 = strb_01.sputbackc(L'z');//"mykonos. . . or what?" c3 = strb_01.sgetc(); // test for replacing char with identical one strb_01.str(str_01); //reset - strmsz_1 = strb_01.in_avail(); + strb_01.in_avail(); strb_01.sbumpc(); strb_01.sbumpc(); c1 = strb_01.sgetc(); //"my'k'onos. . . or what?" c2 = strb_01.sputbackc(L'y');//"mykonos. . . or what?" c3 = strb_01.sgetc(); //test for ios_base::out - strmsz_2 = strb_03.in_avail(); + strb_03.in_avail(); c4 = strb_03.sputbackc(L'x'); // int_type sungetc() @@ -92,7 +91,7 @@ void test04() // return to_int_type(*gptr()) for (int i = 0; i<12; ++i) strb_01.sbumpc(); - strmsz_1 = strb_01.in_avail(); + strb_01.in_avail(); str_tmp = strb_01.str(); c1 = strb_01.sgetc(); //"mykonos. . . 'o'r what?" c2 = strb_01.sungetc();//"mykonos. . . or what?" @@ -105,7 +104,7 @@ void test04() VERIFY( str_01.size() == strb_01.str().size() ); //test for _in_cur == _in_beg strb_01.str(str_tmp); - strmsz_1 = strb_01.in_avail(); + strb_01.in_avail(); c1 = strb_01.sgetc(); //"'m'ykonos. . . or what?" c2 = strb_01.sungetc();//"mykonos. . . or what?" c3 = strb_01.sgetc(); @@ -117,7 +116,7 @@ void test04() VERIFY( str_01.size() == strb_01.str().size() ); // test for replacing char with identical one strb_01.str(str_01); //reset - strmsz_1 = strb_01.in_avail(); + strb_01.in_avail(); strb_01.sbumpc(); strb_01.sbumpc(); c1 = strb_01.sgetc(); //"my'k'onos. . . or what?" @@ -129,7 +128,7 @@ void test04() VERIFY( strb_01.str() == str_01 ); VERIFY( str_01.size() == strb_01.str().size() ); //test for ios_base::out - strmsz_2 = strb_03.in_avail(); + strb_03.in_avail(); c4 = strb_03.sungetc(); VERIFY( c4 == traits_type::eof() ); } diff --git a/libstdc++-v3/testsuite/27_io/fpos/mbstate_t/2.cc b/libstdc++-v3/testsuite/27_io/fpos/mbstate_t/2.cc index 46f0d1276fe..accb5653503 100644 --- a/libstdc++-v3/testsuite/27_io/fpos/mbstate_t/2.cc +++ b/libstdc++-v3/testsuite/27_io/fpos/mbstate_t/2.cc @@ -1,6 +1,6 @@ // 1999-09-20 bkoz -// Copyright (C) 1999, 2001, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 1999, 2001, 2003, 2009, 2010 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 @@ -60,7 +60,6 @@ void test02() pos04 += off02; VERIFY( pos03 == pos04 ); std::streampos pos05 = pos03; - std::streampos pos06 = pos03 + off02; VERIFY ( pos05 == pos03 ); // q = p - o @@ -69,7 +68,6 @@ void test02() pos04 -= off02; VERIFY( pos03 == pos04 ); std::streampos pos07 = pos03; - std::streampos pos08 = pos03 - off02; VERIFY ( pos07 == pos03 ); // o = p - q diff --git a/libstdc++-v3/testsuite/27_io/fpos/mbstate_t/3.cc b/libstdc++-v3/testsuite/27_io/fpos/mbstate_t/3.cc index abef0074ac6..34c557bfb16 100644 --- a/libstdc++-v3/testsuite/27_io/fpos/mbstate_t/3.cc +++ b/libstdc++-v3/testsuite/27_io/fpos/mbstate_t/3.cc @@ -1,6 +1,6 @@ // 1999-09-20 bkoz -// Copyright (C) 1999, 2001, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 1999, 2001, 2003, 2009, 2010 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 @@ -34,6 +34,7 @@ void test03() // casts to const streamoff const std::streampos pos01 = 0; off01 = std::streamoff(pos01); + off01 = off01; // Suppress unused warning. // equality/inequality with const args const std::streampos pos02(54); diff --git a/libstdc++-v3/testsuite/27_io/fpos/mbstate_t/4_neg.cc b/libstdc++-v3/testsuite/27_io/fpos/mbstate_t/4_neg.cc index 5c89aa5a361..9e3cad5d59e 100644 --- a/libstdc++-v3/testsuite/27_io/fpos/mbstate_t/4_neg.cc +++ b/libstdc++-v3/testsuite/27_io/fpos/mbstate_t/4_neg.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2003, 2009 +// Copyright (C) 2003, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -32,6 +32,8 @@ void test04() // Explicit conversion n = static_cast<long>(pos); // { dg-error "invalid static_cast" "" { xfail *-*-* } } + + n = n; // Suppress unused warning. } int main() diff --git a/libstdc++-v3/testsuite/27_io/fpos/mbstate_t/5.cc b/libstdc++-v3/testsuite/27_io/fpos/mbstate_t/5.cc index 831bfd453fc..a32e34adfac 100644 --- a/libstdc++-v3/testsuite/27_io/fpos/mbstate_t/5.cc +++ b/libstdc++-v3/testsuite/27_io/fpos/mbstate_t/5.cc @@ -2,7 +2,7 @@ // 2006-03-13 Paolo Carlini <pcarlini@suse.de> -// Copyright (C) 2006, 2009 Free Software Foundation, Inc. +// Copyright (C) 2006, 2009, 2010 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 @@ -32,7 +32,9 @@ void test01() test01 = pos01 == -1; test01 = -1 == pos01; + test01 = test01; // Suppress unused warning. test02 = pos02 != -1; test02 = -1 != pos02; + test02 = test02; // Suppress unused warning. } diff --git a/libstdc++-v3/testsuite/27_io/headers/cinttypes/std_c++0x_neg.cc b/libstdc++-v3/testsuite/27_io/headers/cinttypes/std_c++0x_neg.cc index 8ba12fb7ea6..b59638fc341 100644 --- a/libstdc++-v3/testsuite/27_io/headers/cinttypes/std_c++0x_neg.cc +++ b/libstdc++-v3/testsuite/27_io/headers/cinttypes/std_c++0x_neg.cc @@ -18,7 +18,7 @@ // with this library; see the file COPYING3. If not see // <http://www.gnu.org/licenses/>. -#include <cinttypes> // { dg-excess-errors "In file included from" } +#include <cinttypes> // { dg-error "upcoming ISO" "" { target *-*-* } 31 } diff --git a/libstdc++-v3/testsuite/27_io/ios_base/failure/what-3.cc b/libstdc++-v3/testsuite/27_io/ios_base/failure/what-3.cc index 7b3ee83df91..ddb29c5efc7 100644 --- a/libstdc++-v3/testsuite/27_io/ios_base/failure/what-3.cc +++ b/libstdc++-v3/testsuite/27_io/ios_base/failure/what-3.cc @@ -1,6 +1,6 @@ // 2001-02-26 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009 +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -34,6 +34,8 @@ void allocate_on_stack(void) __extension__ char array[num]; for (size_t i = 0; i < num; i++) array[i]=0; + for (size_t i = 0; i < num; i++) + array[i]=array[i]; // Suppress unused warning. } void test04() diff --git a/libstdc++-v3/testsuite/27_io/ios_base/sync_with_stdio/1.cc b/libstdc++-v3/testsuite/27_io/ios_base/sync_with_stdio/1.cc index 7ed97c2b81b..29ec9754870 100644 --- a/libstdc++-v3/testsuite/27_io/ios_base/sync_with_stdio/1.cc +++ b/libstdc++-v3/testsuite/27_io/ios_base/sync_with_stdio/1.cc @@ -41,7 +41,7 @@ void test01() { std::ios_base::sync_with_stdio(); - std::freopen("ios_base_members_static-1.txt", "w", stderr); + VERIFY( std::freopen("ios_base_members_static-1.txt", "w", stderr) ); for (int i = 0; i < 2; i++) { diff --git a/libstdc++-v3/testsuite/27_io/objects/char/10.cc b/libstdc++-v3/testsuite/27_io/objects/char/10.cc index a744e787ac6..eebebc20e30 100644 --- a/libstdc++-v3/testsuite/27_io/objects/char/10.cc +++ b/libstdc++-v3/testsuite/27_io/objects/char/10.cc @@ -1,6 +1,6 @@ // 2003-05-01 Petur Runolfsson <peturr02@ru.is> -// Copyright (C) 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 2003, 2009, 2010 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 @@ -32,7 +32,7 @@ void test10() const char* name = "filebuf_virtuals-1.txt"; FILE* ret = freopen(name, "r", stdin); - VERIFY( ret != NULL ); + VERIFY( ret ); streampos p1 = cin.tellg(); VERIFY( p1 != streampos(-1) ); diff --git a/libstdc++-v3/testsuite/27_io/objects/char/12048-1.cc b/libstdc++-v3/testsuite/27_io/objects/char/12048-1.cc index 2c6bbd60403..e4982c5e768 100644 --- a/libstdc++-v3/testsuite/27_io/objects/char/12048-1.cc +++ b/libstdc++-v3/testsuite/27_io/objects/char/12048-1.cc @@ -28,7 +28,7 @@ void test01() { - std::freopen("cin_unget-1.txt", "r", stdin); + VERIFY( std::freopen("cin_unget-1.txt", "r", stdin) ); char c1; char c2; diff --git a/libstdc++-v3/testsuite/27_io/objects/char/12048-2.cc b/libstdc++-v3/testsuite/27_io/objects/char/12048-2.cc index 23ab8eea888..f18e5d393c7 100644 --- a/libstdc++-v3/testsuite/27_io/objects/char/12048-2.cc +++ b/libstdc++-v3/testsuite/27_io/objects/char/12048-2.cc @@ -24,7 +24,7 @@ void test01() { - std::freopen("cin_unget-1.txt", "r", stdin); + VERIFY( std::freopen("cin_unget-1.txt", "r", stdin) ); char c1; int c2; diff --git a/libstdc++-v3/testsuite/27_io/objects/char/12048-3.cc b/libstdc++-v3/testsuite/27_io/objects/char/12048-3.cc index 5158003410e..3b83ef176cd 100644 --- a/libstdc++-v3/testsuite/27_io/objects/char/12048-3.cc +++ b/libstdc++-v3/testsuite/27_io/objects/char/12048-3.cc @@ -25,7 +25,7 @@ void test01() { - std::freopen("cin_unget-1.txt", "r", stdin); + VERIFY( std::freopen("cin_unget-1.txt", "r", stdin) ); char buf[2]; VERIFY( std::cin.rdbuf()->sgetn(buf, 2) == 2 ); diff --git a/libstdc++-v3/testsuite/27_io/objects/char/12048-4.cc b/libstdc++-v3/testsuite/27_io/objects/char/12048-4.cc index 02f73b6211c..0f8600dbb40 100644 --- a/libstdc++-v3/testsuite/27_io/objects/char/12048-4.cc +++ b/libstdc++-v3/testsuite/27_io/objects/char/12048-4.cc @@ -24,7 +24,7 @@ void test01() { - std::freopen("cin_unget-1.txt", "r", stdin); + VERIFY( std::freopen("cin_unget-1.txt", "r", stdin) ); char buf[2]; VERIFY( std::cin.rdbuf()->sgetn(buf, 2) == 2 ); diff --git a/libstdc++-v3/testsuite/27_io/objects/char/12048-5.cc b/libstdc++-v3/testsuite/27_io/objects/char/12048-5.cc index 0a0159f82c2..dd544b7370e 100644 --- a/libstdc++-v3/testsuite/27_io/objects/char/12048-5.cc +++ b/libstdc++-v3/testsuite/27_io/objects/char/12048-5.cc @@ -33,7 +33,7 @@ void test01() { - std::freopen("cin_unget-1.txt", "r", stdin); + VERIFY( std::freopen("cin_unget-1.txt", "r", stdin) ); char c1; int c2; diff --git a/libstdc++-v3/testsuite/27_io/objects/char/5268.cc b/libstdc++-v3/testsuite/27_io/objects/char/5268.cc index 44f569c85e6..b7c0ac1df3d 100644 --- a/libstdc++-v3/testsuite/27_io/objects/char/5268.cc +++ b/libstdc++-v3/testsuite/27_io/objects/char/5268.cc @@ -1,6 +1,6 @@ // 2001-06-05 Benjamin Kosnik <bkoz@redhat.com> -// Copyright (C) 2001, 2002, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 2001, 2002, 2003, 2009, 2010 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 @@ -27,7 +27,7 @@ void test04() std::stringbuf b1; std::cout.rdbuf( &b1 ); std::cout << "hello\n"; - std::cout.rdbuf(NULL); + std::cout.rdbuf(0); } int main() diff --git a/libstdc++-v3/testsuite/27_io/objects/char/9.cc b/libstdc++-v3/testsuite/27_io/objects/char/9.cc index 1ba5bd12d53..e4905bb46f2 100644 --- a/libstdc++-v3/testsuite/27_io/objects/char/9.cc +++ b/libstdc++-v3/testsuite/27_io/objects/char/9.cc @@ -34,7 +34,7 @@ void test09() fputs("abc\n", fout); fclose(fout); - freopen(name, "r", stdin); + VERIFY( freopen(name, "r", stdin) ); // basic_streambuf::showmanyc returns 0. VERIFY( 0 == std::cin.rdbuf()->in_avail() ); diff --git a/libstdc++-v3/testsuite/27_io/objects/char/9661-1.cc b/libstdc++-v3/testsuite/27_io/objects/char/9661-1.cc index 59b8f4d09c5..8ca77c76e75 100644 --- a/libstdc++-v3/testsuite/27_io/objects/char/9661-1.cc +++ b/libstdc++-v3/testsuite/27_io/objects/char/9661-1.cc @@ -3,7 +3,7 @@ // 2003-04-30 Petur Runolfsson <peturr02@ru.is> -// Copyright (C) 2003, 2004, 2005, 2006, 2007, 2009 +// Copyright (C) 2003, 2004, 2005, 2006, 2007, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -58,7 +58,7 @@ bool test01() if (child == 0) { FILE* file = fopen(name, "r+"); - VERIFY( file != NULL ); + VERIFY( file != 0 ); fputs("Whatever\n", file); fflush(file); s1.signal(); @@ -68,7 +68,7 @@ bool test01() exit(0); } - freopen(name, "r", stdin); + VERIFY( freopen(name, "r", stdin) ); s1.wait(); int c1 = fgetc(stdin); diff --git a/libstdc++-v3/testsuite/27_io/objects/wchar_t/10.cc b/libstdc++-v3/testsuite/27_io/objects/wchar_t/10.cc index 672f0c15439..c5a198a34ee 100644 --- a/libstdc++-v3/testsuite/27_io/objects/wchar_t/10.cc +++ b/libstdc++-v3/testsuite/27_io/objects/wchar_t/10.cc @@ -95,7 +95,7 @@ void test10() VERIFY( n == e_size ); fclose(file); - freopen(name, "r", stdin); + VERIFY( freopen(name, "r", stdin) ); wchar_t* wbuf = new wchar_t[i_size + 10]; wcin.read(wbuf, i_size + 10); diff --git a/libstdc++-v3/testsuite/27_io/objects/wchar_t/11.cc b/libstdc++-v3/testsuite/27_io/objects/wchar_t/11.cc index c9c386f4707..566fdb6be17 100644 --- a/libstdc++-v3/testsuite/27_io/objects/wchar_t/11.cc +++ b/libstdc++-v3/testsuite/27_io/objects/wchar_t/11.cc @@ -90,7 +90,7 @@ void test11() }; size_t i_size = wcslen(i_lit); - freopen(name, "w", stdout); + VERIFY( freopen(name, "w", stdout) ); wcout.write(i_lit, i_size); wcout.flush(); diff --git a/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-1.cc b/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-1.cc index 8489dbb47df..58a40ce91c0 100644 --- a/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-1.cc +++ b/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-1.cc @@ -26,7 +26,7 @@ void test01() { - std::freopen("cin_unget-1.txt", "r", stdin); + VERIFY( std::freopen("cin_unget-1.txt", "r", stdin) ); wchar_t c1; wchar_t c2; diff --git a/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-2.cc b/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-2.cc index 82c1ba2b3a3..7eaef212f07 100644 --- a/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-2.cc +++ b/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-2.cc @@ -23,7 +23,7 @@ void test01() { - std::freopen("cin_unget-1.txt", "r", stdin); + VERIFY( std::freopen("cin_unget-1.txt", "r", stdin) ); wchar_t c1; std::wint_t c2; diff --git a/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-3.cc b/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-3.cc index 67f3a5b8b5b..8e236ab30cf 100644 --- a/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-3.cc +++ b/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-3.cc @@ -27,7 +27,7 @@ void test01() { - std::freopen("cin_unget-1.txt", "r", stdin); + VERIFY( std::freopen("cin_unget-1.txt", "r", stdin) ); wchar_t buf[2]; VERIFY( std::wcin.rdbuf()->sgetn(buf, 2) == 2 ); diff --git a/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-4.cc b/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-4.cc index fc1191f9f2e..3649e7e2259 100644 --- a/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-4.cc +++ b/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-4.cc @@ -23,7 +23,7 @@ void test01() { - std::freopen("cin_unget-1.txt", "r", stdin); + VERIFY( std::freopen("cin_unget-1.txt", "r", stdin) ); wchar_t buf[2]; VERIFY( std::wcin.rdbuf()->sgetn(buf, 2) == 2 ); diff --git a/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-5.cc b/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-5.cc index 1672a0ee925..49486e3c450 100644 --- a/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-5.cc +++ b/libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-5.cc @@ -29,7 +29,7 @@ void test01() { - std::freopen("cin_unget-1.txt", "r", stdin); + VERIFY( std::freopen("cin_unget-1.txt", "r", stdin) ); wchar_t c1; std::wint_t c2; diff --git a/libstdc++-v3/testsuite/27_io/objects/wchar_t/5268.cc b/libstdc++-v3/testsuite/27_io/objects/wchar_t/5268.cc index 918d4c5d7d6..04571cc63ed 100644 --- a/libstdc++-v3/testsuite/27_io/objects/wchar_t/5268.cc +++ b/libstdc++-v3/testsuite/27_io/objects/wchar_t/5268.cc @@ -1,6 +1,6 @@ // 2003-05-01 Petur Runolfsson <peturr02@ru.is> -// Copyright (C) 2001, 2002, 2003, 2009 Free Software Foundation, Inc. +// Copyright (C) 2001, 2002, 2003, 2009, 2010 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 @@ -27,7 +27,7 @@ void test04() std::wstringbuf b1; std::wcout.rdbuf( &b1 ); std::wcout << L"hello\n"; - std::wcout.rdbuf(NULL); + std::wcout.rdbuf(0); } int main() diff --git a/libstdc++-v3/testsuite/27_io/objects/wchar_t/9520.cc b/libstdc++-v3/testsuite/27_io/objects/wchar_t/9520.cc index dcaf9bc2540..641d621ded5 100644 --- a/libstdc++-v3/testsuite/27_io/objects/wchar_t/9520.cc +++ b/libstdc++-v3/testsuite/27_io/objects/wchar_t/9520.cc @@ -38,7 +38,7 @@ void test01() locale loc (locale("de_DE.ISO-8859-15@euro")); locale::global(loc); // Set locale for stdin - freopen(name, "r", stdin); + VERIFY( freopen(name, "r", stdin) ); wcin.imbue(loc); diff --git a/libstdc++-v3/testsuite/27_io/objects/wchar_t/9661-1.cc b/libstdc++-v3/testsuite/27_io/objects/wchar_t/9661-1.cc index 08d544ef6b3..ca470dac9eb 100644 --- a/libstdc++-v3/testsuite/27_io/objects/wchar_t/9661-1.cc +++ b/libstdc++-v3/testsuite/27_io/objects/wchar_t/9661-1.cc @@ -67,7 +67,7 @@ bool test01() exit(0); } - freopen(name, "r", stdin); + VERIFY( freopen(name, "r", stdin) ); s1.wait(); wint_t c1 = fgetwc(stdin); diff --git a/libstdc++-v3/testsuite/27_io/types/2.cc b/libstdc++-v3/testsuite/27_io/types/2.cc index 009e6f6af8d..33db5fed156 100644 --- a/libstdc++-v3/testsuite/27_io/types/2.cc +++ b/libstdc++-v3/testsuite/27_io/types/2.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2003, 2004, 2009 Free Software Foundation +// Copyright (C) 2003, 2004, 2009, 2010 Free Software Foundation // // 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 @@ -30,6 +30,7 @@ void test01() // Wrapped in pos_type is EOF. soff = -1; + soff = soff; // Suppress unused warning. } int main(void) diff --git a/libstdc++-v3/testsuite/28_regex/03_requirements/typedefs.cc b/libstdc++-v3/testsuite/28_regex/03_requirements/typedefs.cc new file mode 100644 index 00000000000..072d5d07f40 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/03_requirements/typedefs.cc @@ -0,0 +1,38 @@ +// { dg-do compile } +// { dg-options "-std=c++0x" } + +// +// 2010-02-17 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.3 Requirements [re.req] +// 28.2 (4) Table 127 - Regular expression traits class requirements + +#include <regex> + +void +test01() +{ + typedef std::regex_traits<char> traits; + + typedef traits::char_type char_type; + typedef traits::string_type string_type; + typedef traits::locale_type locale_type; + typedef traits::char_class_type char_class_type; +} diff --git a/libstdc++-v3/testsuite/28_regex/04_header/regex/std_c++0x_neg.cc b/libstdc++-v3/testsuite/28_regex/04_header/regex/std_c++0x_neg.cc new file mode 100644 index 00000000000..e8ddb77bbb3 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/04_header/regex/std_c++0x_neg.cc @@ -0,0 +1,23 @@ +// { dg-do compile } +// { dg-options "-std=gnu++98" } + +// Copyright (C) 2007, 2009, 2010 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 <regex> // { dg-excess-errors "In file included from" } + + diff --git a/libstdc++-v3/testsuite/28_regex/05_constants/error_type.cc b/libstdc++-v3/testsuite/28_regex/05_constants/error_type.cc new file mode 100644 index 00000000000..1841a462688 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/05_constants/error_type.cc @@ -0,0 +1,54 @@ +// { dg-options "-std=c++0x" } +// { dg-do compile } +// +// 2009-06-17 Stephen M. Webb <stephen.webb@xandros.com> +// +// Copyright (C) 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/>. + +// 28.5.3 + +#include <regex> +#include <testsuite_hooks.h> + +void +test01() +{ + bool test __attribute__((unused)) = true; + + std::regex_constants::error_type err __attribute__((unused)); + + err = std::regex_constants::error_collate; + err = std::regex_constants::error_ctype; + err = std::regex_constants::error_escape; + err = std::regex_constants::error_backref; + err = std::regex_constants::error_brack; + err = std::regex_constants::error_paren; + err = std::regex_constants::error_brace; + err = std::regex_constants::error_badbrace; + err = std::regex_constants::error_range; + err = std::regex_constants::error_space; + err = std::regex_constants::error_badrepeat; + err = std::regex_constants::error_complexity; + err = std::regex_constants::error_stack; +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/28_regex/05_constants/match_flag_type.cc b/libstdc++-v3/testsuite/28_regex/05_constants/match_flag_type.cc new file mode 100644 index 00000000000..10635ff5f7f --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/05_constants/match_flag_type.cc @@ -0,0 +1,53 @@ +// { dg-options "-std=c++0x" } +// { dg-do compile } +// +// 2009-06-17 Stephen M. Webb <stephen.webb@xandros.com> +// +// Copyright (C) 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/>. + +// 28.5.1 + +#include <regex> +#include <testsuite_hooks.h> + +void +test01() +{ + bool test __attribute__((unused)) = true; + + std::regex_constants::match_flag_type flag = std::regex_constants::match_default; + + flag |= std::regex_constants::match_not_bol; + flag |= std::regex_constants::match_not_eol; + flag |= std::regex_constants::match_not_bow; + flag |= std::regex_constants::match_not_eow; + flag |= std::regex_constants::match_any; + flag |= std::regex_constants::match_not_null; + flag |= std::regex_constants::match_continuous; + flag |= std::regex_constants::match_prev_avail; + flag |= std::regex_constants::format_default; + flag |= std::regex_constants::format_sed; + flag |= std::regex_constants::format_no_copy; + flag |= std::regex_constants::format_first_only; +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/28_regex/05_constants/syntax_option_type.cc b/libstdc++-v3/testsuite/28_regex/05_constants/syntax_option_type.cc new file mode 100644 index 00000000000..2aebf46d19e --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/05_constants/syntax_option_type.cc @@ -0,0 +1,51 @@ +// { dg-options "-std=c++0x" } +// { dg-do compile } +// +// 2009-06-17 Stephen M. Webb <stephen.webb@xandros.com> +// +// Copyright (C) 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/>. + +// 28.5.1 + +#include <regex> +#include <testsuite_hooks.h> + +void +test01() +{ + bool test __attribute__((unused)) = true; + + std::regex_constants::syntax_option_type option = 0; + + option |= std::regex_constants::icase; + option |= std::regex_constants::nosubs; + option |= std::regex_constants::optimize; + option |= std::regex_constants::collate; + option |= std::regex_constants::ECMAScript; + option |= std::regex_constants::basic; + option |= std::regex_constants::extended; + option |= std::regex_constants::awk; + option |= std::regex_constants::grep; + option |= std::regex_constants::egrep; +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/28_regex/06_exception_type/regex_error.cc b/libstdc++-v3/testsuite/28_regex/06_exception_type/regex_error.cc new file mode 100644 index 00000000000..04fd7124277 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/06_exception_type/regex_error.cc @@ -0,0 +1,49 @@ +// { dg-options "-std=c++0x" } +// { dg-do compile } +// +// 2009-06-17 Stephen M. Webb <stephen.webb@xandros.com> +// +// Copyright (C) 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/>. + +// 28.6 [re.badexp] + +#include <regex> +#include <testsuite_hooks.h> + +void +test01() +{ + bool test __attribute__((unused)) = true; + + std::regex_error error(std::regex_constants::error_collate); + VERIFY(error.code() == std::regex_constants::error_collate); + + try + { + throw error; + } + catch (std::runtime_error& ex) + { + } +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/28_regex/07_traits/char/ctor.cc b/libstdc++-v3/testsuite/28_regex/07_traits/char/ctor.cc new file mode 100644 index 00000000000..6f5a2f3ab8d --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/07_traits/char/ctor.cc @@ -0,0 +1,50 @@ +// { dg-do link } +// { dg-options "-std=gnu++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.7] class template regex_traits + +#include <regex> +#include <testsuite_hooks.h> + +// Tests default constructor of the regex_traits class. There is only the +// default constructor. +void test01() +{ + bool test __attribute__((unused)) = true; + typedef std::regex_traits<char> test_type; + + // required default constructor + test_type t; + + // Check for required typedefs + typedef test_type::char_type char_type; + typedef test_type::string_type string_type; + typedef test_type::locale_type locale_type; + typedef test_type::char_class_type char_class_type; +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/07_traits/char/isctype.cc b/libstdc++-v3/testsuite/28_regex/07_traits/char/isctype.cc new file mode 100644 index 00000000000..cb8664ca8bf --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/07_traits/char/isctype.cc @@ -0,0 +1,48 @@ +// { dg-do run { xfail *-*-* } } +// { dg-options "-std=c++0x" } + +// +// 2010-06-23 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.3 Requirements [re.req] +// 28.2(4) Table 127 - Regular expression traits class requirements +// 28.7(11) Class template regex_traits [re.traits] + +#include <regex> +#include <testsuite_hooks.h> + +void +test01() +{ + bool test __attribute__((unused)) = true; + typedef char CharT; + typedef std::regex_traits<CharT> traits; + + char name[] = "lower"; + traits t; + + VERIFY( t.isctype('e', t.lookup_classname(name, name+sizeof(name)-1)) ); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/28_regex/07_traits/char/length.cc b/libstdc++-v3/testsuite/28_regex/07_traits/char/length.cc new file mode 100644 index 00000000000..55406dd0ded --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/07_traits/char/length.cc @@ -0,0 +1,49 @@ +// { dg-do run } +// { dg-options "-std=c++0x" } + +// +// 2010-02-17 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.3 Requirements [re.req] +// 28.2 (4) Table 127 - Regular expression traits class requirements +// 28.7 Class template regex_traits [re.traits] +// 28.7 (3) static std::size_t length(const char_type* p); + +#include <regex> +#include <testsuite_hooks.h> + +void +test01() +{ + typedef char CharT; + typedef std::regex_traits<CharT> traits; + bool test __attribute__((unused)) = true; + const CharT* p = ""; + + std::size_t i = traits::length(p); + + VERIFY( i == 0 ); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/28_regex/07_traits/char/lookup_classname.cc b/libstdc++-v3/testsuite/28_regex/07_traits/char/lookup_classname.cc new file mode 100644 index 00000000000..49ffb511add --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/07_traits/char/lookup_classname.cc @@ -0,0 +1,54 @@ +// { dg-do run { xfail *-*-* } } +// { dg-options "-std=c++0x" } + +// +// 2010-06-23 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.3 Requirements [re.req] +// 28.2(4) Table 127 - Regular expression traits class requirements +// 28.7(9) Class template regex_traits [re.traits] + +#include <regex> +#include <testsuite_hooks.h> + +void +test01() +{ + bool test __attribute__((unused)) = true; + typedef char CharT; + typedef std::regex_traits<CharT> traits; + + char n1[] = "lower"; + char n2[] = "alpha"; + traits t; + + traits::char_class_type c1 = t.lookup_classname(n1, n1+sizeof(n1)-1); + VERIFY( c1 != 0 ); + + traits::char_class_type c2 = t.lookup_classname(n1, n1+sizeof(n1)-1, true); + traits::char_class_type c3 = t.lookup_classname(n2, n2+sizeof(n2)-1, true); + VERIFY( c2 == c3 ); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/28_regex/07_traits/char/lookup_collatename.cc b/libstdc++-v3/testsuite/28_regex/07_traits/char/lookup_collatename.cc new file mode 100644 index 00000000000..58eb5878de5 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/07_traits/char/lookup_collatename.cc @@ -0,0 +1,50 @@ +// { dg-do run { xfail *-*-* } } +// { dg-options "-std=c++0x" } + +// +// 2010-06-23 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.3 Requirements [re.req] +// 28.2 (4) Table 127 - Regular expression traits class requirements +// 28.7 (8) Class template regex_traits [re.traits] + +#include <regex> +#include <testsuite_hooks.h> + +void +test01() +{ + bool test __attribute__((unused)) = true; + typedef char CharT; + typedef std::regex_traits<CharT> traits; + + char name[] = "ll"; + traits t; + + traits::string_type sname = t.lookup_collatename(name, name+sizeof(name)-1); + + VERIFY( !sname.empty() ); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/28_regex/07_traits/char/transform.cc b/libstdc++-v3/testsuite/28_regex/07_traits/char/transform.cc new file mode 100644 index 00000000000..1481dcfbb8c --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/07_traits/char/transform.cc @@ -0,0 +1,51 @@ +// { dg-do run } +// { dg-options "-std=c++0x" } + +// +// 2010-02-17 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.3 Requirements [re.req] +// 28.2 (4) Table 127 - Regular expression traits class requirements +// 28.7 Class template regex_traits [re.traits] + +#include <regex> +#include <string> +#include <testsuite_hooks.h> + +void +test01() +{ + bool test __attribute__((unused)) = true; + typedef char CharT; + typedef std::regex_traits<CharT> traits; + + traits t; + traits::string_type G = "abc"; + traits::string_type H = "def"; + + VERIFY( G < H ); + VERIFY( t.transform(G.begin(), G.end()) < t.transform(H.begin(), H.end()) ); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/28_regex/07_traits/char/transform_primary.cc b/libstdc++-v3/testsuite/28_regex/07_traits/char/transform_primary.cc new file mode 100644 index 00000000000..7de8904b49a --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/07_traits/char/transform_primary.cc @@ -0,0 +1,55 @@ +// { dg-options "-std=c++0x" } +// { dg-do run { xfail *-*-* } } + +// +// 2010-02-17 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.3 Requirements [re.req] +// 28.2 (4) Table 127 - Regular expression traits class requirements +// 28.7 Class template regex_traits [re.traits] + +#include <regex> +#include <string> +#include <testsuite_hooks.h> + +void +test01() +{ + bool test __attribute__((unused)) = true; + typedef char CharT; + typedef std::regex_traits<CharT> traits; + + traits t; + traits::string_type G = "abc"; + traits::string_type H = "def"; + traits::string_type J = "ABC"; + + VERIFY( G < H ); + VERIFY( t.transform_primary(G.begin(), G.end()) < t.transform_primary(H.begin(), H.end()) ); + + VERIFY( G == H ); + VERIFY( t.transform_primary(G.begin(), G.end()) == t.transform_primary(J.begin(), J.end()) ); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/28_regex/07_traits/char/translate.cc b/libstdc++-v3/testsuite/28_regex/07_traits/char/translate.cc new file mode 100644 index 00000000000..2dbbba39637 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/07_traits/char/translate.cc @@ -0,0 +1,49 @@ +// { dg_do run } +// { dg-options "-std=c++0x" } + +// +// 2010-02-17 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.3 Requirements [re.req] +// 28.2 (4) Table 127 - Regular expression traits class requirements +// 28.7 Class template regex_traits [re.traits] +// 28.7 (3) static std::size_t length(const char_type* p); + +#include <regex> +#include <testsuite_hooks.h> + +void +test01() +{ + bool test __attribute__((unused)) = true; + typedef char CharT; + + std::regex_traits<CharT> t; + CharT c = 'a'; + CharT d = 'a'; + + VERIFY( t.translate(c) == t.translate(d) ); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/28_regex/07_traits/char/translate_nocase.cc b/libstdc++-v3/testsuite/28_regex/07_traits/char/translate_nocase.cc new file mode 100644 index 00000000000..4c963ddd3a5 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/07_traits/char/translate_nocase.cc @@ -0,0 +1,46 @@ +// { dg-do run } +// { dg-options "-std=gnu++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.7] class template regex_traits (5) translate_nocase + +#include <regex> +#include <testsuite_hooks.h> + +// Verifies the workings of the regex_traits translate_nocase function. +void test01() +{ + bool test __attribute__((unused)) = true; + typedef char CharT; + + std::regex_traits<CharT> t; + CharT c = 'a'; + CharT C = 'A'; + + VERIFY( t.translate_nocase(c) == t.translate_nocase(C) ); +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/07_traits/char/value.cc b/libstdc++-v3/testsuite/28_regex/07_traits/char/value.cc new file mode 100644 index 00000000000..f0535acb2cc --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/07_traits/char/value.cc @@ -0,0 +1,49 @@ +// { dg-do run } +// { dg-options "-std=gnu++0x" } + +// 2008-08-11 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.7] class template regex_traits value() function + +#include <regex> +#include <testsuite_hooks.h> + +// Tests the value() function of the regex_traits<char> class. +void test01() +{ + bool test __attribute__((unused)) = true; + std::regex_traits<char> t; + VERIFY( t.value('7', 8) == 7 ); + VERIFY( t.value('7', 10) == 7 ); + VERIFY( t.value('7', 16) == 7 ); + VERIFY( t.value('9', 8) == -1 ); + VERIFY( t.value('9', 10) == 9 ); + VERIFY( t.value('9', 16) == 9 ); + VERIFY( t.value('d', 8) == -1 ); + VERIFY( t.value('d', 10) == -1 ); + VERIFY( t.value('d', 16) == 13 ); +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/07_traits/wchar_t/ctor.cc b/libstdc++-v3/testsuite/28_regex/07_traits/wchar_t/ctor.cc new file mode 100644 index 00000000000..39caf432d32 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/07_traits/wchar_t/ctor.cc @@ -0,0 +1,49 @@ +// { dg-do link } +// { dg-options "-std=gnu++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.7] class template regex_traits + +#include <regex> +#include <testsuite_hooks.h> + +// Tests default constructor of the regex_traits class. There is only the +// default constructor. +void test01() +{ + typedef std::regex_traits<wchar_t> test_type; + + // required default constructor + test_type t; + + // Check for required typedefs + typedef test_type::char_type char_type; + typedef test_type::string_type string_type; + typedef test_type::locale_type locale_type; + typedef test_type::char_class_type char_class_type; +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/07_traits/wchar_t/length.cc b/libstdc++-v3/testsuite/28_regex/07_traits/wchar_t/length.cc new file mode 100644 index 00000000000..c3cd7b60d0c --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/07_traits/wchar_t/length.cc @@ -0,0 +1,49 @@ +// { dg-do run } +// { dg-options "-std=c++0x" } + +// +// 2010-02-17 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.3 Requirements [re.req] +// 28.2 (4) Table 127 - Regular expression traits class requirements +// 28.7 Class template regex_traits [re.traits] +// 28.7 (3) static std::size_t length(const char_type* p); + +#include <regex> +#include <testsuite_hooks.h> + +void +test01() +{ + typedef wchar_t CharT; + typedef std::regex_traits<CharT> traits; + bool test __attribute__((unused)) = true; + const CharT* p = L""; + + std::size_t i = traits::length(p); + + VERIFY( i == 0 ); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/28_regex/07_traits/wchar_t/transform.cc b/libstdc++-v3/testsuite/28_regex/07_traits/wchar_t/transform.cc new file mode 100644 index 00000000000..c1f7af44d71 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/07_traits/wchar_t/transform.cc @@ -0,0 +1,51 @@ +// { dg-do run } +// { dg-options "-std=c++0x" } + +// +// 2010-02-17 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.3 Requirements [re.req] +// 28.2 (4) Table 127 - Regular expression traits class requirements +// 28.7 Class template regex_traits [re.traits] + +#include <regex> +#include <string> +#include <testsuite_hooks.h> + +void +test01() +{ + bool test __attribute__((unused)) = true; + typedef wchar_t CharT; + typedef std::regex_traits<CharT> traits; + + traits t; + traits::string_type G = L"abc"; + traits::string_type H = L"def"; + + VERIFY( G < H ); + VERIFY( t.transform(G.begin(), G.end()) < t.transform(H.begin(), H.end()) ); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/28_regex/07_traits/wchar_t/translate.cc b/libstdc++-v3/testsuite/28_regex/07_traits/wchar_t/translate.cc new file mode 100644 index 00000000000..962c381520c --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/07_traits/wchar_t/translate.cc @@ -0,0 +1,49 @@ +// { dg-do run } +// { dg-options "-std=c++0x" } + +// +// 2010-02-17 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.3 Requirements [re.req] +// 28.2 (4) Table 127 - Regular expression traits class requirements +// 28.7 Class template regex_traits [re.traits] +// 28.7 (3) static std::size_t length(const char_type* p); + +#include <regex> +#include <testsuite_hooks.h> + +void +test01() +{ + bool test __attribute__((unused)) = true; + typedef wchar_t CharT; + + std::regex_traits<CharT> t; + CharT c = L'a'; + CharT d = L'a'; + + VERIFY( t.translate(c) == t.translate(d) ); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/28_regex/07_traits/wchar_t/translate_nocase.cc b/libstdc++-v3/testsuite/28_regex/07_traits/wchar_t/translate_nocase.cc new file mode 100644 index 00000000000..5602cf00117 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/07_traits/wchar_t/translate_nocase.cc @@ -0,0 +1,46 @@ +// { dg-do run } +// { dg-options "-std=gnu++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.7] class template regex_traits (5) translate_nocase + +#include <regex> +#include <testsuite_hooks.h> + +// Verifies the workings of the regex_traits translate_nocase function. +void test01() +{ + bool test __attribute__((unused)) = true; + typedef wchar_t CharT; + + std::regex_traits<CharT> t; + CharT c = L'a'; + CharT C = L'A'; + + VERIFY( t.translate_nocase(c) == t.translate_nocase(C) ); +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/07_traits/wchar_t/value.cc b/libstdc++-v3/testsuite/28_regex/07_traits/wchar_t/value.cc new file mode 100644 index 00000000000..f0535acb2cc --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/07_traits/wchar_t/value.cc @@ -0,0 +1,49 @@ +// { dg-do run } +// { dg-options "-std=gnu++0x" } + +// 2008-08-11 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.7] class template regex_traits value() function + +#include <regex> +#include <testsuite_hooks.h> + +// Tests the value() function of the regex_traits<char> class. +void test01() +{ + bool test __attribute__((unused)) = true; + std::regex_traits<char> t; + VERIFY( t.value('7', 8) == 7 ); + VERIFY( t.value('7', 10) == 7 ); + VERIFY( t.value('7', 16) == 7 ); + VERIFY( t.value('9', 8) == -1 ); + VERIFY( t.value('9', 10) == 9 ); + VERIFY( t.value('9', 16) == 9 ); + VERIFY( t.value('d', 8) == -1 ); + VERIFY( t.value('d', 10) == -1 ); + VERIFY( t.value('d', 16) == 13 ); +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/char/cstring.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/char/cstring.cc new file mode 100644 index 00000000000..1552818e987 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/char/cstring.cc @@ -0,0 +1,44 @@ +// { dg-do compile } +// { dg-options "-std=c++0x" } + +// 2009-06-05 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 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/>. + +// C++0X [28.8.3] class template basic_regex assign() + +#include <regex> +#include <testsuite_hooks.h> + +// Tests assign operation from a C-style null-terminated-string. +void test01() +{ + bool test __attribute__((unused)) = true; + + std::basic_regex<char> re; + + const char* cs = "aab"; + re.assign(cs); +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/char/cstring_op.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/char/cstring_op.cc new file mode 100644 index 00000000000..12353023b38 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/char/cstring_op.cc @@ -0,0 +1,43 @@ +// { dg-do compile } +// { dg-options "-std=gnu++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.8.3] class template basic_regex assign() + +#include <regex> +#include <testsuite_hooks.h> + +// Tests basic_regex assign operator from a C-style null-terminated-string. +void test01() +{ + typedef std::basic_regex<char> test_type; + + const char* cs = "aab"; + test_type re; + re = cs; +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/char/moveable.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/char/moveable.cc new file mode 100644 index 00000000000..64f5bcac570 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/char/moveable.cc @@ -0,0 +1,50 @@ +// { dg-options "-std=gnu++0x" } + +// 2010-07-07 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.8.3](9-11) class template basic_regex assign + +#include <regex> +#include <testsuite_hooks.h> +#include <utility> + +// Tests assign operator of the basic_regex class for moveable rvalues. +void test01() +{ + bool test __attribute__((unused)) = true; + + std::regex src_re("aaba"); + const unsigned mark_count = src_re.mark_count(); + const std::regex::flag_type flags = src_re.flags(); + + std::regex target_re; + + target_re.assign(std::move(src_re)); + + VERIFY( target_re.flags() == flags ); + VERIFY( target_re.mark_count() == mark_count ); +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/char/pstring.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/char/pstring.cc new file mode 100644 index 00000000000..398b66c6063 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/char/pstring.cc @@ -0,0 +1,43 @@ +// { dg-do compile } +// { dg-options "-std=gnu++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.8.3] class template basic_regex assign() + +#include <regex> +#include <testsuite_hooks.h> + +// Tests assign operation from a Pascal-style counted-string. +void test01() +{ + typedef std::basic_regex<char> test_type; + + const char cs[] = "aab"; + test_type re; + re.assign(cs, sizeof(cs)-1, std::regex_constants::basic); +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/char/range.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/char/range.cc new file mode 100644 index 00000000000..cd741d5fff2 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/char/range.cc @@ -0,0 +1,43 @@ +// { dg-do compile } +// { dg-options "-std=gnu++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.8.3] class template basic_regex assign() + +#include <regex> +#include <testsuite_hooks.h> + +// Tests range assign of the basic_regex class. +void test01() +{ + typedef std::basic_regex<char> test_type; + + char s[] = "a+b|c"; + test_type re; + re.assign(s, s + 5); +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/char/string.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/char/string.cc new file mode 100644 index 00000000000..afa071eb312 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/char/string.cc @@ -0,0 +1,44 @@ +// { dg-do compile } +// { dg-options "-std=gnu++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.8.3] class template basic_regex assign() + +#include <string> +#include <regex> +#include <testsuite_hooks.h> + +// Tests C++ string assignment of the basic_regex class. +void test01() +{ + typedef std::basic_regex<char> test_type; + + std::string s("a*b"); + test_type re; + re.assign(s); +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/char/string_op.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/char/string_op.cc new file mode 100644 index 00000000000..724872decd5 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/char/string_op.cc @@ -0,0 +1,44 @@ +// { dg-do compile } +// { dg-options "-std=gnu++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.8.3] class template basic_regex assign() + +#include <string> +#include <regex> +#include <testsuite_hooks.h> + +// Tests basic_regex assignment operator from a C++ string; +void test01() +{ + typedef std::basic_regex<char> test_type; + + std::string s("a*b"); + test_type re; + re = s; +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/wchar_t/cstring.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/wchar_t/cstring.cc new file mode 100644 index 00000000000..20ccab01244 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/wchar_t/cstring.cc @@ -0,0 +1,44 @@ +// { dg-do compile } +// { dg-options "-std=gnu++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.8.3] class template basic_regex assign() + +#include <regex> +#include <testsuite_hooks.h> + +// Tests assign operation from a C-style null-terminated-string. +void test01() +{ + bool test __attribute__((unused)) = true; + typedef std::basic_regex<wchar_t> test_type; + + const wchar_t* cs = L"aab"; + test_type re; + re.assign(cs); +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/wchar_t/cstring_op.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/wchar_t/cstring_op.cc new file mode 100644 index 00000000000..8d8e9656d9e --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/wchar_t/cstring_op.cc @@ -0,0 +1,44 @@ +// { dg-do compile } +// { dg-options "-std=gnu++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.8.3] class template basic_regex assign() + +#include <regex> +#include <testsuite_hooks.h> + +// Tests basic_regex assign operator from a C-style null-terminated-string. +void test01() +{ + bool test __attribute__((unused)) = true; + typedef std::basic_regex<wchar_t> test_type; + + const wchar_t* cs = L"aab"; + test_type re; + re = cs; +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/wchar_t/pstring.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/wchar_t/pstring.cc new file mode 100644 index 00000000000..9034a542c01 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/wchar_t/pstring.cc @@ -0,0 +1,43 @@ +// { dg-do compile } +// { dg-options "-std=gnu++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.8.3] class template basic_regex assign() + +#include <regex> +#include <testsuite_hooks.h> + +// Tests assign operation from a Pascal-style counted-string. +void test01() +{ + typedef std::basic_regex<wchar_t> test_type; + + const wchar_t cs[] = L"aab"; + test_type re; + re.assign(cs, sizeof(cs)-1, std::regex_constants::basic); +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/wchar_t/range.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/wchar_t/range.cc new file mode 100644 index 00000000000..2e31a708417 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/wchar_t/range.cc @@ -0,0 +1,44 @@ +// { dg-do compile } +// { dg-options "-std=gnu++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.8.3] class template basic_regex assign() + +#include <regex> +#include <testsuite_hooks.h> + +// Tests range assign of the basic_regex class. +void test01() +{ + typedef std::basic_regex<wchar_t> test_type; + bool test __attribute__((unused)) = true; + + wchar_t s[] = L"a+b|c"; + test_type re; + re.assign(s, s + 5); +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/wchar_t/string.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/wchar_t/string.cc new file mode 100644 index 00000000000..156374ac1a7 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/wchar_t/string.cc @@ -0,0 +1,45 @@ +// { dg-do compile } +// { dg-options "-std=gnu++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.8.3] class template basic_regex assign() + +#include <string> +#include <regex> +#include <testsuite_hooks.h> + +// Tests C++ string assignment of the basic_regex class. +void test01() +{ + bool test __attribute__((unused)) = true; + typedef std::basic_regex<wchar_t> test_type; + + std::wstring s(L"a*b"); + test_type re; + re.assign(s); +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/wchar_t/string_op.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/wchar_t/string_op.cc new file mode 100644 index 00000000000..43704af2bd1 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/assign/wchar_t/string_op.cc @@ -0,0 +1,45 @@ +// { dg-do compile } +// { dg-options "-std=gnu++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.8.3] class template basic_regex assign() + +#include <string> +#include <regex> +#include <testsuite_hooks.h> + +// Tests basic_regex assignment operator from a C++ string; +void test01() +{ + bool test __attribute__((unused)) = true; + typedef std::basic_regex<wchar_t> test_type; + + std::wstring s(L"a*b"); + test_type re; + re = s; +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/basic/cstring.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/basic/cstring.cc new file mode 100644 index 00000000000..b91453c0e77 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/basic/cstring.cc @@ -0,0 +1,37 @@ +// { dg-do compile } +// { dg-options "-std=c++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// 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/>. + +// 7.8.2 basic_regex constructors + +#include <regex> + +void +test01() +{ + std::regex re("(a|b)*abb", std::regex::basic); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/basic/pstring_char.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/basic/pstring_char.cc new file mode 100644 index 00000000000..2f011fe52c4 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/basic/pstring_char.cc @@ -0,0 +1,42 @@ +// { dg-do run } +// { dg-options "-std=gnu++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.8.2] class template basic_regex constructor + +#include <regex> +#include <testsuite_hooks.h> + +// Tests Pascal-style counted-string constructor of the basic_regex class. +void test01() +{ + const char* cs = "aab"; + std::regex re(cs, 3, std::regex::basic); + + VERIFY( re.flags() & std::regex_constants::basic ); +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/basic/pstring_wchar_t.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/basic/pstring_wchar_t.cc new file mode 100644 index 00000000000..89deef6f19f --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/basic/pstring_wchar_t.cc @@ -0,0 +1,44 @@ +// { dg-do run } +// { dg-options "-std=c++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.8.2] class template basic_regex constructor + +#include <regex> +#include <testsuite_hooks.h> + +// Tests Pascal-style counted-string constructor of the basic_regex class. +void test01() +{ + bool test __attribute__((unused)) = true; + + const wchar_t* cs = L"aab"; + std::wregex re(cs, 3, std::wregex::basic); + + VERIFY( re.flags() & std::regex_constants::basic ); +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/basic/string_range_01_02_03.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/basic/string_range_01_02_03.cc new file mode 100644 index 00000000000..471c89c9024 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/basic/string_range_01_02_03.cc @@ -0,0 +1,52 @@ +// { dg-options "-std=c++0x" } +// { dg-do run { xfail *-*-* } } + +// +// 2010-06-16 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.8.2 basic_regex ctor +// Tests for invalid range expression + +#include <regex> +#include <testsuite_hooks.h> + +void +test01() +{ + bool test __attribute__((unused)) = true; + + try + { + std::regex re("a\\{1,2,3\\}", std::regex::basic); + } + catch (std::regex_error& ex) + { + VERIFY( ex.code() == std::regex_constants::error_badbrace ); + } +} + + +int +main() +{ + test01(); + return 0; +} + diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/char/cstring.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/char/cstring.cc new file mode 100644 index 00000000000..ac87e4d69a0 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/char/cstring.cc @@ -0,0 +1,42 @@ +// { dg-do compile } +// { dg-options "-std=gnu++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.8.2] class template basic_regex constructor + +#include <regex> +#include <testsuite_hooks.h> + +// Tests C-style null-terminated-string constructor of the basic_regex class. +void test01() +{ + typedef std::basic_regex<char> test_type; + + const char* cs = "aab"; + test_type re(cs); +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/char/cstring_awk.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/char/cstring_awk.cc new file mode 100644 index 00000000000..8b93fe7a721 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/char/cstring_awk.cc @@ -0,0 +1,37 @@ +// { dg-do compile } +// { dg-options "-std=c++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// 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/>. + +// 7.8.2 basic_regex constructors + +#include <regex> + +void +test01() +{ + std::regex re("(a|b)*abb", std::regex::awk); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/char/cstring_ecma.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/char/cstring_ecma.cc new file mode 100644 index 00000000000..6c72736c5cd --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/char/cstring_ecma.cc @@ -0,0 +1,37 @@ +// { dg-do compile } +// { dg-options "-std=c++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// 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/>. + +// 7.8.2 basic_regex constructors + +#include <regex> + +void +test01() +{ + std::regex re("(a|b)*abb"); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/char/cstring_egrep.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/char/cstring_egrep.cc new file mode 100644 index 00000000000..f38a9b8704e --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/char/cstring_egrep.cc @@ -0,0 +1,37 @@ +// { dg-do compile } +// { dg-options "-std=c++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// 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/>. + +// 7.8.2 basic_regex constructors + +#include <regex> + +void +test01() +{ + std::regex re("(a|b)*abb", std::regex::egrep); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/char/cstring_grep.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/char/cstring_grep.cc new file mode 100644 index 00000000000..458f6d21cc5 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/char/cstring_grep.cc @@ -0,0 +1,39 @@ +// { dg-do compile } +// { dg-options "-std=c++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// 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/>. + +// 7.8.2 basic_regex constructors + +#include <regex> + +void +test01() +{ + using std::regex; + + regex re("(a|b)*abb", regex::grep); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/char/default.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/char/default.cc new file mode 100644 index 00000000000..b7c6f410cde --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/char/default.cc @@ -0,0 +1,47 @@ +// { dg-do compile } +// { dg-options "-std=gnu++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.8.2] class template basic_regex constructor + +#include <regex> +#include <testsuite_hooks.h> + +// Tests default constructor of the basic_regex class. +void test01() +{ + typedef std::basic_regex<char> test_type; + + // default constructor + test_type re; + + // Check for required typedefs + typedef test_type::value_type value_type; + typedef test_type::flag_type flag_type; + typedef test_type::locale_type locale_type; +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/char/range.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/char/range.cc new file mode 100644 index 00000000000..027a927849e --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/char/range.cc @@ -0,0 +1,42 @@ +// { dg-do compile } +// { dg-options "-std=gnu++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.8.2] class template basic_regex constructor + +#include <regex> +#include <testsuite_hooks.h> + +// Tests range constructor of the basic_regex class. +void test01() +{ + typedef std::basic_regex<char> test_type; + + char s[] = "a+b|c"; + test_type re(s, s + 5); +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/copy_char.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/copy_char.cc new file mode 100644 index 00000000000..4ed5f92c8b0 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/copy_char.cc @@ -0,0 +1,45 @@ +// { dg-options "-std=c++0x" } + +// 2010-07-07 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.8.2](11) class template basic_regex constructors + +#include <regex> +#include <testsuite_hooks.h> + +// Tests copy constructor of the basic_regex class. +void test01() +{ + typedef std::basic_regex<char> test_type; + + test_type src_re("aaba"); + + test_type target_re(src_re); + + VERIFY( target_re.flags() == src_re.flags() ); + VERIFY( target_re.mark_count() == src_re.mark_count() ); +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/extended/cstring.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/extended/cstring.cc new file mode 100644 index 00000000000..691b8c7f5f1 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/extended/cstring.cc @@ -0,0 +1,43 @@ +// { dg-do compile } +// { dg-options "-std=c++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// 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/>. + +// 7.8.2 basic_regex constructors + +#include <regex> +#include <testsuite_hooks.h> + +void +test01() +{ + bool test __attribute__((unused)) = true; + + std::regex re("(wee|week)(knights|night)", std::regex::extended); + + VERIFY( re.flags() == std::regex::extended ); + VERIFY( re.mark_count() == 0 ); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/extended/string_range_01_02_03.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/extended/string_range_01_02_03.cc new file mode 100644 index 00000000000..036321face5 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/extended/string_range_01_02_03.cc @@ -0,0 +1,52 @@ +// { dg-options "-std=c++0x" } +// { dg-do run { xfail *-*-* } } + +// +// 2010-06-16 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.8.2 basic_regex ctor +// Tests for invalid range expression + +#include <regex> +#include <testsuite_hooks.h> + +void +test01() +{ + bool test __attribute__((unused)) = true; + + try + { + std::regex re("a{1,2,3}", std::regex::extended); + } + catch (std::regex_error& ex) + { + VERIFY( ex.code() == std::regex_constants::error_badbrace ); + } +} + + +int +main() +{ + test01(); + return 0; +} + diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/move_char.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/move_char.cc new file mode 100644 index 00000000000..ba056969c5c --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/move_char.cc @@ -0,0 +1,49 @@ +// { dg-options "-std=gnu++0x" } + +// 2010-07-07 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.8.2](12-14) class template basic_regex constructors + +#include <regex> +#include <testsuite_hooks.h> +#include <utility> + +// Tests move constructor of the basic_regex class. +void test01() +{ + bool test __attribute__((unused)) = true; + typedef std::basic_regex<char> test_type; + + test_type src_re("aaba"); + const unsigned mark_count = src_re.mark_count(); + const test_type::flag_type flags = src_re.flags(); + + test_type target_re = std::move(src_re); + + VERIFY( target_re.flags() == flags ); + VERIFY( target_re.mark_count() == mark_count ); +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/string_char.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/string_char.cc new file mode 100644 index 00000000000..f65d783a735 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/string_char.cc @@ -0,0 +1,54 @@ +// { dg-do compile } +// { dg-options "-std=gnu++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.8.2] class template basic_regex constructor + +#include <string> +#include <regex> +#include <testsuite_hooks.h> +#include <testsuite_allocator.h> + +// Tests C++ string constructor of the basic_regex class. +void test01() +{ + typedef std::basic_regex<char> test_type; + + std::string s("a*b"); + test_type re(s); +} + +void test02() +{ + typedef std::basic_regex<char> test_type; + typedef __gnu_test::tracker_allocator<char> alloc_type; + + std::basic_string<char, std::char_traits<char>, alloc_type> s("a*b"); + test_type re(s); +} + +int +main() +{ + test01(); + test02(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/string_wchar_t.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/string_wchar_t.cc new file mode 100644 index 00000000000..b715195c383 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/string_wchar_t.cc @@ -0,0 +1,56 @@ +// { dg-do compile } +// { dg-options "-std=gnu++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.8.2] class template basic_regex constructor + +#include <string> +#include <regex> +#include <testsuite_hooks.h> +#include <testsuite_allocator.h> + +// Tests C++ string constructor of the basic_regex class. +void test01() +{ + bool test __attribute__((unused)) = true; + typedef std::basic_regex<wchar_t> test_type; + + std::wstring s(L"a*b"); + test_type re(s); +} + +void test02() +{ + bool test __attribute__((unused)) = true; + typedef std::basic_regex<wchar_t> test_type; + typedef __gnu_test::tracker_allocator<wchar_t> alloc_type; + + std::basic_string<wchar_t, std::char_traits<wchar_t>, alloc_type> s(L"a*b"); + test_type re(s); +} + +int +main() +{ + test01(); + test02(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/wchar_t/cstring.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/wchar_t/cstring.cc new file mode 100644 index 00000000000..4dabf399677 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/wchar_t/cstring.cc @@ -0,0 +1,43 @@ +// { dg-do compile } +// { dg-options "-std=gnu++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.8.2] class template basic_regex constructor + +#include <regex> +#include <testsuite_hooks.h> + +// Tests C-style null-terminated-string constructor of the basic_regex class. +void test01() +{ + bool test __attribute__((unused)) = true; + typedef std::basic_regex<wchar_t> test_type; + + const wchar_t* cs = L"aab"; + test_type re(cs); +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/wchar_t/default.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/wchar_t/default.cc new file mode 100644 index 00000000000..a0f41740229 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/wchar_t/default.cc @@ -0,0 +1,48 @@ +// { dg-do compile } +// { dg-options "-std=gnu++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.8.2] class template basic_regex constructor + +#include <regex> +#include <testsuite_hooks.h> + +// Tests default constructor of the basic_regex class. +void test01() +{ + bool test __attribute__((unused)) = true; + typedef std::basic_regex<wchar_t> test_type; + + // default constructor + test_type re; + + // Check for required typedefs + typedef test_type::value_type value_type; + typedef test_type::flag_type flag_type; + typedef test_type::locale_type locale_type; +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/wchar_t/range.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/wchar_t/range.cc new file mode 100644 index 00000000000..efc0597cc1d --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/ctors/wchar_t/range.cc @@ -0,0 +1,43 @@ +// { dg-do compile } +// { dg-options "-std=c++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2010 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/>. + +// [28.8.2] class template basic_regex constructor + +#include <regex> +#include <testsuite_hooks.h> + +// Tests range constructor of the basic_regex class. +void test01() +{ + bool test __attribute__((unused)) = true; + typedef std::basic_regex<wchar_t> test_type; + + wchar_t s[] = L"a+b|c"; + test_type re(s, s + 5); +} + +int +main() +{ + test01(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/08_basic_regex/regex.cc b/libstdc++-v3/testsuite/28_regex/08_basic_regex/regex.cc new file mode 100644 index 00000000000..8a803ede81f --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/08_basic_regex/regex.cc @@ -0,0 +1,37 @@ +// { dg-do compile } +// { dg-options "-std=c++0x" } + +// 2007-03-12 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 2007, 2009, 2010 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/>. + +// 7.4 typedef std::regex + +#include <regex> + +void +test01() +{ + std::regex re; +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/28_regex/09_sub_match/cast_char.cc b/libstdc++-v3/testsuite/28_regex/09_sub_match/cast_char.cc new file mode 100644 index 00000000000..6beb9c5cdb2 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/09_sub_match/cast_char.cc @@ -0,0 +1,49 @@ +// { dg-do compile } +// { dg-options "-std=c++0x" } + +// +// 2010-06-09 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.9.1 [re.submatch.members] sub_match members + +#include <regex> +#include <string> +#include <testsuite_hooks.h> + + +void +test01() +{ + bool test __attribute__((unused)) = true; + + typedef char value_type; + typedef std::basic_string<value_type> string_type; + typedef std::sub_match<value_type*> sub_match_type; + value_type test_data[] = "cabbage"; + + sub_match_type sm; + sm.first = test_data + 0; + sm.second = test_data + sizeof(test_data)/sizeof(value_type); + sm.matched = true; + + string_type sm_string = sm; + + VERIFY( sm_string == string_type(test_data) ); +} diff --git a/libstdc++-v3/testsuite/28_regex/09_sub_match/cast_wchar_t.cc b/libstdc++-v3/testsuite/28_regex/09_sub_match/cast_wchar_t.cc new file mode 100644 index 00000000000..6e29ac88c09 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/09_sub_match/cast_wchar_t.cc @@ -0,0 +1,49 @@ +// { dg-do compile } +// { dg-options "-std=c++0x" } + +// +// 2010-06-09 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.9.1 [re.submatch.members] sub_match members + +#include <regex> +#include <string> +#include <testsuite_hooks.h> + + +void +test01() +{ + bool test __attribute__((unused)) = true; + + typedef wchar_t value_type; + typedef std::basic_string<value_type> string_type; + typedef std::sub_match<value_type*> sub_match_type; + value_type test_data[] = L"cabbage"; + + sub_match_type sm; + sm.first = test_data + 0; + sm.second = test_data + sizeof(test_data)/sizeof(value_type); + sm.matched = true; + + string_type sm_string = sm; + + VERIFY( sm_string == string_type(test_data) ); +} diff --git a/libstdc++-v3/testsuite/28_regex/09_sub_match/length.cc b/libstdc++-v3/testsuite/28_regex/09_sub_match/length.cc new file mode 100644 index 00000000000..fc12b920ad9 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/09_sub_match/length.cc @@ -0,0 +1,49 @@ +// { dg-do compile } +// { dg-options "-std=c++0x" } + +// +// 2010-06-09 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.9.1 [re.submatch.members] sub_match members + +#include <regex> +#include <testsuite_hooks.h> + + +void +test01() +{ + bool test __attribute__((unused)) = true; + + typedef std::sub_match<const char*> sm_t; + const char* test_data = "cabbage"; + sm_t::difference_type test_len = 3; + + sm_t sm1; + sm1.first = test_data + 0; + sm1.second = test_data + test_len; + sm1.matched = true; + + sm_t sm2; + sm2.matched = false; + + VERIFY( sm1.length() == test_len ); + VERIFY( sm2.length() == 0 ); +} diff --git a/libstdc++-v3/testsuite/28_regex/09_sub_match/typedefs.cc b/libstdc++-v3/testsuite/28_regex/09_sub_match/typedefs.cc new file mode 100644 index 00000000000..c150da02dac --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/09_sub_match/typedefs.cc @@ -0,0 +1,38 @@ +// { dg-do compile } +// { dg-options "-std=c++0x" } + +// +// 2010-06-07 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.9 Class template sub_match + +#include <regex> + + +void +test01() +{ + typedef std::sub_match<char*> sm; + + typedef sm::value_type value_type; + typedef sm::difference_type difference_type; + typedef sm::iterator iterator; + typedef sm::string_type string_type; +} diff --git a/libstdc++-v3/testsuite/28_regex/10_match_results/ctors/char/default.cc b/libstdc++-v3/testsuite/28_regex/10_match_results/ctors/char/default.cc new file mode 100644 index 00000000000..4c897d7a4a0 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/10_match_results/ctors/char/default.cc @@ -0,0 +1,52 @@ +// { dg-options "-std=c++0x" } + +// 2009-06-10 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 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/>. + +// C++0X [28.10.1] class template match_results constructor + +#include <regex> +#include <testsuite_hooks.h> + +// Tests default constructor of the match_result class. +void test01() +{ + bool test __attribute__((unused)) = true; + + std::cmatch cm; + VERIFY( cm.size() == 0 ); + VERIFY( cm.str() == std::cmatch::string_type() ); +} + +void test02() +{ + bool test __attribute__((unused)) = true; + + std::smatch sm; + VERIFY( sm.size() == 0 ); + VERIFY( sm.str() == std::smatch::string_type() ); +} + +int +main() +{ + test01(); + test02(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/10_match_results/ctors/wchar_t/default.cc b/libstdc++-v3/testsuite/28_regex/10_match_results/ctors/wchar_t/default.cc new file mode 100644 index 00000000000..f8b3d45e867 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/10_match_results/ctors/wchar_t/default.cc @@ -0,0 +1,52 @@ +// { dg-options "-std=c++0x" } + +// 2009-06-05 Stephen M. Webb <stephen.webb@bregmasoft.com> +// +// Copyright (C) 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/>. + +// C++0X [28.10.1] class template match_results constructor + +#include <regex> +#include <testsuite_hooks.h> + +// Tests default constructor of the match_result class. +void test01() +{ + bool test __attribute__((unused)) = true; + + std::wcmatch cm; + VERIFY( cm.size() == 0 ); + VERIFY( cm.str() == std::wcmatch::string_type() ); +} + +void test02() +{ + bool test __attribute__((unused)) = true; + + std::wsmatch sm; + VERIFY( sm.size() == 0 ); + VERIFY( sm.str() == std::wsmatch::string_type() ); +} + +int +main() +{ + test01(); + test02(); + return 0; +}; diff --git a/libstdc++-v3/testsuite/28_regex/10_match_results/typedefs.cc b/libstdc++-v3/testsuite/28_regex/10_match_results/typedefs.cc new file mode 100644 index 00000000000..02bdcdadb71 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/10_match_results/typedefs.cc @@ -0,0 +1,44 @@ +// { dg-do compile } +// { dg-options "-std=c++0x" } + +// +// 2010-06-10 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.10 Class template sub_match + +#include <regex> + +void +test01() +{ + bool test __attribute__((unused)) = true; + typedef std::match_results<char*> mr; + + typedef mr::value_type value_type; + typedef mr::const_reference const_reference; + typedef mr::reference reference; + typedef mr::const_iterator const_iterator; + typedef mr::iterator iterator; + typedef mr::difference_type difference_type; + typedef mr::size_type size_type; + typedef mr::allocator_type allocator_type; + typedef mr::char_type char_type; + typedef mr::string_type string_type; +} diff --git a/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/basic/string_01.cc b/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/basic/string_01.cc new file mode 100644 index 00000000000..4a7161a7967 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/basic/string_01.cc @@ -0,0 +1,63 @@ +// { dg-options "-std=c++0x" } + +// +// 2010-06-11 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.11.2 regex_match +// Tests BRE against a std::string target. + +#include <regex> +#include <testsuite_hooks.h> + +void +test01() +{ + bool test __attribute__((unused)) = true; + + std::regex re("\\(a\\).*", std::regex::basic); + std::string target("aaba"); + std::smatch m; + + VERIFY( std::regex_match(target, m, re) ); + + VERIFY( m.size() == re.mark_count()+1 ); + VERIFY( m.empty() == false ); + VERIFY( m.prefix().first == target.begin() ); + VERIFY( m.prefix().second == target.begin() ); + VERIFY( m.prefix().matched == false ); + VERIFY( m.suffix().first == target.end() ); + VERIFY( m.suffix().second == target.end() ); + VERIFY( m.suffix().matched == false ); + VERIFY( m[0].first == target.begin() ); + VERIFY( m[0].second == target.end() ); + VERIFY( m[0].matched == true ); + VERIFY( m[1].first == target.begin() ); + VERIFY( m[1].second == target.begin()+1 ); + VERIFY( m[1].matched == true ); +} + + +int +main() +{ + test01(); + return 0; +} + diff --git a/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/basic/string_range_00_03.cc b/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/basic/string_range_00_03.cc new file mode 100644 index 00000000000..6c0fdd76f2c --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/basic/string_range_00_03.cc @@ -0,0 +1,60 @@ +// { dg-options "-std=c++0x" } + +// +// 2010-06-16 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.11.2 regex_match +// Tests BRE against a std::string target, exercising range {0,3} + +#include <regex> +#include <testsuite_hooks.h> + +void +test01() +{ + bool test __attribute__((unused)) = true; + + std::regex re("a\\{0,3\\}", std::regex::basic); + std::string target("aa"); + std::smatch m; + + VERIFY( std::regex_match(target, m, re) ); + + VERIFY( m.size() == re.mark_count()+1 ); + VERIFY( m.empty() == false ); + VERIFY( m.prefix().first == target.begin() ); + VERIFY( m.prefix().second == target.begin() ); + VERIFY( m.prefix().matched == false ); + VERIFY( m.suffix().first == target.end() ); + VERIFY( m.suffix().second == target.end() ); + VERIFY( m.suffix().matched == false ); + VERIFY( m[0].first == target.begin() ); + VERIFY( m[0].second == target.end() ); + VERIFY( m[0].matched == true ); +} + + +int +main() +{ + test01(); + return 0; +} + diff --git a/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/basic/string_range_01_03.cc b/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/basic/string_range_01_03.cc new file mode 100644 index 00000000000..3439b544b63 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/basic/string_range_01_03.cc @@ -0,0 +1,60 @@ +// { dg-options "-std=c++0x" } + +// +// 2010-06-16 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.11.2 regex_match +// Tests BRE against a std::string target, exercising range {1,3} + +#include <regex> +#include <testsuite_hooks.h> + +void +test01() +{ + bool test __attribute__((unused)) = true; + + std::regex re("a\\{1,3\\}", std::regex::basic); + std::string target("aa"); + std::smatch m; + + VERIFY( std::regex_match(target, m, re) ); + + VERIFY( m.size() == re.mark_count()+1 ); + VERIFY( m.empty() == false ); + VERIFY( m.prefix().first == target.begin() ); + VERIFY( m.prefix().second == target.begin() ); + VERIFY( m.prefix().matched == false ); + VERIFY( m.suffix().first == target.end() ); + VERIFY( m.suffix().second == target.end() ); + VERIFY( m.suffix().matched == false ); + VERIFY( m[0].first == target.begin() ); + VERIFY( m[0].second == target.end() ); + VERIFY( m[0].matched == true ); +} + + +int +main() +{ + test01(); + return 0; +} + diff --git a/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/basic/string_range_02_03.cc b/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/basic/string_range_02_03.cc new file mode 100644 index 00000000000..dfd00a0f3d7 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/basic/string_range_02_03.cc @@ -0,0 +1,61 @@ +// { dg-options "-std=c++0x" } +// { dg-do run { xfail *-*-* } } + +// +// 2010-06-16 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.11.2 regex_match +// Tests BRE against a std::string target, exercising range {2,3} + +#include <regex> +#include <testsuite_hooks.h> + +void +test01() +{ + bool test __attribute__((unused)) = true; + + std::regex re("a\\{2,3\\}", std::regex::basic); + std::string target("aa"); + std::smatch m; + + VERIFY( std::regex_match(target, m, re) ); + + VERIFY( m.size() == re.mark_count()+1 ); + VERIFY( m.empty() == false ); + VERIFY( m.prefix().first == target.begin() ); + VERIFY( m.prefix().second == target.begin() ); + VERIFY( m.prefix().matched == false ); + VERIFY( m.suffix().first == target.end() ); + VERIFY( m.suffix().second == target.end() ); + VERIFY( m.suffix().matched == false ); + VERIFY( m[0].first == target.begin() ); + VERIFY( m[0].second == target.end() ); + VERIFY( m[0].matched == true ); +} + + +int +main() +{ + test01(); + return 0; +} + diff --git a/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/extended/cstring_plus.cc b/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/extended/cstring_plus.cc new file mode 100644 index 00000000000..ad0f57e221d --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/extended/cstring_plus.cc @@ -0,0 +1,65 @@ +// { dg-options "-std=c++0x" } +// { dg-do run { xfail *-*-* } } + +// +// 2010-06-21 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.11.2 regex_match +// Tests ERE against a C-string target, plus-sign match. + +#include <regex> +#include <testsuite_hooks.h> + +void +test01() +{ + bool test __attribute__((unused)) = true; + + std::regex re("(a+)", std::regex::extended); + const char target[] = "aa"; + std::cmatch m; + + VERIFY( std::regex_match(target, m, re) ); + + VERIFY( re.mark_count() == 1 ); + VERIFY( m.size() == re.mark_count()+1 ); + VERIFY( m.empty() == false ); + VERIFY( m.prefix().first == target ); + VERIFY( m.prefix().second == target ); + VERIFY( m.prefix().matched == false ); + VERIFY( m.suffix().first == target+sizeof(target) ); + VERIFY( m.suffix().second == target+sizeof(target) ); + VERIFY( m.suffix().matched == false ); + VERIFY( m[0].first == target ); + VERIFY( m[0].second == target+sizeof(target) ); + VERIFY( m[0].matched == true ); + VERIFY( m[1].first == target ); + VERIFY( m[1].second == target+sizeof(target) ); + VERIFY( m[1].matched == true ); +} + + +int +main() +{ + test01(); + return 0; +} + diff --git a/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/extended/cstring_questionmark.cc b/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/extended/cstring_questionmark.cc new file mode 100644 index 00000000000..21abea456a9 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/extended/cstring_questionmark.cc @@ -0,0 +1,65 @@ +// { dg-options "-std=c++0x" } +// { dg-do run { xfail *-*-* } } + +// +// 2010-06-21 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.11.2 regex_match +// Tests ERE against a C-string target, question-mark match. + +#include <regex> +#include <testsuite_hooks.h> + +void +test01() +{ + bool test __attribute__((unused)) = true; + + std::regex re("(aa?)", std::regex::extended); + char target[] = "a"; + std::cmatch m; + + VERIFY( std::regex_match(target, m, re) ); + + VERIFY( re.mark_count() == 1 ); + VERIFY( m.size() == re.mark_count()+1 ); + VERIFY( m.empty() == false ); + VERIFY( m.prefix().first == target ); + VERIFY( m.prefix().second == target ); + VERIFY( m.prefix().matched == false ); + VERIFY( m.suffix().first == target+sizeof(target) ); + VERIFY( m.suffix().second == target+sizeof(target) ); + VERIFY( m.suffix().matched == false ); + VERIFY( m[0].first == target ); + VERIFY( m[0].second == target+sizeof(target) ); + VERIFY( m[0].matched == true ); + VERIFY( m[1].first == target ); + VERIFY( m[1].second == target+sizeof(target) ); + VERIFY( m[1].matched == true ); +} + + +int +main() +{ + test01(); + return 0; +} + diff --git a/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/extended/string_any.cc b/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/extended/string_any.cc new file mode 100644 index 00000000000..8d3716b1edf --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/extended/string_any.cc @@ -0,0 +1,60 @@ +// { dg-options "-std=c++0x" } + +// +// 2010-06-11 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.11.2 regex_match +// Tests ERE against a std::string target. + +#include <regex> +#include <testsuite_hooks.h> + +void +test01() +{ + bool test __attribute__((unused)) = true; + + std::regex re(".*", std::regex::extended); + std::string target("aaba"); + std::smatch m; + + VERIFY( std::regex_match(target, m, re) ); + + VERIFY( m.size() == re.mark_count()+1 ); + VERIFY( m.empty() == false ); + VERIFY( m.prefix().first == target.begin() ); + VERIFY( m.prefix().second == target.begin() ); + VERIFY( m.prefix().matched == false ); + VERIFY( m.suffix().first == target.end() ); + VERIFY( m.suffix().second == target.end() ); + VERIFY( m.suffix().matched == false ); + VERIFY( m[0].first == target.begin() ); + VERIFY( m[0].second == target.end() ); + VERIFY( m[0].matched == true ); +} + + +int +main() +{ + test01(); + return 0; +} + diff --git a/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/extended/string_range_00_03.cc b/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/extended/string_range_00_03.cc new file mode 100644 index 00000000000..a0a2e1fa9d8 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/extended/string_range_00_03.cc @@ -0,0 +1,60 @@ +// { dg-options "-std=c++0x" } + +// +// 2010-06-16 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.11.2 regex_match +// Tests ERE against a std::string target, exercising range {0,3} + +#include <regex> +#include <testsuite_hooks.h> + +void +test01() +{ + bool test __attribute__((unused)) = true; + + std::regex re("a{0,3}", std::regex::extended); + std::string target("aa"); + std::smatch m; + + VERIFY( std::regex_match(target, m, re) ); + + VERIFY( m.size() == re.mark_count()+1 ); + VERIFY( m.empty() == false ); + VERIFY( m.prefix().first == target.begin() ); + VERIFY( m.prefix().second == target.begin() ); + VERIFY( m.prefix().matched == false ); + VERIFY( m.suffix().first == target.end() ); + VERIFY( m.suffix().second == target.end() ); + VERIFY( m.suffix().matched == false ); + VERIFY( m[0].first == target.begin() ); + VERIFY( m[0].second == target.end() ); + VERIFY( m[0].matched == true ); +} + + +int +main() +{ + test01(); + return 0; +} + diff --git a/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/extended/string_range_01_03.cc b/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/extended/string_range_01_03.cc new file mode 100644 index 00000000000..b50e07645ab --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/extended/string_range_01_03.cc @@ -0,0 +1,60 @@ +// { dg-options "-std=c++0x" } + +// +// 2010-06-16 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.11.2 regex_match +// Tests ERE against a std::string target, exercising range {1,3} + +#include <regex> +#include <testsuite_hooks.h> + +void +test01() +{ + bool test __attribute__((unused)) = true; + + std::regex re("a{1,3}", std::regex::extended); + std::string target("aa"); + std::smatch m; + + VERIFY( std::regex_match(target, m, re) ); + + VERIFY( m.size() == re.mark_count()+1 ); + VERIFY( m.empty() == false ); + VERIFY( m.prefix().first == target.begin() ); + VERIFY( m.prefix().second == target.begin() ); + VERIFY( m.prefix().matched == false ); + VERIFY( m.suffix().first == target.end() ); + VERIFY( m.suffix().second == target.end() ); + VERIFY( m.suffix().matched == false ); + VERIFY( m[0].first == target.begin() ); + VERIFY( m[0].second == target.end() ); + VERIFY( m[0].matched == true ); +} + + +int +main() +{ + test01(); + return 0; +} + diff --git a/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/extended/string_range_02_03.cc b/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/extended/string_range_02_03.cc new file mode 100644 index 00000000000..ca322a8d4cd --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/11_algorithms/02_match/extended/string_range_02_03.cc @@ -0,0 +1,61 @@ +// { dg-options "-std=c++0x" } +// { dg-do run { xfail *-*-* } } + +// +// 2010-06-16 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.11.2 regex_match +// Tests ERE against a std::string target, exercising range {2,3} + +#include <regex> +#include <testsuite_hooks.h> + +void +test01() +{ + bool test __attribute__((unused)) = true; + + std::regex re("a{2,3}", std::regex::extended); + std::string target("aa"); + std::smatch m; + + VERIFY( std::regex_match(target, m, re) ); + + VERIFY( m.size() == re.mark_count()+1 ); + VERIFY( m.empty() == false ); + VERIFY( m.prefix().first == target.begin() ); + VERIFY( m.prefix().second == target.begin() ); + VERIFY( m.prefix().matched == false ); + VERIFY( m.suffix().first == target.end() ); + VERIFY( m.suffix().second == target.end() ); + VERIFY( m.suffix().matched == false ); + VERIFY( m[0].first == target.begin() ); + VERIFY( m[0].second == target.end() ); + VERIFY( m[0].matched == true ); +} + + +int +main() +{ + test01(); + return 0; +} + diff --git a/libstdc++-v3/testsuite/28_regex/12_iterators/regex_iterator/ctors/char/default.cc b/libstdc++-v3/testsuite/28_regex/12_iterators/regex_iterator/ctors/char/default.cc new file mode 100644 index 00000000000..2de4a0d09b8 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/12_iterators/regex_iterator/ctors/char/default.cc @@ -0,0 +1,35 @@ +// { dg-do compile } +// { dg-options "-std=c++0x" } + +// +// 2010-06-10 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.12.1 Class template regex_iterator + +#include <regex> + +void +test01() +{ + bool test __attribute__((unused)) = true; + std::regex_iterator<char*> it; + std::cregex_iterator cit; + std::sregex_iterator sit; +} diff --git a/libstdc++-v3/testsuite/28_regex/12_iterators/regex_iterator/ctors/wchar_t/default.cc b/libstdc++-v3/testsuite/28_regex/12_iterators/regex_iterator/ctors/wchar_t/default.cc new file mode 100644 index 00000000000..33fb5baa808 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/12_iterators/regex_iterator/ctors/wchar_t/default.cc @@ -0,0 +1,35 @@ +// { dg-do compile } +// { dg-options "-std=c++0x" } + +// +// 2010-06-10 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.12.1 Class template regex_iterator + +#include <regex> + +void +test01() +{ + bool test __attribute__((unused)) = true; + std::regex_iterator<wchar_t*> it; + std::wcregex_iterator cit; + std::wsregex_iterator sit; +} diff --git a/libstdc++-v3/testsuite/28_regex/12_iterators/regex_iterator/typedefs.cc b/libstdc++-v3/testsuite/28_regex/12_iterators/regex_iterator/typedefs.cc new file mode 100644 index 00000000000..8ad88995078 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/12_iterators/regex_iterator/typedefs.cc @@ -0,0 +1,40 @@ +// { dg-do compile } +// { dg-options "-std=c++0x" } + +// +// 2010-06-10 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.12.1 Class template regex_iterator + +#include <regex> + +void +test01() +{ + bool test __attribute__((unused)) = true; + typedef std::regex_iterator<char*> it; + + typedef it::regex_type regex_type; + typedef it::value_type value_type; + typedef it::difference_type difference_type; + typedef it::pointer pointer; + typedef it::reference reference; + typedef it::iterator_category iterator_category; +} diff --git a/libstdc++-v3/testsuite/28_regex/12_iterators/regex_token_iterator/ctors/char/default.cc b/libstdc++-v3/testsuite/28_regex/12_iterators/regex_token_iterator/ctors/char/default.cc new file mode 100644 index 00000000000..5105c7d8732 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/12_iterators/regex_token_iterator/ctors/char/default.cc @@ -0,0 +1,35 @@ +// { dg-do compile } +// { dg-options "-std=c++0x" } + +// +// 2010-06-10 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.12.2 Class template regex_token_iterator + +#include <regex> + +void +test01() +{ + bool test __attribute__((unused)) = true; + std::regex_token_iterator<char*> it; + std::cregex_token_iterator cit; + std::sregex_token_iterator sit; +} diff --git a/libstdc++-v3/testsuite/28_regex/12_iterators/regex_token_iterator/ctors/wchar_t/default.cc b/libstdc++-v3/testsuite/28_regex/12_iterators/regex_token_iterator/ctors/wchar_t/default.cc new file mode 100644 index 00000000000..fe918c80d71 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/12_iterators/regex_token_iterator/ctors/wchar_t/default.cc @@ -0,0 +1,35 @@ +// { dg-do compile } +// { dg-options "-std=gnu++0x" } + +// +// 2010-06-10 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.12.2 Class template regex_token_iterator + +#include <regex> + +void +test01() +{ + bool test __attribute__((unused)) = true; + std::regex_token_iterator<wchar_t*> it; + std::wcregex_token_iterator cit; + std::wsregex_token_iterator sit; +} diff --git a/libstdc++-v3/testsuite/28_regex/12_iterators/regex_token_iterator/typedefs.cc b/libstdc++-v3/testsuite/28_regex/12_iterators/regex_token_iterator/typedefs.cc new file mode 100644 index 00000000000..d765ab2f403 --- /dev/null +++ b/libstdc++-v3/testsuite/28_regex/12_iterators/regex_token_iterator/typedefs.cc @@ -0,0 +1,40 @@ +// { dg-do compile } +// { dg-options "-std=c++0x" } + +// +// 2010-06-10 Stephen M. Webb <stephen.webb@bregmasoft.ca> +// +// Copyright (C) 2010 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/>. + +// 28.12.2 Class template regex_token_iterator + +#include <regex> + +void +test01() +{ + bool test __attribute__((unused)) = true; + typedef std::regex_token_iterator<char*> it; + + typedef it::regex_type regex_type; + typedef it::value_type value_type; + typedef it::difference_type difference_type; + typedef it::pointer pointer; + typedef it::reference reference; + typedef it::iterator_category iterator_category; +} diff --git a/libstdc++-v3/testsuite/28_regex/headers/regex/std_c++0x_neg.cc b/libstdc++-v3/testsuite/28_regex/headers/regex/std_c++0x_neg.cc index cf4e4d82db2..3afec89b710 100644 --- a/libstdc++-v3/testsuite/28_regex/headers/regex/std_c++0x_neg.cc +++ b/libstdc++-v3/testsuite/28_regex/headers/regex/std_c++0x_neg.cc @@ -18,7 +18,7 @@ // with this library; see the file COPYING3. If not see // <http://www.gnu.org/licenses/>. -#include <regex> // { dg-excess-errors "In file included from" } +#include <regex> // { dg-error "upcoming ISO" "" { target *-*-* } 31 } diff --git a/libstdc++-v3/testsuite/29_atomics/atomic/cons/assign_neg.cc b/libstdc++-v3/testsuite/29_atomics/atomic/cons/assign_neg.cc index 380540a20a7..66f5a81a5e5 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic/cons/assign_neg.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic/cons/assign_neg.cc @@ -28,20 +28,5 @@ int main() return 0; } -// { dg-error "used here" "" { target *-*-* } 521 } -// { dg-error "deleted function" "" { target *-*-* } 230 } -// { dg-error "deleted function" "" { target *-*-* } 248 } -// { dg-error "deleted function" "" { target *-*-* } 266 } -// { dg-error "deleted function" "" { target *-*-* } 284 } -// { dg-error "deleted function" "" { target *-*-* } 302 } -// { dg-error "deleted function" "" { target *-*-* } 320 } -// { dg-error "deleted function" "" { target *-*-* } 338 } -// { dg-error "deleted function" "" { target *-*-* } 356 } -// { dg-error "deleted function" "" { target *-*-* } 374 } -// { dg-error "deleted function" "" { target *-*-* } 392 } -// { dg-error "deleted function" "" { target *-*-* } 410 } -// { dg-error "deleted function" "" { target *-*-* } 428 } -// { dg-error "deleted function" "" { target *-*-* } 446 } -// { dg-error "deleted function" "" { target *-*-* } 464 } -// { dg-error "deleted function" "" { target *-*-* } 482 } -// { dg-excess-errors "In member function" } +// { dg-error "ambiguous" "" { target *-*-* } 522 } +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/29_atomics/atomic/cons/copy_neg.cc b/libstdc++-v3/testsuite/29_atomics/atomic/cons/copy_neg.cc index 21f77f4c21b..69b1eff1297 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic/cons/copy_neg.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic/cons/copy_neg.cc @@ -28,20 +28,5 @@ int main() return 0; } -// { dg-error "used here" "" { target *-*-* } 560 } -// { dg-error "deleted function" "" { target *-*-* } 229 } -// { dg-error "deleted function" "" { target *-*-* } 247 } -// { dg-error "deleted function" "" { target *-*-* } 265 } -// { dg-error "deleted function" "" { target *-*-* } 283 } -// { dg-error "deleted function" "" { target *-*-* } 301 } -// { dg-error "deleted function" "" { target *-*-* } 319 } -// { dg-error "deleted function" "" { target *-*-* } 337 } -// { dg-error "deleted function" "" { target *-*-* } 355 } -// { dg-error "deleted function" "" { target *-*-* } 373 } -// { dg-error "deleted function" "" { target *-*-* } 391 } -// { dg-error "deleted function" "" { target *-*-* } 409 } -// { dg-error "deleted function" "" { target *-*-* } 427 } -// { dg-error "deleted function" "" { target *-*-* } 445 } -// { dg-error "deleted function" "" { target *-*-* } 463 } -// { dg-error "deleted function" "" { target *-*-* } 481 } -// { dg-excess-errors "In member function" } +// { dg-error "deleted" "" { target *-*-* } 561 } +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/29_atomics/atomic_address/cons/aggregate.cc b/libstdc++-v3/testsuite/29_atomics/atomic_address/cons/aggregate.cc index fa35b9cb208..5cd2ef9fc4e 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic_address/cons/aggregate.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic_address/cons/aggregate.cc @@ -1,7 +1,7 @@ // { dg-options "-std=gnu++0x" } // { dg-do compile } -// Copyright (C) 2008, 2009 Free Software Foundation, Inc. +// Copyright (C) 2008, 2009, 2010 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 @@ -19,9 +19,10 @@ // <http://www.gnu.org/licenses/>. #include <atomic> +#include <cstddef> int main() { - std::atomic_address a = { { NULL } }; + std::atomic_address a __attribute__((unused)) = { { NULL } }; return 0; } diff --git a/libstdc++-v3/testsuite/29_atomics/atomic_address/cons/assign_neg.cc b/libstdc++-v3/testsuite/29_atomics/atomic_address/cons/assign_neg.cc index 0ec1321e116..9405e459bf8 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic_address/cons/assign_neg.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic_address/cons/assign_neg.cc @@ -26,7 +26,6 @@ void test01() typedef std::atomic_address test_type; test_type t1; test_type t2; - t1 = t2; + t1 = t2; // { dg-error "ambiguous" } } -// { dg-error "used here" "" { target *-*-* } 29 } -// { dg-excess-errors "deleted function" } +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/29_atomics/atomic_address/cons/copy_neg.cc b/libstdc++-v3/testsuite/29_atomics/atomic_address/cons/copy_neg.cc index 4ede58ff8bd..69f78eed101 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic_address/cons/copy_neg.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic_address/cons/copy_neg.cc @@ -25,7 +25,7 @@ void test01() // Copy. typedef std::atomic_address test_type; test_type t1; - test_type t2(t1); + test_type t2(t1); // { dg-error "deleted" } } -// { dg-error "used here" "" { target *-*-* } 28 } -// { dg-excess-errors "deleted function" } + +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/29_atomics/atomic_address/cons/single_value.cc b/libstdc++-v3/testsuite/29_atomics/atomic_address/cons/single_value.cc index 7a2e94977a7..b7e524a38f5 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic_address/cons/single_value.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic_address/cons/single_value.cc @@ -1,6 +1,6 @@ // { dg-options "-std=gnu++0x" } -// Copyright (C) 2008, 2009 Free Software Foundation, Inc. +// Copyright (C) 2008, 2009, 2010 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 @@ -22,7 +22,7 @@ int main() { // Single value constructor. - void* v = NULL; + void* v = 0; std::atomic_address a(v); return 0; } diff --git a/libstdc++-v3/testsuite/29_atomics/atomic_flag/cons/1.cc b/libstdc++-v3/testsuite/29_atomics/atomic_flag/cons/1.cc index cfb0c1bbb7a..b7724403412 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic_flag/cons/1.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic_flag/cons/1.cc @@ -1,7 +1,7 @@ // { dg-options "-std=gnu++0x" } // { dg-do compile } -// Copyright (C) 2008, 2009 Free Software Foundation, Inc. +// Copyright (C) 2008, 2009, 2010 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 @@ -23,5 +23,5 @@ void test01() { using namespace std; - atomic_flag af = ATOMIC_FLAG_INIT; + atomic_flag af __attribute__((unused)) = ATOMIC_FLAG_INIT; } diff --git a/libstdc++-v3/testsuite/29_atomics/atomic_flag/cons/assign_neg.cc b/libstdc++-v3/testsuite/29_atomics/atomic_flag/cons/assign_neg.cc index 924add880cf..27c60ca2dc1 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic_flag/cons/assign_neg.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic_flag/cons/assign_neg.cc @@ -26,7 +26,7 @@ void test01() typedef std::atomic_flag test_type; test_type t1; test_type t2; - t1 = t2; + t1 = t2; // { dg-error "deleted" } } -// { dg-error "used here" "" { target *-*-* } 29 } -// { dg-excess-errors "deleted function" } + +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/29_atomics/atomic_flag/cons/copy_neg.cc b/libstdc++-v3/testsuite/29_atomics/atomic_flag/cons/copy_neg.cc index 22cea6a3916..9244f683d1f 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic_flag/cons/copy_neg.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic_flag/cons/copy_neg.cc @@ -25,7 +25,7 @@ void test01() // Copy. typedef std::atomic_flag test_type; test_type t1; - test_type t2(t1); + test_type t2(t1); // { dg-error "deleted" } } -// { dg-error "used here" "" { target *-*-* } 28 } -// { dg-excess-errors "deleted function" } + +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/29_atomics/atomic_integral/cons/assign_neg.cc b/libstdc++-v3/testsuite/29_atomics/atomic_integral/cons/assign_neg.cc index d21e30c3310..751c6cdc696 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic_integral/cons/assign_neg.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic_integral/cons/assign_neg.cc @@ -1,7 +1,7 @@ // { dg-options "-std=gnu++0x" } // { dg-do compile } -// Copyright (C) 2008, 2009 Free Software Foundation, Inc. +// Copyright (C) 2008, 2009, 2010 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 @@ -29,12 +29,5 @@ int main() return 0; } -// { dg-error "used here" "" { target *-*-* } 521 } -// { dg-excess-errors "deleted function" } -// { dg-excess-errors "deleted function" } -// { dg-error "instantiated from" "" { target *-*-* } 28 } -// { dg-error "instantiated from" "" { target *-*-* } 528 } -// { dg-error "instantiated from" "" { target *-*-* } 170 } -// { dg-error "instantiated from" "" { target *-*-* } 399 } -// { dg-error "instantiated from" "" { target *-*-* } 168 } -// { dg-excess-errors "In member function" } +// { dg-error "ambiguous" "" { target *-*-* } 522 } +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/29_atomics/atomic_integral/cons/copy_neg.cc b/libstdc++-v3/testsuite/29_atomics/atomic_integral/cons/copy_neg.cc index be0580a46b2..976a6991d43 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic_integral/cons/copy_neg.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic_integral/cons/copy_neg.cc @@ -1,7 +1,7 @@ // { dg-options "-std=gnu++0x" } // { dg-do compile } -// Copyright (C) 2008, 2009 Free Software Foundation, Inc. +// Copyright (C) 2008, 2009, 2010 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 @@ -29,12 +29,5 @@ int main() return 0; } -// { dg-error "used here" "" { target *-*-* } 560 } -// { dg-excess-errors "deleted function" } -// { dg-excess-errors "deleted function" } -// { dg-error "instantiated from" "" { target *-*-* } 28 } -// { dg-error "instantiated from" "" { target *-*-* } 566 } -// { dg-error "instantiated from" "" { target *-*-* } 170 } -// { dg-error "instantiated from" "" { target *-*-* } 399 } -// { dg-error "instantiated from" "" { target *-*-* } 168 } -// { dg-excess-errors "In member function" } +// { dg-error "deleted" "" { target *-*-* } 561 } +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc b/libstdc++-v3/testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc index c7a5dc3098e..2a112c95838 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc @@ -2,7 +2,7 @@ // { dg-do compile } // -*- C++ -*- -// Copyright (C) 2008, 2009 Free Software Foundation, Inc. +// Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc. // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU General Public License as @@ -27,7 +27,7 @@ int main() return 0; } -// { dg-error "operator" "" { target *-*-* } 404 } // { dg-error "operator" "" { target *-*-* } 405 } // { dg-error "operator" "" { target *-*-* } 406 } +// { dg-error "operator" "" { target *-*-* } 407 } // { dg-excess-errors "In file included from" } diff --git a/libstdc++-v3/testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc b/libstdc++-v3/testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc index 59598283df1..974c947e664 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc @@ -2,7 +2,7 @@ // { dg-do compile } // -*- C++ -*- -// Copyright (C) 2008, 2009 Free Software Foundation, Inc. +// Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc. // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU General Public License as @@ -28,7 +28,6 @@ int main() return 0; } -// { dg-error "operator" "" { target *-*-* } 375 } // { dg-error "operator" "" { target *-*-* } 376 } // { dg-error "operator" "" { target *-*-* } 377 } -// { dg-excess-errors "In file included from" } +// { dg-error "operator" "" { target *-*-* } 378 } diff --git a/libstdc++-v3/testsuite/29_atomics/atomic_integral/operators/increment_neg.cc b/libstdc++-v3/testsuite/29_atomics/atomic_integral/operators/increment_neg.cc index 9cff37774ec..4927fcf1854 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic_integral/operators/increment_neg.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic_integral/operators/increment_neg.cc @@ -2,7 +2,7 @@ // { dg-do compile } // -*- C++ -*- -// Copyright (C) 2008, 2009 Free Software Foundation, Inc. +// Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc. // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU General Public License as @@ -28,7 +28,6 @@ int main() return 0; } -// { dg-error "operator" "" { target *-*-* } 353 } // { dg-error "operator" "" { target *-*-* } 354 } // { dg-error "operator" "" { target *-*-* } 355 } -// { dg-excess-errors "In file included from" } +// { dg-error "operator" "" { target *-*-* } 356 } diff --git a/libstdc++-v3/testsuite/30_threads/condition_variable/cons/assign_neg.cc b/libstdc++-v3/testsuite/30_threads/condition_variable/cons/assign_neg.cc index 9e9ad8a7b03..90648207e73 100644 --- a/libstdc++-v3/testsuite/30_threads/condition_variable/cons/assign_neg.cc +++ b/libstdc++-v3/testsuite/30_threads/condition_variable/cons/assign_neg.cc @@ -28,8 +28,7 @@ void test01() // assign std::condition_variable c1; std::condition_variable c2; - c1 = c2; + c1 = c2; // { dg-error "deleted" } } -// { dg-error "used here" "" { target *-*-* } 31 } -// { dg-error "deleted function" "" { target *-*-* } 70 } +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/30_threads/condition_variable/cons/copy_neg.cc b/libstdc++-v3/testsuite/30_threads/condition_variable/cons/copy_neg.cc index 5765351554e..588e4f3c954 100644 --- a/libstdc++-v3/testsuite/30_threads/condition_variable/cons/copy_neg.cc +++ b/libstdc++-v3/testsuite/30_threads/condition_variable/cons/copy_neg.cc @@ -27,8 +27,7 @@ void test01() { // copy std::condition_variable c1; - std::condition_variable c2(c1); + std::condition_variable c2(c1); // { dg-error "deleted" } } -// { dg-error "used here" "" { target *-*-* } 30 } -// { dg-error "deleted function" "" { target *-*-* } 69 } +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/30_threads/condition_variable_any/cons/assign_neg.cc b/libstdc++-v3/testsuite/30_threads/condition_variable_any/cons/assign_neg.cc index 8fa79a2cf1a..dac106c2ec4 100644 --- a/libstdc++-v3/testsuite/30_threads/condition_variable_any/cons/assign_neg.cc +++ b/libstdc++-v3/testsuite/30_threads/condition_variable_any/cons/assign_neg.cc @@ -28,8 +28,7 @@ void test01() // assign std::condition_variable_any c1; std::condition_variable_any c2; - c1 = c2; + c1 = c2; // { dg-error "deleted" } } -// { dg-error "used here" "" { target *-*-* } 31 } -// { dg-error "deleted function" "" { target *-*-* } 179 } +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/30_threads/condition_variable_any/cons/copy_neg.cc b/libstdc++-v3/testsuite/30_threads/condition_variable_any/cons/copy_neg.cc index 344f90c961c..157f60f0335 100644 --- a/libstdc++-v3/testsuite/30_threads/condition_variable_any/cons/copy_neg.cc +++ b/libstdc++-v3/testsuite/30_threads/condition_variable_any/cons/copy_neg.cc @@ -27,8 +27,7 @@ void test01() { // copy std::condition_variable_any c1; - std::condition_variable_any c2(c1); + std::condition_variable_any c2(c1); // { dg-error "deleted" } } -// { dg-error "used here" "" { target *-*-* } 30 } -// { dg-error "deleted function" "" { target *-*-* } 178 } +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/30_threads/future/cons/assign_neg.cc b/libstdc++-v3/testsuite/30_threads/future/cons/assign_neg.cc index eef41497055..2aad5e9aa0f 100644 --- a/libstdc++-v3/testsuite/30_threads/future/cons/assign_neg.cc +++ b/libstdc++-v3/testsuite/30_threads/future/cons/assign_neg.cc @@ -31,8 +31,7 @@ void test01() // assign std::future<int>& p1 = get(); std::future<int>& p2 = get(); - p1 = p2; + p1 = p2; // { dg-error "deleted" } } -// { dg-error "used here" "" { target *-*-* } 34 } -// { dg-error "deleted function" "" { target *-*-* } 581 } +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/30_threads/future/cons/copy_neg.cc b/libstdc++-v3/testsuite/30_threads/future/cons/copy_neg.cc index 14d7046bed5..5e6bccad82b 100644 --- a/libstdc++-v3/testsuite/30_threads/future/cons/copy_neg.cc +++ b/libstdc++-v3/testsuite/30_threads/future/cons/copy_neg.cc @@ -30,8 +30,7 @@ void test01() { // copy std::future<int>& p1 = get(); - std::future<int> p2(p1); + std::future<int> p2(p1); // { dg-error "deleted" } } -// { dg-error "used here" "" { target *-*-* } 33 } -// { dg-error "deleted function" "" { target *-*-* } 580 } +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/30_threads/headers/condition_variable/std_c++0x_neg.cc b/libstdc++-v3/testsuite/30_threads/headers/condition_variable/std_c++0x_neg.cc index d1e72310901..e31e91fa214 100644 --- a/libstdc++-v3/testsuite/30_threads/headers/condition_variable/std_c++0x_neg.cc +++ b/libstdc++-v3/testsuite/30_threads/headers/condition_variable/std_c++0x_neg.cc @@ -18,7 +18,7 @@ // with this library; see the file COPYING3. If not see // <http://www.gnu.org/licenses/>. -#include <condition_variable> // { dg-excess-errors "In file included from" } +#include <condition_variable> // { dg-error "upcoming ISO" "" { target *-*-* } 31 } diff --git a/libstdc++-v3/testsuite/30_threads/headers/future/std_c++0x_neg.cc b/libstdc++-v3/testsuite/30_threads/headers/future/std_c++0x_neg.cc index 5f021b8e5ac..b9fb18d9dad 100644 --- a/libstdc++-v3/testsuite/30_threads/headers/future/std_c++0x_neg.cc +++ b/libstdc++-v3/testsuite/30_threads/headers/future/std_c++0x_neg.cc @@ -18,7 +18,7 @@ // with this library; see the file COPYING3. If not see // <http://www.gnu.org/licenses/>. -#include <future> // { dg-excess-errors "In file included from" } +#include <future> // { dg-error "upcoming ISO" "" { target *-*-* } 31 } diff --git a/libstdc++-v3/testsuite/30_threads/headers/mutex/std_c++0x_neg.cc b/libstdc++-v3/testsuite/30_threads/headers/mutex/std_c++0x_neg.cc index 5d2a70b3add..ed993d5f83b 100644 --- a/libstdc++-v3/testsuite/30_threads/headers/mutex/std_c++0x_neg.cc +++ b/libstdc++-v3/testsuite/30_threads/headers/mutex/std_c++0x_neg.cc @@ -18,7 +18,7 @@ // with this library; see the file COPYING3. If not see // <http://www.gnu.org/licenses/>. -#include <mutex> // { dg-excess-errors "In file included from" } +#include <mutex> // { dg-error "upcoming ISO" "" { target *-*-* } 31 } diff --git a/libstdc++-v3/testsuite/30_threads/headers/thread/std_c++0x_neg.cc b/libstdc++-v3/testsuite/30_threads/headers/thread/std_c++0x_neg.cc index 9d86cce2fcc..d056c023f0f 100644 --- a/libstdc++-v3/testsuite/30_threads/headers/thread/std_c++0x_neg.cc +++ b/libstdc++-v3/testsuite/30_threads/headers/thread/std_c++0x_neg.cc @@ -20,6 +20,6 @@ // with this library; see the file COPYING3. If not see // <http://www.gnu.org/licenses/>. -#include <thread> // { dg-excess-errors "In file included from" } +#include <thread> // { dg-error "upcoming ISO" "" { target *-*-* } 31 } diff --git a/libstdc++-v3/testsuite/30_threads/mutex/cons/assign_neg.cc b/libstdc++-v3/testsuite/30_threads/mutex/cons/assign_neg.cc index 078cffceab8..20122348e6d 100644 --- a/libstdc++-v3/testsuite/30_threads/mutex/cons/assign_neg.cc +++ b/libstdc++-v3/testsuite/30_threads/mutex/cons/assign_neg.cc @@ -3,7 +3,7 @@ // { dg-require-cstdint "" } // { dg-require-gthreads "" } -// Copyright (C) 2008, 2009 Free Software Foundation, Inc. +// Copyright (C) 2008, 2009, 2010 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 @@ -29,8 +29,7 @@ void test01() typedef std::mutex mutex_type; mutex_type m1; mutex_type m2; - m1 = m2; + m1 = m2; // { dg-error "deleted" } } -// { dg-error "used here" "" { target *-*-* } 32 } -// { dg-error "deleted function" "" { target *-*-* } 83 } +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/30_threads/mutex/cons/copy_neg.cc b/libstdc++-v3/testsuite/30_threads/mutex/cons/copy_neg.cc index e13a0f6cfba..3fd1cd97784 100644 --- a/libstdc++-v3/testsuite/30_threads/mutex/cons/copy_neg.cc +++ b/libstdc++-v3/testsuite/30_threads/mutex/cons/copy_neg.cc @@ -3,7 +3,7 @@ // { dg-require-cstdint "" } // { dg-require-gthreads "" } -// Copyright (C) 2008, 2009 Free Software Foundation, Inc. +// Copyright (C) 2008, 2009, 2010 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 @@ -28,8 +28,7 @@ void test01() // assign typedef std::mutex mutex_type; mutex_type m1; - mutex_type m2(m1); + mutex_type m2(m1); // { dg-error "deleted" } } -// { dg-error "used here" "" { target *-*-* } 31 } -// { dg-error "deleted function" "" { target *-*-* } 82 } +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/30_threads/packaged_task/cons/assign_neg.cc b/libstdc++-v3/testsuite/30_threads/packaged_task/cons/assign_neg.cc index 2b57a1c5b2f..414c861cc44 100644 --- a/libstdc++-v3/testsuite/30_threads/packaged_task/cons/assign_neg.cc +++ b/libstdc++-v3/testsuite/30_threads/packaged_task/cons/assign_neg.cc @@ -29,8 +29,7 @@ void test01() // assign std::packaged_task<int()> p1; std::packaged_task<int()> p2; - p1 = p2; + p1 = p2; // { dg-error "deleted" } } -// { dg-error "used here" "" { target *-*-* } 32 } -// { dg-error "deleted function" "" { target *-*-* } 1228 } +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/30_threads/packaged_task/cons/copy_neg.cc b/libstdc++-v3/testsuite/30_threads/packaged_task/cons/copy_neg.cc index baf718354e5..93b0821943c 100644 --- a/libstdc++-v3/testsuite/30_threads/packaged_task/cons/copy_neg.cc +++ b/libstdc++-v3/testsuite/30_threads/packaged_task/cons/copy_neg.cc @@ -28,8 +28,7 @@ void test01() { // copy std::packaged_task<int()> p1; - std::packaged_task<int()> p2(p1); + std::packaged_task<int()> p2(p1); // { dg-error "deleted" } } -// { dg-error "used here" "" { target *-*-* } 31 } -// { dg-error "deleted function" "" { target *-*-* } 1227 } +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/30_threads/promise/cons/assign_neg.cc b/libstdc++-v3/testsuite/30_threads/promise/cons/assign_neg.cc index 80b5e06e1d0..50b1c6e17bf 100644 --- a/libstdc++-v3/testsuite/30_threads/promise/cons/assign_neg.cc +++ b/libstdc++-v3/testsuite/30_threads/promise/cons/assign_neg.cc @@ -29,8 +29,7 @@ void test01() // assign std::promise<int> p1; std::promise<int> p2; - p1 = p2; + p1 = p2; // { dg-error "deleted" } } -// { dg-error "used here" "" { target *-*-* } 32 } -// { dg-error "deleted function" "" { target *-*-* } 871 } +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/30_threads/promise/cons/copy_neg.cc b/libstdc++-v3/testsuite/30_threads/promise/cons/copy_neg.cc index 27884b0bd1a..5e43d0b1fda 100644 --- a/libstdc++-v3/testsuite/30_threads/promise/cons/copy_neg.cc +++ b/libstdc++-v3/testsuite/30_threads/promise/cons/copy_neg.cc @@ -28,8 +28,7 @@ void test01() { // copy std::promise<int> p1; - std::promise<int> p2(p1); + std::promise<int> p2(p1); // { dg-error "deleted" } } -// { dg-error "used here" "" { target *-*-* } 31 } -// { dg-error "deleted function" "" { target *-*-* } 855 } +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/30_threads/recursive_mutex/cons/assign_neg.cc b/libstdc++-v3/testsuite/30_threads/recursive_mutex/cons/assign_neg.cc index 6c6cefa177a..2eeefd32c32 100644 --- a/libstdc++-v3/testsuite/30_threads/recursive_mutex/cons/assign_neg.cc +++ b/libstdc++-v3/testsuite/30_threads/recursive_mutex/cons/assign_neg.cc @@ -3,7 +3,7 @@ // { dg-require-cstdint "" } // { dg-require-gthreads "" } -// Copyright (C) 2008, 2009 Free Software Foundation, Inc. +// Copyright (C) 2008, 2009, 2010 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 @@ -29,8 +29,7 @@ void test01() typedef std::recursive_mutex mutex_type; mutex_type m1; mutex_type m2; - m1 = m2; + m1 = m2; // { dg-error "deleted" } } -// { dg-error "used here" "" { target *-*-* } 32 } -// { dg-error "deleted function" "" { target *-*-* } 135 } +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/30_threads/recursive_mutex/cons/copy_neg.cc b/libstdc++-v3/testsuite/30_threads/recursive_mutex/cons/copy_neg.cc index b62011b8b56..232a70103a4 100644 --- a/libstdc++-v3/testsuite/30_threads/recursive_mutex/cons/copy_neg.cc +++ b/libstdc++-v3/testsuite/30_threads/recursive_mutex/cons/copy_neg.cc @@ -3,7 +3,7 @@ // { dg-require-cstdint "" } // { dg-require-gthreads "" } -// Copyright (C) 2008, 2009 Free Software Foundation, Inc. +// Copyright (C) 2008, 2009, 2010 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 @@ -28,8 +28,7 @@ void test01() // assign typedef std::recursive_mutex mutex_type; mutex_type m1; - mutex_type m2(m1); + mutex_type m2(m1); // { dg-error "deleted" } } -// { dg-error "used here" "" { target *-*-* } 31 } -// { dg-error "deleted function" "" { target *-*-* } 134 } +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc b/libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc index 2e092bedd11..1694423cb1f 100644 --- a/libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc +++ b/libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc @@ -3,7 +3,7 @@ // { dg-require-cstdint "" } // { dg-require-gthreads "" } -// Copyright (C) 2008, 2009 Free Software Foundation, Inc. +// Copyright (C) 2008, 2009, 2010 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 @@ -29,8 +29,7 @@ void test01() typedef std::recursive_timed_mutex mutex_type; mutex_type m1; mutex_type m2; - m1 = m2; + m1 = m2; // { dg-error "deleted" } } -// { dg-error "used here" "" { target *-*-* } 32 } -// { dg-error "deleted function" "" { target *-*-* } 298 } +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc b/libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc index 9d10a7dac55..c729d5b76a2 100644 --- a/libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc +++ b/libstdc++-v3/testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc @@ -3,7 +3,7 @@ // { dg-require-cstdint "" } // { dg-require-gthreads "" } -// Copyright (C) 2008, 2009 Free Software Foundation, Inc. +// Copyright (C) 2008, 2009, 2010 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 @@ -28,8 +28,7 @@ void test01() // assign typedef std::recursive_timed_mutex mutex_type; mutex_type m1; - mutex_type m2(m1); + mutex_type m2(m1); // { dg-error "deleted" } } -// { dg-error "used here" "" { target *-*-* } 31 } -// { dg-error "deleted function" "" { target *-*-* } 297 } +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/30_threads/thread/cons/assign_neg.cc b/libstdc++-v3/testsuite/30_threads/thread/cons/assign_neg.cc index f45b9f203ae..406d16085a3 100644 --- a/libstdc++-v3/testsuite/30_threads/thread/cons/assign_neg.cc +++ b/libstdc++-v3/testsuite/30_threads/thread/cons/assign_neg.cc @@ -28,8 +28,7 @@ void test01() typedef std::thread test_type; test_type t1; test_type t2; - t1 = t2; + t1 = t2; // { dg-error "deleted" } } -// { dg-error "used here" "" { target *-*-* } 31 } -// { dg-error "deleted function" "" { target *-*-* } 149 } +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/30_threads/thread/cons/copy_neg.cc b/libstdc++-v3/testsuite/30_threads/thread/cons/copy_neg.cc index ce5034bf502..db06e72b0f3 100644 --- a/libstdc++-v3/testsuite/30_threads/thread/cons/copy_neg.cc +++ b/libstdc++-v3/testsuite/30_threads/thread/cons/copy_neg.cc @@ -27,9 +27,13 @@ void test01() // copy typedef std::thread test_type; test_type t1; - test_type t2(t1); // XXX this is failing for the wrong reason + test_type t2(t1); // { dg-error "deleted" "" { xfail *-*-* } } } -// { dg-error "here" "" { target *-*-* } 30 } -// { dg-error "deleted function" "" { target *-*-* } 127 } -// { dg-excess-errors "In file included from" } +// This is failing for the wrong reason; it should fail because we're +// trying to call the deleted copy constructor, but instead it fails +// because we try to call the thread(_Callable&&,_Args&&...) constructor +// and fail because thread isn't callable. But that's OK for now. +// { dg-error "" "" { target *-*-* } 30 } + +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/30_threads/timed_mutex/cons/assign_neg.cc b/libstdc++-v3/testsuite/30_threads/timed_mutex/cons/assign_neg.cc index 4648196966d..7c9199f321b 100644 --- a/libstdc++-v3/testsuite/30_threads/timed_mutex/cons/assign_neg.cc +++ b/libstdc++-v3/testsuite/30_threads/timed_mutex/cons/assign_neg.cc @@ -3,7 +3,7 @@ // { dg-require-cstdint "" } // { dg-require-gthreads "" } -// Copyright (C) 2008, 2009 Free Software Foundation, Inc. +// Copyright (C) 2008, 2009, 2010 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 @@ -29,8 +29,7 @@ void test01() typedef std::timed_mutex mutex_type; mutex_type m1; mutex_type m2; - m1 = m2; + m1 = m2; // { dg-error "deleted" } } -// { dg-error "used here" "" { target *-*-* } 32 } -// { dg-error "deleted function" "" { target *-*-* } 193 } +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/30_threads/timed_mutex/cons/copy_neg.cc b/libstdc++-v3/testsuite/30_threads/timed_mutex/cons/copy_neg.cc index 716b0562a42..2c388962e45 100644 --- a/libstdc++-v3/testsuite/30_threads/timed_mutex/cons/copy_neg.cc +++ b/libstdc++-v3/testsuite/30_threads/timed_mutex/cons/copy_neg.cc @@ -3,7 +3,7 @@ // { dg-require-cstdint "" } // { dg-require-gthreads "" } -// Copyright (C) 2008, 2009 Free Software Foundation, Inc. +// Copyright (C) 2008, 2009, 2010 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 @@ -28,8 +28,7 @@ void test01() // assign typedef std::timed_mutex mutex_type; mutex_type m1; - mutex_type m2(m1); + mutex_type m2(m1); // { dg-error "deleted" } } -// { dg-error "used here" "" { target *-*-* } 31 } -// { dg-error "deleted function" "" { target *-*-* } 192 } +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/ext/ext_pointer/1_neg.cc b/libstdc++-v3/testsuite/ext/ext_pointer/1_neg.cc index bab32fa0049..0ceb9a6597a 100644 --- a/libstdc++-v3/testsuite/ext/ext_pointer/1_neg.cc +++ b/libstdc++-v3/testsuite/ext/ext_pointer/1_neg.cc @@ -91,13 +91,4 @@ void test01(void) { aptr5 = __const_pointer_cast<B_pointer>(cbptr); // ok } -// { dg-error "invalid conversion " "" { target *-*-* } 314 } -// { dg-error "initializing argument 1 of" "" { target *-*-* } 314 } -// { dg-error "invalid conversion " "" { target *-*-* } 308 } -// { dg-error "initializing argument 1 of" "" { target *-*-* } 308 } -// { dg-error "invalid conversion " "" { target *-*-* } 331 } -// { dg-error "initializing argument 1 of" "" { target *-*-* } 331 } -// { dg-error "invalid conversion " "" { target *-*-* } 339 } -// { dg-error "initializing argument 1 of" "" { target *-*-* } 339 } -// { dg-excess-errors "In constructor" } - +// { dg-prune-output "include" } diff --git a/libstdc++-v3/testsuite/ext/mt_allocator/22309_thread.cc b/libstdc++-v3/testsuite/ext/mt_allocator/22309_thread.cc index bd52fd34545..609f188aade 100644 --- a/libstdc++-v3/testsuite/ext/mt_allocator/22309_thread.cc +++ b/libstdc++-v3/testsuite/ext/mt_allocator/22309_thread.cc @@ -1,7 +1,7 @@ // { dg-require-sharedlib "" } // { dg-options "-g -O2 -pthread -ldl" { target *-*-linux* } } -// Copyright (C) 2004, 2005, 2009 Free Software Foundation, Inc. +// Copyright (C) 2004, 2005, 2009, 2010 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 @@ -93,7 +93,7 @@ int main (void) { pthread_t th; - pthread_create(&th, NULL, tf, NULL); - pthread_join(th, NULL); + pthread_create(&th, 0, tf, 0); + pthread_join(th, 0); return 0; } diff --git a/libstdc++-v3/testsuite/ext/pb_ds/example/hash_resize_neg.cc b/libstdc++-v3/testsuite/ext/pb_ds/example/hash_resize_neg.cc index 8d93029c87d..9577dfbc033 100644 --- a/libstdc++-v3/testsuite/ext/pb_ds/example/hash_resize_neg.cc +++ b/libstdc++-v3/testsuite/ext/pb_ds/example/hash_resize_neg.cc @@ -61,4 +61,3 @@ int main() } // { dg-error "invalid" "" { target *-*-* } 187 } -// { dg-excess-errors "member function" } diff --git a/libstdc++-v3/testsuite/ext/profile/mutex_extensions.cc b/libstdc++-v3/testsuite/ext/profile/mutex_extensions.cc index 01c6714bb42..4b306619ff9 100644 --- a/libstdc++-v3/testsuite/ext/profile/mutex_extensions.cc +++ b/libstdc++-v3/testsuite/ext/profile/mutex_extensions.cc @@ -23,4 +23,3 @@ #include <vector> // { dg-error "Cannot use -D_GLIBCXX_PROFILE with " "" { target *-*-* } 167 } -// { dg-excess-errors "In file included from" } diff --git a/libstdc++-v3/testsuite/ext/rope/44708.cc b/libstdc++-v3/testsuite/ext/rope/44708.cc new file mode 100644 index 00000000000..ac2fa95c742 --- /dev/null +++ b/libstdc++-v3/testsuite/ext/rope/44708.cc @@ -0,0 +1,31 @@ +// { dg-options "-std=gnu++0x" } +// { dg-do compile } + +// Copyright (C) 2010 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 <iostream> +#include <ext/rope> + +using namespace std; + +// libstdc++/44708 +void test01() +{ + __gnu_cxx::crope line("test-test-test"); + cout << line.c_str() << endl; +} diff --git a/libstdc++-v3/testsuite/ext/rope/pthread7-rope.cc b/libstdc++-v3/testsuite/ext/rope/pthread7-rope.cc index b1520be4a57..fd1ed09c6c3 100644 --- a/libstdc++-v3/testsuite/ext/rope/pthread7-rope.cc +++ b/libstdc++-v3/testsuite/ext/rope/pthread7-rope.cc @@ -1,6 +1,6 @@ // 2003-05-03 Loren J. Rittle <rittle@labs.mot.com> <ljrittle@acm.org> // -// Copyright (C) 2003, 2004, 2005, 2006, 2007, 2009 +// Copyright (C) 2003, 2004, 2005, 2006, 2007, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -90,10 +90,10 @@ main() foo4 += foo3; for (int i = 0; i < max_thread_count; i++) - pthread_create (&tid[i], NULL, thread_main, 0); + pthread_create (&tid[i], 0, thread_main, 0); for (int i = 0; i < max_thread_count; i++) - pthread_join (tid[i], NULL); + pthread_join (tid[i], 0); } VERIFY( !std::strcmp (data, "barbazbongle") ); diff --git a/libstdc++-v3/testsuite/ext/slist/23781.cc b/libstdc++-v3/testsuite/ext/slist/23781.cc index 9b0e0a53e82..e1493c67558 100644 --- a/libstdc++-v3/testsuite/ext/slist/23781.cc +++ b/libstdc++-v3/testsuite/ext/slist/23781.cc @@ -1,6 +1,6 @@ // 2005-09-10 Paolo Carlini <pcarlini@suse.de> // -// Copyright (C) 2005, 2009 Free Software Foundation, Inc. +// Copyright (C) 2005, 2009, 2010 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 @@ -22,6 +22,7 @@ // libstdc++/23781 #include <ext/slist> +#include <cstddef> __gnu_cxx::slist<int>::iterator it = NULL; // { dg-error "conversion" } __gnu_cxx::slist<int>::const_iterator cit = NULL; // { dg-error "conversion" } diff --git a/libstdc++-v3/testsuite/ext/stdio_filebuf/char/10063-2.cc b/libstdc++-v3/testsuite/ext/stdio_filebuf/char/10063-2.cc index ce719e576f2..d0a1fcfc406 100644 --- a/libstdc++-v3/testsuite/ext/stdio_filebuf/char/10063-2.cc +++ b/libstdc++-v3/testsuite/ext/stdio_filebuf/char/10063-2.cc @@ -1,4 +1,4 @@ -// Copyright (C) 2000, 2001, 2002, 2003, 2009 Free Software Foundation +// Copyright (C) 2000, 2001, 2002, 2003, 2009, 2010 Free Software Foundation // // 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 @@ -37,7 +37,7 @@ void test2() fbuf.close(); FILE* file = fopen("tmp_10063-2", "r"); - setbuf(file, NULL); + setbuf(file, 0); int c = getc(file); VERIFY(c == '0'); c = getc(file); diff --git a/libstdc++-v3/testsuite/ext/stdio_sync_filebuf/char/1.cc b/libstdc++-v3/testsuite/ext/stdio_sync_filebuf/char/1.cc index 7eb4719a7c7..dab6c50b64d 100644 --- a/libstdc++-v3/testsuite/ext/stdio_sync_filebuf/char/1.cc +++ b/libstdc++-v3/testsuite/ext/stdio_sync_filebuf/char/1.cc @@ -33,7 +33,7 @@ void test01() const char* name = "stdiobuf-1.txt"; FILE* fout = fopen(name, "w"); - fwrite(c_lit, 1, size, fout); + VERIFY( fwrite(c_lit, 1, size, fout) == size ); fclose(fout); FILE* fin = fopen(name, "r"); diff --git a/libstdc++-v3/testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc b/libstdc++-v3/testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc index 6b0cee4db92..61e7a553482 100644 --- a/libstdc++-v3/testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc +++ b/libstdc++-v3/testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc @@ -33,7 +33,7 @@ void test01() const char* name = "stdiobuf-1.txt"; FILE* fout = fopen(name, "w"); - fwrite(c_lit, 1, size, fout); + VERIFY( fwrite(c_lit, 1, size, fout) == size ); fclose(fout); FILE* fin = fopen(name, "r"); diff --git a/libstdc++-v3/testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc b/libstdc++-v3/testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc index aeb957618ae..fa754c459d0 100644 --- a/libstdc++-v3/testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc +++ b/libstdc++-v3/testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc @@ -64,7 +64,7 @@ void test01() fputs(str, file); fclose(file); - freopen(name, "r", stdin); + VERIFY( freopen(name, "r", stdin) ); streamsize n = wcin.rdbuf()->in_avail(); while (n--) diff --git a/libstdc++-v3/testsuite/ext/type_traits/add_unsigned_floating_neg.cc b/libstdc++-v3/testsuite/ext/type_traits/add_unsigned_floating_neg.cc index 36fb9729f00..de72e141c0c 100644 --- a/libstdc++-v3/testsuite/ext/type_traits/add_unsigned_floating_neg.cc +++ b/libstdc++-v3/testsuite/ext/type_traits/add_unsigned_floating_neg.cc @@ -36,4 +36,3 @@ int main() // { dg-error "instantiated from" "" { target *-*-* } 28 } // { dg-error "no type" "" { target *-*-* } 67 } -// { dg-excess-errors "In instantiation of" } diff --git a/libstdc++-v3/testsuite/ext/type_traits/remove_unsigned_floating_neg.cc b/libstdc++-v3/testsuite/ext/type_traits/remove_unsigned_floating_neg.cc index 7c88b43c0df..847beda5bc7 100644 --- a/libstdc++-v3/testsuite/ext/type_traits/remove_unsigned_floating_neg.cc +++ b/libstdc++-v3/testsuite/ext/type_traits/remove_unsigned_floating_neg.cc @@ -36,4 +36,3 @@ int main() // { dg-error "instantiated from" "" { target *-*-* } 28 } // { dg-error "no type" "" { target *-*-* } 110 } -// { dg-excess-errors "In instantiation of" } diff --git a/libstdc++-v3/testsuite/lib/libstdc++.exp b/libstdc++-v3/testsuite/lib/libstdc++.exp index 45a43dea5fd..33dc120a0b2 100644 --- a/libstdc++-v3/testsuite/lib/libstdc++.exp +++ b/libstdc++-v3/testsuite/lib/libstdc++.exp @@ -374,7 +374,6 @@ proc libstdc++-dg-test { prog do_what extra_tool_flags } { # There is a libstdc++_compile made for us by default (via the tool- # and-target file), but the defaults are lacking in goodness. set comp_output [$select_compile "$prog" "$output_file" "$compile_type" $options]; - set comp_output [ prune_g++_output $comp_output ]; return [list $comp_output $output_file] } @@ -386,13 +385,16 @@ if { [info procs saved-dg-test] == [list] } { rename dg-test saved-dg-test proc dg-test { args } { + global additional_prunes global errorInfo if { [ catch { eval saved-dg-test $args } errmsg ] } { set saved_info $errorInfo + set additional_prunes "" unset_timeout_vars error $errmsg $saved_info } + set additional_prunes "" unset_timeout_vars } } @@ -1470,3 +1472,5 @@ proc check_v3_target_binary_io { } { verbose "check_v3_target_binary_io: $et_binary_io" 2 return $et_binary_io } + +set additional_prunes "" diff --git a/libstdc++-v3/testsuite/lib/prune.exp b/libstdc++-v3/testsuite/lib/prune.exp index 6c7368d10f9..a390878d76f 100644 --- a/libstdc++-v3/testsuite/lib/prune.exp +++ b/libstdc++-v3/testsuite/lib/prune.exp @@ -17,18 +17,45 @@ # Prune messages from g++ that aren't useful. -proc prune_g++_output { text } { +# Prune any messages matching ARGS[1] (a regexp) from test output. +proc dg-prune-output { args } { + global additional_prunes + + if { [llength $args] != 2 } { + error "[lindex $args 1]: need one argument" + return + } + + lappend additional_prunes [lindex $args 1] +} + +proc libstdc++-dg-prune { system text } { + global additional_prunes # Cygwin warns about -ffunction-sections regsub -all "(^|\n)\[^\n\]*: -ffunction-sections may affect debugging on some targets\[^\n\]*" $text "" text # Remove parts of warnings that refer to location of previous # definitions, etc as these confuse dejagnu - regsub -all "(^|\n)\[^\n\]*: In function \[^\n\]*" $text "" text + regsub -all "(^|\n)(\[^\n\]*: )?In ((static member |lambda )?function|member|method|(copy )?constructor|destructor|instantiation|program|subroutine|block-data)\[^\n\]*" $text "" text + regsub -all "(^|\n)\[^\n\]*(: )?At (top level|global scope):\[^\n\]*" $text "" text + regsub -all "(^|\n)\[^\n\]*: (recursively )?instantiated from \[^\n\]*" $text "" text + regsub -all "(^|\n)\[^\n\]*: . skipping \[0-9\]* instantiation contexts \[^\n\]*" $text "" text + regsub -all "(^|\n) inlined from \[^\n\]*" $text "" text + # Why doesn't GCC need these to strip header context? + regsub -all "(^|\n)In file included from \[^\n\]*" $text "" text + regsub -all "(^|\n)\[ \t\]*from \[^\n\]*" $text "" text # Ignore errata warning from IA64 assembler. regsub -all "(^|\n)\[^\n\]*: Additional NOP may be necessary to workaround Itanium processor A/B step errata" $text "" text regsub -all "(^|\n)\[^\n*\]*: Assembler messages:\[^\n\]*" $text "" text + foreach p $additional_prunes { + if { [string length $p] > 0 } { + # Following regexp matches a complete line containing $p. + regsub -all "(^|\n)\[^\n\]*$p\[^\n\]*" $text "" text + } + } + return $text } diff --git a/libstdc++-v3/testsuite/tr1/2_general_utilities/shared_ptr/assign/shared_ptr_neg.cc b/libstdc++-v3/testsuite/tr1/2_general_utilities/shared_ptr/assign/shared_ptr_neg.cc index ec05d71e2ee..490cfc4cce6 100644 --- a/libstdc++-v3/testsuite/tr1/2_general_utilities/shared_ptr/assign/shared_ptr_neg.cc +++ b/libstdc++-v3/testsuite/tr1/2_general_utilities/shared_ptr/assign/shared_ptr_neg.cc @@ -19,7 +19,7 @@ // TR1 2.2.2 Template class shared_ptr [tr.util.smartptr.shared] -#include <tr1/memory> // { dg-excess-errors "In file included from" } +#include <tr1/memory> #include <testsuite_hooks.h> struct A { }; diff --git a/libstdc++-v3/testsuite/tr1/2_general_utilities/shared_ptr/cons/43820.cc b/libstdc++-v3/testsuite/tr1/2_general_utilities/shared_ptr/cons/43820.cc index b5fe3567f9a..a80a2eec85f 100644 --- a/libstdc++-v3/testsuite/tr1/2_general_utilities/shared_ptr/cons/43820.cc +++ b/libstdc++-v3/testsuite/tr1/2_general_utilities/shared_ptr/cons/43820.cc @@ -36,5 +36,3 @@ void test01() // { dg-error "incomplete" "" { target *-*-* } 409 } } - -// { dg-excess-errors "" } diff --git a/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/discard_block/requirements/constants.cc b/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/discard_block/requirements/constants.cc index 2c43732041c..be04a2c9060 100644 --- a/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/discard_block/requirements/constants.cc +++ b/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/discard_block/requirements/constants.cc @@ -2,7 +2,7 @@ // // 2009-09-29 Paolo Carlini <paolo.carlini@oracle.com> // -// Copyright (C) 2009 Free Software Foundation, Inc. +// Copyright (C) 2009, 2010 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 @@ -27,6 +27,7 @@ void test01() const void* p = &db.block_size; p = &db.used_block; + p = p; // Suppress unused warning. } int main() diff --git a/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/linear_congruential/requirements/constants.cc b/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/linear_congruential/requirements/constants.cc index c38254f13d4..bdc366ea725 100644 --- a/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/linear_congruential/requirements/constants.cc +++ b/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/linear_congruential/requirements/constants.cc @@ -2,7 +2,7 @@ // // 2009-09-29 Paolo Carlini <paolo.carlini@oracle.com> // -// Copyright (C) 2009 Free Software Foundation, Inc. +// Copyright (C) 2009, 2010 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 @@ -28,6 +28,7 @@ void test01() const void* p = &lc.multiplier; p = &lc.increment; p = &lc.modulus; + p = p; // Suppress unused warning. } int main() diff --git a/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/mersenne_twister/requirements/constants.cc b/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/mersenne_twister/requirements/constants.cc index 9ebddd8c6d0..52fd3a50ba2 100644 --- a/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/mersenne_twister/requirements/constants.cc +++ b/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/mersenne_twister/requirements/constants.cc @@ -2,7 +2,7 @@ // // 2009-09-29 Paolo Carlini <paolo.carlini@oracle.com> // -// Copyright (C) 2009 Free Software Foundation, Inc. +// Copyright (C) 2009, 2010 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 @@ -36,6 +36,7 @@ void test01() p = &mt.output_t; p = &mt.output_c; p = &mt.output_l; + p = p; // Suppress unused warning. } int main() diff --git a/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/requirements/constants.cc b/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/requirements/constants.cc index c68002d2766..a34938ee0e0 100644 --- a/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/requirements/constants.cc +++ b/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/requirements/constants.cc @@ -2,7 +2,7 @@ // // 2009-09-29 Paolo Carlini <paolo.carlini@oracle.com> // -// Copyright (C) 2009 Free Software Foundation, Inc. +// Copyright (C) 2009, 2010 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 @@ -28,6 +28,7 @@ void test01() const void* p = &swc.modulus; p = &swc.long_lag; p = &swc.short_lag; + p = p; // Suppress unused warning. } int main() diff --git a/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/requirements/constants.cc b/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/requirements/constants.cc index c1715264d3a..a0a360d730b 100644 --- a/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/requirements/constants.cc +++ b/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/requirements/constants.cc @@ -2,7 +2,7 @@ // // 2009-09-29 Paolo Carlini <paolo.carlini@oracle.com> // -// Copyright (C) 2009 Free Software Foundation, Inc. +// Copyright (C) 2009, 2010 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 @@ -28,6 +28,7 @@ void test01() const void* p = &swc_01.word_size; p = &swc_01.long_lag; p = &swc_01.short_lag; + p = p; // Suppress unused warning. } int main() diff --git a/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/xor_combine/requirements/constants.cc b/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/xor_combine/requirements/constants.cc index 0318b0d5e18..3fbd55247ac 100644 --- a/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/xor_combine/requirements/constants.cc +++ b/libstdc++-v3/testsuite/tr1/5_numerical_facilities/random/xor_combine/requirements/constants.cc @@ -2,7 +2,7 @@ // // 2009-09-29 Paolo Carlini <paolo.carlini@oracle.com> // -// Copyright (C) 2009 Free Software Foundation, Inc. +// Copyright (C) 2009, 2010 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 @@ -28,6 +28,7 @@ void test01() const void* p = &xor_c.shift1; p = &xor_c.shift2; + p = p; // Suppress unused warning. } int main() 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 index a8a06fdbcdc..1709816c306 100644 --- 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 @@ -1,6 +1,6 @@ // 2005-09-10 Paolo Carlini <pcarlini@suse.de> // -// Copyright (C) 2005, 2009 Free Software Foundation, Inc. +// Copyright (C) 2005, 2009, 2010 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 @@ -22,6 +22,7 @@ // libstdc++/23781 #include <tr1/unordered_map> +#include <cstddef> 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_multiset/requirements/iterator_null_neg.cc b/libstdc++-v3/testsuite/tr1/6_containers/unordered_multiset/requirements/iterator_null_neg.cc index d77676eb1a1..2201b2d29d1 100644 --- 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 @@ -1,6 +1,6 @@ // 2005-09-10 Paolo Carlini <pcarlini@suse.de> // -// Copyright (C) 2005, 2009 Free Software Foundation, Inc. +// Copyright (C) 2005, 2009, 2010 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 @@ -22,6 +22,7 @@ // libstdc++/23781 #include <tr1/unordered_set> +#include <cstddef> 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/utility/pair.cc b/libstdc++-v3/testsuite/tr1/6_containers/utility/pair.cc index 20e6bc06ea7..3189e7f81aa 100644 --- a/libstdc++-v3/testsuite/tr1/6_containers/utility/pair.cc +++ b/libstdc++-v3/testsuite/tr1/6_containers/utility/pair.cc @@ -1,6 +1,6 @@ // 2004-09-23 Chris Jefferson <chris@bubblescope.net> -// Copyright (C) 2004, 2009 Free Software Foundation, Inc. +// Copyright (C) 2004, 2009, 2010 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 @@ -36,8 +36,10 @@ main() VERIFY(tuple_size<test_pair_type>::value == 2); // Test if tuple_element::type returns the correct type blank_class blank; - tuple_element<0, pair<blank_class, int> >::type blank2 = blank; - tuple_element<1, pair<int ,blank_class> >::type blank3 = blank; + tuple_element<0, pair<blank_class, int> >::type + blank2 __attribute__((unused)) = blank; + tuple_element<1, pair<int ,blank_class> >::type + blank3 __attribute__((unused)) = blank; pair<int,int> test_pair(1, 2); VERIFY(get<0>(test_pair) == 1); VERIFY(get<1>(test_pair) == 2); diff --git a/libstdc++-v3/testsuite/tr1/8_c_compatibility/cctype/functions.cc b/libstdc++-v3/testsuite/tr1/8_c_compatibility/cctype/functions.cc index 4b6a7dfd332..862b0419f50 100644 --- a/libstdc++-v3/testsuite/tr1/8_c_compatibility/cctype/functions.cc +++ b/libstdc++-v3/testsuite/tr1/8_c_compatibility/cctype/functions.cc @@ -2,7 +2,7 @@ // 2006-01-25 Paolo Carlini <pcarlini@suse.de> // -// Copyright (C) 2006, 2009 Free Software Foundation, Inc. +// Copyright (C) 2006, 2009, 2010 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 @@ -29,6 +29,7 @@ void test01() int ch = 0, ret; ret = std::tr1::isblank(ch); + ret = ret; // Suppress unused warning. #endif } diff --git a/libstdc++-v3/testsuite/tr1/8_c_compatibility/cfenv/functions.cc b/libstdc++-v3/testsuite/tr1/8_c_compatibility/cfenv/functions.cc index 765df19388e..5bffa0ef332 100644 --- a/libstdc++-v3/testsuite/tr1/8_c_compatibility/cfenv/functions.cc +++ b/libstdc++-v3/testsuite/tr1/8_c_compatibility/cfenv/functions.cc @@ -2,7 +2,7 @@ // 2006-01-26 Paolo Carlini <pcarlini@suse.de> // -// Copyright (C) 2006, 2009 Free Software Foundation, Inc. +// Copyright (C) 2006, 2009, 2010 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 @@ -46,6 +46,7 @@ void test01() ret = std::tr1::feholdexcept(penv); ret = std::tr1::fesetenv(penv); ret = std::tr1::feupdateenv(penv); + ret = ret; // Suppress unused warning. #endif } diff --git a/libstdc++-v3/testsuite/tr1/8_c_compatibility/cinttypes/functions.cc b/libstdc++-v3/testsuite/tr1/8_c_compatibility/cinttypes/functions.cc index 7afe3b82b3a..30c7b789f4a 100644 --- a/libstdc++-v3/testsuite/tr1/8_c_compatibility/cinttypes/functions.cc +++ b/libstdc++-v3/testsuite/tr1/8_c_compatibility/cinttypes/functions.cc @@ -2,7 +2,7 @@ // 2006-01-30 Paolo Carlini <pcarlini@suse.de> // -// Copyright (C) 2006, 2007, 2008, 2009 Free Software Foundation, Inc. +// Copyright (C) 2006, 2007, 2008, 2009, 2010 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 @@ -53,5 +53,9 @@ void test01() uret = std::tr1::wcstoumax(ws, wendptr, base); #endif + ret = ret; // Suppress unused warnings. + dret = dret; + uret = uret; + #endif } diff --git a/libstdc++-v3/testsuite/tr1/8_c_compatibility/cmath/functions.cc b/libstdc++-v3/testsuite/tr1/8_c_compatibility/cmath/functions.cc index 020c273d55b..ae31a48ecf6 100644 --- a/libstdc++-v3/testsuite/tr1/8_c_compatibility/cmath/functions.cc +++ b/libstdc++-v3/testsuite/tr1/8_c_compatibility/cmath/functions.cc @@ -2,7 +2,7 @@ // 2006-02-07 Paolo Carlini <pcarlini@suse.de> // -// Copyright (C) 2006, 2007, 2008, 2009 Free Software Foundation, Inc. +// Copyright (C) 2006, 2007, 2008, 2009, 2010 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 @@ -181,6 +181,13 @@ void test01() ret = std::tr1::trunc(d0); fret = std::tr1::truncf(f0); ldret = std::tr1::truncl(ld0); + + ret = ret; // Suppress unused warnings. + iret = iret; + lret = lret; + llret = llret; + fret = fret; + ldret = ldret; #endif } diff --git a/libstdc++-v3/testsuite/tr1/8_c_compatibility/cmath/templates.cc b/libstdc++-v3/testsuite/tr1/8_c_compatibility/cmath/templates.cc index 35f8869c912..cbf8c9592eb 100644 --- a/libstdc++-v3/testsuite/tr1/8_c_compatibility/cmath/templates.cc +++ b/libstdc++-v3/testsuite/tr1/8_c_compatibility/cmath/templates.cc @@ -2,7 +2,7 @@ // 2006-02-26 Paolo Carlini <pcarlini@suse.de> // -// Copyright (C) 2006, 2009 Free Software Foundation, Inc. +// Copyright (C) 2006, 2009, 2010 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 @@ -37,6 +37,7 @@ template<typename T> ret = std::tr1::signbit(x); iret = std::tr1::fpclassify(x); + iret = iret; // Suppress unused warning. ret = std::tr1::isfinite(x); ret = std::tr1::isinf(x); @@ -49,6 +50,7 @@ template<typename T> ret = std::tr1::islessequal(x, x); ret = std::tr1::islessgreater(x, x); ret = std::tr1::isunordered(x, x); + ret = ret; // Suppress unused warning. } void test01() diff --git a/libstdc++-v3/testsuite/tr1/8_c_compatibility/cstdio/functions.cc b/libstdc++-v3/testsuite/tr1/8_c_compatibility/cstdio/functions.cc index 426083ecb74..33890252201 100644 --- a/libstdc++-v3/testsuite/tr1/8_c_compatibility/cstdio/functions.cc +++ b/libstdc++-v3/testsuite/tr1/8_c_compatibility/cstdio/functions.cc @@ -2,7 +2,7 @@ // 2006-02-05 Paolo Carlini <pcarlini@suse.de> // -// Copyright (C) 2006, 2009 Free Software Foundation, Inc. +// Copyright (C) 2006, 2009, 2010 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 @@ -46,6 +46,7 @@ void test01(int dummy, ...) ret = std::tr1::vfscanf(stream, format, ap); ret = std::tr1::vscanf(format, ap); ret = std::tr1::vsscanf(cs, format, ap); + ret = ret; // Suppress unused warning. #endif } diff --git a/libstdc++-v3/testsuite/tr1/8_c_compatibility/cstdlib/functions.cc b/libstdc++-v3/testsuite/tr1/8_c_compatibility/cstdlib/functions.cc index 542f42990e3..f9b88dca9c7 100644 --- a/libstdc++-v3/testsuite/tr1/8_c_compatibility/cstdlib/functions.cc +++ b/libstdc++-v3/testsuite/tr1/8_c_compatibility/cstdlib/functions.cc @@ -2,7 +2,7 @@ // 2006-02-07 Paolo Carlini <pcarlini@suse.de> // -// Copyright (C) 2006, 2009 Free Software Foundation, Inc. +// Copyright (C) 2006, 2009, 2010 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 @@ -55,8 +55,16 @@ void test01() ldret = std::tr1::strtold(s, endptr); ret = std::tr1::abs(i); + + ret = ret; // Suppress unused warning. + uret = uret; + fret = fret; + ldret = ldret; + #if !_GLIBCXX_USE_C99_LONG_LONG_DYNAMIC dret = std::tr1::div(numer, denom); + + dret = dret; #endif #endif diff --git a/libstdc++-v3/testsuite/tr1/8_c_compatibility/cwchar/functions.cc b/libstdc++-v3/testsuite/tr1/8_c_compatibility/cwchar/functions.cc index 2a572204529..0320c9a5a66 100644 --- a/libstdc++-v3/testsuite/tr1/8_c_compatibility/cwchar/functions.cc +++ b/libstdc++-v3/testsuite/tr1/8_c_compatibility/cwchar/functions.cc @@ -2,7 +2,7 @@ // 2006-02-03 Paolo Carlini <pcarlini@suse.de> // -// Copyright (C) 2006, 2009 Free Software Foundation, Inc. +// Copyright (C) 2006, 2009, 2010 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 @@ -37,6 +37,8 @@ void test01(int dummy, ...) wchar_t** endptr1 = 0; float fret; fret = std::tr1::wcstof(nptr1, endptr1); + + fret = fret; // Suppress unused warning. #endif #if _GLIBCXX_HAVE_VFWSCANF @@ -44,6 +46,8 @@ void test01(int dummy, ...) const wchar_t* format1 = 0; int ret1; ret1 = std::tr1::vfwscanf(stream, format1, arg); + + ret1 = ret1; // Suppress unused warning. #endif #if _GLIBCXX_HAVE_VSWSCANF @@ -51,12 +55,16 @@ void test01(int dummy, ...) const wchar_t* format2 = 0; int ret2; ret2 = std::tr1::vswscanf(s, format2, arg); + + ret2 = ret2; // Suppress unused warning. #endif #if _GLIBCXX_HAVE_VWSCANF const wchar_t* format3 = 0; int ret3; ret3 = std::tr1::vwscanf(format3, arg); + + ret3 = ret3; // Suppress unused warning. #endif #if _GLIBCXX_USE_C99 @@ -72,6 +80,10 @@ void test01(int dummy, ...) llret = std::tr1::wcstoll(nptr2, endptr2, base); ullret = std::tr1::wcstoull(nptr2, endptr2, base); + ldret = ldret; // Suppress unused warnings. + llret = llret; + ullret = ullret; + #endif } diff --git a/libstdc++-v3/testsuite/tr1/8_c_compatibility/cwctype/functions.cc b/libstdc++-v3/testsuite/tr1/8_c_compatibility/cwctype/functions.cc index 9eff2088018..031b3ac160a 100644 --- a/libstdc++-v3/testsuite/tr1/8_c_compatibility/cwctype/functions.cc +++ b/libstdc++-v3/testsuite/tr1/8_c_compatibility/cwctype/functions.cc @@ -2,7 +2,7 @@ // 2006-02-03 Paolo Carlini <pcarlini@suse.de> // -// Copyright (C) 2006, 2009 Free Software Foundation, Inc. +// Copyright (C) 2006, 2009, 2010 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 @@ -32,6 +32,7 @@ void test01() std::wint_t ch = 0; int ret; ret = std::tr1::iswblank(ch); + ret = ret; // Suppress unused warning. #endif } diff --git a/libstdc++-v3/testsuite/util/exception/safety.h b/libstdc++-v3/testsuite/util/exception/safety.h index aef58b621c7..046eab9e513 100644 --- a/libstdc++-v3/testsuite/util/exception/safety.h +++ b/libstdc++-v3/testsuite/util/exception/safety.h @@ -1012,7 +1012,6 @@ namespace __gnu_test _M_functions.push_back(function_type(base_type::_M_clear)); // Run tests. - auto i = _M_functions.begin(); for (auto i = _M_functions.begin(); i != _M_functions.end(); ++i) { function_type& f = *i; @@ -1163,7 +1162,6 @@ namespace __gnu_test _M_functions.push_back(function_type(base_type::_M_rehash)); // Run tests. - auto i = _M_functions.begin(); for (auto i = _M_functions.begin(); i != _M_functions.end(); ++i) { function_type& f = *i; diff --git a/libstdc++-v3/testsuite/util/regression/rand/assoc/container_rand_regression_test.tcc b/libstdc++-v3/testsuite/util/regression/rand/assoc/container_rand_regression_test.tcc index 43cdb9f2b62..0f158664853 100644 --- a/libstdc++-v3/testsuite/util/regression/rand/assoc/container_rand_regression_test.tcc +++ b/libstdc++-v3/testsuite/util/regression/rand/assoc/container_rand_regression_test.tcc @@ -1,6 +1,6 @@ // -*- C++ -*- -// Copyright (C) 2005, 2006, 2008, 2009 Free Software Foundation, Inc. +// Copyright (C) 2005, 2006, 2008, 2009, 2010 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 @@ -45,7 +45,7 @@ container_rand_regression_test(unsigned long seed, size_t n, size_t m, double mp, bool disp) : m_seed((seed == 0) ? twister_rand_gen::get_time_determined_seed() : seed), m_n(n), m_m(m), m_tp(tp), m_ip(ip), m_ep(ep), m_cp(cp), m_mp(mp), - m_disp(disp), m_p_c(NULL) + m_disp(disp), m_p_c(0) { } PB_DS_CLASS_T_DEC @@ -71,7 +71,7 @@ default_constructor() done = false; } - if (m_p_c != NULL) + if (m_p_c) PB_DS_COND_COMPARE(*m_p_c, m_native_c); return done; } @@ -98,7 +98,7 @@ copy_constructor() { PB_DS_TRACE("copy_constructor"); bool done = true; - Cntnr* p_c = NULL; + Cntnr* p_c = 0; m_alloc.set_probability(m_tp); typename alloc_t::group_adjustor adjust(m_p_c->size()); @@ -124,7 +124,7 @@ assignment_operator() { PB_DS_TRACE("assignment operator"); bool done = true; - Cntnr* p_c = NULL; + Cntnr* p_c = 0; m_alloc.set_probability(m_tp); typename alloc_t::group_adjustor adjust(m_p_c->size()); @@ -159,7 +159,7 @@ PB_DS_CLASS_C_DEC:: it_constructor_imp(__gnu_pbds::cc_hash_tag) { bool done = true; - Cntnr* p_c = NULL; + Cntnr* p_c = 0; m_alloc.set_probability(m_tp); typename alloc_t::group_adjustor adjust(m_p_c->size()); @@ -226,7 +226,7 @@ PB_DS_CLASS_C_DEC:: it_constructor_imp(__gnu_pbds::gp_hash_tag) { bool done = true; - Cntnr* p_c = NULL; + Cntnr* p_c = 0; m_alloc.set_probability(m_tp); typename alloc_t::group_adjustor adjust(m_p_c->size()); @@ -309,7 +309,7 @@ PB_DS_CLASS_C_DEC:: it_constructor_imp(__gnu_pbds::tree_tag) { bool done = true; - Cntnr* p_c = NULL; + Cntnr* p_c = 0; m_alloc.set_probability(m_tp); typename alloc_t::group_adjustor adjust(m_p_c->size()); @@ -345,7 +345,7 @@ PB_DS_CLASS_C_DEC:: it_constructor_imp(__gnu_pbds::list_update_tag) { bool done = true; - Cntnr* p_c = NULL; + Cntnr* p_c = 0; m_alloc.set_probability(m_tp); typename alloc_t::group_adjustor adjust(m_p_c->size()); @@ -370,7 +370,7 @@ PB_DS_CLASS_C_DEC:: it_constructor_imp(__gnu_pbds::pat_trie_tag) { bool done = true; - Cntnr* p_c = NULL; + Cntnr* p_c = 0; m_alloc.set_probability(m_tp); typename alloc_t::group_adjustor adjust(m_p_c->size()); @@ -869,7 +869,7 @@ PB_DS_CLASS_C_DEC:: operator()() { typedef xml_result_set_regression_formatter formatter_type; - formatter_type* p_fmt = NULL; + formatter_type* p_fmt = 0; if (m_disp) p_fmt = new formatter_type(string_form<Cntnr>::name(), @@ -1591,30 +1591,30 @@ policy_access(__gnu_pbds::basic_hash_tag) { { typename Cntnr::hash_fn& r_t = m_p_c->get_hash_fn(); - assert(&r_t != NULL); + assert(&r_t); } { const typename Cntnr::hash_fn& r_t =((const Cntnr& )*m_p_c).get_hash_fn(); - assert(&r_t != NULL); + assert(&r_t); } { typename Cntnr::eq_fn& r_t = m_p_c->get_eq_fn(); - assert(&r_t != NULL); + assert(&r_t); } { const typename Cntnr::eq_fn& r_t =((const Cntnr& )*m_p_c).get_eq_fn(); - assert(&r_t != NULL); + assert(&r_t); } { typename Cntnr::resize_policy& r_t = m_p_c->get_resize_policy(); - assert(&r_t != NULL); + assert(&r_t); } { const typename Cntnr::resize_policy& r_t =((const Cntnr& )*m_p_c).get_resize_policy(); - assert(&r_t != NULL); + assert(&r_t); } } @@ -1627,12 +1627,12 @@ policy_access(__gnu_pbds::cc_hash_tag) { typename Cntnr::comb_hash_fn& r_t = m_p_c->get_comb_hash_fn(); - assert(&r_t != NULL); + assert(&r_t); } { const typename Cntnr::comb_hash_fn& r_t =((const Cntnr& )*m_p_c).get_comb_hash_fn(); - assert(&r_t != NULL); + assert(&r_t); } } @@ -1645,21 +1645,21 @@ policy_access(__gnu_pbds::gp_hash_tag) { typename Cntnr::comb_probe_fn& r_t = m_p_c->get_comb_probe_fn(); - assert(&r_t != NULL); + assert(&r_t); } { const typename Cntnr::comb_probe_fn& r_t =((const Cntnr& )*m_p_c).get_comb_probe_fn(); - assert(&r_t != NULL); + assert(&r_t); } { typename Cntnr::probe_fn& r_t = m_p_c->get_probe_fn(); - assert(&r_t != NULL); + assert(&r_t); } { const typename Cntnr::probe_fn& r_t =((const Cntnr& )*m_p_c).get_probe_fn(); - assert(&r_t != NULL); + assert(&r_t); } } @@ -1670,12 +1670,12 @@ policy_access(__gnu_pbds::tree_tag) { { typename Cntnr::cmp_fn& r_t = m_p_c->get_cmp_fn(); - assert(&r_t != NULL); + assert(&r_t); } { const typename Cntnr::cmp_fn& r_t =((const Cntnr& )*m_p_c).get_cmp_fn(); - assert(&r_t != NULL); + assert(&r_t); } } @@ -1691,7 +1691,7 @@ PB_DS_CLASS_C_DEC:: policy_access(__gnu_pbds::pat_trie_tag) { typename Cntnr::e_access_traits& r_t = m_p_c->get_e_access_traits(); - assert(&r_t != NULL); + assert(&r_t); } diff --git a/libstdc++-v3/testsuite/util/regression/rand/assoc/rand_regression_test.hpp b/libstdc++-v3/testsuite/util/regression/rand/assoc/rand_regression_test.hpp index d4b395b126a..5f230495236 100644 --- a/libstdc++-v3/testsuite/util/regression/rand/assoc/rand_regression_test.hpp +++ b/libstdc++-v3/testsuite/util/regression/rand/assoc/rand_regression_test.hpp @@ -1,6 +1,6 @@ // -*- C++ -*- -// Copyright (C) 2005, 2006, 2009 Free Software Foundation, Inc. +// Copyright (C) 2005, 2006, 2009, 2010 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 @@ -124,7 +124,7 @@ namespace detail }; // XXX RAII, constructor takes bool for display - xml_test_rand_regression_formatter* p_fmt = NULL; + xml_test_rand_regression_formatter* p_fmt = 0; if (disp) p_fmt = new xml_test_rand_regression_formatter(sd, n, m, tp, ip, ep, cp, mp); diff --git a/libstdc++-v3/testsuite/util/regression/rand/priority_queue/container_rand_regression_test.tcc b/libstdc++-v3/testsuite/util/regression/rand/priority_queue/container_rand_regression_test.tcc index f964911facb..e929f3533fe 100644 --- a/libstdc++-v3/testsuite/util/regression/rand/priority_queue/container_rand_regression_test.tcc +++ b/libstdc++-v3/testsuite/util/regression/rand/priority_queue/container_rand_regression_test.tcc @@ -1,6 +1,6 @@ // -*- C++ -*- -// Copyright (C) 2005, 2006, 2008, 2009 Free Software Foundation, Inc. +// Copyright (C) 2005, 2006, 2008, 2009, 2010 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 @@ -45,7 +45,7 @@ container_rand_regression_test(unsigned long seed, size_t n, size_t m, double cp, double mp, bool disp) : m_seed(seed == 0 ? twister_rand_gen::get_time_determined_seed(): seed), m_n(n), m_m(m), m_tp(tp), m_ip(ip), m_dp(dp), m_ep(ep), m_cp(cp), - m_mp(mp), m_disp(disp), m_p_c(NULL) + m_mp(mp), m_disp(disp), m_p_c(0) { } PB_DS_CLASS_T_DEC @@ -71,7 +71,7 @@ default_constructor() done = false; } - if (m_p_c != NULL) + if (m_p_c) PB_DS_COND_COMPARE(*m_p_c, m_native_c); return done; @@ -99,7 +99,7 @@ copy_constructor() { PB_DS_TRACE("copy_constructor"); bool done = true; - Cntnr* p_c = NULL; + Cntnr* p_c = 0; m_alloc.set_probability(m_tp); typedef typename allocator_type::group_adjustor adjustor; @@ -127,7 +127,7 @@ assignment_operator() { PB_DS_TRACE("assignment operator"); bool done = true; - Cntnr* p_c = NULL; + Cntnr* p_c = 0; m_alloc.set_probability(m_tp); typedef typename allocator_type::group_adjustor adjustor; @@ -155,7 +155,7 @@ PB_DS_CLASS_C_DEC:: it_constructor() { bool done = true; - Cntnr* p_c = NULL; + Cntnr* p_c = 0; m_alloc.set_probability(m_tp); typedef typename allocator_type::group_adjustor adjustor; adjustor adjust(m_p_c->size()); @@ -242,7 +242,7 @@ PB_DS_CLASS_C_DEC:: operator()() { typedef xml_result_set_regression_formatter formatter_type; - formatter_type* p_fmt = NULL; + formatter_type* p_fmt = 0; if (m_disp) p_fmt = new formatter_type(string_form<Cntnr>::name(), string_form<Cntnr>::desc()); @@ -668,12 +668,12 @@ policy_access() { typename Cntnr::cmp_fn& r_t = m_p_c->get_cmp_fn(); - assert(&r_t != NULL); + assert(&r_t); } { const typename Cntnr::cmp_fn& r_t =((const Cntnr& )*m_p_c).get_cmp_fn(); - assert(&r_t != NULL); + assert(&r_t); } } diff --git a/libstdc++-v3/testsuite/util/regression/rand/priority_queue/rand_regression_test.hpp b/libstdc++-v3/testsuite/util/regression/rand/priority_queue/rand_regression_test.hpp index 1cf86020d45..37f8d51af74 100644 --- a/libstdc++-v3/testsuite/util/regression/rand/priority_queue/rand_regression_test.hpp +++ b/libstdc++-v3/testsuite/util/regression/rand/priority_queue/rand_regression_test.hpp @@ -1,6 +1,6 @@ // -*- C++ -*- -// Copyright (C) 2005, 2006, 2008, 2009 Free Software Foundation, Inc. +// Copyright (C) 2005, 2006, 2008, 2009, 2010 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 @@ -123,7 +123,7 @@ namespace detail return -2; }; - xml_test_rand_regression_formatter* p_fmt = NULL; + xml_test_rand_regression_formatter* p_fmt = 0; if (sd == 0) sd = twister_rand_gen::get_time_determined_seed(); if (disp) diff --git a/libstdc++-v3/testsuite/util/replacement_memory_operators.h b/libstdc++-v3/testsuite/util/replacement_memory_operators.h index c7b19edc457..895ccfe3897 100644 --- a/libstdc++-v3/testsuite/util/replacement_memory_operators.h +++ b/libstdc++-v3/testsuite/util/replacement_memory_operators.h @@ -1,5 +1,5 @@ // -// Copyright (C) 2007, 2009 Free Software Foundation, Inc. +// Copyright (C) 2007, 2009, 2010 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 @@ -90,7 +90,7 @@ void* operator new(std::size_t size) throw(std::bad_alloc) { std::printf("operator new is called \n"); void* p = std::malloc(size); - if (p == NULL) + if (!p) throw std::bad_alloc(); __gnu_test::counter::increment(); return p; @@ -99,7 +99,7 @@ void* operator new(std::size_t size) throw(std::bad_alloc) void operator delete(void* p) throw() { std::printf("operator delete is called \n"); - if (p != NULL) + if (p) { std::free(p); __gnu_test::counter::decrement(); diff --git a/libstdc++-v3/testsuite/util/testsuite_abi.h b/libstdc++-v3/testsuite/util/testsuite_abi.h index ff413fdccf3..c9fe0a4d11c 100644 --- a/libstdc++-v3/testsuite/util/testsuite_abi.h +++ b/libstdc++-v3/testsuite/util/testsuite_abi.h @@ -1,6 +1,7 @@ // -*- C++ -*- -// Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. +// Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010 +// Free Software Foundation, Inc. // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU General Public License as @@ -16,7 +17,6 @@ // along with this library; see the file COPYING3. If not see // <http://www.gnu.org/licenses/>. - // Benjamin Kosnik <bkoz@redhat.com> #include <string> diff --git a/libstdc++-v3/testsuite/util/testsuite_allocator.h b/libstdc++-v3/testsuite/util/testsuite_allocator.h index 96fe546b482..cb481b2a7f9 100644 --- a/libstdc++-v3/testsuite/util/testsuite_allocator.h +++ b/libstdc++-v3/testsuite/util/testsuite_allocator.h @@ -1,7 +1,7 @@ // -*- C++ -*- // Testing allocator for the C++ library testsuite. // -// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 +// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -27,7 +27,6 @@ #ifndef _GLIBCXX_TESTSUITE_ALLOCATOR_H #define _GLIBCXX_TESTSUITE_ALLOCATOR_H -#include <cstddef> #include <tr1/unordered_map> #include <cassert> #include <bits/move.h> @@ -186,8 +185,8 @@ namespace __gnu_test { // Let's not core here... Alloc a; - a.deallocate(NULL, 1); - a.deallocate(NULL, 10); + a.deallocate(0, 1); + a.deallocate(0, 10); return true; } @@ -241,8 +240,8 @@ namespace __gnu_test : private uneq_allocator_base { public: - typedef size_t size_type; - typedef ptrdiff_t difference_type; + typedef std::size_t size_type; + typedef std::ptrdiff_t difference_type; typedef Tp* pointer; typedef const Tp* const_pointer; typedef Tp& reference; diff --git a/libstdc++-v3/testsuite/util/testsuite_api.h b/libstdc++-v3/testsuite/util/testsuite_api.h index fcb762eff66..11007904093 100644 --- a/libstdc++-v3/testsuite/util/testsuite_api.h +++ b/libstdc++-v3/testsuite/util/testsuite_api.h @@ -19,7 +19,6 @@ // <http://www.gnu.org/licenses/>. // -#include <cstddef> #include <exception> #include <testsuite_hooks.h> @@ -107,7 +106,7 @@ namespace __gnu_test // For 23 unordered_* requirements. struct NonDefaultConstructible_hash { - size_t + std::size_t operator()(NonDefaultConstructible) const { return 1; } }; @@ -170,10 +169,29 @@ namespace __gnu_test struct OverloadedAddress_hash { - size_t + std::size_t operator()(const OverloadedAddress&) const { return 1; } }; + +#ifdef __GXX_EXPERIMENTAL_CXX0X__ + struct NonCopyConstructible + { + NonCopyConstructible() : num(-1) { } + + NonCopyConstructible(NonCopyConstructible&& other) + : num(other.num) + { other.num = 0; } + + NonCopyConstructible(const NonCopyConstructible&) = delete; + + operator int() { return num; } + + private: + int num; + }; +#endif + } #endif diff --git a/libstdc++-v3/testsuite/util/testsuite_common_types.h b/libstdc++-v3/testsuite/util/testsuite_common_types.h index fd60b79c897..1db0ca08c79 100644 --- a/libstdc++-v3/testsuite/util/testsuite_common_types.h +++ b/libstdc++-v3/testsuite/util/testsuite_common_types.h @@ -1,7 +1,8 @@ // -*- C++ -*- // typelist for the C++ library testsuite. // -// Copyright (C) 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. +// Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010 +// 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 @@ -622,7 +623,7 @@ namespace __gnu_test struct _Concept { void __constraint() - { _Ttype __v = {__a}; } + { _Ttype __v __attribute__((unused)) = {__a}; } _Tvalue __a; }; diff --git a/libstdc++-v3/testsuite/util/testsuite_hooks.cc b/libstdc++-v3/testsuite/util/testsuite_hooks.cc index 6d77d57672f..1ead3485175 100644 --- a/libstdc++-v3/testsuite/util/testsuite_hooks.cc +++ b/libstdc++-v3/testsuite/util/testsuite_hooks.cc @@ -2,7 +2,7 @@ // Utility subroutines for the C++ library testsuite. // -// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 +// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -32,7 +32,6 @@ #include <list> #include <string> #include <stdexcept> -#include <cstddef> #include <clocale> #include <cstdlib> #include <locale> @@ -170,13 +169,13 @@ namespace __gnu_test locale orig = locale::global(loc_name); const char* res = setlocale(LC_ALL, name); - if (res != NULL) + if (res) { string preLC_ALL = res; const func_callback::test_type* tests = l.tests(); for (int i = 0; i < l.size(); ++i) (*tests[i])(); - string postLC_ALL= setlocale(LC_ALL, NULL); + string postLC_ALL= setlocale(LC_ALL, 0); VERIFY( preLC_ALL == postLC_ALL ); } else diff --git a/libstdc++-v3/testsuite/util/testsuite_hooks.h b/libstdc++-v3/testsuite/util/testsuite_hooks.h index da51d37ae62..fe41b1cb3e6 100644 --- a/libstdc++-v3/testsuite/util/testsuite_hooks.h +++ b/libstdc++-v3/testsuite/util/testsuite_hooks.h @@ -1,7 +1,8 @@ // -*- C++ -*- // Utility subroutines for the C++ library testsuite. // -// Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 +// Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, +// 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -59,7 +60,7 @@ # include <cassert> # define VERIFY(fn) assert(fn) #else -# define VERIFY(fn) test &= (fn) +# define VERIFY(fn) test &= bool(fn) #endif #ifdef _GLIBCXX_HAVE_UNISTD_H diff --git a/libstdc++-v3/testsuite/util/testsuite_io.h b/libstdc++-v3/testsuite/util/testsuite_io.h index 50b1955ca11..681448aa51f 100644 --- a/libstdc++-v3/testsuite/util/testsuite_io.h +++ b/libstdc++-v3/testsuite/util/testsuite_io.h @@ -1,7 +1,7 @@ // -*- C++ -*- // Testing streambuf/filebuf/stringbuf for the C++ library testsuite. // -// Copyright (C) 2003, 2004, 2005, 2006, 2007, 2009 +// Copyright (C) 2003, 2004, 2005, 2006, 2007, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -47,7 +47,7 @@ namespace __gnu_test bool write_position() { - bool one = this->pptr() != NULL; + bool one = this->pptr() != 0; bool two = this->pptr() < this->epptr(); return one && two; } @@ -55,7 +55,7 @@ namespace __gnu_test bool read_position() { - bool one = this->gptr() != NULL; + bool one = this->gptr() != 0; bool two = this->gptr() < this->egptr(); return one && two; } @@ -63,21 +63,21 @@ namespace __gnu_test bool unbuffered() { - bool one = this->pbase() == NULL; - bool two = this->pptr() == NULL; + bool one = this->pbase() == 0; + bool two = this->pptr() == 0; return one && two; } bool check_pointers() { - bool one = this->eback() == NULL; - bool two = this->gptr() == NULL; - bool three = this->egptr() == NULL; + bool one = this->eback() == 0; + bool two = this->gptr() == 0; + bool three = this->egptr() == 0; - bool four = this->pbase() == NULL; - bool five = this->pptr() == NULL; - bool six = this->epptr() == NULL; + bool four = this->pbase() == 0; + bool five = this->pptr() == 0; + bool six = this->epptr() == 0; return one && two && three && four && five && six; } }; @@ -276,37 +276,37 @@ namespace __gnu_test protected: iter_type do_put(iter_type, ios_base&, char_type, bool) const - { throw facet_error(); return iter_type(NULL); } + { throw facet_error(); return iter_type(0); } virtual iter_type do_put(iter_type, ios_base&, char_type, long) const - { throw facet_error(); return iter_type(NULL); } + { throw facet_error(); return iter_type(0); } virtual iter_type do_put(iter_type, ios_base&, char_type, unsigned long) const - { throw facet_error(); return iter_type(NULL); } + { throw facet_error(); return iter_type(0); } #ifdef _GLIBCXX_USE_LONG_LONG virtual iter_type do_put(iter_type, ios_base&, char_type, long long) const - { throw facet_error(); return iter_type(NULL); } + { throw facet_error(); return iter_type(0); } virtual iter_type do_put(iter_type, ios_base&, char_type, unsigned long long) const - { throw facet_error(); return iter_type(NULL); } + { throw facet_error(); return iter_type(0); } #endif virtual iter_type do_put(iter_type, ios_base&, char_type, double) const - { throw facet_error(); return iter_type(NULL); } + { throw facet_error(); return iter_type(0); } virtual iter_type do_put(iter_type, ios_base&, char_type, long double) const - { throw facet_error(); return iter_type(NULL); } + { throw facet_error(); return iter_type(0); } virtual iter_type do_put(iter_type, ios_base&, char_type, const void*) const - { throw facet_error(); return iter_type(NULL); } + { throw facet_error(); return iter_type(0); } }; typedef fail_num_put<char> fail_num_put_char; diff --git a/libstdc++-v3/testsuite/util/testsuite_iterators.h b/libstdc++-v3/testsuite/util/testsuite_iterators.h index 14a725fcbec..e7a068d208d 100644 --- a/libstdc++-v3/testsuite/util/testsuite_iterators.h +++ b/libstdc++-v3/testsuite/util/testsuite_iterators.h @@ -1,7 +1,7 @@ // -*- C++ -*- // Iterator Wrappers for the C++ library testsuite. // -// Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 +// Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -118,7 +118,7 @@ namespace __gnu_test */ template<class T> struct output_iterator_wrapper - : public std::iterator<std::output_iterator_tag, T, ptrdiff_t, T*, T&> + : public std::iterator<std::output_iterator_tag, T, std::ptrdiff_t, T*, T&> { typedef OutputContainer<T> ContainerType; T* ptr; @@ -179,7 +179,7 @@ namespace __gnu_test */ template<class T> class input_iterator_wrapper - : public std::iterator<std::input_iterator_tag, T, ptrdiff_t, T*, T&> + : public std::iterator<std::input_iterator_tag, T, std::ptrdiff_t, T*, T&> { protected: input_iterator_wrapper() @@ -201,7 +201,7 @@ namespace __gnu_test bool operator==(const input_iterator_wrapper& in) const { - ITERATOR_VERIFY(SharedInfo != NULL && SharedInfo == in.SharedInfo); + ITERATOR_VERIFY(SharedInfo && SharedInfo == in.SharedInfo); ITERATOR_VERIFY(ptr>=SharedInfo->first && in.ptr>=SharedInfo->first); return ptr == in.ptr; } @@ -274,8 +274,8 @@ namespace __gnu_test forward_iterator_wrapper() { - this->ptr = NULL; - this->SharedInfo = NULL; + this->ptr = 0; + this->SharedInfo = 0; } T& @@ -435,7 +435,7 @@ namespace __gnu_test } random_access_iterator_wrapper& - operator+=(ptrdiff_t n) + operator+=(std::ptrdiff_t n) { if(n > 0) { @@ -451,17 +451,17 @@ namespace __gnu_test } random_access_iterator_wrapper& - operator-=(ptrdiff_t n) + operator-=(std::ptrdiff_t n) { return *this += -n; } random_access_iterator_wrapper - operator-(ptrdiff_t n) const + operator-(std::ptrdiff_t n) const { random_access_iterator_wrapper<T> tmp = *this; return tmp -= n; } - ptrdiff_t + std::ptrdiff_t operator-(const random_access_iterator_wrapper<T>& in) const { ITERATOR_VERIFY(this->SharedInfo == in.SharedInfo); @@ -469,7 +469,7 @@ namespace __gnu_test } T& - operator[](ptrdiff_t n) const + operator[](std::ptrdiff_t n) const { return *(*this + n); } bool @@ -500,12 +500,12 @@ namespace __gnu_test template<typename T> random_access_iterator_wrapper<T> - operator+(random_access_iterator_wrapper<T> it, ptrdiff_t n) + operator+(random_access_iterator_wrapper<T> it, std::ptrdiff_t n) { return it += n; } template<typename T> random_access_iterator_wrapper<T> - operator+(ptrdiff_t n, random_access_iterator_wrapper<T> it) + operator+(std::ptrdiff_t n, random_access_iterator_wrapper<T> it) { return it += n; } diff --git a/libstdc++-v3/testsuite/util/testsuite_performance.h b/libstdc++-v3/testsuite/util/testsuite_performance.h index 54cf8856701..61efd042db2 100644 --- a/libstdc++-v3/testsuite/util/testsuite_performance.h +++ b/libstdc++-v3/testsuite/util/testsuite_performance.h @@ -1,7 +1,7 @@ // -*- C++ -*- // Testing performance utilities for the C++ library testsuite. // -// Copyright (C) 2003, 2004, 2005, 2007, 2008, 2009 +// Copyright (C) 2003, 2004, 2005, 2007, 2008, 2009, 2010 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -50,7 +50,7 @@ extern "C" struct mallinfo mallinfo(void) { - struct mallinfo m = { (((size_t) sbrk (0) + 1023) / 1024), 0 }; + struct mallinfo m = { (((std::size_t) sbrk (0) + 1023) / 1024), 0 }; return m; } } @@ -114,15 +114,15 @@ namespace __gnu_test std::__throw_runtime_error("time_counter::stop"); } - size_t + std::size_t real_time() const { return elapsed_end - elapsed_begin; } - size_t + std::size_t user_time() const { return tms_end.tms_utime - tms_begin.tms_utime; } - size_t + std::size_t system_time() const { return tms_end.tms_stime - tms_begin.tms_stime; } }; @@ -383,7 +383,7 @@ template<typename Container, int Iter> template<typename Container, int Iter> void* - do_thread(void* p = NULL) + do_thread(void* p = 0) { do_loop<Container, Iter>(); return p; @@ -412,10 +412,10 @@ template<typename Container, int Iter, bool Thread> pthread_create(&t3, 0, &do_thread<Container, Iter>, 0); pthread_create(&t4, 0, &do_thread<Container, Iter>, 0); - pthread_join(t1, NULL); - pthread_join(t2, NULL); - pthread_join(t3, NULL); - pthread_join(t4, NULL); + pthread_join(t1, 0); + pthread_join(t2, 0); + pthread_join(t3, 0); + pthread_join(t4, 0); #endif } stop_counters(time, resource); diff --git a/libstdc++-v3/testsuite/util/testsuite_tr1.h b/libstdc++-v3/testsuite/util/testsuite_tr1.h index 4f3e574ccc2..5aac18292bb 100644 --- a/libstdc++-v3/testsuite/util/testsuite_tr1.h +++ b/libstdc++-v3/testsuite/util/testsuite_tr1.h @@ -1,7 +1,8 @@ // -*- C++ -*- // Testing utilities for the tr1 testsuite. // -// Copyright (C) 2004, 2005, 2006, 2007, 2009 Free Software Foundation, Inc. +// Copyright (C) 2004, 2005, 2006, 2007, 2009, 2010 +// 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 @@ -127,8 +128,39 @@ namespace __gnu_test { ExplicitClass(double&); explicit ExplicitClass(int&); + ExplicitClass(double&, int&, double&); }; + struct NothrowExplicitClass + { + NothrowExplicitClass(double&) throw(); + explicit NothrowExplicitClass(int&) throw(); + NothrowExplicitClass(double&, int&, double&) throw(); + }; + + struct ThrowExplicitClass + { + ThrowExplicitClass(double&) throw(int); + explicit ThrowExplicitClass(int&) throw(int); + ThrowExplicitClass(double&, int&, double&) throw(int); + }; + +#ifdef __GXX_EXPERIMENTAL_CXX0X__ + struct NoexceptExplicitClass + { + NoexceptExplicitClass(double&) noexcept(true); + explicit NoexceptExplicitClass(int&) noexcept(true); + NoexceptExplicitClass(double&, int&, double&) noexcept(true); + }; + + struct ExceptExplicitClass + { + ExceptExplicitClass(double&) noexcept(false); + explicit ExceptExplicitClass(int&) noexcept(false); + ExceptExplicitClass(double&, int&, double&) noexcept(false); + }; +#endif + struct NType // neither trivial nor standard-layout { int i; |