OSDN Git Service

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