OSDN Git Service

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