Paolo Carlini
5e108459ec
stl_pair.h (piecewise_construct_t, [...]): Add.
...
2010-04-30 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_pair.h (piecewise_construct_t,
pair<>::pair(piecewise_construct_t, tuple, tuple)): Add.
(pair<>::__cons, pair<>::__do_cons): Declare.
(__decay_and_strip, __strip_reference_wrapper): Move...
* include/std/type_traits: ... here.
* include/std/functional (_Index_tuple, _Build_index_tuple): Move...
* include/std/tuple: ... here.
(pack_arguments): Add.
(pair<>::__cons, pair<>::__do_cons): Define.
* testsuite/20_util/tuple/creation_functions/pack_arguments.cc: New.
* testsuite/20_util/pair/piecewise.cc: Likewise.
* testsuite/20_util/tuple/cons/big_tuples.cc: Include <utility>.
* testsuite/20_util/tuple/cons/constructor.cc: Likewise.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
dg-error line numbers.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.
* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
From-SVN: r158928
2010-04-30 09:52:41 +00:00
Jonathan Wakely
928fe27c82
re PR libstdc++/43865 (C++ in freestanding environment)
...
2010-04-27 Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/43865
* include/c_global/cstdlib (abort, exit): _GLIBCXX_NORETURN typo.
From-SVN: r158812
2010-04-27 23:54:13 +01:00
Jonathan Wakely
7b65808d33
unique_ptr (unique_ptr::pointer): Use deleter's pointer type if it exists.
...
2010-04-24 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/bits/unique_ptr (unique_ptr::pointer): Use deleter's
pointer type if it exists.
* testsuite/20_util/unique_ptr/requirements/pointer_type.cc: New.
* testsuite/20_util/unique_ptr/assign/assign_neg.cc: Adjust.
* testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Adjust.
From-SVN: r158682
2010-04-24 10:21:23 +01:00
Johannes Singler
ed27799786
partition.h (__parallel_partition): Improve scalability by...
...
2010-04-22 Johannes Singler <singler@kit.edu>
* include/parallel/partition.h (__parallel_partition):
Improve scalability by:
-introducing new variables __leftold, __rightold, __dist, thus
-getting rid of omp lock by using atomic operations
-getting rid of two omp barriers
From-SVN: r158636
2010-04-22 10:14:07 +00:00
Ian Lance Taylor
896e7917c0
hash_map: Don't #include "backward_warning.h" if _GLIBCXX_PERMIT_BACKWARD_HASH is defined.
...
* include/backward/hash_map: Don't #include "backward_warning.h"
if _GLIBCXX_PERMIT_BACKWARD_HASH is defined.
* include/backward/hash_set: Likewise.
From-SVN: r158281
2010-04-13 20:24:40 +00:00
Paolo Carlini
9ae8aa52dd
basic_string.h: Fix pasto in comment.
...
2010-04-03 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/basic_string.h: Fix pasto in comment.
* include/ext/vstring.h: Likewise.
From-SVN: r157955
2010-04-03 20:45:49 +00:00
Ralf Wildenhues
4d9e844614
Update to Automake 1.11.1.
...
gcc/:
PR other/43620
* doc/install.texi (Prerequisites): Bump Automake version to 1.11.1.
* aclocal.m4: Regenerate.
lto-plugin/:
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
intl/:
* aclocal.m4: Regenerate.
boehm-gc/:
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
* include/Makefile.in: Regenerate.
fixincludes/:
* aclocal.m4: Regenerate.
libcpp/:
* aclocal.m4: Regenerate.
libdecnumber/:
* aclocal.m4: Regenerate.
libffi/:
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
* include/Makefile.in: Regenerate.
* man/Makefile.in: Regenerate.
* testsuite/Makefile.in: Regenerate.
libgfortran/:
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
libgomp/:
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
* testsuite/Makefile.in: Regenerate.
libjava/classpath/:
* HACKING: Update required Automake version.
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
* doc/Makefile.in: Regenerate.
* doc/api/Makefile.in: Regenerate.
* examples/Makefile.in: Regenerate.
* external/Makefile.in: Regenerate.
* external/jsr166/Makefile.in: Regenerate.
* external/relaxngDatatype/Makefile.in: Regenerate.
* external/sax/Makefile.in: Regenerate.
* external/w3c_dom/Makefile.in: Regenerate.
* include/Makefile.in: Regenerate.
* lib/Makefile.in: Regenerate.
* native/Makefile.in: Regenerate.
* native/fdlibm/Makefile.in: Regenerate.
* native/jawt/Makefile.in: Regenerate.
* native/jni/Makefile.in: Regenerate.
* native/jni/classpath/Makefile.in: Regenerate.
* native/jni/gconf-peer/Makefile.in: Regenerate.
* native/jni/gstreamer-peer/Makefile.in: Regenerate.
* native/jni/gtk-peer/Makefile.in: Regenerate.
* native/jni/java-io/Makefile.in: Regenerate.
* native/jni/java-lang/Makefile.in: Regenerate.
* native/jni/java-math/Makefile.in: Regenerate.
* native/jni/java-net/Makefile.in: Regenerate.
* native/jni/java-nio/Makefile.in: Regenerate.
* native/jni/java-util/Makefile.in: Regenerate.
* native/jni/midi-alsa/Makefile.in: Regenerate.
* native/jni/midi-dssi/Makefile.in: Regenerate.
* native/jni/native-lib/Makefile.in: Regenerate.
* native/jni/qt-peer/Makefile.in: Regenerate.
* native/jni/xmlj/Makefile.in: Regenerate.
* native/plugin/Makefile.in: Regenerate.
* resource/Makefile.in: Regenerate.
* scripts/Makefile.in: Regenerate.
* tools/Makefile.in: Regenerate.
libjava/:
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* gcj/Makefile.in: Regenerate.
* include/Makefile.in: Regenerate.
* testsuite/Makefile.in: Regenerate.
libjava/libltdl/:
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
libmudflap/:
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
* testsuite/Makefile.in: Regenerate.
libobjc/:
* aclocal.m4: Regenerate.
libssp/:
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
libstdc++-v3/:
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
* doc/Makefile.in: Regenerate.
* include/Makefile.in: Regenerate.
* libsupc++/Makefile.in: Regenerate.
* po/Makefile.in: Regenerate.
* python/Makefile.in: Regenerate.
* src/Makefile.in: Regenerate.
* testsuite/Makefile.in: Regenerate.
zlib/:
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
From-SVN: r157949
2010-04-02 18:18:06 +00:00
Johannes Singler
26e020539c
random_shuffle.h (__parallel_random_shuffle_drs): Take as many threads as possible, i.
...
2010-03-30 Johannes Singler <singler@kit.edu>
* include/parallel/random_shuffle.h
(__parallel_random_shuffle_drs) : Take as many threads as
possible, i. e. favor parallelism over cache efficiency.
Use own PRNG also for the 1 thread case.
From-SVN: r157826
2010-03-30 14:50:56 +00:00
Paolo Carlini
c878d6baf6
unordered_map: Clean-up includes and guards.
...
2010-03-30 Paolo Carlini <paolo.carlini@oracle.com>
* include/debug/unordered_map: Clean-up includes and guards.
* include/debug/unordered_set: Likewise.
* include/debug/list: Likewise.
* include/profile/unordered_map: Likewise.
* include/profile/unordered_set: Likewise.
From-SVN: r157818
2010-03-30 10:59:17 +00:00
Paolo Carlini
5dc2271456
[multiple changes]
...
2010-03-25 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/unordered_map.h (operator==, operator!=): Add per N3068.
* include/bits/unordered_set.h (operator==, operator!=): Likewise.
* include/debug/unordered_map (operator==, operator!=): Likewise.
* include/debug/unordered_set: Likewise.
* include/profile/unordered_map: Likewise.
* include/profile/unordered_set: Likewise.
* testsuite/23_containers/unordered_map/operators/1.cc: New.
* testsuite/23_containers/unordered_multimap/operators/1.cc: Likewise.
* testsuite/23_containers/unordered_multimap/operators/2.cc: Likewise.
* testsuite/23_containers/unordered_set/operators/1.cc: Likewise.
* testsuite/23_containers/unordered_multiset/operators/1.cc: Likewise.
2010-03-25 John Lakos <jlakos@bloomberg.net>
Pablo Halpern <phalpern@halpernwightsoftware.com>
Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/hashtable_policy.h (struct _Equality_base): Add.
* include/bits/hashtable.h (_Hashtable<>): Derive from the latter.
From-SVN: r157736
2010-03-26 02:19:10 +00:00
Paolo Carlini
7c8420560b
stl_algobase.h (lower_bound(_ForwardIterator, _ForwardIterator, const _Tp&, _Compare)): Move...
...
2010-03-23 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_algobase.h (lower_bound(_ForwardIterator,
_ForwardIterator, const _Tp&, _Compare)): Move...
* include/bits/stl_algo.h: ... here.
From-SVN: r157668
2010-03-23 14:32:35 +00:00
Johannes Singler
0e50f3350e
numeric (inner_product, [...]): Precede subsequent call with _GLIBCXX_STD_P:: to avoid ambiguity between...
...
2010-03-22 Johannes Singler <singler@kit.edu>
* include/parallel/numeric (inner_product, partial_sum):
Precede subsequent call with _GLIBCXX_STD_P:: to avoid ambiguity
between __gnu_parallel:: and std::
* include/parallel/algobase.h (equal): Likewise.
* include/parallel/algo.h (find_first_of, search_n, merge, nth_element,
partial_sort, max_element, min_element): Likewise.
* include/parallel/partial_sum.h (__parallel_partial_sum_linear):
Qualify accumulate call with __gnu_parallel::.
From-SVN: r157643
2010-03-22 17:06:50 +00:00
Paolo Carlini
57fd5f9525
base.h (_PseudoSequence): Do not forward declare.
...
2010-03-22 Paolo Carlini <paolo.carlini@oracle.com>
* include/parallel/base.h (_PseudoSequence): Do not forward declare.
(_VoidFunctor): Remove, unused.
(__median_of_three_iterators): Take __comp by value.
(_PseudoSequenceIterator<>::operator++(int)): Do not const qualify
the return type.
(_PseudoSequenceIterator<>::operator!=): Fix return type to bool.
From-SVN: r157628
2010-03-22 13:55:11 +00:00
Paolo Carlini
2305a1e82e
base.h (_Less): Use std::less.
...
2010-03-22 Paolo Carlini <paolo.carlini@oracle.com>
* include/parallel/base.h (_Less): Use std::less.
(_Plus): Likewise use std::plus.
(_Multiplies): Likewise use std::multiplies.
* include/parallel/numeric: Adjust.
From-SVN: r157622
2010-03-22 12:18:46 +00:00
Rodolfo Lima
28de604e8c
shared_ptr.h (shared_ptr(unique_ptr&&), [...]): Remove explicit specifier (as per DR 925).
...
2010-03-19 Rodolfo Lima <rodolfo@rodsoft.org>
* include/bits/shared_ptr.h (shared_ptr(unique_ptr&&),
shared_ptr(auto_ptr&&)): Remove explicit specifier (as per DR 925).
* include/bits/shared_ptr_base.h: Likewise.
* testsuite/20_util/shared_ptr/creation/dr925.cc: New.
From-SVN: r157570
2010-03-19 13:32:05 +00:00
Paolo Carlini
afcd05a759
random.tcc: Minor formatting changes.
...
2010-03-19 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/random.tcc: Minor formatting changes.
2010-03-19 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_algo.h (shuffle): Fix typo in signature.
* include/bits/algorithmfwd.h: Adjust.
* testsuite/25_algorithms/shuffle/requirements/
explicit_instantiation/2.cc: Likewise.
* testsuite/25_algorithms/shuffle/requirements/
explicit_instantiation/pod.cc: Likewise.
From-SVN: r157565
2010-03-19 11:10:08 +00:00
Paolo Carlini
247d807571
stl_algo.h (shuffle): Add, per D3056.
...
2010-03-19 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_algo.h (shuffle): Add, per D3056.
(random_shuffle): Fix signature in C++0x mode.
(lower_bound, __lg): Move...
* include/bits/stl_algobase.h: ... here.
* include/bits/algorithmfwd.h: Adjust.
* include/parallel/algorithmfwd.h: Likewise.
* include/parallel/algo.h: Likewise.
* include/bits/hashtable_policy.h (__lower_bound): Remove,
adjust callers.
* include/tr1/hashtable_policy.h (__lower_bound): Likewise.
* include/bits/random.tcc (__detail::__transform): Add,
adjust std::transform callers; don't include <algorithm>.
* testsuite/25_algorithms/shuffle/1.cc: Add.
* testsuite/25_algorithms/shuffle/requirements/
explicit_instantiation/2.cc: Likewise.
* testsuite/25_algorithms/shuffle/requirements/
explicit_instantiation/pod.cc: Likewise.
* include/bits/random.h: Add comments.
From-SVN: r157564
2010-03-19 10:36:57 +00:00
Jonathan Wakely
fbcedacca6
re PR libstdc++/43397 (std::function can't forward rvalue reference for pointer to member function)
...
2010-03-17 Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/43397
* include/std/functional (_Mem_fn): Use perfect forwarding.
* testsuite/20_util/function/43397.cc: New.
From-SVN: r157504
2010-03-17 00:22:56 +00:00
Paolo Carlini
7ebb824234
re PR libstdc++/43394 (Spurious warnings while building parallel_list.cc on x86_64 -m32)
...
2010-03-16 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/43394
* include/parallel/compatibility.h: Add __k8 and __core2 among the
i386 targets supporting atomic operations.
From-SVN: r157498
2010-03-16 23:01:28 +00:00
Paolo Carlini
5ecfce5c58
hash_map: Use consistently the _BACKWARD_* prefix for the include guard.
...
2010-03-16 Paolo Carlini <paolo.carlini@oracle.com>
* include/backward/hash_map: Use consistently the _BACKWARD_*
prefix for the include guard.
* include/backward/hash_fun.h: Likewise.
* include/backward/hashtable.h: Likewise.
* include/backward/auto_ptr.h: Likewise.
* include/backward/strstream: Likewise.
* include/backward/binders.h: Likewise.
* include/backward/hash_set: Likewise.
From-SVN: r157497
2010-03-16 22:34:53 +00:00
Paolo Carlini
fc05e1ba76
random.h (operator==(const uniform_int_distribution<>&, const uniform_int_distribution<>&), [...]): Add, likewise for operator!=.
...
2010-03-16 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/random.h (operator==(const uniform_int_distribution<>&,
const uniform_int_distribution<>&), operator==(const
uniform_real_distribution<>&, const uniform_real_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<>&)): Add, likewise for operator!=.
(operator!=(const independent_bits_engine<>&, const
independent_bits_engine<>&), operator!=(const
subtract_with_carry_engine<>&, const subtract_with_carry_engine<>&),
operator!=(const discard_block_engine<>&, const
discard_block_engine<>&), operator!=(const mersenne_twister_engine<>&,
const mersenne_twister_engine<>&), operator!=(const
linear_congruential_engine<>&, const linear_congruential_engine<>&),
operator!=(const shuffle_order_engine<>&, const
shuffle_order_engine<>&): Add.
* include/bits/random.tcc (operator==(const normal_distribution<>&,
const normal_distribution<>&)): Add.
* testsuite/26_numerics/random/uniform_real_distribution/operators/
inequal.cc: New.
* testsuite/26_numerics/random/uniform_real_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/piecewise_constant_distribution/
operators/inequal.cc: Likewise.
* testsuite/26_numerics/random/piecewise_constant_distribution/
operators/equal.cc: Likewise.
* testsuite/26_numerics/random/chi_squared_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/chi_squared_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/normal_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/normal_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/uniform_int_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/uniform_int_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/poisson_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/poisson_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/bernoulli_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/bernoulli_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/discrete_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/discrete_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/weibull_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/weibull_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/independent_bits_engine/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/subtract_with_carry_engine/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/discard_block_engine/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/cauchy_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/cauchy_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/negative_binomial_distribution/
operators/inequal.cc: Likewise.
* testsuite/26_numerics/random/negative_binomial_distribution/
operators/equal.cc: Likewise.
* testsuite/26_numerics/random/gamma_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/gamma_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/mersenne_twister_engine/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/fisher_f_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/fisher_f_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/exponential_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/exponential_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/binomial_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/binomial_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/lognormal_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/lognormal_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/extreme_value_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/extreme_value_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/piecewise_linear_distribution/
operators/inequal.cc: Likewise.
* testsuite/26_numerics/random/piecewise_linear_distribution/
operators/equal.cc: Likewise.
* testsuite/26_numerics/random/student_t_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/student_t_distribution/operators/
equal.cc: Likewise.
* testsuite/26_numerics/random/linear_congruential_engine/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/shuffle_order_engine/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/geometric_distribution/operators/
inequal.cc: Likewise.
* testsuite/26_numerics/random/geometric_distribution/operators/
equal.cc: Likewise.
From-SVN: r157489
2010-03-16 16:14:00 +00:00
Paolo Carlini
1692089663
forward_list.tcc (_Fwd_list_node_base:: _M_transfer_after): Return _Fwd_list_node_base*.
...
2010-03-15 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/forward_list.tcc (_Fwd_list_node_base::
_M_transfer_after): Return _Fwd_list_node_base*.
(forward_list<>::_M_splice_after): Add.
(forward_list<>::insert_after(const_iterator, size_type, const _Tp&),
insert_after(const_iterator, _InputIterator, _InputIterator),
insert_after(const_iterator, initializer_list<>)): Use the above,
implement DR 1278 ([Ready] in Pittsburgh).
* include/bits/forward_list.h (insert_after(const_iterator,
size_type, const _Tp&), insert_after(const_iterator, _InputIterator,
_InputIterator), insert_after(const_iterator, initializer_list<>)):
Only declare.
* testsuite/23_containers/forward_list/modifiers/2.cc: Adjust.
* 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: r157471
2010-03-16 01:32:53 +00:00
Paolo Carlini
97ffcedf40
revert: forward_list.h: Support non-standard pointer types
...
2010-03-15 Paolo Carlini <paolo.carlini@oracle.com>
Revert:
2008-11-11 Bob Walters <bob.s.walters@gmail.com>
* include/bits/forward_list.h: Support non-standard pointer types
(_Fwd_list_node_base): Add _Alloc template parameter.
(_Fwd_list_node<>): Likewise.
(_Fwd_list_iterator<>): Likewise.
(_Fwd_list_const_iterator<>): Likewise.
(_Fwd_list_node_base::_M_next, _M_transfer_after, _M_reverse_after):
Use _Alloc<_Tp>::pointer.
(_Fwd_list_iterator<>::_M_node): Use _Node_base::_Pointer.
(_Fwd_list_base<>::_M_get_node, _M_create_node, _M_create_node,
_M_insert_after, _M_put_node, _M_erase_after): Likewise.
(_Fwd_list_const_iterator<>::_M_node): use _Node_base::_Const_pointer.
(forward_list<>): Use __static_pointer_cast in place of static_cast,
and __const_pointer_cast in place of const_cast.
* include/bits/forward_list.tcc
(_Fwd_list_node<>::_M_sort_after): Using _Pointer typedefs in place
of standard pointers, __static_pointer_cast in place of static_cast.
(_Fwd_list_base<>::_Fwd_list_base, _M_insert_after, _M_erase_after):
Likewise.
(forward_list<>::_M_initialize_dispatch, _M_fill_initialize,
splice_after, remove, remove_if, merge): Likewise.
* testsuite/23_containers/forward_list/ext_pointer/modifiers/1.cc: New.
* testsuite/23_containers/forward_list/ext_pointer/modifiers/2.cc:
Likewise.
* testsuite/23_containers/forward_list/ext_pointer/modifiers/3.cc:
Likewise.
* testsuite/23_containers/forward_list/ext_pointer/modifiers/4.cc:
Likewise.
* testsuite/23_containers/forward_list/ext_pointer/modifiers/5.cc:
Likewise.
* testsuite/23_containers/forward_list/ext_pointer/operations/1.cc:
Likewise.
* testsuite/23_containers/forward_list/ext_pointer/operations/2.cc:
Likewise.
* testsuite/23_containers/forward_list/ext_pointer/operations/3.cc:
Likewise.
* testsuite/23_containers/forward_list/ext_pointer/operations/4.cc:
Likewise.
* testsuite/23_containers/forward_list/ext_pointer/operations/5.cc:
Likewise.
* testsuite/23_containers/forward_list/ext_pointer/operations/6.cc:
Likewise.
* testsuite/23_containers/forward_list/ext_pointer/operations/7.cc:
Likewise.
* testsuite/23_containers/forward_list/ext_pointer/requirements/1.cc:
Likewise.
* testsuite/23_containers/forward_list/ext_pointer/requirements/
explicit_instantiation/1.cc: Likewise.
* testsuite/23_containers/forward_list/ext_pointer/requirements/
explicit_instantiation/3.cc: Likewise.
* testsuite/23_containers/forward_list/ext_pointer/1.cc: Likewise.
From-SVN: r157462
2010-03-15 17:02:16 +00:00
Paolo Carlini
e962c1b0f4
array (swap(array<>&, array<>&)): Use member swap.
...
2010-03-13 Paolo Carlini <paolo.carlini@oracle.com>
* include/tr1_impl/array (swap(array<>&, array<>&)): Use member swap.
* include/bits/stl_algo.h: Improve comment.
From-SVN: r157421
2010-03-13 12:47:09 +00:00
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
714902c8d4
testsuite_container_traits.h (traits_base): Add has_throwing_erase trait.
...
2010-03-04 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/util/testsuite_container_traits.h (traits_base): Add
has_throwing_erase trait.
(traits<vector>, traits<deque>): Typedef the latter to true_type.
* testsuite/util/exception/safety.h (generation_prohibited):
Do not test vector::erase and deque::erase: can throw if
either copy constructor or assignment operator of value_type
throws.
* testsuite/23_containers/vector/requirements/exception/
generation_prohibited.cc: Remove xfail.
* testsuite/23_containers/deque/requirements/exception/
generation_prohibited.cc: Likewise.
* include/ext/throw_allocator.h (hash<__gnu_cxx::throw_value_limit>::
operator(), hash<__gnu_cxx::throw_value_random>::operator()): Pass
argument by const ref.
* testsuite/util/testsuite_container_traits.h (traits<map>,
traits<multimap>, traits<set>, traits<multiset>,
traits<unordered_map>, traits<unordered_multimap>,
traits<unordered_set>, traits<unordered_multiset>): Typedef
consistently has_erase and has_insert as true_type.
* testsuite/util/testsuite_container_traits.h
(traits<unordered_map>, traits<unordered_multimap>,
traits<unordered_set>, traits<unordered_multiset>): Do not wrongly
typedef has_size_type_constructor as true_type: the constructor
accepting a size_type actually gets the initial number of
buckets.
From-SVN: r157239
2010-03-05 01:51:56 +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
95addb1b84
bitset (hash): Minor tweaks.
...
2010-03-02 Paolo Carlini <paolo.carlini@oracle.com>
* include/debug/bitset (hash): Minor tweaks.
* include/debug/vector (hash): Likewise.
* include/profile/bitset (hash): Likewise.
* include/profile/vector (hash): Likewise.
From-SVN: r157186
2010-03-03 02:01:56 +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
Jonathan Wakely
ac4983563d
mutex (lock_guard::lock_guard): Do not lock mutex when adopt_lock_t constructor is used.
...
2010-03-02 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/mutex (lock_guard::lock_guard): Do not lock mutex when
adopt_lock_t constructor is used.
* testsuite/30_threads/lock_guard/cons/1.cc: New.
From-SVN: r157180
2010-03-02 23:00:21 +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
Paolo Carlini
ec7058d64d
bitset (_Base_bitset<>::_M_getdata()): Add.
...
2010-03-02 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/bitset (_Base_bitset<>::_M_getdata()): Add.
(hash<_GLIBCXX_STD_D::bitset<_Nb>>): Add, use the latter.
* include/debug/bitset (hash<std::__debug::bitset<_Nb>>): Add.
* include/profile/bitset (hash<std::__profile::bitset<_Nb>>): Likewise.
* testsuite/23_containers/bitset/hash/1.cc: New.
From-SVN: r157165
2010-03-02 14:08:52 +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
Paolo Carlini
604b384dd4
iomanip (get_money, put_money): Add in C++0x mode; tidy.
...
2010-03-01 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/iomanip (get_money, put_money): Add in C++0x mode; tidy.
* testsuite/27_io/manipulators/extended/get_money/char/1.cc: New.
* testsuite/27_io/manipulators/extended/get_money/wchar_t/1.cc:
Likewise.
* testsuite/27_io/manipulators/extended/put_money/char/1.cc: Likewise.
* testsuite/27_io/manipulators/extended/put_money/wchar_t/1.cc:
Likewise.
From-SVN: r157153
2010-03-01 19:12:39 +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
Ed Smith-Rowland
018afad39f
limits (__numeric_limits_base::max_digits10, [...]): Add.
...
2010-02-25 Ed Smith-Rowland <3dw4rd@verizon.net>
* include/std/limits (__numeric_limits_base::max_digits10,
numeric_limits<>::max_digits10, numeric_limits<>::lowest): Add.
* src/limits.cc: Define max_digits10.
* config/abi/pre/gnu.ver: Adjust.
* testsuite/18_support/numeric_limits/dr559.cc: Test max_digits10
and lowest too.
* testsuite/18_support/numeric_limits/lowest.cc: New.
* testsuite/18_support/numeric_limits/max_digits10.cc: New.
From-SVN: r157067
2010-02-25 17:13:04 +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
26504a0f8c
complex (arg): Use std::signbit only when available.
...
2010-02-22 Paolo Carlini <paolo.carlini@oracle.com>
* include/tr1_impl/complex (arg): Use std::signbit only when
available.
From-SVN: r156972
2010-02-22 18:41:55 +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
681f05d4f0
complex (proj): Change return type per DR 1137.
...
2010-02-21 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/complex (proj): Change return type per DR 1137.
(conj): Copy from tr1_impl, likewise adjust return type.
* include/tr1_impl/complex (conj): Remove.
* include/tr1/complex (conj): Add both overloads.
* testsuite/26_numerics/complex/dr781.cc: Rename to...
* testsuite/26_numerics/complex/dr781_dr1137.cc: ... this, and extend.
* include/tr1_impl/complex (arg): Optimize.
From-SVN: r156940
2010-02-21 19:55:17 +00:00
Paolo Carlini
cf9280bf7e
array (array): Add pointer and const_pointer typedefs in C++0x mode, per DR 1306.
...
2010-02-19 Paolo Carlini <paolo.carlini@oracle.com>
* include/tr1_impl/array (array): Add pointer and const_pointer
typedefs in C++0x mode, per DR 1306.
* testsuite/util/testsuite_containers.h (basic_types): Add pointer
and const_pointer typedefs.
(pointer_aware_types): Remove.
* testsuite/util/testsuite_container_traits.h: Adjust.
From-SVN: r156906
2010-02-19 18:55:40 +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