Paolo Carlini
a5d137be06
[multiple changes]
...
2008-12-08 Paolo Carlini <paolo.carlini@oracle.com>
* include/tr1_impl/cmath: Undef requof / remquol too; add using
declarations.
* acinclude.m4 [GLIBCXX_CHECK_C99_TR1]: Check remquof / remquol too.
* testsuite/tr1/8_c_compatibility/cmath/functions.cc: Adjust.
* configure: Regenerate.
2008-12-08 Edward Smith-Rowland <3dw4rd@verizon.net>
* include/bits/forward_list.h: Fixed spurious "forward_swap" in doxy.
From-SVN: r142548
2008-12-08 11:51:32 +00:00
Paolo Carlini
22493a73d5
re PR libstdc++/38421 (libstdc++-v3/include/tr1/ell_integral.tcc contains __ea identifier)
...
2008-12-06 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/38421
* include/tr1/ell_integral.tcc: Avoid __ea, future SPU badname.
* doc/xml/manual/appendix_contributing.xml: Add __ea to the list
of badnames.
From-SVN: r142519
2008-12-06 10:25:24 +00:00
Tom Tromey
b72b814f80
* include/tr1_impl/functional (_Mu): Fix typo.
...
From-SVN: r142507
2008-12-05 23:42:11 +00:00
Paolo Carlini
015daa3a7b
re PR libstdc++/38399 (money_get<> read decimal point when frac_digits() <= 0)
...
2008-12-05 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/38399
* include/bits/locale_facets_nonio.tcc (money_get<>::
_M_extract(iter_type, iter_type, ios_base&, ios_base::iostate&,
string&)): Fix, reject decimal point when frac_digits <= 0.
* testsuite/22_locale/money_get/get/char/38399.cc: New.
* testsuite/22_locale/money_get/get/wchar_t/38399.cc: Likewise.
* testsuite/22_locale/money_get/get/char/5.cc: Adjust.
* testsuite/22_locale/money_get/get/wchar_t/5.cc: Likewise.
From-SVN: r142487
2008-12-05 18:23:39 +00:00
Benjamin Kosnik
a40fff0edb
re PR libstdc++/38080 (dead links in libstdc++ headers)
...
2008-12-01 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/38080
* include/std/iostream: Correct URL.
* include/std/streambuf: Same.
* include/std/bitset: Same.
* include/std/iosfwd: Same.
* include/std/fstream: Same.
* include/std/istream: Same.
* include/std/ostream: Same.
* include/std/sstream: Same.
* include/bits/basic_ios.h: Same.
* include/bits/stl_map.h: Same.
* include/bits/stl_set.h: Same.
* include/bits/stl_multimap.h: Same.
* include/bits/ios_base.h: Same.
* include/bits/stl_multiset.h: Same.
* include/bits/char_traits.h: Same.
* include/bits/stl_relops.h: Same.
* testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
* testsuite/27_io/ios_base/cons/copy_neg.cc: Ditto.
From-SVN: r142344
2008-12-02 04:55:54 +00:00
Paolo Carlini
c32f57c054
PR libstdc++/38244 (cont, debug bits)
...
2008-11-24 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/38244 (cont, debug bits)
* include/debug/bitset (bitset<>::bitset(const char*, char, char)):
Remove, do not implement DR 778.
From-SVN: r142153
2008-11-24 11:19:39 +00:00
Paolo Carlini
9daf8216f4
re PR libstdc++/38244 (bitset initialization from 0 rejected.)
...
2008-11-24 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/38244
* include/std/bitset (bitset<>::bitset(const char*, char, char)):
Remove, do not implement DR 778.
* doc/xml/manual/intro.xml: Remove entry for DR 778.
* testsuite/23_containers/bitset/cons/2.cc: Remove.
* testsuite/23_containers/bitset/cons/dr396.cc: Tweak.
* testsuite/23_containers/bitset/cons/38244.cc: Add.
From-SVN: r142152
2008-11-24 11:13:44 +00:00
Paolo Carlini
d2f6b13b3b
re PR libstdc++/38210 (num_put<>::do_put(void*) performs padding incorrectly when adjustfield==internal)
...
2008-11-21 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/38210
* include/bits/locale_facets.tcc (num_put<>::do_put(iter_type,
ios_base&, char_type, const void*)): Fix.
* testsuite/22_locale/num_put/put/char/38210.cc: New.
* testsuite/22_locale/num_put/put/wchar_t/38210.cc: Likewise.
From-SVN: r142085
2008-11-21 09:59:17 +00:00
Paolo Carlini
7391b59739
re PR libstdc++/38196 (num_put<>::do_put(bool) performs 'internal' padding incorrectly when boolalpha==true)
...
2008-11-20 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/38196
* include/bits/locale_facets.tcc (num_put<>::do_put(iter_type,
ios_base&, char_type, bool)): Fix.
* testsuite/22_locale/num_put/put/char/38196.cc: New.
* testsuite/22_locale/num_put/put/wchar_t/38196.cc: Likewise.
From-SVN: r142048
2008-11-20 16:00:17 +00:00
Paolo Carlini
43db6c722a
cinttypes: Remove redundant pragma system_header.
...
2008-11-18 Paolo Carlini <paolo.carlini@oracle.com>
* include/tr1_impl/cinttypes: Remove redundant pragma system_header.
* include/tr1_impl/cfenv: Likewise.
* include/tr1_impl/cstdint: Likewise.
From-SVN: r141968
2008-11-18 17:27:10 +00:00
Paolo Carlini
ddbfe947b3
re PR libstdc++/38000 (System header files not found once -isystem /usr/include is used)
...
2008-11-13 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/38000
* include/c_global/csignal: Do not use include_next.
* include/c_global/cstdlib: Likewise.
* include/c_global/cstdio: Likewise.
* include/c_global/cstdarg: Likewise.
* include/c_global/cctype: Likewise.
* include/c_global/cerrno: Likewise.
* include/c_global/cmath: Likewise.
* include/c_global/clocale: Likewise.
* include/c_global/climits: Likewise.
* include/c_global/cassert: Likewise.
* include/c_global/csetjmp: Likewise.
* include/c_global/cwchar: Likewise.
* include/c_global/cfloat: Likewise.
* include/c_global/cstdbool: Likewise.
* include/c_global/cstring: Likewise.
* include/c_global/cstddef: Likewise.
* include/c_global/cwctype: Likewise.
* include/tr1/cstdbool: Likewise.
* include/tr1_impl/cinttypes: Do not include <inttypes.h>.
* include/c_global/cinttypes: Do it here.
* include/tr1/cinttypes: Likewise.
* include/tr1_impl/cfenv: Do not include <fenv.h>.
* include/c_global/cfenv: Do it here.
* include/tr1/cfenv: Likewise.
* include/tr1_impl/cstdint: Do not include <stdint.h>.
* include/c_global/cstdint: Do it here.
* include/tr1/cstdint: Likewise.
* include/c_compatibility/fenv.h: Include <tr1_impl/cfenv>.
* include/c_compatibility/stdint.h: Include <tr1_impl/cstdint>.
* include/c_compatibility/inttypes.h: Include <tr1_impl/cinttypes>.
* include/c_compatibility/math.h: Minor tweak, add comment.
From-SVN: r141812
2008-11-13 00:06:55 +00:00
Paolo Carlini
085b55410d
PR libstdc++/37986 (cont)
...
2008-11-12 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/37986 (cont)
* include/tr1_impl/random (struct _Adaptor): Use only remove_reference
on _Engine.
(struct _Adaptor<_Engine*, _Distribution>): Add.
* testsuite/tr1/5_numerical_facilities/random/variate_generator/
37986.cc: Extend.
From-SVN: r141784
2008-11-12 09:59:27 +00:00
Paolo Carlini
285743c92b
re PR libstdc++/37986 (std::tr1::variate_generator does not conform to TR1.)
...
2008-11-11 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/37986
* include/tr1_impl/random (struct _Adaptor): Use remove_pointer
and remove_reference on _Engine.
* testsuite/tr1/5_numerical_facilities/random/variate_generator/
37986.cc: New.
From-SVN: r141769
2008-11-11 14:31:48 +00:00
Bob Walters
1b32e4e506
forward_list.h: Support non-standard pointer types
...
2008-11-11 Bob Walters <bob.s.walters@gmail.com>
* include/bits/forward_list.h: Support non-standard pointer types
(_Fwd_list_node_base): Add _Alloc template parameter.
(_Fwd_list_node<>): Likewise.
(_Fwd_list_iterator<>): Likewise.
(_Fwd_list_const_iterator<>): Likewise.
(_Fwd_list_node_base::_M_next, _M_transfer_after, _M_reverse_after):
Use _Alloc<_Tp>::pointer.
(_Fwd_list_iterator<>::_M_node): Use _Node_base::_Pointer.
(_Fwd_list_base<>::_M_get_node, _M_create_node, _M_create_node,
_M_insert_after, _M_put_node, _M_erase_after): Likewise.
(_Fwd_list_const_iterator<>::_M_node): use _Node_base::_Const_pointer.
(forward_list<>): Use __static_pointer_cast in place of static_cast,
and __const_pointer_cast in place of const_cast.
* include/bits/forward_list.tcc
(_Fwd_list_node<>::_M_sort_after): Using _Pointer typedefs in place
of standard pointers, __static_pointer_cast in place of static_cast.
(_Fwd_list_base<>::_Fwd_list_base, _M_insert_after, _M_erase_after):
Likewise.
(forward_list<>::_M_initialize_dispatch, _M_fill_initialize,
splice_after, remove, remove_if, merge): Likewise.
* testsuite/23_containers/forward_list/ext_pointer/modifiers/1.cc: New.
* testsuite/23_containers/forward_list/ext_pointer/modifiers/2.cc:
Likewise.
* testsuite/23_containers/forward_list/ext_pointer/modifiers/3.cc:
Likewise.
* testsuite/23_containers/forward_list/ext_pointer/modifiers/4.cc:
Likewise.
* testsuite/23_containers/forward_list/ext_pointer/modifiers/5.cc:
Likewise.
* testsuite/23_containers/forward_list/ext_pointer/operations/1.cc:
Likewise.
* testsuite/23_containers/forward_list/ext_pointer/operations/2.cc:
Likewise.
* testsuite/23_containers/forward_list/ext_pointer/operations/3.cc:
Likewise.
* testsuite/23_containers/forward_list/ext_pointer/operations/4.cc:
Likewise.
* testsuite/23_containers/forward_list/ext_pointer/operations/5.cc:
Likewise.
* testsuite/23_containers/forward_list/ext_pointer/operations/6.cc:
Likewise.
* testsuite/23_containers/forward_list/ext_pointer/operations/7.cc:
Likewise.
* testsuite/23_containers/forward_list/ext_pointer/requirements/1.cc:
Likewise.
* testsuite/23_containers/forward_list/ext_pointer/requirements/
explicit_instantiation/1.cc: Likewise.
* testsuite/23_containers/forward_list/ext_pointer/requirements/
explicit_instantiation/3.cc: Likewise.
* testsuite/23_containers/forward_list/ext_pointer/1.cc: Likewise.
From-SVN: r141765
2008-11-11 12:16:57 +00:00
Paolo Carlini
8d8a4e9d3d
extptr_allocator.h: Minor tweaks.
...
2008-11-11 Paolo Carlini <paolo.carlini@oracle.com>
* include/ext/extptr_allocator.h: Minor tweaks.
* include/ext/pointer.h: Likewise.
* include/ext/cast.h: Likewise.
From-SVN: r141764
2008-11-11 12:15:59 +00:00
Paolo Carlini
b5b3f66baa
2008-11-07 Paolo Carlini <paolo.carlini@oracle.com>
...
* Complete last commit.
From-SVN: r141677
2008-11-07 15:44:35 +00:00
Paolo Carlini
8d200e06a4
2008-11-07 Paolo Carlini <paolo.carlini@oracle.com>
...
* Complete last commit.
From-SVN: r141676
2008-11-07 15:44:20 +00:00
Paolo Carlini
9f4a439439
2008-11-07 Paolo Carlini <paolo.carlini@oracle.com>
...
* Complete last commit.
From-SVN: r141675
2008-11-07 15:43:57 +00:00
Bob Walters
b74318f12b
pointer.h: Add experimental support for non-standard pointer types in containers via the...
...
2008-11-07 Bob Walters <bob.s.walters@gmail.com>
* include/ext/pointer.h: Add experimental support for non-standard
pointer types in containers via the allocator::pointer typedef.
(Currently only supported/working with std::vector)
* include/ext/cast.h: Add overload-able pointer casting functions
for use in containers supporting non-standard pointer types.
* include/ext/extptr_allocator.h: Add _ExtPtr_allocator.
* include/Makefile.am: Update.
* include/precompiled/extc++.h: Likewise.
* include/Makefile.in: Regenerate.
* testsuite/ext/ext_pointer/1.cc: New.
* testsuite/ext/ext_pointer/1_neg.cc: Likewise.
* testsuite/23_containers/vector/ext_pointer/citerators.cc: New.
* testsuite/23_containers/vector/ext_pointer/data_access.cc: Likewise.
* testsuite/23_containers/vector/ext_pointer/resize.cc: Likewise.
* testsuite/23_containers/vector/ext_pointer/types/1.cc: Likewise.
* testsuite/23_containers/vector/ext_pointer/modifiers/element.cc:
Likewise.
* testsuite/23_containers/vector/ext_pointer/modifiers/erase.cc:
Likewise.
* testsuite/23_containers/vector/ext_pointer/modifiers/insert.cc:
Likewise.
* testsuite/23_containers/vector/ext_pointer/explicit_instantiation/
1.cc: Likewise.
* testsuite/23_containers/vector/ext_pointer/explicit_instantiation/
3.cc: Likewise.
From-SVN: r141674
2008-11-07 15:26:25 +00:00
Jonathan Wakely
8e66def0a1
re PR libstdc++/38017 (30_threads/thread/cons/X.cc)
...
PR libstdc++/38017
Revert:
* include/tr1_impl/functional (result_of,reference_wrapper): Update
to use C++0x features.
* testsuite/20_util/function_objects/return_types/result_of.cc: New.
* testsuite/20_util/function_objects/return_types/result_of_neg.cc:
New.
* testsuite/20_util/function_objects/return_types/result_of_ref.cc:
New.
* testsuite/20_util/reference_wrapper/24803.cc: Uncomment FIXMEs.
From-SVN: r141602
2008-11-05 09:36:35 +00:00
Jonathan Wakely
a28a65ec25
re PR libstdc++/24803 ([c++0x] reference_wrapper and pointers to member functions)
...
PR libstdc++/24803
PR libstdc++/37351
* include/tr1_impl/functional (result_of,reference_wrapper): Update
to use C++0x features.
* testsuite/20_util/function_objects/return_types/result_of.cc: New.
* testsuite/20_util/function_objects/return_types/result_of_neg.cc:
New.
* testsuite/20_util/function_objects/return_types/result_of_ref.cc:
New.
* testsuite/20_util/reference_wrapper/24803.cc: Uncomment FIXMEs.
From-SVN: r141596
2008-11-05 02:05:59 +00:00
Paolo Carlini
2a81fe20dd
locale_facets.tcc (num_get<>::do_get(iter_type, iter_type, ios_base&, ios_base::iostate&, bool&): Tidy.
...
2008-11-03 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/locale_facets.tcc (num_get<>::do_get(iter_type,
iter_type, ios_base&, ios_base::iostate&, bool&): Tidy.
* testsuite/22_locale/num_get/get/char/37958.cc: Extend.
* testsuite/22_locale/num_get/get/wchar_t/37958.cc: Likewise.
From-SVN: r141546
2008-11-03 10:23:38 +00:00
Paolo Carlini
7ea6fdf55e
PR libstdc++/37958 (cont again)
...
2008-11-01 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/37958 (cont again)
* include/bits/locale_facets.tcc (num_get<>::do_get(iter_type,
iter_type, ios_base&, ios_base::iostate&, bool&): Fix again.
* testsuite/22_locale/num_get/get/char/37958.cc: Extend.
* testsuite/22_locale/num_get/get/wchar_t/37958.cc: Likewise.
From-SVN: r141523
2008-11-01 22:09:43 +00:00
Paolo Carlini
f18e0ca6dc
locale_facets.tcc (num_get<>::do_get(, long&), [...]): Move inline...
...
2008-11-01 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/locale_facets.tcc (num_get<>::do_get(, long&),
num_get<>::do_get(, unsigned short&),
num_get<>::do_get(, unsigned int&),
num_get<>::do_get(, unsigned long&),
num_get<>::do_get(, long long&),
num_get<>::do_get(, unsigned long long&),
num_put<>::do_put(, long), num_put<>::do_put(, unsigned long),
num_put<>::do_put(, long long),
num_put<>::do_put(, unsigned long long)): Move inline...
* include/bits/locale_facets.h: ... here.
From-SVN: r141520
2008-11-01 17:38:39 +00:00
Paolo Carlini
fa4262a47a
PR libstdc++/37958 (cont)
...
2008-11-01 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/37958 (cont)
* include/bits/locale_facets.tcc (num_get<>::do_get(iter_type,
iter_type, ios_base&, ios_base::iostate&, bool&): Fix again.
From-SVN: r141517
2008-11-01 16:17:42 +00:00
Jonathan Wakely
8dd5e93af6
shared_ptr.h: Update comparisons to match WP.
...
2008-11-01 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/bits/shared_ptr.h: Update comparisons to match WP.
(_Sp_counted_ptr): Make copy and assignment members deleted.
(_Sp_counted_deleter): Remove private copy and assignment members.
(__shared_count::_M_less,__weak_count::_M_less,operator<): Replace
friend operator< with overloaded _M_less member functions to allow
comparison with either shared_count or weak_count.
(__shared_ptr::_M_less,__weak_ptr::_M_less): Replace with...
(__shared_ptr::owner_before,__weak_ptr::owner_before): New overloads
for ownership-based ordering.
(operator<(__shared_ptr,__shared_ptr)): Compare stored pointers,
make non-friend.
(operator==(__shared_ptr,__shared_ptr)): Make non-friend.
(operator!=(__shared_ptr,__shared_ptr)): Likewise.
(less<__shared_ptr<>>,less<shared_ptr<>>,_Sp_less): Explicitly call
pointer specialization.
(__weak_ptr::operator<,weak_ptr::operator<=,weak_ptr::operator>,
weak_ptr::operator>=): Remove operator< and delete all comparisons.
(_Sp_owner_less,owner_less): Predicate for ownership-based ordering.
(operator<(shared_ptr,shared_ptr): Overload for derived shared_ptr.
(operator==(shared_ptr,shared_ptr): Likewise.
(operator!=(shared_ptr,shared_ptr): Likewise.
(swap(shared_ptr,shared_ptr)): Fix parameter types.
(swap(weak_ptr,weak_ptr)): Add missing overload.
* testsuite/20_util/owner_less/cmp.cc: New.
* testsuite/20_util/shared_ptr/comparison/cmp.cc: Test other ops.
* testsuite/20_util/shared_ptr/comparison/less.cc: New.
* testsuite/20_util/shared_ptr/observers/owner_before.cc: New.
* testsuite/20_util/weak_ptr/observers/owner_before.cc: New.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: New.
From-SVN: r141512
2008-11-01 11:29:06 +00:00
Paolo Carlini
894e47e76e
re PR libstdc++/37958 (num_get<>::do_get(bool) sets eofbit flag incorrectly when boolalpha == true)
...
2008-10-31 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/37958
* include/bits/locale_facets.tcc (num_get<>::do_get(iter_type,
iter_type, ios_base&, ios_base::iostate&, bool&): Fix.
* testsuite/22_locale/num_get/get/char/37958.cc: New.
* testsuite/22_locale/num_get/get/wchar_t/37958.cc: Likewise.
From-SVN: r141498
2008-10-31 16:47:48 +00:00
Paolo Carlini
8f0f2a1dfd
re PR libstdc++/37919 ([c++0x] GCC 4.4 regression r141214 of gcc c++0x stl_pair.c causes a boost 1.36 compilation to fail)
...
2008-10-27 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/37919
Revert:
2008-10-18 Douglas Gregor <doug.gregor@gmail.com>
* include/bits/stl_pair.h (__may_be_null_pointer_init): New.
(pair::pair): Eliminate the redundant pair(U1&&, U2&&) constructor.
Add lvalue pair<U1, U2> constructor to handle non-const pair lvalues.
Remove the old variadic constructor, and instead provide several
variadic constructors that avoid failing when attempting to
initialize a pointer from a null pointer constant.
* testsuite/20_util/pair/moveable.cc (test3): Add new tests with
initialization of pointers from the null pointer constant.
From-SVN: r141388
2008-10-27 16:50:23 +00:00
Paolo Carlini
83b83ae97a
re PR libstdc++/37522 (Incorrect vswprintf prototype breaks __to_xstring)
...
2008-10-27 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/37522
* config/os/mingw32/os_defines.h: Define _GLIBCXX_HAVE_BROKEN_VSWPRINTF
* include/bits/basic_string.h: Guard string conversions with
!defined(_GLIBCXX_HAVE_BROKEN_VSWPRINTF) too.
* testsuite/lib/libstdc++.exp (check_v3_target_string_conversions):
New.
* testsuite/lib/dg-options.exp (dg-require-string-conversions): New.
* testsuite/21_strings/basic_string/numeric_conversions/char/stof.cc:
Use the latter.
* testsuite/21_strings/basic_string/numeric_conversions/char/stoll.cc:
Likewise.
* testsuite/21_strings/basic_string/numeric_conversions/char/stoi.cc:
Likewise.
* testsuite/21_strings/basic_string/numeric_conversions/char/stol.cc:
Likewise.
* testsuite/21_strings/basic_string/numeric_conversions/char/
stoull.cc: Likewise.
* testsuite/21_strings/basic_string/numeric_conversions/char/stold.cc:
Likewise.
* testsuite/21_strings/basic_string/numeric_conversions/char/stoul.cc:
Likewise.
* testsuite/21_strings/basic_string/numeric_conversions/char/
to_string.cc: Likewise.
* testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc:
Likewise.
From-SVN: r141382
2008-10-27 15:01:28 +00:00
Chris Fairles
92010a793b
system_error (is_error_code_enum): Specialize for errc.
...
2008-10-22 Chris Fairles <cfairles@gcc.gnu.org>
* include/std/system_error (is_error_code_enum): Specialize for errc.
(error_category::error_category): Defaulted and protected.
(error_category::~error_category): New, virtual.
(error_category::error_category(const error_category&),
error_category::operator=(const error_category&)): Deleted.
(get_system_category, get_posix_category): Remove (DR 890).
(system_category): External linkage (DR 890).
(posix_category): Remove.
(generic_category): Add. External linkage (DR 890).
(error_code::error_code<>(_ErrorCodeEnum)): Use generic_category.
(error_code::clear, error_code::operator=<>(_ErrorCodeEnum)): Forward to
error_code::assign, use generic_category.
(error_condition::error_condition,
error_condition::error_condition<>(_ErrorConditionEnum)): Use
generic_category.
(error_condition::clear,
error_condition::operator=<>(_ErrorConditionEnum)): Forward to
error_code::assign, use generic_category.
(make_error_code, make_error_condition): Define in namespace std.
* include/std/mutex (unique_lock<>::lock, unique_lock<>::try_lock,
unique_lock<>::try_lock_until<>(duration),
unique_lock<>::try_lock_for<>(duration)): Replace posix_error with errc.
* src/system_error.cc (system_error_category, generic_error_category):
New.
(gnu_error_category): Remove.
(get_system_category, get_posix_category): Remove (DR 890).
(system_category, generic_category): Define.
* src/functexcept.cc (__throw_system_error): Use generic_category.
* config/abi/pre/gnu.ver: Export system_category and generic_category,
remove get_system_category and get_generic_category (DR 890).
* config/os/generic/error_constants.h (posix_errno): Rename to errc, use
enum class type. Fix spelling.
* config/os/mingw32/error_constants.h (posix_errno): Likewise.
* testsuite/19_diagnostics/error_code/cons/1.cc: Use errc and
generic_category.
* testsuite/19_diagnostics/error_code/operators/bool.cc: Use errc.
* testsuite/19_diagnostics/error_code/operators/equal.cc: Likewise.
* testsuite/19_diagnostics/error_code/operators/not_equal.cc: Likewise.
* testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Update
dg-error line numbers.
* testsuite/19_diagnostics/error_condition/cons/1.cc: Use
generic_category.
* testsuite/19_diagnostics/error_condition/operators/bool.cc: Use errc.
* testsuite/19_diagnostics/error_condition/operators/equal.cc: Likewise.
* testsuite/19_diagnostics/error_condition/operators/not_equal.cc:
Likewise.
* testsuite/19_diagnostics/headers/system_error/errc_std_c++0x.cc: New.
* testsuite/19_diagnostics/headers/system_error/types_std_c++0x.cc:
Remove using tests since errc is not a namespace.
* testsuite/19_diagnostics/system_error/cons-1.cc: Use errc.
* testsuite/19_diagnostics/system_error/what-4.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_other/wchar_t/error_code.cc:
Likewise.
* testsuite/27_io/basic_ostream/inserters_other/char/error_code.cc:
Likewise.
* testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
From-SVN: r141297
2008-10-22 15:27:44 +00:00
Paolo Carlini
d090f47ae0
2008-10-20 Paolo Carlini <paolo.carlini@oracle.com>
...
* include/tr1_impl/hashtable_policy.h (_Hash_node<>::_Hash_node<>
(_Args&&...)): Add in C++0x mode.
* include/tr1_impl/hashtable (_Hashtable<>::_M_allocate_node,
_Hashtable<>::_M_deallocate_node): Use _M_get_Node_allocator in
C++0x mode.
* include/tr1_impl/hashtable (_Hashtable<>::max_size): Use
Node_allocator for improved accuracy.
* testsuite/tr1/6_containers/unordered_multimap/capacity/
29134-multimap.cc: Adjust.
* testsuite/tr1/6_containers/unordered_multimap/capacity/
29134-map.cc: Likewise.
* testsuite/tr1/6_containers/unordered_multimap/capacity/
29134-multiset.cc: Adjust.
* testsuite/tr1/6_containers/unordered_multimap/capacity/
29134-set.cc: Likewise.
From-SVN: r141242
2008-10-20 16:43:28 +00:00
Paolo Carlini
25bbe9bc63
2008-10-19 Paolo Carlini <paolo.carlini@oracle.com>
...
* include/bits/stl_tree.h (_Rb_tree_node<>::_Rb_tree_node<>
(_Args&&...)): Add in C++0x mode.
(_Rb_tree<>::_M_create_node<>(_Args&&...)): Add in C++0x mode,
use _M_get_Node_allocator.
(_Rb_tree<>::_M_destroy_node(_Link_type): Use _M_get_Node_allocator
in C++0x mode.
* testsuite/23_containers/set/operators/1_neg.cc: Adjust dg-error
line numbers.
* testsuite/23_containers/map/operators/1_neg.cc: Likewise.
From-SVN: r141226
2008-10-19 14:49:38 +00:00
Douglas Gregor
c393ec5a87
stl_pair.h (__may_be_null_pointer_init): New.
...
2008-10-18 Douglas Gregor <doug.gregor@gmail.com>
* include/bits/stl_pair.h (__may_be_null_pointer_init): New.
(pair::pair): Eliminate the redundant pair(U1&&, U2&&) constructor.
Add lvalue pair<U1, U2> constructor to handle non-const pair lvalues.
Remove the old variadic constructor, and instead provide several
variadic constructors that avoid failing when attempting to
initialize a pointer from a null pointer constant.
* testsuite/20_util/pair/moveable.cc (test3): Add new tests with
initialization of pointers from the null pointer constant.
From-SVN: r141214
2008-10-18 23:02:17 +00:00
Paolo Carlini
27caad2e1e
forward_list.tcc (forward_list<>:: _M_initialize_dispatch(_InputIterator, _InputIterator, __false_type)): Simplify.
...
2008-10-17 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/forward_list.tcc (forward_list<>::
_M_initialize_dispatch(_InputIterator, _InputIterator, __false_type)):
Simplify.
From-SVN: r141192
2008-10-17 09:08:02 +00:00
Paolo Carlini
98b932e7c9
forward_list.h (forward_list<>:: forward_list(size_type)): Tweak, use _Base default constructor.
...
2008-10-17 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/forward_list.h (forward_list<>::
forward_list(size_type)): Tweak, use _Base default constructor.
From-SVN: r141191
2008-10-17 08:54:38 +00:00
Paolo Carlini
d051e2e7e6
forward_list.h (forward_list<>::insert_after): Minor cosmetic changes.
...
2008-10-17 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/forward_list.h (forward_list<>::insert_after): Minor
cosmetic changes.
From-SVN: r141190
2008-10-17 08:37:02 +00:00
Edward Smith-Rowland
e73d6fe828
forward_list.h: Factor list construction to dispatch routines.
...
2008-10-16 Edward Smith-Rowland <3dw4rd@verizon.net>
* include/bits/forward_list.h: Factor list construction to dispatch
routines.
* include/bits/forward_list.tcc: Likewise.
* testsuite/23_containers/forward_list/modifiers/2.cc:
From-SVN: r141189
2008-10-17 08:08:03 +00:00
Paolo Carlini
919e5c5edf
forward_list.tcc (operator==): Use auto.
...
2008-10-16 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/forward_list.tcc (operator==): Use auto.
From-SVN: r141173
2008-10-16 14:04:28 +00:00
Paolo Carlini
2a7ee2f989
forward_list.h (_Fwd_list_base<>::_M_insert_after): Move out of line, tweak to return _Fwd_list_node_base*.
...
2008-10-16 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/forward_list.h (_Fwd_list_base<>::_M_insert_after):
Move out of line, tweak to return _Fwd_list_node_base*.
(forward_list<>::insert_after(const_iterator, const _Tp&),
forward_list<>::insert_after(const_iterator, _Tp&&)): Use it.
* include/bits/forward_list.tcc (_Fwd_list_base<>::_M_insert_after):
Define.
* include/bits/forward_list.h (forward_list<>): Consistently qualify
calls of base class functions with this->.
* include/bits/forward_list.tcc (forward_list<>): Likewise.
* include/bits/forward_list.h: Move some functions out of line...
* include/bits/forward_list.tcc: ... here.
* include/bits/forward_list.h (forward_list<>::resize(size_type)): Fix.
From-SVN: r141168
2008-10-16 10:23:00 +00:00
Paolo Carlini
6bb7603486
forward_list.h: Remove pointless const qualifiers in const_casts.
...
2008-10-15 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/forward_list.h: Remove pointless const qualifiers in
const_casts.
* include/bits/forward_list.tcc: Likewise.
* include/bits/forward_list.h (forward_list<>::pointer,
const_pointer, reference, const_reference): Fix, use _Tp_alloc_type.
* testsuite/23_containers/forward_list/requirements/
explicit_instantiation/1.cc: New.
* testsuite/23_containers/forward_list/requirements/
explicit_instantiation/1.cc: Likewise.
From-SVN: r141153
2008-10-15 23:37:54 +00:00
Paolo Carlini
8f47a7f6d8
forward_list.h (forward_list<>::max_size): Use Node_allocator; minor cosmetic changes.
...
2008-10-15 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/forward_list.h (forward_list<>::max_size): Use
Node_allocator; minor cosmetic changes.
* testsuite/23_containers/forward_list/capacity/1.cc: Adjust.
From-SVN: r141151
2008-10-15 22:08:09 +00:00
Edward Smith-Rowland
3a63c9cdfc
forward_list: New.
...
2008-10-15 Edward Smith-Rowland <3dw4rd@verizon.net>
* include/std/forward_list: New.
* include/bits/forward_list.h: Likewise.
* include/bits/forward_list.tcc: Likewise.
* include/precompiled/stdc++.h: Modified to include forward_list.
* include/Makefile.am: Add forward_list, forward_list.h, and
forward_list.tcc.
* include/Makefile.in: Regenerate.
* testsuite/23_containers/forward_list/modifiers/1.cc: New.
* testsuite/23_containers/forward_list/modifiers/2.cc: Likewise.
* testsuite/23_containers/forward_list/modifiers/3.cc: Likewise.
* testsuite/23_containers/forward_list/modifiers/4.cc: Likewise.
* testsuite/23_containers/forward_list/modifiers/5.cc: Likewise.
* testsuite/23_containers/forward_list/cons/1.cc: Likewise.
* testsuite/23_containers/forward_list/cons/2.cc: Likewise.
* testsuite/23_containers/forward_list/cons/3.cc: Likewise.
* testsuite/23_containers/forward_list/cons/4.cc: Likewise.
* testsuite/23_containers/forward_list/cons/5.cc: Likewise.
* testsuite/23_containers/forward_list/cons/6.cc: Likewise.
* testsuite/23_containers/forward_list/cons/7.cc: Likewise.
* testsuite/23_containers/forward_list/cons/8.cc: Likewise.
* testsuite/23_containers/forward_list/cons/9.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/1.cc: Likewise.
* testsuite/23_containers/forward_list/operations/1.cc: Likewise.
* testsuite/23_containers/forward_list/operations/2.cc: Likewise.
* testsuite/23_containers/forward_list/operations/3.cc: Likewise.
* testsuite/23_containers/forward_list/operations/4.cc: Likewise.
* testsuite/23_containers/forward_list/operations/5.cc: Likewise.
* testsuite/23_containers/forward_list/operations/6.cc: Likewise.
* testsuite/23_containers/forward_list/operations/7.cc: Likewise.
* testsuite/23_containers/forward_list/capacity/1.cc: Likewise.
* testsuite/23_containers/forward_list/comparable.cc: Likewise.
* testsuite/23_containers/forward_list/moveable.cc: Likewise.
* testsuite/23_containers/headers/forward_list/synopsis.cc: Likewise.
* testsuite/17_intro/headers/c++200x/all_multiple_inclusion.cc: Update.
* testsuite/17_intro/headers/c++200x/all: Likewise.
From-SVN: r141146
2008-10-15 16:48:13 +00:00
Paolo Carlini
c841843f9e
stl_list.h (_List_node<>::_List_node<>(_Args&&...)): Add in C++0x mode.
...
2008-10-14 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_list.h (_List_node<>::_List_node<>(_Args&&...)):
Add in C++0x mode.
(list<>::_M_create_node<>(_Args&&...)): Use _M_get_Node_allocator.
(list<>::_M_erase(iterator): Likewise, in C++0x mode.
* include/bits/list.tcc (_List_base<>::_M_clear): Likewise.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_2_neg.cc: Likewise.
From-SVN: r141113
2008-10-14 17:14:49 +00:00
Paolo Carlini
1fea874e7a
stl_tree.h (_Rb_tree<>::max_size): Use Node_allocator for improved accuracy.
...
2008-10-14 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_tree.h (_Rb_tree<>::max_size): Use Node_allocator
for improved accuracy.
* include/bits/stl_list.h (list<>::max_size): Likewise.
* testsuite/23_containers/multimap/capacity/29134.cc: Adjust.
* testsuite/23_containers/set/capacity/29134.cc: Likewise.
* testsuite/23_containers/multiset/capacity/29134.cc: Likewise.
* testsuite/23_containers/list/capacity/29134.cc: Likewise.
* testsuite/23_containers/map/capacity/29134.cc: Likewise.
From-SVN: r141110
2008-10-14 15:02:45 +00:00
Paolo Carlini
4661c8fd43
system_error (native_category): Remove.
...
2008-10-10 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/system_error (native_category): Remove.
(posix_category): Add.
(error_code::error_code(_ErrorCodeEnum, typename enable_if<>:type*):
Fix _M_cat initialization.
(error_code::operator=(_ErrorCodeEnum)): Assign _M_cat too.
(error_condition::_M_cat, error_condtion::operator=
(_ErrorConditionEnum)): Implement resolution of DR 804.
(error_condition::error_condition(_ErrorConditionEnum, typename
enable_if<>:type*): Fix.
(error_condition::clear, error_condition::assign): Implement.
(operator==, operator!=): Fix uglification of parameters.
(make_error_code, make_error_condition): Define in namespace
posix_error.
(operator<<(basic_ostream<>&, const error_code&)): Define here.
* include/std/ostream (operator<<(basic_ostream<>&,
const error_code&)): Do not define here.
* testsuite/19_diagnostics/error_condition/cons/1.cc: New.
* testsuite/19_diagnostics/error_condition/operators/bool.cc: Likewise.
* testsuite/19_diagnostics/error_condition/operators/bool_neg.cc:
Likewise.
* testsuite/19_diagnostics/error_condition/operators/equal.cc:
Likewise.
* testsuite/19_diagnostics/error_condition/operators/not_equal.cc:
Likewise.
* testsuite/19_diagnostics/error_code/cons/1.cc: Tweak.
* testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Adjust
dg-error line numbers.
* testsuite/30_threads/unique_lock/locking/2.cc: Tweak.
* testsuite/util/testsuite_error.h: Minor tweaks.
* testsuite/util/testsuite_hooks.cc: Avoid uninitialized warning.
From-SVN: r141039
2008-10-10 12:39:01 +00:00
Bob Walters
08bf5bb38b
stl_vector.h (_Vector_base<>::_Vector_impl::_M_start, [...]): Use _Tp_alloc_type::pointer.
...
2008-10-08 Bob Walters <bob.s.walters@gmail.com>
* include/bits/stl_vector.h (_Vector_base<>::_Vector_impl::_M_start,
_M_finish, _M_end_of_storage, _Vector_base<>::_M_allocate,
_M_deallocate): Use _Tp_alloc_type::pointer.
From-SVN: r140977
2008-10-08 15:04:44 +00:00
Paolo Carlini
5defb0f208
stl_iterator.h (operator-(const reverse_iterator<>&, const reverse_iterator<>&), [...]): Use the auto -> return type syntax, implement DR 685.
...
2008-10-07 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_iterator.h (operator-(const reverse_iterator<>&,
const reverse_iterator<>&), operator-(const __normal_iterator<>&,
const __normal_iterator<>&), operator-(const move_iterator<>&,
const move_iterator<>&)): Use the auto -> return type syntax,
implement DR 685.
From-SVN: r140937
2008-10-07 14:49:20 +00:00
Chris Fairles
3e93b27552
tuple (tuple<>::swap): Implement swap for tuple as per DR 522 [Ready].
...
2008-09-30 Chris Fairles <cfairles@gcc.gnu.org>
* include/std/tuple (tuple<>::swap): Implement swap for tuple as per
DR 522 [Ready].
* testsuite/20_util/tuple/swap.cc: New.
From-SVN: r140822
2008-10-01 22:04:02 +00:00
Paolo Carlini
ced3cb9f72
PR libstdc++/30085 (again)
...
2008-09-30 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/30085 (again)
* include/debug/unordered_map (unordered_map<>, unordered_multimap<>):
Do not derive from _Safe_association, derive from _GLIBCXX_STD_D::
unordered_map / unordered_multimap; add missing member functions.
* include/debug/unordered_set (unordered_set<>, unordered_multiset<>):
Likewise for _GLIBCXX_STD_D::unordered_set / unordered_multiset.
* include/debug/safe_association.h: Remove.
* include/Makefile.am: Adjust.
* include/Makefile.in: Regenerate.
* testsuite/23_containers/unordered_multimap/init-list.cc: Remove
xfail.
From-SVN: r140786
2008-09-30 13:48:55 +00:00
Paolo Carlini
0d5f7a16eb
unique_ptr.h (unique_ptr<_Tp[]>::template<typename U> void reset(U)): Add as deleted function, per DR 821 [Ready].
...
2008-09-28 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/unique_ptr.h (unique_ptr<_Tp[]>::template<typename U>
void reset(U)): Add as deleted function, per DR 821 [Ready].
* include/bits/unique_ptr.h: Prefer everywhere deleted to private
member function declarations; minor formatting tweaks.
* testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: New.
* testsuite/20_util/unique_ptr/assign/assign.cc: Adjust DejaGNU
directives.
From-SVN: r140737
2008-09-28 15:47:45 +00:00