Paolo Carlini
9155c0e3df
hashtable_policy.h (_Rehash_base<_Prime_rehash_policy, [...]): Add, per DR 1189.
...
2010-03-10 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/hashtable_policy.h (_Rehash_base<_Prime_rehash_policy,
_Hashtable>::reserve): Add, per DR 1189.
* include/bits/hashtable.h (_Hashtable<>::size_type,
_Hashtable<>::difference_type): Do not typedef from _Allocator.
* testsuite/23_containers/unordered_map/dr1189.cc: New.
* testsuite/23_containers/unordered_set/dr1189.cc: Likewise.
* testsuite/23_containers/unordered_multimap/dr1189.cc: Likewise.
* testsuite/23_containers/unordered_multiset/dr1189.cc: Likewise.
From-SVN: r157373
2010-03-10 23:49:28 +00:00
Paolo Carlini
d723ced225
revert: PR libstdc++/41975, DR 579
...
2010-03-08 Paolo Carlini <paolo.carlini@oracle.com>
Revert:
2010-02-11 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/41975, DR 579
* include/bits/hashtable.h (_Hashtable<>::_M_erase_node): Remove.
(erase(const_iterator), erase(const_iterator, const_iterator)):
Change return type to void.
* include/debug/unordered_map: Adjust.
* include/debug/unordered_set: Likewise.
* testsuite/util/exception/safety.h: Likewise.
* testsuite/23_containers/unordered_map/erase/1.cc: Likewise.
* testsuite/23_containers/unordered_map/erase/24061-map.cc: Likewise.
* testsuite/23_containers/unordered_set/erase/1.cc: Likewise.
* testsuite/23_containers/unordered_set/erase/24061-map.cc: Likewise.
* testsuite/23_containers/unordered_multimap/erase/1.cc: Likewise.
* testsuite/23_containers/unordered_multimap/erase/24061-map.cc:
Likewise.
* testsuite/23_containers/unordered_multiset/erase/1.cc: Likewise.
* testsuite/23_containers/unordered_multiset/erase/24061-map.cc:
Likewise.
From-SVN: r157300
2010-03-09 01:56:42 +00:00
Paolo Carlini
2ba34efc55
unique_ptr.h (unique_ptr<>::get_deleter): Simplify return type.
...
2010-03-03 Paolo Carlini <paolo.carlini@oracle.com>
Jonathan Wakely <jwakely.gcc@gmail.com>
* include/bits/unique_ptr.h (unique_ptr<>::get_deleter): Simplify
return type.
* testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Adjust
dg-error line number.
* testsuite/20_util/unique_ptr/assign/assign_neg.cc: Likewise.
Co-Authored-By: Jonathan Wakely <jwakely.gcc@gmail.com>
From-SVN: r157193
2010-03-03 11:06:59 +00:00
Paolo Carlini
055f6a476c
functional_hash.h (_Fnv_hash_base<>::hash): Change to template.
...
2010-03-02 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/functional_hash.h (_Fnv_hash_base<>::hash): Change
to template.
* include/tr1/functional_hash.h (_Fnv_hash_base<>::hash): Likewise.
* include/bits/vector.tcc (hash): Adjust.
* include/bits/basic_string.h (hash): Likewise.
* include/std/bitset (hash): Likewise.
* src/hash-string-aux.cc (hash): Likewise.
From-SVN: r157185
2010-03-03 01:23:07 +00:00
Paolo Carlini
f54e96d971
stl_bvector.h (hash<vector<bool, [...]): Move definition...
...
2010-03-02 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_bvector.h (hash<vector<bool, _Alloc>>::
operator()(const vector<bool, _Alloc>&)): Move definition...
* include/bits/vector.tcc: ... here.
From-SVN: r157178
2010-03-02 21:48:20 +00:00
Paolo Carlini
4cd533a7c7
stl_bvector.h (hash<vector<bool, _Alloc>>): Add.
...
2010-03-02 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_bvector.h (hash<vector<bool, _Alloc>>): Add.
* include/debug/vector (hash<__debug::vector<bool, _Alloc>>):
Likewise.
* include/profile/vector (hash<__profile::vector<bool, _Alloc>>):
Likewise.
* testsuite/23_containers/vector/bool/hash/1.cc: New.
* include/std/bitset (hash<bitset<_Nb>>): Small tweaks.
(hash<bitset<0>>): Add.
* include/debug/bitset (hash<__debug::bitset<_Nb>>): Forward to
hash<bitset<_Nb>>.
* include/profile/bitset (hash<__profile::bitset<_Nb>>): Likewise.
* testsuite/23_containers/bitset/hash/1.cc: Improve.
From-SVN: r157176
2010-03-02 21:11:19 +00:00
Jonathan Wakely
3e2e197673
re PR libstdc++/43183 (std::unique_ptr::reset() does not conform to N3035.)
...
2010-03-02 Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/43183
* include/bits/unique_ptr.h (reset): Fix as per working paper.
(operator*, operator->, operator[], operator bool, release): Use
pointer's null value instead of 0.
* testsuite/20_util/unique_ptr/assign/assign_neg.cc: Adjust.
* testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Adjust.
* testsuite/20_util/unique_ptr/modifiers/43183.cc: New.
From-SVN: r157158
2010-03-02 00:40:28 +00:00
Benjamin Kosnik
44de0937ab
atomicfwd_cxx.h: Add typedefs to group.
...
2010-03-01 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/atomicfwd_cxx.h: Add typedefs to group.
From-SVN: r157152
2010-03-01 19:04:23 +00:00
Ed Smith-Rowland
7703dc47e1
random.tcc (operator<<): Use max_digits10.
...
2010-02-25 Ed Smith-Rowland <3dw4rd@verizon.net>
* include/bits/random.tcc (operator<<): Use max_digits10.
From-SVN: r157068
2010-02-25 17:34:30 +00:00
Paolo Carlini
640f8e6548
functional_hash.h (__hash_combine): Remove.
...
2010-02-25 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/functional_hash.h (__hash_combine): Remove.
(_Fnv_hash_base<>::hash(const char*, size_t)): Add defaulted
hash parameter.
(_Fnv_hash::__hash_combine(const _Tp&, size_t)): Add.
* include/std/system_error (hash<system_error>): Adjust.
* src/compatibility-c++0x.cc (hash<system_error>): Likewise.
From-SVN: r157065
2010-02-25 13:32:52 +00:00
Benjamin Kosnik
03a32789f4
faq.xml: Adjust structure for pdf index.
...
2010-02-24 Benjamin Kosnik <bkoz@redhat.com>
* doc/xml/faq.xml: Adjust structure for pdf index.
* doc/xml/manual/mt_allocator.xml: Same.
* doc/xml/manual/allocator.xml: Same.
* doc/xml/manual/ctype.xml: Same.
* doc/xml/manual/numerics.xml: Same.
* doc/xml/manual/codecvt.xml: Same.
* doc/xml/manual/intro.xml: Same.
* doc/xml/manual/shared_ptr.xml: Same.
* doc/xml/manual/status_cxxtr1.xml: Same.
* doc/xml/manual/auto_ptr.xml: Same.
* doc/xml/manual/internals.xml: Same.
* doc/xml/manual/status_cxx1998.xml: Same.
* doc/xml/manual/parallel_mode.xml: Same.
* doc/xml/manual/profile_mode.xml: Same.
* doc/xml/manual/containers.xml: Same.
* doc/xml/manual/io.xml: Same.
* doc/xml/manual/concurrency_extensions.xml: Same.
* doc/xml/manual/appendix_porting.xml: Same.
* doc/xml/manual/utilities.xml: Same.
* doc/xml/manual/support.xml: Same.
* doc/xml/manual/bitmap_allocator.xml: Same.
* doc/xml/manual/configure.xml: Same.
* doc/xml/manual/build_hacking.xml: Same.
* doc/xml/manual/evolution.xml: Same.
* doc/xml/manual/using.xml: Same.
* doc/xml/manual/debug.xml: Same.
* doc/xml/manual/localization.xml: Same.
* doc/xml/manual/strings.xml: Same.
* doc/xml/manual/debug_mode.xml: Same.
* doc/xml/manual/locale.xml: Same.
* doc/xml/manual/extensions.xml: Same.
* doc/xml/manual/appendix_contributing.xml: Same.
* doc/xml/manual/prerequisites.xml: Same.
* doc/xml/manual/messages.xml: Same.
* doc/xml/manual/diagnostics.xml: Same.
* doc/xml/manual/algorithms.xml: Same.
* doc/xml/manual/appendix_free.xml: Same.
* doc/xml/manual/iterators.xml: Same.
* doc/xml/manual/spine.xml: Same.
* doc/xml/manual/status_cxxtr24733.xml: Same.
* doc/xml/manual/status_cxx200x.xml: Same.
* doc/Makefile.am: Refactor.
* doc/Makefile.in: Regenerate.
* include/bits/c++0x_warning.h: Tweak doxygen file markup.
From-SVN: r157059
2010-02-25 01:22:57 +00:00
Benjamin Kosnik
037181bc87
random.h: Doxygen group markup fixes.
...
2010-02-23 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/random.h: Doxygen group markup fixes.
From-SVN: r157023
2010-02-23 23:53:17 +00:00
Paolo Carlini
5c8db18ac6
functional_hash.h (struct _Fnv_hash): Rename to _Fnv_hash_base.
...
2010-02-23 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/functional_hash.h (struct _Fnv_hash): Rename
to _Fnv_hash_base.
(struct _Fnv_hash): Add, derives from the latter.
(__hash_combine): Add.
(hash<float>::operator()(float), hash<double>::operator()(double)):
Adjust.
* include/bits/basic_string.h (hash<string>, hash<wstring>,
hash<u16string>, hash<u32string>): Adjust.
* src/hash-string-aux.cc: Adjust.
* src/compatibility-c++0x.cc (hash<error_code>): Use __hash_combine.
* include/std/system_error (hash<error_code>): Likewise.
* include/std/thread (struct hash<thread::id>): Add.
* include/tr1/functional_hash.h : Rename to _Fnv_hash_base.
(struct _Fnv_hash): Add, derives from the latter.
(hash<float>::operator()(float), hash<double>::operator()(double)):
Adjust.
* testsuite/30_threads/thread/id/hash.cc: New.
* testsuite/30_threads/thread/cons/assign_neg.cc: Adjust dg-error
line number.
* testsuite/30_threads/thread/cons/copy_neg.cc: Likewise.
From-SVN: r157005
2010-02-23 15:23:37 +00:00
Paolo Carlini
15d81a3c31
functional_hash.h (hash<string>, [...]): Move, per DR 1182 to...
...
2010-02-22 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/functional_hash.h (hash<string>, hash<wstring>,
hash<u16string>, hash<u32string>, hash<error_code>): Move, per
DR 1182 to...
* include/bits/basic_string.h: ... here.
* include/std/system_error: ... and here, respectively.
* src/hash-aux.cc (hash<long double>::operator()(long double)):
Move definition...
* src/hash_c++0x.cc: ... here, new file.
* src/hash_tr1.cc: ... and here, tweak includes.
* src/compatibility-c++0x.cc (hash, _Fnv_hash): Remove.
* src/Makefile.am: Adjust.
* src/Makefile.in: Regenerate.
* include/std/functional: Include <bits/functexcept.h>.
* include/std/unordered_set: Remove redundant include.
* include/std/unordered_map: Likewise.
* include/tr1/functional_hash.h: Remove spurious trailing semicolon.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Remove
dg-excess.
From-SVN: r156971
2010-02-22 18:07:07 +00:00
Paolo Carlini
488d283713
stl_algo.h (for_each): Implement resolution of DR 1110.
...
2010-02-19 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_algo.h (for_each): Implement resolution of DR 1110.
* testsuite/25_algorithms/for_each/1.cc: New.
From-SVN: r156900
2010-02-19 17:38:18 +00:00
Paolo Carlini
415ed61204
shared_ptr_base.h (__weak_ptr): Remove deleted comparison operators, per DR 1256.
...
2010-02-19 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/shared_ptr_base.h (__weak_ptr): Remove deleted
comparison operators, per DR 1256.
* include/bits/shared_ptr.h (weak_ptr): Likewise.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust.
From-SVN: r156891
2010-02-19 10:42:47 +00:00
Benjamin Kosnik
40e053e3b8
run_doxygen: Add shortnames option.
...
2010-02-18 Benjamin Kosnik <bkoz@redhat.com>
* scripts/run_doxygen: Add shortnames option.
* doc/Makefile.am (doc-man-doxygen): Use it.
(doc-html-doxygen): Use it.
(doc-xml-doxygen): Use it, but default to NO.
(doc-pdf-dblatex): Add.
* doc/Makefile.in: Regenerate.
* doc/doxygen/user.cfg.in: Update filelist.
* include/bits/locale_facets.h: Fix markup warning.
From-SVN: r156887
2010-02-19 03:30:46 +00:00
Chris Jefferson
2a5f4935e8
locale_facets.h (__convert_to_v): Add empty exception-specification.
...
2010-02-17 Chris Jefferson <chris@bubblescope.net>
* include/bits/locale_facets.h (__convert_to_v): Add empty
exception-specification.
From-SVN: r156837
2010-02-17 21:09:10 +00:00
Benjamin Kosnik
32ade5590e
ios_locale.cc: Fixes for -pedantic.
...
2010-02-16 Benjamin Kosnik <bkoz@redhat.com>
* src/ios_locale.cc: Fixes for -pedantic.
* src/system_error.cc: Same.
* src/locale.cc: Same.
* src/list.cc: Same.
* src/locale_facets.cc: Same.
* src/locale_init.cc: Same.
* src/ios.cc: Same.
* config/locale/darwin/ctype_members.cc: Same.
* config/locale/gnu/collate_members.cc: Same.
* config/locale/gnu/ctype_members.cc: Same.
* config/locale/gnu/c_locale.cc: Same.
* config/locale/gnu/monetary_members.cc: Same.
* config/locale/gnu/time_members.cc: Same.
* config/locale/ieee_1003.1-2001/c_locale.cc: Same.
* config/locale/generic/collate_members.cc: Same.
* config/locale/generic/ctype_members.cc: Same.
* config/locale/generic/c_locale.cc: Same.
* config/locale/generic/monetary_members.cc: Same.
* config/locale/generic/time_members.cc: Same.
* config/io/basic_file_stdio.cc: Same.
* libsupc++/pbase_type_info.cc: Fixes for -fno-rtti.
* libsupc++/pointer_type_info.cc: Same.
* libsupc++/eh_personality.cc: Same.
* include/std/system_error: Throw spacing.
* include/bits/locale_classes.h: Same.
* include/bits/locale_facets.h: Same.
* include/bits/ios_base.h: Same.
* testsuite/17_intro/headers/c++200x/all_no_rtti.cc: New.
* testsuite/17_intro/headers/c++1998/all_no_rtti.cc: New
From-SVN: r156822
2010-02-17 05:43:24 +00:00
Paolo Carlini
05eeebfe49
random.h (linear_congruential_engine(_Sseq&), [...]): Do not enable for the type itself.
...
2010-02-16 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/random.h (linear_congruential_engine(_Sseq&),
mersenne_twister_engine(_Sseq&), subtract_with_carry_engine(_Sseq&)):
Do not enable for the type itself.
(discard_block_engine(_Sseq&), independent_bits_engine(_Sseq&),
shuffle_order_engine(_Sseq&)): Do not enable for the type itself too.
(linear_congruential_engine<>::seed(_Sseq&),
mersenne_twister_engine<>::seed(_Sseq&),
subtract_with_carry_engine<>::seed(_Sseq&)): Use enable_if on the
return type.
(discard_block_engine<>::seed(_Sseq&),
independent_bits_engine<>::seed(_Sseq&),
shuffle_order_engine<>::seed(_Sseq&)): Do not use enable_if.
* include/bits/random.tcc: Adjust definitions.
* testsuite/26_numerics/random/independent_bits_engine/cons/copy.cc:
New.
* testsuite/26_numerics/random/subtract_with_carry_engine/cons/
copy.cc: Likewise.
* testsuite/26_numerics/random/discard_block_engine/cons/
copy.cc: Likewise.
* testsuite/26_numerics/random/mersenne_twister_engine/cons/
copy.cc: Likewise.
* testsuite/26_numerics/random/linear_congruential_engine/cons/
copy.cc: Likewise.
* testsuite/26_numerics/random/shuffle_order_engine/cons/
copy.cc: Likewise.
* testsuite/26_numerics/random/independent_bits_engine/cons/
base_move.cc: Minor tweaks.
* testsuite/26_numerics/random/independent_bits_engine/cons/seed1.cc:
Likewise.
* testsuite/26_numerics/random/independent_bits_engine/cons/seed2.cc:
Likewise.
* testsuite/26_numerics/random/independent_bits_engine/cons/
base_copy.cc: Likewise.
* testsuite/26_numerics/random/independent_bits_engine/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/independent_bits_engine/cons/
seed_seq.cc: Likewise.
* testsuite/26_numerics/random/subtract_with_carry_engine/cons/
seed1.cc: Likewise.
* testsuite/26_numerics/random/subtract_with_carry_engine/cons/
seed2.cc: Likewise.
* testsuite/26_numerics/random/subtract_with_carry_engine/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/subtract_with_carry_engine/cons/
seed_seq.cc: Likewise.
* testsuite/26_numerics/random/discard_block_engine/cons/base_move.cc:
Likewise.
* testsuite/26_numerics/random/discard_block_engine/cons/seed1.cc:
Likewise.
* testsuite/26_numerics/random/discard_block_engine/cons/seed2.cc:
Likewise.
* testsuite/26_numerics/random/discard_block_engine/cons/base_copy.cc:
Likewise.
* testsuite/26_numerics/random/discard_block_engine/cons/default.cc:
Likewise.
* testsuite/26_numerics/random/discard_block_engine/cons/seed_seq.cc:
Likewise.
* testsuite/26_numerics/random/mersenne_twister_engine/cons/seed1.cc:
Likewise.
* testsuite/26_numerics/random/mersenne_twister_engine/cons/seed2.cc:
Likewise.
* testsuite/26_numerics/random/mersenne_twister_engine/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/mersenne_twister_engine/cons/
seed_seq.cc: Likewise.
* testsuite/26_numerics/random/linear_congruential_engine/cons/
seed1.cc: Likewise.
* testsuite/26_numerics/random/linear_congruential_engine/cons/
seed2.cc: Likewise.
* testsuite/26_numerics/random/linear_congruential_engine/cons/
seed_seq.cc: Likewise.
* testsuite/26_numerics/random/shuffle_order_engine/cons/base_move.cc:
Likewise.
* testsuite/26_numerics/random/shuffle_order_engine/cons/seed1.cc:
Likewise.
* testsuite/26_numerics/random/shuffle_order_engine/cons/seed2.cc:
Likewise.
* testsuite/26_numerics/random/shuffle_order_engine/cons/base_copy.cc:
Likewise.
* testsuite/26_numerics/random/shuffle_order_engine/cons/default.cc:
Likewise.
* testsuite/26_numerics/random/shuffle_order_engine/cons/seed_seq.cc:
Likewise.
From-SVN: r156815
2010-02-16 19:19:55 +00:00
Paolo Carlini
d779a59199
unique_ptr.h: (unique_ptr<>:: unique_ptr(const unique_ptr<_Up...
...
2010-02-16 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/unique_ptr.h: (unique_ptr<>::
unique_ptr(const unique_ptr<_Up, _Up_Deleter>&),
operator=(const unique_ptr<_Up, _Up_Deleter>&)): Remove, redundant,
per DR 1303.
* include/bits/shared_ptr.h (shared_ptr<>::
shared_ptr(const unique_ptr<_Up, _Up_Deleter>&),
operator=(const unique_ptr<_Up, _Up_Deleter>&)): Likewise.
* include/bits/shared_ptr_base.h (__shared_ptr<>::
__shared_ptr(const unique_ptr<_Up, _Up_Deleter>&),
operator=(const unique_ptr<_Up, _Up_Deleter>&)): Likewise.
* testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Adjust.
* testsuite/20_util/unique_ptr/assign/assign_neg.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/unique_ptr_neg.cc: Likewise.
* testsuite/20_util/shared_ptr/assign/unique_ptr_lvalue_neg.cc:
Likewise.
From-SVN: r156807
2010-02-16 16:01:23 +00:00
Paolo Carlini
d5c5922408
stl_algo.h (__median): Move...
...
2010-02-15 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_algo.h (__median): Move...
* include/ext/algorithm: ... here, being an SGI extension.
From-SVN: r156776
2010-02-15 16:55:20 +00:00
Paolo Carlini
932b650839
PR libstdc++/41975, DR 579
...
2010-02-11 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/41975, DR 579
* include/bits/hashtable.h (_Hashtable<>::_M_erase_node): Remove.
(erase(const_iterator), erase(const_iterator, const_iterator)):
Change return type to void.
* include/debug/unordered_map: Adjust.
* include/debug/unordered_set: Likewise.
* testsuite/util/exception/safety.h: Likewise.
* testsuite/23_containers/unordered_map/erase/1.cc: Likewise.
* testsuite/23_containers/unordered_map/erase/24061-map.cc: Likewise.
* testsuite/23_containers/unordered_set/erase/1.cc: Likewise.
* testsuite/23_containers/unordered_set/erase/24061-map.cc: Likewise.
* testsuite/23_containers/unordered_multimap/erase/1.cc: Likewise.
* testsuite/23_containers/unordered_multimap/erase/24061-map.cc:
Likewise.
* testsuite/23_containers/unordered_multiset/erase/1.cc: Likewise.
* testsuite/23_containers/unordered_multiset/erase/24061-map.cc:
Likewise.
From-SVN: r156705
2010-02-11 18:11:01 +00:00
Paolo Carlini
ab65a4c7bd
hashtable.h: Fold in include/tr1_impl/hashtable.h contents.
...
2010-02-10 Paolo Carlini <paolo.carlini@oracle.com>
* include/tr1/hashtable.h: Fold in include/tr1_impl/hashtable.h
contents.
* include/tr1_impl/hashtable.h: Remove.
* include/tr1_impl/hashtable_policy.h: Move and rename...
* include/tr1/hashtable_policy.h: ... here.
* include/tr1_impl/unordered_map: Move and rename...
* include/tr1/unordered_map.h: ... here.
* include/tr1_impl/unordered_set: Move and rename...
* include/tr1/unordered_set.h: ... here.
* include/tr1_impl/unordered_map: Move and rename...
* include/tr1/unordered_map.h: ... here.
* include/tr1/unordered_map: Adjust.
* include/tr1/unordered_set: Likewise.
* include/Makefile.am: Adjust.
* include/Makefile.in: Regenerate.
* include/std/c++0x_warning.h: Move...
* include/bits/c++0x_warning.h: ... here.
* include/debug/unordered_map: Adjust.
* include/debug/unordered_set: Likewise.
* include/std/tuple: Likewise.
* include/std/system_error: Likewise.
* include/std/forward_list: Likewise.
* include/std/thread: Likewise.
* include/std/type_traits: Likewise.
* include/std/future: Likewise.
* include/std/regex: Likewise.
* include/std/atomic: Likewise.
* include/std/ratio: Likewise.
* include/std/random: Likewise.
* include/std/unordered_map: Likewise.
* include/std/chrono: Likewise.: Likewise.
* include/std/condition_variable: Likewise.
* include/std/mutex: Likewise.
* include/std/unordered_set: Likewise.
* include/std/array: Likewise.
* include/profile/unordered_map: Likewise.
* include/profile/unordered_set: Likewise.
* include/c_global/cinttypes: Likewise.
* include/c_global/ctgmath: Likewise.
* include/c_global/cfenv: Likewise.
* include/c_global/cstdint: Likewise.
* include/c_global/cstdbool: Likewise.
* include/c_global/ccomplex: Likewise.
* include/bits/shared_ptr.h: Do not include <bits/c++0x_warning.h>
at all, the file is not meant to be included by the users.
* include/bits/functional_hash.h: Likewise.
* include/bits/unique_ptr.h: Likewise.
* include/bits/forward_list.h: Likewise.
* testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust dg-*
line numbers.
* testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
assign_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Likewise.
* testsuite/20_util/unique_ptr/assign/assign_neg.cc: Likewise.
From-SVN: r156667
2010-02-10 19:14:33 +00:00
Paolo Carlini
3b2524b126
hashtable.h: Fold in include/tr1_impl/hashtable.h for C++0x use.
...
2010-02-10 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/hashtable.h: Fold in include/tr1_impl/hashtable.h
for C++0x use.
* include/bits/hashtable_policy.h: New, copy and adjust for
C++0x use, include/tr1_impl/hashtable_policy.h; fix erase and
insert member functions per n3000.
* include/bits/unordered_map.h: Likewise for include/tr1_impl/
unordered_map.
* include/bits/unordered_set.h: Likewise for include/tr1_impl/
unordered_set.
* include/Makefile.am: Adjust.
* include/Makefile.in: Regenerate.
* include/tr1/unordered_map: Adjust.
* include/tr1/unordered_set: Likewise.
* include/tr1_impl/unordered_map: Adjust, now used only by tr1.
* include/tr1_impl/hashtable: Likewise.
* include/tr1_impl/hashtable_policy.h: Likewise.
* include/tr1_impl/unordered_set: Likewise.
* include/std/unordered_map: Adjust and simplify includes.
* include/std/unordered_set: Likewise.
* include/debug/unordered_map: Adjuse erase and insert members.
* include/debug/unordered_set: Likewise.
* include/profile/unordered_map: Likewise.
* include/profile/unordered_set: Likewise.
* testsuite/util/exception/safety.h: Fix for the updated erase and
insert member functions of the unordered_containers.
* testsuite/23_containers/unordered_map/erase/1.cc: New.
* testsuite/23_containers/unordered_map/erase/24061-map.cc: Likewise.
* testsuite/23_containers/unordered_map/insert/map_single.cc:
Likewise.
* testsuite/23_containers/unordered_map/insert/array_syntax.cc:
Likewise.
* testsuite/23_containers/unordered_map/insert/24061-map.cc: Likewise.
* testsuite/23_containers/unordered_map/insert/map_range.cc: Likewise.
* testsuite/23_containers/set/operators/1_neg.cc: Likewise.
* testsuite/23_containers/unordered_multimap/erase/1.cc: Likewise.
* testsuite/23_containers/unordered_multimap/erase/
24061-multimap.cc: Likewise.
* testsuite/23_containers/unordered_multimap/insert/
24061-multimap.cc: Likewise.
* testsuite/23_containers/unordered_multimap/insert/
multimap_range.cc: Likewise.
* testsuite/23_containers/unordered_multimap/insert/
multimap_single.cc: Likewise.
* testsuite/23_containers/unordered_set/erase/1.cc: Likewise.
* testsuite/23_containers/unordered_set/erase/24061-set.cc: Likewise.
* testsuite/23_containers/unordered_set/insert/set_single.cc: Likewise.
* testsuite/23_containers/unordered_set/insert/24061-set.cc: Likewise.
* testsuite/23_containers/unordered_set/insert/set_range.cc: Likewise.
* testsuite/23_containers/unordered_multiset/erase/1.cc: Likewise.
* testsuite/23_containers/unordered_multiset/erase/
24061-multiset.cc: Likewise.
* testsuite/23_containers/unordered_multiset/insert/
24061-multiset.cc: Likewise.
* testsuite/23_containers/unordered_multiset/insert/
multiset_range.cc: Likewise.
* testsuite/23_containers/unordered_multiset/insert/
multiset_single.cc: Likewise.
* testsuite/23_containers/set/operators/1_neg.cc: Tweak dg-errors
to avoid spurious fails in debug-mode.
* testsuite/23_containers/map/operators/1_neg.cc: Likewise.
From-SVN: r156661
2010-02-10 16:09:42 +00:00
Benjamin Kosnik
0eb95b0d69
streambuf: Adjust doxygen group markup.
...
2010-02-09 Benjamin Kosnik <bkoz@redhat.com>
* include/std/streambuf: Adjust doxygen group markup.
* include/std/functional: Same.
* include/ext/vstring.h: Same.
* include/ext/pb_ds/assoc_container.hpp: Same.
* include/ext/stdio_filebuf.h: Same.
* include/ext/stdio_sync_filebuf.h: Same.
* include/bits/localefwd.h: Same.
* include/bits/functional_hash.h: Same.
* include/bits/locale_classes.h: Same.
* include/bits/locale_facets.h: Same.
* include/bits/ios_base.h: Same.
* include/bits/codecvt.h: Same.
* include/bits/locale_facets_nonio.h: Same.
* testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
* testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
From-SVN: r156644
2010-02-10 05:45:24 +00:00
Benjamin Kosnik
6cc5a79001
[multiple changes]
...
2010-02-08 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/42460
* include/tr1_impl/regex: Fix quoting issues in doxygen markup.
* include/bits/random.h: Fix multi-line doxygen function markup.
2010-02-08 Matthias Klose <doko@debian.org>
PR libstdc++/42460
* include/std/istream: Fix '\' quoting in doxygen markup.
From-SVN: r156617
2010-02-09 04:49:49 +00:00
Ed Smith-Rowland
83c290e2d4
random.tcc (uniform_int_distribution<>:: operator()(_UniformRandomNumberGenerator&, const param_type&)): Use make_unsigned instead of __add_unsigned and conditional instead of...
...
2010-02-08 Ed Smith-Rowland <3dw4rd@verizon.net>
* include/bits/random.tcc (uniform_int_distribution<>::
operator()(_UniformRandomNumberGenerator&, const param_type&)):
Use make_unsigned instead of __add_unsigned and conditional
instead of __conditional_type.
* include/std/random: Do not include <ext/type_traits.h> and
<ext/numeric_traits.h>.
From-SVN: r156608
2010-02-08 17:42:12 +00:00
Paolo Carlini
240c7f7f57
re PR libstdc++/16896 (Use of non-reserved names in stl_list.h)
...
2010-02-07 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/16896
* include/bits/stl_list.h (_List_node_base::transfer): Rename
to _M_transfer.
(_List_node_base::reverse): Rename to _M_reverse.
(_List_node_base::hook): Rename to _M_hook.
(_List_node_base::unhook): Rename to _M_unhook; adjust callers.
* include/bits/list.tcc: Adjust callers.
* src/list.cc: Adjust.
* src/compatibility.cc: Likewise.
* src/compatibility-list.cc: New.
* src/compatibility-debug_list.cc: Likewise.
* src/compatibility-parallel_list.cc: Likewise.
* src/Makefile.am: Add.
* src/Makefile.in: Regenerate.
* config/abi/pre/gnu.ver: Export _M_* symbols.
* src/hash.cc: Rename to hash-aux.cc.
* src/compatibility-ldbl.cc: Adjust.
* src/compatibility-c++0x.cc: Likewise.
* src/hash_tr1.cc: Likewise.
* src/hashtable.cc: Rename to hashtable-aux.cc.
* src/hashtable_c++0x.cc: Adjust.
* src/hashtable_tr1.cc: Likewise.
* src/limits_c++0x.cc: Fold...
* src/limits.cc... here.
From-SVN: r156578
2010-02-07 18:36:48 +00:00
Paolo Carlini
f41e0f1046
stl_pair.h (pair<>::pair(_U1&&, const _T2&), [...]): Revert to std::is_convertible, basing on DR 811.
...
2010-02-07 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_pair.h (pair<>::pair(_U1&&, const _T2&),
pair<>::pair(const _T1&, _U2&&), pair<>::pair(_U1&&, _U2&&)):
Revert to std::is_convertible, basing on DR 811.
From-SVN: r156570
2010-02-07 10:29:04 +00:00
Paolo Carlini
54f3822595
re PR libstdc++/27340 (valarray uses __cos which may conflict with libm functions)
...
2010-02-06 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/27340
* include/bits/valarray_before.h: Uglify the structs wrapping
cmath functions differently, eg, _Cos instead of __cos.
* include/bits/valarray_after.h: Adjust.
From-SVN: r156555
2010-02-06 20:41:09 +00:00
Paolo Carlini
6989b63f39
stl_algobase.h (struct __iter_base): Rename to _Iter_base; add iterator_type typedef.
...
2010-02-05 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_algobase.h (struct __iter_base): Rename to
_Iter_base; add iterator_type typedef.
(struct __miter_base): Rename to _Miter_base.
(struct __niter_base): Rename to _Niter_base.
(__miter_base, __niter_base): Add, use the latter; adjust everywhere.
From-SVN: r156515
2010-02-05 10:55:54 +00:00
Benjamin Kosnik
2a60a9f652
re PR libstdc++/42460 (man page errors for generated libstdc++ man pages)
...
2010-02-04 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/42460
* doc/doxygen/user.cfg.in: Update file list.
* include/debug/safe_sequence.h: Doxygen markup fixes for '' and "".
* include/debug/safe_base.h: Same.
* include/debug/macros.h: Same.
* include/tr1_impl/regex: Same.
* include/std/iostream: Same.
* include/std/streambuf: Same.
* include/std/bitset: Same.
* include/std/iosfwd: Same.
* include/std/limits: Same.
* include/std/fstream: Same.
* include/std/istream: Same.
* include/std/ostream: Same.
* include/std/sstream: Same.
* include/parallel/multiway_merge.h: Same.
* include/parallel/for_each.h: Same.
* include/parallel/workstealing.h: Same.
* include/parallel/omp_loop_static.h: Same.
* include/parallel/omp_loop.h: Same.
* include/c_std/csignal: Same.
* include/c_std/cstdlib: Same.
* include/c_std/cstdio: Same.
* include/c_std/cstdarg: Same.
* include/c_std/cctype: Same.
* include/c_std/cerrno: Same.
* include/c_std/cmath: Same.
* include/c_std/ciso646: Same.
* include/c_std/ctime: Same.
* include/c_std/clocale: Same.
* include/c_std/climits: Same.
* include/c_std/cassert: Same.
* include/c_std/csetjmp: Same.
* include/c_std/cwchar: Same.
* include/c_std/cfloat: Same.
* include/c_std/cstring: Same.
* include/c_std/cstddef: Same.
* include/c_std/cwctype: Same.
* include/profile/iterator_tracker.h: Same.
* include/profile/impl/profiler_trace.h: Same.
* include/ext/vstring.h: Same.
* include/ext/algorithm: Same.
* include/ext/pb_ds/detail/pat_trie_/pat_trie_.h.pp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.h.pp: Same.
* include/ext/pb_ds/detail/type_utils.hpp: Same.
* include/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp: Same
* include/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp: Same.
* include/ext/rc_string_base.h: Same.
* include/ext/stdio_sync_filebuf.h: Same.
* include/ext/functional: Same.
* include/ext/mt_allocator.h: Same.
* include/bits/basic_ios.h: Same.
* include/bits/stl_map.h: Same.
* include/bits/stl_algobase.h: Same.
* include/bits/stl_queue.h: Same.
* include/bits/locale_classes.h: Same.
* include/bits/stl_set.h: Same.
* include/bits/locale_facets.h: Same.
* include/bits/stl_stack.h: Same.
* include/bits/stl_iterator_base_types.h: Same.
* include/bits/basic_string.h: Same.
* include/bits/stl_multimap.h: Same.
* include/bits/ios_base.h: Same.
* include/bits/stl_deque.h: Same.
* include/bits/stl_multiset.h: Same.
* include/bits/stl_iterator_base_funcs.h: Same.
* include/bits/char_traits.h: Same.
* include/bits/stl_algo.h: Same.
* include/bits/stl_iterator.h: Same.
* include/bits/stl_tempbuf.h: Same.
* include/bits/random.tcc: Same.
* include/bits/stl_function.h: Same.
* include/bits/cpp_type_traits.h: Same.
* include/bits/random.h: Same.
* include/bits/allocator.h: Same.
* include/bits/locale_facets_nonio.h: Same.
* include/c_global/csignal: Same.
* include/c_global/cstdlib: Same.
* include/c_global/cstdio: Same.
* include/c_global/cstdarg: Same.
* include/c_global/cctype: Same.
* include/c_global/cerrno: Same.
* include/c_global/cmath: Same.
* include/c_global/ciso646: Same.
* include/c_global/ctime: Same.
* include/c_global/clocale: Same.
* include/c_global/climits: Same.
* include/c_global/cassert: Same.
* include/c_global/csetjmp: Same.
* include/c_global/cwchar: Same.
* include/c_global/cfloat: Same.
* include/c_global/cstring: Same.
* include/c_global/cstddef: Same.
* include/c_global/cwctype: Same.
* include/tr1/hypergeometric.tcc: Same.
* include/tr1/random.tcc: Same.
* include/tr1/functional: Same.
* include/tr1/random.h: Same.
* include/backward/auto_ptr.h: Same.
* include/backward/binders.h: Same.
* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
Adjust line numbers.
* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc:
Same.
* testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc:
Same.
From-SVN: r156502
2010-02-04 18:20:34 +00:00
Benjamin Kosnik
036c0f63e1
allocator.h: Fix for -fno-exceptions.
...
2010-02-02 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/allocator.h: Fix for -fno-exceptions.
* include/bits/basic_string.h (basic_string::shrink_to_fit): Same.
From-SVN: r156459
2010-02-03 00:20:05 +00:00
Paolo Carlini
15ecdcc6fc
re PR libstdc++/42408 (Missing templatized seed())
...
2010-02-01 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/42408
* include/bits/random.h (linear_congruential_engine<>::
linear_congruential_engine(seed_seq&),
linear_congruential_engine<>::seed(seed_seq&),
mersenne_twister<>::mersenne_twister(seed_seq&),
mersenne_twister<>::seed(seed_seq&),
subtract_with_carry_engine<>::subtract_with_carry_engine(seed_seq&),
subtract_with_carry_engine<>::seed(seed_seq&),
discard_block_engine<>::discard_block_engine(seed_seq&),
discard_block_engine<>::seed(seed_seq&),
independent_bits_engine<>::independent_bits_engine(seed_seq&),
independent_bits_engine<>::seed(seed_seq&),
shuffle_order_engine<>::shuffle_order_engine(seed_seq&),
shuffle_order_engine<>::seed(seed_seq&)): Templatize.
* include/bits/random.tcc: Adjust.
* testsuite/26_numerics/random/subtract_with_carry_engine/cons/
seed_seq.cc: New.
* testsuite/26_numerics/random/mersenne_twister_engine/cons/
seed_seq.cc: Likewise.
* testsuite/26_numerics/random/linear_congruential_engine/
cons/seed_seq.cc: Likewise.
From-SVN: r156430
2010-02-01 19:45:23 +00:00
Paolo Carlini
1e3ca17d52
forward_list.h (forward_list<>::resize(size_type), [...]): Only declare.
...
2010-02-01 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/forward_list.h (forward_list<>::resize(size_type),
forward_list(size_type)): Only declare.
* include/bits/forward_list.tcc (forward_list<>::resize(size_type),
forward_list(size_type)): Define, don't assume CopyConstructible.
* testsuite/23_containers/forward_list/cons/10.cc: New.
* testsuite/23_containers/forward_list/modifiers/6.cc: Likewis.
* testsuite/23_containers/forward_list/requirements/dr438/
assign_neg.cc: Adjust dg-error line numbers.
* testsuite/23_containers/forward_list/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
constructor_2_neg.cc: Likewise.
* include/bits/forward_list.h: Use _M_get_Node_allocator throughout.
From-SVN: r156426
2010-02-01 13:10:12 +00:00
Paolo Carlini
22977dce58
generation_prohibited.c: Remove, swap can indeed throw (DR 774).
...
2010-01-31 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/23_containers/array/requirements/exception/
generation_prohibited.c: Remove, swap can indeed throw (DR 774).
* testsuite/util/exception/safety.h (insert_base<__versa_string>): Fix.
* testsuite/util/testsuite_container_traits.h
(traits<__versa_string>): Enable insert tests.
2010-01-31 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/forward_list.h (forward_list<>::insert_after
(const_iterator, size_type, const _Tp&), insert_after(const_iterator,
_InputIterator, _InputIterator), insert_after(const_iterator,
std::initializer_list<>)): Fix return type per N3000.
* testsuite/23_containers/forward_list/ext_pointer/modifiers/2.cc:
Adjust.
* testsuite/23_containers/forward_list/modifiers/2.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
assign_neg.cc: Adjust dg-error line numbers.
* testsuite/23_containers/forward_list/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
constructor_2_neg.cc: Likewise.
From-SVN: r156419
2010-01-31 22:52:25 +00:00
François Dumont
a2fe92030c
stl_algobase.h (struct __iter_base): Add.
...
2010-01-28 François Dumont <francois.cppdevs@free.fr>
* include/bits/stl_algobase.h (struct __iter_base): Add.
(__niter_base, __miter_base): Adjust, use the latter.
From-SVN: r156335
2010-01-28 22:29:52 +00:00
Paolo Carlini
10154e0d52
basic_string.h (basic_string<>:: basic_string(basic_string&&), [...]): Add.
...
2010-01-10 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/basic_string.h (basic_string<>::
basic_string(basic_string&&), operator=(basic_string&&),
assign(basic_string&&)): Add.
* config/abi/pre/gnu.ver: Export new symbols.
* include/ext/vstring.h (__versa_string<>::assign(__versa_string&&)):
Add.
(operator=(__versa_string&&)): Don't call clear unnecessarily.
* include/ext/rc_string_base.h (__rc_string_base<>::
__rc_string_base(__rc_string_base&&)): Simplify a tad.
* testsuite/21_strings/basic_string/cons/char/moveable.cc: New.
* testsuite/21_strings/basic_string/cons/wchar_t/moveable.cc: Likewise.
* testsuite/ext/vstring/assign/move_assign.cc: Likewise.
* testsuite/21_strings/basic_string/assign/char/move_assign.cc:
Likewise.
* testsuite/21_strings/basic_string/assign/wchar_t/move_assign.cc:
Likewise.
From-SVN: r155788
2010-01-10 13:38:47 +00:00
Paolo Carlini
0462fd5e01
set.h: Revert last change, per DR 1204 [Ready]; mention the latter in comment.
...
2010-01-09 Paolo Carlini <paolo.carlini@oracle.com>
* include/debug/set.h: Revert last change, per DR 1204 [Ready];
mention the latter in comment.
* include/debug/unordered_map: Likewise.
* include/debug/multiset.h: Likewise.
* include/debug/vector: Likewise.
* include/debug/unordered_set: Likewise.
* include/debug/deque: Likewise.
* include/debug/map.h: Likewise.
* include/debug/list: Likewise.
* include/debug/multimap.h: Likewise.
* include/tr1_impl/unordered_map: Likewise.
* include/tr1_impl/unordered_set: Likewise.
* include/profile/set.h: Likewise.
* include/profile/unordered_map: Likewise.
* include/profile/multiset.h: Likewise.
* include/profile/unordered_set: Likewise.
* include/profile/vector: Likewise.
* include/profile/deque: Likewise.
* include/profile/map.h: Likewise.
* include/profile/list: Likewise.
* include/profile/multimap.h: Likewise.
* include/ext/vstring.h: Likewise.
* include/bits/stl_list.h: Likewise.
* include/bits/stl_map.h: Likewise.
* include/bits/stl_set.h: Likewise.
* include/bits/stl_multimap.h: Likewise.
* include/bits/stl_vector.h: Likewise.
* include/bits/stl_deque.h: Likewise.
* include/bits/stl_multiset.h: Likewise.
* include/bits/forward_list.h: Remove pre-existing check.
* include/ext/vstring.h: Likewise.
* testsuite/ext/vstring/cons/self_move_assign.cc: Remove.
* testsuite/23_containers/unordered_map/cons/self_move_assign.cc:
Likewise.
* testsuite/23_containers/multimap/cons/self_move_assign.cc: Likewise.
* testsuite/23_containers/set/cons/self_move_assign.cc: Likewise.
* testsuite/23_containers/unordered_multimap/cons/
self_move_assign.cc: Likewise.
* testsuite/23_containers/forward_list/cons/self_move_assign.cc:
Likewise.
* testsuite/23_containers/unordered_set/cons/self_move_assign.cc:
Likewise.
* testsuite/23_containers/vector/cons/self_move_assign.cc: Likewise.
* testsuite/23_containers/deque/cons/self_move_assign.cc: Likewise.
* testsuite/23_containers/multiset/cons/self_move_assign.cc: Likewise.
* testsuite/23_containers/list/cons/self_move_assign.cc: Likewise.
* testsuite/23_containers/unordered_multiset/cons/
self_move_assign.cc: Likewise.
* testsuite/23_containers/map/cons/self_move_assign.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
Adjust dg-error line numbers.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
Likewise.
* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
assign_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
Likewise.
* 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: r155756
2010-01-09 11:16:42 +00:00
Paolo Carlini
6b592ab357
set.h: Protect move assignment operator vs self assignment.
...
2010-01-08 Paolo Carlini <paolo.carlini@oracle.com>
* include/debug/set.h: Protect move assignment operator vs self
assignment.
* include/debug/unordered_map: Likewise.
* include/debug/multiset.h: Likewise.
* include/debug/vector: Likewise.
* include/debug/unordered_set: Likewise.
* include/debug/deque: Likewise.
* include/debug/map.h: Likewise.
* include/debug/list: Likewise.
* include/debug/multimap.h: Likewise.
* include/tr1_impl/unordered_map: Likewise.
* include/tr1_impl/unordered_set: Likewise.
* include/profile/set.h: Likewise.
* include/profile/unordered_map: Likewise.
* include/profile/multiset.h: Likewise.
* include/profile/unordered_set: Likewise.
* include/profile/vector: Likewise.
* include/profile/deque: Likewise.
* include/profile/map.h: Likewise.
* include/profile/list: Likewise.
* include/profile/multimap.h: Likewise.
* include/ext/vstring.h: Likewise.
* include/bits/stl_list.h: Likewise.
* include/bits/stl_map.h: Likewise.
* include/bits/stl_set.h: Likewise.
* include/bits/stl_multimap.h: Likewise.
* include/bits/stl_vector.h: Likewise.
* include/bits/stl_deque.h: Likewise.
* include/bits/stl_multiset.h: Likewise.
* include/ext/vstring.h: Use clear().
* testsuite/ext/vstring/cons/self_move_assign.cc: New.
* testsuite/23_containers/unordered_map/cons/self_move_assign.cc:
Likewise.
* testsuite/23_containers/multimap/cons/self_move_assign.cc: Likewise.
* testsuite/23_containers/set/cons/self_move_assign.cc: Likewise.
* testsuite/23_containers/unordered_multimap/cons/
self_move_assign.cc: Likewise.
* testsuite/23_containers/forward_list/cons/self_move_assign.cc:
Likewise.
* testsuite/23_containers/unordered_set/cons/self_move_assign.cc:
Likewise.
* testsuite/23_containers/vector/cons/self_move_assign.cc: Likewise.
* testsuite/23_containers/deque/cons/self_move_assign.cc: Likewise.
* testsuite/23_containers/multiset/cons/self_move_assign.cc: Likewise.
* testsuite/23_containers/list/cons/self_move_assign.cc: Likewise.
* testsuite/23_containers/unordered_multiset/cons/
self_move_assign.cc: Likewise.
* testsuite/23_containers/map/cons/self_move_assign.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
Adjust dg-error line numbers.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
Likewise.
* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
Likewise.
* 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.
* testsuite/ext/vstring/moveable.cc: Move to...
* testsuite/ext/vstring/cons/moveable.cc: ... here.
* testsuite/23_containers/unordered_map/moveable.cc: Move to...
* testsuite/23_containers/unordered_map/cons/moveable.cc ... here.
* testsuite/23_containers/multimap/moveable.cc: Move to...
* testsuite/23_containers/multimap/cons/moveable.cc: ... here.
* testsuite/23_containers/set/moveable.cc: Move to...
* testsuite/23_containers/set/cons/moveable.cc: ... here.
* testsuite/23_containers/unordered_multimap/moveable.cc: Move to...
* testsuite/23_containers/unordered_multimap/cons/moveable.cc:
... here.
* testsuite/23_containers/forward_list/moveable.cc: Move to...
* testsuite/23_containers/forward_list/cons/moveable.cc: ... here.
* testsuite/23_containers/unordered_set/moveable.cc Move to...
* testsuite/23_containers/unordered_set/moveable.cc: ... here.
* testsuite/23_containers/vector/cons/moveable.cc Move to...
* testsuite/23_containers/vector/cons/moveable2.cc: ... this.
* testsuite/23_containers/deque/cons/moveable.cc Move to...
* testsuite/23_containers/deque/cons/moveable2.cc: ... this.
* testsuite/23_containers/multiset/moveable.cc Move to...
* testsuite/23_containers/multiset/cons/moveable.cc: ... here.
* testsuite/23_containers/list/moveable.h Move to...
* testsuite/23_containers/list/cons/moveable.h: ... here.
* testsuite/23_containers/list/moveable.cc Move to...
* testsuite/23_containers/list/cons/moveable.cc: ... here.
* testsuite/23_containers/unordered_multiset/moveable.cc Move to...
* testsuite/23_containers/unordered_multiset/cons/moveable.cc:
... here.
* testsuite/23_containers/map/moveable.cc Move to...
* testsuite/23_containers/map/cons/moveable.cc: ... here.
* testsuite/23_containers/vector/moveable.cc: Move to...
* testsuite/23_containers/vector/cons/moveable.cc: ... here.
* testsuite/23_containers/deque/moveable.cc: Move to...
* testsuite/23_containers/deque/cons/moveable.cc: ... here.
From-SVN: r155754
2010-01-09 02:49:53 +00:00
Paolo Carlini
79667f82ad
re PR libstdc++/42573 ([C++0x] shrink_to_fit() missing)
...
2010-01-08 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/42573
* include/bits/allocator.h (struct __shrink_to_fit): Add.
* include/bits/stl_deque.h (deque<>::shrink_to_fit): Add.
* include/bits/stl_vector.h (vector<>::shrink_to_fit): Likewise.
* include/bits/stl_bvector.h (vector<bool>::shrink_to_fit): Likewise.
* include/bits/basic_string.h (basic_string<>::shrink_to_fit):
Likewise.
* include/ext/vstring.h (__versa_string<>::shrink_to_fit): Likewise.
* include/debug/deque: Add corresponding using declaration.
* include/debug/vector: Likewise.
* include/debug/string: Likewise.
* include/profile/deque: Likewise.
* include/profile/vector: Likewise.
* config/abi/pre/gnu.ver: Export new symbols.
* testsuite/23_containers/deque/capacity/shrink_to_fit.cc: New.
* testsuite/23_containers/vector/capacity/shrink_to_fit.cc: Likewise.
* testsuite/21_strings/basic_string/capacity/char/shrink_to_fit.cc:
Likewise.
* testsuite/21_strings/basic_string/capacity/wchar_t/shrink_to_fit.cc:
Likewise.
* testsuite/ext/vstring/capacity/shrink_to_fit.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Likewise.
From-SVN: r155733
2010-01-08 13:01:24 +00:00
Paolo Carlini
3095eb8e4c
locale_facets_nonio.tcc (time_put<>::do_put): Avoid pointless __builtin_alloca use.
...
2010-01-07 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/locale_facets_nonio.tcc (time_put<>::do_put): Avoid
pointless __builtin_alloca use.
From-SVN: r155697
2010-01-07 17:20:45 +00:00
Paolo Carlini
2e8e6a99ee
re PR libstdc++/26701 (std::time_get parses only 2 digits of year, in en_GB locale.)
...
2010-01-06 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/26701
* include/bits/locale_facets_nonio.tcc (time_get<>::_M_extract_num):
Encode short two digits over four parsings to negative numbers.
(time_get<>::_M_extract_via_format): Adjust, accept both two digits
and four digits for both 'y' and 'Y'.
(time_get<>::do_get_year): Call time_get<>::_M_extract_num.
* doc/xml/manual/prerequisites.xml: Add en_GB.
* testsuite/lib/libstdc++.exp: Adjust
* testsuite/22_locale/time_get/get_date/char/26701.cc: New.
* testsuite/22_locale/time_get/get_date/wchar_t/26701.cc: Likewise.
From-SVN: r155685
2010-01-07 00:22:51 +00:00
Paolo Carlini
ac2bb43770
re PR libstdc++/38081 (time_get<>::do_get_weekday does not always recognize full names of weekdays)
...
2010-01-05 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/38081
* include/bits/locale_facets_nonio.h (time_get<>::
_M_extract_wday_or_month): New, declare.
* include/bits/locale_facets_nonio.tcc (time_get<>::
_M_extract_wday_or_month): Define.
(time_get<>::do_get_weekday, time_get<>::do_get_monthname): Use it.
* config/abi/pre/gnu.ver: Export new symbols.
* doc/xml/manual/prerequisites.xml: Add ru_RU.UTF-8 and
ru_RU.ISO-8859-5.
* testsuite/lib/libstdc++.exp: Adjust.
* testsuite/22_locale/time_get/get_weekday/char/38081-1.cc: New.
* testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.
From-SVN: r155659
2010-01-05 20:05:20 +00:00
Paolo Carlini
a8685e159e
stl_pair.h (pair<>::pair(_U1&&, const _T2&), [...]): Use std::is_constructible instead of std::is_convertible.
...
2010-01-03 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_pair.h (pair<>::pair(_U1&&, const _T2&),
pair<>::pair(const _T1&, _U2&&), pair<>::pair(_U1&&, _U2&&)):
Use std::is_constructible instead of std::is_convertible.
From-SVN: r155585
2010-01-03 12:06:59 +00:00
Paolo Carlini
0ac3a9af09
stl_iterator.h.: Fix typo in comment.
...
2009-12-30 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_iterator.h.: Fix typo in comment.
From-SVN: r155517
2009-12-30 10:34:41 +00:00
Edward Smith-Rowland
53bc54ecc0
random.h: Fix equation in comment of Weibull distro.
...
2009-12-29 Edward Smith-Rowland <3dw4rd@verizon.net>
* include/bits/random.h: Fix equation in comment of Weibull distro.
From-SVN: r155515
2009-12-30 02:08:23 +00:00
Paolo Carlini
0800b8ea79
stl_deque.h (copy_backward(_Deque_iterator, _Deque_iterator, _Deque_iterator), [...]): Declare.
...
2009-12-24 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_deque.h (copy_backward(_Deque_iterator,
_Deque_iterator, _Deque_iterator), move_backward(_Deque_iterator,
_Deque_iterator, _Deque_iterator)): Declare.
* include/bits/deque.tcc: Implement the latter.
* testsuite/performance/25_algorithms/
copy_backward_deque_iterators.cc: New.
* testsuite/25_algorithms/move_backward/deque_iterators/1.cc: Likewise.
* testsuite/25_algorithms/copy_backward/deque_iterators/1.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_2_neg.cc: Likewise.
From-SVN: r155455
2009-12-24 12:47:37 +00:00
Paolo Carlini
e2bf200700
stl_deque.h (copy(_Deque_iterator, _Deque_iterator, _Deque_iterator), [...]): Declare.
...
2009-12-23 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_deque.h (copy(_Deque_iterator, _Deque_iterator,
_Deque_iterator), move(_Deque_iterator, _Deque_iterator,
_Deque_iterator)): Declare.
* include/bits/deque.tcc: Implement the latter.
* testsuite/performance/25_algorithms/copy_deque_iterators.cc: New.
* testsuite/25_algorithms/move/2.cc: Likewise.
* testsuite/25_algorithms/copy/5.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_2_neg.cc: Likewise.
From-SVN: r155432
2009-12-23 17:14:15 +00:00
Benjamin Kosnik
afd88205d8
atomic: Update to N3000.
...
2009-12-20 Benjamin Kosnik <bkoz@redhat.com>
* include/std/atomic: Update to N3000.
* include/bits/atomic_0.h: Same.
* include/bits/atomic_2.h: Same.
* include/c_global/cstdatomic: Move...
* include/bits/atomic_base.h: ...here.
* include/c_compatibility/stdatomic.h: Just include atomic_base.h.
* include/precompiled/stdc++.h: Adjust includes.
* include/Makefile.am: Adjust files.
* include/Makefile.in: Regenerate.
* include/std/future: Adjust.
* src/atomic.cc: Adjust, adjust exports for compatibility.
* src/compatibility.cc: Move C++0x stuff...
* src/compatibility-c++0x.cc: ...here.
* doc/xml/manual/using.xml: Update.
* doc/xml/manual/status_cxx200x.xml: Update.
* doc/doxygen/user.cfg.in: Update.
* testsuite/29_atomics/atomic_address/cons/assign_neg.cc: Same.
* testsuite/29_atomics/atomic_address/cons/single_value.cc: Same.
* testsuite/29_atomics/atomic_address/cons/copy_neg.cc: Same.
* testsuite/29_atomics/atomic_address/cons/default.cc: Same.
* testsuite/29_atomics/atomic_address/cons/aggregate.cc: Same.
* testsuite/29_atomics/atomic_address/requirements/
standard_layout.cc: Same.
* testsuite/29_atomics/atomic_address/requirements/trivial.cc: Same.
* testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Same.
* testsuite/29_atomics/atomic_integral/cons/single_value.cc: Same.
* testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Same.
* testsuite/29_atomics/atomic_integral/cons/default.cc: Same.
* testsuite/29_atomics/atomic_integral/cons/copy_list.cc: Same.
* testsuite/29_atomics/atomic_integral/cons/direct_list.cc: Same.
* testsuite/29_atomics/atomic_integral/requirements/
standard_layout.cc: Same.
* testsuite/29_atomics/atomic_integral/requirements/trivial.cc: Same.
* testsuite/29_atomics/atomic_integral/operators/increment_neg.cc: Same.
* testsuite/29_atomics/atomic_integral/operators/
integral_assignment.cc: Same.
* testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc: Same.
* testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc: Same.
* testsuite/29_atomics/atomic_integral/operators/increment.cc: Same.
* testsuite/29_atomics/atomic_integral/operators/bitwise.cc: Same.
* testsuite/29_atomics/atomic_integral/operators/decrement.cc: Same.
* testsuite/29_atomics/atomic_integral/operators/
integral_conversion.cc: Same.
* testsuite/29_atomics/atomic_flag/cons/assign_neg.cc: Same.
* testsuite/29_atomics/atomic_flag/cons/copy_neg.cc: Same.
* testsuite/29_atomics/atomic_flag/cons/default.cc: Same.
* testsuite/29_atomics/atomic_flag/cons/aggregate.cc: Same.
* testsuite/29_atomics/atomic_flag/requirements/
standard_layout.cc: Same.
* testsuite/29_atomics/atomic_flag/requirements/trivial.cc: Same.
* testsuite/29_atomics/atomic_flag/clear/1.cc: Same.
* testsuite/29_atomics/atomic_flag/test_and_set/explicit.c
* testsuite/29_atomics/atomic_flag/test_and_set/explicit.cc: Same.
* testsuite/29_atomics/atomic_flag/test_and_set/implicit.c
* testsuite/29_atomics/atomic_flag/test_and_set/implicit.cc: Same.
* testsuite/29_atomics/headers/stdatomic.h/functions.c
* testsuite/29_atomics/atomic/cons/assign_neg.cc: Same.
* testsuite/29_atomics/atomic/cons/single_value.cc: Same.
* testsuite/29_atomics/atomic/cons/copy_neg.cc: Same.
* testsuite/29_atomics/atomic/cons/default.cc: Same.
* testsuite/29_atomics/atomic/cons/copy_list.cc: Same.
* testsuite/29_atomics/atomic/cons/direct_list.cc: Same.
* testsuite/29_atomics/atomic/requirements/explicit_instantiation/
1.cc: Same.
* testsuite/29_atomics/atomic/requirements/base_classes.cc: Same.
* testsuite/29_atomics/atomic/operators/integral_assignment.cc: Same.
* testsuite/29_atomics/atomic/operators/integral_conversion.cc: Same.
* testsuite/util/testsuite_common_types.h: Adjust.
* testsuite/29_atomics/headers/cstdatomic: Move and adjust...
* testsuite/29_atomics/headers/atomic: ...here.
* testsuite/29_atomics/headers/atomic/types_std_c++0x.cc: Same.
* testsuite/29_atomics/headers/atomic/functions_std_c++0x.cc: Same.
* testsuite/29_atomics/headers/atomic/std_c++0x_neg.cc: Same.
* testsuite/29_atomics/headers/atomic/macros.cc: Same.
* testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc: Add.
* testsuite/29_atomics/atomic/cons/user_pod.cc: Add.
From-SVN: r155377
2009-12-21 19:00:34 +00:00
Paolo Carlini
465d76b735
re PR libstdc++/42381 (deque shouldn't reserve that much memory)
...
2009-12-15 Paolo Carlini <paolo.carlini@oracle.com>
PR libsdtc++/42381
* include/bits/stl_deque.h (_GLIBCXX_DEQUE_BUF_SIZE): Add.
(__deque_buf_size(size_t)): Use it.
* testsuite/23_containers/deque/requirements/dr438/
assign_neg.cc: Adjust dg-error line numbers.
* testsuite/23_containers/deque/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_2_neg.cc: Likewise.
From-SVN: r155271
2009-12-15 20:58:29 +00:00
Jonathan Wakely
ec903a9c42
functional (function::function): Move construct target.
...
2009-12-15 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/functional (function::function): Move construct target.
(function::operator=): Use perfect forwarding for argument.
(function::operator()): Use new __throw_bad_function_call.
* include/bits/functexcept.h (__throw_bad_function_call): Declare.
* src/functexcept.cc (__throw_bad_function_call): Define.
* config/abi/pre/gnu.ver: Add new symbol.
* testsuite/20_util/function/cons/move_target.cc: New.
* testsuite/20_util/function/assign/move_target.cc: New.
From-SVN: r155261
2009-12-15 17:42:47 +00:00
Paolo Carlini
82ab4b640b
PR libstdc++/25304, DR 865 [Ready]
...
2009-12-14 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/25304, DR 865 [Ready]
* include/bits/stl_algobase.h (fill_n): Add comment about DR 865.
* include/bits/stl_algo.h (generate_n): Likewise.
* include/bits/algorithmfwd.h: Remove obsolete comment.
* doc/xml/manual/intro.xml: Add an entry for DR 865.
From-SVN: r155241
2009-12-15 00:07:52 +00:00
Paolo Carlini
874e360b8c
stl_list.h (splice(iterator, list&), [...]): Re-add in C++0x mode for backward compatibility (see DR 1133).
...
2009-12-14 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_list.h (splice(iterator, list&), splice(iterator,
list&, iterator), splice(iterator, list&, iterator, iterator),
merge(list&), merge(list&, _StrictWeakOrdering)): Re-add in C++0x
mode for backward compatibility (see DR 1133).
(insert(iterator, size_type, const value_type&), insert(iterator,
_InputIterator, _InputIterator)): Adjust.
* include/bits/list.tcc (sort): Likewise.
* testsuite/23_containers/list/modifiers/1_c++0x.cc: Add.
* testsuite/23_containers/list/operations/2_c++0x.cc: Likewise.
* testsuite/23_containers/list/operations/3_c++0x.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
assign_neg.cc: Adjust dg-error line numbers.
* 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: r155210
2009-12-14 10:26:09 +00:00
Paolo Carlini
d385563f63
re PR libstdc++/42352 (-std=c++0x reference binding problem)
...
2009-12-11 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/42352
* include/bits/list.tcc (sort): Use _GLIBCXX_MOVE for list::splice
and list::merge calls.
* testsuite/23_containers/list/operations/42352.cc: New.
From-SVN: r155180
2009-12-11 22:04:56 +00:00
Paolo Carlini
8246b3148e
PR libstdc++/22634, DR 539 [Ready]
...
2009-12-11 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/22634, DR 539 [Ready]
* include/bits/stl_numeric.h (adjacent_difference): Use std::move
at the end of the loop body, per the Ready resolution.
* include/std/numeric: Do not include unnecessarily <cstddef>.
* doc/xml/manual/intro.xml: Add an entry for DR 539.
From-SVN: r155173
2009-12-11 17:54:37 +00:00
Paolo Carlini
df4d18ad80
PR libstdc++/42261 (take 2)
...
2009-12-10 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/42261 (take 2)
* include/bits/basic_string.h (_S_construct_aux_2(size_type, _CharT,
const _Alloc&)): Add.
(_S_construct_aux(_Integer, _Integer, const _Alloc&, __true_type)):
Call it.
* include/ext/sso_string_base.h (_M_construct_aux_2(size_type,
_CharT): Add.
(_M_construct_aux(_Integer, _Integer, std::__true_type)): Call it.
* include/ext/rc_string_base.h (_S_construct_aux_2(size_type, _CharT,
const _Alloc&)): Add.
(_S_construct_aux(_Integer, _Integer, const _Alloc&, __true_type)):
Call it.
* config/abi/pre/gnu.ver: Export basic_string::_S_construct_aux_2.
* testsuite/21_strings/basic_string/cons/char/42261.cc: New.
* testsuite/21_strings/basic_string/cons/wchar_t/42261.cc: Likewise.
From-SVN: r155137
2009-12-10 19:17:27 +00:00
Paolo Carlini
574f366488
revert: re PR libstdc++/42261 (infinite recursion from string(string::size_type(6), string::size_type('f')))
...
2009-12-10 Paolo Carlini <paolo.carlini@oracle.com>
Revert:
2009-12-03 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/42261
* include/bits/basic_string.h (_S_construct_aux(_Integer, _Integer,
const _Alloc&, __true_type)): Cast the second argument to value_type.
* include/ext/sso_string_base.h (_M_construct_aux(_Integer, _Integer,
std::__true_type)): Likewise.
* include/ext/rc_string_base.h (_S_construct_aux(_Integer, _Integer,
const _Alloc&, std::__true_type)): Likewise.
* testsuite/21_strings/basic_string/cons/char/42261.cc: New.
* testsuite/21_strings/basic_string/cons/wchar_t/42261.cc: Likewise.
From-SVN: r155132
2009-12-10 17:17:41 +00:00
Roman Odaisky
6ef14ae403
re PR libstdc++/42273 (atomic_2.h:111: = instead of == in if)
...
2009-12-09 Roman Odaisky <to.roma.from.bugcc@qwertty.com>
PR libstdc++/42273
* include/bits/atomic_2.h: Fix typo.
From-SVN: r155117
2009-12-09 22:06:59 +00:00
Paolo Carlini
bcaf576b83
re PR libstdc++/42261 (infinite recursion from string(string::size_type(6), string::size_type('f')))
...
2009-12-03 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/42261
* include/bits/basic_string.h (_S_construct_aux(_Integer, _Integer,
const _Alloc&, __true_type)): Cast the second argument to value_type.
* include/ext/sso_string_base.h (_M_construct_aux(_Integer, _Integer,
std::__true_type)): Likewise.
* include/ext/rc_string_base.h (_S_construct_aux(_Integer, _Integer,
const _Alloc&, std::__true_type)): Likewise.
* testsuite/21_strings/basic_string/cons/char/42261.cc: New.
* testsuite/21_strings/basic_string/cons/wchar_t/42261.cc: Likewise.
From-SVN: r154948
2009-12-03 14:20:56 +00:00
Dave Korn
f7e413e2d4
configure.ac (USE_CYGWIN_LIBSTDCXX_WRAPPERS): Define to reflect status of AC_CHECK_FUNC for Cygwin DLL libstdc++ support wrappers.
...
gcc/ChangeLog:
2009-11-30 Dave Korn <dave.korn.cygwin@gmail.com>
* configure.ac (USE_CYGWIN_LIBSTDCXX_WRAPPERS): Define to reflect
status of AC_CHECK_FUNC for Cygwin DLL libstdc++ support wrappers.
* configure: Regenerate.
* config.in: Regenerate.
* config/i386/cygwin.h (CXX_WRAP_SPEC_LIST): Define list of --wrap
options for Cygwin DLL libstdc++ support wrappers.
(CXX_WRAP_SPEC_OPT): Define spec to use wrappers or not by default
according to defined value of USE_CYGWIN_LIBSTDCXX_WRAPPERS.
(CXX_WRAP_SPEC): Define entire wrapper spec in or out according to
whether USE_CYGWIN_LIBSTDCXX_WRAPPERS is even defined or not.
(LINK_SPEC): Include CXX_WRAP_SPEC.
* gcc/config/i386/winnt.c (wrapper_strcmp): New qsort helper function.
(i386_find_on_wrapper_list): Check if a function is found on the list
of libstdc++ wrapper options.
(i386_pe_file_end): If we are importing a wrapped function, also emit
an external declaration for the real version.
* config/i386/cygming.opt (muse-libstdc-wrappers): New option for
Cygwin targets. Update copyright year.
libstdc++-v3/ChangeLog:
2009-11-30 Dave Korn <dave.korn.cygwin@gmail.com>
* libstdc++-v3/acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Don't disable
on PE targets.
* libstdc++-v3/configure: Regenerate.
* libstdc++-v3/configure.host: Add libtool DLL options for Cygwin
and MinGW platforms.
* libstdc++-v3/include/bits/c++config (_GLIBCXX_VISIBILITY_ATTR): On
platforms that don't support visibility, allow them to declare a macro
_GLIBCXX_PSEUDO_VISIBILITY that is applied in place of visibility.
(_GLIBCXX_PSEUDO_VISIBILITY): Supply empty default if not declared by
CPU- or OS-specific headers.
* libstdc++-v3/config/os/newlib/os_defines.h
(_GLIBCXX_PSEUDO_VISIBILITY_default): New macro for dllimport.
(_GLIBCXX_PSEUDO_VISIBILITY_hidden): New empty macro.
(_GLIBCXX_PSEUDO_VISIBILITY): Evaluate to one of the above.
* libstdc++-v3/config/os/mingw32/os_defines.h
(_GLIBCXX_PSEUDO_VISIBILITY_default,
_GLIBCXX_PSEUDO_VISIBILITY_hidden,
_GLIBCXX_PSEUDO_VISIBILITY): Likewise.
From-SVN: r154853
2009-11-30 23:22:04 +00:00
Jonathan Wakely
70826946ea
re PR libstdc++/42019 (shared_ptr can not be used with -fno-rtti)
...
2009-11-20 Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/42019
* include/tr1/shared_ptr.h: Only use typeid when RTTI is enabled.
* include/bits/shared_ptr_base.h: Likewise.
* include/bits/shared_ptr.h: Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/misc/42019.cc: New.
* testsuite/20_util/shared_ptr/misc/42019.cc: New.
From-SVN: r154377
2009-11-20 21:23:02 +00:00
Paolo Carlini
4a85780b75
re PR libstdc++/41622 ([DR 1245] [c++0x] std::hash<std::string>::operator() copies its argument)
...
2009-11-19 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/41622
* include/bits/functional_hash.h: Implement inline the various
std::hash specializations, using, when appropriate, pass by
const ref too, per DR 1245.
* include/tr1_impl/functional_hash.h: Remove, move its contents...
* include/tr1/functional_hash.h: ... here.
* include/std/functional: Tweak includes.
* src/hash_c++0x: Rename to...
* src/compatibility-c++0x.cc: ... this, implementing compatibility
std::hash<>::operator() specializations.
* src/hash.cc: Do not mark specializations as throw().
* src/Makefile.am: Adjust.
* include/Makefile.am: Likewise.
* src/Makefile.in: Regenerate.
* include/Makefile.in: Likewise.
* testsuite/util/testsuite_api.h: Define a dummy hash for
NonDefaultConstructible.
* testsuite/23_containers/unordered_map/requirements/
explicit_instantiation/2.cc: Use it.
* testsuite/23_containers/unordered_multimap/requirements/
explicit_instantiation/2.cc: Likewise.
* testsuite/23_containers/unordered_set/requirements/
explicit_instantiation/2.cc: Likewise.
* testsuite/23_containers/unordered_multiset/requirements/
explicit_instantiation/2.cc: Likewise.
From-SVN: r154335
2009-11-19 16:55:25 +00:00
Paolo Carlini
33913cfa99
forward_list.h (forward_list<>::erase_after): Change signature per N2988, return void; simplify.
...
2009-11-13 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/forward_list.h (forward_list<>::erase_after):
Change signature per N2988, return void; simplify.
(_Fwd_list_base<>::_M_erase_after): Likewise return void.
(forward_list<>::~forward_list): Do not call _M_erase_after
unnecessarily, the base class destructor already does it.
(forward_list<>::splice_after(const_iterator position,
forward_list&&, const_iterator i): Check position != i and
position != ++i.
* include/bits/forward_list.tcc (_Fwd_list_base<>::
_M_erase_after(typename _Node_base::_Pointer): Simplify.
(_Fwd_list_base<>::_M_erase_after(typename _Node_base::_Pointer,
typename _Node_base::_Pointer): Fix (remove the correct range
of element) and simplify (update __pos->_M_next at the end).
* testsuite/23_containers/forward_list/modifiers/3.cc: Adjust
and extend.
* testsuite/23_containers/forward_list/ext_pointer/
modifiers/3.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
assign_neg.cc: Tweak dg-error line numbers.
* testsuite/23_containers/forward_list/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
constructor_2_neg.cc: Likewise.
From-SVN: r154174
2009-11-13 22:41:49 +00:00
Paolo Carlini
8ad7097c11
algorithm: Include <utility>, per UK-300.
...
2009-11-13 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/algorithm: Include <utility>, per UK-300.
* include/bits/stl_algobase.h: Don't do it here.
From-SVN: r154152
2009-11-13 15:06:28 +00:00
Paolo Carlini
7274deff73
type_traits (declval): Add, per DR 1255.
...
2009-11-12 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/type_traits (declval): Add, per DR 1255.
(__is_convertible_helper, common_type): Use it.
* include/bits/move.h: Mention std::declval.
* testsuite/20_util/declval/requirements/1.cc: New.
* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
* testsuite/20_util/common_type/requirements/typedefs-2.cc: Likewise.
* testsuite/20_util/common_type/requirements/
explicit_instantiation.cc: Extend.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
dg-error line numbers.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.
From-SVN: r154140
2009-11-13 02:25:12 +00:00
Paolo Carlini
03b2a9a5ac
stl_algobase.h: Include the full <utility>, per UK-300.
...
2009-11-12 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_algobase.h: Include the full <utility>, per
UK-300.
* include/bits/stl_algo.h: Tweak includes.
From-SVN: r154126
2009-11-12 18:45:23 +00:00
Paolo Carlini
a4ecd144bb
basic_string.h (to_string(int), [...]): Add, per resolution of DR 1261.
...
2009-11-11 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/basic_string.h (to_string(int), to_string(unsigned),
to_string(long), to_string(unsigned long), to_string(float),
to_string(double), to_wstring(int), to_wstring(unsigned),
to_wstring(long), to_wstring(unsigned long), to_wstring(float),
to_wstring(double)): Add, per resolution of DR 1261.
* include/ext/vstring.h: Likewise.
* testsuite/21_strings/basic_string/numeric_conversions/char/
dr1261.cc: Add.
* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
dr1261.cc: Likewise.
From-SVN: r154102
2009-11-11 19:57:48 +00:00
Benjamin Kosnik
8e32aa11c7
user.cfg.in: Adjust includes.
...
2009-11-06 Benjamin Kosnik <bkoz@redhat.com>
* doc/doxygen/user.cfg.in: Adjust includes.
* doc/doxygen/doxygroups.cc: Move group markup.
* include/tr1_impl/regex: Change " to '. Add group markup.
* include/std/utility: Same.
* include/std/type_traits: Same.
* include/std/streambuf: Same.
* include/std/iosfwd: Same.
* include/std/limits: Same.
* include/std/sstream: Same.
* include/profile/impl/profiler_state.h: Same.
* include/profile/impl/profiler_hashtable_size.h: Same.
* include/bits/stl_algobase.h: Same.
* include/bits/stl_iterator_base_types.h: Same.
* include/bits/stream_iterator.h: Same.
* include/bits/stl_iterator.h: Same.
* include/bits/stl_tempbuf.h: Same.
* include/bits/streambuf_iterator.h: Same.
* libsupc++/exception: Same.
* libsupc++/cxxabi.h: Same.
* include/tr1_impl/type_traits: Same.
* include/parallel/multiway_merge.h: Change @__c to @c, @__f to @f.
* include/parallel/list_partition.h: Same.
* include/parallel/for_each.h: Same.
* include/parallel/workstealing.h: Same.
* include/parallel/base.h: Same.
* include/parallel/equally_split.h: Same.
* include/parallel/random_shuffle.h: Same.
* include/parallel/balanced_quicksort.h: Same.
* include/parallel/merge.h: Same.
* include/parallel/multiway_mergesort.h: Same.
* include/parallel/compatibility.h: Same.
* include/parallel/queue.h: Same.
* include/parallel/checkers.h: Same.
* include/parallel/random_number.h: Same.
* include/c_global/csignal: Change # to \#.
* include/c_global/cstdlib: Same.
* include/c_global/cstdio: Same.
* include/c_global/cstdarg: Same.
* include/c_global/cctype: Same.
* include/c_global/cerrno: Same.
* include/c_global/cstdatomic: Same.
* include/c_global/cmath: Same.
* include/c_global/ciso646: Same.
* include/c_global/ctime: Same.
* include/c_global/clocale: Same.
* include/c_global/climits: Same.
* include/c_global/cassert: Same.
* include/c_global/csetjmp: Same.
* include/c_global/cwchar: Same.
* include/c_global/cfloat: Same.
* include/c_global/cstring: Same.
* include/c_global/cstddef: Same.
* include/c_global/cwctype: Same.
* include/std/memory: Only dance around boost_sp_counted_base.h.
* include/tr1_impl/boost_sp_counted_base.h: Add markup.
* include/tr1/shared_ptr.h: Strip markup.
* include/bits/shared_ptr.h: Move base types...
* include/bits/shared_ptr_base.h: ...here.
* include/Makefile.am: Add.
* include/Makefile.in: Regenerate.
* configure: Same.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
Adjust line numbers.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
From-SVN: r153980
2009-11-06 22:15:17 +00:00
David Krauss
6e924e079b
re PR libstdc++/41351 (std::rotate on RAI does not conform to ISO complexity requirement)
...
2009-11-03 David Krauss <potswa@mac.com>
Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/41351
* include/bits/stl_algo.h (__rotate(_RandomAccessIterator,
_RandomAccessIterator, _RandomAccessIterator,
random_access_iterator_tag)): Rewrite to use only std::swap in
general and std::copy/std::copy_backward when safe.
Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>
From-SVN: r153860
2009-11-03 18:16:34 +00:00
Paolo Carlini
a20c8540db
random.h: Fix typo in static_assert text.
...
2009-10-30 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/random.h: Fix typo in static_assert text.
From-SVN: r153767
2009-10-30 21:31:23 +00:00
Paolo Carlini
f6d08b433b
re PR libstdc++/41759 ([C++0x] <random> static_assert phrasing should be positive)
...
2009-10-30 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/41759
* include/bits/random.h: Tweak a bit the text of some static_asserts.
From-SVN: r153762
2009-10-30 17:39:18 +00:00
Paolo Carlini
6581b14bdf
PR libstdc++/40925 (again)
...
2009-10-29 Paolo Carlini <paolo.carlini@oracle.com>
Douglas Gregor <doug.gregor@gmail.com>
PR libstdc++/40925 (again)
* include/bits/stl_pair.h (pair<_T1, _T2>::pair(_U1&&, const _T2&),
pair<_T1, _T2>::pair(const _T1&, _U2&&)): Add, to deal correctly
with move-only types in the presence of "null pointers".
* testsuite/20_util/pair/40925.cc: Extend.
Co-Authored-By: Douglas Gregor <doug.gregor@gmail.com>
From-SVN: r153733
2009-10-30 02:29:14 +00:00
Paolo Carlini
d858307d7b
[multiple changes]
...
2009-10-29 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/40925
* include/bits/stl_pair.h (pair<_T1, _T2>::pair(_U1&&, _U2&&)):
Use enable_if to remove it from the overload set when either _U1
is not convertible to _T1 or _U2 is not convertible to _T2.
(pair<>::pair(_U1&&, _Arg0&&, _Args&&...)): Remove.
2009-10-29 Douglas Gregor <doug.gregor@gmail.com>
PR libstdc++/40925
* testsuite/20_util/pair/40925.cc: Add.
From-SVN: r153725
2009-10-29 19:26:04 +00:00
Paolo Carlini
de5b9f12c5
stl_iterator_base_funcs.h: (next): Change template parameter name consistently with the resolution of DR...
...
2009-10-28 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_iterator_base_funcs.h: (next): Change
template parameter name consistently with the resolution
of DR 1011 ([Ready] in Santa Cruz).
From-SVN: r153654
2009-10-28 13:07:00 +00:00
Paolo Carlini
927dc7c69e
re PR libstdc++/41773 (Many libstdc++ failures)
...
2009-10-20 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/41773
Revert:
2009-10-20 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/basic_string.h (_S_construct(const _CharT*, size_type,
const _Alloc&)): New, declare.
(_S_construct(_CharT*, _CharT*, const _Alloc&),
_S_construct(const _CharT*, const _CharT*, const _Alloc&),
_S_construct(iterator, iterator, const _Alloc&),
_S_construct(const_iterator, const_iterator, const _Alloc&)): New,
forward to the latter.
* include/bits/basic_string.tcc (_S_construct(const _CharT*,
size_type, const _Alloc&)): Define.
(basic_string(const basic_string&, size_type, size_type),
basic_string(const basic_string&, size_type, size_type,
const _Alloc&), basic_string(const _CharT*, size_type,
const _Alloc&), basic_string(const _CharT*, const _Alloc&),
basic_string(initializer_list<>, const _Alloc&)): Call the latter.
* config/abi/pre/gnu.ver: Remove recently added exports.
* src/string-inst.cc: Remove instantiations.
From-SVN: r153040
2009-10-20 21:54:22 +00:00
Paolo Carlini
b6a182f28e
re PR libstdc++/41763 (valarray_array.h seems to overuse __restrict__)
...
2009-10-20 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/41763
* include/bits/valarray_array.h (__valarray_default_construct,
__valarray_fill_construct, __valarray_copy_construct, __valarray_sum
__valarray_destroy_elements, __valarray_product): Do not qualify with
__restrict__ pointers accessing data also accessed by other pointers.
From-SVN: r153039
2009-10-20 21:21:11 +00:00
Paolo Carlini
50e9ed7c6c
basic_string.h (_S_construct(const _CharT*, size_type, const _Alloc&)): New, declare.
...
2009-10-20 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/basic_string.h (_S_construct(const _CharT*, size_type,
const _Alloc&)): New, declare.
(_S_construct(_CharT*, _CharT*, const _Alloc&),
_S_construct(const _CharT*, const _CharT*, const _Alloc&),
_S_construct(iterator, iterator, const _Alloc&),
_S_construct(const_iterator, const_iterator, const _Alloc&)): New,
forward to the latter.
* include/bits/basic_string.tcc (_S_construct(const _CharT*,
size_type, const _Alloc&)): Define.
(basic_string(const basic_string&, size_type, size_type),
basic_string(const basic_string&, size_type, size_type,
const _Alloc&), basic_string(const _CharT*, size_type,
const _Alloc&), basic_string(const _CharT*, const _Alloc&),
basic_string(initializer_list<>, const _Alloc&)): Call the latter.
* config/abi/pre/gnu.ver: Remove recently added exports.
* src/string-inst.cc: Remove instantiations.
From-SVN: r153023
2009-10-20 16:24:18 +00:00
Benjamin Kosnik
3808dfec58
re PR libstdc++/40654 ([C++0x] atomic.cc: 'd' is used uninitialized warning)
...
2009-10-15 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/40654
PR libstdc++/40826
* src/atomic.cc (atomic_flag_test_and_set_explicit): Add
static_cast from base to derived.
(atomic_flag_clear_explicit): Same.
* include/bits/atomic_2.h (__atomic2::atomic_flag): Public derivation.
Remove value type constructor.
* include/bits/atomic_0.h (__atomic0::atomic_flag): Same.
* include/std/future (_Future_state): Use ATOMIC_FLAG_INIT to
initialized the atomic_flag member.
From-SVN: r152895
2009-10-16 07:47:33 +00:00
Paolo Carlini
5cab701369
basic_string.h (operator+=(initializer_list<>), [...]): Forward to the append overload taking a const CharT* pointer and a size...
...
2009-10-14 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/basic_string.h (operator+=(initializer_list<>),
append(initializer_list<>)): Forward to the append overload taking
a const CharT* pointer and a size, thus avoiding instantiating
unnecessarily in the built library the overload taking a pair of
iterators.
(operator=(initializer_list<>), assign(initializer_list<>)): Likewise
for assign.
(insert(iterator, initializer_list<>): Likewise for insert.
From-SVN: r152794
2009-10-15 01:16:53 +00:00
Paolo Carlini
4299992823
c++config: Do not disable extern templates for string in plain parallel-mode and in...
...
2009-10-14 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/c++config: Do not disable extern templates for string
in plain parallel-mode and in profile-mode; add comment explaining
_GLIBCXX_EXTERN_TEMPLATE == -1.
From-SVN: r152789
2009-10-14 23:50:09 +00:00
Paolo Carlini
77e3c51603
random.h (class linear_congruential_engine, [...]): Do not use simulated concept checks...
...
2009-10-12 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/random.h (class linear_congruential_engine,
class mersenne_twister_engine, class subtract_with_carry_engine,
class discard_block_engine, class independent_bits_engine,
class shuffle_order_engine, class uniform_int_distribution,
class binomial_distribution, class geometric_distribution,
class negative_binomial_distribution, class poisson_distribution,
class discrete_distribution): Do not use simulated concept checks,
tidy startic_asserts on argument types and ranges.
(class uniform_real_distribution, class normal_distribution,
class lognormal_distribution, class gamma_distribution,
class chi_squared_distribution, class cauchy_distribution,
class fisher_f_distribution, class student_t_distribution,
class exponential_distribution, class weibull_distribution,
class extreme_value_distribution, class piecewise_linear_distribution,
class piecewise_constant_distribution): Add static_assert on
template argument type.
* include/std/random: Do not include <bits/concept_check.h>.
* testsuite/26_numerics/random/discard_block_engine/cons/base_move.cc:
Fix.
* testsuite/26_numerics/random/discard_block_engine/cons/seed1.cc:
Likewise.
* testsuite/26_numerics/random/discard_block_engine/cons/seed2.cc:
Likewise.
* testsuite/26_numerics/random/discard_block_engine/cons/base_copy.cc:
Likewise.
* testsuite/26_numerics/random/discard_block_engine/cons/default.cc:
Likewise.
* testsuite/26_numerics/random/discard_block_engine/cons/seed_seq.cc:
Likewise.
* testsuite/26_numerics/random/discard_block_engine/requirements/
typedefs.cc: Likewise.
* testsuite/26_numerics/random/discard_block_engine/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/discard_block_engine/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/linear_congruential_engine/
requirements/non_uint_neg.cc: Tweak.
From-SVN: r152682
2009-10-12 19:11:31 +00:00
Paolo Carlini
fe03b3df84
[multiple changes]
...
2009-10-05 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/lib/libstdc++.exp (check_v3_target_rvalref): Remove.
* testsuite/lib/dg-options.exp (dg-require-rvalref): Likewise.
2009-10-05 Chris Jefferson <chris@bubblescope.net>
* include/bits/stl_algo.h (__stable_partition_adaptive,
__rotate_adaptive, __merge_adaptive, __merge_sort_loop):
Extend to work with rvalue references in C++0x mode.
* testsuite/25_algorithms/inplace_merge/moveable2.cc: New.
* testsuite/25_algorithms/inplace_merge/moveable.cc: Likewise.
* testsuite/25_algorithms/stable_partition/moveable.cc: Likewise.
* testsuite/25_algorithms/stable_sort/moveable2.cc: Likewise.
* testsuite/25_algorithms/stable_sort/moveable.cc: Likewise.
From-SVN: r152451
2009-10-05 14:11:11 +00:00
Silvius Rus
1218d701f7
merge branch profile-stdlib
...
From-SVN: r152431
2009-10-03 02:17:41 +00:00
Paolo Carlini
300ea2831b
random.tcc: Define static const data members.
...
2009-09-29 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/random.tcc: Define static const data members.
* include/tr1/random.tcc: Likewise.
* testsuite/26_numerics/random/subtract_with_carry_engine/
requirements/constants.cc: New.
* testsuite/26_numerics/random/mersenne_twister_engine/
requirements/constants.cc: Likewise.
* testsuite/26_numerics/random/linear_congruential_engine/
requirements/constants.cc: Likewise.
* testsuite/26_numerics/random/shuffle_order_engine/requirements/
constants.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
requirements/constants.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/
subtract_with_carry_01/requirements/constants.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/discard_block/
requirements/constants.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/linear_congruential/
requirements/constants.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
requirements/constants.cc: Likewise.
* testsuite/tr1/5_numerical_facilities/random/xor_combine/
requirements/constants.cc: Likewise.
From-SVN: r152317
2009-09-30 00:50:24 +00:00
Paolo Carlini
fc52f99da8
re PR libstdc++/41316 ([C++0x] forward_list::sort violates strict aliasing rules)
...
2009-09-11 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/41316
* include/bits/forward_list.h (_Fwd_list_node_base<>::_M_sort_after):
Remove.
(forward_list<>::sort(_Comp)): Only declare.
(forward_list<>::sort()): Forward to the latter.
* include/bits/forward_list.tcc (_Fwd_list_node_base<>::_M_sort_after):
Remove definition.
(forward_list<>::sort(_Comp)): Define.
* testsuite/23_containers/forward_list/requirements/dr438/
assign_neg.cc: Adjust dg-error line number.
* testsuite/23_containers/forward_list/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
constructor_2_neg.cc: Likewise.
From-SVN: r151635
2009-09-11 13:47:36 +00:00
Paolo Carlini
f7d601a5bd
re PR libstdc++/41267 (vector<>::resize() from an empty vector calls memmove for 0 bytes (twice), wasting a lot of cpu time in a production PowerDNS)
...
2009-09-06 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/41267
* include/bits/stl_algobase.h (__copy_move::__copy_m,
__copy_move_backward::__copy_move_b): Don't call __builtin_memmove
with a null third argument.
From-SVN: r151459
2009-09-06 15:41:38 +00:00
Benjamin Kosnik
880b527fd8
revert: compatibility.cc: Make C++0x safe, add in explicit casts to bool for stream sentry objects.
...
2009-09-04 Benjamin Kosnik <bkoz@redhat.com>
Revert.
2009-08-06 Benjamin Kosnik <bkoz@redhat.com>
* src/compatibility.cc: Make C++0x safe, add in explicit casts to
bool for stream sentry objects.
* include/bits/istream.tcc: Same.
* include/bits/ostream.tcc: Same.
* include/bits/basic_string.tcc: Same.
* include/bits/ostream_insert.h: Same.
* src/istream.cc: Same.
From-SVN: r151445
2009-09-05 00:18:07 +00:00
Paolo Carlini
e123d1967f
2009-09-02 Paolo Carlini <paolo.carlini@oracle.com>
...
* include/bits/stl_uninitialized.h
(__uninitialized_copy::uninitialized_copy): Just call (the now
forwarding) _Construct.
From-SVN: r151330
2009-09-02 14:49:58 +00:00
Paolo Carlini
6401164d19
stl_construct.h: Include <bits/move.h>.
...
2009-08-29 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_construct.h: Include <bits/move.h>.
From-SVN: r151208
2009-08-29 19:35:21 +00:00
Chris Jefferson
55dd844556
move.h (_GLIBCXX_FORWARD): Add.
...
2009-08-29 Chris Jefferson <chris@bubblescope.net>
* include/bits/move.h (_GLIBCXX_FORWARD): Add.
* include/bits/stl_uninitialized.h (__uninitialized_construct_range):
Add.
* include/bits/stl_tempbuf.h (_Temporary_buffer::
_Temporary_buffer(_ForwardIterator, _ForwardIterator)): Use the latter.
* include/bits/stl_construct.h (_Construct(_T1*, _T2&&)): Add in
C++0x mode.
* testsuite/util/testsuite_hooks.h (operator<(const copy_tracker&,
const copy_tracker&)): Add.
* testsuite/25_algorithms/stable_partition/mem_check.cc: New.
* testsuite/25_algorithms/stable_sort/mem_check.cc: Likewise.
From-SVN: r151207
2009-08-29 19:27:05 +00:00
Benjamin Kosnik
439a0f5a2a
basic_string.h (basic_string): Add cbegin(), cend(), crbegin(), crend() in C++0x mode.
...
2009-08-25 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/basic_string.h (basic_string): Add cbegin(),
cend(), crbegin(), crend() in C++0x mode.
* config/abi/pre/gnu.ver: Add exports.
* testsuite/util/testsuite_containers.h: New.
* testsuite/util/testsuite_container_traits.h: New.
* testsuite/21_strings/basic_string/requirements/citerators.cc: New.
* testsuite/21_strings/basic_string/requirements/typedefs.cc: New.
* testsuite/ext/vstring/requirements/citerators.cc: Edit.
* testsuite/ext/vstring/requirements/typedefs.cc: New.
* testsuite/23_containers/unordered_map/requirements/
cliterators.cc: Edit.
* testsuite/23_containers/unordered_map/requirements/
citerators.cc: Edit.
* testsuite/23_containers/unordered_map/requirements/
explicit_instantiation/1.cc: New.
* testsuite/23_containers/unordered_map/requirements/
explicit_instantiation/2.cc: New.
* testsuite/23_containers/unordered_map/requirements/
explicit_instantiation/3.cc: New.
* testsuite/23_containers/unordered_map/requirements/typedefs.cc: Edit.
* testsuite/23_containers/unordered_map/requirements/
explicit_instantiation.cc: Move to nested directory.
* testsuite/23_containers/queue/requirements/typedefs.cc: New.
* testsuite/23_containers/priority_queue/requirements/typedefs.cc: New.
* testsuite/23_containers/multimap/requirements/citerators.cc: Edit.
* testsuite/23_containers/multimap/requirements/typedefs.cc: New.
* testsuite/23_containers/set/requirements/citerators.cc: Edit.
* testsuite/23_containers/set/requirements/typedefs.cc: New.
* testsuite/23_containers/unordered_multimap/requirements/
cliterators.cc: Edit.
* testsuite/23_containers/unordered_multimap/requirements/
citerators.cc: Edit.
* testsuite/23_containers/unordered_multimap/requirements/
explicit_instantiation/1.cc: New.
* testsuite/23_containers/unordered_multimap/requirements/
explicit_instantiation/2.cc: Edit.: New.
* testsuite/23_containers/unordered_multimap/requirements/
explicit_instantiation/3.cc: New.
* testsuite/23_containers/unordered_multimap/requirements/
typedefs.cc: Edit.
* testsuite/23_containers/unordered_multimap/requirements/
explicit_instantiation.cc: Move to nested.
* testsuite/23_containers/forward_list/requirements/citerators.cc: New.
* testsuite/23_containers/forward_list/requirements/1.cc: Remove.
* testsuite/23_containers/forward_list/requirements/dr438/
insert_neg.cc: New.
* testsuite/23_containers/forward_list/requirements/dr438/
assign_neg.cc: New.
* testsuite/23_containers/forward_list/requirements/dr438/
constructor_1_neg.cc: New.
* testsuite/23_containers/forward_list/requirements/dr438/
constructor_2_neg.cc: New.
* testsuite/23_containers/forward_list/requirements/dr438/
constructor.cc: New.
* testsuite/23_containers/forward_list/requirements/typedefs.cc: New.
* testsuite/23_containers/unordered_set/requirements/
cliterators.cc: Edit.
* testsuite/23_containers/unordered_set/requirements/
citerators.cc: Edit.
* testsuite/23_containers/unordered_set/requirements/
explicit_instantiation/1.cc: New.
* testsuite/23_containers/unordered_set/requirements/
explicit_instantiation/2.cc: New.
* testsuite/23_containers/unordered_set/requirements/
explicit_instantiation/3.cc: New.
* testsuite/23_containers/unordered_set/requirements/typedefs.cc: Edit.
* testsuite/23_containers/unordered_set/requirements/
explicit_instantiation.cc: Move to nested.
* testsuite/23_containers/vector/requirements/citerators.cc: Edit.
* testsuite/23_containers/vector/requirements/dr438/bool/
constructor.cc: Move.
* testsuite/23_containers/vector/requirements/typedefs.cc: New.
* testsuite/23_containers/vector/bool/requirements/citerators.cc: Edit.
* testsuite/23_containers/vector/bool/requirements/dr438/
constructor.cc: New.
* testsuite/23_containers/deque/requirements/citerators.cc: Edit.
* testsuite/23_containers/deque/requirements/typedefs.cc
* testsuite/23_containers/stack/requirements/typedefs.cc
* testsuite/23_containers/multiset/requirements/citerators.cc: Edit.
* testsuite/23_containers/multiset/requirements/typedefs.cc: New.
* testsuite/23_containers/list/requirements/citerators.cc: Edit.
* testsuite/23_containers/list/requirements/typedefs.cc: New.
* testsuite/23_containers/unordered_multiset/requirements/
cliterators.cc: Edit.
* testsuite/23_containers/unordered_multiset/requirements/
citerators.cc: Edit.
* testsuite/23_containers/unordered_multiset/requirements/
explicit_instantiation.cc: Move.
* testsuite/23_containers/unordered_multiset/requirements/
explicit_instantiation/1.cc: New.
* testsuite/23_containers/unordered_multiset/requirements/
explicit_instantiation/2.cc: New.
* testsuite/23_containers/unordered_multiset/requirements/
explicit_instantiation/3.cc: New.
* testsuite/23_containers/unordered_multiset/requirements/typedefs.cc
* testsuite/23_containers/map/requirements/citerators.cc: Edit.
* testsuite/23_containers/map/requirements/typedefs.cc: New.
* testsuite/23_containers/array/requirements/citerators.cc: Edit.
* testsuite/23_containers/array/requirements/explicit_instantiation.cc:
Move.
* testsuite/23_containers/array/requirements/
explicit_instantiation/1.cc: New.
* testsuite/23_containers/array/requirements/
explicit_instantiation/2.cc: New.
* testsuite/23_containers/array/requirements/typedefs.cc: New.
From-SVN: r151106
2009-08-25 22:29:08 +00:00
Chris Jefferson
f9590eae5f
stl_algo.h (__unguarded_partition_pivot, [...]): New.
...
2009-08-24 Chris Jefferson <chris@bubblescope.net>
* include/stl_algo.h (__unguarded_partition_pivot,
__move_median_first): New.
(__insertion_sort, __unguarded_insertion_sort): Adjust for move-only
types.
(__unguarded_linear_insert): Assume always inserting value at __last.
(__unguarded_partition): Take pivot by reference.
(__introsort_loop, __introselect) : Use __unguarded_partition_pivot.
* testsuite/25_algorithms/nth_element/moveable.cc : Enable.
From-SVN: r151055
2009-08-24 14:07:34 +00:00
Edward Smith-Rowland
e192376912
re PR libstdc++/41061 (Compile of program using std random fails.)
...
2009-08-14 Edward Smith-Rowland <3dw4rd@verizon.net>
Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/41061
* include/bits/random.h (operator<<(std::basic_ostream<>&,
const std::lognormal_distribution<>&),
operator>>(std::basic_istream<>&, std::lognormal_distribution<>&),
operator<<(std::basic_ostream<>&, const std::gamma_distribution<>&),
operator>>(std::basic_istream<>&, std::gamma_distribution<>&),
operator<<(std::basic_ostream<>&,
const std::chi_squared_distribution<>&),
operator>>(std::basic_istream<>&, std::chi_squared_distribution<>&),
operator<<(std::basic_ostream<>&,
const std::fisher_f_distribution<>&),
operator>>(std::basic_istream<>&, std::fisher_f_distribution<>&),
operator<<(std::basic_ostream<>&,
const std::student_t_distribution<>&),
operator>>(std::basic_istream<>&, std::student_t_distribution<>&),
operator<<(std::basic_ostream<>&,
const std::negative_binomial_distribution<>&)): Declare friend.
* testsuite/26_numerics/random/uniform_real_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/piecewise_constant_distribution/
operators/serialize.cc: Likewise.
* testsuite/26_numerics/random/chi_squared_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/normal_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/uniform_int_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/poisson_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/bernoulli_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/discrete_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/weibull_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/negative_binomial_distribution/
operators/serialize.cc: Likewise.
* testsuite/26_numerics/random/cauchy_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/gamma_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/fisher_f_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/exponential_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/lognormal_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/binomial_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/extreme_value_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/piecewise_linear_distribution/
operators/serialize.cc
* testsuite/26_numerics/random/student_t_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/geometric_distribution/operators/
serialize.cc: Likewise.
Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>
From-SVN: r150783
2009-08-14 23:33:27 +00:00
Edward Smith-Rowland
c105751c46
stl_tree.h: Make erase return iterator as per DR 130.
...
2009-08-14 Edward Smith-Rowland <3dw4rd@verizon.net>
* include/bits/stl_tree.h: Make erase return iterator as per DR 130.
* include/bits/stl_set.h: Same.
* include/bits/stl_multiset.h: Same.
* include/bits/stl_map.h: Same.
* include/bits/stl_multimap.h: Same.
* doc/xml/manual/intro.xml: Document.
* testsuite/23_containers/set/dr130.cc: New.
* testsuite/23_containers/multiset/dr130.cc: New.
* testsuite/23_containers/map/dr130.cc: New.
* testsuite/23_containers/multimap/dr130.cc: New.
From-SVN: r150768
2009-08-14 17:54:44 +00:00
Benjamin Kosnik
8d1b99e26a
future: Fixes for -fno-exceptions.
...
2009-08-10 Benjamin Kosnik <bkoz@redhat.com>
* include/std/future: Fixes for -fno-exceptions.
* include/bits/functexcept.h: Same.
* libsupc++/exception_ptr.h: Same.
* src/pool_allocator.cc: Same.
* src/future.cc: Same.
* src/functexcept.cc: Same.
* config/abi/pre/gnu.ver: New exports.
* testsuite/30_threads/packaged_task/cons/assign_neg.cc: Adjust.
* testsuite/30_threads/packaged_task/cons/copy_neg.cc: Same.
* testsuite/30_threads/unique_future/cons/assign_neg.cc: Same.
* testsuite/30_threads/unique_future/cons/copy_neg.cc: Same.
* testsuite/30_threads/shared_future/cons/assign_neg.cc: Same.
* testsuite/30_threads/promise/cons/assign_neg.cc: Same.
* testsuite/30_threads/promise/cons/copy_neg.cc: Same.
* testsuite/23_containers/deque/operators/1.cc: Separate in two...
* testsuite/23_containers/deque/operators/2.cc: New.
From-SVN: r150633
2009-08-10 18:24:47 +00:00
Paolo Carlini
ac517fcbcc
hash.cc (hash<string>::operator()(string), hash<wstring>::operator()(wstring)): Do not decorate as throwing nothing.
...
2009-08-07 Paolo Carlini <paolo.carlini@oracle.com>
* src/hash.cc (hash<string>::operator()(string),
hash<wstring>::operator()(wstring)): Do not decorate as throwing
nothing.
* include/bits/functional_hash.h (hash<error_code>::
operator()(error_code)): Likewise.
From-SVN: r150566
2009-08-07 10:13:44 +00:00
Benjamin Kosnik
21da6d0f10
compatibility.cc: Make C++0x safe, add in explicit casts to bool for stream sentry objects.
...
2009-08-06 Benjamin Kosnik <bkoz@redhat.com>
* src/compatibility.cc: Make C++0x safe, add in explicit casts to
bool for stream sentry objects.
* include/bits/istream.tcc: Same.
* include/bits/ostream.tcc: Same.
* include/bits/basic_string.tcc: Same.
* include/bits/ostream_insert.h: Same.
* src/istream.cc: Same.
From-SVN: r150539
2009-08-06 19:33:33 +00:00
Paolo Carlini
53a381dc16
istream (operator>>(basic_istream<>&&, _Tp&)): Minor cosmetic changes, inline.
...
2009-08-03 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/istream (operator>>(basic_istream<>&&, _Tp&)): Minor
cosmetic changes, inline.
* include/std/ostream (operator<<(basic_ostream<>&&, const _Tp&)):
Likewise.
* include/bits/move.h: Minor cosmetic changes.
From-SVN: r150387
2009-08-03 21:53:25 +00:00
Jason Merrill
e7f1930f94
call.c (convert_class_to_reference): Binding an lvalue to an rvalue reference is bad.
...
* call.c (convert_class_to_reference): Binding an lvalue to an
rvalue reference is bad. If the user-defined conversion is bad,
set bad_p before merging conversions.
(maybe_handle_ref_bind): Don't push down bad_p.
(reference_binding): Binding an lvalue to an rvalue reference is bad.
(convert_like_real): Give a helpful error about binding lvalue
to rvalue reference.
(reference_related_p): No longer static.
* typeck.c (build_typed_address): New.
(build_static_cast_1): Add static_cast from lvalue to &&.
* cp-tree.h: Adjust.
* include/bits/move.h (forward): Implement as in N2835.
(move): Implement as in N2831.
* include/std/istream (rvalue stream operator>>): New.
* include/std/ostream (rvalue stream operator<<): New.
Co-Authored-By: Douglas Gregor <doug.gregor@gmail.com>
From-SVN: r150327
2009-07-31 22:26:42 -04:00
Jason Merrill
4c65085391
forward_list.h (splice_after): Use forward.
...
* include/bits/forward_list.h (splice_after): Use forward.
(merge): Likewise.
* include/bits/stl_iterator.h (move_iterator::operator*): Use move.
(move_iterator::operator[]): Use move.
* include/bits/stl_list.h (insert): Use move.
* include/std/thread (_Callable constructor): Use forward.
* include/std/tuple: Don't specify explicit template args to move.
From-SVN: r150326
2009-07-31 22:26:32 -04:00
Paolo Carlini
af90c8c9ae
re PR libstdc++/40712 (locale(const locale&, const char*, locale::category) can create broken locale)
...
2009-07-18 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/40712
* config/locale/gnu/numeric_members.cc (numpunct<>::
_M_initialize_numpunct): Dynamically allocate _M_data->_M_grouping
and copy the langinfo data into it.
(numpunct<>::~numpunct): Free the allocated memory.
* config/locale/gnu/monetary_members.cc (moneypunct<>::
_M_initialize_moneypunct): Dynamically allocate _M_data->_M_grouping,
_M_data->_M_positive_sign, _M_data->_M_negative_sign,
_M_data->_M_curr_symbol.
(moneypunct<>::~moneypunct): Free the allocated memory.
* testsuite/22_locale/moneypunct/40712.cc: New.
* include/bits/locale_facets.tcc (__numpunct_cache<>::_M_cache):
Do not leak memory if new throws.
* include/bits/locale_facets_nonio.tcc
(__moneypunct_cache<>::_M_cache): Likewise.
From-SVN: r149782
2009-07-18 22:58:10 +00:00
Paolo Carlini
6f0398bb14
istream.tcc (basic_istream<>::operator>>(short&), [...]): Implement resolution of DR 696, [Ready] in Frankfurt.
...
2009-07-16 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/istream.tcc (basic_istream<>::operator>>(short&),
basic_istream<>::operator>>(int&)): Implement resolution of DR 696,
[Ready] in Frankfurt.
* include/tr1_impl/regex (regex_traits<>::value): Adjust.
* testsuite/27_io/basic_istream/extractors_arithmetic/char/dr696.cc:
New.
* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/dr696.cc:
Likewise.
* testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
Adjust.
* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/13.cc:
Likewise.
* doc/xml/manual/intro.xml: Add an entry for DR 696.
* include/bits/istream.tcc: Minor clean-up to the initializers of the
__err locals.
* include/bits/ostream.tcc: Likewise.
* src/compatibility.cc: Likewise.
* src/istream.cc: Likewise.
From-SVN: r149704
2009-07-16 12:41:03 +00:00
Janis Johnson
23862bec3e
re PR libstdc++/40691 (bug in logical not operator for valarray used with slice)
...
PR libstdc++/40691
* include/bugs/valarray-after.h (_Expr::operator!): Fix return type.
* testsuite/26_numerics/valarray/40691.cc: New test.
From-SVN: r149393
2009-07-08 22:26:50 +00:00
Paolo Carlini
462ac91e72
2009-06-29 Paolo Carlini <paolo.carlini@oracle.com>
...
* include/bits/random.tcc
(linear_congruential_engine<>::seed(seed_seq&)): Use uint_least32_t
as array type.
From-SVN: r149078
2009-06-30 01:25:52 +00:00
Paolo Carlini
b94f4bef8b
random.h (__mod(_Tp)): Use defaults.
...
2009-06-29 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/random.h (__mod(_Tp)): Use defaults.
(struct _Mod): Adjust template parameters.
(linear_congruential_engine<>::operator()()): Adjust.
(typedef _UInt32Type): Remove.
(mersenne_twister_engine<>::initialization_multiplier): Fix type.
* include/bits/random.tcc (struct _Mod): Adjust template parameters.
(linear_congruential_engine<>::seed(result_type)): Adjust __mod
calls.
(mersenne_twister_engine<>::seed(result_type)): Likewise.
(mersenne_twister_engine<>::seed(seed_seq&)): Likewise.
(subtract_with_carry_engine<>::seed(result_type)): Likewise.
(subtract_with_carry_engine<>::seed(seed_seq&)): Likewise.
(seed_seq::seed_seq(std::initializer_list<>)): Likewise.
(seed_seq::seed_seq(_InputIterator, _InputIterator)): Likewise.
(seed_seq::generate(_RandomAccessIterator, _RandomAccessIterator)):
Likewise.
* include/bits/random.tcc
(mersenne_twister_engine<>::seed(result_type)): Fix i usage in the
formula (i mod n).
(mersenne_twister_engine<>::seed(seed_seq&)): Use uint_least32_t
as array type.
(subtract_with_carry_engine<>::seed(seed_seq&)): Likewise; fix array
size.
(subtract_with_carry_engine<>::seed(result_type)): Fix; also use
uint_least32_t.
From-SVN: r149074
2009-06-30 00:43:21 +00:00
Jonathan Wakely
27f41cfea5
re PR libstdc++/40297 ([C++0x] debug mode vs atomics)
...
2009-06-24 Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/40297
* include/bits/atomic_0.h: Reverse debug assertions.
* include/bits/atomic_2.h: Likewise.
From-SVN: r148893
2009-06-24 08:06:17 +01:00
Jonathan Wakely
2ea259393d
shared_ptr.h: Do not swap rvalues.
...
2009-06-23 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/bits/shared_ptr.h: Do not swap rvalues.
* testsuite/20_util/owner_less/cmp.cc: Add missing test variables.
* testsuite/20_util/shared_ptr/comparison/cmp.cc: Likewise.
* testsuite/20_util/shared_ptr/comparison/less.cc: Likewise.
* testsuite/20_util/weak_ptr/observers/owner_before.cc: Likewise.
* testsuite/20_util/tuple/swap.cc: Likewise.
From-SVN: r148880
2009-06-23 23:33:17 +01:00
Paolo Carlini
7309083f99
re PR libstdc++/40518 (data races when calling std::string::erase() on empty string)
...
2009-06-23 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/40518
* include/bits/basic_string.h (basic_string<>::_Rep::
_M_set_length_and_sharable): Do not write the empty rep.
(basic_string<>::erase(iterator, iterator)): Likewise,
move out of line...
* include/bits/basic_string.tcc: ... here.
From-SVN: r148850
2009-06-23 12:36:43 +00:00
Paolo Carlini
1a9e603e52
2009-06-20 Paolo Carlini <paolo.carlini@oracle.com>
...
* Revert last Change.
From-SVN: r148756
2009-06-21 00:57:56 +00:00
Paolo Carlini
2271f9c260
re PR libstdc++/40497 ([C++0x] troubles with std::next / std::prev declarations)
...
2009-06-20 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/40497
* include/bits/stl_iterator_base_funcs.h (next, prev): Fix the
signature per the current C++1x draft (N2857).
* testsuite/24_iterators/operations/40497.cc: Add.
From-SVN: r148751
2009-06-20 22:27:04 +00:00
Paolo Carlini
9b88236b34
random.h (_Adaptor): Simplify for _DInputType always a floating point type.
...
2009-06-19 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/random.h (_Adaptor): Simplify for _DInputType always
a floating point type.
(uniform_int_distribution<>::uniform_int_distribution(_IntType,
_IntType)): Fix second default argument.
(uniform_int_distribution<>::_M_call): Remove.
(uniform_int_distribution<>::operator()(_UniformRandomNumberGenerator&,
const param_type&)): Only declare.
* include/bits/random.tcc (uniform_int_distribution<>::_M_call(
_UniformRandomNumberGenerator&, result_type, result_type, true_type):
Remove.
uniform_int_distribution<>::operator()(_UniformRandomNumberGenerator&,
const param_type&): Define here.
(geometric_distribution<>::operator()(_UniformRandomNumberGenerator&,
const param_type&), discrete_distribution<>::operator()
(_UniformRandomNumberGenerator&, const param_type&),
piecewise_constant_distribution<>::operator()
(_UniformRandomNumberGenerator&, const param_type&),
piecewise_linear_distribution<>::operator()
(_UniformRandomNumberGenerator&, const param_type&)): Use double as
the second template argument of _Adaptor.
* testsuite/26_numerics/random/uniform_int_distribution/cons/
default.cc: Adjust.
From-SVN: r148720
2009-06-19 17:49:31 +00:00
Paolo Carlini
f8dd9e0de0
random.tcc (discrete_distribution<>::param_type:: param_type(size_t, double, double, _Func), [...]): Tidy.
...
2009-06-19 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/random.tcc (discrete_distribution<>::param_type::
param_type(size_t, double, double, _Func),
discrete_distribution<>::operator()(_UniformRandomNumberGenerator&,
const param_type&)): Tidy.
(piecewise_constant_distribution<>::param_type::_M_initialize):
Use reserve, fix.
(piecewise_constant_distribution<>::param_type::
param_type(initializer_list<>, _Func),
piecewise_constant_distribution<>::param_type::
param_type(size_t, _RealType, _RealType, _Func),
piecewise_linear_distribution<>::param_type::
param_type(initializer_list<>, _Func),
piecewise_linear_distribution<>::param_type::
param_type(size_t, _RealType, _RealType, _Func)): Use reserve, tidy.
(piecewise_constant_distribution<>::param_type::
param_type(_InputIteratorB, _InputIteratorB, _InputIteratorW),
piecewise_constant_distribution<>::
operator()(_UniformRandomNumberGenerator&, const param_type&),
piecewise_linear_distribution<>::
operator()(_UniformRandomNumberGenerator&, const param_type&)): Fix.
(operator>>(std::basic_istream<>&,
piecewise_constant_distribution<>&),
operator>>(std::basic_istream<>&, piecewise_linear_distribution<>&)):
Use reserve.
* include/bits/random.h: Minor cosmetic changes.
From-SVN: r148719
2009-06-19 17:17:14 +00:00
Paolo Carlini
f9b09dec19
random.tcc (negative_binomial_distribution<>::operator() (_UniformRandomNumberGenerator&, const param_type&): Tweak to use a class member gamma_distribution.
...
2009-06-11 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/random.tcc
(negative_binomial_distribution<>::operator()
(_UniformRandomNumberGenerator&, const param_type&): Tweak to use a
class member gamma_distribution.
(negative_binomial_distribution<>::operator()
(_UniformRandomNumberGenerator&)): Implement out of line here.
(operator<<(basic_ostream<>&, negative_binomial_distribution<>),
operator>>(basic_ostream<>&, negative_binomial_distribution<>): Adjust.
(student_t_distribution<>::operator()
(_UniformRandomNumberGenerator&, const param_type&): Move inline,
simplify.
(operator<<(basic_ostream<>&, student_t_distribution<>),
operator>>(basic_ostream<>&, student_t_distribution<>): Adjust.
(chi_squared_distribution<>::operator()
(_UniformRandomNumberGenerator&, const param_type&): Move inline,
tweak to use a class member gamma_distribution.
(operator<<(basic_ostream<>&, chi_squared_distribution<>),
operator>>(basic_ostream<>&, chi_squared_distribution<>): Adjust.
(fisher_f_distribution<>::operator() (_UniformRandomNumberGenerator&,
const param_type&): Move inline, tweak to use class member
gamma_distributions.
(operator<<(basic_ostream<>&, fisher_f_distribution<>),
operator>>(basic_ostream<>&, fisher_f_distribution<>): Adjust.
* include/bits/random.h: Adjust, minor tweaks.
From-SVN: r148393
2009-06-11 18:32:30 +00:00
Benjamin Kosnik
fd9380a6cd
move.h: Doxygen group fixes.
...
2009-06-09 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/move.h: Doxygen group fixes.
From-SVN: r148337
2009-06-10 02:14:32 +00:00
Paolo Carlini
b01630bb3d
random.tcc (gamma_distribution<>::operator() (_UniformRandomNumberGenerator&, const param_type&): Redo, using the Marsaglia/Tsang algorithm.
...
2009-06-08 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/random.tcc (gamma_distribution<>::operator()
(_UniformRandomNumberGenerator&, const param_type&): Redo, using
the Marsaglia/Tsang algorithm.
(gamma_distribution<>::param_type::_M_initialize): Adjust.
(operator<<(basic_ostream<>&, gamma_distribution<>),
operator>>(basic_ostream<>&, gamma_distribution<>): Likewise.
* include/bits/random.tcc(student_t_distribution<>::_M_gaussian):
Remove, just use normal_distribution.
(operator<<(basic_ostream<>&, student_t_distribution<>),
operator>>(basic_ostream<>&, student_t_distribution<>): Adjust.
(linear_congruential_engine<>::operator()()): Move inline.
(lognormal_distribution<>::operator()(_UniformRandomNumberGenerator&,
const param_type&)): Move inline, just use normal_distribution.
(operator<<(basic_ostream<>&, lognormal_distribution<>),
operator>>(basic_ostream<>&, lognormal_distribution<>): Adjust.
(weibull_distribution<>::operator()(_UniformRandomNumberGenerator&,
const param_type&)): Move here, out of line.
(piecewise_constant_distribution<>::param_type::param_type()): Move
inline.
* include/bits/random.h: Adjust, minor tweaks.
From-SVN: r148276
2009-06-08 14:38:48 +00:00
Benjamin Kosnik
d29d4507b2
functional (function): Use explicit operator bool.
...
2009-05-20 Benjamin Kosnik <bkoz@redhat.com>
* include/tr1_impl/functional (function): Use explicit operator bool.
* include/bits/shared_ptr.h (__shared_ptr): Same.
* include/bits/unique_ptr.h (unique_ptr): Same.
* include/std/mutex (unique_lock): Same.
* include/std/system_error (error_code): Same.
(error_condition): Same.
* include/std/ostream (sentry): Same.
* include/std/istream (sentry): Same.
* testsuite/19_diagnostics/error_condition/operators/bool.cc: Adjust.
* testsuite/19_diagnostics/error_condition/operators/bool_neg.cc: Same.
* testsuite/19_diagnostics/error_code/operators/bool.cc: Same.
* testsuite/19_diagnostics/error_code/operators/bool_neg.cc: Same.
* testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Same.
* testsuite/20_util/unique_ptr/assign/assign_neg.cc: Same.
* testsuite/20_util/shared_ptr/observers/bool_conv.cc: Same.
From-SVN: r147756
2009-05-21 01:12:00 +00:00
Paolo Carlini
c8036448d1
re PR libstdc++/40184 (locale(const char* std_name) can create invalid facets for nonuniform locale)
...
2009-05-19 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/40184
* include/bits/locale_classes.h (locale::facet::_S_lc_ctype_c_locale):
Declare...
* config/locale/gnu/c_locale.cc: ... and define.
* config/locale/generic/c_locale.cc: Define.
* src/localename.cc (locale::_Impl::_Impl(const char*, size_t)):
Use it.
* testsuite/22_locale/locale/cons/40184.cc: New.
From-SVN: r147714
2009-05-19 18:20:47 +00:00
Paolo Carlini
cf0e6fff1d
re PR c++/40192 (Unable to use std::vector with typedef'd array types)
...
2009-05-18 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/40192
* include/bits/stl_construct.h (struct _Destroy_aux): Add.
(_Destroy(_ForwardIterator, _ForwardIterator)): Use the latter.
* testsuite/23_containers/vector/40192.cc: New.
From-SVN: r147680
2009-05-18 23:16:20 +00:00
Jonathan Wakely
ff74fd1325
stl_pair.h (swap): Do not swap rvalues.
...
2009-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/bits/stl_pair.h (swap): Do not swap rvalues.
* include/bits/stl_deque.h (swap): Likewise.
* include/bits/stl_list.h (swap): Likewise.
* include/bits/stl_vector.h (swap): Likewise.
* include/bits/stl_bvector.h (swap): Likewise.
* include/bits/stl_queue.h (swap): Likewise.
* include/bits/stl_stack.h (swap): Likewise.
* include/bits/stl_tree.h (swap): Likewise.
* include/bits/stl_map.h (swap): Likewise.
* include/bits/stl_multimap.h (swap): Likewise.
* include/bits/stl_set.h (swap): Likewise.
* include/bits/stl_multiset.h (swap): Likewise.
* include/bits/forward_list.h (swap): Likewise.
* include/bits/unique_ptr.h (swap): Likewise.
* include/debug/deque (swap): Likewise.
* include/debug/list (swap): Likewise.
* include/debug/vector (swap): Likewise.
* include/debug/map.h (swap): Likewise.
* include/debug/multimap.h (swap): Likewise.
* include/debug/set.h (swap): Likewise.
* include/debug/multiset.h (swap): Likewise.
* include/debug/unordered_map (swap): Likewise.
* include/debug/unordered_set (swap): Likewise.
* include/ext/vstring.h (swap): Likewise.
* include/tr1_impl/unordered_map (swap): Likewise.
* include/tr1_impl/hashtable (swap): Likewise.
* include/tr1_impl/unordered_set (swap): Likewise.
* include/std/tuple (swap): Likewise.
* include/std/mutex (swap): Likewise.
* include/std/thread (swap): Likewise.
(operator<<): Only output to lvalue streams.
* testsuite/20_util/shared_ptr/modifiers/swap_rvalue.cc: Remove.
* testsuite/23_containers/headers/forward_list/synopsis.cc: Adjust.
* testsuite/23_containers/deque/requirements/dr438/
assign_neg.cc: Adjust line numbers.
* testsuite/23_containers/deque/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
assign_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.
* testsuite/23_containers/list/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
assign_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/30_threads/thread/swap/1.cc: Swap with lvalue and also
test non-member swap.
* testsuite/30_threads/thread/swap/2.cc: Remove.
From-SVN: r147678
2009-05-18 23:15:56 +01:00
Paolo Carlini
6855fe452e
re PR libstdc++/40123 (Revision 147395 failed libstc++ tests)
...
2009-05-14 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/40123
* random.tcc (independent_bits_engine<>::operator()()): Use
result_type(1), not 1UL.
* random.tcc (independent_bits_engine<>::operator()()): Use _M_b.max()
and _M_b.min(), instead of this->max() and this->min().
* random.h (_ShiftMin1): Remove, adjust everywhere.
* random.tcc: Minor cosmetic changes.
From-SVN: r147538
2009-05-14 17:56:17 +00:00
Paolo Carlini
e1a0296342
random.tcc (cauchy_distribution<>:: operator()(_UniformRandomNumberGenerator&, const param_type&)): Avoid M_PI, a glibc extension.
...
2009-05-14 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/random.tcc (cauchy_distribution<>::
operator()(_UniformRandomNumberGenerator&, const param_type&)):
Avoid M_PI, a glibc extension.
From-SVN: r147521
2009-05-14 08:14:54 +00:00
Jan Hubicka
e762c6f4c6
array (at): Do not use builtin_expect.
...
* include/tr1_impl/array (at): Do not use builtin_expect.
* include/ext/throw_allocator.h (allocate): Likewise.
* include/ext/pool_allocator.h (allocate): Likweise.
* include/ext/bitmap_allocator.h (allocate): Likewise.
* include/ext/rc_string_base.h (_S_construct): Likewise.
* include/ext/malloc_allocator.h (allocate): Likewise.
* include/ext/mt_allocator.h (allocate): Likewise.
* include/ext/sso_string_base.h (_M_construct): Likewise.
* include/bits/basic_string.tcc (_S_construct): Likewise.
From-SVN: r146681
2009-04-24 09:35:19 +00:00
Paolo Carlini
ed2807f4cd
re PR libstdc++/39835 (Bootstrap failure: libstdc++-v3/include/bits/random.h:3630: error: expected â,â or â...â before numeric constant)
...
2009-04-21 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/39835
* include/bits/random.h: Avoid the badname __alpha (and, for
consistency, __beta too).
* include/bits/random.tcc: Likewise.
From-SVN: r146516
2009-04-21 11:42:51 +00:00
Jan Hubicka
9225b33903
stdatomic.h (atomic_flag_test_and_set_explicit, [...]): Use _GLIBCXX_NOTHROW.
...
* c_compatibility/stdatomic.h (atomic_flag_test_and_set_explicit,
atomic_flag_clear_explicit, __atomic_flag_wait_explicit): Use
_GLIBCXX_NOTHROW.
* bits/c++config (_GLIBCXX_NOTHROW): New.
From-SVN: r146341
2009-04-19 09:36:10 +00:00
Jan Hubicka
50a681c4ee
condition_variable.cc (condition_variable, [...]): Mark throw()
...
* src/condition_variable.cc (condition_variable,
condition_variable_any constructors): Mark throw()
* src/hash.cc (operator() for long double, string, and wstring): Mark
throw ().
* src/strstream.cc (strstreambuf constructors, freeze, str, pcount,
_M_setup, rdbuf, str): Mark throw ().
* src/chrono.cc (new): Mark throw ().
* include/std/system_error (system_category, generic_category): Mark
throw () and const.
* include/std/chrono (now): Mark throw ().
* include/std/condition_variable (condition_variable,
~condition_variable, condition_variable_any,
~condition_variable_any): Mark throw ().
* include/std/mutex (mutex): Mark throw ().
* include/bits/stl_list.h (swap, transfer, reverse, hook, unhook): Mark
throw.
* include/bits/functional_hash.h (operator() on size_t): Mark pure and throw ().
* include/bits/locale_facets.tcc (__verify_grouping): Mark pure.
* include/bits/locale_classes.h (_S_initialize_once,
_S_clone_c_locale): Mark throw ().
(_S_get_c_name): Mark const and throw ().
(_M_id, _M_compare, _M_transform, _M_compare, _M_transform): Mark throw ().
* include/bits/locale_facets.h (__convert_to_v explicit instances):
Mark throw ().
(_M_convert_to_wmask, _M_initialize_ctype, _S_format_float): Mark throw ().
* include/bits/ios_base.h (_M_dispose_callbacks, _M_init, imbue,
ios_base): Mark throw ()
* include/bits/locale_facets_nonio.h (_M_put): Mark throw.
* include/backward/strstream (strstreambuf constructors): Mark throw ().
(str, freeze, _M_setupf): Mark throw ().
(pcount): Mark pure and throw ().
(rdbuf): Mark const and throw ().
From-SVN: r146328
2009-04-18 21:19:18 +00:00
Paolo Carlini
2daad65eaf
re PR libstdc++/39802 (std::num_get fails to parse negative zero input correctly)
...
2009-04-18 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/39802
* include/bits/locale_facets.tcc (num_get<>::_M_extract_int
(_InIter, _InIter, ios_base&, ios_base::iostate&, _ValueT&)):
Always accept negative values, for unsigned types too.
* testsuite/22_locale/num_get/get/char/39802.cc: New.
* testsuite/22_locale/num_get/get/wchar_t/39802.cc: Likewise.
From-SVN: r146323
2009-04-18 19:28:40 +00:00
Jan Hubicka
b8add5942c
formater.h: Include bits/c++config.h.
...
* include/debug/formater.h: Include bits/c++config.h.
(_M_error): Mark noreturn.
* include/bits/c++config (_GLIBCXX_PURE, _GLIBCXX_CONST,
_GLIBCXX_NORETURN): New.
* include/bits/stl_tree.h (_Rb_tree_increment, _Rb_tree_increment,
_Rb_tree_decrement, _Rb_tree_decrement, _Rb_tree_black_count): Mark pure.
* include/c_compatibility/stdatomic.h (atomic_flag_test_and_set_explicit,
atomic_flag_clear_explicit, __atomic_flag_wait_explicit,
__atomic_flag_for_address): Mark by throw ().
* src/atomic.cc (atomic_flag_test_and_set_explicit,
atomic_flag_clear_explicit, __atomic_flag_wait_explicit,
__atomic_flag_for_address): Mark by throw ().
From-SVN: r146317
2009-04-18 15:48:16 +00:00
Jan Hubicka
1cf1c842c5
tree.cc (_Rb_tree_increment, [...]): Mark nothrow; update uses of _Rb_tree_rotate_left, _Rb_tree_rotate_right.
...
* tree.cc (_Rb_tree_increment, _Rb_tree_decrement,
_Rb_tree_rebalance_for_erase, _Rb_tree_black_count): Mark nothrow;
update uses of _Rb_tree_rotate_left, _Rb_tree_rotate_right.
(_Rb_tree_rotate_left, _Rb_tree_rotate_right): Make wrapper and break
out body to ...
(local_Rb_tree_rotate_left, local_Rb_tree_rotate_right): New static
functions.
* stl_tree.h (_Rb_tree_increment, _Rb_tree_decrement,
_Rb_tree_insert_and_rebalance, _Rb_tree_rebalance_for_erase,
_Rb_tree_black_count): Mark nothrow.
From-SVN: r146184
2009-04-16 13:01:17 +00:00
Paolo Carlini
9093359a7b
c++config: Revert inadvertent change.
...
2009-04-16 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/c++config: Revert inadvertent change.
From-SVN: r146172
2009-04-16 11:48:38 +00:00
Paolo Carlini
42fb6c83dd
forward_list.h: Remove default std::allocator<_Tp> from base classes.
...
2009-04-16 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/forward_list.h: Remove default std::allocator<_Tp>
from base classes.
* testsuite/23_containers/forward_list/capacity/1.cc: Adjust.
From-SVN: r146171
2009-04-16 11:46:25 +00:00
Paolo Carlini
96a9203b1c
PR libstdc++/39629 (final bits)
...
2009-04-09 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/39629 (final bits)
* include/bits/random.h (subtract_with_carry_engine<>::_S_modulus):
Remove, consistently use __detail::_Shift<_UIntType, __w>::__value.
* include/bits/random.tcc (shuffle_order_engine<>::operator()()):
Fix formula for __j.
* include/bits/random.tcc (operator==(const normal_distribution<>&,
const normal_distribution<>&): Remove.
* include/bits/random.h (operator==(const uniform_int_distribution<>&,
const uniform_int_distribution<>&), operator==(const
uniform_real_distribution<>&, const uniform_real_distribution<>&),
operator==(const normal_distribution<>&, const normal_distribution<>&),
operator==(const lognormal_distribution<>&,
const lognormal_distribution<>&), operator==(const
chi_squared_distribution<>&, const chi_squared_distribution<>&),
operator==(const cauchy_distribution<>&, const cauchy_distribution<>&),
operator==(const fisher_distribution<>&, const fisher_distribution<>&),
operator==(const student_t_distribution<>&,
const student_t_distribution<>&), operator==(const
bernoulli_distribution<>&, const bernoulli_distribution<>&),
operator==(const binomial_distribution<>&, const
binomial_distribution<>&), operator==(const geometric_distribution<>&,
const geometric_distribution<>&), operator==(const
negative_binomial_distribution<>&, const
negative_binomial_distribution<>&), operator==(const
poisson_distribution<>&, const poisson_distribution<>&),
operator==(const exponential_distribution<>&,
const exponential_distribution<>&), operator==(const
gamma_distribution<>&, const gamma_distribution<>&), operator==(const
weibull_distribution<>&, const weibull_distribution<>&),
operator==(const extreme_value_distribution<>&,
const extreme_value_distribution<>&), operator==(const
discrete_distribution<>&, const discrete_distribution<>&),
operator==(const piecewise_constant_distribution<>&,
const piecewise_constant_distribution<>&), operator==(const
piecewise_linear_distribution<>&, const
piecewise_linear_distribution<>&)): Remove.
* testsuite/26_numerics/random/uniform_real_distribution/operators/
serialize.cc: Remove.
* testsuite/26_numerics/random/piecewise_constant_distribution/
operators/serialize.cc: Likewise.
* testsuite/26_numerics/random/chi_squared_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/normal_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/uniform_int_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/poisson_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/bernoulli_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/discrete_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/weibull_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/negative_binomial_distribution/
operators/serialize.cc: Likewise.
* testsuite/26_numerics/random/cauchy_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/gamma_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/fisher_f_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/exponential_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/lognormal_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/binomial_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/extreme_value_distribution/
operators/serialize.cc: Likewise.
* testsuite/26_numerics/random/piecewise_linear_distribution/
operators/serialize.cc: Likewise.
* testsuite/26_numerics/random/student_t_distribution/operators/
serialize.cc: Likewise.
* testsuite/26_numerics/random/geometric_distribution/operators/
serialize.cc: Likewise.
* include/bits/random.h (linear_congruential_engine<>::seed(_Gen&,
true_type), linear_congruential_engine<>::seed(_Gen&, false_type),
mersenne_twister_engine<>::seed(_Gen&,
true_type), mersenne_twister_engine<>::seed(_Gen&, false_type),
subtract_with_carry_engine<>::seed(_Gen&,
true_type), subtract_with_carry_engine<>::seed(_Gen&, false_type)):
Remove, unused.
* include/bits/random.tcc (linear_congruential_engine<>::
seed(_Gen&, false_type): Likewise.
From-SVN: r145867
2009-04-09 23:37:08 +00:00
Jakub Jelinek
748086b7b2
Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception.
...
From-SVN: r145841
2009-04-09 17:00:19 +02:00
Benjamin Kosnik
04b7027180
Makefile.am (${pch1a_output}): Use gnu++0x flags instead of debug.
...
2009-04-06 Benjamin Kosnik <bkoz@redhat.com>
* include/Makefile.am (${pch1a_output}): Use gnu++0x flags instead
of debug.
* include/Makefile.in: Regenerate.
* include/precompiled/stdc++.h: Add.
* doc/xml/api.xml: Add gcc-4.4 link.
* doc/html/api.html: Regenerate.
2009-04-06 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/random.h: Adjust doxygen markup.
* doc/doxygen/user.cfg.in: Prefer C++0x to tr1 includes.
* testsuite/26_numerics/random/piecewise_linear_distribution/
operators/serialize.cc: Use typedefs.
From-SVN: r145645
2009-04-07 01:46:45 +00:00
Paolo Carlini
1ae3576fa4
random.tcc (linear_congruential_engine<>:: seed(seed_seq&)): Fix typo in last fix for __m == 0.
...
2009-04-06 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/random.tcc (linear_congruential_engine<>::
seed(seed_seq&)): Fix typo in last fix for __m == 0.
From-SVN: r145605
2009-04-06 14:50:06 +00:00
Paolo Carlini
94986f6d35
random.h (operator==): Mark all inline.
...
2009-04-06 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/random.h (operator==): Mark all inline.
(mersenne_twister_engine): Enable #if 0 checks.
* include/bits/random.h: Formatting tweaks.
From-SVN: r145602
2009-04-06 13:31:12 +00:00
Paolo Carlini
9769c19080
random.tcc (piecewise_linear_distribution<>:: operator()(_UniformRandomNumberGenerator&, const param_type&)): Remove spurious closed parenthesis.
...
2009-04-05 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/random.tcc (piecewise_linear_distribution<>::
operator()(_UniformRandomNumberGenerator&, const param_type&)):
Remove spurious closed parenthesis.
From-SVN: r145575
2009-04-05 22:51:37 +00:00
Paolo Carlini
2fcf6ffb76
PR libstdc++/39644 (partial)
...
2009-04-05 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/39644 (partial)
* include/bits/random.tcc (linear_congruential_engine<>::
seed(seed_seq&), independent_bits_engine<>::operator(),
generate_canonical(_UniformRandomNumberGenerator&)): Avoid log2l.
From-SVN: r145563
2009-04-05 16:56:16 +00:00
Paolo Carlini
42a733047e
[multiple changes]
...
2009-04-05 Edward M. Smith-Rowland <3dw4rd@verizon.net>
* include/bits/random.h (struct _ShiftMin1): Fix small typo and
thinko.
* testsuite/26_numerics/random/mersenne_twister_engine/cons/
default.cc: Enable.
2009-04-05 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/39629 (partial)
* testsuite/26_numerics/random/independent_bits_engine/cons/
base_move.cc: Use uint_fast64_t instead of unsigned long.
* testsuite/26_numerics/random/independent_bits_engine/cons/
seed1.cc: Likewise.
* testsuite/26_numerics/random/independent_bits_engine/cons/
seed2.cc: Likewise.
* testsuite/26_numerics/random/independent_bits_engine/cons/
base_copy.cc: Likewise.
* testsuite/26_numerics/random/independent_bits_engine/cons/
default.cc: Likewise.
* testsuite/26_numerics/random/independent_bits_engine/cons/
seed_seq.cc: Likewise.
* testsuite/26_numerics/random/independent_bits_engine/
requirements/typedefs.cc: Likewise.
* testsuite/26_numerics/random/independent_bits_engine/
operators/equal.cc: Likewise.
* testsuite/26_numerics/random/independent_bits_engine/
operators/serialize.cc: Likewise.
* testsuite/26_numerics/random/mt19937_64.cc: Use ull.
From-SVN: r145553
2009-04-04 23:09:02 +00:00
Paolo Carlini
95fe602ebe
random: Remove, empty.
...
2009-04-03 Paolo Carlini <paolo.carlini@oracle.com>
* include/tr1_impl/random: Remove, empty.
* include/tr1_impl/random.tcc: Likewise.
* include/std/random: Minor clean-ups, formatting fixes, adjust
copyright years.
* include/bits/random.tcc: Likewise.
* include/bits/random.h: Likewise.
* include/tr1/random: Likewise.
* include/tr1/random.tcc: Likewise.
* include/tr1/random.h: Likewise.
From-SVN: r145493
2009-04-03 10:01:47 +00:00
Benjamin Kosnik
8e79468d01
[multiple changes]
...
2009-04-02 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
Change to mersenne_twister_engine, add same defaults as
mersenne_twister_engine/cons/default.cc.
* testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Same.
* include/bits/random.tcc (seed_seq::seed_seq): Uglify parameter
to __il.
* include/bits/random.h (mersenne_twister_engine): Qualify
_ShiftMin1 with namespace __detail.
(__detail::_ShiftMin1): Use __gnu_cxx::__numeric_traits::max until
constexpr std::numeric_limits::max() can be used.
(mersenne_twister_engine): Split apart static asserts into one
assert per message. Temporarily disable the last three.
2009-04-02 Edward Smith-Rowland <3dw4rd@verizon.net>
* include/Makefile.am: Update to N2836. Modified for new random headers.
* include/Makefile.in: Ditto.
* include/tr1_impl/random: Moved to tr1/random.h
* include/tr1_impl/random.tcc: Moved to tr1
* include/tr1/random: Just point to moved tr1 random headers.
* include/tr1/random.tcc: Moved from tr1_impl.
* include/tr1/random.h: Moved from tr1_impl/random.
* include/std/random: Modified to point to std random headers.
* include/bits/random.tcc: New implementation of std random facilities.
* include/bits/random.h: Ditto.
* testsuite/26_numerics/headers/random/std_c++0x_neg.cc: Changed.
* testsuite/26_numerics/random/linear_congruential_engine/cons/
seed1.cc: New.
* testsuite/26_numerics/random/linear_congruential_engine/cons/
seed2.cc: New.
* testsuite/26_numerics/random/linear_congruential_engine/cons/
default.cc: New.
* testsuite/26_numerics/random/linear_congruential_engine/requirements/
non_uint_neg.cc: New.
* testsuite/26_numerics/random/linear_congruential_engine/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/linear_congruential_engine/operators/
equal.cc: New.
* testsuite/26_numerics/random/linear_congruential_engine/operators/
serialize.cc: New.
* testsuite/26_numerics/random/mersenne_twister_engine/cons/
seed1.cc: New.
* testsuite/26_numerics/random/mersenne_twister_engine/cons/
seed2.cc: New.
* testsuite/26_numerics/random/mersenne_twister_engine/cons/
default.cc: New.
* testsuite/26_numerics/random/mersenne_twister_engine/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/mersenne_twister_engine/operators/
equal.cc: New.
* testsuite/26_numerics/random/mersenne_twister_engine/operators/
serialize.cc: New.
* testsuite/26_numerics/random/subtract_with_carry_engine/cons/
seed1.cc: New.
* testsuite/26_numerics/random/subtract_with_carry_engine/cons/
seed2.cc: New.
* testsuite/26_numerics/random/subtract_with_carry_engine/cons/
default.cc: New.
* testsuite/26_numerics/random/subtract_with_carry_engine/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/subtract_with_carry_engine/operators/
equal.cc: New.
* testsuite/26_numerics/random/subtract_with_carry_engine/operators/
serialize.cc: New.
* testsuite/26_numerics/random/discard_block_engine/cons/
base_move.cc: New.
* testsuite/26_numerics/random/discard_block_engine/cons/
seed1.cc: New.
* testsuite/26_numerics/random/discard_block_engine/cons/
seed2.cc: New.
* testsuite/26_numerics/random/discard_block_engine/cons/
base_copy.cc: New.
* testsuite/26_numerics/random/discard_block_engine/cons/
default.cc: New.
* testsuite/26_numerics/random/discard_block_engine/cons/
seed_seq.cc: New.
* testsuite/26_numerics/random/discard_block_engine/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/discard_block_engine/operators/
equal.cc: New.
* testsuite/26_numerics/random/discard_block_engine/operators/
serialize.cc: New.
* testsuite/26_numerics/random/independent_bits_engine/cons/
base_move.cc: New.
* testsuite/26_numerics/random/independent_bits_engine/cons/
seed1.cc: New.
* testsuite/26_numerics/random/independent_bits_engine/cons/
seed2.cc: New.
* testsuite/26_numerics/random/independent_bits_engine/cons/
base_copy.cc: New.
* testsuite/26_numerics/random/independent_bits_engine/cons/
default.cc: New.
* testsuite/26_numerics/random/independent_bits_engine/cons/
seed_seq.cc: New.
* testsuite/26_numerics/random/independent_bits_engine/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/independent_bits_engine/operators/
equal.cc: New.
* testsuite/26_numerics/random/independent_bits_engine/operators/
serialize.cc: New.
* testsuite/26_numerics/random/shuffle_order_engine/cons/
base_move.cc: New.
* testsuite/26_numerics/random/shuffle_order_engine/cons/
seed1.cc: New.
* testsuite/26_numerics/random/shuffle_order_engine/cons/
seed2.cc: New.
* testsuite/26_numerics/random/shuffle_order_engine/cons/
base_copy.cc: New.
* testsuite/26_numerics/random/shuffle_order_engine/cons/
default.cc: New.
* testsuite/26_numerics/random/shuffle_order_engine/cons/
seed_seq.cc: New.
* testsuite/26_numerics/random/shuffle_order_engine/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/shuffle_order_engine/operators/
equal.cc: New.
* testsuite/26_numerics/random/shuffle_order_engine/operators/
serialize.cc
* testsuite/26_numerics/random/mt19937.cc: New.
* testsuite/26_numerics/random/mt19937_64.cc: New.
* testsuite/26_numerics/random/minstd_rand.cc: New.
* testsuite/26_numerics/random/minstd_rand0.cc: New.
* testsuite/26_numerics/random/ranlux24_base.cc: New.
* testsuite/26_numerics/random/ranlux48_base.cc: New.
* testsuite/26_numerics/random/ranlux24.cc: New.
* testsuite/26_numerics/random/ranlux48.cc: New.
* testsuite/26_numerics/random/knuth_b.cc: New.
* testsuite/26_numerics/random/default_random_engine.cc: New.
* testsuite/26_numerics/random/chi_squared_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/chi_squared_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/chi_squared_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/chi_squared_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/normal_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/normal_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/normal_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/normal_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/seed_seq/cons/range.cc: New.
* testsuite/26_numerics/random/seed_seq/cons/default.cc: New.
* testsuite/26_numerics/random/seed_seq/requirements/typedefs.cc: New.
* testsuite/26_numerics/random/uniform_int_distribution/cons/
parms_neg.cc: New.
* testsuite/26_numerics/random/uniform_int_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/uniform_int_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/uniform_int_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/uniform_int_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/uniform_real_distribution/cons/
parms_neg.cc: New.
* testsuite/26_numerics/random/uniform_real_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/uniform_real_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/uniform_real_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/uniform_real_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/poisson_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/poisson_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/poisson_distribution/requirements/
typedefs.cc
* testsuite/26_numerics/random/poisson_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/bernoulli_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/bernoulli_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/bernoulli_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/bernoulli_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/discrete_distribution/cons/
range.cc: New.
* testsuite/26_numerics/random/discrete_distribution/cons/
initlist.cc: New.
* testsuite/26_numerics/random/discrete_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/discrete_distribution/cons/
num_xbound_fun.cc: New.
* testsuite/26_numerics/random/discrete_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/discrete_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/weibull_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/weibull_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/weibull_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/weibull_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/negative_binomial_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/negative_binomial_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/negative_binomial_distribution/
requirements/typedefs.cc: New.
* testsuite/26_numerics/random/negative_binomial_distribution/
operators/serialize.cc: New.
* testsuite/26_numerics/random/cauchy_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/cauchy_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/cauchy_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/cauchy_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/gamma_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/gamma_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/gamma_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/gamma_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/fisher_f_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/fisher_f_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/fisher_f_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/fisher_f_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/exponential_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/exponential_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/exponential_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/exponential_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/lognormal_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/lognormal_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/lognormal_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/lognormal_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/binomial_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/binomial_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/binomial_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/binomial_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/random_device/cons/
token.cc: New.
* testsuite/26_numerics/random/random_device/cons/
default.cc: New.
* testsuite/26_numerics/random/random_device/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/extreme_value_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/extreme_value_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/extreme_value_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/extreme_value_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/piecewise_linear_distribution/cons/
range.cc: New.
* testsuite/26_numerics/random/piecewise_linear_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/piecewise_linear_distribution/cons/
num_xbound_fun.cc: New.
* testsuite/26_numerics/random/piecewise_linear_distribution/cons/
initlist_fun.cc: New.
* testsuite/26_numerics/random/piecewise_linear_distribution/
requirements/typedefs.cc: New.
* testsuite/26_numerics/random/piecewise_linear_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/student_t_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/student_t_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/student_t_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/student_t_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/geometric_distribution/cons/
parms.cc: New.
* testsuite/26_numerics/random/geometric_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/geometric_distribution/requirements/
typedefs.cc: New.
* testsuite/26_numerics/random/geometric_distribution/operators/
serialize.cc: New.
* testsuite/26_numerics/random/piecewise_constant_distribution/cons/
range.cc: New.
* testsuite/26_numerics/random/piecewise_constant_distribution/cons/
default.cc: New.
* testsuite/26_numerics/random/piecewise_constant_distribution/cons/
num_xbound_fun.cc: New.
* testsuite/26_numerics/random/piecewise_constant_distribution/cons/
initlist_fun.cc: New.
* testsuite/26_numerics/random/piecewise_constant_distribution/
requirements/typedefs.cc: New.
* testsuite/26_numerics/random/piecewise_constant_distribution/
operators/serialize.cc: New.
From-SVN: r145483
2009-04-02 23:45:56 +00:00
Paolo Carlini
4ba8a4cb63
forward_list.h (_Fwd_list_node_base<>:: _M_transfer_after, [...]): Move out of line...
...
2009-03-25 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/forward_list.h (_Fwd_list_node_base<>::
_M_transfer_after, _M_reverse_after): Move out of line...
* include/bits/forward_list.tcc: ... here.
(forward_list<>::reverse): Move inline...
* include/bits/forward_list.h: ... here; minor cosmetic changes.
From-SVN: r145069
2009-03-25 16:41:27 +00:00
Jonathan Wakely
32fdf2f406
shared_ptr.h: Add include guards.
...
2009-03-11 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/bits/shared_ptr.h: Add include guards.
* include/tr1/shared_ptr.h: Likewise.
From-SVN: r144778
2009-03-11 15:18:12 +00:00
Jonathan Wakely
5df9ac4b39
iostream: Fix doxygen link.
...
2009-03-11 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/iostream: Fix doxygen link.
* include/bits/forward_list.h: Fix doxygen markup.
* include/ext/vstring.h: Escape backslash in doxygen comment.
* include/bits/basic_string.h: Likewise.
From-SVN: r144777
2009-03-11 15:16:21 +00:00
Benjamin Kosnik
5b9daa7e60
user.cfg.in: Tweaks.
...
2009-02-20 Benjamin Kosnik <bkoz@redhat.com>
* doc/doxygen/user.cfg.in: Tweaks.
* doc/doxygen/doxygroups.cc: Prefer markup that can be elsewhere,
be elsewhere.
* include/tr1_impl/unordered_map: Just use most specialized
container module.
* include/tr1_impl/unordered_set: Same.
* include/tr1_impl/array: Same.
* include/bits/stl_list.h: Same.
* include/bits/stl_map.h: Same.
* include/bits/stl_queue.h: Same.
* include/bits/stl_set.h: Same.
* include/bits/stl_stack.h: Same.
* include/bits/forward_list.h: Same.
* include/bits/basic_string.h: Same.
* include/bits/stl_multimap.h: Same.
* include/bits/stl_vector.h: Same.
* include/bits/stl_deque.h: Same.
* include/bits/stl_multiset.h: Same.
* include/bits/stl_bvector.h: Same.
* include/backward/binders.h: Change binder module to binders.
* include/std/complex: Add complex_numers module.
* include/tr1_impl/complex: Same.
* include/std/valarray: Add numeric_arrays module.
* include/bits/gslice_array.h: Same.
* include/bits/gslice.h: Same.
* include/bits/mask_array.h: Same.
* include/bits/slice_array.h: Same.
* include/bits/indirect_array.h: Same.
* include/bits/allocator.h: Add allocators module.
* include/ext/throw_allocator.h
* include/ext/pool_allocator.h
* include/ext/bitmap_allocator.h
* include/ext/new_allocator.h
* include/ext/malloc_allocator.h
* include/ext/array_allocator.h
* include/ext/mt_allocator.h
* include/ext/debug_allocator.h
* include/ext/extptr_allocator.h
* include/tr1_impl/functional: Move namespace markup here.
* include/tr1_impl/regex: Same.
* include/tr1_impl/type_traits: Add metaprogramming module.
* include/std/type_traits: Same.
* include/std/memory: Add memory module.
* include/std/ratio: Add ratio module.
* include/std/chrono: Move namespace markup here, add time module.
* include/std/thread: Move namespace markup here, add concurrency
module.
* include/std/mutex: Use concurrency module.
* include/std/condition_variable: Same.
* include/bits/ios_base.h: Refine io module.
* include/bits/basic_ios.h: Same.
* include/std/fstream: Same.
* include/std/istream: Same.
* include/std/ostream: Same.
* include/std/sstream: Same.
* include/ext/vstring.h: Correct parameter markup.
* include/bits/shared_ptr.h: Add pointer_abstractions module.
* include/bits/unique_ptr.h: Same.
* include/bits/algorithmfwd.h: Add mutating_algorithms,
non_mutating_algorithms, sorting_algorithms. Adjust nesting.
* include/bits/stl_heap.h: Add markup for new groupings.
* include/bits/stl_algobase.h: Same.
* include/bits/stl_algo.h: Same.
* include/c_compatibility/stdatomic.h: Add atomics module.
* include/c_global/cstdatomic: Same.
* libsupc++/exception: Add exceptions module.
* libsupc++/typeinfo: Same.
* libsupc++/new: Same.
* libsupc++/exception_ptr.h: Same.
* include/std/system_error: Same.
* include/std/stdexcept: Same.
* libsupc++/cxxabi.h: Move doxygroups.cc markup here.
* libsupc++/cxxabi-forced.h: Same.
* testsuite/27_io/ios_base/cons/assign_neg.cc: Fix up line numbers.
* testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
* testsuite/30_threads/condition_variable_any/cons/assign_neg.cc: Same.
* testsuite/30_threads/condition_variable_any/cons/copy_neg.cc: Same.
* testsuite/30_threads/mutex/cons/assign_neg.cc: Same.
* testsuite/30_threads/mutex/cons/copy_neg.cc: Same.
* testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Same.
* testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Same.
* testsuite/30_threads/thread/cons/assign_neg.cc: Same.
* testsuite/30_threads/thread/cons/copy_neg.cc: Same.
* testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: Same.
* testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: Same.
* testsuite/30_threads/condition_variable/cons/assign_neg.cc: Same.
* testsuite/30_threads/condition_variable/cons/copy_neg.cc: Same.
* testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc: Same.
* testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc: Same.
* testsuite/29_atomics/atomic/cons/assign_neg.cc: Same.
* testsuite/29_atomics/atomic/cons/copy_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/
constructor_1_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/
constructor_2_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/
constructor_1_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/
constructor_2_neg.cc: Same.
* testsuite/20_util/duration/cons/1_neg.cc: Same.
* testsuite/20_util/duration/requirements/typedefs_neg1.cc: Same.
* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Same.
* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Same.
* testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Same.
* testsuite/20_util/unique_ptr/assign/assign.cc: Same.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Same.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
* testsuite/20_util/ratio/cons/cons_overflow.cc: Same.
* testsuite/20_util/ratio/operations/ops_overflow.cc: Same.
From-SVN: r144343
2009-02-21 00:45:21 +00:00
Benjamin Kosnik
aac2878e16
doxygroups.cc: Move algorithm groups into algorithmfwd.h.
...
2009-02-18 Benjamin Kosnik <bkoz@redhat.com>
* doc/doxygen/doxygroups.cc: Move algorithm groups into algorithmfwd.h.
* doc/doxygen/user.cfg.in: Update.
* scripts/run_doxygen: Adjust for new group names.
* include/tr1_impl/random: Update doxygen group markup.
* include/tr1_impl/unordered_map: Same.
* include/tr1_impl/unordered_set: Same.
* include/tr1_impl/array: Same.
* include/std/numeric: Same.
* include/std/utility: Same.
* include/std/bitset: Same.
* include/std/iosfwd: Same.
* include/bits/stl_list.h: Same.
* include/bits/stl_map.h: Same.
* include/bits/stl_algobase.h: Same.
* include/bits/stl_queue.h: Same.
* include/bits/stl_set.h: Same.
* include/bits/stl_stack.h: Same.
* include/bits/stl_iterator_base_types.h: Same.
* include/bits/forward_list.h: Same.
* include/bits/basic_string.h: Same.
* include/bits/stl_multimap.h: Same.
* include/bits/stl_vector.h: Same.
* include/bits/stl_deque.h: Same.
* include/bits/stl_multiset.h: Same.
* include/bits/stl_algo.h: Same.
* include/bits/stl_bvector.h: Same.
* include/bits/algorithmfwd.h: Same.
* include/bits/stl_function.h: Same.
* include/tr1/cmath: Same.
* include/backward/binders.h: Same.
From-SVN: r144290
2009-02-19 08:15:15 +00:00
Benjamin Kosnik
9b3003d590
system_error (system_category): To system_category().
...
2009-02-17 Benjamin Kosnik <bkoz@redhat.com>
* include/std/system_error (system_category): To system_category().
(generic_category): To generic_category. DR 890.
* src/system_error.cc: Define.
* include/bits/functexcept.h: Only one __throw_system_error.
* src/functexcept.cc: Same.
* include/std/mutex: Fixup for changes above.
* testsuite/19_diagnostics/error_condition/cons/1.cc: Same.
* testsuite/19_diagnostics/error_code/cons/1.cc: Same.
* testsuite/19_diagnostics/system_error/cons-1.cc: Same.
* config/abi/pre/gnu.ver: Clean up exports.
From-SVN: r144259
2009-02-18 07:35:36 +00:00
Paolo Carlini
bbcac3becb
re PR libstdc++/39168 (Incorrect interpretation of CHAR_MAX inside grouping string in monetary and numeric facets.)
...
2009-02-15 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/39168
* src/locale_facets.cc (__verify_grouping(const char*, size_t,
const string&)): Also check that the value != CHAR_MAX.
* include/bits/locale_facets.tcc (__numpunct_cache<>::
_M_cache(const locale&), __add_grouping(_CharT*, _CharT,
const char*, size_t, const _CharT*, const _CharT*)): Likewise.
* include/bits/locale_facets_nonio.tcc (__moneypunct_cache<>::
_M_cache(const locale&)): Likewise.
* testsuite/22_locale/money_put/put/wchar_t/39168.cc: New.
* testsuite/22_locale/money_put/put/char/39168.cc: Likewise.
* testsuite/22_locale/money_get/get/wchar_t/39168.cc: Likewise.
* testsuite/22_locale/money_get/get/char/39168.cc: Likewise.
* testsuite/22_locale/num_get/get/wchar_t/39168.cc: Likewise.
* testsuite/22_locale/num_get/get/char/39168.cc: Likewise.
From-SVN: r144190
2009-02-15 16:47:57 +00:00
Benjamin Kosnik
37d5c6baac
unique_ptr.h: Remove private __this_type typedef.
...
2009-02-04 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/unique_ptr.h: Remove private __this_type typedef.
* include/bits/stl_vector.h: Remove private vector_type typedef.
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
Fix line numbers.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Same.
* testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Same.
* testsuite/20_util/unique_ptr/assign/assign.cc: Same.
From-SVN: r143949
2009-02-05 01:50:18 +00:00