propagation_consistent.cc: Fix vs POD-ness of value_type.

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.

From-SVN: r173992
This commit is contained in:
Paolo Carlini 2011-05-21 00:30:57 +00:00 committed by Paolo Carlini
parent cab8411229
commit 11436beb87
5 changed files with 24 additions and 21 deletions

View File

@ -1,3 +1,13 @@
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.

View File

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

View File

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

View File

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

View File

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