OSDN Git Service

2010-03-22 Paolo Carlini <paolo.carlini@oracle.com>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
1 2010-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
2
3         * include/parallel/base.h (_Less): Use std::less.
4         (_Plus): Likewise use std::plus.
5         (_Multiplies): Likewise use std::multiplies.
6         * include/parallel/numeric: Adjust.
7
8 2010-03-19  Paolo Carlini  <paolo.carlini@oracle.com>
9
10         * testsuite/17_intro/freestanding.cc: Avoid -Wall warnings.
11
12 2010-03-19  Rodolfo Lima  <rodolfo@rodsoft.org>
13
14         * include/bits/shared_ptr.h (shared_ptr(unique_ptr&&),
15         shared_ptr(auto_ptr&&)): Remove explicit specifier (as per DR 925).
16         * include/bits/shared_ptr_base.h: Likewise.
17         * testsuite/20_util/shared_ptr/creation/dr925.cc: New.
18
19 2010-03-19  Paolo Carlini  <paolo.carlini@oracle.com>
20
21         * include/bits/random.tcc: Minor formatting changes.
22
23 2010-03-19  Paolo Carlini  <paolo.carlini@oracle.com>
24
25         * include/bits/stl_algo.h (shuffle): Fix typo in signature.
26         * include/bits/algorithmfwd.h: Adjust.
27         * testsuite/25_algorithms/shuffle/requirements/
28         explicit_instantiation/2.cc: Likewise.
29         * testsuite/25_algorithms/shuffle/requirements/
30         explicit_instantiation/pod.cc: Likewise.
31
32 2010-03-19  Paolo Carlini  <paolo.carlini@oracle.com>
33
34         * include/bits/stl_algo.h (shuffle): Add, per D3056.
35         (random_shuffle): Fix signature in C++0x mode.
36         (lower_bound, __lg): Move...
37         * include/bits/stl_algobase.h: ... here.
38         * include/bits/algorithmfwd.h: Adjust.
39         * include/parallel/algorithmfwd.h: Likewise.
40         * include/parallel/algo.h: Likewise.
41         * include/bits/hashtable_policy.h (__lower_bound): Remove,
42         adjust callers.
43         * include/tr1/hashtable_policy.h (__lower_bound): Likewise.
44         * include/bits/random.tcc (__detail::__transform): Add,
45         adjust std::transform callers; don't include <algorithm>.
46         * testsuite/25_algorithms/shuffle/1.cc: Add.
47         * testsuite/25_algorithms/shuffle/requirements/
48         explicit_instantiation/2.cc: Likewise.
49         * testsuite/25_algorithms/shuffle/requirements/
50         explicit_instantiation/pod.cc: Likewise.
51
52         * include/bits/random.h: Add comments.
53
54 2010-03-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
55
56         * doc/xml/manual/debug_mode.xml: Correct debug headers.
57
58 2010-03-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
59
60         PR libstdc++/43397
61         * include/std/functional (_Mem_fn): Use perfect forwarding.
62         * testsuite/20_util/function/43397.cc: New.
63
64 2010-03-16  Paolo Carlini  <paolo.carlini@oracle.com>
65
66         PR libstdc++/43394
67         * include/parallel/compatibility.h: Add __k8 and __core2 among the
68         i386 targets supporting atomic operations.
69
70 2010-03-16  Paolo Carlini  <paolo.carlini@oracle.com>
71
72         * include/backward/hash_map: Use consistently the _BACKWARD_*
73         prefix for the include guard.
74         * include/backward/hash_fun.h: Likewise.
75         * include/backward/hashtable.h: Likewise.
76         * include/backward/auto_ptr.h: Likewise.
77         * include/backward/strstream: Likewise.
78         * include/backward/binders.h: Likewise.
79         * include/backward/hash_set: Likewise.
80
81 2010-03-16  Paolo Carlini  <paolo.carlini@oracle.com>
82
83         * include/bits/random.h (operator==(const uniform_int_distribution<>&,
84         const uniform_int_distribution<>&), operator==(const
85         uniform_real_distribution<>&, const uniform_real_distribution<>&),
86         operator==(const lognormal_distribution<>&,
87         const lognormal_distribution<>&), operator==(const
88         chi_squared_distribution<>&, const chi_squared_distribution<>&),
89         operator==(const cauchy_distribution<>&, const cauchy_distribution<>&),
90         operator==(const fisher_distribution<>&, const fisher_distribution<>&),
91         operator==(const student_t_distribution<>&,
92         const student_t_distribution<>&), operator==(const
93         bernoulli_distribution<>&, const bernoulli_distribution<>&),
94         operator==(const binomial_distribution<>&, const
95         binomial_distribution<>&), operator==(const geometric_distribution<>&,
96         const geometric_distribution<>&), operator==(const
97         negative_binomial_distribution<>&, const
98         negative_binomial_distribution<>&), operator==(const
99         poisson_distribution<>&, const poisson_distribution<>&),
100         operator==(const exponential_distribution<>&,
101         const exponential_distribution<>&), operator==(const
102         gamma_distribution<>&, const gamma_distribution<>&), operator==(const
103         weibull_distribution<>&, const weibull_distribution<>&),
104         operator==(const extreme_value_distribution<>&,
105         const extreme_value_distribution<>&), operator==(const
106         discrete_distribution<>&, const discrete_distribution<>&),
107         operator==(const piecewise_constant_distribution<>&,
108         const piecewise_constant_distribution<>&), operator==(const
109         piecewise_linear_distribution<>&, const
110         piecewise_linear_distribution<>&)): Add, likewise for operator!=.
111         (operator!=(const independent_bits_engine<>&, const
112         independent_bits_engine<>&), operator!=(const
113         subtract_with_carry_engine<>&, const subtract_with_carry_engine<>&),
114         operator!=(const discard_block_engine<>&, const
115         discard_block_engine<>&), operator!=(const mersenne_twister_engine<>&,
116         const mersenne_twister_engine<>&), operator!=(const
117         linear_congruential_engine<>&, const linear_congruential_engine<>&),
118         operator!=(const shuffle_order_engine<>&, const
119         shuffle_order_engine<>&): Add.
120         * include/bits/random.tcc (operator==(const normal_distribution<>&,
121         const normal_distribution<>&)): Add.
122         * testsuite/26_numerics/random/uniform_real_distribution/operators/
123         inequal.cc: New.
124         * testsuite/26_numerics/random/uniform_real_distribution/operators/
125         equal.cc: Likewise.
126         * testsuite/26_numerics/random/piecewise_constant_distribution/
127         operators/inequal.cc: Likewise.
128         * testsuite/26_numerics/random/piecewise_constant_distribution/
129         operators/equal.cc: Likewise.
130         * testsuite/26_numerics/random/chi_squared_distribution/operators/
131         inequal.cc: Likewise.
132         * testsuite/26_numerics/random/chi_squared_distribution/operators/
133         equal.cc: Likewise.
134         * testsuite/26_numerics/random/normal_distribution/operators/
135         inequal.cc: Likewise.
136         * testsuite/26_numerics/random/normal_distribution/operators/
137         equal.cc: Likewise.
138         * testsuite/26_numerics/random/uniform_int_distribution/operators/
139         inequal.cc: Likewise.
140         * testsuite/26_numerics/random/uniform_int_distribution/operators/
141         equal.cc: Likewise.
142         * testsuite/26_numerics/random/poisson_distribution/operators/
143         inequal.cc: Likewise.
144         * testsuite/26_numerics/random/poisson_distribution/operators/
145         equal.cc: Likewise.
146         * testsuite/26_numerics/random/bernoulli_distribution/operators/
147         inequal.cc: Likewise.
148         * testsuite/26_numerics/random/bernoulli_distribution/operators/
149         equal.cc: Likewise.
150         * testsuite/26_numerics/random/discrete_distribution/operators/
151         inequal.cc: Likewise.
152         * testsuite/26_numerics/random/discrete_distribution/operators/
153         equal.cc: Likewise.
154         * testsuite/26_numerics/random/weibull_distribution/operators/
155         inequal.cc: Likewise.
156         * testsuite/26_numerics/random/weibull_distribution/operators/
157         equal.cc: Likewise.
158         * testsuite/26_numerics/random/independent_bits_engine/operators/
159         inequal.cc: Likewise.
160         * testsuite/26_numerics/random/subtract_with_carry_engine/operators/
161         inequal.cc: Likewise.
162         * testsuite/26_numerics/random/discard_block_engine/operators/
163         inequal.cc: Likewise.
164         * testsuite/26_numerics/random/cauchy_distribution/operators/
165         inequal.cc: Likewise.
166         * testsuite/26_numerics/random/cauchy_distribution/operators/
167         equal.cc: Likewise.
168         * testsuite/26_numerics/random/negative_binomial_distribution/
169         operators/inequal.cc: Likewise.
170         * testsuite/26_numerics/random/negative_binomial_distribution/
171         operators/equal.cc: Likewise.
172         * testsuite/26_numerics/random/gamma_distribution/operators/
173         inequal.cc: Likewise.
174         * testsuite/26_numerics/random/gamma_distribution/operators/
175         equal.cc: Likewise.
176         * testsuite/26_numerics/random/mersenne_twister_engine/operators/
177         inequal.cc: Likewise.
178         * testsuite/26_numerics/random/fisher_f_distribution/operators/
179         inequal.cc: Likewise.
180         * testsuite/26_numerics/random/fisher_f_distribution/operators/
181         equal.cc: Likewise.
182         * testsuite/26_numerics/random/exponential_distribution/operators/
183         inequal.cc: Likewise.
184         * testsuite/26_numerics/random/exponential_distribution/operators/
185         equal.cc: Likewise.
186         * testsuite/26_numerics/random/binomial_distribution/operators/
187         inequal.cc: Likewise.
188         * testsuite/26_numerics/random/binomial_distribution/operators/
189         equal.cc: Likewise.
190         * testsuite/26_numerics/random/lognormal_distribution/operators/
191         inequal.cc: Likewise.
192         * testsuite/26_numerics/random/lognormal_distribution/operators/
193         equal.cc: Likewise.
194         * testsuite/26_numerics/random/extreme_value_distribution/operators/
195         inequal.cc: Likewise.
196         * testsuite/26_numerics/random/extreme_value_distribution/operators/
197         equal.cc: Likewise.
198         * testsuite/26_numerics/random/piecewise_linear_distribution/
199         operators/inequal.cc: Likewise.
200         * testsuite/26_numerics/random/piecewise_linear_distribution/
201         operators/equal.cc: Likewise.
202         * testsuite/26_numerics/random/student_t_distribution/operators/
203         inequal.cc: Likewise.
204         * testsuite/26_numerics/random/student_t_distribution/operators/
205         equal.cc: Likewise.
206         * testsuite/26_numerics/random/linear_congruential_engine/operators/
207         inequal.cc: Likewise.
208         * testsuite/26_numerics/random/shuffle_order_engine/operators/
209         inequal.cc: Likewise.
210         * testsuite/26_numerics/random/geometric_distribution/operators/
211         inequal.cc: Likewise.
212         * testsuite/26_numerics/random/geometric_distribution/operators/
213         equal.cc: Likewise.
214
215 2010-03-15  Paolo Carlini  <paolo.carlini@oracle.com>
216
217         * include/bits/forward_list.tcc (_Fwd_list_node_base::
218         _M_transfer_after): Return _Fwd_list_node_base*.
219         (forward_list<>::_M_splice_after): Add.
220         (forward_list<>::insert_after(const_iterator, size_type, const _Tp&),
221         insert_after(const_iterator, _InputIterator, _InputIterator),
222         insert_after(const_iterator, initializer_list<>)): Use the above,
223         implement DR 1278 ([Ready] in Pittsburgh).
224         * include/bits/forward_list.h (insert_after(const_iterator,
225         size_type, const _Tp&), insert_after(const_iterator, _InputIterator,
226         _InputIterator), insert_after(const_iterator, initializer_list<>)):
227         Only declare.
228         * testsuite/23_containers/forward_list/modifiers/2.cc: Adjust.
229         * testsuite/23_containers/forward_list/requirements/dr438/
230         assign_neg.cc: Adjust dg-error line number.
231         * testsuite/23_containers/forward_list/requirements/dr438/
232         insert_neg.cc: Likewise.
233         * testsuite/23_containers/forward_list/requirements/dr438/
234         constructor_1_neg.cc: Likewise.
235         * testsuite/23_containers/forward_list/requirements/dr438/
236         constructor_2_neg.cc: Likewise.
237
238 2010-03-15  Paolo Carlini  <paolo.carlini@oracle.com>
239
240         * testsuite/23_containers/forward_list/requirements/dr438/
241         assign_neg.cc: Adjust dg-error line number.
242         * testsuite/23_containers/forward_list/requirements/dr438/
243         constructor_1_neg.cc: Likewise.
244         * testsuite/23_containers/forward_list/requirements/dr438/
245         constructor_2_neg.cc: Likewise.
246         * testsuite/23_containers/forward_list/requirements/dr438/
247         insert_neg.cc: Likewise.
248         * testsuite/23_containers/forward_list/capacity/1.cc: Adjust.
249
250         Revert:
251         2008-11-11  Bob Walters  <bob.s.walters@gmail.com>
252
253         * include/bits/forward_list.h: Support non-standard pointer types
254         (_Fwd_list_node_base): Add _Alloc template parameter.
255         (_Fwd_list_node<>): Likewise.
256         (_Fwd_list_iterator<>): Likewise.
257         (_Fwd_list_const_iterator<>): Likewise.
258         (_Fwd_list_node_base::_M_next, _M_transfer_after, _M_reverse_after):
259         Use _Alloc<_Tp>::pointer.
260         (_Fwd_list_iterator<>::_M_node): Use _Node_base::_Pointer.
261         (_Fwd_list_base<>::_M_get_node, _M_create_node, _M_create_node,
262         _M_insert_after, _M_put_node, _M_erase_after): Likewise.
263         (_Fwd_list_const_iterator<>::_M_node): use _Node_base::_Const_pointer.
264         (forward_list<>): Use __static_pointer_cast in place of static_cast,
265         and __const_pointer_cast in place of const_cast.
266         * include/bits/forward_list.tcc
267         (_Fwd_list_node<>::_M_sort_after): Using _Pointer typedefs in place
268         of standard pointers, __static_pointer_cast in place of static_cast.
269         (_Fwd_list_base<>::_Fwd_list_base, _M_insert_after, _M_erase_after):
270         Likewise.
271         (forward_list<>::_M_initialize_dispatch, _M_fill_initialize,
272         splice_after, remove, remove_if, merge): Likewise.
273         * testsuite/23_containers/forward_list/ext_pointer/modifiers/1.cc: New.
274         * testsuite/23_containers/forward_list/ext_pointer/modifiers/2.cc:
275         Likewise.
276         * testsuite/23_containers/forward_list/ext_pointer/modifiers/3.cc:
277         Likewise.
278         * testsuite/23_containers/forward_list/ext_pointer/modifiers/4.cc:
279         Likewise.
280         * testsuite/23_containers/forward_list/ext_pointer/modifiers/5.cc:
281         Likewise.
282         * testsuite/23_containers/forward_list/ext_pointer/operations/1.cc:
283         Likewise.
284         * testsuite/23_containers/forward_list/ext_pointer/operations/2.cc:
285         Likewise.
286         * testsuite/23_containers/forward_list/ext_pointer/operations/3.cc:
287         Likewise.
288         * testsuite/23_containers/forward_list/ext_pointer/operations/4.cc:
289         Likewise.
290         * testsuite/23_containers/forward_list/ext_pointer/operations/5.cc:
291         Likewise.
292         * testsuite/23_containers/forward_list/ext_pointer/operations/6.cc:
293         Likewise.
294         * testsuite/23_containers/forward_list/ext_pointer/operations/7.cc:
295         Likewise.
296         * testsuite/23_containers/forward_list/ext_pointer/requirements/1.cc:
297         Likewise.
298         * testsuite/23_containers/forward_list/ext_pointer/requirements/
299         explicit_instantiation/1.cc: Likewise.
300         * testsuite/23_containers/forward_list/ext_pointer/requirements/
301         explicit_instantiation/3.cc: Likewise.
302         * testsuite/23_containers/forward_list/ext_pointer/1.cc: Likewise.
303
304 2010-03-13  Paolo Carlini  <paolo.carlini@oracle.com>
305
306         * include/tr1_impl/array (swap(array<>&, array<>&)): Use member swap.
307
308         * include/bits/stl_algo.h: Improve comment.
309
310 2010-03-12  Benjamin Kosnik  <bkoz@redhat.com>
311
312         * scripts/run_doxygen: Adjust.
313         * doc/doxygen/user.cfg.in: Adjust latex, xml prefs.
314         * doc/xml/api.xml: Update.
315         * doc/Makefile.am: Re-do stamp rules.
316         * doc/Makefile.in: Regenerate.
317
318 2010-03-10  Paolo Carlini  <paolo.carlini@oracle.com>
319
320         * include/bits/hashtable_policy.h (_Rehash_base<_Prime_rehash_policy,
321         _Hashtable>::reserve): Add, per DR 1189.
322         * include/bits/hashtable.h (_Hashtable<>::size_type,
323         _Hashtable<>::difference_type): Do not typedef from _Allocator.
324         * testsuite/23_containers/unordered_map/dr1189.cc: New.
325         * testsuite/23_containers/unordered_set/dr1189.cc: Likewise.
326         * testsuite/23_containers/unordered_multimap/dr1189.cc: Likewise.
327         * testsuite/23_containers/unordered_multiset/dr1189.cc: Likewise.
328
329 2010-03-08  Paolo Carlini  <paolo.carlini@oracle.com>
330
331         Revert:
332         2010-02-11  Paolo Carlini  <paolo.carlini@oracle.com>
333
334         PR libstdc++/41975, DR 579
335         * include/bits/hashtable.h (_Hashtable<>::_M_erase_node): Remove.
336         (erase(const_iterator), erase(const_iterator, const_iterator)):
337         Change return type to void.
338         * include/debug/unordered_map: Adjust.
339         * include/debug/unordered_set: Likewise.
340         * testsuite/util/exception/safety.h: Likewise.
341         * testsuite/23_containers/unordered_map/erase/1.cc: Likewise.
342         * testsuite/23_containers/unordered_map/erase/24061-map.cc: Likewise.
343         * testsuite/23_containers/unordered_set/erase/1.cc:  Likewise.
344         * testsuite/23_containers/unordered_set/erase/24061-map.cc: Likewise.
345         * testsuite/23_containers/unordered_multimap/erase/1.cc:  Likewise.
346         * testsuite/23_containers/unordered_multimap/erase/24061-map.cc:
347         Likewise.
348         * testsuite/23_containers/unordered_multiset/erase/1.cc:  Likewise.
349         * testsuite/23_containers/unordered_multiset/erase/24061-map.cc:
350         Likewise.
351
352 2010-03-04  Paolo Carlini  <paolo.carlini@oracle.com>
353
354         * testsuite/util/testsuite_container_traits.h (traits_base): Add
355         has_throwing_erase trait.
356         (traits<vector>, traits<deque>): Typedef the latter to true_type.
357         * testsuite/util/exception/safety.h (generation_prohibited):
358         Do not test vector::erase and deque::erase: can throw if
359         either copy constructor or assignment operator of value_type
360         throws.
361         * testsuite/23_containers/vector/requirements/exception/
362         generation_prohibited.cc: Remove xfail.
363         * testsuite/23_containers/deque/requirements/exception/
364         generation_prohibited.cc: Likewise.
365
366         * include/ext/throw_allocator.h (hash<__gnu_cxx::throw_value_limit>::
367         operator(), hash<__gnu_cxx::throw_value_random>::operator()): Pass
368         argument by const ref.
369
370         * testsuite/util/testsuite_container_traits.h (traits<map>,
371         traits<multimap>, traits<set>, traits<multiset>,
372         traits<unordered_map>, traits<unordered_multimap>,
373         traits<unordered_set>, traits<unordered_multiset>): Typedef
374         consistently has_erase and has_insert as true_type.
375
376         * testsuite/util/testsuite_container_traits.h
377         (traits<unordered_map>, traits<unordered_multimap>,
378         traits<unordered_set>, traits<unordered_multiset>): Do not wrongly
379         typedef has_size_type_constructor as true_type: the constructor
380         accepting a size_type actually gets the initial number of
381         buckets.
382
383 2010-03-03  Benjamin Kosnik  <bkoz@redhat.com>
384
385         * doc/Makefile.am: Re-organize xml sources.
386         (doc-latex-doxygen): New.
387         (doc-pdf-doxygen): New.
388         (stamp-xml-doxygen, stamp-latex-doxygen): New.
389         * doc/Makefile.in: Regenerate.
390         * doc/doxygen/user.cfg.in: Add support here.
391         * doc/xml/manual/appendix_contributing.xml: Add specifics.
392
393         * doc/xml/manual/concurrency.xml: New.
394         * doc/xml/manual/atomics.xml: New.
395         * doc/xml/manual/spine.xml: Adjust.
396         * doc/xml/manual/diagnostics.xml: Adjust.
397
398 2010-03-03  Paolo Carlini  <paolo.carlini@oracle.com>
399             Jonathan Wakely  <jwakely.gcc@gmail.com>
400
401         * include/bits/unique_ptr.h (unique_ptr<>::get_deleter): Simplify
402         return type.
403         * testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Adjust
404         dg-error line number.
405         * testsuite/20_util/unique_ptr/assign/assign_neg.cc: Likewise.
406
407 2010-03-02  Paolo Carlini  <paolo.carlini@oracle.com>
408
409         * include/debug/bitset (hash): Minor tweaks.
410         * include/debug/vector (hash): Likewise.
411         * include/profile/bitset (hash): Likewise.
412         * include/profile/vector (hash): Likewise.
413
414 2010-03-02  Paolo Carlini  <paolo.carlini@oracle.com>
415
416         * include/bits/functional_hash.h (_Fnv_hash_base<>::hash): Change
417         to template.
418         * include/tr1/functional_hash.h (_Fnv_hash_base<>::hash): Likewise.
419         * include/bits/vector.tcc (hash): Adjust.
420         * include/bits/basic_string.h (hash): Likewise.
421         * include/std/bitset (hash): Likewise.
422         * src/hash-string-aux.cc (hash): Likewise.
423
424 2010-03-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
425
426         * include/std/mutex (lock_guard::lock_guard): Do not lock mutex when
427         adopt_lock_t constructor is used.
428         * testsuite/30_threads/lock_guard/cons/1.cc: New.
429
430 2010-03-02  Paolo Carlini  <paolo.carlini@oracle.com>
431
432         * include/bits/stl_bvector.h (hash<vector<bool, _Alloc>>::
433         operator()(const vector<bool, _Alloc>&)): Move definition...
434         * include/bits/vector.tcc: ... here.
435
436 2010-03-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
437
438         * testsuite/Makefile.am (check-DEJAGNU): Include de* in normal0
439         dirs.
440         * testsuite/Makefile.in: Regenerate.
441
442 2010-03-02  Paolo Carlini  <paolo.carlini@oracle.com>
443
444         * include/bits/stl_bvector.h (hash<vector<bool, _Alloc>>): Add.
445         * include/debug/vector (hash<__debug::vector<bool, _Alloc>>):
446         Likewise.
447         * include/profile/vector (hash<__profile::vector<bool, _Alloc>>):
448         Likewise.
449         * testsuite/23_containers/vector/bool/hash/1.cc: New.
450
451         * include/std/bitset (hash<bitset<_Nb>>): Small tweaks.
452         (hash<bitset<0>>): Add.
453         * include/debug/bitset (hash<__debug::bitset<_Nb>>): Forward to
454         hash<bitset<_Nb>>.
455         * include/profile/bitset (hash<__profile::bitset<_Nb>>): Likewise.
456         * testsuite/23_containers/bitset/hash/1.cc: Improve.
457
458 2010-03-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
459
460         PR libstdc++/43230
461         * testsuite/30_threads/promise/members/set_value3.cc
462         (tester::~tester): Remove.
463
464 2010-03-02  Paolo Carlini  <paolo.carlini@oracle.com>
465
466         * include/std/bitset (_Base_bitset<>::_M_getdata()): Add.
467         (hash<bitset<_Nb>>): Add, use the latter.
468         * include/debug/bitset (hash<__debug::bitset<_Nb>>): Add.
469         * include/profile/bitset (hash<__profile::bitset<_Nb>>): Likewise.
470         * testsuite/23_containers/bitset/hash/1.cc: New.
471
472 2010-03-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
473
474         PR libstdc++/43183
475         * include/bits/unique_ptr.h (reset): Fix as per working paper.
476         (operator*, operator->, operator[], operator bool, release): Use
477         pointer's null value instead of 0.
478         * testsuite/20_util/unique_ptr/assign/assign_neg.cc: Adjust.
479         * testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Adjust.
480         * testsuite/20_util/unique_ptr/modifiers/43183.cc: New.
481
482 2010-03-01  Paolo Carlini  <paolo.carlini@oracle.com>
483
484         * include/std/iomanip (get_money, put_money): Add in C++0x mode; tidy.
485         * testsuite/27_io/manipulators/extended/get_money/char/1.cc: New.
486         * testsuite/27_io/manipulators/extended/get_money/wchar_t/1.cc:
487         Likewise.
488         * testsuite/27_io/manipulators/extended/put_money/char/1.cc: Likewise.
489         * testsuite/27_io/manipulators/extended/put_money/wchar_t/1.cc:
490         Likewise.
491
492 2010-03-01  Benjamin Kosnik  <bkoz@redhat.com>
493
494         * include/bits/atomicfwd_cxx.h: Add typedefs to group.
495
496 2010-03-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
497
498         PR libstdc++/32499
499         * testsuite/Makefile.am (check-DEJAGNU
500         $(check_DEJAGNU_normal_targets)): Export AR, RANLIB.
501         * testsuite/Makefile.in: Regenerate.
502
503 2010-02-28  Gerald Pfeifer  <gerald@pfeifer.com>
504
505         * doc/html/ext/pb_ds/references.html: Adjust link to SGI's STL
506         site.
507
508 2010-02-28  Paolo Carlini  <paolo.carlini@oracle.com>
509
510        * src/hash-long-double-aux.cc (hash<long double>::
511        operator()(long double)): Hash both -0 and +0 to 0.
512
513 2010-02-25  Ed Smith-Rowland  <3dw4rd@verizon.net>
514
515         * include/bits/random.tcc (operator<<): Use max_digits10.
516
517 2010-02-25  Ed Smith-Rowland  <3dw4rd@verizon.net>
518
519         * include/std/limits (__numeric_limits_base::max_digits10,
520         numeric_limits<>::max_digits10, numeric_limits<>::lowest): Add.
521         * src/limits.cc: Define max_digits10.
522         * config/abi/pre/gnu.ver: Adjust.
523         * testsuite/18_support/numeric_limits/dr559.cc: Test max_digits10
524         and lowest too.
525         * testsuite/18_support/numeric_limits/lowest.cc: New.
526         * testsuite/18_support/numeric_limits/max_digits10.cc: New.
527
528 2010-02-25  Paolo Carlini  <paolo.carlini@oracle.com>
529
530         * include/bits/functional_hash.h (__hash_combine): Remove.
531         (_Fnv_hash_base<>::hash(const char*, size_t)): Add defaulted
532         hash parameter.
533         (_Fnv_hash::__hash_combine(const _Tp&, size_t)): Add.
534         * include/std/system_error (hash<system_error>): Adjust.
535         * src/compatibility-c++0x.cc (hash<system_error>): Likewise.
536
537 2010-02-24  Benjamin Kosnik  <bkoz@redhat.com>
538
539         * doc/xml/faq.xml: Adjust structure for pdf index.
540         * doc/xml/manual/mt_allocator.xml: Same.
541         * doc/xml/manual/allocator.xml: Same.
542         * doc/xml/manual/ctype.xml: Same.
543         * doc/xml/manual/numerics.xml: Same.
544         * doc/xml/manual/codecvt.xml: Same.
545         * doc/xml/manual/intro.xml: Same.
546         * doc/xml/manual/shared_ptr.xml: Same.
547         * doc/xml/manual/status_cxxtr1.xml: Same.
548         * doc/xml/manual/auto_ptr.xml: Same.
549         * doc/xml/manual/internals.xml: Same.
550         * doc/xml/manual/status_cxx1998.xml: Same.
551         * doc/xml/manual/parallel_mode.xml: Same.
552         * doc/xml/manual/profile_mode.xml: Same.
553         * doc/xml/manual/containers.xml: Same.
554         * doc/xml/manual/io.xml: Same.
555         * doc/xml/manual/concurrency_extensions.xml: Same.
556         * doc/xml/manual/appendix_porting.xml: Same.
557         * doc/xml/manual/utilities.xml: Same.
558         * doc/xml/manual/support.xml: Same.
559         * doc/xml/manual/bitmap_allocator.xml: Same.
560         * doc/xml/manual/configure.xml: Same.
561         * doc/xml/manual/build_hacking.xml: Same.
562         * doc/xml/manual/evolution.xml: Same.
563         * doc/xml/manual/using.xml: Same.
564         * doc/xml/manual/debug.xml: Same.
565         * doc/xml/manual/localization.xml: Same.
566         * doc/xml/manual/strings.xml: Same.
567         * doc/xml/manual/debug_mode.xml: Same.
568         * doc/xml/manual/locale.xml: Same.
569         * doc/xml/manual/extensions.xml: Same.
570         * doc/xml/manual/appendix_contributing.xml: Same.
571         * doc/xml/manual/prerequisites.xml: Same.
572         * doc/xml/manual/messages.xml: Same.
573         * doc/xml/manual/diagnostics.xml: Same.
574         * doc/xml/manual/algorithms.xml: Same.
575         * doc/xml/manual/appendix_free.xml: Same.
576         * doc/xml/manual/iterators.xml: Same.
577         * doc/xml/manual/spine.xml: Same.
578         * doc/xml/manual/status_cxxtr24733.xml: Same.
579         * doc/xml/manual/status_cxx200x.xml: Same.
580         * doc/Makefile.am: Refactor.
581         * doc/Makefile.in: Regenerate.
582
583         * include/bits/c++0x_warning.h: Tweak doxygen file markup.
584
585 2010-02-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
586
587         * testsuite/ext/new_allocator/deallocate_global.cc: Require
588         __cxa_atexit.
589         * testsuite/ext/throw_allocator/deallocate_global.cc: Likewise.
590
591 2010-02-23  Benjamin Kosnik  <bkoz@redhat.com>
592
593         * doc/xml/manual/concurrency.xml: Move...
594         * doc/xml/manual/concurrency_extensions.xml: ...here.
595         * doc/xml/manual/extensions.xml: Adjust.
596         * doc/Makefile.am: Adjust.
597         * doc/Makefile.in: Regenerate.
598
599 2010-02-23  Benjamin Kosnik  <bkoz@redhat.com>
600
601         * include/bits/random.h: Doxygen group markup fixes.
602
603 2010-02-23  Paolo Carlini  <paolo.carlini@oracle.com>
604
605         * include/bits/functional_hash.h (struct _Fnv_hash): Rename
606         to _Fnv_hash_base.
607         (struct _Fnv_hash): Add, derives from the latter.
608         (__hash_combine): Add.
609         (hash<float>::operator()(float), hash<double>::operator()(double)):
610         Adjust.
611         * include/bits/basic_string.h (hash<string>, hash<wstring>,
612         hash<u16string>, hash<u32string>): Adjust.
613         * src/hash-string-aux.cc: Adjust.
614         * src/compatibility-c++0x.cc (hash<error_code>): Use __hash_combine.
615         * include/std/system_error (hash<error_code>): Likewise.
616         * include/std/thread (struct hash<thread::id>): Add.
617         * include/tr1/functional_hash.h : Rename to _Fnv_hash_base.
618         (struct _Fnv_hash): Add, derives from the latter.
619         (hash<float>::operator()(float), hash<double>::operator()(double)):
620         Adjust.
621         * testsuite/30_threads/thread/id/hash.cc: New.
622         * testsuite/30_threads/thread/cons/assign_neg.cc: Adjust dg-error
623         line number.
624         * testsuite/30_threads/thread/cons/copy_neg.cc: Likewise.
625
626 2010-02-22  Janis Johnson  <janis187@us.ibm.com>
627
628         * src/compatibility-ldbl.cc: Include new hash-long-double-aux.cc.
629
630 2010-02-22  Paolo Carlini  <paolo.carlini@oracle.com>
631
632         * src/hash-aux.cc: Rename to...
633         * src/hash-string-aux.cc: ... this.
634         * src/hash-long-double-aux.cc: New.
635         * src/hash_c++0x.cc: Adjust.
636         * src/hash_tr1.cc: Likewise.
637         * src/compatibility-c++0x.cc: Likewise.
638
639 2010-02-22  Benjamin Kosnik  <bkoz@redhat.com>
640
641         * doc/xml/class.txml: Adjust biblio markup.
642         * doc/xml/manual/allocator.xml: Same.
643         * doc/xml/manual/ctype.xml: Same.
644         * doc/xml/manual/codecvt.xml: Same.
645         * doc/xml/manual/backwards_compatibility.xml: Same.
646         * doc/xml/manual/abi.xml: Same.
647         * doc/xml/manual/shared_ptr.xml: Same.
648         * doc/xml/manual/profile_mode.xml: Same.
649         * doc/xml/manual/using_exceptions.xml: Same.
650         * doc/xml/manual/locale.xml: Same.
651         * doc/xml/manual/appendix_contributing.xml: Same.
652         * doc/xml/manual/messages.xml: Same.
653         * doc/Makefile.am (DBLATEX_FLAGS): Adjust.
654         * doc/Makefile.in: Regenerate.
655
656 2010-02-22  François Dumont  <francois.cppdevs@free.fr>
657
658        * doc/xml/manual/profile_mode.xml: Minor updates and fixes.
659        * doc/xml/manual/debug_mode.xml: Likewise.
660        * doc/xml/manual/test.xml: Likewise.
661
662 2010-02-22  Paolo Carlini  <paolo.carlini@oracle.com>
663
664         * include/tr1_impl/complex (arg): Use std::signbit only when
665         available.
666
667 2010-02-22  Paolo Carlini  <paolo.carlini@oracle.com>
668
669         * include/bits/functional_hash.h (hash<string>, hash<wstring>,
670         hash<u16string>, hash<u32string>, hash<error_code>): Move, per
671         DR 1182 to...
672         * include/bits/basic_string.h: ... here.
673         * include/std/system_error: ... and here, respectively.
674         * src/hash-aux.cc (hash<long double>::operator()(long double)):
675         Move definition...
676         * src/hash_c++0x.cc: ... here, new file.
677         * src/hash_tr1.cc: ... and here, tweak includes.
678         * src/compatibility-c++0x.cc (hash, _Fnv_hash): Remove.
679         * src/Makefile.am: Adjust.
680         * src/Makefile.in: Regenerate.
681         * include/std/functional: Include <bits/functexcept.h>.
682         * include/std/unordered_set: Remove redundant include.
683         * include/std/unordered_map: Likewise.
684         * include/tr1/functional_hash.h: Remove spurious trailing semicolon.
685         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Remove
686         dg-excess.
687
688 2010-02-21  Paolo Carlini  <paolo.carlini@oracle.com>
689
690         * include/std/complex (proj): Change return type per DR 1137.
691         (conj): Copy from tr1_impl, likewise adjust return type.
692         * include/tr1_impl/complex (conj): Remove.
693         * include/tr1/complex (conj): Add both overloads.
694         * testsuite/26_numerics/complex/dr781.cc: Rename to...
695         * testsuite/26_numerics/complex/dr781_dr1137.cc: ... this, and extend.
696
697         * include/tr1_impl/complex (arg): Optimize.
698
699 2010-02-21  Paolo Carlini  <paolo.carlini@oracle.com>
700
701         * testsuite/20_util/is_trivial/requirements/typedefs.cc: New.
702         * testsuite/20_util/is_trivial/requirements/
703         explicit_instantiation.cc: Likewise.
704         * testsuite/20_util/is_pod/value.cc: Likewise.
705         * testsuite/20_util/is_pod/requirements/typedefs.cc: Likewise.
706         * testsuite/20_util/is_pod/requirements/
707         explicit_instantiation.cc: Likewise.
708         * testsuite/20_util/is_standard_layout/requiremenents/
709         typedefs.cc: Likewise.
710         * testsuite/20_util/is_standard_layout/requiremenents/
711         explicit_instantiation.cc: Likewise.
712
713 2010-02-20  Manuel López-Ibáñez  <manu@gcc.gnu.org>
714
715         PR c++/35669
716         * testsuite/18_support/headers/cstddef/macros.cc: Add
717         -Wno-conversion-null.
718
719 2010-02-19  Paolo Carlini  <paolo.carlini@oracle.com>
720
721         * include/tr1_impl/array (array): Add pointer and const_pointer
722         typedefs in C++0x mode, per DR 1306.
723         * testsuite/util/testsuite_containers.h (basic_types): Add pointer
724         and const_pointer typedefs.
725         (pointer_aware_types): Remove.
726         * testsuite/util/testsuite_container_traits.h: Adjust.
727
728 2010-02-19  Paolo Carlini  <paolo.carlini@oracle.com>
729
730         * include/bits/stl_algo.h (for_each): Implement resolution of DR 1110.
731         * testsuite/25_algorithms/for_each/1.cc: New.
732
733 2010-02-19  Paolo Carlini  <paolo.carlini@oracle.com>
734
735         * include/bits/shared_ptr_base.h (__weak_ptr): Remove deleted
736         comparison operators, per DR 1256.
737         * include/bits/shared_ptr.h (weak_ptr): Likewise.
738         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust.
739
740 2010-02-18  Benjamin Kosnik  <bkoz@redhat.com>
741
742         * scripts/run_doxygen: Add shortnames option.
743         * doc/Makefile.am (doc-man-doxygen): Use it.
744         (doc-html-doxygen): Use it.
745         (doc-xml-doxygen): Use it, but default to NO.
746         (doc-pdf-dblatex): Add.
747         * doc/Makefile.in: Regenerate.
748         * doc/doxygen/user.cfg.in: Update filelist.
749         * include/bits/locale_facets.h: Fix markup warning.
750
751 2010-02-18  Benjamin Kosnik  <bkoz@redhat.com>
752
753         * doc/xml/manual/using.xml: Update.
754         * doc/xml/manual/status_cxx1998.xml: Same.
755         * doc/xml/manual/status_cxx200x.xml: Add link.
756         * doc/html/*: Regenerate.
757
758         * testsuite/17_intro/freestanding.cc: Add.
759
760 2010-02-18  Paolo Carlini  <paolo.carlini@oracle.com>
761
762         * libsupc++/typeinfo: Add system_header pragma.
763         * libsupc++/exception: Likewise.
764         * libsupc++/cxxabi-forced.h: Likewise.
765         * libsupc++/new: Likewise.
766         * libsupc++/cxxabi.h: Likewise.
767         * libsupc++/initializer_list: Likewise.
768
769 2010-02-18  Paolo Carlini  <paolo.carlini@oracle.com>
770
771         * libsupc++/nested_exception.h: Fix <bits/c++0x_warning.h> include.
772
773 2010-02-17  Benjamin Kosnik  <bkoz@redhat.com>
774
775         * doc/xml/manual/appendix_contributing.xml: Update markup rules
776         for quoting and functions.
777
778 2010-02-17  Chris Jefferson  <chris@bubblescope.net>
779
780         * include/bits/locale_facets.h (__convert_to_v): Add empty
781         exception-specification.
782
783 2010-02-17  Paolo Carlini  <paolo.carlini@oracle.com>
784
785         * include/std/limits: Implement resolution of DR 559 (CD1) in
786         C++0x mode.
787         * testsuite/18_support/numeric_limits/dr559.cc: New.
788
789 2010-02-16  Benjamin Kosnik  <bkoz@redhat.com>
790
791         * src/ios_locale.cc: Fixes for -pedantic.
792         * src/system_error.cc: Same.
793         * src/locale.cc: Same.
794         * src/list.cc: Same.
795         * src/locale_facets.cc: Same.
796         * src/locale_init.cc: Same.
797         * src/ios.cc: Same.
798         * config/locale/darwin/ctype_members.cc: Same.
799         * config/locale/gnu/collate_members.cc: Same.
800         * config/locale/gnu/ctype_members.cc: Same.
801         * config/locale/gnu/c_locale.cc: Same.
802         * config/locale/gnu/monetary_members.cc: Same.
803         * config/locale/gnu/time_members.cc: Same.
804         * config/locale/ieee_1003.1-2001/c_locale.cc: Same.
805         * config/locale/generic/collate_members.cc: Same.
806         * config/locale/generic/ctype_members.cc: Same.
807         * config/locale/generic/c_locale.cc: Same.
808         * config/locale/generic/monetary_members.cc: Same.
809         * config/locale/generic/time_members.cc: Same.
810         * config/io/basic_file_stdio.cc: Same.
811
812         * libsupc++/pbase_type_info.cc: Fixes for -fno-rtti.
813         * libsupc++/pointer_type_info.cc: Same.
814         * libsupc++/eh_personality.cc: Same.
815
816         * include/std/system_error: Throw spacing.
817         * include/bits/locale_classes.h: Same.
818         * include/bits/locale_facets.h: Same.
819         * include/bits/ios_base.h: Same.
820
821         * testsuite/17_intro/headers/c++200x/all_no_rtti.cc: New.
822         * testsuite/17_intro/headers/c++1998/all_no_rtti.cc: New.
823
824 2010-02-16  Paolo Carlini  <paolo.carlini@oracle.com>
825
826         * include/bits/random.h (linear_congruential_engine(_Sseq&),
827         mersenne_twister_engine(_Sseq&), subtract_with_carry_engine(_Sseq&)):
828         Do not enable for the type itself.
829         (discard_block_engine(_Sseq&), independent_bits_engine(_Sseq&),
830         shuffle_order_engine(_Sseq&)): Do not enable for the type itself too.
831         (linear_congruential_engine<>::seed(_Sseq&),
832         mersenne_twister_engine<>::seed(_Sseq&),
833         subtract_with_carry_engine<>::seed(_Sseq&)): Use enable_if on the
834         return type.
835         (discard_block_engine<>::seed(_Sseq&),
836         independent_bits_engine<>::seed(_Sseq&),
837         shuffle_order_engine<>::seed(_Sseq&)): Do not use enable_if.
838         * include/bits/random.tcc: Adjust definitions.
839         * testsuite/26_numerics/random/independent_bits_engine/cons/copy.cc:
840         New.
841         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
842         copy.cc: Likewise.
843         * testsuite/26_numerics/random/discard_block_engine/cons/
844         copy.cc: Likewise.
845         * testsuite/26_numerics/random/mersenne_twister_engine/cons/
846         copy.cc: Likewise.
847         * testsuite/26_numerics/random/linear_congruential_engine/cons/
848         copy.cc: Likewise.
849         * testsuite/26_numerics/random/shuffle_order_engine/cons/
850         copy.cc: Likewise.
851
852         * testsuite/26_numerics/random/independent_bits_engine/cons/
853         base_move.cc: Minor tweaks.
854         * testsuite/26_numerics/random/independent_bits_engine/cons/seed1.cc:
855         Likewise.
856         * testsuite/26_numerics/random/independent_bits_engine/cons/seed2.cc:
857         Likewise.
858         * testsuite/26_numerics/random/independent_bits_engine/cons/
859         base_copy.cc: Likewise.
860         * testsuite/26_numerics/random/independent_bits_engine/cons/
861         default.cc: Likewise.
862         * testsuite/26_numerics/random/independent_bits_engine/cons/
863         seed_seq.cc: Likewise.
864         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
865         seed1.cc: Likewise.
866         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
867         seed2.cc: Likewise.
868         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
869         default.cc: Likewise.
870         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
871         seed_seq.cc: Likewise.
872         * testsuite/26_numerics/random/discard_block_engine/cons/base_move.cc:
873         Likewise.
874         * testsuite/26_numerics/random/discard_block_engine/cons/seed1.cc:
875         Likewise.
876         * testsuite/26_numerics/random/discard_block_engine/cons/seed2.cc:
877         Likewise.
878         * testsuite/26_numerics/random/discard_block_engine/cons/base_copy.cc:
879         Likewise.
880         * testsuite/26_numerics/random/discard_block_engine/cons/default.cc:
881         Likewise.
882         * testsuite/26_numerics/random/discard_block_engine/cons/seed_seq.cc:
883         Likewise.
884         * testsuite/26_numerics/random/mersenne_twister_engine/cons/seed1.cc:
885         Likewise.
886         * testsuite/26_numerics/random/mersenne_twister_engine/cons/seed2.cc:
887         Likewise.
888         * testsuite/26_numerics/random/mersenne_twister_engine/cons/
889         default.cc: Likewise.
890         * testsuite/26_numerics/random/mersenne_twister_engine/cons/
891         seed_seq.cc: Likewise.
892         * testsuite/26_numerics/random/linear_congruential_engine/cons/
893         seed1.cc: Likewise.
894         * testsuite/26_numerics/random/linear_congruential_engine/cons/
895         seed2.cc: Likewise.
896         * testsuite/26_numerics/random/linear_congruential_engine/cons/
897         seed_seq.cc: Likewise.
898         * testsuite/26_numerics/random/shuffle_order_engine/cons/base_move.cc:
899         Likewise.
900         * testsuite/26_numerics/random/shuffle_order_engine/cons/seed1.cc:
901         Likewise.
902         * testsuite/26_numerics/random/shuffle_order_engine/cons/seed2.cc:
903         Likewise.
904         * testsuite/26_numerics/random/shuffle_order_engine/cons/base_copy.cc:
905         Likewise.
906         * testsuite/26_numerics/random/shuffle_order_engine/cons/default.cc:
907         Likewise.
908         * testsuite/26_numerics/random/shuffle_order_engine/cons/seed_seq.cc:
909         Likewise.
910
911 2010-02-16  Paolo Carlini  <paolo.carlini@oracle.com>
912
913         * include/bits/unique_ptr.h: (unique_ptr<>::
914         unique_ptr(const unique_ptr<_Up, _Up_Deleter>&),
915         operator=(const unique_ptr<_Up, _Up_Deleter>&)): Remove, redundant,
916         per DR 1303.
917         * include/bits/shared_ptr.h (shared_ptr<>::
918         shared_ptr(const unique_ptr<_Up, _Up_Deleter>&),
919         operator=(const unique_ptr<_Up, _Up_Deleter>&)): Likewise.
920         * include/bits/shared_ptr_base.h (__shared_ptr<>::
921         __shared_ptr(const unique_ptr<_Up, _Up_Deleter>&),
922         operator=(const unique_ptr<_Up, _Up_Deleter>&)): Likewise.
923         * testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Adjust.
924         * testsuite/20_util/unique_ptr/assign/assign_neg.cc: Likewise.
925         * testsuite/20_util/shared_ptr/cons/unique_ptr_neg.cc: Likewise.
926         * testsuite/20_util/shared_ptr/assign/unique_ptr_lvalue_neg.cc:
927         Likewise.
928
929 2010-02-15  Paolo Carlini  <paolo.carlini@oracle.com>
930
931         * testsuite/ext/median.cc: Adjust.
932
933 2010-02-15  Paolo Carlini  <paolo.carlini@oracle.com>
934
935         * include/bits/stl_algo.h (__median): Move...
936         * include/ext/algorithm: ... here, being an SGI extension.
937
938 2010-02-12  Jonathan Wakely  <jwakely.gcc@gmail.com>
939             Paolo Carlini  <paolo.carlini@oracle.com>
940
941         PR libstdc++/42819, DR 1315
942         * include/std/future (async): Use std::result_of for the template
943         argument of the std::future return type; adjust everywhere.
944         * testsuite/30_threads/async/42819.cc: New.
945         * testsuite/30_threads/packaged_task/cons/assign_neg.cc: Adjust
946         dg-error line number.
947         * testsuite/30_threads/packaged_task/cons/copy_neg.cc: Likewise.
948         * testsuite/30_threads/future/cons/assign_neg.cc: Likewise.
949         * testsuite/30_threads/future/cons/copy_neg.cc: Likewise.
950         * testsuite/30_threads/promise/cons/assign_neg.cc: Likewise.
951         * testsuite/30_threads/promise/cons/assign_neg.cc: Likewise.
952
953 2010-02-11  Paolo Carlini  <paolo.carlini@oracle.com>
954
955         * config/abi/pre/gnu.ver: Revert last changes.
956
957 2010-02-11  Jason Merrill  <jason@redhat.com>
958
959         * include/std/thread (~_Impl_base): Declare inline.
960         * libsupc++/nested_exception.h (~nested_exception): Likewise.
961
962 2010-02-11  Paolo Carlini  <paolo.carlini@oracle.com>
963
964         PR libstdc++/41975, DR 579
965         * include/bits/hashtable.h (_Hashtable<>::_M_erase_node): Remove.
966         (erase(const_iterator), erase(const_iterator, const_iterator)):
967         Change return type to void.
968         * include/debug/unordered_map: Adjust.
969         * include/debug/unordered_set: Likewise.
970         * testsuite/util/exception/safety.h: Likewise.
971         * testsuite/23_containers/unordered_map/erase/1.cc: Likewise.
972         * testsuite/23_containers/unordered_map/erase/24061-map.cc: Likewise.
973         * testsuite/23_containers/unordered_set/erase/1.cc:  Likewise.
974         * testsuite/23_containers/unordered_set/erase/24061-map.cc: Likewise.
975         * testsuite/23_containers/unordered_multimap/erase/1.cc:  Likewise.
976         * testsuite/23_containers/unordered_multimap/erase/24061-map.cc:
977         Likewise.
978         * testsuite/23_containers/unordered_multiset/erase/1.cc:  Likewise.
979         * testsuite/23_containers/unordered_multiset/erase/24061-map.cc:
980         Likewise.
981
982 2010-02-11  Paolo Carlini  <paolo.carlini@oracle.com>
983
984         * config/abi/pre/gnu.ver: Avoid exporting inadvertently
985         std::nested_exception symbols at GLIBCXX_3.4.
986
987 2010-02-10  Jason Merrill  <jason@redhat.com>
988
989         Core issue 906
990         * include/std/thread (~_Impl_base): Move defaulted dtor out of line.
991         * libsupc++/nested_exception.h (~nested_exception): Likewise.
992         * testsuite/18_support/nested_exception/throw_with_nested.cc: Likewise.
993         * testsuite/18_support/nested_exception/rethrow_if_nested.cc: Likewise.
994
995 2010-02-10  Paolo Carlini  <paolo.carlini@oracle.com>
996
997         * include/tr1/hashtable.h: Fold in include/tr1_impl/hashtable.h
998         contents.
999         * include/tr1_impl/hashtable.h: Remove.
1000         * include/tr1_impl/hashtable_policy.h: Move and rename...
1001         * include/tr1/hashtable_policy.h: ... here.
1002         * include/tr1_impl/unordered_map: Move and rename...
1003         * include/tr1/unordered_map.h: ... here.
1004         * include/tr1_impl/unordered_set: Move and rename...
1005         * include/tr1/unordered_set.h: ... here.
1006         * include/tr1_impl/unordered_map: Move and rename...
1007         * include/tr1/unordered_map.h: ... here.
1008         * include/tr1/unordered_map: Adjust.
1009         * include/tr1/unordered_set: Likewise.
1010         * include/Makefile.am: Adjust.
1011         * include/Makefile.in: Regenerate.
1012
1013         * include/std/c++0x_warning.h: Move...
1014         * include/bits/c++0x_warning.h: ... here.
1015         * include/debug/unordered_map: Adjust.
1016         * include/debug/unordered_set: Likewise.
1017         * include/std/tuple: Likewise.
1018         * include/std/system_error: Likewise.
1019         * include/std/forward_list: Likewise.
1020         * include/std/thread: Likewise.
1021         * include/std/type_traits: Likewise.
1022         * include/std/future: Likewise.
1023         * include/std/regex: Likewise.
1024         * include/std/atomic: Likewise.
1025         * include/std/ratio: Likewise.
1026         * include/std/random: Likewise.
1027         * include/std/unordered_map: Likewise.
1028         * include/std/chrono: Likewise.: Likewise.
1029         * include/std/condition_variable: Likewise.
1030         * include/std/mutex: Likewise.
1031         * include/std/unordered_set: Likewise.
1032         * include/std/array: Likewise.
1033         * include/profile/unordered_map: Likewise.
1034         * include/profile/unordered_set: Likewise.
1035         * include/c_global/cinttypes: Likewise.
1036         * include/c_global/ctgmath: Likewise.
1037         * include/c_global/cfenv: Likewise.
1038         * include/c_global/cstdint: Likewise.
1039         * include/c_global/cstdbool: Likewise.
1040         * include/c_global/ccomplex: Likewise.
1041
1042         * include/bits/shared_ptr.h: Do not include <bits/c++0x_warning.h>
1043         at all, the file is not meant to be included by the users.
1044         * include/bits/functional_hash.h: Likewise.
1045         * include/bits/unique_ptr.h: Likewise.
1046         * include/bits/forward_list.h: Likewise.
1047
1048         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust dg-*
1049         line numbers.
1050         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
1051         * testsuite/23_containers/forward_list/requirements/dr438/
1052         assign_neg.cc: Likewise.
1053         * testsuite/23_containers/forward_list/requirements/dr438/
1054         insert_neg.cc: Likewise.
1055         * testsuite/23_containers/forward_list/requirements/dr438/
1056         constructor_1_neg.cc: Likewise.
1057         * testsuite/23_containers/forward_list/requirements/dr438/
1058         constructor_2_neg.cc: Likewise.
1059         * testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Likewise.
1060         * testsuite/20_util/unique_ptr/assign/assign_neg.cc: Likewise.
1061
1062 2010-02-10  Paolo Carlini  <paolo.carlini@oracle.com>
1063
1064         * include/bits/hashtable.h: Fold in include/tr1_impl/hashtable.h
1065         for C++0x use.
1066         * include/bits/hashtable_policy.h: New, copy and adjust for
1067         C++0x use, include/tr1_impl/hashtable_policy.h; fix erase and
1068         insert member functions per n3000.
1069         * include/bits/unordered_map.h: Likewise for include/tr1_impl/
1070         unordered_map.
1071         * include/bits/unordered_set.h: Likewise for include/tr1_impl/
1072         unordered_set.
1073         * include/Makefile.am: Adjust.
1074         * include/Makefile.in: Regenerate.
1075         * include/tr1/unordered_map: Adjust.
1076         * include/tr1/unordered_set: Likewise.
1077         * include/tr1_impl/unordered_map: Adjust, now used only by tr1.
1078         * include/tr1_impl/hashtable: Likewise.
1079         * include/tr1_impl/hashtable_policy.h: Likewise.
1080         * include/tr1_impl/unordered_set: Likewise.
1081         * include/std/unordered_map: Adjust and simplify includes.
1082         * include/std/unordered_set: Likewise.
1083         * include/debug/unordered_map: Adjuse erase and insert members.
1084         * include/debug/unordered_set: Likewise.
1085         * include/profile/unordered_map: Likewise.
1086         * include/profile/unordered_set: Likewise.
1087         * testsuite/util/exception/safety.h: Fix for the updated erase and
1088         insert member functions of the unordered_containers.
1089         * testsuite/23_containers/unordered_map/erase/1.cc: New.
1090         * testsuite/23_containers/unordered_map/erase/24061-map.cc: Likewise.
1091         * testsuite/23_containers/unordered_map/insert/map_single.cc:
1092         Likewise.
1093         * testsuite/23_containers/unordered_map/insert/array_syntax.cc:
1094         Likewise.
1095         * testsuite/23_containers/unordered_map/insert/24061-map.cc: Likewise.
1096         * testsuite/23_containers/unordered_map/insert/map_range.cc: Likewise.
1097         * testsuite/23_containers/set/operators/1_neg.cc: Likewise.
1098         * testsuite/23_containers/unordered_multimap/erase/1.cc: Likewise.
1099         * testsuite/23_containers/unordered_multimap/erase/
1100         24061-multimap.cc: Likewise.
1101         * testsuite/23_containers/unordered_multimap/insert/
1102         24061-multimap.cc: Likewise.
1103         * testsuite/23_containers/unordered_multimap/insert/
1104         multimap_range.cc: Likewise.
1105         * testsuite/23_containers/unordered_multimap/insert/
1106         multimap_single.cc: Likewise.
1107         * testsuite/23_containers/unordered_set/erase/1.cc: Likewise.
1108         * testsuite/23_containers/unordered_set/erase/24061-set.cc: Likewise.
1109         * testsuite/23_containers/unordered_set/insert/set_single.cc: Likewise.
1110         * testsuite/23_containers/unordered_set/insert/24061-set.cc: Likewise.
1111         * testsuite/23_containers/unordered_set/insert/set_range.cc: Likewise.
1112         * testsuite/23_containers/unordered_multiset/erase/1.cc: Likewise.
1113         * testsuite/23_containers/unordered_multiset/erase/
1114         24061-multiset.cc: Likewise.
1115         * testsuite/23_containers/unordered_multiset/insert/
1116         24061-multiset.cc: Likewise.
1117         * testsuite/23_containers/unordered_multiset/insert/
1118         multiset_range.cc: Likewise.
1119         * testsuite/23_containers/unordered_multiset/insert/
1120         multiset_single.cc: Likewise.
1121
1122         * testsuite/23_containers/set/operators/1_neg.cc: Tweak dg-errors
1123         to avoid spurious fails in debug-mode.
1124         * testsuite/23_containers/map/operators/1_neg.cc: Likewise.
1125
1126 2010-02-09  Benjamin Kosnik  <bkoz@redhat.com>
1127
1128         * include/std/streambuf: Adjust doxygen group markup.
1129         * include/std/functional: Same.
1130         * include/ext/vstring.h: Same.
1131         * include/ext/pb_ds/assoc_container.hpp: Same.
1132         * include/ext/stdio_filebuf.h: Same.
1133         * include/ext/stdio_sync_filebuf.h: Same.
1134         * include/bits/localefwd.h: Same.
1135         * include/bits/functional_hash.h: Same.
1136         * include/bits/locale_classes.h: Same.
1137         * include/bits/locale_facets.h: Same.
1138         * include/bits/ios_base.h: Same.
1139         * include/bits/codecvt.h: Same.
1140         * include/bits/locale_facets_nonio.h: Same.
1141
1142         * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
1143         * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
1144
1145 2010-02-08  Benjamin Kosnik  <bkoz@redhat.com>
1146
1147         PR libstdc++/42460
1148         * include/tr1_impl/regex: Fix quoting issues in doxygen markup.
1149         * include/bits/random.h: Fix multi-line doxygen function markup.
1150
1151 2010-02-08  Matthias Klose  <doko@debian.org>
1152
1153         PR libstdc++/42460
1154         * include/std/istream: Fix '\' quoting in doxygen markup.
1155
1156 2010-02-08  Ed Smith-Rowland  <3dw4rd@verizon.net>
1157
1158         * include/bits/random.tcc (uniform_int_distribution<>::
1159         operator()(_UniformRandomNumberGenerator&, const param_type&)):
1160         Use make_unsigned instead of __add_unsigned and conditional
1161         instead of __conditional_type.
1162         * include/std/random: Do not include <ext/type_traits.h> and
1163         <ext/numeric_traits.h>.
1164
1165 2010-02-07  Paolo Carlini  <paolo.carlini@oracle.com>
1166
1167         PR libstdc++/16896
1168         * include/bits/stl_list.h (_List_node_base::transfer): Rename
1169         to _M_transfer.
1170         (_List_node_base::reverse): Rename to _M_reverse.
1171         (_List_node_base::hook): Rename to _M_hook.
1172         (_List_node_base::unhook): Rename to _M_unhook; adjust callers.
1173         * include/bits/list.tcc: Adjust callers.
1174         * src/list.cc: Adjust.
1175         * src/compatibility.cc: Likewise.
1176         * src/compatibility-list.cc: New.
1177         * src/compatibility-debug_list.cc: Likewise.
1178         * src/compatibility-parallel_list.cc: Likewise.
1179         * src/Makefile.am: Add.
1180         * src/Makefile.in: Regenerate.
1181         * config/abi/pre/gnu.ver: Export _M_* symbols.
1182
1183         * src/hash.cc: Rename to hash-aux.cc.
1184         * src/compatibility-ldbl.cc: Adjust.
1185         * src/compatibility-c++0x.cc: Likewise.
1186         * src/hash_tr1.cc: Likewise.
1187
1188         * src/hashtable.cc: Rename to hashtable-aux.cc.
1189         * src/hashtable_c++0x.cc: Adjust.
1190         * src/hashtable_tr1.cc: Likewise.
1191
1192         * src/limits_c++0x.cc: Fold...
1193         * src/limits.cc... here.
1194
1195 2010-02-07  Paolo Carlini  <paolo.carlini@oracle.com>
1196
1197         * include/bits/stl_pair.h (pair<>::pair(_U1&&, const _T2&),
1198         pair<>::pair(const _T1&, _U2&&), pair<>::pair(_U1&&, _U2&&)):
1199         Revert to std::is_convertible, basing on DR 811.
1200
1201 2010-02-06  Paolo Carlini  <paolo.carlini@oracle.com>
1202
1203         PR libstdc++/42989
1204         * config/abi/pre/gnu.ver: Fix wstring move assignment operator typo.
1205
1206 2010-02-06  Paolo Carlini  <paolo.carlini@oracle.com>
1207
1208         PR libstdc++/27340
1209         * include/bits/valarray_before.h: Uglify the structs wrapping
1210         cmath functions differently, eg, _Cos instead of __cos.
1211         * include/bits/valarray_after.h: Adjust.
1212
1213 2010-02-05  Paolo Carlini  <paolo.carlini@oracle.com>
1214
1215         * include/std/future (swap(packaged_task<>&, packaged_task<>&)): Fix
1216         typo in last commit.
1217
1218 2010-02-05  Paolo Carlini  <paolo.carlini@oracle.com>
1219
1220         * include/std/future (swap(packaged_task<>&, packaged_task<>&),
1221         swap(promise<>&, promise<>&)): Add; minor formatting fixes.
1222         * testsuite/30_threads/packaged_task/cons/assign_neg.cc: Adjust
1223         dg-error line number.
1224         * testsuite/30_threads/packaged_task/cons/copy_neg.cc: Likewise.
1225         * testsuite/30_threads/promise/cons/assign_neg.cc: Likewise.
1226         * testsuite/30_threads/promise/cons/copy_neg.cc: Likewise.
1227
1228 2010-02-05  Paolo Carlini  <paolo.carlini@oracle.com>
1229
1230         * include/bits/stl_algobase.h (struct __iter_base): Rename to
1231         _Iter_base; add iterator_type typedef.
1232         (struct __miter_base): Rename to _Miter_base.
1233         (struct __niter_base): Rename to _Niter_base.
1234         (__miter_base, __niter_base): Add, use the latter; adjust everywhere.
1235
1236 2010-02-04  Benjamin Kosnik  <bkoz@redhat.com>
1237
1238         PR libstdc++/42460
1239         * doc/doxygen/user.cfg.in: Update file list.
1240         * include/debug/safe_sequence.h: Doxygen markup fixes for '' and "".
1241         * include/debug/safe_base.h: Same.
1242         * include/debug/macros.h: Same.
1243         * include/tr1_impl/regex: Same.
1244         * include/std/iostream: Same.
1245         * include/std/streambuf: Same.
1246         * include/std/bitset: Same.
1247         * include/std/iosfwd: Same.
1248         * include/std/limits: Same.
1249         * include/std/fstream: Same.
1250         * include/std/istream: Same.
1251         * include/std/ostream: Same.
1252         * include/std/sstream: Same.
1253         * include/parallel/multiway_merge.h: Same.
1254         * include/parallel/for_each.h: Same.
1255         * include/parallel/workstealing.h: Same.
1256         * include/parallel/omp_loop_static.h: Same.
1257         * include/parallel/omp_loop.h: Same.
1258         * include/c_std/csignal: Same.
1259         * include/c_std/cstdlib: Same.
1260         * include/c_std/cstdio: Same.
1261         * include/c_std/cstdarg: Same.
1262         * include/c_std/cctype: Same.
1263         * include/c_std/cerrno: Same.
1264         * include/c_std/cmath: Same.
1265         * include/c_std/ciso646: Same.
1266         * include/c_std/ctime: Same.
1267         * include/c_std/clocale: Same.
1268         * include/c_std/climits: Same.
1269         * include/c_std/cassert: Same.
1270         * include/c_std/csetjmp: Same.
1271         * include/c_std/cwchar: Same.
1272         * include/c_std/cfloat: Same.
1273         * include/c_std/cstring: Same.
1274         * include/c_std/cstddef: Same.
1275         * include/c_std/cwctype: Same.
1276         * include/profile/iterator_tracker.h: Same.
1277         * include/profile/impl/profiler_trace.h: Same.
1278         * include/ext/vstring.h: Same.
1279         * include/ext/algorithm: Same.
1280         * include/ext/pb_ds/detail/pat_trie_/pat_trie_.h.pp: Same.
1281         * include/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.h.pp: Same.
1282         * include/ext/pb_ds/detail/type_utils.hpp: Same.
1283         * include/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp: Same
1284         * include/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp: Same.
1285         * include/ext/rc_string_base.h: Same.
1286         * include/ext/stdio_sync_filebuf.h: Same.
1287         * include/ext/functional: Same.
1288         * include/ext/mt_allocator.h: Same.
1289         * include/bits/basic_ios.h: Same.
1290         * include/bits/stl_map.h: Same.
1291         * include/bits/stl_algobase.h: Same.
1292         * include/bits/stl_queue.h: Same.
1293         * include/bits/locale_classes.h: Same.
1294         * include/bits/stl_set.h: Same.
1295         * include/bits/locale_facets.h: Same.
1296         * include/bits/stl_stack.h: Same.
1297         * include/bits/stl_iterator_base_types.h: Same.
1298         * include/bits/basic_string.h: Same.
1299         * include/bits/stl_multimap.h: Same.
1300         * include/bits/ios_base.h: Same.
1301         * include/bits/stl_deque.h: Same.
1302         * include/bits/stl_multiset.h: Same.
1303         * include/bits/stl_iterator_base_funcs.h: Same.
1304         * include/bits/char_traits.h: Same.
1305         * include/bits/stl_algo.h: Same.
1306         * include/bits/stl_iterator.h: Same.
1307         * include/bits/stl_tempbuf.h: Same.
1308         * include/bits/random.tcc: Same.
1309         * include/bits/stl_function.h: Same.
1310         * include/bits/cpp_type_traits.h: Same.
1311         * include/bits/random.h: Same.
1312         * include/bits/allocator.h: Same.
1313         * include/bits/locale_facets_nonio.h: Same.
1314         * include/c_global/csignal: Same.
1315         * include/c_global/cstdlib: Same.
1316         * include/c_global/cstdio: Same.
1317         * include/c_global/cstdarg: Same.
1318         * include/c_global/cctype: Same.
1319         * include/c_global/cerrno: Same.
1320         * include/c_global/cmath: Same.
1321         * include/c_global/ciso646: Same.
1322         * include/c_global/ctime: Same.
1323         * include/c_global/clocale: Same.
1324         * include/c_global/climits: Same.
1325         * include/c_global/cassert: Same.
1326         * include/c_global/csetjmp: Same.
1327         * include/c_global/cwchar: Same.
1328         * include/c_global/cfloat: Same.
1329         * include/c_global/cstring: Same.
1330         * include/c_global/cstddef: Same.
1331         * include/c_global/cwctype: Same.
1332         * include/tr1/hypergeometric.tcc: Same.
1333         * include/tr1/random.tcc: Same.
1334         * include/tr1/functional: Same.
1335         * include/tr1/random.h: Same.
1336         * include/backward/auto_ptr.h: Same.
1337         * include/backward/binders.h: Same.
1338         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
1339         Adjust line numbers.
1340         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Same.
1341         * testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc:
1342         Same.
1343         * testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc:
1344         Same.
1345
1346 2010-02-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
1347
1348         * include/std/condition_variable (condition_variable_any): Provide
1349         definitions for all members.
1350         * src/condition_variable.cc (condition_variable_any): Adjust
1351         definitions.
1352         * config/abi/pre/gnu.ver: Adjust exports for condition_variable_any.
1353         * testsuite/30_threads/condition_variable_any/cons/assign_neg.cc:
1354         Adjust dg-error line number.
1355         * testsuite/30_threads/condition_variable_any/cons/copy_neg.cc:
1356         Likewise.
1357         * testsuite/30_threads/condition_variable_any/members/1.cc: New.
1358         * testsuite/30_threads/condition_variable_any/members/2.cc: New.
1359         * testsuite/30_threads/condition_variable_any/requirements/
1360         standard_layout.cc: Remove.
1361         * testsuite/30_threads/condition_variable_any/native_handle/
1362         typesizes.cc: Remove.
1363
1364 2010-02-02  Paolo Carlini  <paolo.carlini@oracle.com>
1365
1366         * include/ext/vstring.h (__versa_string::shrink_to_fit): Fix
1367         for -fno-exceptions.
1368
1369 2010-02-02  Benjamin Kosnik  <bkoz@redhat.com>
1370
1371         * include/bits/allocator.h: Fix for -fno-exceptions.
1372         * include/bits/basic_string.h (basic_string::shrink_to_fit): Same.
1373
1374 2010-02-02  Paolo Carlini  <paolo.carlini@oracle.com>
1375
1376         * testsuite/30_threads/unique_future: Rename to /future.
1377
1378 2010-02-01  Paolo Carlini  <paolo.carlini@oracle.com>
1379
1380         PR libstdc++/42408
1381         * include/bits/random.h (linear_congruential_engine<>::
1382         linear_congruential_engine(seed_seq&),
1383         linear_congruential_engine<>::seed(seed_seq&),
1384         mersenne_twister<>::mersenne_twister(seed_seq&),
1385         mersenne_twister<>::seed(seed_seq&),
1386         subtract_with_carry_engine<>::subtract_with_carry_engine(seed_seq&),
1387         subtract_with_carry_engine<>::seed(seed_seq&),
1388         discard_block_engine<>::discard_block_engine(seed_seq&),
1389         discard_block_engine<>::seed(seed_seq&),
1390         independent_bits_engine<>::independent_bits_engine(seed_seq&),
1391         independent_bits_engine<>::seed(seed_seq&),
1392         shuffle_order_engine<>::shuffle_order_engine(seed_seq&),
1393         shuffle_order_engine<>::seed(seed_seq&)): Templatize.
1394         * include/bits/random.tcc: Adjust.
1395         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
1396         seed_seq.cc: New.
1397         * testsuite/26_numerics/random/mersenne_twister_engine/cons/
1398         seed_seq.cc: Likewise.
1399         * testsuite/26_numerics/random/linear_congruential_engine/
1400         cons/seed_seq.cc: Likewise.
1401
1402 2010-02-01  Paolo Carlini  <paolo.carlini@oracle.com>
1403
1404         * include/bits/forward_list.h (forward_list<>::resize(size_type),
1405         forward_list(size_type)): Only declare.
1406         * include/bits/forward_list.tcc (forward_list<>::resize(size_type),
1407         forward_list(size_type)): Define, don't assume CopyConstructible.
1408         * testsuite/23_containers/forward_list/cons/10.cc: New.
1409         * testsuite/23_containers/forward_list/modifiers/6.cc: Likewis.
1410         * testsuite/23_containers/forward_list/requirements/dr438/
1411         assign_neg.cc: Adjust dg-error line numbers.
1412         * testsuite/23_containers/forward_list/requirements/dr438/
1413         insert_neg.cc: Likewise.
1414         * testsuite/23_containers/forward_list/requirements/dr438/
1415         constructor_1_neg.cc: Likewise.
1416         * testsuite/23_containers/forward_list/requirements/dr438/
1417         constructor_2_neg.cc: Likewise.
1418
1419         * include/bits/forward_list.h: Use _M_get_Node_allocator throughout.
1420
1421 2010-01-31  Paolo Carlini  <paolo.carlini@oracle.com>
1422
1423         * testsuite/23_containers/array/requirements/exception/
1424         generation_prohibited.c: Remove, swap can indeed throw (DR 774).
1425
1426         * testsuite/util/exception/safety.h (insert_base<__versa_string>): Fix.
1427         * testsuite/util/testsuite_container_traits.h
1428         (traits<__versa_string>): Enable insert tests.
1429
1430 2010-01-31  Paolo Carlini  <paolo.carlini@oracle.com>
1431
1432         * include/bits/forward_list.h (forward_list<>::insert_after
1433         (const_iterator, size_type, const _Tp&), insert_after(const_iterator,
1434         _InputIterator, _InputIterator), insert_after(const_iterator,
1435         std::initializer_list<>)): Fix return type per N3000.
1436         * testsuite/23_containers/forward_list/ext_pointer/modifiers/2.cc:
1437         Adjust.
1438         * testsuite/23_containers/forward_list/modifiers/2.cc: Likewise.
1439         * testsuite/23_containers/forward_list/requirements/dr438/
1440         assign_neg.cc: Adjust dg-error line numbers.
1441         * testsuite/23_containers/forward_list/requirements/dr438/
1442         insert_neg.cc: Likewise.
1443         * testsuite/23_containers/forward_list/requirements/dr438/
1444         constructor_1_neg.cc: Likewise.
1445         * testsuite/23_containers/forward_list/requirements/dr438/
1446         constructor_2_neg.cc: Likewise.
1447
1448 2010-01-31  Paolo Carlini  <paolo.carlini@oracle.com>
1449
1450         Revert last changes. Also revert, among the previous changes:
1451         * include/std/condition_variable (condition_variable_any::
1452         wait<>(_Lock&)): Provide definition.
1453
1454 2010-01-29  Paolo Carlini  <paolo.carlini@oracle.com>
1455
1456         * include/std/condition_variable (condition_variable_any::
1457         __wait_until_impl): Add.
1458         (condition_variable_any::wait_until): Provide definitions.
1459         * testsuite/30_threads/condition_variable_any/members/2.cc: New.
1460         * testsuite/30_threads/condition_variable_any/cons/assign_neg.cc:
1461         Adjust dg-error line number.
1462         * testsuite/30_threads/condition_variable_any/cons/copy_neg.cc:
1463         Likewise.
1464
1465         * testsuite/30_threads/condition_variable/members/1.cc: Minor
1466         stylistic changes.
1467         * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
1468
1469 2010-01-29  Paolo Carlini  <paolo.carlini@oracle.com>
1470
1471         * include/std/condition_variable (enum class cv_status): Add and
1472         use it throughout, per N3000.
1473         (condition_variable_any::wait<>(_Lock&), wait<>(_Lock&, _Predicate),
1474         wait_until<>(_Lock&, const chrono::time_point<>&, _Predicate)):
1475         Provide definitions.
1476         * src/condition_variable.cc (condition_variable_any::notify_one,
1477         condition_variable_any::notify_all): Likewise.
1478         * config/abi/pre/gnu.ver: Export.
1479         * testsuite/30_threads/condition_variable_any/requirements/
1480         typedefs.cc: New.
1481         * testsuite/30_threads/condition_variable_any/requirements/
1482         standard_layout.cc: Likewise.
1483         * testsuite/30_threads/condition_variable/members/1.cc: Adjust.
1484         * testsuite/30_threads/condition_variable/members/2.cc: Likewise.
1485         * testsuite/30_threads/condition_variable/cons/assign_neg.cc: Adjust
1486         dg-error line numbers.
1487         * testsuite/30_threads/condition_variable/cons/copy_neg.cc: Likewise.
1488         * testsuite/30_threads/condition_variable_any/cons/assign_neg.cc:
1489         Likewise.
1490         * testsuite/30_threads/condition_variable_any/cons/copy_neg.cc:
1491         Likewise.
1492
1493 2010-01-28  François Dumont  <francois.cppdevs@free.fr>
1494
1495         * include/bits/stl_algobase.h (struct __iter_base): Add.
1496         (__niter_base, __miter_base): Adjust, use the latter.
1497
1498 2010-01-28  Paolo Carlini  <paolo.carlini@oracle.com>
1499
1500         * testsuite/21_strings/basic_string/element_access/char/21674.cc:
1501         Extend xfail to all systems.
1502         * testsuite/21_strings/basic_string/element_access/wchar_T/21674.cc:
1503         Likewise.
1504         * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
1505         Extend xfail to darwin10 systems.
1506
1507 2010-01-27  Benjamin Kosnik  <bkoz@redhat.com>
1508
1509         PR c++/42346
1510         * testsuite/23_containers/unordered_map/requirements/exception/: Remove
1511         -O1 workaround.
1512         * testsuite/23_containers/multimap/requirements/exception/: Same.
1513         * testsuite/23_containers/map/requirements/exception: Same.
1514
1515 2010-01-27  Richard Guenther  <rguenther@suse.de>
1516
1517         PR libstdc++/42832
1518         * include/std/functional (function<>::swap): Perform bytewise
1519         swap of _M_functor.
1520         * include/tr1/functional (function<>::swap): Likewise.
1521
1522 2010-01-27  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
1523
1524         * config/abi/pre/gnu.ver: Avoid time_get pattern conflicts.
1525
1526 2010-01-26  François Dumont  <francois.cppdevs@free.fr>
1527
1528         * doc/xml/manual/allocator.xml: Minor updates and fixes.
1529         * doc/xml/manual/containers.xml: Likewise.
1530         * doc/xml/manual/using.xml: Likewise.
1531         * doc/xml/manual/locale.xml: Likewise.
1532         * doc/xml/manual/appendix_contributing.xml: Likewise.
1533
1534 2010-01-26  Daniel Frey  <d.frey@gmx.de>
1535
1536         * include/std/functional: Use enable_if instead of __enable_if
1537         throughout, do not include ext/type_traits.h.
1538         (is_placeholder, is_bind_expression): Use integral_constant.
1539
1540 2010-01-25  Paolo Carlini  <paolo.carlini@oracle.com>
1541
1542         * testsuite/util/testsuite_common_types.h (has_bitwise_operators):
1543         Avoid -Wall warnings.
1544
1545 2010-01-25  Paolo Carlini  <paolo.carlini@oracle.com>
1546
1547         * testsuite/22_locale/time_get/get_monthname/char/6.cc: Use an int
1548         as loop variable, to avoid -Wall warnings.
1549         * testsuite/22_locale/time_get/get_monthname/wchar_t/6.cc: Likewise.
1550         * testsuite/22_locale/time_get/get_weekday/char/6.cc: Likewise.
1551         * testsuite/22_locale/time_get/get_weekday/wchar_t/6.cc: Likewise.
1552         * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.
1553
1554         * testsuite/20_util/reference_wrapper/24803.cc: Remove unused vars.
1555         * testsuite/20_util/reference_wrapper/invoke.cc: Likewise.
1556
1557 2010-01-22  Daniel Frey  <d.frey@gmx.de>
1558
1559         * include/std/functional (_Index_tuple, _Build_index_tuple):
1560         Simplify and speed-up.
1561
1562 2010-01-22  Joern Rennecke  <amylaar@spamcop.net>
1563
1564         PR libstdc++/36101, PR libstdc++/42813
1565         * acinclude.m4 (enable_parallel): Test ${TARGET_CONFIGDIRS} instead of
1566         looking for omp.h.
1567         * configure: Regenerate.
1568
1569 2010-01-21  Jonathan Wakely  <jwakely.gcc@gmail.com>
1570
1571         PR libstdc++/42201
1572         * include/std/future: Update to latest WP.
1573         * src/functexcept.cc (__throw_future_error): Use make_error_code.
1574         * testsuite/30_threads/async/any.cc: New.
1575         * testsuite/30_threads/async/async.cc: New.
1576         * testsuite/30_threads/async/sync.cc: New.
1577         * testsuite/30_threads/packaged_task/cons/alloc.cc: New.
1578         * testsuite/30_threads/packaged_task/cons/assign_neg.cc: Adjust.
1579         * testsuite/30_threads/packaged_task/cons/copy_neg.cc: Adjust.
1580         * testsuite/30_threads/packaged_task/members/get_future.cc: Adjust.
1581         * testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise.
1582         * testsuite/30_threads/packaged_task/members/invoke.cc: Adjust.
1583         * testsuite/30_threads/packaged_task/members/invoke2.cc: Adjust.
1584         * testsuite/30_threads/packaged_task/members/invoke3.cc: Adjust.
1585         * testsuite/30_threads/packaged_task/members/invoke4.cc: Adjust.
1586         * testsuite/30_threads/packaged_task/members/reset.cc: Adjust.
1587         * testsuite/30_threads/packaged_task/members/reset2.cc: Adjust.
1588         * testsuite/30_threads/shared_future/cons/assign_neg.cc: Remove.
1589         * testsuite/30_threads/shared_future/cons/default_neg.cc: Remove.
1590         * testsuite/30_threads/shared_future/cons/default.cc: New.
1591         * testsuite/30_threads/shared_future/cons/assign.cc: New.
1592         * testsuite/30_threads/shared_future/cons/copy.cc: Adjust.
1593         * testsuite/30_threads/shared_future/cons/move.cc: Adjust.
1594         * testsuite/30_threads/shared_future/cons/move_assign.cc: New.
1595         * testsuite/30_threads/shared_future/members/is_ready.cc: Remove.
1596         * testsuite/30_threads/shared_future/members/has_value.cc: Remove.
1597         * testsuite/30_threads/shared_future/members/has_exception.cc: Remove.
1598         * testsuite/30_threads/shared_future/members/valid.cc: New.
1599         * testsuite/30_threads/unique_future/cons/default_neg.cc: Remove.
1600         * testsuite/30_threads/unique_future/cons/default.cc: New.
1601         * testsuite/30_threads/unique_future/cons/move_assign.cc: New.
1602         * testsuite/30_threads/unique_future/cons/assign_neg.cc: Adjust.
1603         * testsuite/30_threads/unique_future/cons/copy_neg.cc: Adjust.
1604         * testsuite/30_threads/unique_future/cons/move.cc: Adjust.
1605         * testsuite/30_threads/unique_future/requirements/
1606         explicit_instantiation.cc: Adjust.
1607         * testsuite/30_threads/unique_future/members/is_ready.cc: Remove.
1608         * testsuite/30_threads/unique_future/members/has_value.cc: Remove.
1609         * testsuite/30_threads/unique_future/members/has_exception.cc: Remove.
1610         * testsuite/30_threads/unique_future/members/valid.cc: New.
1611         * testsuite/30_threads/unique_future/members/get.cc: Adjust.
1612         * testsuite/30_threads/unique_future/members/get2.cc: Adjust.
1613         * testsuite/30_threads/unique_future/members/wait.cc: Adjust.
1614         * testsuite/30_threads/unique_future/members/wait_for.cc: Adjust.
1615         * testsuite/30_threads/unique_future/members/wait_until.cc: Adjust.
1616         * testsuite/30_threads/headers/future/types_std_c++0x.cc: Adjust.
1617         * testsuite/30_threads/promise/cons/alloc.cc: New.
1618         * testsuite/30_threads/promise/cons/assign_neg.cc: Adjust.
1619         * testsuite/30_threads/promise/cons/copy_neg.cc: Adjust.
1620         * testsuite/30_threads/promise/cons/move.cc: Adjust.
1621         * testsuite/30_threads/promise/cons/move_assign.cc: Adjust.
1622         * testsuite/30_threads/promise/members/get_future.cc: Adjust.
1623         * testsuite/30_threads/promise/members/set_value.cc: Adjust.
1624         * testsuite/30_threads/promise/members/set_exception.cc: Adjust.
1625         * testsuite/30_threads/promise/members/set_exception2.cc: Adjust.
1626         * testsuite/30_threads/promise/members/set_value2.cc: Adjust.
1627         * testsuite/30_threads/promise/members/set_value3.cc: Adjust.
1628         * testsuite/30_threads/promise/members/swap.cc: Adjust.
1629
1630 2010-01-20  Janis Johnson  <janis187@us.ibm.com>
1631             Paolo Carlini  <paolo.carlini@oracle.com>
1632
1633         PR libstdc++/21769
1634         * testsuite/lib/dg-options.exp (add_options_for_no_pch): Add.
1635         * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
1636         Use it.
1637
1638 2010-01-19  Johannes Singler  <singler@kit.edu>
1639
1640         PR libstdc++/42712
1641         * include/parallel/settings.h (_Settings): Add search_minimal_n.
1642         * include/parallel/algo.h (__search_switch):
1643         Add serial fallback for too small inputs.
1644         (__search_n_switch): Likewise.  Call serial fallback on higher level
1645         to gain special treatment for __count 0 or 1.
1646         * testsuite/25_algorithms/search_n/iterator.cc:
1647         Reenable full test depth for parallel mode.
1648
1649 2010-01-18  Daniel Frey  <d.frey@gmx.de>
1650
1651         * include/std/functional (_Bind<_Functor(_Bound_args...)>::
1652         operator()): "Pass" _Result to __call*.
1653         (_Bind<_Functor(_Bound_args...)>::__call*): Adjust, simplify.
1654
1655 2010-01-18  Johannes Singler  <singler@kit.edu>
1656
1657         * include/parallel/base.h (__unary_negate): Correct comment.
1658
1659 2010-01-16  Paolo Carlini  <paolo.carlini@oracle.com>
1660
1661         * include/std/functional (_Bind<_Functor(_Bound_args...)>::__call):
1662         Rename const version to __call_c and remove _Sfinae template
1663         parameter.
1664         (_Bind<_Functor(_Bound_args...)>::operator()): Adjust.
1665
1666         * include/std/functional: Pass everywhere temporary tuple<_Args...>
1667         arguments by rvalue reference.
1668
1669         * testsuite/20_util/bind/cv_quals.cc: New.
1670
1671         * testsuite/20_util/bind/ref2.cc: Add missing test variables.
1672
1673 2010-01-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1674
1675         PR libstdc++/35942
1676         * configure.ac: Remove -lstdc++ from libtool's postdeps_CXX.
1677         * configure: Regenerate.
1678
1679 2010-01-15  Phil Muldoon  <pmuldoon@redhat.com>
1680
1681         * python/libstdcxx/v6/printers.py (StdStringPrinter.__init__):
1682         Remove encoding argument.
1683         (StdStringPrinter.to_string): Do not compute or pass encoding.
1684         Use lazy_string over string function.
1685
1686 2010-01-14  Paolo Carlini  <paolo.carlini@oracle.com>
1687
1688         * include/c_std/cstring (memchr): Forward to the builtin.
1689         * include/c_std/cstring: Remove redundant casts; use names consistent
1690         with the letter of the Standard.
1691         * include/c_global/cstring: Likewise.
1692
1693 2010-01-13  Benjamin Kosnik  <bkoz@redhat.com>
1694
1695         * include/profile/iterator_tracker.h: Add copyright.
1696
1697 2010-01-13  Paolo Carlini  <paolo.carlini@oracle.com>
1698
1699         * testsuite/Makefile.am (check-debug): Add.
1700         * testsuite/Makefile.in: Regenerate.
1701         * config.h.in: Likewise.
1702
1703 2010-01-12  Paolo Carlini  <paolo.carlini@oracle.com>
1704
1705         * testsuite/17_intro/using_namespace_std_tr1_neg.cc: Do not run
1706         in parallel-mode.
1707         * testsuite/25_algorithms/inplace_merge/moveable.cc: Likewiwse.
1708         * testsuite/25_algorithms/rotate/moveable.cc: Likewiwse.
1709         * testsuite/25_algorithms/stable_partition/moveable.cc: Likewiwse.
1710         * testsuite/25_algorithms/remove/moveable.c: Likewiwse.
1711         * testsuite/25_algorithms/random_shuffle/moveable.cc: Likewiwse.
1712         * testsuite/25_algorithms/nth_element/moveable.cc: Likewiwse.
1713         * testsuite/25_algorithms/partial_sort/moveable.cc: Likewiwse.
1714         * testsuite/25_algorithms/next_permutation/moveable.cc: Likewiwse.
1715         * testsuite/25_algorithms/partition/moveable.cc: Likewiwse.
1716         * testsuite/25_algorithms/stable_sort/moveable.cc: Likewiwse.
1717         * testsuite/25_algorithms/stable_sort/moveable2.cc: Likewiwse.
1718         * testsuite/25_algorithms/sort/moveable.cc: Likewiwse.
1719         * testsuite/25_algorithms/prev_permutation/moveable.cc: Likewiwse.
1720         * testsuite/25_algorithms/unique/moveable.cc: Likewiwse.
1721         * testsuite/25_algorithms/remove_if/moveable.cc: Likewiwse.
1722         * testsuite/25_algorithms/heap/moveable.cc: Likewiwse.
1723
1724         * testsuite/25_algorithms/search_n/iterator.cc: Reduce iteration #
1725         in parallel-mode.
1726
1727 2010-01-12  Hans-Peter Nilsson  <hp@axis.com>
1728
1729         * testsuite/ext/profile/all.cc: Pass -D_GLIBCXX_PROFILE_NO_THREADS
1730         for non-tls_native targets.
1731
1732 2010-01-12  Benjamin Kosnik  <bkoz@redhat.com>
1733
1734         * scripts/run_doxygen: Correct nested scope on the man pages.
1735         * doc/xml/faq.xml: Edits, linkcheck, doxygen link reassociate.
1736         * doc/xml/manual/mt_allocator.xml: Same.
1737         * doc/xml/manual/allocator.xml: Same.
1738         * doc/xml/manual/codecvt.xml: Same.
1739         * doc/xml/manual/backwards_compatibility.xml: Same.
1740         * doc/xml/manual/concurrency.xml: Same.
1741         * doc/xml/manual/parallel_mode.xml: Same.
1742         * doc/xml/manual/io.xml: Same.
1743         * doc/xml/manual/support.xml: Same.
1744         * doc/xml/manual/evolution.xml: Same.
1745         * doc/xml/manual/using.xml: Same.
1746         * doc/xml/manual/extensions.xml: Same.
1747         * doc/xml/manual/appendix_contributing.xml: Same.
1748         * doc/xml/manual/prerequisites.xml: Same.
1749         * doc/xml/manual/diagnostics.xml: Same.
1750         * doc/xml/manual/spine.xml: Same.
1751         * doc/xml/manual/status_cxx200x.xml: Same.
1752         * doc/xml/manual/test.xml: Same.
1753         * doc/xml/spine.xml: Same.
1754         * doc/html/*: Regenerate.
1755
1756         * include/profile/impl/profiler.h: Remove duplicate markup.
1757
1758 2010-01-12  Jonathan Wakely  <jwakely.gcc@gmail.com>
1759
1760         PR libstdc++/24803
1761         PR libstdc++/35569
1762         PR libstdc++/42593
1763         * include/std/functional (bind): Forward rvalues and detect correct
1764         result type of bound function object.
1765         * include/std/mutex (call_once): Specify bind result type.
1766         * testsuite/20_util/reference_wrapper/invoke.cc: Remove invalid tests.
1767         * testsuite/20_util/reference_wrapper/24803.cc: Remove invalid tests
1768         and enable FIXME tests.
1769         * testsuite/20_util/bind/35569.cc: New.
1770         * testsuite/20_util/bind/ref2.cc: New.
1771         * testsuite/20_util/bind/38889.cc: New.
1772         * testsuite/20_util/bind/ref_neg.cc: New.
1773         * testsuite/20_util/bind/42593.cc: New.
1774
1775 2010-01-11  Paolo Carlini  <paolo.carlini@oracle.com>
1776
1777         * include/parallel/base.h (decode2): Rename to __decode2.
1778         (binder2nd): Likewise to __binder2nd.
1779         * include/parallel/quicksort.h: Adjust callers.
1780         * include/parallel/balanced_quicksort.h: Likewise.
1781         * include/parallel/partition.h: Likewise.
1782         * include/parallel/queue.h: Likewise.
1783
1784         * include/parallel/algo.h: Qualify with std:: binder2nd use.
1785
1786 2010-01-10  Paolo Carlini  <paolo.carlini@oracle.com>
1787
1788         * include/debug/string (basic_string<>::basic_string(basic_string&&),
1789         operator=(basic_string&&), assign(basic_string&&)): Add.
1790
1791         * include/debug/string: Fully qualify initializer_list with std; fix
1792         _Allocator misspellings as _Alloc.
1793
1794 2010-01-10  Paolo Carlini  <paolo.carlini@oracle.com>
1795
1796         * include/bits/basic_string.h (basic_string<>::
1797         basic_string(basic_string&&), operator=(basic_string&&),
1798         assign(basic_string&&)): Add.
1799         * config/abi/pre/gnu.ver: Export new symbols.
1800         * include/ext/vstring.h (__versa_string<>::assign(__versa_string&&)):
1801         Add.
1802         (operator=(__versa_string&&)): Don't call clear unnecessarily.
1803         * include/ext/rc_string_base.h (__rc_string_base<>::
1804         __rc_string_base(__rc_string_base&&)): Simplify a tad.
1805         * testsuite/21_strings/basic_string/cons/char/moveable.cc: New.
1806         * testsuite/21_strings/basic_string/cons/wchar_t/moveable.cc: Likewise.
1807         * testsuite/ext/vstring/assign/move_assign.cc: Likewise.
1808         * testsuite/21_strings/basic_string/assign/char/move_assign.cc:
1809         Likewise.
1810         * testsuite/21_strings/basic_string/assign/wchar_t/move_assign.cc:
1811         Likewise.
1812
1813         * testsuite/ext/vstring/cons/moveable.cc: Fix comment nit.
1814
1815 2010-01-10  Silvius Rus  <rus@google.com>
1816
1817         * configure.ac: Add detection of execinfo.h.
1818         * configure: Regenerate.
1819         * config.h.in: Likewise.
1820         * doc/xml/manual/profile_mode.xml: Add list_to_slist manual.
1821         Also, correct user interface mistakes.
1822         * include/Makefile.am: Add references to new include files.
1823         * include/Makefile.in: Regenerate.
1824         * include/backward/hash_map: Remove profile include.
1825         * include/backward/hash_set: Likewise.
1826         * include/profile/hashtable.h: Delete file.
1827         * include/profile/iterator_tracker.h: New file.
1828         * include/profile/vector: Add instrumentation for tracked iterator.
1829         * include/profile/list: Same.
1830         * include/profile/impl/profiler_list_to_slist.h: New file.
1831         * include/profile/impl/profiler_list_to_vector.h: Same.
1832         * include/profile/impl/profiler.h: Add list_to_slist and
1833         list_to_vector instrumentation hook interfaces.  Fixed broken
1834         diagnostic disabling mechanism.
1835         (_GLIBCXX_PROFILE_DEFINE_DATA,_GLIBCXX_PROFILE_DATA) New macros.
1836         (__reentrance_guard) Fix bug.
1837         * include/profile/impl/profiler_trace.h: Replace dummy templates
1838         with _GLIBCXX_PROFILE_DEFINE_DATA.
1839         * include/profile/impl/profiler_container_size.h: Same.
1840         * include/profile/impl/profiler_vector_size.h: Same.
1841         * include/profile/impl/profiler_hash_func.h: Same.
1842         * include/profile/impl/profiler_vector_to_list.h: Same.
1843         * include/profile/impl/profiler_map_to_unordered_map.h: Same.
1844         * include/profile/impl/profiler_hashtable_size.h: Same.
1845         * include/profile/impl/profiler_node.h: Same.
1846         * include/profile/impl/profiler_state.h: Same.  Also, remove
1847         class __state. Also, use __sync_val_compare_and_swap to set state.
1848
1849 2010-01-09  H.J. Lu  <hongjiu.lu@intel.com>
1850
1851         PR other/42230
1852         * testsuite/abi/pr42230.cc: New.
1853
1854 2010-01-09  Paolo Carlini  <paolo.carlini@oracle.com>
1855
1856         * include/debug/set.h: Revert last change, per DR 1204 [Ready];
1857         mention the latter in comment.
1858         * include/debug/unordered_map: Likewise.
1859         * include/debug/multiset.h: Likewise.
1860         * include/debug/vector: Likewise.
1861         * include/debug/unordered_set: Likewise.
1862         * include/debug/deque: Likewise.
1863         * include/debug/map.h: Likewise.
1864         * include/debug/list: Likewise.
1865         * include/debug/multimap.h: Likewise.
1866         * include/tr1_impl/unordered_map: Likewise.
1867         * include/tr1_impl/unordered_set: Likewise.
1868         * include/profile/set.h: Likewise.
1869         * include/profile/unordered_map: Likewise.
1870         * include/profile/multiset.h: Likewise.
1871         * include/profile/unordered_set: Likewise.
1872         * include/profile/vector: Likewise.
1873         * include/profile/deque: Likewise.
1874         * include/profile/map.h: Likewise.
1875         * include/profile/list: Likewise.
1876         * include/profile/multimap.h: Likewise.
1877         * include/ext/vstring.h: Likewise.
1878         * include/bits/stl_list.h: Likewise.
1879         * include/bits/stl_map.h: Likewise.
1880         * include/bits/stl_set.h: Likewise.
1881         * include/bits/stl_multimap.h: Likewise.
1882         * include/bits/stl_vector.h: Likewise.
1883         * include/bits/stl_deque.h: Likewise.
1884         * include/bits/stl_multiset.h: Likewise.
1885
1886         * include/bits/forward_list.h: Remove pre-existing check.
1887         * include/ext/vstring.h: Likewise.
1888
1889         * testsuite/ext/vstring/cons/self_move_assign.cc: Remove.
1890         * testsuite/23_containers/unordered_map/cons/self_move_assign.cc:
1891         Likewise.
1892         * testsuite/23_containers/multimap/cons/self_move_assign.cc: Likewise.
1893         * testsuite/23_containers/set/cons/self_move_assign.cc: Likewise.
1894         * testsuite/23_containers/unordered_multimap/cons/
1895         self_move_assign.cc: Likewise.
1896         * testsuite/23_containers/forward_list/cons/self_move_assign.cc:
1897         Likewise.
1898         * testsuite/23_containers/unordered_set/cons/self_move_assign.cc:
1899         Likewise.
1900         * testsuite/23_containers/vector/cons/self_move_assign.cc: Likewise.
1901         * testsuite/23_containers/deque/cons/self_move_assign.cc: Likewise.
1902         * testsuite/23_containers/multiset/cons/self_move_assign.cc: Likewise.
1903         * testsuite/23_containers/list/cons/self_move_assign.cc: Likewise.
1904         * testsuite/23_containers/unordered_multiset/cons/
1905         self_move_assign.cc: Likewise.
1906         * testsuite/23_containers/map/cons/self_move_assign.cc: Likewise.
1907
1908         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1909         Adjust dg-error line numbers.
1910         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1911         Likewise.
1912         * testsuite/23_containers/vector/requirements/dr438/
1913         constructor_1_neg.cc: Likewise.
1914         * testsuite/23_containers/vector/requirements/dr438/
1915         constructor_2_neg.cc: Likewise.
1916         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
1917         Likewise.
1918         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
1919         Likewise.
1920         * testsuite/23_containers/deque/requirements/dr438/
1921         constructor_1_neg.cc: Likewise.
1922         * testsuite/23_containers/forward_list/requirements/dr438/
1923         assign_neg.cc: Likewise.
1924         * testsuite/23_containers/forward_list/requirements/dr438/
1925         insert_neg.cc: Likewise.
1926         * testsuite/23_containers/forward_list/requirements/dr438/
1927         constructor_1_neg.cc: Likewise.
1928         * testsuite/23_containers/forward_list/requirements/dr438/
1929         constructor_2_neg.cc: Likewise.
1930         * testsuite/23_containers/deque/requirements/dr438/
1931         constructor_2_neg.cc: Likewise.
1932         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1933         Likewise.
1934         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1935         Likewise.
1936         * testsuite/23_containers/list/requirements/dr438/
1937         constructor_1_neg.cc: Likewise.
1938         * testsuite/23_containers/list/requirements/dr438/
1939         constructor_2_neg.cc: Likewise.
1940
1941 2010-01-08  Paolo Carlini  <paolo.carlini@oracle.com>
1942
1943         * include/debug/set.h: Protect move assignment operator vs self
1944         assignment.
1945         * include/debug/unordered_map: Likewise.
1946         * include/debug/multiset.h: Likewise.
1947         * include/debug/vector: Likewise.
1948         * include/debug/unordered_set: Likewise.
1949         * include/debug/deque: Likewise.
1950         * include/debug/map.h: Likewise.
1951         * include/debug/list: Likewise.
1952         * include/debug/multimap.h: Likewise.
1953         * include/tr1_impl/unordered_map: Likewise.
1954         * include/tr1_impl/unordered_set: Likewise.
1955         * include/profile/set.h: Likewise.
1956         * include/profile/unordered_map: Likewise.
1957         * include/profile/multiset.h: Likewise.
1958         * include/profile/unordered_set: Likewise.
1959         * include/profile/vector: Likewise.
1960         * include/profile/deque: Likewise.
1961         * include/profile/map.h: Likewise.
1962         * include/profile/list: Likewise.
1963         * include/profile/multimap.h: Likewise.
1964         * include/ext/vstring.h: Likewise.
1965         * include/bits/stl_list.h: Likewise.
1966         * include/bits/stl_map.h: Likewise.
1967         * include/bits/stl_set.h: Likewise.
1968         * include/bits/stl_multimap.h: Likewise.
1969         * include/bits/stl_vector.h: Likewise.
1970         * include/bits/stl_deque.h: Likewise.
1971         * include/bits/stl_multiset.h: Likewise.
1972         * include/ext/vstring.h: Use clear().
1973         * testsuite/ext/vstring/cons/self_move_assign.cc: New.
1974         * testsuite/23_containers/unordered_map/cons/self_move_assign.cc:
1975         Likewise.
1976         * testsuite/23_containers/multimap/cons/self_move_assign.cc: Likewise.
1977         * testsuite/23_containers/set/cons/self_move_assign.cc: Likewise.
1978         * testsuite/23_containers/unordered_multimap/cons/
1979         self_move_assign.cc: Likewise.
1980         * testsuite/23_containers/forward_list/cons/self_move_assign.cc:
1981         Likewise.
1982         * testsuite/23_containers/unordered_set/cons/self_move_assign.cc:
1983         Likewise.
1984         * testsuite/23_containers/vector/cons/self_move_assign.cc: Likewise.
1985         * testsuite/23_containers/deque/cons/self_move_assign.cc: Likewise.
1986         * testsuite/23_containers/multiset/cons/self_move_assign.cc: Likewise.
1987         * testsuite/23_containers/list/cons/self_move_assign.cc: Likewise.
1988         * testsuite/23_containers/unordered_multiset/cons/
1989         self_move_assign.cc: Likewise.
1990         * testsuite/23_containers/map/cons/self_move_assign.cc: Likewise.
1991
1992         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1993         Adjust dg-error line numbers.
1994         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1995         Likewise.
1996         * testsuite/23_containers/vector/requirements/dr438/
1997         constructor_1_neg.cc: Likewise.
1998         * testsuite/23_containers/vector/requirements/dr438/
1999         constructor_2_neg.cc: Likewise.
2000         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
2001         Likewise.
2002         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
2003         Likewise.
2004         * testsuite/23_containers/deque/requirements/dr438/
2005         constructor_1_neg.cc: Likewise.
2006         * testsuite/23_containers/deque/requirements/dr438/
2007         constructor_2_neg.cc: Likewise.
2008         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2009         Likewise.
2010         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
2011         Likewise.
2012         * testsuite/23_containers/list/requirements/dr438/
2013         constructor_1_neg.cc: Likewise.
2014         * testsuite/23_containers/list/requirements/dr438/
2015         constructor_2_neg.cc: Likewise.
2016
2017         * testsuite/ext/vstring/moveable.cc: Move to...
2018         * testsuite/ext/vstring/cons/moveable.cc: ... here.
2019         * testsuite/23_containers/unordered_map/moveable.cc: Move to...
2020         * testsuite/23_containers/unordered_map/cons/moveable.cc ... here.
2021         * testsuite/23_containers/multimap/moveable.cc: Move to...
2022         * testsuite/23_containers/multimap/cons/moveable.cc: ... here.
2023         * testsuite/23_containers/set/moveable.cc: Move to...
2024         * testsuite/23_containers/set/cons/moveable.cc: ... here.
2025         * testsuite/23_containers/unordered_multimap/moveable.cc: Move to...
2026         * testsuite/23_containers/unordered_multimap/cons/moveable.cc:
2027         ... here.
2028         * testsuite/23_containers/forward_list/moveable.cc: Move to...
2029         * testsuite/23_containers/forward_list/cons/moveable.cc: ... here.
2030         * testsuite/23_containers/unordered_set/moveable.cc Move to...
2031         * testsuite/23_containers/unordered_set/moveable.cc: ... here.
2032         * testsuite/23_containers/vector/cons/moveable.cc Move to...
2033         * testsuite/23_containers/vector/cons/moveable2.cc: ... this.
2034         * testsuite/23_containers/deque/cons/moveable.cc Move to...
2035         * testsuite/23_containers/deque/cons/moveable2.cc: ... this.
2036         * testsuite/23_containers/multiset/moveable.cc Move to...
2037         * testsuite/23_containers/multiset/cons/moveable.cc: ... here.
2038         * testsuite/23_containers/list/moveable.h Move to...
2039         * testsuite/23_containers/list/cons/moveable.h: ... here.
2040         * testsuite/23_containers/list/moveable.cc Move to...
2041         * testsuite/23_containers/list/cons/moveable.cc: ... here.
2042         * testsuite/23_containers/unordered_multiset/moveable.cc Move to...
2043         * testsuite/23_containers/unordered_multiset/cons/moveable.cc:
2044         ... here.
2045         * testsuite/23_containers/map/moveable.cc Move to...
2046         * testsuite/23_containers/map/cons/moveable.cc: ... here.
2047         * testsuite/23_containers/vector/moveable.cc: Move to...
2048         * testsuite/23_containers/vector/cons/moveable.cc: ... here.
2049         * testsuite/23_containers/deque/moveable.cc: Move to...
2050         * testsuite/23_containers/deque/cons/moveable.cc: ... here.
2051
2052 2010-01-08  Paolo Carlini  <paolo.carlini@oracle.com>
2053
2054         PR libstdc++/42573
2055         * include/bits/allocator.h (struct __shrink_to_fit): Add.
2056         * include/bits/stl_deque.h (deque<>::shrink_to_fit): Add.
2057         * include/bits/stl_vector.h (vector<>::shrink_to_fit): Likewise.
2058         * include/bits/stl_bvector.h (vector<bool>::shrink_to_fit): Likewise.
2059         * include/bits/basic_string.h (basic_string<>::shrink_to_fit):
2060         Likewise.
2061         * include/ext/vstring.h (__versa_string<>::shrink_to_fit): Likewise.
2062         * include/debug/deque: Add corresponding using declaration.
2063         * include/debug/vector: Likewise.
2064         * include/debug/string: Likewise.
2065         * include/profile/deque: Likewise.
2066         * include/profile/vector: Likewise.
2067         * config/abi/pre/gnu.ver: Export new symbols.
2068         * testsuite/23_containers/deque/capacity/shrink_to_fit.cc: New.
2069         * testsuite/23_containers/vector/capacity/shrink_to_fit.cc: Likewise.
2070         * testsuite/21_strings/basic_string/capacity/char/shrink_to_fit.cc:
2071         Likewise.
2072         * testsuite/21_strings/basic_string/capacity/wchar_t/shrink_to_fit.cc:
2073         Likewise.
2074         * testsuite/ext/vstring/capacity/shrink_to_fit.cc: Likewise.
2075         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
2076         Adjust dg-error line number.
2077         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
2078         Likewise.
2079         * testsuite/23_containers/deque/requirements/dr438/
2080         constructor_1_neg.cc: Likewise.
2081         * testsuite/23_containers/deque/requirements/dr438/
2082         constructor_2_neg.cc: Likewise.
2083         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2084         Adjust dg-error line number.
2085         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2086         Likewise.
2087         * testsuite/23_containers/vector/requirements/dr438/
2088         constructor_1_neg.cc: Likewise.
2089         * testsuite/23_containers/vector/requirements/dr438/
2090         constructor_2_neg.cc: Likewise.
2091
2092 2010-01-07  Benjamin Kosnik  <bkoz@redhat.com>
2093
2094         * doc/xml/manual/evolution.xml: Fix typos, update.
2095
2096 2010-01-07  Paolo Carlini  <paolo.carlini@oracle.com>
2097
2098         * include/bits/locale_facets_nonio.tcc (time_put<>::do_put): Avoid
2099         pointless __builtin_alloca use.
2100
2101 2010-01-06  Paolo Carlini  <paolo.carlini@oracle.com>
2102
2103         PR libstdc++/26701
2104         * include/bits/locale_facets_nonio.tcc (time_get<>::_M_extract_num):
2105         Encode short two digits over four parsings to negative numbers.
2106         (time_get<>::_M_extract_via_format): Adjust, accept both two digits
2107         and four digits for both 'y' and 'Y'.
2108         (time_get<>::do_get_year): Call time_get<>::_M_extract_num.
2109         * doc/xml/manual/prerequisites.xml: Add en_GB.
2110         * testsuite/lib/libstdc++.exp: Adjust
2111         * testsuite/22_locale/time_get/get_date/char/26701.cc: New.
2112         * testsuite/22_locale/time_get/get_date/wchar_t/26701.cc: Likewise.
2113
2114 2010-01-06  Benjamin Kosnik  <bkoz@redhat.com>
2115
2116         PR libstdc++/42491
2117         * scripts/check_performance (CXX): Add -std=gnu++0x.
2118         * testsuite/performance/30_threads/future/polling.cc: Mark up as
2119         using threads.
2120
2121 2010-01-06  Paolo Carlini  <paolo.carlini@oracle.com>
2122
2123         * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc:
2124         Add dg-require-namedlocale.
2125
2126 2010-01-05  Benjamin Kosnik  <bkoz@redhat.com>
2127
2128         * doc/xml/manual/evolution.xml: Update for 4.4 and 4.5 releases.
2129         * doc/html: Regenerate.
2130
2131 2010-01-05  Paolo Carlini  <paolo.carlini@oracle.com>
2132
2133         PR libstdc++/38081
2134         * include/bits/locale_facets_nonio.h (time_get<>::
2135         _M_extract_wday_or_month): New, declare.
2136         * include/bits/locale_facets_nonio.tcc (time_get<>::
2137         _M_extract_wday_or_month): Define.
2138         (time_get<>::do_get_weekday, time_get<>::do_get_monthname): Use it.
2139         * config/abi/pre/gnu.ver: Export new symbols.
2140         * doc/xml/manual/prerequisites.xml: Add ru_RU.UTF-8 and
2141         ru_RU.ISO-8859-5.
2142         * testsuite/lib/libstdc++.exp: Adjust.
2143         * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc: New.
2144         * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.
2145
2146 2010-01-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2147
2148         * configure: Regenerate.
2149
2150 2010-01-05  Paolo Carlini  <paolo.carlini@oracle.com>
2151
2152         * testsuite/22_locale/time_get/get_monthname/char/6.cc: New.
2153         * testsuite/22_locale/time_get/get_monthname/wchar_t/6.cc: Likewise.
2154         * testsuite/22_locale/time_get/get_weekday/char/6.cc: Likewise.
2155         * testsuite/22_locale/time_get/get_weekday/wchar_t/6.cc: Likewise.
2156
2157 2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
2158
2159         * include/profile/list: Implement DR 1133 here too.
2160
2161         * testsuite/25_algorithms/set_intersection/34730.cc: Do not force
2162         debug-mode, leads to spurious failures in profile-mode.
2163         * testsuite/25_algorithms/upper_bound/33613.cc: Likewise.
2164         * testsuite/25_algorithms/lower_bound/33613.cc: Likewise.
2165         * testsuite/25_algorithms/set_difference/35541.cc: Likewise.
2166         * testsuite/21_strings/basic_string/40160.cc: Likewise.
2167         * testsuite/26_numerics/random/uniform_real_distribution/
2168         cons/parms_neg.cc: Likewise.
2169         * testsuite/26_numerics/random/uniform_int_distribution/
2170         cons/parms_neg.cc: Likewise.
2171         * testsuite/23_containers/unordered_map/requirements/debug_mode.cc:
2172         Likewise.
2173         * testsuite/23_containers/multimap/14340.cc: Likewise.
2174         * testsuite/23_containers/bitset/18604.cc: Likewise.
2175         * testsuite/23_containers/set/14340.cc: Likewise.
2176         * testsuite/23_containers/set/18604.cc: Likewise.
2177         * testsuite/23_containers/unordered_set/requirements/
2178         debug_mode.cc: Likewise.
2179         * testsuite/23_containers/vector/
2180         debug_mode_requires_reallocation-1.cc: Likewise.
2181         * testsuite/23_containers/vector/
2182         debug_mode_requires_reallocation-2.cc: Likewise.
2183         * testsuite/23_containers/vector/14340.cc: Likewise.
2184         * testsuite/23_containers/vector/15523.cc: Likewise.
2185         * testsuite/23_containers/vector/18604.cc: Likewise.
2186         * testsuite/23_containers/deque/14340.cc: Likewise.
2187         * testsuite/23_containers/deque/18604.cc: Likewise.
2188         * testsuite/23_containers/multiset/14340.cc: Likewise.
2189         * testsuite/23_containers/list/operations/35969.cc: Likewise.
2190         * testsuite/23_containers/list/14340.cc: Likewise.
2191         * testsuite/23_containers/list/18604.cc: Likewise.
2192         * testsuite/23_containers/map/14340.cc: Likewise.
2193         * testsuite/23_containers/map/18604.cc: Likewise.
2194         * testsuite/tr1/5_numerical_facilities/random/uniform_int/
2195         cons/range_neg.cc: Likewise.
2196
2197         * testsuite/23_containers/unordered_map/requirements/
2198         explicit_instantiation/2.cc: Do not instantiate for
2199         non-defaultconstructible mapped_type.
2200
2201 2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
2202
2203         * include/debug/set.h: Implement DR 130 here too.
2204         * include/debug/multiset.h: Likewise.
2205         * include/debug/map.h: Likewise.
2206         * include/debug/multimap.h: Likewise.
2207         * include/profile/set.h: Implement DR 130 fully.
2208         * include/profile/multiset.h: Likewise.
2209         * include/profile/map.h: Likewise.
2210         * include/profile/multimap.h: Likewise.
2211         * include/debug/list: Implement DR 1133 here too.
2212         * include/ext/pb_ds/detail/debug_map_base.hpp: Comment out for
2213         now uses of __gnu_cxx::throw_allocator.
2214         * testsuite/21_strings/basic_string/40160.cc: Don't pass
2215         explicitly -D_GLIBCXX_DEBUG, doesn't play well with profile-mode
2216         testing.
2217
2218 2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
2219
2220         * include/profile/bitset (bitset<>::bitset(unsigned long long)): Add
2221         in C++0x mode.
2222         * include/debug/bitset (bitset<>::bitset(unsigned long long)):
2223         Likewise.
2224
2225 2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
2226
2227         * include/tr1_impl/hashtable (_Hashtable<>): Remove insert_return_type
2228         typedef.
2229         * include/profile/unordered_map (unordered_map<>::insert(const
2230         value_type&), unordered_multimap<>::insert(const value_type&)): Adjust.
2231         * include/profile/unordered_set (unordered_set<>::insert(const
2232         value_type&), unordered_multimap<>::insert(const value_type&)):
2233         Likewise.
2234
2235 2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
2236
2237         * include/bits/stl_pair.h (pair<>::pair(_U1&&, const _T2&),
2238         pair<>::pair(const _T1&, _U2&&), pair<>::pair(_U1&&, _U2&&)):
2239         Use std::is_constructible instead of std::is_convertible.
2240
2241 2010-01-01  Paolo Carlini  <paolo.carlini@oracle.com>
2242
2243         Revert last change, reinstantiate basic_string and vstring tests.
2244
2245 2010-01-01  Paolo Carlini  <paolo.carlini@oracle.com>
2246
2247         * testsuite/21_strings/basic_string/requirements/exception/
2248         propagation_consistent.cc: Remove, cannot instantiate basic_string
2249         for non-PODs (21/1).
2250         * testsuite/21_strings/basic_string/requirements/exception/
2251         basic.cc: Likewise.
2252         * testsuite/21_strings/basic_string/requirements/exception/
2253         generation_prohibited.cc: Likewise.
2254         * testsuite/ext/vstring/requirements/exception/
2255         propagation_consistent.cc: Likewise.
2256         * testsuite/ext/vstring/requirements/exception/basic.cc:
2257         Likewise.
2258         * testsuite/ext/vstring/requirements/exception/
2259         generation_prohibited.cc: Likewise.