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
c8ee2bfd79
future (shared_future): Adjust doxygen comment.
...
2009-06-24 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/future (shared_future): Adjust doxygen comment.
From-SVN: r148895
2009-06-24 08:13:17 +01: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
Benjamin Kosnik
3259554a05
user.cfg.in (PREDEFINED): Add _GLIBCXX_ATOMIC_BUILTINS_*.
...
2009-06-23 Benjamin Kosnik <bkoz@redhat.com>
* doc/doxygen/user.cfg.in (PREDEFINED): Add _GLIBCXX_ATOMIC_BUILTINS_*.
(INPUT): Add future.
* include/std/future: Adjust markup.
* testsuite/30_threads/shared_future/cons/assign_neg.cc: Adjust
line numbers.
* testsuite/30_threads/unique_future/cons/assign_neg.cc: Same.
* testsuite/30_threads/unique_future/cons/copy_neg.cc: Same.
* testsuite/30_threads/promise/cons/assign_neg.cc: Same.
* testsuite/30_threads/promise/cons/copy_neg.cc: Same.
From-SVN: r148883
2009-06-23 23:24:20 +00: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
Jonathan Wakely
79e2c7b01c
macros.h: Replace @tbd with valid doxygen tag @todo.
...
2009-06-23 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/debug/macros.h: Replace @tbd with valid doxygen tag @todo.
* include/std/ratio: Typo in comment.
From-SVN: r148861
2009-06-23 18:51:48 +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
Jonathan Wakely
c910ceff6a
future: New.
...
2009-06-21 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/future: New.
* include/Makefile.am: Add.
* include/Makefile.in: Regenerate.
* src/future.cc: New.
* src/Makefile.am: Add.
* src/Makefile.in: Regenerate.
* config/abi/pre/gnu.ver: Add export.
* testsuite/30_threads/headers/future/std_c++0x_neg.cc: New.
* testsuite/30_threads/headers/future/types_std_c++0x.cc: New.
* testsuite/30_threads/packaged_task/cons/1.cc: New.
* testsuite/30_threads/packaged_task/cons/2.cc: New.
* testsuite/30_threads/packaged_task/cons/assign_neg.cc: New.
* testsuite/30_threads/packaged_task/cons/copy_neg.cc: New.
* testsuite/30_threads/packaged_task/cons/move_assign.cc: New.
* testsuite/30_threads/packaged_task/cons/move.cc: New.
* testsuite/30_threads/packaged_task/members/boolconv.cc: New.
* testsuite/30_threads/packaged_task/members/get_future.cc: New.
* testsuite/30_threads/packaged_task/members/get_future2.cc: New.
* testsuite/30_threads/packaged_task/members/invoke.cc: New.
* testsuite/30_threads/packaged_task/members/invoke2.cc: New.
* testsuite/30_threads/packaged_task/members/invoke3.cc: New.
* testsuite/30_threads/packaged_task/members/invoke4.cc: New.
* testsuite/30_threads/packaged_task/members/invoke5.cc: New.
* testsuite/30_threads/packaged_task/members/reset.cc: New.
* testsuite/30_threads/packaged_task/members/reset2.cc: New.
* testsuite/30_threads/packaged_task/members/swap.cc: New.
* testsuite/30_threads/packaged_task/requirements/
explicit_instantiation.cc: New.
* testsuite/30_threads/promise/cons/1.cc: New.
* testsuite/30_threads/promise/cons/assign_neg.cc: New.
* testsuite/30_threads/promise/cons/copy_neg.cc: New.
* testsuite/30_threads/promise/cons/move_assign.cc: New.
* testsuite/30_threads/promise/cons/move.cc: New.
* testsuite/30_threads/promise/members/get_future.cc: New.
* testsuite/30_threads/promise/members/get_future2.cc: New.
* testsuite/30_threads/promise/members/set_exception.cc: New.
* testsuite/30_threads/promise/members/set_exception2.cc: New.
* testsuite/30_threads/promise/members/set_value.cc: New.
* testsuite/30_threads/promise/members/set_value2.cc: New.
* testsuite/30_threads/promise/members/set_value3.cc: New.
* testsuite/30_threads/promise/members/swap.cc: New.
* testsuite/30_threads/promise/requirements/
explicit_instantiation.cc: New.
* testsuite/30_threads/shared_future/cons/assign_neg.cc: New.
* testsuite/30_threads/shared_future/cons/copy.cc: New.
* testsuite/30_threads/shared_future/cons/default_neg.cc: New.
* testsuite/30_threads/shared_future/cons/move.cc: New.
* testsuite/30_threads/shared_future/members/get.cc: New.
* testsuite/30_threads/shared_future/members/get2.cc: New.
* testsuite/30_threads/shared_future/members/has_exception.cc: New.
* testsuite/30_threads/shared_future/members/has_value.cc: New.
* testsuite/30_threads/shared_future/members/is_ready.cc: New.
* testsuite/30_threads/shared_future/members/wait.cc: New.
* testsuite/30_threads/shared_future/members/wait_for.cc: New.
* testsuite/30_threads/shared_future/members/wait_until.cc: New.
* testsuite/30_threads/shared_future/requirements/
explicit_instantiation.cc: New.
* testsuite/30_threads/unique_future/cons/assign_neg.cc: New.
* testsuite/30_threads/unique_future/cons/copy_neg.cc: New.
* testsuite/30_threads/unique_future/cons/default_neg.cc: New.
* testsuite/30_threads/unique_future/cons/move.cc: New.
* testsuite/30_threads/unique_future/members/get.cc: New.
* testsuite/30_threads/unique_future/members/get2.cc: New.
* testsuite/30_threads/unique_future/members/has_exception.cc: New.
* testsuite/30_threads/unique_future/members/has_value.cc: New.
* testsuite/30_threads/unique_future/members/is_ready.cc: New.
* testsuite/30_threads/unique_future/members/wait.cc: New.
* testsuite/30_threads/unique_future/members/wait_for.cc: New.
* testsuite/30_threads/unique_future/members/wait_until.cc: New.
* testsuite/30_threads/unique_future/requirements/
explicit_instantiation.cc: New.
* testsuite/performance/30_threads/future/polling.cc: New.
From-SVN: r148765
2009-06-21 15:02:09 +01: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
Jonathan Wakely
cd3b0fafaa
thread (~thread(), [...]): Call terminate if joinable.
...
2009-06-16 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/thread (~thread(), operator=(thread&&)): Call terminate
if joinable.
From-SVN: r148552
2009-06-16 21:34:43 +01: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
5580c6e729
throw_allocator.h: Rework.
...
2009-06-04 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/throw_allocator.h: Rework.
* include/ext/pb_ds/detail/debug_map_base.hpp: Adjust usage.
* include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp: Same.
* testsuite/23_containers/list/modifiers/insert/25288.cc: Same.
* testsuite/util/regression/rand/priority_queue/
container_rand_regression_test.tcc: Inline functions.
* testsuite/util/regression/rand/assoc/
container_rand_regression_test.tcc: Same.
From-SVN: r148204
2009-06-05 08:45:26 +00:00
Paolo Carlini
a67b92c3d7
re PR libstdc++/40299 (Rope + C++0x mode = build error)
...
2009-06-03 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/40299
* include/ext/memory: Fully qualify calls with __gnu_cxx.
* testsuite/ext/rope/40299.cc: New.
From-SVN: r148081
2009-06-02 09:06:31 +00:00
Benjamin Kosnik
626e0599af
re PR libstdc++/40273 ([C++0x] Invalid conversion to bool is reported)
...
2009-05-27 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/40273
* include/tr1_impl/functional: Add explicit cast.
* testsuite/20_util/function/requirements/
explicit_instantiation.cc: New.
* testsuite/20_util/function/null_pointer_comparisons.cc: New.
From-SVN: r147930
2009-05-27 20:32:30 +00:00
Benjamin Kosnik
e4c29fbc9e
re PR bootstrap/40221 (Powerpc bootstrap is broken in building libstdc++)
...
2009-05-21 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/40221
* include/tr1_impl/functional: Add explicit cast.
From-SVN: r147794
2009-05-22 07:19:37 +00:00
Paolo Carlini
e2792913bd
re PR libstdc++/40094 (FAIL: ext/throw_allocator/deallocate_global.cc execution test)
...
2009-05-21 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/40094
Revert:
2009-05-07 Paolo Carlini <paolo.carlini@oracle.com>
* include/ext/throw_allocator.h (throw_allocator_base): Avoid
out of line member functions definitions.
(throw_allocator_base::_S_g, _S_map, _S_throw_prob, _S_label):
Remove, use static locals instead.
(throw_allocator_base::do_check_allocated, print_to_string): Declare.
* src/throw_allocator.cc: New.
* src/Makefile.am: Add.
* config/abi/pre/gnu.ver: Add exports.
* src/Makefile.in: Regenerate.
From-SVN: r147788
2009-05-22 01:28:50 +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
Jonathan Wakely
5c64575096
mutex: Move std::lock_error to ...
...
2009-05-13 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/mutex: Move std::lock_error to ...
* src/compatibility.cc: Here.
* src/mutex.cc: Likewise.
* testsuite/30_threads/headers/mutex/types_std_c++0x.cc: Add checks
for lock types and remove std::lock_error check.
From-SVN: r147609
2009-05-16 11:09:02 +01:00
Paolo Carlini
0f136367bc
re PR libstdc++/40160 (-fno-rtti vs _GLIBCXX_DEBUG)
...
2009-05-15 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/40160
* include/debug/formatter.h (_Parameter::_Parameter): Don't use
typeid when __GXX_RTTI is undefined.
* src/debug.cc (_Error_formatter::_Parameter::_M_print_field): Adjust
for null _M_variant._M_iterator._M_type,
_M_variant._M_iterator._M_seq_type, _M_variant._M_sequence._M_type.
* testsuite/21_strings/basic_string/40160.cc: New.
From-SVN: r147599
2009-05-15 22:25:24 +00: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
Ben Elliston
d68646978c
Makefile.am (PCHFLAGS): Remove -Winvalid-pch.
...
* include/Makefile.am (PCHFLAGS): Remove -Winvalid-pch.
* include/Makefile.in: Likewise.
From-SVN: r147459
2009-05-13 10:17:09 +10:00
Paolo Carlini
29e357fd7c
throw_allocator.h: Remove redundante include.
...
2009-05-07 Paolo Carlini <paolo.carlini@oracle.com>
* include/ext/throw_allocator.h: Remove redundante include.
From-SVN: r147265
2009-05-08 00:49:35 +00:00
Paolo Carlini
9fcf9c24a1
throw_allocator.h (throw_allocator_base): Avoid out of line member functions definitions.
...
2009-05-07 Paolo Carlini <paolo.carlini@oracle.com>
* include/ext/throw_allocator.h (throw_allocator_base): Avoid
out of line member functions definitions.
(throw_allocator_base::_S_g, _S_map, _S_throw_prob, _S_label):
Remove, use static locals instead.
(throw_allocator_base::do_check_allocated, print_to_string): Declare.
* src/throw_allocator.cc: New.
* src/Makefile.am: Add.
* config/abi/pre/gnu.ver: Add exports.
* src/Makefile.in: Regenerate.
From-SVN: r147264
2009-05-08 00:39:28 +00:00
Johannes Singler
c8ecfecfd4
re PR libstdc++/39546 (parallel mode doesn't support implicit string conversion)
...
2009-05-06 Johannes Singler <singler@ira.uka.de>
PR libstdc++/39546
* include/parallel/algo.h (find_switch):
Parametrize binder2nd with const T& instead of T.
* testsuite/25_algorithms/find/39546.cc: new test case
From-SVN: r147169
2009-05-06 11:20:35 +00:00
Jonathan Wakely
efdb734755
re PR libstdc++/39909 (non-TLS version of std::call_once causes terminate)
...
2009-05-05 Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/39909
* include/std/mutex (__get_once_functor_lock, __get_once_mutex,
__set_once_functor_lock_ptr): Replace global lock object with local
locks on global mutex.
* src/mutex.cc (__get_once_functor_lock, __get_once_mutex,
__set_once_functor_lock_ptr): Likewise, keeping old function to
preserve ABI.
(__once_proxy): Use pointer to local lock if set, global lock
otherwise.
* config/abi/pre/gnu.ver: Add new symbols to new ABI version.
* testsuite/util/testsuite_abi.cc: Add GLIBCX_3.4.12 version.
* testsuite/30_threads/call_once/39909.cc: New.
From-SVN: r147137
2009-05-05 22:32:38 +01:00
Jan Hubicka
b91cc3b9dc
settings.h (get): Mark const.
...
* include/parallel/settings.h (get): Mark const.
* libsupc++/unwind-cxx.h (__cxa_call_terminate): Mark throw ().
* libsupc++/eh_call.cc (__cxa_call_terminate): Mark throw ().
* config/io/basic_file_stdio.cc (sys_open, is_open, fd, seekoff): Mark
throw ().
* config/io/basic_file_stdio.h (__basic_file, sys_open): Mark throw ().
(is_open, fd): Mark pure and throw ().
(seekoff): Mark throw ().
From-SVN: r147077
2009-05-03 16:51:50 +00:00
Jan Hubicka
25195e8264
functional_hash.h (explicit specializations of () operator): Mark pure.
...
* include/tr1_impl/functional_hash.h (explicit specializations of ()
operator): Mark pure.
From-SVN: r147062
2009-05-02 13:22:49 +00:00
Paolo Carlini
cca36d72b9
2009-04-26 Paolo Carlini <paolo.carlini@oracle.com>
...
Revert the last commit.
From-SVN: r146796
2009-04-26 10:12:08 +00:00
Jonathan Wakely
afdb7762cb
mutex (__get_once_functor_lock, [...]): Replace global lock object with local locks on global mutex.
...
2009-04-25 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/mutex (__get_once_functor_lock, __get_once_mutex):
Replace global lock object with local locks on global mutex.
* src/mutex.cc: Likewise.
* config/abi/pre/gnu.ver: Adjust.
* testsuite/30_threads/call_once/call_once2.cc: New.
From-SVN: r146785
2009-04-25 21:14:27 +01:00
Paolo Carlini
bb81f9a082
re PR libstdc++/39880 (Specialisation is_error_code_enum<errc> should not exist)
...
2009-04-25 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/39880
PR libstdc++/39881
PR libstdc++/39882
* include/std/system_error (is_error_code_enum<errc>): Remove.
(error_condition<>::error_condition(_ErrorCodeEnum,)
error_condition<>::operator=(_ErrorCodeEnum)): Use make_error_condition.
(error_code<>::error_code(_ErrorCodeEnum,),
error_code<>::operator=(_ErrorCodeEnum)): Use make_error_code.
* testsuite/19_diagnostics/system_error/39880.cc: New.
* testsuite/19_diagnostics/error_condition/modifiers/39881.cc:
Likewise.
* testsuite/19_diagnostics/error_condition/cons/39881.cc: Likewise.
* testsuite/19_diagnostics/error_code/modifiers/39882.cc: Likewise.
* testsuite/19_diagnostics/error_code/cons/39882.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_other/char/error_code.cc:
Adjust.
* testsuite/27_io/basic_ostream/inserters_other/wchar_t/error_code.cc:
Likewise.
* testsuite/19_diagnostics/error_code/cons/1.cc: Likewise.
* testsuite/19_diagnostics/error_code/operators/bool.cc: Likewise.
* testsuite/19_diagnostics/error_code/operators/equal.cc: Likewise.
* testsuite/19_diagnostics/error_code/operators/not_equal.cc:
Likewise.
* testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Likewise.
* testsuite/19_diagnostics/system_error/cons-1.cc: Likewise.
* testsuite/19_diagnostics/system_error/what-4.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
From-SVN: r146780
2009-04-25 19:00:52 +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
Jan Hubicka
1cae1c5fc0
cstdlib (abort, [...]): Mark noreturn throw ().
...
* include/c_std/cstdlib (abort, exit, _Exit): Mark noreturn throw ().
(atexit, atoll, stroll, strtoull): Mark throw ()
* include/c_std/cstdio (snprintf, vsnprintf, vscanf): Mark throw ().
* include/c_std/cwchar (wcstold, wcstoll, wcstoull): Mark throw ().
* include/c_global/cstdlib (abort, exit, _Exit): Mark noreturn throw ().
(atexit, atoll, stroll, strtoull): Mark throw ()
* include/c_global/cstdio (snprintf, vsnprintf, vscanf): Mark throw ().
* include/c_wchar/cstdio (snprintf, vsnprintf, vscanf): Mark throw ().
From-SVN: r146604
2009-04-22 17:41:33 +00:00
Jan Hubicka
09f2a1e440
* include/ext/atomicity.h
...
(__exchange_and_add, __atomic_add): Mark throw ().
* config/os/aix/atomicity.h
* config/os/aix/atomicity.h
* config/os/irix/atomicity.h
* config/cpu/cris/atomicity.h
* config/cpu/m68k/atomicity.h
* config/cpu/hppa/atomicity.h
* config/cpu/sparc/atomicity.h
* config/cpu/i386/atomicity.h
* config/cpu/i486/atomicity.h
* config/cpu/sh/atomicity.h
* config/cpu/generic/atomicity_mutex/atomicity.h
* config/cpu/generic/atomicity_builtins/atomicity.h
(__exchange_and_add, __atomic_add): Mark throw ().
From-SVN: r146576
2009-04-22 13:13:55 +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
9b074dc6c1
stdatomic.h (__atomic_flag_for_address): Use _GLIBCXX_NOTHROW.
...
* include/c_compatibility/stdatomic.h (__atomic_flag_for_address): Use
_GLIBCXX_NOTHROW.
From-SVN: r146348
2009-04-19 13:16:34 +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
5d51b87af4
pool_allocator.cc (_M_get_free_list, [...]): Mark throw ()
...
* src/pool_allocator.cc (_M_get_free_list, _M_get_mutex): Mark throw ()
* src/mt_allocator.cc (_M_reclaim_block, _M_reclaim_block,
_M_destroy_thread_key): Mark throw ()
* debug.cc (_M_get_mutex, _M_attach_single, _M_detach_single,
_M_singular, _M_can_compare _M_get_mutex, _M_message,
_M_get_max_length): Mark throw ().
* include/debug/formatter.h (_M_message, _M_format_word,
_M_get_max_length): Mark throw ().
* include/debug/safe_base.h (_M_get_mutex, _M_attach_single,
_M_detach_single): Mark throw ().
(_M_singular, _M_can_compare, _M_get_mutex): Mark pure and throw ().
* include/ext/pool_allocator.h (_M_get_free_list): Mark const and
throw ()
(_M_get_mutex): Mark throw ().
* include/ext/mt_allocator.h (_M_reclaim_block): Mark throw ();
(_M_destroy_thread_key): Mark CONST and throw.
* include/bits/stl_list.h (swap, transfer, reverse, hook, unhook): Mark
throw ().
From-SVN: r146330
2009-04-18 22:02:19 +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