Move changelog entry to correct ChangeLog.
[official-gcc.git] / libstdc++-v3 / ChangeLog
blob6f3c2ccebf64a77cefbf2d9201400e2da79b851b
1 2010-06-01  Maxim Kuvyrkov  <maxim@codesourcery.com>
3         * acinclude.m4, configure.host: Support Bionic C library.
4         * configure: Regenerate.
5         * config/os/bionic/ctype_base.h, config/os/bionic/ctype_inline.h,
6         * config/os/bionic/ctype_noincline.h, config/os/bionic/os_defines.h:
7         New files, based on config/os/newlib/*.
9 2010-05-31  Jonathan Wakely  <jwakely.gcc@gmail.com>
11         PR libstdc++/43820
12         * include/bits/shared_ptr_base.h: Require complete type.
13         * include/tr1/shared_ptr.h: Likewise.
14         * testsuite/20_util/shared_ptr/cons/43820.cc: New.
15         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820.cc: New.
17 2010-05-31  Paolo Carlini  <paolo.carlini@oracle.com>
19         * include/bits/basic_string.h (front, back): Add.
20         * include/debug/string: Adjust.
21         * include/ext/vstring.h (front, back): Tweak the implementation
22         to follow more closely the letter of the specs.
23         * testsuite/21_strings/basic_string/element_access/char/
24         front_back.cc: New.
25         * testsuite/21_strings/basic_string/element_access/wchar_t/
26         front_back.cc: Likewise.
27         * config/abi/pre/gnu.ver: Export new symbols.
28         * testsuite/util/testsuite_abi.cc: Adjust.
29         * configure.ac: Bump minor version to 6:15:0.
30         * configure: Regenerate.
32 2010-05-28  Paolo Carlini  <paolo.carlini@oracle.com>
34         * include/bits/stl_vector.h (vector<>::data): Fix return type
35         in c++0x mode.
36         * testsuite/23_containers/vector/requirements/dr438/
37         assign_neg.cc: Adjust dg-error line number.
38         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
39         Likewise.
40         * testsuite/23_containers/vector/requirements/dr438/
41         constructor_1_neg.cc: Likewise.
42         * testsuite/23_containers/vector/requirements/dr438/
43         constructor_2_neg.cc: Likewise.
45 2010-05-27  Jason Merrill  <jason@redhat.com>
47         Revert:
48         PR libstdc++/42832
49         * include/std/functional (function<>::swap): Perform bytewise
50         swap of _M_functor.
51         * include/tr1/functional (function<>::swap): Likewise.
53 2010-05-27  Paolo Carlini  <paolo.carlini@oracle.com>
55         PR libstdc++/40497
56         * include/bits/cpp_type_traits.h (__is_iterator): Add.
57         * include/bits/stl_iterator_base_funcs.h (next, prev): Use it.
58         * testsuite/24_iterators/operations/40497.cc: New.
60 2010-05-21  Paolo Carlini  <paolo.carlini@oracle.com>
62         PR libstdc++/25306
63         * include/bits/stl_algobase.h (fill_n): Use a properly typed __niter
64         initialized to __n.
65         * include/bits/stl_algo.h (generate_n): Likewise.
66         * testsuite/25_algorithms/fill_n/25306.cc: New.
67         * testsuite/25_algorithms/generate_n/25306.cc: Likewise.
69 2010-05-21  Joseph Myers  <joseph@codesourcery.com>
71         * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Use GNU locale model for
72         glibc 2.3 and later, but not uClibc, without an execution test.
73         * configure: Regenerate.
74         * doc/xml/manual/configure.xml, doc/xml/manual/prerequisites.xml,
75         doc/xml/faq.xml: Update.
77 2010-05-21  Paolo Carlini  <paolo.carlini@oracle.com>
79         * include/tr1/functional: Use std::__addressof.
80         * include/tr1/hashtable_policy.h: Likewise.
82 2010-05-20  Paolo Carlini  <paolo.carlini@oracle.com>
84         PR libstdc++/41792
85         * include/tr1_impl/array: Use std::__addressof.
86         * include/std/functional (reference_wrapper): Likewise.
87         * include/ext/throw_allocator.h: Likewise.
88         * include/ext/pool_allocator.h: Likewise.
89         * include/ext/bitmap_allocator.h: Likewise.
90         * include/ext/new_allocator.h: Likewise.
91         * include/ext/malloc_allocator.h: Likewise.
92         * include/ext/array_allocator.h: Likewise.
93         * include/ext/mt_allocator.h: Likewise.
94         * include/ext/extptr_allocator.h: Likewise.
95         * include/bits/stl_list.h: Likewise.
96         * include/bits/hashtable_policy.h: Likewise.
97         * include/bits/forward_list.h: Likewise.
98         * include/bits/stl_uninitialized.h: Likewise.
99         * include/bits/list.tcc: Likewise.
100         * include/bits/stl_construct.h: Likewise.
101         * include/bits/stl_tree.h: Likewise.
102         * testsuite/20_util/reference_wrapper/41792.cc: New.
103         * testsuite/23_containers/unordered_map/requirements/
104         explicit_instantiation/4.cc: Likewise.
105         * testsuite/23_containers/multimap/requirements/
106         explicit_instantiation/4.cc: Likewise.
107         * testsuite/23_containers/set/requirements/
108         explicit_instantiation/4.cc: Likewise.
109         * testsuite/23_containers/unordered_multimap/requirements/
110         explicit_instantiation/4.cc: Likewise.
111         * testsuite/23_containers/forward_list/requirements/
112         explicit_instantiation/4.cc: Likewise.
113         * testsuite/23_containers/unordered_set/requirements/
114         explicit_instantiation/4.cc: Likewise.
115         * testsuite/23_containers/vector/requirements/
116         explicit_instantiation/4.cc: Likewise.
117         * testsuite/23_containers/deque/requirements/
118         explicit_instantiation/4.cc: Likewise.
119         * testsuite/23_containers/multiset/requirements/
120         explicit_instantiation/4.cc: Likewise.
121         * testsuite/23_containers/list/requirements/
122         explicit_instantiation/4.cc: Likewise.
123         * testsuite/23_containers/unordered_multiset/requirements/
124         explicit_instantiation/4.cc: Likewise.
125         * testsuite/23_containers/map/requirements/
126         explicit_instantiation/4.cc: Likewise.
127         * testsuite/23_containers/array/requirements/
128         explicit_instantiation/3.cc: Likewise.
129         * testsuite/23_containers/forward_list/requirements/
130         dr438/assign_neg.cc: Adjust dg-error line numbers.
131         * testsuite/23_containers/forward_list/requirements/dr438/
132         insert_neg.cc: Likewise.
133         * testsuite/23_containers/forward_list/requirements/dr438/
134         constructor_1_neg.cc: Likewise.
135         * testsuite/23_containers/forward_list/requirements/dr438/
136         constructor_2_neg.cc: Likewise.
137         * testsuite/23_containers/list/requirements/dr438/
138         assign_neg.cc: Likewise.
139         * testsuite/23_containers/list/requirements/dr438/
140         insert_neg.cc: Likewise.
141         * testsuite/23_containers/list/requirements/dr438/
142         constructor_1_neg.cc: Likewise.
143         * testsuite/23_containers/list/requirements/dr438/
144         constructor_2_neg.cc: Likewise.
146 2010-05-20  Peter Dimov  <pdimov@pdimov.com>
147             Paolo Carlini  <paolo.carlini@oracle.com>
149         * include/bits/move.h (__addressof, addressof): Add.
150         * testsuite/util/testsuite_api.h (struct OverloadedAddress): Add.
151         * testsuite/20_util/addressof/requirements/
152         explicit_instantiation.cc: New.
153         * testsuite/20_util/addressof/1.cc: Likewise.
155 2010-05-20  Paolo Carlini  <paolo.carlini@oracle.com>
157         * include/bits/stl_pair.h (pair<>::pair(const pair&)): Defaulted
158         in C++0x mode.
159         (pair<>::operator=(const pair<>&)): Add in C++0x mode.
160         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
161         line number.
163 2010-05-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
165         * testsuite/30_threads/future/members/wait.cc (wait): Rename.
166         * testsuite/30_threads/shared_future/members/wait.cc (wait): Likewise.
168 2010-05-18  Eelis van der Weegen  <gcc-bugzilla@contacts.eelis.net>
170         PR libstdc++/44190
171         * include/debug/vector (vector<>::resize): Call
172         _M_update_guaranteed_capacity.
173         * testsuite/23_containers/vector/capacity/44190.cc: New.
175 2010-05-17  Paolo Carlini  <paolo.carlini@oracle.com>
177         * include/std/functional (result_of): Move...
178         * include/std/type_traits: ... here.
179         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
180         line number.
182 2010-05-12  Jason Merrill  <jason@redhat.com>
184         * testsuite/20_util/auto_ptr/assign_neg.cc: Expect template
185         candidate messages.
186         * testsuite/20_util/unique_ptr/assign/assign_neg.cc: Likewise.
187         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
189 2010-05-11  Silvius Rus  <silvius.rus@gmail.com>
191         PR libstdc++/43259
192         * include/profile/impl/profiler_algos.h: New.
193         * include/Makefile.am: Add.
194         * include/Makefile.in: Regenerate.
195         * include/profile/impl/profiler.h
196         (_GLIBCXX_PROFILE_DEFINE_UNINIT_DATA): Add.
197         * include/profile/impl/profiler_trace.h
198         (__mutex_t, __lock, __unlock): Remove.
199         (__lock_object_table, __lock_stack_table): Remove. Replace uses with
200         calls to __gnu_cxx::__mutex::lock.
201         (__unlock_object_table, __unlock_stack_table): Remove. Replace uses
202         with calls to __gnu_cxx::__mutex::unlock.
203         (__warn, __cost_factor_writer, __cost_factor_setter): Add.
204         * testsuite/ext/profile/profiler_algos.cc: New.
206 2010-05-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
208         * libsupc++/exception_ptr.h (make_exception_ptr): Add.
209         * testsuite/18_support/exception_ptr/make_exception_ptr.cc: New.
211 2010-05-06  Jason Merrill  <jason@redhat.com>
213         * config/abi/pre/gnu.ver: Move decltype(nullptr) into CXXABI_1.3.5.
214         * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.5.
216         * config/abi/pre/gnu.ver: Add typeinfo for decltype(nullptr).
218 2010-05-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
220         * include/bits/basic_string.h: Escape class names in doxygen docs.
222 2010-05-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
224         PR libstdc++/44014
225         * include/bits/stringfwd.h: Add doxygen comments and new group.
226         * include/bits/basic_string.h: Add to new doxygen group.
227         * doc/doxygen/user.cfg.in (ALIASES): Link to correct group.
229 2010-05-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
231         * configure.host: Removed irix[1-6], irix[1-5].*, irix6.[0-4]*
232         support.
233         * config/os/irix/irix5.2: Removed.
235 2010-05-05  Paolo Carlini  <paolo.carlini@oracle.com>
237         * testsuite/23_containers/vector/bool/capacity/29134.cc: Adjust
238         for profile-mode too.
239         * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
240         Likewise.
242 2010-05-05  Paolo Carlini  <paolo.carlini@oracle.com>
244         * include/profile/unordered_map (unordered_map<>::insert(_InputIter,
245         _InputIter), unordered_multimap<>::insert(_InputIter, _InputIter)):
246         Fix typo, don't call base() on __first and __last.
248 2010-05-05  Paolo Carlini  <paolo.carlini@oracle.com>
250         Fix profile-mode vs -std=c++0x
251         * include/profile/impl/profiler_trace.h: Do not include the
252         whole <algorithm>, include <bits/stl_heap.h> (additionally
253         to <bits/stl_algobase.h>).
254         (__write_cost_factors): Replace std::for_each with open-coding.
255         (__set_cost_factors): Likewise.
256         (__report): Likewise; use std::make_heap / std::sort_heap
257         instead of std::sort.
258         (__report_cost_factors): Replace std::remove with open-coding.
259         (__warn, __cost_factor_writer, __cost_factor_setter): Remove.
261 2010-05-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
263         PR other/43620
264         * configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
265         * configure: Regenerate.
266         * Makefile.in: Regenerate.
267         * doc/Makefile.in: Regenerate.
268         * include/Makefile.in: Regenerate.
269         * libsupc++/Makefile.in: Regenerate.
270         * po/Makefile.in: Regenerate.
271         * python/Makefile.in: Regenerate.
272         * src/Makefile.in: Regenerate.
273         * testsuite/Makefile.in: Regenerate.
275 2010-05-01  Jonathan Wakely  <jwakely.gcc@gmail.com>
277         * doc/xml/faq.xml: Fix anachronisms.
278         * doc/xml/manual/intro.xml (Make): Tweak grammar and whitespace.
279         * doc/xml/manual/support.xml (NULL): Use inline <code> element
280         instead of <programlisting> block.
281         * doc/html/*: Regenerate.
283 2010-04-30  Paolo Carlini  <paolo.carlini@oracle.com>
285         * include/bits/stl_pair.h (piecewise_construct_t,
286         pair<>::pair(piecewise_construct_t, tuple, tuple)): Add.
287         (pair<>::__cons, pair<>::__do_cons): Declare.
288         (__decay_and_strip, __strip_reference_wrapper): Move...
289         * include/std/type_traits: ... here.
290         * include/std/functional (_Index_tuple, _Build_index_tuple): Move...
291         * include/std/tuple: ... here.
292         (pack_arguments): Add.
293         (pair<>::__cons, pair<>::__do_cons): Define.
294         * testsuite/20_util/tuple/creation_functions/pack_arguments.cc: New.
295         * testsuite/20_util/pair/piecewise.cc: Likewise.
296         * testsuite/20_util/tuple/cons/big_tuples.cc: Include <utility>.
297         * testsuite/20_util/tuple/cons/constructor.cc: Likewise.
298         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
299         dg-error line numbers.
300         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
301         Likewise.
302         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
304 2010-04-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
306         PR libstdc++/43865
307         * include/c_global/cstdlib (abort, exit): _GLIBCXX_NORETURN typo.
309 2010-04-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
311         * doc/xml/manual/status_cxx200x.xml: Update quick_exit status.
312         * doc/html/*: Regenerate.
314 2010-04-27  Fabien Chêne  <fabien.chene@gmail.com>
316         * testsuite/util/testsuite_error.h: Add empty default constructor
317         to __gnu_test::test_category and
318         __gnu_test::test_derived_category.
319         * src/future.cc: Add empty default constructor to
320         future_error_category.
321         * src/system_error.cc: Add default ctor to generic_error_category
322         and system_error_category.
324 2010-04-27  Alexander Monakov  <amonakov@ispras.ru>
326         * testsuite/22_locale/codecvt/unshift/char/1.cc (test01): Clarify size
327         definition.  Use memcpy and memcmp to avoid access beyond allocated
328         memory.
330 2010-04-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
332         * doc/xml/manual/status_cxx200x.xml: Update to match n3092.
333         * doc/html/*: Regenerate.
335 2010-04-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
337         * doc/xml/manual/status_cxx200x.xml: Update Threads status.
338         * doc/html/manual/status.html: Regenerate.
340 2010-04-24  Jonathan Wakely  <jwakely.gcc@gmail.com>
342         * include/bits/unique_ptr (unique_ptr::pointer): Use deleter's
343         pointer type if it exists.
344         * testsuite/20_util/unique_ptr/requirements/pointer_type.cc: New.
345         * testsuite/20_util/unique_ptr/assign/assign_neg.cc: Adjust.
346         * testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Adjust.
348 2010-04-22  Johannes Singler  <singler@kit.edu>
350         * include/parallel/partition.h (__parallel_partition):
351         Improve scalability by:
352         -introducing new variables __leftold, __rightold, __dist, thus
353         -getting rid of omp lock by using atomic operations
354         -getting rid of two omp barriers
356 2010-04-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
358         * doc/xml/faq.xml: Link to manual.
359         * doc/xml/manual/using.xml: Expand dynamic libraries section.
360         * doc/xml/manual/strings.xml: Mention shrink_to_fit() member.
361         * doc/xml/manual/prerequisites.xml: Link to doxygen requirements.
362         * doc/xml/manual/appendix_contributing.xml: Update Bash version.
363         * doc/html/*: Regenerate.
365 2010-04-13  Ian Lance Taylor  <iant@google.com>
367         * include/backward/hash_map: Don't #include "backward_warning.h"
368         if _GLIBCXX_PERMIT_BACKWARD_HASH is defined.
369         * include/backward/hash_set: Likewise.
371 2010-04-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
373         * configure.host (os_include_dir): Removed solaris2.7 support.
374         * crossconfig.m4 (GLIBCXX_CROSSCONFIG): Likewise.
375         * configure: Regenerate.
377 2010-04-06  Matthias Klose  <doko@ubuntu.com>
379         * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Show test result.
380         * configure: Regenerate.
381         * doc/xml/manual/configure.xml, doc/html/manual/configure.html:
382         Document --enable-libstdcxx-time as the short form for
383         --enable-libstdcxx-time=yes.
385 2010-04-03  Paolo Carlini  <paolo.carlini@oracle.com>
387         * include/bits/basic_string.h: Fix pasto in comment.
388         * include/ext/vstring.h: Likewise.
390 2010-04-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
392         * Makefile.in: Regenerate.
393         * aclocal.m4: Regenerate.
394         * doc/Makefile.in: Regenerate.
395         * include/Makefile.in: Regenerate.
396         * libsupc++/Makefile.in: Regenerate.
397         * po/Makefile.in: Regenerate.
398         * python/Makefile.in: Regenerate.
399         * src/Makefile.in: Regenerate.
400         * testsuite/Makefile.in: Regenerate.
402 2010-03-30  Johannes Singler  <singler@kit.edu>
404         * include/parallel/random_shuffle.h
405         (__parallel_random_shuffle_drs) : Take as many threads as
406         possible, i. e. favor parallelism over cache efficiency.
407         Use own PRNG also for the 1 thread case.
409 2010-03-30  Paolo Carlini  <paolo.carlini@oracle.com>
411         * include/debug/unordered_map: Clean-up includes and guards.
412         * include/debug/unordered_set: Likewise.
413         * include/debug/list: Likewise.
414         * include/profile/unordered_map: Likewise.
415         * include/profile/unordered_set: Likewise.
417 2010-03-29  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
419         PR target/43458
420         * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
421         Xfail hppa*-*-hpux*.
423 2010-03-26  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
425         * doc/xml/manual/profile_mode.xml (Profile Diagnostics): Correct
426         cols.
427         * doc/xml/manual/using.xml (C++ 1998 Library Headers): Add missing
428         c5 colspec.
429         (C++ 1998 Library Headers for C Library Facilities): Likewise.
430         (C++ 200x Library Headers): Likewise.
432 2010-03-25  Paolo Carlini  <paolo.carlini@oracle.com>
434         * include/bits/unordered_map.h (operator==, operator!=): Add per N3068.
435         * include/bits/unordered_set.h (operator==, operator!=): Likewise.
436         * include/debug/unordered_map (operator==, operator!=): Likewise.
437         * include/debug/unordered_set: Likewise.
438         * include/profile/unordered_map: Likewise.
439         * include/profile/unordered_set: Likewise.
440         * testsuite/23_containers/unordered_map/operators/1.cc: New.
441         * testsuite/23_containers/unordered_multimap/operators/1.cc: Likewise.
442         * testsuite/23_containers/unordered_multimap/operators/2.cc: Likewise.
443         * testsuite/23_containers/unordered_set/operators/1.cc: Likewise.
444         * testsuite/23_containers/unordered_multiset/operators/1.cc: Likewise.
446 2010-03-25  John Lakos  <jlakos@bloomberg.net>
447             Pablo Halpern  <phalpern@halpernwightsoftware.com>
448             Paolo Carlini  <paolo.carlini@oracle.com>
450         * include/bits/hashtable_policy.h (struct _Equality_base): Add.
451         * include/bits/hashtable.h (_Hashtable<>): Derive from the latter.
453 2010-03-23  Paolo Carlini  <paolo.carlini@oracle.com>
455         * testsuite/util/testsuite_tr1.h (NType, TType, SLType, PODType): Add.
456         * testsuite/20_util/is_trivial/value.cc: Adjust.
457         * testsuite/20_util/is_standard_layout/value.cc: Likewise.
458         * testsuite/20_util/is_pod/value.cc: Likewise.
460 2010-03-23  Paolo Carlini  <paolo.carlini@oracle.com>
462         * testsuite/20_util/is_trivial/value.cc: New.
463         * testsuite/20_util/is_standard_layout/value.cc: Likewise.
464         * testsuite/20_util/is_pod/value.cc: Extend.
466 2010-03-23  Paolo Carlini  <paolo.carlini@oracle.com>
468         * include/bits/stl_algobase.h (lower_bound(_ForwardIterator,
469         _ForwardIterator, const _Tp&, _Compare)): Move...
470         * include/bits/stl_algo.h: ... here.
472 2010-03-22  Johannes Singler  <singler@kit.edu>
474         * include/parallel/numeric (inner_product, partial_sum):
475         Precede subsequent call with _GLIBCXX_STD_P:: to avoid ambiguity
476         between __gnu_parallel:: and std::
477         * include/parallel/algobase.h (equal): Likewise.
478         * include/parallel/algo.h (find_first_of, search_n, merge, nth_element,
479         partial_sort, max_element, min_element): Likewise.
480         * include/parallel/partial_sum.h (__parallel_partial_sum_linear):
481         Qualify accumulate call with __gnu_parallel::.
483 2010-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
485         * include/parallel/base.h (_PseudoSequence): Do not forward declare.
486         (_VoidFunctor): Remove, unused.
487         (__median_of_three_iterators): Take __comp by value.
488         (_PseudoSequenceIterator<>::operator++(int)): Do not const qualify
489         the return type.
490         (_PseudoSequenceIterator<>::operator!=): Fix return type to bool.
492 2010-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
494         * include/parallel/base.h (_Less): Use std::less.
495         (_Plus): Likewise use std::plus.
496         (_Multiplies): Likewise use std::multiplies.
497         * include/parallel/numeric: Adjust.
499 2010-03-19  Paolo Carlini  <paolo.carlini@oracle.com>
501         * testsuite/17_intro/freestanding.cc: Avoid -Wall warnings.
503 2010-03-19  Rodolfo Lima  <rodolfo@rodsoft.org>
505         * include/bits/shared_ptr.h (shared_ptr(unique_ptr&&),
506         shared_ptr(auto_ptr&&)): Remove explicit specifier (as per DR 925).
507         * include/bits/shared_ptr_base.h: Likewise.
508         * testsuite/20_util/shared_ptr/creation/dr925.cc: New.
510 2010-03-19  Paolo Carlini  <paolo.carlini@oracle.com>
512         * include/bits/random.tcc: Minor formatting changes.
514 2010-03-19  Paolo Carlini  <paolo.carlini@oracle.com>
516         * include/bits/stl_algo.h (shuffle): Fix typo in signature.
517         * include/bits/algorithmfwd.h: Adjust.
518         * testsuite/25_algorithms/shuffle/requirements/
519         explicit_instantiation/2.cc: Likewise.
520         * testsuite/25_algorithms/shuffle/requirements/
521         explicit_instantiation/pod.cc: Likewise.
523 2010-03-19  Paolo Carlini  <paolo.carlini@oracle.com>
525         * include/bits/stl_algo.h (shuffle): Add, per D3056.
526         (random_shuffle): Fix signature in C++0x mode.
527         (lower_bound, __lg): Move...
528         * include/bits/stl_algobase.h: ... here.
529         * include/bits/algorithmfwd.h: Adjust.
530         * include/parallel/algorithmfwd.h: Likewise.
531         * include/parallel/algo.h: Likewise.
532         * include/bits/hashtable_policy.h (__lower_bound): Remove,
533         adjust callers.
534         * include/tr1/hashtable_policy.h (__lower_bound): Likewise.
535         * include/bits/random.tcc (__detail::__transform): Add,
536         adjust std::transform callers; don't include <algorithm>.
537         * testsuite/25_algorithms/shuffle/1.cc: Add.
538         * testsuite/25_algorithms/shuffle/requirements/
539         explicit_instantiation/2.cc: Likewise.
540         * testsuite/25_algorithms/shuffle/requirements/
541         explicit_instantiation/pod.cc: Likewise.
543         * include/bits/random.h: Add comments.
545 2010-03-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
547         * doc/xml/manual/debug_mode.xml: Correct debug headers.
549 2010-03-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
551         PR libstdc++/43397
552         * include/std/functional (_Mem_fn): Use perfect forwarding.
553         * testsuite/20_util/function/43397.cc: New.
555 2010-03-16  Paolo Carlini  <paolo.carlini@oracle.com>
557         PR libstdc++/43394
558         * include/parallel/compatibility.h: Add __k8 and __core2 among the
559         i386 targets supporting atomic operations.
561 2010-03-16  Paolo Carlini  <paolo.carlini@oracle.com>
563         * include/backward/hash_map: Use consistently the _BACKWARD_*
564         prefix for the include guard.
565         * include/backward/hash_fun.h: Likewise.
566         * include/backward/hashtable.h: Likewise.
567         * include/backward/auto_ptr.h: Likewise.
568         * include/backward/strstream: Likewise.
569         * include/backward/binders.h: Likewise.
570         * include/backward/hash_set: Likewise.
572 2010-03-16  Paolo Carlini  <paolo.carlini@oracle.com>
574         * include/bits/random.h (operator==(const uniform_int_distribution<>&,
575         const uniform_int_distribution<>&), operator==(const
576         uniform_real_distribution<>&, const uniform_real_distribution<>&),
577         operator==(const lognormal_distribution<>&,
578         const lognormal_distribution<>&), operator==(const
579         chi_squared_distribution<>&, const chi_squared_distribution<>&),
580         operator==(const cauchy_distribution<>&, const cauchy_distribution<>&),
581         operator==(const fisher_distribution<>&, const fisher_distribution<>&),
582         operator==(const student_t_distribution<>&,
583         const student_t_distribution<>&), operator==(const
584         bernoulli_distribution<>&, const bernoulli_distribution<>&),
585         operator==(const binomial_distribution<>&, const
586         binomial_distribution<>&), operator==(const geometric_distribution<>&,
587         const geometric_distribution<>&), operator==(const
588         negative_binomial_distribution<>&, const
589         negative_binomial_distribution<>&), operator==(const
590         poisson_distribution<>&, const poisson_distribution<>&),
591         operator==(const exponential_distribution<>&,
592         const exponential_distribution<>&), operator==(const
593         gamma_distribution<>&, const gamma_distribution<>&), operator==(const
594         weibull_distribution<>&, const weibull_distribution<>&),
595         operator==(const extreme_value_distribution<>&,
596         const extreme_value_distribution<>&), operator==(const
597         discrete_distribution<>&, const discrete_distribution<>&),
598         operator==(const piecewise_constant_distribution<>&,
599         const piecewise_constant_distribution<>&), operator==(const
600         piecewise_linear_distribution<>&, const
601         piecewise_linear_distribution<>&)): Add, likewise for operator!=.
602         (operator!=(const independent_bits_engine<>&, const
603         independent_bits_engine<>&), operator!=(const
604         subtract_with_carry_engine<>&, const subtract_with_carry_engine<>&),
605         operator!=(const discard_block_engine<>&, const
606         discard_block_engine<>&), operator!=(const mersenne_twister_engine<>&,
607         const mersenne_twister_engine<>&), operator!=(const
608         linear_congruential_engine<>&, const linear_congruential_engine<>&),
609         operator!=(const shuffle_order_engine<>&, const
610         shuffle_order_engine<>&): Add.
611         * include/bits/random.tcc (operator==(const normal_distribution<>&,
612         const normal_distribution<>&)): Add.
613         * testsuite/26_numerics/random/uniform_real_distribution/operators/
614         inequal.cc: New.
615         * testsuite/26_numerics/random/uniform_real_distribution/operators/
616         equal.cc: Likewise.
617         * testsuite/26_numerics/random/piecewise_constant_distribution/
618         operators/inequal.cc: Likewise.
619         * testsuite/26_numerics/random/piecewise_constant_distribution/
620         operators/equal.cc: Likewise.
621         * testsuite/26_numerics/random/chi_squared_distribution/operators/
622         inequal.cc: Likewise.
623         * testsuite/26_numerics/random/chi_squared_distribution/operators/
624         equal.cc: Likewise.
625         * testsuite/26_numerics/random/normal_distribution/operators/
626         inequal.cc: Likewise.
627         * testsuite/26_numerics/random/normal_distribution/operators/
628         equal.cc: Likewise.
629         * testsuite/26_numerics/random/uniform_int_distribution/operators/
630         inequal.cc: Likewise.
631         * testsuite/26_numerics/random/uniform_int_distribution/operators/
632         equal.cc: Likewise.
633         * testsuite/26_numerics/random/poisson_distribution/operators/
634         inequal.cc: Likewise.
635         * testsuite/26_numerics/random/poisson_distribution/operators/
636         equal.cc: Likewise.
637         * testsuite/26_numerics/random/bernoulli_distribution/operators/
638         inequal.cc: Likewise.
639         * testsuite/26_numerics/random/bernoulli_distribution/operators/
640         equal.cc: Likewise.
641         * testsuite/26_numerics/random/discrete_distribution/operators/
642         inequal.cc: Likewise.
643         * testsuite/26_numerics/random/discrete_distribution/operators/
644         equal.cc: Likewise.
645         * testsuite/26_numerics/random/weibull_distribution/operators/
646         inequal.cc: Likewise.
647         * testsuite/26_numerics/random/weibull_distribution/operators/
648         equal.cc: Likewise.
649         * testsuite/26_numerics/random/independent_bits_engine/operators/
650         inequal.cc: Likewise.
651         * testsuite/26_numerics/random/subtract_with_carry_engine/operators/
652         inequal.cc: Likewise.
653         * testsuite/26_numerics/random/discard_block_engine/operators/
654         inequal.cc: Likewise.
655         * testsuite/26_numerics/random/cauchy_distribution/operators/
656         inequal.cc: Likewise.
657         * testsuite/26_numerics/random/cauchy_distribution/operators/
658         equal.cc: Likewise.
659         * testsuite/26_numerics/random/negative_binomial_distribution/
660         operators/inequal.cc: Likewise.
661         * testsuite/26_numerics/random/negative_binomial_distribution/
662         operators/equal.cc: Likewise.
663         * testsuite/26_numerics/random/gamma_distribution/operators/
664         inequal.cc: Likewise.
665         * testsuite/26_numerics/random/gamma_distribution/operators/
666         equal.cc: Likewise.
667         * testsuite/26_numerics/random/mersenne_twister_engine/operators/
668         inequal.cc: Likewise.
669         * testsuite/26_numerics/random/fisher_f_distribution/operators/
670         inequal.cc: Likewise.
671         * testsuite/26_numerics/random/fisher_f_distribution/operators/
672         equal.cc: Likewise.
673         * testsuite/26_numerics/random/exponential_distribution/operators/
674         inequal.cc: Likewise.
675         * testsuite/26_numerics/random/exponential_distribution/operators/
676         equal.cc: Likewise.
677         * testsuite/26_numerics/random/binomial_distribution/operators/
678         inequal.cc: Likewise.
679         * testsuite/26_numerics/random/binomial_distribution/operators/
680         equal.cc: Likewise.
681         * testsuite/26_numerics/random/lognormal_distribution/operators/
682         inequal.cc: Likewise.
683         * testsuite/26_numerics/random/lognormal_distribution/operators/
684         equal.cc: Likewise.
685         * testsuite/26_numerics/random/extreme_value_distribution/operators/
686         inequal.cc: Likewise.
687         * testsuite/26_numerics/random/extreme_value_distribution/operators/
688         equal.cc: Likewise.
689         * testsuite/26_numerics/random/piecewise_linear_distribution/
690         operators/inequal.cc: Likewise.
691         * testsuite/26_numerics/random/piecewise_linear_distribution/
692         operators/equal.cc: Likewise.
693         * testsuite/26_numerics/random/student_t_distribution/operators/
694         inequal.cc: Likewise.
695         * testsuite/26_numerics/random/student_t_distribution/operators/
696         equal.cc: Likewise.
697         * testsuite/26_numerics/random/linear_congruential_engine/operators/
698         inequal.cc: Likewise.
699         * testsuite/26_numerics/random/shuffle_order_engine/operators/
700         inequal.cc: Likewise.
701         * testsuite/26_numerics/random/geometric_distribution/operators/
702         inequal.cc: Likewise.
703         * testsuite/26_numerics/random/geometric_distribution/operators/
704         equal.cc: Likewise.
706 2010-03-15  Paolo Carlini  <paolo.carlini@oracle.com>
708         * include/bits/forward_list.tcc (_Fwd_list_node_base::
709         _M_transfer_after): Return _Fwd_list_node_base*.
710         (forward_list<>::_M_splice_after): Add.
711         (forward_list<>::insert_after(const_iterator, size_type, const _Tp&),
712         insert_after(const_iterator, _InputIterator, _InputIterator),
713         insert_after(const_iterator, initializer_list<>)): Use the above,
714         implement DR 1278 ([Ready] in Pittsburgh).
715         * include/bits/forward_list.h (insert_after(const_iterator,
716         size_type, const _Tp&), insert_after(const_iterator, _InputIterator,
717         _InputIterator), insert_after(const_iterator, initializer_list<>)):
718         Only declare.
719         * testsuite/23_containers/forward_list/modifiers/2.cc: Adjust.
720         * testsuite/23_containers/forward_list/requirements/dr438/
721         assign_neg.cc: Adjust dg-error line number.
722         * testsuite/23_containers/forward_list/requirements/dr438/
723         insert_neg.cc: Likewise.
724         * testsuite/23_containers/forward_list/requirements/dr438/
725         constructor_1_neg.cc: Likewise.
726         * testsuite/23_containers/forward_list/requirements/dr438/
727         constructor_2_neg.cc: Likewise.
729 2010-03-15  Paolo Carlini  <paolo.carlini@oracle.com>
731         * testsuite/23_containers/forward_list/requirements/dr438/
732         assign_neg.cc: Adjust dg-error line number.
733         * testsuite/23_containers/forward_list/requirements/dr438/
734         constructor_1_neg.cc: Likewise.
735         * testsuite/23_containers/forward_list/requirements/dr438/
736         constructor_2_neg.cc: Likewise.
737         * testsuite/23_containers/forward_list/requirements/dr438/
738         insert_neg.cc: Likewise.
739         * testsuite/23_containers/forward_list/capacity/1.cc: Adjust.
741         Revert:
742         2008-11-11  Bob Walters  <bob.s.walters@gmail.com>
744         * include/bits/forward_list.h: Support non-standard pointer types
745         (_Fwd_list_node_base): Add _Alloc template parameter.
746         (_Fwd_list_node<>): Likewise.
747         (_Fwd_list_iterator<>): Likewise.
748         (_Fwd_list_const_iterator<>): Likewise.
749         (_Fwd_list_node_base::_M_next, _M_transfer_after, _M_reverse_after):
750         Use _Alloc<_Tp>::pointer.
751         (_Fwd_list_iterator<>::_M_node): Use _Node_base::_Pointer.
752         (_Fwd_list_base<>::_M_get_node, _M_create_node, _M_create_node,
753         _M_insert_after, _M_put_node, _M_erase_after): Likewise.
754         (_Fwd_list_const_iterator<>::_M_node): use _Node_base::_Const_pointer.
755         (forward_list<>): Use __static_pointer_cast in place of static_cast,
756         and __const_pointer_cast in place of const_cast.
757         * include/bits/forward_list.tcc
758         (_Fwd_list_node<>::_M_sort_after): Using _Pointer typedefs in place
759         of standard pointers, __static_pointer_cast in place of static_cast.
760         (_Fwd_list_base<>::_Fwd_list_base, _M_insert_after, _M_erase_after):
761         Likewise.
762         (forward_list<>::_M_initialize_dispatch, _M_fill_initialize,
763         splice_after, remove, remove_if, merge): Likewise.
764         * testsuite/23_containers/forward_list/ext_pointer/modifiers/1.cc: New.
765         * testsuite/23_containers/forward_list/ext_pointer/modifiers/2.cc:
766         Likewise.
767         * testsuite/23_containers/forward_list/ext_pointer/modifiers/3.cc:
768         Likewise.
769         * testsuite/23_containers/forward_list/ext_pointer/modifiers/4.cc:
770         Likewise.
771         * testsuite/23_containers/forward_list/ext_pointer/modifiers/5.cc:
772         Likewise.
773         * testsuite/23_containers/forward_list/ext_pointer/operations/1.cc:
774         Likewise.
775         * testsuite/23_containers/forward_list/ext_pointer/operations/2.cc:
776         Likewise.
777         * testsuite/23_containers/forward_list/ext_pointer/operations/3.cc:
778         Likewise.
779         * testsuite/23_containers/forward_list/ext_pointer/operations/4.cc:
780         Likewise.
781         * testsuite/23_containers/forward_list/ext_pointer/operations/5.cc:
782         Likewise.
783         * testsuite/23_containers/forward_list/ext_pointer/operations/6.cc:
784         Likewise.
785         * testsuite/23_containers/forward_list/ext_pointer/operations/7.cc:
786         Likewise.
787         * testsuite/23_containers/forward_list/ext_pointer/requirements/1.cc:
788         Likewise.
789         * testsuite/23_containers/forward_list/ext_pointer/requirements/
790         explicit_instantiation/1.cc: Likewise.
791         * testsuite/23_containers/forward_list/ext_pointer/requirements/
792         explicit_instantiation/3.cc: Likewise.
793         * testsuite/23_containers/forward_list/ext_pointer/1.cc: Likewise.
795 2010-03-13  Paolo Carlini  <paolo.carlini@oracle.com>
797         * include/tr1_impl/array (swap(array<>&, array<>&)): Use member swap.
799         * include/bits/stl_algo.h: Improve comment.
801 2010-03-12  Benjamin Kosnik  <bkoz@redhat.com>
803         * scripts/run_doxygen: Adjust.
804         * doc/doxygen/user.cfg.in: Adjust latex, xml prefs.
805         * doc/xml/api.xml: Update.
806         * doc/Makefile.am: Re-do stamp rules.
807         * doc/Makefile.in: Regenerate.
809 2010-03-10  Paolo Carlini  <paolo.carlini@oracle.com>
811         * include/bits/hashtable_policy.h (_Rehash_base<_Prime_rehash_policy,
812         _Hashtable>::reserve): Add, per DR 1189.
813         * include/bits/hashtable.h (_Hashtable<>::size_type,
814         _Hashtable<>::difference_type): Do not typedef from _Allocator.
815         * testsuite/23_containers/unordered_map/dr1189.cc: New.
816         * testsuite/23_containers/unordered_set/dr1189.cc: Likewise.
817         * testsuite/23_containers/unordered_multimap/dr1189.cc: Likewise.
818         * testsuite/23_containers/unordered_multiset/dr1189.cc: Likewise.
820 2010-03-08  Paolo Carlini  <paolo.carlini@oracle.com>
822         Revert:
823         2010-02-11  Paolo Carlini  <paolo.carlini@oracle.com>
825         PR libstdc++/41975, DR 579
826         * include/bits/hashtable.h (_Hashtable<>::_M_erase_node): Remove.
827         (erase(const_iterator), erase(const_iterator, const_iterator)):
828         Change return type to void.
829         * include/debug/unordered_map: Adjust.
830         * include/debug/unordered_set: Likewise.
831         * testsuite/util/exception/safety.h: Likewise.
832         * testsuite/23_containers/unordered_map/erase/1.cc: Likewise.
833         * testsuite/23_containers/unordered_map/erase/24061-map.cc: Likewise.
834         * testsuite/23_containers/unordered_set/erase/1.cc:  Likewise.
835         * testsuite/23_containers/unordered_set/erase/24061-map.cc: Likewise.
836         * testsuite/23_containers/unordered_multimap/erase/1.cc:  Likewise.
837         * testsuite/23_containers/unordered_multimap/erase/24061-map.cc:
838         Likewise.
839         * testsuite/23_containers/unordered_multiset/erase/1.cc:  Likewise.
840         * testsuite/23_containers/unordered_multiset/erase/24061-map.cc:
841         Likewise.
843 2010-03-04  Paolo Carlini  <paolo.carlini@oracle.com>
845         * testsuite/util/testsuite_container_traits.h (traits_base): Add
846         has_throwing_erase trait.
847         (traits<vector>, traits<deque>): Typedef the latter to true_type.
848         * testsuite/util/exception/safety.h (generation_prohibited):
849         Do not test vector::erase and deque::erase: can throw if
850         either copy constructor or assignment operator of value_type
851         throws.
852         * testsuite/23_containers/vector/requirements/exception/
853         generation_prohibited.cc: Remove xfail.
854         * testsuite/23_containers/deque/requirements/exception/
855         generation_prohibited.cc: Likewise.
857         * include/ext/throw_allocator.h (hash<__gnu_cxx::throw_value_limit>::
858         operator(), hash<__gnu_cxx::throw_value_random>::operator()): Pass
859         argument by const ref.
861         * testsuite/util/testsuite_container_traits.h (traits<map>,
862         traits<multimap>, traits<set>, traits<multiset>,
863         traits<unordered_map>, traits<unordered_multimap>,
864         traits<unordered_set>, traits<unordered_multiset>): Typedef
865         consistently has_erase and has_insert as true_type.
867         * testsuite/util/testsuite_container_traits.h
868         (traits<unordered_map>, traits<unordered_multimap>,
869         traits<unordered_set>, traits<unordered_multiset>): Do not wrongly
870         typedef has_size_type_constructor as true_type: the constructor
871         accepting a size_type actually gets the initial number of
872         buckets.
874 2010-03-03  Benjamin Kosnik  <bkoz@redhat.com>
876         * doc/Makefile.am: Re-organize xml sources.
877         (doc-latex-doxygen): New.
878         (doc-pdf-doxygen): New.
879         (stamp-xml-doxygen, stamp-latex-doxygen): New.
880         * doc/Makefile.in: Regenerate.
881         * doc/doxygen/user.cfg.in: Add support here.
882         * doc/xml/manual/appendix_contributing.xml: Add specifics.
884         * doc/xml/manual/concurrency.xml: New.
885         * doc/xml/manual/atomics.xml: New.
886         * doc/xml/manual/spine.xml: Adjust.
887         * doc/xml/manual/diagnostics.xml: Adjust.
889 2010-03-03  Paolo Carlini  <paolo.carlini@oracle.com>
890             Jonathan Wakely  <jwakely.gcc@gmail.com>
892         * include/bits/unique_ptr.h (unique_ptr<>::get_deleter): Simplify
893         return type.
894         * testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Adjust
895         dg-error line number.
896         * testsuite/20_util/unique_ptr/assign/assign_neg.cc: Likewise.
898 2010-03-02  Paolo Carlini  <paolo.carlini@oracle.com>
900         * include/debug/bitset (hash): Minor tweaks.
901         * include/debug/vector (hash): Likewise.
902         * include/profile/bitset (hash): Likewise.
903         * include/profile/vector (hash): Likewise.
905 2010-03-02  Paolo Carlini  <paolo.carlini@oracle.com>
907         * include/bits/functional_hash.h (_Fnv_hash_base<>::hash): Change
908         to template.
909         * include/tr1/functional_hash.h (_Fnv_hash_base<>::hash): Likewise.
910         * include/bits/vector.tcc (hash): Adjust.
911         * include/bits/basic_string.h (hash): Likewise.
912         * include/std/bitset (hash): Likewise.
913         * src/hash-string-aux.cc (hash): Likewise.
915 2010-03-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
917         * include/std/mutex (lock_guard::lock_guard): Do not lock mutex when
918         adopt_lock_t constructor is used.
919         * testsuite/30_threads/lock_guard/cons/1.cc: New.
921 2010-03-02  Paolo Carlini  <paolo.carlini@oracle.com>
923         * include/bits/stl_bvector.h (hash<vector<bool, _Alloc>>::
924         operator()(const vector<bool, _Alloc>&)): Move definition...
925         * include/bits/vector.tcc: ... here.
927 2010-03-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
929         * testsuite/Makefile.am (check-DEJAGNU): Include de* in normal0
930         dirs.
931         * testsuite/Makefile.in: Regenerate.
933 2010-03-02  Paolo Carlini  <paolo.carlini@oracle.com>
935         * include/bits/stl_bvector.h (hash<vector<bool, _Alloc>>): Add.
936         * include/debug/vector (hash<__debug::vector<bool, _Alloc>>):
937         Likewise.
938         * include/profile/vector (hash<__profile::vector<bool, _Alloc>>):
939         Likewise.
940         * testsuite/23_containers/vector/bool/hash/1.cc: New.
942         * include/std/bitset (hash<bitset<_Nb>>): Small tweaks.
943         (hash<bitset<0>>): Add.
944         * include/debug/bitset (hash<__debug::bitset<_Nb>>): Forward to
945         hash<bitset<_Nb>>.
946         * include/profile/bitset (hash<__profile::bitset<_Nb>>): Likewise.
947         * testsuite/23_containers/bitset/hash/1.cc: Improve.
949 2010-03-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
951         PR libstdc++/43230
952         * testsuite/30_threads/promise/members/set_value3.cc
953         (tester::~tester): Remove.
955 2010-03-02  Paolo Carlini  <paolo.carlini@oracle.com>
957         * include/std/bitset (_Base_bitset<>::_M_getdata()): Add.
958         (hash<bitset<_Nb>>): Add, use the latter.
959         * include/debug/bitset (hash<__debug::bitset<_Nb>>): Add.
960         * include/profile/bitset (hash<__profile::bitset<_Nb>>): Likewise.
961         * testsuite/23_containers/bitset/hash/1.cc: New.
963 2010-03-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
965         PR libstdc++/43183
966         * include/bits/unique_ptr.h (reset): Fix as per working paper.
967         (operator*, operator->, operator[], operator bool, release): Use
968         pointer's null value instead of 0.
969         * testsuite/20_util/unique_ptr/assign/assign_neg.cc: Adjust.
970         * testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Adjust.
971         * testsuite/20_util/unique_ptr/modifiers/43183.cc: New.
973 2010-03-01  Paolo Carlini  <paolo.carlini@oracle.com>
975         * include/std/iomanip (get_money, put_money): Add in C++0x mode; tidy.
976         * testsuite/27_io/manipulators/extended/get_money/char/1.cc: New.
977         * testsuite/27_io/manipulators/extended/get_money/wchar_t/1.cc:
978         Likewise.
979         * testsuite/27_io/manipulators/extended/put_money/char/1.cc: Likewise.
980         * testsuite/27_io/manipulators/extended/put_money/wchar_t/1.cc:
981         Likewise.
983 2010-03-01  Benjamin Kosnik  <bkoz@redhat.com>
985         * include/bits/atomicfwd_cxx.h: Add typedefs to group.
987 2010-03-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
989         PR libstdc++/32499
990         * testsuite/Makefile.am (check-DEJAGNU
991         $(check_DEJAGNU_normal_targets)): Export AR, RANLIB.
992         * testsuite/Makefile.in: Regenerate.
994 2010-02-28  Gerald Pfeifer  <gerald@pfeifer.com>
996         * doc/html/ext/pb_ds/references.html: Adjust link to SGI's STL
997         site.
999 2010-02-28  Paolo Carlini  <paolo.carlini@oracle.com>
1001        * src/hash-long-double-aux.cc (hash<long double>::
1002        operator()(long double)): Hash both -0 and +0 to 0.
1004 2010-02-25  Ed Smith-Rowland  <3dw4rd@verizon.net>
1006         * include/bits/random.tcc (operator<<): Use max_digits10.
1008 2010-02-25  Ed Smith-Rowland  <3dw4rd@verizon.net>
1010         * include/std/limits (__numeric_limits_base::max_digits10,
1011         numeric_limits<>::max_digits10, numeric_limits<>::lowest): Add.
1012         * src/limits.cc: Define max_digits10.
1013         * config/abi/pre/gnu.ver: Adjust.
1014         * testsuite/18_support/numeric_limits/dr559.cc: Test max_digits10
1015         and lowest too.
1016         * testsuite/18_support/numeric_limits/lowest.cc: New.
1017         * testsuite/18_support/numeric_limits/max_digits10.cc: New.
1019 2010-02-25  Paolo Carlini  <paolo.carlini@oracle.com>
1021         * include/bits/functional_hash.h (__hash_combine): Remove.
1022         (_Fnv_hash_base<>::hash(const char*, size_t)): Add defaulted
1023         hash parameter.
1024         (_Fnv_hash::__hash_combine(const _Tp&, size_t)): Add.
1025         * include/std/system_error (hash<system_error>): Adjust.
1026         * src/compatibility-c++0x.cc (hash<system_error>): Likewise.
1028 2010-02-24  Benjamin Kosnik  <bkoz@redhat.com>
1030         * doc/xml/faq.xml: Adjust structure for pdf index.
1031         * doc/xml/manual/mt_allocator.xml: Same.
1032         * doc/xml/manual/allocator.xml: Same.
1033         * doc/xml/manual/ctype.xml: Same.
1034         * doc/xml/manual/numerics.xml: Same.
1035         * doc/xml/manual/codecvt.xml: Same.
1036         * doc/xml/manual/intro.xml: Same.
1037         * doc/xml/manual/shared_ptr.xml: Same.
1038         * doc/xml/manual/status_cxxtr1.xml: Same.
1039         * doc/xml/manual/auto_ptr.xml: Same.
1040         * doc/xml/manual/internals.xml: Same.
1041         * doc/xml/manual/status_cxx1998.xml: Same.
1042         * doc/xml/manual/parallel_mode.xml: Same.
1043         * doc/xml/manual/profile_mode.xml: Same.
1044         * doc/xml/manual/containers.xml: Same.
1045         * doc/xml/manual/io.xml: Same.
1046         * doc/xml/manual/concurrency_extensions.xml: Same.
1047         * doc/xml/manual/appendix_porting.xml: Same.
1048         * doc/xml/manual/utilities.xml: Same.
1049         * doc/xml/manual/support.xml: Same.
1050         * doc/xml/manual/bitmap_allocator.xml: Same.
1051         * doc/xml/manual/configure.xml: Same.
1052         * doc/xml/manual/build_hacking.xml: Same.
1053         * doc/xml/manual/evolution.xml: Same.
1054         * doc/xml/manual/using.xml: Same.
1055         * doc/xml/manual/debug.xml: Same.
1056         * doc/xml/manual/localization.xml: Same.
1057         * doc/xml/manual/strings.xml: Same.
1058         * doc/xml/manual/debug_mode.xml: Same.
1059         * doc/xml/manual/locale.xml: Same.
1060         * doc/xml/manual/extensions.xml: Same.
1061         * doc/xml/manual/appendix_contributing.xml: Same.
1062         * doc/xml/manual/prerequisites.xml: Same.
1063         * doc/xml/manual/messages.xml: Same.
1064         * doc/xml/manual/diagnostics.xml: Same.
1065         * doc/xml/manual/algorithms.xml: Same.
1066         * doc/xml/manual/appendix_free.xml: Same.
1067         * doc/xml/manual/iterators.xml: Same.
1068         * doc/xml/manual/spine.xml: Same.
1069         * doc/xml/manual/status_cxxtr24733.xml: Same.
1070         * doc/xml/manual/status_cxx200x.xml: Same.
1071         * doc/Makefile.am: Refactor.
1072         * doc/Makefile.in: Regenerate.
1074         * include/bits/c++0x_warning.h: Tweak doxygen file markup.
1076 2010-02-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1078         * testsuite/ext/new_allocator/deallocate_global.cc: Require
1079         __cxa_atexit.
1080         * testsuite/ext/throw_allocator/deallocate_global.cc: Likewise.
1082 2010-02-23  Benjamin Kosnik  <bkoz@redhat.com>
1084         * doc/xml/manual/concurrency.xml: Move...
1085         * doc/xml/manual/concurrency_extensions.xml: ...here.
1086         * doc/xml/manual/extensions.xml: Adjust.
1087         * doc/Makefile.am: Adjust.
1088         * doc/Makefile.in: Regenerate.
1090 2010-02-23  Benjamin Kosnik  <bkoz@redhat.com>
1092         * include/bits/random.h: Doxygen group markup fixes.
1094 2010-02-23  Paolo Carlini  <paolo.carlini@oracle.com>
1096         * include/bits/functional_hash.h (struct _Fnv_hash): Rename
1097         to _Fnv_hash_base.
1098         (struct _Fnv_hash): Add, derives from the latter.
1099         (__hash_combine): Add.
1100         (hash<float>::operator()(float), hash<double>::operator()(double)):
1101         Adjust.
1102         * include/bits/basic_string.h (hash<string>, hash<wstring>,
1103         hash<u16string>, hash<u32string>): Adjust.
1104         * src/hash-string-aux.cc: Adjust.
1105         * src/compatibility-c++0x.cc (hash<error_code>): Use __hash_combine.
1106         * include/std/system_error (hash<error_code>): Likewise.
1107         * include/std/thread (struct hash<thread::id>): Add.
1108         * include/tr1/functional_hash.h : Rename to _Fnv_hash_base.
1109         (struct _Fnv_hash): Add, derives from the latter.
1110         (hash<float>::operator()(float), hash<double>::operator()(double)):
1111         Adjust.
1112         * testsuite/30_threads/thread/id/hash.cc: New.
1113         * testsuite/30_threads/thread/cons/assign_neg.cc: Adjust dg-error
1114         line number.
1115         * testsuite/30_threads/thread/cons/copy_neg.cc: Likewise.
1117 2010-02-22  Janis Johnson  <janis187@us.ibm.com>
1119         * src/compatibility-ldbl.cc: Include new hash-long-double-aux.cc.
1121 2010-02-22  Paolo Carlini  <paolo.carlini@oracle.com>
1123         * src/hash-aux.cc: Rename to...
1124         * src/hash-string-aux.cc: ... this.
1125         * src/hash-long-double-aux.cc: New.
1126         * src/hash_c++0x.cc: Adjust.
1127         * src/hash_tr1.cc: Likewise.
1128         * src/compatibility-c++0x.cc: Likewise.
1130 2010-02-22  Benjamin Kosnik  <bkoz@redhat.com>
1132         * doc/xml/class.txml: Adjust biblio markup.
1133         * doc/xml/manual/allocator.xml: Same.
1134         * doc/xml/manual/ctype.xml: Same.
1135         * doc/xml/manual/codecvt.xml: Same.
1136         * doc/xml/manual/backwards_compatibility.xml: Same.
1137         * doc/xml/manual/abi.xml: Same.
1138         * doc/xml/manual/shared_ptr.xml: Same.
1139         * doc/xml/manual/profile_mode.xml: Same.
1140         * doc/xml/manual/using_exceptions.xml: Same.
1141         * doc/xml/manual/locale.xml: Same.
1142         * doc/xml/manual/appendix_contributing.xml: Same.
1143         * doc/xml/manual/messages.xml: Same.
1144         * doc/Makefile.am (DBLATEX_FLAGS): Adjust.
1145         * doc/Makefile.in: Regenerate.
1147 2010-02-22  François Dumont  <francois.cppdevs@free.fr>
1149        * doc/xml/manual/profile_mode.xml: Minor updates and fixes.
1150        * doc/xml/manual/debug_mode.xml: Likewise.
1151        * doc/xml/manual/test.xml: Likewise.
1153 2010-02-22  Paolo Carlini  <paolo.carlini@oracle.com>
1155         * include/tr1_impl/complex (arg): Use std::signbit only when
1156         available.
1158 2010-02-22  Paolo Carlini  <paolo.carlini@oracle.com>
1160         * include/bits/functional_hash.h (hash<string>, hash<wstring>,
1161         hash<u16string>, hash<u32string>, hash<error_code>): Move, per
1162         DR 1182 to...
1163         * include/bits/basic_string.h: ... here.
1164         * include/std/system_error: ... and here, respectively.
1165         * src/hash-aux.cc (hash<long double>::operator()(long double)):
1166         Move definition...
1167         * src/hash_c++0x.cc: ... here, new file.
1168         * src/hash_tr1.cc: ... and here, tweak includes.
1169         * src/compatibility-c++0x.cc (hash, _Fnv_hash): Remove.
1170         * src/Makefile.am: Adjust.
1171         * src/Makefile.in: Regenerate.
1172         * include/std/functional: Include <bits/functexcept.h>.
1173         * include/std/unordered_set: Remove redundant include.
1174         * include/std/unordered_map: Likewise.
1175         * include/tr1/functional_hash.h: Remove spurious trailing semicolon.
1176         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Remove
1177         dg-excess.
1179 2010-02-21  Paolo Carlini  <paolo.carlini@oracle.com>
1181         * include/std/complex (proj): Change return type per DR 1137.
1182         (conj): Copy from tr1_impl, likewise adjust return type.
1183         * include/tr1_impl/complex (conj): Remove.
1184         * include/tr1/complex (conj): Add both overloads.
1185         * testsuite/26_numerics/complex/dr781.cc: Rename to...
1186         * testsuite/26_numerics/complex/dr781_dr1137.cc: ... this, and extend.
1188         * include/tr1_impl/complex (arg): Optimize.
1190 2010-02-21  Paolo Carlini  <paolo.carlini@oracle.com>
1192         * testsuite/20_util/is_trivial/requirements/typedefs.cc: New.
1193         * testsuite/20_util/is_trivial/requirements/
1194         explicit_instantiation.cc: Likewise.
1195         * testsuite/20_util/is_pod/value.cc: Likewise.
1196         * testsuite/20_util/is_pod/requirements/typedefs.cc: Likewise.
1197         * testsuite/20_util/is_pod/requirements/
1198         explicit_instantiation.cc: Likewise.
1199         * testsuite/20_util/is_standard_layout/requiremenents/
1200         typedefs.cc: Likewise.
1201         * testsuite/20_util/is_standard_layout/requiremenents/
1202         explicit_instantiation.cc: Likewise.
1204 2010-02-20  Manuel López-Ibáñez  <manu@gcc.gnu.org>
1206         PR c++/35669
1207         * testsuite/18_support/headers/cstddef/macros.cc: Add
1208         -Wno-conversion-null.
1210 2010-02-19  Paolo Carlini  <paolo.carlini@oracle.com>
1212         * include/tr1_impl/array (array): Add pointer and const_pointer
1213         typedefs in C++0x mode, per DR 1306.
1214         * testsuite/util/testsuite_containers.h (basic_types): Add pointer
1215         and const_pointer typedefs.
1216         (pointer_aware_types): Remove.
1217         * testsuite/util/testsuite_container_traits.h: Adjust.
1219 2010-02-19  Paolo Carlini  <paolo.carlini@oracle.com>
1221         * include/bits/stl_algo.h (for_each): Implement resolution of DR 1110.
1222         * testsuite/25_algorithms/for_each/1.cc: New.
1224 2010-02-19  Paolo Carlini  <paolo.carlini@oracle.com>
1226         * include/bits/shared_ptr_base.h (__weak_ptr): Remove deleted
1227         comparison operators, per DR 1256.
1228         * include/bits/shared_ptr.h (weak_ptr): Likewise.
1229         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust.
1231 2010-02-18  Benjamin Kosnik  <bkoz@redhat.com>
1233         * scripts/run_doxygen: Add shortnames option.
1234         * doc/Makefile.am (doc-man-doxygen): Use it.
1235         (doc-html-doxygen): Use it.
1236         (doc-xml-doxygen): Use it, but default to NO.
1237         (doc-pdf-dblatex): Add.
1238         * doc/Makefile.in: Regenerate.
1239         * doc/doxygen/user.cfg.in: Update filelist.
1240         * include/bits/locale_facets.h: Fix markup warning.
1242 2010-02-18  Benjamin Kosnik  <bkoz@redhat.com>
1244         * doc/xml/manual/using.xml: Update.
1245         * doc/xml/manual/status_cxx1998.xml: Same.
1246         * doc/xml/manual/status_cxx200x.xml: Add link.
1247         * doc/html/*: Regenerate.
1249         * testsuite/17_intro/freestanding.cc: Add.
1251 2010-02-18  Paolo Carlini  <paolo.carlini@oracle.com>
1253         * libsupc++/typeinfo: Add system_header pragma.
1254         * libsupc++/exception: Likewise.
1255         * libsupc++/cxxabi-forced.h: Likewise.
1256         * libsupc++/new: Likewise.
1257         * libsupc++/cxxabi.h: Likewise.
1258         * libsupc++/initializer_list: Likewise.
1260 2010-02-18  Paolo Carlini  <paolo.carlini@oracle.com>
1262         * libsupc++/nested_exception.h: Fix <bits/c++0x_warning.h> include.
1264 2010-02-17  Benjamin Kosnik  <bkoz@redhat.com>
1266         * doc/xml/manual/appendix_contributing.xml: Update markup rules
1267         for quoting and functions.
1269 2010-02-17  Chris Jefferson  <chris@bubblescope.net>
1271         * include/bits/locale_facets.h (__convert_to_v): Add empty
1272         exception-specification.
1274 2010-02-17  Paolo Carlini  <paolo.carlini@oracle.com>
1276         * include/std/limits: Implement resolution of DR 559 (CD1) in
1277         C++0x mode.
1278         * testsuite/18_support/numeric_limits/dr559.cc: New.
1280 2010-02-16  Benjamin Kosnik  <bkoz@redhat.com>
1282         * src/ios_locale.cc: Fixes for -pedantic.
1283         * src/system_error.cc: Same.
1284         * src/locale.cc: Same.
1285         * src/list.cc: Same.
1286         * src/locale_facets.cc: Same.
1287         * src/locale_init.cc: Same.
1288         * src/ios.cc: Same.
1289         * config/locale/darwin/ctype_members.cc: Same.
1290         * config/locale/gnu/collate_members.cc: Same.
1291         * config/locale/gnu/ctype_members.cc: Same.
1292         * config/locale/gnu/c_locale.cc: Same.
1293         * config/locale/gnu/monetary_members.cc: Same.
1294         * config/locale/gnu/time_members.cc: Same.
1295         * config/locale/ieee_1003.1-2001/c_locale.cc: Same.
1296         * config/locale/generic/collate_members.cc: Same.
1297         * config/locale/generic/ctype_members.cc: Same.
1298         * config/locale/generic/c_locale.cc: Same.
1299         * config/locale/generic/monetary_members.cc: Same.
1300         * config/locale/generic/time_members.cc: Same.
1301         * config/io/basic_file_stdio.cc: Same.
1303         * libsupc++/pbase_type_info.cc: Fixes for -fno-rtti.
1304         * libsupc++/pointer_type_info.cc: Same.
1305         * libsupc++/eh_personality.cc: Same.
1307         * include/std/system_error: Throw spacing.
1308         * include/bits/locale_classes.h: Same.
1309         * include/bits/locale_facets.h: Same.
1310         * include/bits/ios_base.h: Same.
1312         * testsuite/17_intro/headers/c++200x/all_no_rtti.cc: New.
1313         * testsuite/17_intro/headers/c++1998/all_no_rtti.cc: New.
1315 2010-02-16  Paolo Carlini  <paolo.carlini@oracle.com>
1317         * include/bits/random.h (linear_congruential_engine(_Sseq&),
1318         mersenne_twister_engine(_Sseq&), subtract_with_carry_engine(_Sseq&)):
1319         Do not enable for the type itself.
1320         (discard_block_engine(_Sseq&), independent_bits_engine(_Sseq&),
1321         shuffle_order_engine(_Sseq&)): Do not enable for the type itself too.
1322         (linear_congruential_engine<>::seed(_Sseq&),
1323         mersenne_twister_engine<>::seed(_Sseq&),
1324         subtract_with_carry_engine<>::seed(_Sseq&)): Use enable_if on the
1325         return type.
1326         (discard_block_engine<>::seed(_Sseq&),
1327         independent_bits_engine<>::seed(_Sseq&),
1328         shuffle_order_engine<>::seed(_Sseq&)): Do not use enable_if.
1329         * include/bits/random.tcc: Adjust definitions.
1330         * testsuite/26_numerics/random/independent_bits_engine/cons/copy.cc:
1331         New.
1332         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
1333         copy.cc: Likewise.
1334         * testsuite/26_numerics/random/discard_block_engine/cons/
1335         copy.cc: Likewise.
1336         * testsuite/26_numerics/random/mersenne_twister_engine/cons/
1337         copy.cc: Likewise.
1338         * testsuite/26_numerics/random/linear_congruential_engine/cons/
1339         copy.cc: Likewise.
1340         * testsuite/26_numerics/random/shuffle_order_engine/cons/
1341         copy.cc: Likewise.
1343         * testsuite/26_numerics/random/independent_bits_engine/cons/
1344         base_move.cc: Minor tweaks.
1345         * testsuite/26_numerics/random/independent_bits_engine/cons/seed1.cc:
1346         Likewise.
1347         * testsuite/26_numerics/random/independent_bits_engine/cons/seed2.cc:
1348         Likewise.
1349         * testsuite/26_numerics/random/independent_bits_engine/cons/
1350         base_copy.cc: Likewise.
1351         * testsuite/26_numerics/random/independent_bits_engine/cons/
1352         default.cc: Likewise.
1353         * testsuite/26_numerics/random/independent_bits_engine/cons/
1354         seed_seq.cc: Likewise.
1355         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
1356         seed1.cc: Likewise.
1357         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
1358         seed2.cc: Likewise.
1359         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
1360         default.cc: Likewise.
1361         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
1362         seed_seq.cc: Likewise.
1363         * testsuite/26_numerics/random/discard_block_engine/cons/base_move.cc:
1364         Likewise.
1365         * testsuite/26_numerics/random/discard_block_engine/cons/seed1.cc:
1366         Likewise.
1367         * testsuite/26_numerics/random/discard_block_engine/cons/seed2.cc:
1368         Likewise.
1369         * testsuite/26_numerics/random/discard_block_engine/cons/base_copy.cc:
1370         Likewise.
1371         * testsuite/26_numerics/random/discard_block_engine/cons/default.cc:
1372         Likewise.
1373         * testsuite/26_numerics/random/discard_block_engine/cons/seed_seq.cc:
1374         Likewise.
1375         * testsuite/26_numerics/random/mersenne_twister_engine/cons/seed1.cc:
1376         Likewise.
1377         * testsuite/26_numerics/random/mersenne_twister_engine/cons/seed2.cc:
1378         Likewise.
1379         * testsuite/26_numerics/random/mersenne_twister_engine/cons/
1380         default.cc: Likewise.
1381         * testsuite/26_numerics/random/mersenne_twister_engine/cons/
1382         seed_seq.cc: Likewise.
1383         * testsuite/26_numerics/random/linear_congruential_engine/cons/
1384         seed1.cc: Likewise.
1385         * testsuite/26_numerics/random/linear_congruential_engine/cons/
1386         seed2.cc: Likewise.
1387         * testsuite/26_numerics/random/linear_congruential_engine/cons/
1388         seed_seq.cc: Likewise.
1389         * testsuite/26_numerics/random/shuffle_order_engine/cons/base_move.cc:
1390         Likewise.
1391         * testsuite/26_numerics/random/shuffle_order_engine/cons/seed1.cc:
1392         Likewise.
1393         * testsuite/26_numerics/random/shuffle_order_engine/cons/seed2.cc:
1394         Likewise.
1395         * testsuite/26_numerics/random/shuffle_order_engine/cons/base_copy.cc:
1396         Likewise.
1397         * testsuite/26_numerics/random/shuffle_order_engine/cons/default.cc:
1398         Likewise.
1399         * testsuite/26_numerics/random/shuffle_order_engine/cons/seed_seq.cc:
1400         Likewise.
1402 2010-02-16  Paolo Carlini  <paolo.carlini@oracle.com>
1404         * include/bits/unique_ptr.h: (unique_ptr<>::
1405         unique_ptr(const unique_ptr<_Up, _Up_Deleter>&),
1406         operator=(const unique_ptr<_Up, _Up_Deleter>&)): Remove, redundant,
1407         per DR 1303.
1408         * include/bits/shared_ptr.h (shared_ptr<>::
1409         shared_ptr(const unique_ptr<_Up, _Up_Deleter>&),
1410         operator=(const unique_ptr<_Up, _Up_Deleter>&)): Likewise.
1411         * include/bits/shared_ptr_base.h (__shared_ptr<>::
1412         __shared_ptr(const unique_ptr<_Up, _Up_Deleter>&),
1413         operator=(const unique_ptr<_Up, _Up_Deleter>&)): Likewise.
1414         * testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Adjust.
1415         * testsuite/20_util/unique_ptr/assign/assign_neg.cc: Likewise.
1416         * testsuite/20_util/shared_ptr/cons/unique_ptr_neg.cc: Likewise.
1417         * testsuite/20_util/shared_ptr/assign/unique_ptr_lvalue_neg.cc:
1418         Likewise.
1420 2010-02-15  Paolo Carlini  <paolo.carlini@oracle.com>
1422         * testsuite/ext/median.cc: Adjust.
1424 2010-02-15  Paolo Carlini  <paolo.carlini@oracle.com>
1426         * include/bits/stl_algo.h (__median): Move...
1427         * include/ext/algorithm: ... here, being an SGI extension.
1429 2010-02-12  Jonathan Wakely  <jwakely.gcc@gmail.com>
1430             Paolo Carlini  <paolo.carlini@oracle.com>
1432         PR libstdc++/42819, DR 1315
1433         * include/std/future (async): Use std::result_of for the template
1434         argument of the std::future return type; adjust everywhere.
1435         * testsuite/30_threads/async/42819.cc: New.
1436         * testsuite/30_threads/packaged_task/cons/assign_neg.cc: Adjust
1437         dg-error line number.
1438         * testsuite/30_threads/packaged_task/cons/copy_neg.cc: Likewise.
1439         * testsuite/30_threads/future/cons/assign_neg.cc: Likewise.
1440         * testsuite/30_threads/future/cons/copy_neg.cc: Likewise.
1441         * testsuite/30_threads/promise/cons/assign_neg.cc: Likewise.
1442         * testsuite/30_threads/promise/cons/assign_neg.cc: Likewise.
1444 2010-02-11  Paolo Carlini  <paolo.carlini@oracle.com>
1446         * config/abi/pre/gnu.ver: Revert last changes.
1448 2010-02-11  Jason Merrill  <jason@redhat.com>
1450         * include/std/thread (~_Impl_base): Declare inline.
1451         * libsupc++/nested_exception.h (~nested_exception): Likewise.
1453 2010-02-11  Paolo Carlini  <paolo.carlini@oracle.com>
1455         PR libstdc++/41975, DR 579
1456         * include/bits/hashtable.h (_Hashtable<>::_M_erase_node): Remove.
1457         (erase(const_iterator), erase(const_iterator, const_iterator)):
1458         Change return type to void.
1459         * include/debug/unordered_map: Adjust.
1460         * include/debug/unordered_set: Likewise.
1461         * testsuite/util/exception/safety.h: Likewise.
1462         * testsuite/23_containers/unordered_map/erase/1.cc: Likewise.
1463         * testsuite/23_containers/unordered_map/erase/24061-map.cc: Likewise.
1464         * testsuite/23_containers/unordered_set/erase/1.cc:  Likewise.
1465         * testsuite/23_containers/unordered_set/erase/24061-map.cc: Likewise.
1466         * testsuite/23_containers/unordered_multimap/erase/1.cc:  Likewise.
1467         * testsuite/23_containers/unordered_multimap/erase/24061-map.cc:
1468         Likewise.
1469         * testsuite/23_containers/unordered_multiset/erase/1.cc:  Likewise.
1470         * testsuite/23_containers/unordered_multiset/erase/24061-map.cc:
1471         Likewise.
1473 2010-02-11  Paolo Carlini  <paolo.carlini@oracle.com>
1475         * config/abi/pre/gnu.ver: Avoid exporting inadvertently
1476         std::nested_exception symbols at GLIBCXX_3.4.
1478 2010-02-10  Jason Merrill  <jason@redhat.com>
1480         Core issue 906
1481         * include/std/thread (~_Impl_base): Move defaulted dtor out of line.
1482         * libsupc++/nested_exception.h (~nested_exception): Likewise.
1483         * testsuite/18_support/nested_exception/throw_with_nested.cc: Likewise.
1484         * testsuite/18_support/nested_exception/rethrow_if_nested.cc: Likewise.
1486 2010-02-10  Paolo Carlini  <paolo.carlini@oracle.com>
1488         * include/tr1/hashtable.h: Fold in include/tr1_impl/hashtable.h
1489         contents.
1490         * include/tr1_impl/hashtable.h: Remove.
1491         * include/tr1_impl/hashtable_policy.h: Move and rename...
1492         * include/tr1/hashtable_policy.h: ... here.
1493         * include/tr1_impl/unordered_map: Move and rename...
1494         * include/tr1/unordered_map.h: ... here.
1495         * include/tr1_impl/unordered_set: Move and rename...
1496         * include/tr1/unordered_set.h: ... here.
1497         * include/tr1_impl/unordered_map: Move and rename...
1498         * include/tr1/unordered_map.h: ... here.
1499         * include/tr1/unordered_map: Adjust.
1500         * include/tr1/unordered_set: Likewise.
1501         * include/Makefile.am: Adjust.
1502         * include/Makefile.in: Regenerate.
1504         * include/std/c++0x_warning.h: Move...
1505         * include/bits/c++0x_warning.h: ... here.
1506         * include/debug/unordered_map: Adjust.
1507         * include/debug/unordered_set: Likewise.
1508         * include/std/tuple: Likewise.
1509         * include/std/system_error: Likewise.
1510         * include/std/forward_list: Likewise.
1511         * include/std/thread: Likewise.
1512         * include/std/type_traits: Likewise.
1513         * include/std/future: Likewise.
1514         * include/std/regex: Likewise.
1515         * include/std/atomic: Likewise.
1516         * include/std/ratio: Likewise.
1517         * include/std/random: Likewise.
1518         * include/std/unordered_map: Likewise.
1519         * include/std/chrono: Likewise.: Likewise.
1520         * include/std/condition_variable: Likewise.
1521         * include/std/mutex: Likewise.
1522         * include/std/unordered_set: Likewise.
1523         * include/std/array: Likewise.
1524         * include/profile/unordered_map: Likewise.
1525         * include/profile/unordered_set: Likewise.
1526         * include/c_global/cinttypes: Likewise.
1527         * include/c_global/ctgmath: Likewise.
1528         * include/c_global/cfenv: Likewise.
1529         * include/c_global/cstdint: Likewise.
1530         * include/c_global/cstdbool: Likewise.
1531         * include/c_global/ccomplex: Likewise.
1533         * include/bits/shared_ptr.h: Do not include <bits/c++0x_warning.h>
1534         at all, the file is not meant to be included by the users.
1535         * include/bits/functional_hash.h: Likewise.
1536         * include/bits/unique_ptr.h: Likewise.
1537         * include/bits/forward_list.h: Likewise.
1539         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust dg-*
1540         line numbers.
1541         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
1542         * testsuite/23_containers/forward_list/requirements/dr438/
1543         assign_neg.cc: Likewise.
1544         * testsuite/23_containers/forward_list/requirements/dr438/
1545         insert_neg.cc: Likewise.
1546         * testsuite/23_containers/forward_list/requirements/dr438/
1547         constructor_1_neg.cc: Likewise.
1548         * testsuite/23_containers/forward_list/requirements/dr438/
1549         constructor_2_neg.cc: Likewise.
1550         * testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Likewise.
1551         * testsuite/20_util/unique_ptr/assign/assign_neg.cc: Likewise.
1553 2010-02-10  Paolo Carlini  <paolo.carlini@oracle.com>
1555         * include/bits/hashtable.h: Fold in include/tr1_impl/hashtable.h
1556         for C++0x use.
1557         * include/bits/hashtable_policy.h: New, copy and adjust for
1558         C++0x use, include/tr1_impl/hashtable_policy.h; fix erase and
1559         insert member functions per n3000.
1560         * include/bits/unordered_map.h: Likewise for include/tr1_impl/
1561         unordered_map.
1562         * include/bits/unordered_set.h: Likewise for include/tr1_impl/
1563         unordered_set.
1564         * include/Makefile.am: Adjust.
1565         * include/Makefile.in: Regenerate.
1566         * include/tr1/unordered_map: Adjust.
1567         * include/tr1/unordered_set: Likewise.
1568         * include/tr1_impl/unordered_map: Adjust, now used only by tr1.
1569         * include/tr1_impl/hashtable: Likewise.
1570         * include/tr1_impl/hashtable_policy.h: Likewise.
1571         * include/tr1_impl/unordered_set: Likewise.
1572         * include/std/unordered_map: Adjust and simplify includes.
1573         * include/std/unordered_set: Likewise.
1574         * include/debug/unordered_map: Adjuse erase and insert members.
1575         * include/debug/unordered_set: Likewise.
1576         * include/profile/unordered_map: Likewise.
1577         * include/profile/unordered_set: Likewise.
1578         * testsuite/util/exception/safety.h: Fix for the updated erase and
1579         insert member functions of the unordered_containers.
1580         * testsuite/23_containers/unordered_map/erase/1.cc: New.
1581         * testsuite/23_containers/unordered_map/erase/24061-map.cc: Likewise.
1582         * testsuite/23_containers/unordered_map/insert/map_single.cc:
1583         Likewise.
1584         * testsuite/23_containers/unordered_map/insert/array_syntax.cc:
1585         Likewise.
1586         * testsuite/23_containers/unordered_map/insert/24061-map.cc: Likewise.
1587         * testsuite/23_containers/unordered_map/insert/map_range.cc: Likewise.
1588         * testsuite/23_containers/set/operators/1_neg.cc: Likewise.
1589         * testsuite/23_containers/unordered_multimap/erase/1.cc: Likewise.
1590         * testsuite/23_containers/unordered_multimap/erase/
1591         24061-multimap.cc: Likewise.
1592         * testsuite/23_containers/unordered_multimap/insert/
1593         24061-multimap.cc: Likewise.
1594         * testsuite/23_containers/unordered_multimap/insert/
1595         multimap_range.cc: Likewise.
1596         * testsuite/23_containers/unordered_multimap/insert/
1597         multimap_single.cc: Likewise.
1598         * testsuite/23_containers/unordered_set/erase/1.cc: Likewise.
1599         * testsuite/23_containers/unordered_set/erase/24061-set.cc: Likewise.
1600         * testsuite/23_containers/unordered_set/insert/set_single.cc: Likewise.
1601         * testsuite/23_containers/unordered_set/insert/24061-set.cc: Likewise.
1602         * testsuite/23_containers/unordered_set/insert/set_range.cc: Likewise.
1603         * testsuite/23_containers/unordered_multiset/erase/1.cc: Likewise.
1604         * testsuite/23_containers/unordered_multiset/erase/
1605         24061-multiset.cc: Likewise.
1606         * testsuite/23_containers/unordered_multiset/insert/
1607         24061-multiset.cc: Likewise.
1608         * testsuite/23_containers/unordered_multiset/insert/
1609         multiset_range.cc: Likewise.
1610         * testsuite/23_containers/unordered_multiset/insert/
1611         multiset_single.cc: Likewise.
1613         * testsuite/23_containers/set/operators/1_neg.cc: Tweak dg-errors
1614         to avoid spurious fails in debug-mode.
1615         * testsuite/23_containers/map/operators/1_neg.cc: Likewise.
1617 2010-02-09  Benjamin Kosnik  <bkoz@redhat.com>
1619         * include/std/streambuf: Adjust doxygen group markup.
1620         * include/std/functional: Same.
1621         * include/ext/vstring.h: Same.
1622         * include/ext/pb_ds/assoc_container.hpp: Same.
1623         * include/ext/stdio_filebuf.h: Same.
1624         * include/ext/stdio_sync_filebuf.h: Same.
1625         * include/bits/localefwd.h: Same.
1626         * include/bits/functional_hash.h: Same.
1627         * include/bits/locale_classes.h: Same.
1628         * include/bits/locale_facets.h: Same.
1629         * include/bits/ios_base.h: Same.
1630         * include/bits/codecvt.h: Same.
1631         * include/bits/locale_facets_nonio.h: Same.
1633         * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
1634         * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
1636 2010-02-08  Benjamin Kosnik  <bkoz@redhat.com>
1638         PR libstdc++/42460
1639         * include/tr1_impl/regex: Fix quoting issues in doxygen markup.
1640         * include/bits/random.h: Fix multi-line doxygen function markup.
1642 2010-02-08  Matthias Klose  <doko@debian.org>
1644         PR libstdc++/42460
1645         * include/std/istream: Fix '\' quoting in doxygen markup.
1647 2010-02-08  Ed Smith-Rowland  <3dw4rd@verizon.net>
1649         * include/bits/random.tcc (uniform_int_distribution<>::
1650         operator()(_UniformRandomNumberGenerator&, const param_type&)):
1651         Use make_unsigned instead of __add_unsigned and conditional
1652         instead of __conditional_type.
1653         * include/std/random: Do not include <ext/type_traits.h> and
1654         <ext/numeric_traits.h>.
1656 2010-02-07  Paolo Carlini  <paolo.carlini@oracle.com>
1658         PR libstdc++/16896
1659         * include/bits/stl_list.h (_List_node_base::transfer): Rename
1660         to _M_transfer.
1661         (_List_node_base::reverse): Rename to _M_reverse.
1662         (_List_node_base::hook): Rename to _M_hook.
1663         (_List_node_base::unhook): Rename to _M_unhook; adjust callers.
1664         * include/bits/list.tcc: Adjust callers.
1665         * src/list.cc: Adjust.
1666         * src/compatibility.cc: Likewise.
1667         * src/compatibility-list.cc: New.
1668         * src/compatibility-debug_list.cc: Likewise.
1669         * src/compatibility-parallel_list.cc: Likewise.
1670         * src/Makefile.am: Add.
1671         * src/Makefile.in: Regenerate.
1672         * config/abi/pre/gnu.ver: Export _M_* symbols.
1674         * src/hash.cc: Rename to hash-aux.cc.
1675         * src/compatibility-ldbl.cc: Adjust.
1676         * src/compatibility-c++0x.cc: Likewise.
1677         * src/hash_tr1.cc: Likewise.
1679         * src/hashtable.cc: Rename to hashtable-aux.cc.
1680         * src/hashtable_c++0x.cc: Adjust.
1681         * src/hashtable_tr1.cc: Likewise.
1683         * src/limits_c++0x.cc: Fold...
1684         * src/limits.cc... here.
1686 2010-02-07  Paolo Carlini  <paolo.carlini@oracle.com>
1688         * include/bits/stl_pair.h (pair<>::pair(_U1&&, const _T2&),
1689         pair<>::pair(const _T1&, _U2&&), pair<>::pair(_U1&&, _U2&&)):
1690         Revert to std::is_convertible, basing on DR 811.
1692 2010-02-06  Paolo Carlini  <paolo.carlini@oracle.com>
1694         PR libstdc++/42989
1695         * config/abi/pre/gnu.ver: Fix wstring move assignment operator typo.
1697 2010-02-06  Paolo Carlini  <paolo.carlini@oracle.com>
1699         PR libstdc++/27340
1700         * include/bits/valarray_before.h: Uglify the structs wrapping
1701         cmath functions differently, eg, _Cos instead of __cos.
1702         * include/bits/valarray_after.h: Adjust.
1704 2010-02-05  Paolo Carlini  <paolo.carlini@oracle.com>
1706         * include/std/future (swap(packaged_task<>&, packaged_task<>&)): Fix
1707         typo in last commit.
1709 2010-02-05  Paolo Carlini  <paolo.carlini@oracle.com>
1711         * include/std/future (swap(packaged_task<>&, packaged_task<>&),
1712         swap(promise<>&, promise<>&)): Add; minor formatting fixes.
1713         * testsuite/30_threads/packaged_task/cons/assign_neg.cc: Adjust
1714         dg-error line number.
1715         * testsuite/30_threads/packaged_task/cons/copy_neg.cc: Likewise.
1716         * testsuite/30_threads/promise/cons/assign_neg.cc: Likewise.
1717         * testsuite/30_threads/promise/cons/copy_neg.cc: Likewise.
1719 2010-02-05  Paolo Carlini  <paolo.carlini@oracle.com>
1721         * include/bits/stl_algobase.h (struct __iter_base): Rename to
1722         _Iter_base; add iterator_type typedef.
1723         (struct __miter_base): Rename to _Miter_base.
1724         (struct __niter_base): Rename to _Niter_base.
1725         (__miter_base, __niter_base): Add, use the latter; adjust everywhere.
1727 2010-02-04  Benjamin Kosnik  <bkoz@redhat.com>
1729         PR libstdc++/42460
1730         * doc/doxygen/user.cfg.in: Update file list.
1731         * include/debug/safe_sequence.h: Doxygen markup fixes for '' and "".
1732         * include/debug/safe_base.h: Same.
1733         * include/debug/macros.h: Same.
1734         * include/tr1_impl/regex: Same.
1735         * include/std/iostream: Same.
1736         * include/std/streambuf: Same.
1737         * include/std/bitset: Same.
1738         * include/std/iosfwd: Same.
1739         * include/std/limits: Same.
1740         * include/std/fstream: Same.
1741         * include/std/istream: Same.
1742         * include/std/ostream: Same.
1743         * include/std/sstream: Same.
1744         * include/parallel/multiway_merge.h: Same.
1745         * include/parallel/for_each.h: Same.
1746         * include/parallel/workstealing.h: Same.
1747         * include/parallel/omp_loop_static.h: Same.
1748         * include/parallel/omp_loop.h: Same.
1749         * include/c_std/csignal: Same.
1750         * include/c_std/cstdlib: Same.
1751         * include/c_std/cstdio: Same.
1752         * include/c_std/cstdarg: Same.
1753         * include/c_std/cctype: Same.
1754         * include/c_std/cerrno: Same.
1755         * include/c_std/cmath: Same.
1756         * include/c_std/ciso646: Same.
1757         * include/c_std/ctime: Same.
1758         * include/c_std/clocale: Same.
1759         * include/c_std/climits: Same.
1760         * include/c_std/cassert: Same.
1761         * include/c_std/csetjmp: Same.
1762         * include/c_std/cwchar: Same.
1763         * include/c_std/cfloat: Same.
1764         * include/c_std/cstring: Same.
1765         * include/c_std/cstddef: Same.
1766         * include/c_std/cwctype: Same.
1767         * include/profile/iterator_tracker.h: Same.
1768         * include/profile/impl/profiler_trace.h: Same.
1769         * include/ext/vstring.h: Same.
1770         * include/ext/algorithm: Same.
1771         * include/ext/pb_ds/detail/pat_trie_/pat_trie_.h.pp: Same.
1772         * include/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.h.pp: Same.
1773         * include/ext/pb_ds/detail/type_utils.hpp: Same.
1774         * include/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp: Same
1775         * include/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp: Same.
1776         * include/ext/rc_string_base.h: Same.
1777         * include/ext/stdio_sync_filebuf.h: Same.
1778         * include/ext/functional: Same.
1779         * include/ext/mt_allocator.h: Same.
1780         * include/bits/basic_ios.h: Same.
1781         * include/bits/stl_map.h: Same.
1782         * include/bits/stl_algobase.h: Same.
1783         * include/bits/stl_queue.h: Same.
1784         * include/bits/locale_classes.h: Same.
1785         * include/bits/stl_set.h: Same.
1786         * include/bits/locale_facets.h: Same.
1787         * include/bits/stl_stack.h: Same.
1788         * include/bits/stl_iterator_base_types.h: Same.
1789         * include/bits/basic_string.h: Same.
1790         * include/bits/stl_multimap.h: Same.
1791         * include/bits/ios_base.h: Same.
1792         * include/bits/stl_deque.h: Same.
1793         * include/bits/stl_multiset.h: Same.
1794         * include/bits/stl_iterator_base_funcs.h: Same.
1795         * include/bits/char_traits.h: Same.
1796         * include/bits/stl_algo.h: Same.
1797         * include/bits/stl_iterator.h: Same.
1798         * include/bits/stl_tempbuf.h: Same.
1799         * include/bits/random.tcc: Same.
1800         * include/bits/stl_function.h: Same.
1801         * include/bits/cpp_type_traits.h: Same.
1802         * include/bits/random.h: Same.
1803         * include/bits/allocator.h: Same.
1804         * include/bits/locale_facets_nonio.h: Same.
1805         * include/c_global/csignal: Same.
1806         * include/c_global/cstdlib: Same.
1807         * include/c_global/cstdio: Same.
1808         * include/c_global/cstdarg: Same.
1809         * include/c_global/cctype: Same.
1810         * include/c_global/cerrno: Same.
1811         * include/c_global/cmath: Same.
1812         * include/c_global/ciso646: Same.
1813         * include/c_global/ctime: Same.
1814         * include/c_global/clocale: Same.
1815         * include/c_global/climits: Same.
1816         * include/c_global/cassert: Same.
1817         * include/c_global/csetjmp: Same.
1818         * include/c_global/cwchar: Same.
1819         * include/c_global/cfloat: Same.
1820         * include/c_global/cstring: Same.
1821         * include/c_global/cstddef: Same.
1822         * include/c_global/cwctype: Same.
1823         * include/tr1/hypergeometric.tcc: Same.
1824         * include/tr1/random.tcc: Same.
1825         * include/tr1/functional: Same.
1826         * include/tr1/random.h: Same.
1827         * include/backward/auto_ptr.h: Same.
1828         * include/backward/binders.h: Same.
1829         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
1830         Adjust line numbers.
1831         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Same.
1832         * testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc:
1833         Same.
1834         * testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc:
1835         Same.
1837 2010-02-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
1839         * include/std/condition_variable (condition_variable_any): Provide
1840         definitions for all members.
1841         * src/condition_variable.cc (condition_variable_any): Adjust
1842         definitions.
1843         * config/abi/pre/gnu.ver: Adjust exports for condition_variable_any.
1844         * testsuite/30_threads/condition_variable_any/cons/assign_neg.cc:
1845         Adjust dg-error line number.
1846         * testsuite/30_threads/condition_variable_any/cons/copy_neg.cc:
1847         Likewise.
1848         * testsuite/30_threads/condition_variable_any/members/1.cc: New.
1849         * testsuite/30_threads/condition_variable_any/members/2.cc: New.
1850         * testsuite/30_threads/condition_variable_any/requirements/
1851         standard_layout.cc: Remove.
1852         * testsuite/30_threads/condition_variable_any/native_handle/
1853         typesizes.cc: Remove.
1855 2010-02-02  Paolo Carlini  <paolo.carlini@oracle.com>
1857         * include/ext/vstring.h (__versa_string::shrink_to_fit): Fix
1858         for -fno-exceptions.
1860 2010-02-02  Benjamin Kosnik  <bkoz@redhat.com>
1862         * include/bits/allocator.h: Fix for -fno-exceptions.
1863         * include/bits/basic_string.h (basic_string::shrink_to_fit): Same.
1865 2010-02-02  Paolo Carlini  <paolo.carlini@oracle.com>
1867         * testsuite/30_threads/unique_future: Rename to /future.
1869 2010-02-01  Paolo Carlini  <paolo.carlini@oracle.com>
1871         PR libstdc++/42408
1872         * include/bits/random.h (linear_congruential_engine<>::
1873         linear_congruential_engine(seed_seq&),
1874         linear_congruential_engine<>::seed(seed_seq&),
1875         mersenne_twister<>::mersenne_twister(seed_seq&),
1876         mersenne_twister<>::seed(seed_seq&),
1877         subtract_with_carry_engine<>::subtract_with_carry_engine(seed_seq&),
1878         subtract_with_carry_engine<>::seed(seed_seq&),
1879         discard_block_engine<>::discard_block_engine(seed_seq&),
1880         discard_block_engine<>::seed(seed_seq&),
1881         independent_bits_engine<>::independent_bits_engine(seed_seq&),
1882         independent_bits_engine<>::seed(seed_seq&),
1883         shuffle_order_engine<>::shuffle_order_engine(seed_seq&),
1884         shuffle_order_engine<>::seed(seed_seq&)): Templatize.
1885         * include/bits/random.tcc: Adjust.
1886         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
1887         seed_seq.cc: New.
1888         * testsuite/26_numerics/random/mersenne_twister_engine/cons/
1889         seed_seq.cc: Likewise.
1890         * testsuite/26_numerics/random/linear_congruential_engine/
1891         cons/seed_seq.cc: Likewise.
1893 2010-02-01  Paolo Carlini  <paolo.carlini@oracle.com>
1895         * include/bits/forward_list.h (forward_list<>::resize(size_type),
1896         forward_list(size_type)): Only declare.
1897         * include/bits/forward_list.tcc (forward_list<>::resize(size_type),
1898         forward_list(size_type)): Define, don't assume CopyConstructible.
1899         * testsuite/23_containers/forward_list/cons/10.cc: New.
1900         * testsuite/23_containers/forward_list/modifiers/6.cc: Likewis.
1901         * testsuite/23_containers/forward_list/requirements/dr438/
1902         assign_neg.cc: Adjust dg-error line numbers.
1903         * testsuite/23_containers/forward_list/requirements/dr438/
1904         insert_neg.cc: Likewise.
1905         * testsuite/23_containers/forward_list/requirements/dr438/
1906         constructor_1_neg.cc: Likewise.
1907         * testsuite/23_containers/forward_list/requirements/dr438/
1908         constructor_2_neg.cc: Likewise.
1910         * include/bits/forward_list.h: Use _M_get_Node_allocator throughout.
1912 2010-01-31  Paolo Carlini  <paolo.carlini@oracle.com>
1914         * testsuite/23_containers/array/requirements/exception/
1915         generation_prohibited.c: Remove, swap can indeed throw (DR 774).
1917         * testsuite/util/exception/safety.h (insert_base<__versa_string>): Fix.
1918         * testsuite/util/testsuite_container_traits.h
1919         (traits<__versa_string>): Enable insert tests.
1921 2010-01-31  Paolo Carlini  <paolo.carlini@oracle.com>
1923         * include/bits/forward_list.h (forward_list<>::insert_after
1924         (const_iterator, size_type, const _Tp&), insert_after(const_iterator,
1925         _InputIterator, _InputIterator), insert_after(const_iterator,
1926         std::initializer_list<>)): Fix return type per N3000.
1927         * testsuite/23_containers/forward_list/ext_pointer/modifiers/2.cc:
1928         Adjust.
1929         * testsuite/23_containers/forward_list/modifiers/2.cc: Likewise.
1930         * testsuite/23_containers/forward_list/requirements/dr438/
1931         assign_neg.cc: Adjust dg-error line numbers.
1932         * testsuite/23_containers/forward_list/requirements/dr438/
1933         insert_neg.cc: Likewise.
1934         * testsuite/23_containers/forward_list/requirements/dr438/
1935         constructor_1_neg.cc: Likewise.
1936         * testsuite/23_containers/forward_list/requirements/dr438/
1937         constructor_2_neg.cc: Likewise.
1939 2010-01-31  Paolo Carlini  <paolo.carlini@oracle.com>
1941         Revert last changes. Also revert, among the previous changes:
1942         * include/std/condition_variable (condition_variable_any::
1943         wait<>(_Lock&)): Provide definition.
1945 2010-01-29  Paolo Carlini  <paolo.carlini@oracle.com>
1947         * include/std/condition_variable (condition_variable_any::
1948         __wait_until_impl): Add.
1949         (condition_variable_any::wait_until): Provide definitions.
1950         * testsuite/30_threads/condition_variable_any/members/2.cc: New.
1951         * testsuite/30_threads/condition_variable_any/cons/assign_neg.cc:
1952         Adjust dg-error line number.
1953         * testsuite/30_threads/condition_variable_any/cons/copy_neg.cc:
1954         Likewise.
1956         * testsuite/30_threads/condition_variable/members/1.cc: Minor
1957         stylistic changes.
1958         * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
1960 2010-01-29  Paolo Carlini  <paolo.carlini@oracle.com>
1962         * include/std/condition_variable (enum class cv_status): Add and
1963         use it throughout, per N3000.
1964         (condition_variable_any::wait<>(_Lock&), wait<>(_Lock&, _Predicate),
1965         wait_until<>(_Lock&, const chrono::time_point<>&, _Predicate)):
1966         Provide definitions.
1967         * src/condition_variable.cc (condition_variable_any::notify_one,
1968         condition_variable_any::notify_all): Likewise.
1969         * config/abi/pre/gnu.ver: Export.
1970         * testsuite/30_threads/condition_variable_any/requirements/
1971         typedefs.cc: New.
1972         * testsuite/30_threads/condition_variable_any/requirements/
1973         standard_layout.cc: Likewise.
1974         * testsuite/30_threads/condition_variable/members/1.cc: Adjust.
1975         * testsuite/30_threads/condition_variable/members/2.cc: Likewise.
1976         * testsuite/30_threads/condition_variable/cons/assign_neg.cc: Adjust
1977         dg-error line numbers.
1978         * testsuite/30_threads/condition_variable/cons/copy_neg.cc: Likewise.
1979         * testsuite/30_threads/condition_variable_any/cons/assign_neg.cc:
1980         Likewise.
1981         * testsuite/30_threads/condition_variable_any/cons/copy_neg.cc:
1982         Likewise.
1984 2010-01-28  François Dumont  <francois.cppdevs@free.fr>
1986         * include/bits/stl_algobase.h (struct __iter_base): Add.
1987         (__niter_base, __miter_base): Adjust, use the latter.
1989 2010-01-28  Paolo Carlini  <paolo.carlini@oracle.com>
1991         * testsuite/21_strings/basic_string/element_access/char/21674.cc:
1992         Extend xfail to all systems.
1993         * testsuite/21_strings/basic_string/element_access/wchar_T/21674.cc:
1994         Likewise.
1995         * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
1996         Extend xfail to darwin10 systems.
1998 2010-01-27  Benjamin Kosnik  <bkoz@redhat.com>
2000         PR c++/42346
2001         * testsuite/23_containers/unordered_map/requirements/exception/: Remove
2002         -O1 workaround.
2003         * testsuite/23_containers/multimap/requirements/exception/: Same.
2004         * testsuite/23_containers/map/requirements/exception: Same.
2006 2010-01-27  Richard Guenther  <rguenther@suse.de>
2008         PR libstdc++/42832
2009         * include/std/functional (function<>::swap): Perform bytewise
2010         swap of _M_functor.
2011         * include/tr1/functional (function<>::swap): Likewise.
2013 2010-01-27  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
2015         * config/abi/pre/gnu.ver: Avoid time_get pattern conflicts.
2017 2010-01-26  François Dumont  <francois.cppdevs@free.fr>
2019         * doc/xml/manual/allocator.xml: Minor updates and fixes.
2020         * doc/xml/manual/containers.xml: Likewise.
2021         * doc/xml/manual/using.xml: Likewise.
2022         * doc/xml/manual/locale.xml: Likewise.
2023         * doc/xml/manual/appendix_contributing.xml: Likewise.
2025 2010-01-26  Daniel Frey  <d.frey@gmx.de>
2027         * include/std/functional: Use enable_if instead of __enable_if
2028         throughout, do not include ext/type_traits.h.
2029         (is_placeholder, is_bind_expression): Use integral_constant.
2031 2010-01-25  Paolo Carlini  <paolo.carlini@oracle.com>
2033         * testsuite/util/testsuite_common_types.h (has_bitwise_operators):
2034         Avoid -Wall warnings.
2036 2010-01-25  Paolo Carlini  <paolo.carlini@oracle.com>
2038         * testsuite/22_locale/time_get/get_monthname/char/6.cc: Use an int
2039         as loop variable, to avoid -Wall warnings.
2040         * testsuite/22_locale/time_get/get_monthname/wchar_t/6.cc: Likewise.
2041         * testsuite/22_locale/time_get/get_weekday/char/6.cc: Likewise.
2042         * testsuite/22_locale/time_get/get_weekday/wchar_t/6.cc: Likewise.
2043         * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.
2045         * testsuite/20_util/reference_wrapper/24803.cc: Remove unused vars.
2046         * testsuite/20_util/reference_wrapper/invoke.cc: Likewise.
2048 2010-01-22  Daniel Frey  <d.frey@gmx.de>
2050         * include/std/functional (_Index_tuple, _Build_index_tuple):
2051         Simplify and speed-up.
2053 2010-01-22  Joern Rennecke  <amylaar@spamcop.net>
2055         PR libstdc++/36101, PR libstdc++/42813
2056         * acinclude.m4 (enable_parallel): Test ${TARGET_CONFIGDIRS} instead of
2057         looking for omp.h.
2058         * configure: Regenerate.
2060 2010-01-21  Jonathan Wakely  <jwakely.gcc@gmail.com>
2062         PR libstdc++/42201
2063         * include/std/future: Update to latest WP.
2064         * src/functexcept.cc (__throw_future_error): Use make_error_code.
2065         * testsuite/30_threads/async/any.cc: New.
2066         * testsuite/30_threads/async/async.cc: New.
2067         * testsuite/30_threads/async/sync.cc: New.
2068         * testsuite/30_threads/packaged_task/cons/alloc.cc: New.
2069         * testsuite/30_threads/packaged_task/cons/assign_neg.cc: Adjust.
2070         * testsuite/30_threads/packaged_task/cons/copy_neg.cc: Adjust.
2071         * testsuite/30_threads/packaged_task/members/get_future.cc: Adjust.
2072         * testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise.
2073         * testsuite/30_threads/packaged_task/members/invoke.cc: Adjust.
2074         * testsuite/30_threads/packaged_task/members/invoke2.cc: Adjust.
2075         * testsuite/30_threads/packaged_task/members/invoke3.cc: Adjust.
2076         * testsuite/30_threads/packaged_task/members/invoke4.cc: Adjust.
2077         * testsuite/30_threads/packaged_task/members/reset.cc: Adjust.
2078         * testsuite/30_threads/packaged_task/members/reset2.cc: Adjust.
2079         * testsuite/30_threads/shared_future/cons/assign_neg.cc: Remove.
2080         * testsuite/30_threads/shared_future/cons/default_neg.cc: Remove.
2081         * testsuite/30_threads/shared_future/cons/default.cc: New.
2082         * testsuite/30_threads/shared_future/cons/assign.cc: New.
2083         * testsuite/30_threads/shared_future/cons/copy.cc: Adjust.
2084         * testsuite/30_threads/shared_future/cons/move.cc: Adjust.
2085         * testsuite/30_threads/shared_future/cons/move_assign.cc: New.
2086         * testsuite/30_threads/shared_future/members/is_ready.cc: Remove.
2087         * testsuite/30_threads/shared_future/members/has_value.cc: Remove.
2088         * testsuite/30_threads/shared_future/members/has_exception.cc: Remove.
2089         * testsuite/30_threads/shared_future/members/valid.cc: New.
2090         * testsuite/30_threads/unique_future/cons/default_neg.cc: Remove.
2091         * testsuite/30_threads/unique_future/cons/default.cc: New.
2092         * testsuite/30_threads/unique_future/cons/move_assign.cc: New.
2093         * testsuite/30_threads/unique_future/cons/assign_neg.cc: Adjust.
2094         * testsuite/30_threads/unique_future/cons/copy_neg.cc: Adjust.
2095         * testsuite/30_threads/unique_future/cons/move.cc: Adjust.
2096         * testsuite/30_threads/unique_future/requirements/
2097         explicit_instantiation.cc: Adjust.
2098         * testsuite/30_threads/unique_future/members/is_ready.cc: Remove.
2099         * testsuite/30_threads/unique_future/members/has_value.cc: Remove.
2100         * testsuite/30_threads/unique_future/members/has_exception.cc: Remove.
2101         * testsuite/30_threads/unique_future/members/valid.cc: New.
2102         * testsuite/30_threads/unique_future/members/get.cc: Adjust.
2103         * testsuite/30_threads/unique_future/members/get2.cc: Adjust.
2104         * testsuite/30_threads/unique_future/members/wait.cc: Adjust.
2105         * testsuite/30_threads/unique_future/members/wait_for.cc: Adjust.
2106         * testsuite/30_threads/unique_future/members/wait_until.cc: Adjust.
2107         * testsuite/30_threads/headers/future/types_std_c++0x.cc: Adjust.
2108         * testsuite/30_threads/promise/cons/alloc.cc: New.
2109         * testsuite/30_threads/promise/cons/assign_neg.cc: Adjust.
2110         * testsuite/30_threads/promise/cons/copy_neg.cc: Adjust.
2111         * testsuite/30_threads/promise/cons/move.cc: Adjust.
2112         * testsuite/30_threads/promise/cons/move_assign.cc: Adjust.
2113         * testsuite/30_threads/promise/members/get_future.cc: Adjust.
2114         * testsuite/30_threads/promise/members/set_value.cc: Adjust.
2115         * testsuite/30_threads/promise/members/set_exception.cc: Adjust.
2116         * testsuite/30_threads/promise/members/set_exception2.cc: Adjust.
2117         * testsuite/30_threads/promise/members/set_value2.cc: Adjust.
2118         * testsuite/30_threads/promise/members/set_value3.cc: Adjust.
2119         * testsuite/30_threads/promise/members/swap.cc: Adjust.
2121 2010-01-20  Janis Johnson  <janis187@us.ibm.com>
2122             Paolo Carlini  <paolo.carlini@oracle.com>
2124         PR libstdc++/21769
2125         * testsuite/lib/dg-options.exp (add_options_for_no_pch): Add.
2126         * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
2127         Use it.
2129 2010-01-19  Johannes Singler  <singler@kit.edu>
2131         PR libstdc++/42712
2132         * include/parallel/settings.h (_Settings): Add search_minimal_n.
2133         * include/parallel/algo.h (__search_switch):
2134         Add serial fallback for too small inputs.
2135         (__search_n_switch): Likewise.  Call serial fallback on higher level
2136         to gain special treatment for __count 0 or 1.
2137         * testsuite/25_algorithms/search_n/iterator.cc:
2138         Reenable full test depth for parallel mode.
2140 2010-01-18  Daniel Frey  <d.frey@gmx.de>
2142         * include/std/functional (_Bind<_Functor(_Bound_args...)>::
2143         operator()): "Pass" _Result to __call*.
2144         (_Bind<_Functor(_Bound_args...)>::__call*): Adjust, simplify.
2146 2010-01-18  Johannes Singler  <singler@kit.edu>
2148         * include/parallel/base.h (__unary_negate): Correct comment.
2150 2010-01-16  Paolo Carlini  <paolo.carlini@oracle.com>
2152         * include/std/functional (_Bind<_Functor(_Bound_args...)>::__call):
2153         Rename const version to __call_c and remove _Sfinae template
2154         parameter.
2155         (_Bind<_Functor(_Bound_args...)>::operator()): Adjust.
2157         * include/std/functional: Pass everywhere temporary tuple<_Args...>
2158         arguments by rvalue reference.
2160         * testsuite/20_util/bind/cv_quals.cc: New.
2162         * testsuite/20_util/bind/ref2.cc: Add missing test variables.
2164 2010-01-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2166         PR libstdc++/35942
2167         * configure.ac: Remove -lstdc++ from libtool's postdeps_CXX.
2168         * configure: Regenerate.
2170 2010-01-15  Phil Muldoon  <pmuldoon@redhat.com>
2172         * python/libstdcxx/v6/printers.py (StdStringPrinter.__init__):
2173         Remove encoding argument.
2174         (StdStringPrinter.to_string): Do not compute or pass encoding.
2175         Use lazy_string over string function.
2177 2010-01-14  Paolo Carlini  <paolo.carlini@oracle.com>
2179         * include/c_std/cstring (memchr): Forward to the builtin.
2180         * include/c_std/cstring: Remove redundant casts; use names consistent
2181         with the letter of the Standard.
2182         * include/c_global/cstring: Likewise.
2184 2010-01-13  Benjamin Kosnik  <bkoz@redhat.com>
2186         * include/profile/iterator_tracker.h: Add copyright.
2188 2010-01-13  Paolo Carlini  <paolo.carlini@oracle.com>
2190         * testsuite/Makefile.am (check-debug): Add.
2191         * testsuite/Makefile.in: Regenerate.
2192         * config.h.in: Likewise.
2194 2010-01-12  Paolo Carlini  <paolo.carlini@oracle.com>
2196         * testsuite/17_intro/using_namespace_std_tr1_neg.cc: Do not run
2197         in parallel-mode.
2198         * testsuite/25_algorithms/inplace_merge/moveable.cc: Likewiwse.
2199         * testsuite/25_algorithms/rotate/moveable.cc: Likewiwse.
2200         * testsuite/25_algorithms/stable_partition/moveable.cc: Likewiwse.
2201         * testsuite/25_algorithms/remove/moveable.c: Likewiwse.
2202         * testsuite/25_algorithms/random_shuffle/moveable.cc: Likewiwse.
2203         * testsuite/25_algorithms/nth_element/moveable.cc: Likewiwse.
2204         * testsuite/25_algorithms/partial_sort/moveable.cc: Likewiwse.
2205         * testsuite/25_algorithms/next_permutation/moveable.cc: Likewiwse.
2206         * testsuite/25_algorithms/partition/moveable.cc: Likewiwse.
2207         * testsuite/25_algorithms/stable_sort/moveable.cc: Likewiwse.
2208         * testsuite/25_algorithms/stable_sort/moveable2.cc: Likewiwse.
2209         * testsuite/25_algorithms/sort/moveable.cc: Likewiwse.
2210         * testsuite/25_algorithms/prev_permutation/moveable.cc: Likewiwse.
2211         * testsuite/25_algorithms/unique/moveable.cc: Likewiwse.
2212         * testsuite/25_algorithms/remove_if/moveable.cc: Likewiwse.
2213         * testsuite/25_algorithms/heap/moveable.cc: Likewiwse.
2215         * testsuite/25_algorithms/search_n/iterator.cc: Reduce iteration #
2216         in parallel-mode.
2218 2010-01-12  Hans-Peter Nilsson  <hp@axis.com>
2220         * testsuite/ext/profile/all.cc: Pass -D_GLIBCXX_PROFILE_NO_THREADS
2221         for non-tls_native targets.
2223 2010-01-12  Benjamin Kosnik  <bkoz@redhat.com>
2225         * scripts/run_doxygen: Correct nested scope on the man pages.
2226         * doc/xml/faq.xml: Edits, linkcheck, doxygen link reassociate.
2227         * doc/xml/manual/mt_allocator.xml: Same.
2228         * doc/xml/manual/allocator.xml: Same.
2229         * doc/xml/manual/codecvt.xml: Same.
2230         * doc/xml/manual/backwards_compatibility.xml: Same.
2231         * doc/xml/manual/concurrency.xml: Same.
2232         * doc/xml/manual/parallel_mode.xml: Same.
2233         * doc/xml/manual/io.xml: Same.
2234         * doc/xml/manual/support.xml: Same.
2235         * doc/xml/manual/evolution.xml: Same.
2236         * doc/xml/manual/using.xml: Same.
2237         * doc/xml/manual/extensions.xml: Same.
2238         * doc/xml/manual/appendix_contributing.xml: Same.
2239         * doc/xml/manual/prerequisites.xml: Same.
2240         * doc/xml/manual/diagnostics.xml: Same.
2241         * doc/xml/manual/spine.xml: Same.
2242         * doc/xml/manual/status_cxx200x.xml: Same.
2243         * doc/xml/manual/test.xml: Same.
2244         * doc/xml/spine.xml: Same.
2245         * doc/html/*: Regenerate.
2247         * include/profile/impl/profiler.h: Remove duplicate markup.
2249 2010-01-12  Jonathan Wakely  <jwakely.gcc@gmail.com>
2251         PR libstdc++/24803
2252         PR libstdc++/35569
2253         PR libstdc++/42593
2254         * include/std/functional (bind): Forward rvalues and detect correct
2255         result type of bound function object.
2256         * include/std/mutex (call_once): Specify bind result type.
2257         * testsuite/20_util/reference_wrapper/invoke.cc: Remove invalid tests.
2258         * testsuite/20_util/reference_wrapper/24803.cc: Remove invalid tests
2259         and enable FIXME tests.
2260         * testsuite/20_util/bind/35569.cc: New.
2261         * testsuite/20_util/bind/ref2.cc: New.
2262         * testsuite/20_util/bind/38889.cc: New.
2263         * testsuite/20_util/bind/ref_neg.cc: New.
2264         * testsuite/20_util/bind/42593.cc: New.
2266 2010-01-11  Paolo Carlini  <paolo.carlini@oracle.com>
2268         * include/parallel/base.h (decode2): Rename to __decode2.
2269         (binder2nd): Likewise to __binder2nd.
2270         * include/parallel/quicksort.h: Adjust callers.
2271         * include/parallel/balanced_quicksort.h: Likewise.
2272         * include/parallel/partition.h: Likewise.
2273         * include/parallel/queue.h: Likewise.
2275         * include/parallel/algo.h: Qualify with std:: binder2nd use.
2277 2010-01-10  Paolo Carlini  <paolo.carlini@oracle.com>
2279         * include/debug/string (basic_string<>::basic_string(basic_string&&),
2280         operator=(basic_string&&), assign(basic_string&&)): Add.
2282         * include/debug/string: Fully qualify initializer_list with std; fix
2283         _Allocator misspellings as _Alloc.
2285 2010-01-10  Paolo Carlini  <paolo.carlini@oracle.com>
2287         * include/bits/basic_string.h (basic_string<>::
2288         basic_string(basic_string&&), operator=(basic_string&&),
2289         assign(basic_string&&)): Add.
2290         * config/abi/pre/gnu.ver: Export new symbols.
2291         * include/ext/vstring.h (__versa_string<>::assign(__versa_string&&)):
2292         Add.
2293         (operator=(__versa_string&&)): Don't call clear unnecessarily.
2294         * include/ext/rc_string_base.h (__rc_string_base<>::
2295         __rc_string_base(__rc_string_base&&)): Simplify a tad.
2296         * testsuite/21_strings/basic_string/cons/char/moveable.cc: New.
2297         * testsuite/21_strings/basic_string/cons/wchar_t/moveable.cc: Likewise.
2298         * testsuite/ext/vstring/assign/move_assign.cc: Likewise.
2299         * testsuite/21_strings/basic_string/assign/char/move_assign.cc:
2300         Likewise.
2301         * testsuite/21_strings/basic_string/assign/wchar_t/move_assign.cc:
2302         Likewise.
2304         * testsuite/ext/vstring/cons/moveable.cc: Fix comment nit.
2306 2010-01-10  Silvius Rus  <rus@google.com>
2308         * configure.ac: Add detection of execinfo.h.
2309         * configure: Regenerate.
2310         * config.h.in: Likewise.
2311         * doc/xml/manual/profile_mode.xml: Add list_to_slist manual.
2312         Also, correct user interface mistakes.
2313         * include/Makefile.am: Add references to new include files.
2314         * include/Makefile.in: Regenerate.
2315         * include/backward/hash_map: Remove profile include.
2316         * include/backward/hash_set: Likewise.
2317         * include/profile/hashtable.h: Delete file.
2318         * include/profile/iterator_tracker.h: New file.
2319         * include/profile/vector: Add instrumentation for tracked iterator.
2320         * include/profile/list: Same.
2321         * include/profile/impl/profiler_list_to_slist.h: New file.
2322         * include/profile/impl/profiler_list_to_vector.h: Same.
2323         * include/profile/impl/profiler.h: Add list_to_slist and
2324         list_to_vector instrumentation hook interfaces.  Fixed broken
2325         diagnostic disabling mechanism.
2326         (_GLIBCXX_PROFILE_DEFINE_DATA,_GLIBCXX_PROFILE_DATA) New macros.
2327         (__reentrance_guard) Fix bug.
2328         * include/profile/impl/profiler_trace.h: Replace dummy templates
2329         with _GLIBCXX_PROFILE_DEFINE_DATA.
2330         * include/profile/impl/profiler_container_size.h: Same.
2331         * include/profile/impl/profiler_vector_size.h: Same.
2332         * include/profile/impl/profiler_hash_func.h: Same.
2333         * include/profile/impl/profiler_vector_to_list.h: Same.
2334         * include/profile/impl/profiler_map_to_unordered_map.h: Same.
2335         * include/profile/impl/profiler_hashtable_size.h: Same.
2336         * include/profile/impl/profiler_node.h: Same.
2337         * include/profile/impl/profiler_state.h: Same.  Also, remove
2338         class __state. Also, use __sync_val_compare_and_swap to set state.
2340 2010-01-09  H.J. Lu  <hongjiu.lu@intel.com>
2342         PR other/42230
2343         * testsuite/abi/pr42230.cc: New.
2345 2010-01-09  Paolo Carlini  <paolo.carlini@oracle.com>
2347         * include/debug/set.h: Revert last change, per DR 1204 [Ready];
2348         mention the latter in comment.
2349         * include/debug/unordered_map: Likewise.
2350         * include/debug/multiset.h: Likewise.
2351         * include/debug/vector: Likewise.
2352         * include/debug/unordered_set: Likewise.
2353         * include/debug/deque: Likewise.
2354         * include/debug/map.h: Likewise.
2355         * include/debug/list: Likewise.
2356         * include/debug/multimap.h: Likewise.
2357         * include/tr1_impl/unordered_map: Likewise.
2358         * include/tr1_impl/unordered_set: Likewise.
2359         * include/profile/set.h: Likewise.
2360         * include/profile/unordered_map: Likewise.
2361         * include/profile/multiset.h: Likewise.
2362         * include/profile/unordered_set: Likewise.
2363         * include/profile/vector: Likewise.
2364         * include/profile/deque: Likewise.
2365         * include/profile/map.h: Likewise.
2366         * include/profile/list: Likewise.
2367         * include/profile/multimap.h: Likewise.
2368         * include/ext/vstring.h: Likewise.
2369         * include/bits/stl_list.h: Likewise.
2370         * include/bits/stl_map.h: Likewise.
2371         * include/bits/stl_set.h: Likewise.
2372         * include/bits/stl_multimap.h: Likewise.
2373         * include/bits/stl_vector.h: Likewise.
2374         * include/bits/stl_deque.h: Likewise.
2375         * include/bits/stl_multiset.h: Likewise.
2377         * include/bits/forward_list.h: Remove pre-existing check.
2378         * include/ext/vstring.h: Likewise.
2380         * testsuite/ext/vstring/cons/self_move_assign.cc: Remove.
2381         * testsuite/23_containers/unordered_map/cons/self_move_assign.cc:
2382         Likewise.
2383         * testsuite/23_containers/multimap/cons/self_move_assign.cc: Likewise.
2384         * testsuite/23_containers/set/cons/self_move_assign.cc: Likewise.
2385         * testsuite/23_containers/unordered_multimap/cons/
2386         self_move_assign.cc: Likewise.
2387         * testsuite/23_containers/forward_list/cons/self_move_assign.cc:
2388         Likewise.
2389         * testsuite/23_containers/unordered_set/cons/self_move_assign.cc:
2390         Likewise.
2391         * testsuite/23_containers/vector/cons/self_move_assign.cc: Likewise.
2392         * testsuite/23_containers/deque/cons/self_move_assign.cc: Likewise.
2393         * testsuite/23_containers/multiset/cons/self_move_assign.cc: Likewise.
2394         * testsuite/23_containers/list/cons/self_move_assign.cc: Likewise.
2395         * testsuite/23_containers/unordered_multiset/cons/
2396         self_move_assign.cc: Likewise.
2397         * testsuite/23_containers/map/cons/self_move_assign.cc: Likewise.
2399         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2400         Adjust dg-error line numbers.
2401         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2402         Likewise.
2403         * testsuite/23_containers/vector/requirements/dr438/
2404         constructor_1_neg.cc: Likewise.
2405         * testsuite/23_containers/vector/requirements/dr438/
2406         constructor_2_neg.cc: Likewise.
2407         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
2408         Likewise.
2409         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
2410         Likewise.
2411         * testsuite/23_containers/deque/requirements/dr438/
2412         constructor_1_neg.cc: Likewise.
2413         * testsuite/23_containers/forward_list/requirements/dr438/
2414         assign_neg.cc: Likewise.
2415         * testsuite/23_containers/forward_list/requirements/dr438/
2416         insert_neg.cc: Likewise.
2417         * testsuite/23_containers/forward_list/requirements/dr438/
2418         constructor_1_neg.cc: Likewise.
2419         * testsuite/23_containers/forward_list/requirements/dr438/
2420         constructor_2_neg.cc: Likewise.
2421         * testsuite/23_containers/deque/requirements/dr438/
2422         constructor_2_neg.cc: Likewise.
2423         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2424         Likewise.
2425         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
2426         Likewise.
2427         * testsuite/23_containers/list/requirements/dr438/
2428         constructor_1_neg.cc: Likewise.
2429         * testsuite/23_containers/list/requirements/dr438/
2430         constructor_2_neg.cc: Likewise.
2432 2010-01-08  Paolo Carlini  <paolo.carlini@oracle.com>
2434         * include/debug/set.h: Protect move assignment operator vs self
2435         assignment.
2436         * include/debug/unordered_map: Likewise.
2437         * include/debug/multiset.h: Likewise.
2438         * include/debug/vector: Likewise.
2439         * include/debug/unordered_set: Likewise.
2440         * include/debug/deque: Likewise.
2441         * include/debug/map.h: Likewise.
2442         * include/debug/list: Likewise.
2443         * include/debug/multimap.h: Likewise.
2444         * include/tr1_impl/unordered_map: Likewise.
2445         * include/tr1_impl/unordered_set: Likewise.
2446         * include/profile/set.h: Likewise.
2447         * include/profile/unordered_map: Likewise.
2448         * include/profile/multiset.h: Likewise.
2449         * include/profile/unordered_set: Likewise.
2450         * include/profile/vector: Likewise.
2451         * include/profile/deque: Likewise.
2452         * include/profile/map.h: Likewise.
2453         * include/profile/list: Likewise.
2454         * include/profile/multimap.h: Likewise.
2455         * include/ext/vstring.h: Likewise.
2456         * include/bits/stl_list.h: Likewise.
2457         * include/bits/stl_map.h: Likewise.
2458         * include/bits/stl_set.h: Likewise.
2459         * include/bits/stl_multimap.h: Likewise.
2460         * include/bits/stl_vector.h: Likewise.
2461         * include/bits/stl_deque.h: Likewise.
2462         * include/bits/stl_multiset.h: Likewise.
2463         * include/ext/vstring.h: Use clear().
2464         * testsuite/ext/vstring/cons/self_move_assign.cc: New.
2465         * testsuite/23_containers/unordered_map/cons/self_move_assign.cc:
2466         Likewise.
2467         * testsuite/23_containers/multimap/cons/self_move_assign.cc: Likewise.
2468         * testsuite/23_containers/set/cons/self_move_assign.cc: Likewise.
2469         * testsuite/23_containers/unordered_multimap/cons/
2470         self_move_assign.cc: Likewise.
2471         * testsuite/23_containers/forward_list/cons/self_move_assign.cc:
2472         Likewise.
2473         * testsuite/23_containers/unordered_set/cons/self_move_assign.cc:
2474         Likewise.
2475         * testsuite/23_containers/vector/cons/self_move_assign.cc: Likewise.
2476         * testsuite/23_containers/deque/cons/self_move_assign.cc: Likewise.
2477         * testsuite/23_containers/multiset/cons/self_move_assign.cc: Likewise.
2478         * testsuite/23_containers/list/cons/self_move_assign.cc: Likewise.
2479         * testsuite/23_containers/unordered_multiset/cons/
2480         self_move_assign.cc: Likewise.
2481         * testsuite/23_containers/map/cons/self_move_assign.cc: Likewise.
2483         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2484         Adjust dg-error line numbers.
2485         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2486         Likewise.
2487         * testsuite/23_containers/vector/requirements/dr438/
2488         constructor_1_neg.cc: Likewise.
2489         * testsuite/23_containers/vector/requirements/dr438/
2490         constructor_2_neg.cc: Likewise.
2491         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
2492         Likewise.
2493         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
2494         Likewise.
2495         * testsuite/23_containers/deque/requirements/dr438/
2496         constructor_1_neg.cc: Likewise.
2497         * testsuite/23_containers/deque/requirements/dr438/
2498         constructor_2_neg.cc: Likewise.
2499         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2500         Likewise.
2501         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
2502         Likewise.
2503         * testsuite/23_containers/list/requirements/dr438/
2504         constructor_1_neg.cc: Likewise.
2505         * testsuite/23_containers/list/requirements/dr438/
2506         constructor_2_neg.cc: Likewise.
2508         * testsuite/ext/vstring/moveable.cc: Move to...
2509         * testsuite/ext/vstring/cons/moveable.cc: ... here.
2510         * testsuite/23_containers/unordered_map/moveable.cc: Move to...
2511         * testsuite/23_containers/unordered_map/cons/moveable.cc ... here.
2512         * testsuite/23_containers/multimap/moveable.cc: Move to...
2513         * testsuite/23_containers/multimap/cons/moveable.cc: ... here.
2514         * testsuite/23_containers/set/moveable.cc: Move to...
2515         * testsuite/23_containers/set/cons/moveable.cc: ... here.
2516         * testsuite/23_containers/unordered_multimap/moveable.cc: Move to...
2517         * testsuite/23_containers/unordered_multimap/cons/moveable.cc:
2518         ... here.
2519         * testsuite/23_containers/forward_list/moveable.cc: Move to...
2520         * testsuite/23_containers/forward_list/cons/moveable.cc: ... here.
2521         * testsuite/23_containers/unordered_set/moveable.cc Move to...
2522         * testsuite/23_containers/unordered_set/moveable.cc: ... here.
2523         * testsuite/23_containers/vector/cons/moveable.cc Move to...
2524         * testsuite/23_containers/vector/cons/moveable2.cc: ... this.
2525         * testsuite/23_containers/deque/cons/moveable.cc Move to...
2526         * testsuite/23_containers/deque/cons/moveable2.cc: ... this.
2527         * testsuite/23_containers/multiset/moveable.cc Move to...
2528         * testsuite/23_containers/multiset/cons/moveable.cc: ... here.
2529         * testsuite/23_containers/list/moveable.h Move to...
2530         * testsuite/23_containers/list/cons/moveable.h: ... here.
2531         * testsuite/23_containers/list/moveable.cc Move to...
2532         * testsuite/23_containers/list/cons/moveable.cc: ... here.
2533         * testsuite/23_containers/unordered_multiset/moveable.cc Move to...
2534         * testsuite/23_containers/unordered_multiset/cons/moveable.cc:
2535         ... here.
2536         * testsuite/23_containers/map/moveable.cc Move to...
2537         * testsuite/23_containers/map/cons/moveable.cc: ... here.
2538         * testsuite/23_containers/vector/moveable.cc: Move to...
2539         * testsuite/23_containers/vector/cons/moveable.cc: ... here.
2540         * testsuite/23_containers/deque/moveable.cc: Move to...
2541         * testsuite/23_containers/deque/cons/moveable.cc: ... here.
2543 2010-01-08  Paolo Carlini  <paolo.carlini@oracle.com>
2545         PR libstdc++/42573
2546         * include/bits/allocator.h (struct __shrink_to_fit): Add.
2547         * include/bits/stl_deque.h (deque<>::shrink_to_fit): Add.
2548         * include/bits/stl_vector.h (vector<>::shrink_to_fit): Likewise.
2549         * include/bits/stl_bvector.h (vector<bool>::shrink_to_fit): Likewise.
2550         * include/bits/basic_string.h (basic_string<>::shrink_to_fit):
2551         Likewise.
2552         * include/ext/vstring.h (__versa_string<>::shrink_to_fit): Likewise.
2553         * include/debug/deque: Add corresponding using declaration.
2554         * include/debug/vector: Likewise.
2555         * include/debug/string: Likewise.
2556         * include/profile/deque: Likewise.
2557         * include/profile/vector: Likewise.
2558         * config/abi/pre/gnu.ver: Export new symbols.
2559         * testsuite/23_containers/deque/capacity/shrink_to_fit.cc: New.
2560         * testsuite/23_containers/vector/capacity/shrink_to_fit.cc: Likewise.
2561         * testsuite/21_strings/basic_string/capacity/char/shrink_to_fit.cc:
2562         Likewise.
2563         * testsuite/21_strings/basic_string/capacity/wchar_t/shrink_to_fit.cc:
2564         Likewise.
2565         * testsuite/ext/vstring/capacity/shrink_to_fit.cc: Likewise.
2566         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
2567         Adjust dg-error line number.
2568         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
2569         Likewise.
2570         * testsuite/23_containers/deque/requirements/dr438/
2571         constructor_1_neg.cc: Likewise.
2572         * testsuite/23_containers/deque/requirements/dr438/
2573         constructor_2_neg.cc: Likewise.
2574         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2575         Adjust dg-error line number.
2576         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2577         Likewise.
2578         * testsuite/23_containers/vector/requirements/dr438/
2579         constructor_1_neg.cc: Likewise.
2580         * testsuite/23_containers/vector/requirements/dr438/
2581         constructor_2_neg.cc: Likewise.
2583 2010-01-07  Benjamin Kosnik  <bkoz@redhat.com>
2585         * doc/xml/manual/evolution.xml: Fix typos, update.
2587 2010-01-07  Paolo Carlini  <paolo.carlini@oracle.com>
2589         * include/bits/locale_facets_nonio.tcc (time_put<>::do_put): Avoid
2590         pointless __builtin_alloca use.
2592 2010-01-06  Paolo Carlini  <paolo.carlini@oracle.com>
2594         PR libstdc++/26701
2595         * include/bits/locale_facets_nonio.tcc (time_get<>::_M_extract_num):
2596         Encode short two digits over four parsings to negative numbers.
2597         (time_get<>::_M_extract_via_format): Adjust, accept both two digits
2598         and four digits for both 'y' and 'Y'.
2599         (time_get<>::do_get_year): Call time_get<>::_M_extract_num.
2600         * doc/xml/manual/prerequisites.xml: Add en_GB.
2601         * testsuite/lib/libstdc++.exp: Adjust
2602         * testsuite/22_locale/time_get/get_date/char/26701.cc: New.
2603         * testsuite/22_locale/time_get/get_date/wchar_t/26701.cc: Likewise.
2605 2010-01-06  Benjamin Kosnik  <bkoz@redhat.com>
2607         PR libstdc++/42491
2608         * scripts/check_performance (CXX): Add -std=gnu++0x.
2609         * testsuite/performance/30_threads/future/polling.cc: Mark up as
2610         using threads.
2612 2010-01-06  Paolo Carlini  <paolo.carlini@oracle.com>
2614         * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc:
2615         Add dg-require-namedlocale.
2617 2010-01-05  Benjamin Kosnik  <bkoz@redhat.com>
2619         * doc/xml/manual/evolution.xml: Update for 4.4 and 4.5 releases.
2620         * doc/html: Regenerate.
2622 2010-01-05  Paolo Carlini  <paolo.carlini@oracle.com>
2624         PR libstdc++/38081
2625         * include/bits/locale_facets_nonio.h (time_get<>::
2626         _M_extract_wday_or_month): New, declare.
2627         * include/bits/locale_facets_nonio.tcc (time_get<>::
2628         _M_extract_wday_or_month): Define.
2629         (time_get<>::do_get_weekday, time_get<>::do_get_monthname): Use it.
2630         * config/abi/pre/gnu.ver: Export new symbols.
2631         * doc/xml/manual/prerequisites.xml: Add ru_RU.UTF-8 and
2632         ru_RU.ISO-8859-5.
2633         * testsuite/lib/libstdc++.exp: Adjust.
2634         * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc: New.
2635         * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.
2637 2010-01-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2639         * configure: Regenerate.
2641 2010-01-05  Paolo Carlini  <paolo.carlini@oracle.com>
2643         * testsuite/22_locale/time_get/get_monthname/char/6.cc: New.
2644         * testsuite/22_locale/time_get/get_monthname/wchar_t/6.cc: Likewise.
2645         * testsuite/22_locale/time_get/get_weekday/char/6.cc: Likewise.
2646         * testsuite/22_locale/time_get/get_weekday/wchar_t/6.cc: Likewise.
2648 2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
2650         * include/profile/list: Implement DR 1133 here too.
2652         * testsuite/25_algorithms/set_intersection/34730.cc: Do not force
2653         debug-mode, leads to spurious failures in profile-mode.
2654         * testsuite/25_algorithms/upper_bound/33613.cc: Likewise.
2655         * testsuite/25_algorithms/lower_bound/33613.cc: Likewise.
2656         * testsuite/25_algorithms/set_difference/35541.cc: Likewise.
2657         * testsuite/21_strings/basic_string/40160.cc: Likewise.
2658         * testsuite/26_numerics/random/uniform_real_distribution/
2659         cons/parms_neg.cc: Likewise.
2660         * testsuite/26_numerics/random/uniform_int_distribution/
2661         cons/parms_neg.cc: Likewise.
2662         * testsuite/23_containers/unordered_map/requirements/debug_mode.cc:
2663         Likewise.
2664         * testsuite/23_containers/multimap/14340.cc: Likewise.
2665         * testsuite/23_containers/bitset/18604.cc: Likewise.
2666         * testsuite/23_containers/set/14340.cc: Likewise.
2667         * testsuite/23_containers/set/18604.cc: Likewise.
2668         * testsuite/23_containers/unordered_set/requirements/
2669         debug_mode.cc: Likewise.
2670         * testsuite/23_containers/vector/
2671         debug_mode_requires_reallocation-1.cc: Likewise.
2672         * testsuite/23_containers/vector/
2673         debug_mode_requires_reallocation-2.cc: Likewise.
2674         * testsuite/23_containers/vector/14340.cc: Likewise.
2675         * testsuite/23_containers/vector/15523.cc: Likewise.
2676         * testsuite/23_containers/vector/18604.cc: Likewise.
2677         * testsuite/23_containers/deque/14340.cc: Likewise.
2678         * testsuite/23_containers/deque/18604.cc: Likewise.
2679         * testsuite/23_containers/multiset/14340.cc: Likewise.
2680         * testsuite/23_containers/list/operations/35969.cc: Likewise.
2681         * testsuite/23_containers/list/14340.cc: Likewise.
2682         * testsuite/23_containers/list/18604.cc: Likewise.
2683         * testsuite/23_containers/map/14340.cc: Likewise.
2684         * testsuite/23_containers/map/18604.cc: Likewise.
2685         * testsuite/tr1/5_numerical_facilities/random/uniform_int/
2686         cons/range_neg.cc: Likewise.
2688         * testsuite/23_containers/unordered_map/requirements/
2689         explicit_instantiation/2.cc: Do not instantiate for
2690         non-defaultconstructible mapped_type.
2692 2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
2694         * include/debug/set.h: Implement DR 130 here too.
2695         * include/debug/multiset.h: Likewise.
2696         * include/debug/map.h: Likewise.
2697         * include/debug/multimap.h: Likewise.
2698         * include/profile/set.h: Implement DR 130 fully.
2699         * include/profile/multiset.h: Likewise.
2700         * include/profile/map.h: Likewise.
2701         * include/profile/multimap.h: Likewise.
2702         * include/debug/list: Implement DR 1133 here too.
2703         * include/ext/pb_ds/detail/debug_map_base.hpp: Comment out for
2704         now uses of __gnu_cxx::throw_allocator.
2705         * testsuite/21_strings/basic_string/40160.cc: Don't pass
2706         explicitly -D_GLIBCXX_DEBUG, doesn't play well with profile-mode
2707         testing.
2709 2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
2711         * include/profile/bitset (bitset<>::bitset(unsigned long long)): Add
2712         in C++0x mode.
2713         * include/debug/bitset (bitset<>::bitset(unsigned long long)):
2714         Likewise.
2716 2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
2718         * include/tr1_impl/hashtable (_Hashtable<>): Remove insert_return_type
2719         typedef.
2720         * include/profile/unordered_map (unordered_map<>::insert(const
2721         value_type&), unordered_multimap<>::insert(const value_type&)): Adjust.
2722         * include/profile/unordered_set (unordered_set<>::insert(const
2723         value_type&), unordered_multimap<>::insert(const value_type&)):
2724         Likewise.
2726 2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
2728         * include/bits/stl_pair.h (pair<>::pair(_U1&&, const _T2&),
2729         pair<>::pair(const _T1&, _U2&&), pair<>::pair(_U1&&, _U2&&)):
2730         Use std::is_constructible instead of std::is_convertible.
2732 2010-01-01  Paolo Carlini  <paolo.carlini@oracle.com>
2734         Revert last change, reinstantiate basic_string and vstring tests.
2736 2010-01-01  Paolo Carlini  <paolo.carlini@oracle.com>
2738         * testsuite/21_strings/basic_string/requirements/exception/
2739         propagation_consistent.cc: Remove, cannot instantiate basic_string
2740         for non-PODs (21/1).
2741         * testsuite/21_strings/basic_string/requirements/exception/
2742         basic.cc: Likewise.
2743         * testsuite/21_strings/basic_string/requirements/exception/
2744         generation_prohibited.cc: Likewise.
2745         * testsuite/ext/vstring/requirements/exception/
2746         propagation_consistent.cc: Likewise.
2747         * testsuite/ext/vstring/requirements/exception/basic.cc:
2748         Likewise.
2749         * testsuite/ext/vstring/requirements/exception/
2750         generation_prohibited.cc: Likewise.