diff options
5 files changed, 24 insertions, 21 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 113acf5..e9fd3ac 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,5 +1,15 @@ 2011-05-20 Paolo Carlini <paolo.carlini@oracle.com> + * testsuite/21_strings/basic_string/requirements/exception/ + propagation_consistent.cc: Fix vs POD-ness of value_type. + * testsuite/21_strings/basic_string/requirements/exception/ + basic.cc: Likewise. + * testsuite/ext/vstring/requirements/exception/ + propagation_consistent.cc: Likewise. + * testsuite/ext/vstring/requirements/exception/basic.cc: Likewise. + +2011-05-20 Paolo Carlini <paolo.carlini@oracle.com> + * include/bits/char_traits.h: Use noexcept throughout. * include/std/typeindex: Likewise. diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/requirements/exception/basic.cc b/libstdc++-v3/testsuite/21_strings/basic_string/requirements/exception/basic.cc index 1f6b970..987aaed 100644 --- a/libstdc++-v3/testsuite/21_strings/basic_string/requirements/exception/basic.cc +++ b/libstdc++-v3/testsuite/21_strings/basic_string/requirements/exception/basic.cc @@ -3,7 +3,7 @@ // 2009-11-10 Benjamin Kosnik <benjamin@redhat.com> -// Copyright (C) 2009 Free Software Foundation, Inc. +// Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the @@ -26,7 +26,9 @@ void value() { - typedef __gnu_cxx::throw_value_limit value_type; + // NB: Instantiating with __gnu_cxx::throw_value_limit would be illegal, + // isn't a POD type. + typedef char value_type; typedef __gnu_cxx::throw_allocator_limit<value_type> allocator_type; typedef std::char_traits<value_type> traits_type; typedef std::basic_string<value_type, traits_type, allocator_type> test_type; diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/requirements/exception/propagation_consistent.cc b/libstdc++-v3/testsuite/21_strings/basic_string/requirements/exception/propagation_consistent.cc index 8e27a91..dfcda7f 100644 --- a/libstdc++-v3/testsuite/21_strings/basic_string/requirements/exception/propagation_consistent.cc +++ b/libstdc++-v3/testsuite/21_strings/basic_string/requirements/exception/propagation_consistent.cc @@ -1,10 +1,9 @@ // { dg-options "-std=gnu++0x" } // { dg-require-cstdint "" } -// { dg-do run { xfail *-*-* } } // 2009-09-14 Benjamin Kosnik <benjamin@redhat.com> -// Copyright (C) 2009 Free Software Foundation, Inc. +// Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc. // // This 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 +26,9 @@ void value() { - typedef __gnu_cxx::throw_value_limit value_type; + // NB: Instantiating with __gnu_cxx::throw_value_limit would be illegal, + // isn't a POD type. + typedef char value_type; typedef __gnu_cxx::throw_allocator_limit<value_type> allocator_type; typedef std::char_traits<value_type> traits_type; typedef std::basic_string<value_type, traits_type, allocator_type> test_type; diff --git a/libstdc++-v3/testsuite/ext/vstring/requirements/exception/basic.cc b/libstdc++-v3/testsuite/ext/vstring/requirements/exception/basic.cc index a0042d4..5bc6f27 100644 --- a/libstdc++-v3/testsuite/ext/vstring/requirements/exception/basic.cc +++ b/libstdc++-v3/testsuite/ext/vstring/requirements/exception/basic.cc @@ -3,7 +3,7 @@ // 2009-11-10 Benjamin Kosnik <benjamin@redhat.com> -// Copyright (C) 2009 Free Software Foundation, Inc. +// Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the @@ -26,14 +26,9 @@ void value() { -#if 1 + // NB: Instantiating with __gnu_cxx::throw_value_limit would be illegal, + // isn't a POD type. typedef char value_type; -#else - // XXX - // __gnu_cxx::__rc_string_base<>::_Rep::_M_align’ with constructor - // not allowed in union - // typedef __gnu_cxx::throw_value_limit value_type; -#endif typedef __gnu_cxx::throw_allocator_limit<value_type> allocator_type; typedef std::char_traits<value_type> traits_type; diff --git a/libstdc++-v3/testsuite/ext/vstring/requirements/exception/propagation_consistent.cc b/libstdc++-v3/testsuite/ext/vstring/requirements/exception/propagation_consistent.cc index 09d8618..e609329 100644 --- a/libstdc++-v3/testsuite/ext/vstring/requirements/exception/propagation_consistent.cc +++ b/libstdc++-v3/testsuite/ext/vstring/requirements/exception/propagation_consistent.cc @@ -3,7 +3,7 @@ // 2009-09-14 Benjamin Kosnik <benjamin@redhat.com> -// Copyright (C) 2009 Free Software Foundation, Inc. +// Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the @@ -26,14 +26,9 @@ void value() { -#if 1 + // NB: Instantiating with __gnu_cxx::throw_value_limit would be illegal, + // isn't a POD type. typedef char value_type; -#else - // XXX - // __gnu_cxx::__rc_string_base<>::_Rep::_M_align’ with constructor - // not allowed in union - // typedef __gnu_cxx::throw_value_limit value_type; -#endif typedef __gnu_cxx::throw_allocator_limit<value_type> allocator_type; typedef std::char_traits<value_type> traits_type; |