C _BitInt support [PR102989]
[official-gcc.git] / libstdc++-v3 / ChangeLog-2010
blobc4691625d2fc169c6b9910170a6aca461bc16bd1
1 2010-12-31  Benjamin Kosnik  <bkoz@redhat.com>
3         * scripts/run_doxygen: Allow doxygen 1.7.1 again.
5         * doc/xml/manual/build_hacking.xml: Update.
6         * doc/xml/images/confdeps.dot: Same.
7         * doc/xml/images/confdeps.png: Same.
9         * configure.ac: Define BUILD_INFO, BUILD_XML, BUILD_HTML,
10         BUILD_MAN, BUILD_PDF, BUILD_EPUB conditionally.
11         * Makefile.am (xml, html, pdf, man, info, pd, dvi, epub): Define,
12         and install rules.
13         * doc/Makefile.am: Same. Add stamp rules.
14         (doc-epub-docbook): Add.
15         (stamp-xml-single-docbook): Make set too.
16         * configure: Regenerate.
17         * Makefile.in: Same.
18         * doc/Makefile.in: Same.
19         * include/Makefile.in: Same.
20         * libsupc++/Makefile.in: Same.
21         * po/Makefile.in: Same.
22         * python/Makefile.in: Same.
23         * src/Makefile.in: Same.
24         * testsuite/Makefile.in: Same.
25         * aclocal.m4: Same.
27 2010-12-31  Benjamin Kosnik  <bkoz@redhat.com>
29         * doc/doxygen/user.cfg.in: Disable PDF_HYPERLINKS.
31 2010-12-19  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
33         PR libstdc++/46869
34         * testsuite/20_util/enable_shared_from_this/cons/constexpr.cc:
35         Compile with -g0.
36         * testsuite/20_util/shared_ptr/cons/constexpr.cc: Likewise.
37         * testsuite/20_util/unique_ptr/cons/constexpr.cc: Likewise.
38         * testsuite/20_util/weak_ptr/cons/constexpr.cc: Likewise.
40 2010-12-19  Paolo Carlini  <paolo.carlini@oracle.com>
42         * include/bits/basic_string.h (operator+(basic_string<>&&,
43         basic_string<>&&)): Optimize better.
44         * include/ext/vstring.h (operator+(__versa_string<>&&,
45         __versa_string<>&)): Likewise.
47 2010-12-19  Paolo Carlini  <paolo.carlini@oracle.com>
49         * testsuite/21_strings/basic_string/operators/char/4.cc: New.
50         * testsuite/21_strings/basic_string/operators/wchar_t/4.cc: Likewise.
51         * testsuite/ext/vstring/operators/2.cc: Likewise.
53 2010-11-18  Benjamin Kosnik  <bkoz@redhat.com>
55         * config/*/*: Use headername alias to associate private includes
56         to public includes.
57         * include/*/*: Same.
59         * scripts/run_doxygen: Update for doxygen 1.7.2.
60         * doc/doxygen/user.cfg.in: Same.
61         * doc/doxygen/TODO: Remove.
63         * testsuite/*/std_c++0x_neg.cc: Adjust line number.
65 2010-12-17  Paolo Carlini  <paolo.carlini@oracle.com>
67         * include/bits/basic_string.h (operator+(basic_string<>&&,
68         const basic_string<>&), operator+(const basic_string<>&,
69         basic_string<>&&), operator+(basic_string<>&&, basic_string<>&&),
70         operator+(const _CharT*, basic_string<>&&), operator+(_CharT,
71         basic_string<>&&), operator+(basic_string<>&&, const _CharT*),
72         operator+(basic_string<>&&, _CharT)): Add.
73         * testsuite/21_strings/basic_string/operators/char/3.cc: New.
74         * testsuite/21_strings/basic_string/operators/wchar_t/3.cc: Likewise.
76 2010-12-17  Paolo Carlini  <paolo.carlini@oracle.com>
78         * aclocal.m4: Regenerate.
79         * Makefile.in: Likewise.
80         * testsuite/Makefile.in: Likewise.
81         * libsupc++/Makefile.in: Likewise.
82         * include/Makefile.in: Likewise.
83         * po/Makefile.in: Likewise.
84         * doc/Makefile.in: Likewise.
85         * src/Makefile.in: Likewise.
86         * python/Makefile.in: Likewise.
88 2010-11-16  Benjamin Kosnik  <bkoz@redhat.com>
90         * testsuite/util/testsuite_iterators.h: Guard move.h includes.
91         * testsuite/util/testsuite_allocator.h: Same.
93         * testsuite/20_util/temporary_buffer.cc: Use typedef, qualify.
95         * testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Define
96         PB_DS_REGRESSION in the source file.
97         * testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Same.
98         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand.cc: Same.
99         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Same.
100         * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc: Same.
101         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Same.
102         * testsuite/ext/pb_ds/regression/priority_queue_rand.cc: Same.
103         * testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Same.
104         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Same.
106         * testsuite/21_strings/c_strings/wchar_t/3_neg.cc: Move to this.
107         Use _neg suffix.
108         * testsuite/21_strings/c_strings/wchar_t/3.cc: ...from this.
109         * testsuite/21_strings/c_strings/char/3_neg.cc: Same.
110         * testsuite/21_strings/c_strings/char/3.cc: Same.
111         * testsuite/ext/slist/23781_neg.cc: Same.
112         * testsuite/ext/slist/23781.cc: Same.
113         * testsuite/ext/profile/mutex_extensions.cc: Same.
114         * testsuite/ext/profile/mutex_extensions_neg.cc: Same.
115         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820.cc: Same.
116         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
117         * testsuite/tr1/6_containers/tuple/comparison_operators/35480_neg.cc:
118         Same.
119         * testsuite/tr1/6_containers/tuple/comparison_operators/35480.cc: Same.
120         * testsuite/23_containers/multimap/23781_neg.cc: Same.
121         * testsuite/23_containers/multimap/23781.cc: Same.
122         * testsuite/23_containers/set/23781_neg.cc: Same.
123         * testsuite/23_containers/set/23781.cc: Same.
124         * testsuite/23_containers/multiset/23781_neg.cc: Same.
125         * testsuite/23_containers/multiset/23781.cc: Same.
126         * testsuite/23_containers/list/23781_neg.cc: Same.
127         * testsuite/23_containers/list/23781.cc: Same.
128         * testsuite/23_containers/map/23781_neg.cc: Same.
129         * testsuite/23_containers/map/23781.cc: Same.
130         * testsuite/20_util/duration/cons/dr974_neg.cc: Same.
131         * testsuite/20_util/duration/cons/dr974.cc: Same.
132         * testsuite/20_util/tuple/comparison_operators/35480_neg.cc: Same.
133         * testsuite/20_util/tuple/comparison_operators/35480.cc: Same.
134         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Same.
135         * testsuite/20_util/shared_ptr/cons/43820.cc: Same.
136         * testsuite/20_util/unique_ptr/cons/pointer_array_convertible_neg.cc:
137         Same.
138         * testsuite/20_util/unique_ptr/cons/pointer_array_convertible.cc: Same.
140 2010-12-15  Paolo Carlini  <paolo.carlini@oracle.com>
142         * include/ext/vstring.h (operator+(__versa_string<>&&,
143         const __versa_string<>&), operator+(const __versa_string<>&,
144         __versa_string<>&&), operator+(__versa_string<>&&,
145         __versa_string<>&&), operator+(const _CharT*,
146         __versa_string<>&&), operator+(_CharT, __versa_string<>&&),
147         operator+(__versa_string<>&&, const _CharT*),
148         operator+(__versa_string<>&&, _CharT)): Add.
149         * testsuite/ext/vstring/operators/1.cc: New.
151 2010-12-15  Jonathan Wakely  <jwakely.gcc@gmail.com>
153         PR libstdc++/46951
154         * testsuite/30_threads/future/members/45133.cc: Fix dg-options.
155         * testsuite/30_threads/shared_future/members/45133.cc: Likewise.
157 2010-12-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
159         PR libstdc++/45133
160         * include/std/future (__basic_future::wait): Throw if not valid.
161         (__basic_future::wait_for): Likewise.
162         (__basic_future::wait_until): Likewise.
163         (__basic_future::_M_get_result): Likewise.
164         * testsuite/30_threads/future/members/45133.cc: New.
165         * testsuite/30_threads/shared_future/members/45133.cc: New.
167 2010-12-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
169         PR libstdc++/46910
170         * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Do not
171         derive from _Sp_counted_ptr.
172         * testsuite/20_util/shared_ptr/cons/46910.cc: New.
173         * testsuite/20_util/shared_ptr/cons/43820.cc: Adjust.
174         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust.
176 2010-12-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
178         * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerate.
179         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
180         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
181         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
182         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
184 2010-12-12  Paolo Carlini  <paolo.carlini@oracle.com>
186         * testsuite/util/testsuite_abi.cc (check_version): Don't push back
187         GLIBCXX_3.4.16, unused.
189 2010-12-10  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
191         * testsuite/lib/libstdc++.exp (v3-build_support): Delete
192         libtestc++.a before creation.
194 2010-12-10  Jack Howarth  <howarth@bromo.med.uc.edu>
195             Iain Sandoe  <iains@gcc.gnu.org>
197         PR 43751/target
198         * testsuite/lib/prune.exp: Prune dsymutil warnings.
200 2010-12-08  Nathan Froyd  <froydnj@codesourcery.com>
202         PR testsuite/46860
203         * testsuite/20_util/auto_ptr/assign_neg.cc: Adjust.
204         * testsuite/20_util/unique_ptr/assign/assign_neg.cc: Adjust.
205         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust.
207 2010-12-08  Paolo Carlini  <paolo.carlini@oracle.com>
209         * include/std/bitset (_Base_bitset<>::_Base_bitset(),
210         _Base_bitset(unsigned long)): Simplify.
212 2010-12-07  François Dumont  <francois.cppdevs@free.fr>
214         * include/bits/stl_iterator.h: Add move_iterator operators overloads
215         to make it robust to template abuses.
216         * testsuite/util/testsuite_greedy_ops.h: New.
217         * testsuite/23_containers/vector/types/1.cc: Use latter.
218         * testsuite/23_containers/deque/types/1.cc: Likewise.
219         * testsuite/24_iterators/move_iterator/greedy_ops.cc: New.
220         * testsuite/24_iterators/normal_iterator/greedy_ops.cc: New.
221         * testsuite/24_iterators/reverse_iterator/greedy_ops.cc: New.
222         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
223         line numbers.
225 2010-12-06  Paul Pluzhnikov  <ppluzhnikov@google.com>
227         PR libstdc++/46830
228         * include/ext/sso_string_base.h (__sso_string_base<>::_M_swap):
229         Early return when this == &__rcs.
231 2010-12-06  Paolo Carlini  <paolo.carlini@oracle.com>
233         * include/bits/shared_ptr.h (shared_ptr<>::shared_ptr(_Tp1*, _Deleter,
234         const _Alloc&), shared_ptr(nullptr_t, _Deleter, const _Alloc&)): Take
235         the allocator by value, per N3225.
236         (shared_ptr<>::shared_ptr(_Sp_make_shared_tag, _Alloc, _Args&&...),
237         allocate_shared(_Alloc, _Args&&...): Viceversa, take the allocator
238         by const lvalue ref.
239         * include/bits/shared_ptr_base.h (__shared_count<>::
240         __shared_count(_Sp_make_shared_tag, _Tp*, _Alloc, _Args&&...),
241         __shared_ptr<>::__shared_ptr(_Sp_make_shared_tag, _Alloc, _Args&&...),
242         __allocate_shared(_Alloc, _Args&&...)): Likewise.
243         (__shared_ptr<>::__shared_ptr(_Tp1*, _Deleter, const _Alloc&),
244         __shared_ptr(nullptr_t, _Deleter, const _Alloc&), reset(_Tp1*,
245         _Deleter, const _Alloc&)): Take the allocator by value.
246         * testsuite/20_util/shared_ptr/cons/43820.cc: Adjust dg-error line
247         numbers.
248         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
250 2010-12-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
252         * acinclude.m4 (symvers_renaming): Also set if enable_symvers = no.
253         * configure: Regenerate.
255 2010-12-06  Paolo Carlini  <paolo.carlini@oracle.com>
257         PR libstdc++/46821
258         * include/std/tuple (_Head_base<,, true>::_M_swap_impl):
259         Swap the empty bases.
260         (_Head_base<,, false>::_M_swap_impl): Minor tweak.
261         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
262         line number.
264 2010-12-06  Dave Korn  <dave.korn.cygwin@gmail.com>
266         PR target/40125
267         PR lto/46695
268         * configure.ac: Invoke ACX_LT_HOST_FLAGS.
269         * configure.host (OPT_LDFLAGS): Use lt_host_flags for cygming.
270         * aclocal.m4: Regenerate.
271         * configure: Regenerate.
272         * Makefile.in: Regenerate.
273         * doc/Makefile.in: Regenerate.
274         * include/Makefile.in: Regenerate.
275         * libsupc++/Makefile.in: Regenerate.
276         * po/Makefile.in: Regenerate.
277         * python/Makefile.in: Regenerate.
278         * src/Makefile.in: Regenerate.
279         * testsuite/Makefile.in: Regenerate.
281 2010-12-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
283         * include/std/mutex (try_lock, __try_lock_impl): Fix.
284         (lock): Implement using __try_lock_impl.
285         * testsuite/30_threads/try_lock/2.cc: Fix logic.
286         * testsuite/30_threads/try_lock/4.cc: New.
287         * testsuite/30_threads/lock/1.cc: New.
288         * testsuite/30_threads/lock/2.cc: New.
289         * testsuite/30_threads/lock/3.cc: New.
290         * testsuite/30_threads/lock/4.cc: New.
292 2010-12-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
294         * src/future.cc (future_category): Export compatibility symbol.
295         * config/abi/pre/gnu.ver: Move _ZSt15future_categoryv to 3.4.15
296         version.
298 2010-12-02  François Dumont  <francois.cppdevs@free.fr>
300         * testsuite/23_containers/vector/requirements/explicit_instantiation/
301         2.cc: Hide explicit instantiation with non default constructible type
302         in C++0x mode.
303         * testsuite/23_containers/deque/requirements/explicit_instantiation/
304         2.cc: Likewise.
305         * testsuite/23_containers/list/requirements/explicit_instantiation/
306         2.cc: Likewise.
308 2010-12-02  Kai Tietz  <kai.tietz@onevision.com>
310         PR libstdc++/43738
311         * config/io/basic_file_stdio.cc (showmanyc): Check _GLIBCXX_NO_IOCTL
312         before use of ioctl.
313         * config/os/mingw32/os_defines.h (_GLIBCXX_NO_IOCTL): New.
315 2010-12-01  François Dumont  <francois.cppdevs@free.fr>
317         * testsuite/23_containers/deque/cons/2.cc: Fix to explicitly invoke
318         the copy constructor with or without C++0x mode.
319         * testsuite/23_containers/vector/cons/4.cc: Likewise.
321 2010-12-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
323         * scripts/extract_symvers.pl: New file.
324         * scripts/extract_symvers: Rename to ...
325         * scripts/extract_symvers.in: ... this.
326         Use extract_symvers.pl on SunOS.
327         * configure.ac: Add scripts/extract_symvers to AC_CONFIG_FILES.
328         * configure: Regenerate.
329         * Makefile.in: Regenerate.
330         * testsuite/Makefile.am (extract_symvers): Call extract_symvers
331         from $(glibcxx_builddir).
332         * testsuite/Makefile.in: Regenerate.
333         * testsuite/libstdc++-abi/abi.exp: Call extract_symvers from
334         $objdir.
336         * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerate.
337         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
338         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
339         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
340         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
342 2010-11-30  Paolo Carlini  <paolo.carlini@oracle.com>
344         PR libstdc++/46718
345         * include/std/type_traits (__is_nullptr_t): Add.
346         (is_scalar): Use the latter.
347         * testsuite/20_util/is_scalar/value.cc: New.
348         * testsuite/20_util/is_scalar/requirements/typedefs.cc: Likewise.
349         * testsuite/20_util/is_scalar/requirements/explicit_instantiation.cc:
350         Likewise.
351         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
352         Adjust dg-error line numbers.
353         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
354         Likewise.
355         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
357 2010-11-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
359         PR libstdc++/46689
360         * testsuite/20_util/shared_ptr/comparison/cmp.cc: Remove tests for
361         invalid comparisons.
363 2010-11-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
365         * include/bits/shared_ptr_base.h (operator>, operator>=, operator<=):
366         Remove comparisons not specified in the C++0x draft.
368 2010-11-27  François Dumont  <francois.cppdevs@free.fr>
370         * include/debug/unordered_map (unordered_multimap<>::erase): Fix to
371         erase all elements associated to the key.
372         * include/debug/unordered_set (unordered_multiset<>::erase): Likewise.
373         * testsuite/23_containers/unordered_multimap/erase/1.cc: Modify to
374         check for multiple erase.
375         * testsuite/23_containers/unordered_multiset/erase/1.cc: Likewise.
377 2010-11-27  François Dumont  <francois.cppdevs@free.fr>
379         * include/debug/unordered_map, unordered_set (unordered_map<>::insert,
380         unordered_multimap<>::insert, unordered_set<>::insert,
381         unordered_multiset<>::insert) Debug check iterator hint and pass it to
382         normal implementation.
384 2010-11-27  François Dumont  <francois.cppdevs@free.fr>
386         * include/debug/bitset (bitset<>::reference): Clean code, use normal
387         reference type in experimental mode.
388         * testsuite/23_containers/bitset/debug/invalid/1.cc: Fix for
389         experimental mode.
391 2010-11-26  François Dumont  <francois.cppdevs@free.fr>
393         * testsuite/lib/libstdc++.exp ([check_v3_target_debug_mode]): Use
394         remote_file delete for generated exe.
395         ([check_v3_target_profile_mode]): Add.
396         * testsuite/lib/dg-options.exp ([dg-require-profile-mode]): Add
397         * testsuite/ext/profile/mh.cc, profiler_algos.cc, all.cc: Use
398         dg-require-profile-mode, remove explicit _GLIBCXX_PROFILE definition.
400 2010-11-25  François Dumont  <francois.cppdevs@free.fr>
402         * src/debug.cc: Introduce a mutex pool in get_safe_base_mutex.
403         Move code used to manipulate sequence safe iterators from safe
404         iterator methods to safe sequence ones. Remove usage of safe iterator
405         mutex, keep _Safe_iterator_base::_M_get_mutex for library backward
406         binary compatibility.
407         * src/Makefile.am: Build debug.cc in gnu++0x mode for _Hash_impl usage.
408         * src/Makefile.in: Regenerate
409         * include/debug/safe_base.h: Add _Safe_iterator_base _M_invalidate
410         and _M_reset. Add _Safe_sequence_base _M_attach, _M_attach_single,
411         _M_detach and _M_detach_single.
412         * include/debug.safe_iterator.h, safe_iterator.tcc: Remove
413         _Safe_iterator _M_invalidate and _M_invalidate_single. Implement all
414         methods in terms of normal iterators rather than safe ones.
415         * include/debug/safe_sequence.h: Replace _Safe_sequence
416         _M_transfe_iter with _M_transfer_from_if taking the source sequence
417         and a predicate signaling when a safe iterator shall be transfered.
418         Add _Equal_to predicate.
419         * include/debug/safe_sequence.tcc: New.
420         * include/Makefile.am: Adjust.
421         * include/Makefile.in: Regenerate.
422         * include/debug/forward_list: Swap safe iterators in move constructor.
423         Do not invalidate before begin in _M_invalidate_all method.
424         Reimplement safe methods using normal iterators rather than safe ones.
425         * include/debug/set.h, unordered_map, multiset.h, vector,
426         unordered_set, deque, map.h, list, multimap.h: Reimplement safe method
427         using normal iterators rather than safe ones.
428         * testsuite/23_containers/forward_list/debug/clear.cc, swap.cc,
429         move_constructor.cc, splice_after.cc, splice_after1.cc,
430         splice_after2.cc, splice_after3.cc, splice_after4.cc: New.
431         * testsuite/23_containers/vector/debug/multithreaded_swap.cc: New.
433 2010-11-24  Benjamin Kosnik  <bkoz@redhat.com>
435         * include/std/tuple: Mark more constructors constexpr.
436         * include/bits/stl_pair.h: Same.
437         * testsuite/20_util/tuple/requirements/dr801.cc: New.
438         * testsuite/20_util/pair/requirements/dr801.cc: New.
439         * testsuite/20_util/tuple/cons/constexpr.cc: Add cases for new
440         constexpr constructors.
441         * testsuite/20_util/pair/cons/constexpr.cc: Same.
442         * testsuite/20_util/pair/comparison_operators/constexpr.cc: New.
444         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust line number.
446 2010-11-24  Paolo Carlini  <paolo.carlini@oracle.com>
448         * testsuite/30_threads/future/cons/constexpr.cc: Add dg-require*
449         directives.
450         * testsuite/30_threads/shared_future/cons/constexpr.cc: Likewise.
452 2010-11-23  Benjamin Kosnik  <bkoz@redhat.com>
454         * include/std/chrono: Constexpr markup for is_monotonic.
455         * src/chrono.cc: Same.
456         * testsuite/20_util/clocks/1.cc: Move...
457         * testsuite/20_util/system_clock/1.cc: ...here.
458         * testsuite/20_util/system_clock/constexpr_data.cc
459         * testsuite/20_util/monotonic_clock/constexpr_data.cc
461         * include/std/complex: Mark primary template constexpr.
462         * testsuite/26_numerics/complex/cons/constexpr_primary.cc: Add.
463         * testsuite/26_numerics/complex/complex_value.cc: Move...
464         * testsuite/26_numerics/complex/dr387.cc: Move...
465         * testsuite/26_numerics/complex/value_operations/1.cc: ... here.
466         * testsuite/26_numerics/complex/value_operations/dr387.cc: ...here.
467         * testsuite/26_numerics/complex/value_operations/constexpr.cc: New.
469 2010-11-23  Benjamin Kosnik  <bkoz@redhat.com>
470             Jason Merrill  <jason@redhat.com>
472         * testsuite/lib/libstdc++.exp: Use scanasm.
473         * testsuite/util/testsuite_common_types.h
474         (constexpr_default_constructible): Add support for non-literal types.
475         (constexpr_single_value_constructible): Same.
476         * testsuite/20_util/enable_shared_from_this/cons/constexpr.cc:
477         Remove xfail.
478         * testsuite/20_util/shared_ptr/cons/constexpr.cc: Add.
479         * testsuite/20_util/unique_ptr/cons/constexpr.cc: Add.
480         * testsuite/20_util/weak_ptr/cons/constexpr.cc: Add.
481         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust line number.
483 2010-11-23  Benjamin Kosnik  <bkoz@redhat.com>
484             Jonathan Wakely  <jwakely.gcc@gmail.com>
486         * include/std/future (shared_future): Default ctor constexpr.
487         (future): Same.
488         * testsuite/30_threads/shared_future/cons/constexpr.cc: New.
489         * testsuite/30_threads/future/cons/constexpr.cc: New.
491 2010-11-23  Uros Bizjak  <ubizjak@gmail.com>
493         * testsuite/22_locale/collate/hash/char/wrapped_locale.cc: Require
494         additional locale name.
495         * testsuite/22_locale/collate/hash/char/wrapped_env.cc: Ditto.
497 2010-11-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
499         PR libstdc++/46455
500         * include/std/mutex: Define destructors for mutex types which use an
501         init function.
502         * include/ext/concurrence.h: Likewise.
504 2010-11-18  Paolo Carlini  <paolo.carlini@oracle.com>
506         PR libstdc++/26211 + N3168
507         * include/bits/istream.tcc (basic_istream<>::tellg, seekg(pos_type),
508         seekg(off_type, ios_base::seekdir)): Construct a sentry.
509         (basic_istream<>::seekg(pos_type), seekg(off_type, ios_base::seekdir)
510         putback, unget): Clear eofbit first, per N3168.
511         * testsuite/27_io/basic_istream/seekg/char/26211.cc: New.
512         * testsuite/27_io/basic_istream/seekg/wchar_t/26211.cc: Likewise.
513         * testsuite/27_io/basic_istream/tellg/char/26211.cc: Likewise.
514         * testsuite/27_io/basic_istream/tellg/wchar_t/26211.cc: Likewise.
515         * testsuite/27_io/basic_istream/tellg/char/8348.cc: Tweak.
516         * testsuite/27_io/basic_istream/tellg/wchar_t/8348.cc: Likewise.
518 2010-11-18  H.J. Lu  <hongjiu.lu@intel.com>
520         PR other/42670
521         * testsuite/abi/demangle/regression/cw-13.cc: Updated.
523 2010-11-18  Paolo Carlini  <paolo.carlini@oracle.com>
525         * include/debug/formatter.h (__truth): Remove, unused.
526         (__is_same): Remove, include cpp_type_traits.h instead.
527         (_Parameter::_Parameter(const _Safe_iterator<>&, const char*,
528         _Is_iterator)): Adjust.
529         * include/debug/safe_iterator.h (_Safe_iterator<>::_M_constant):
530         Likewise.
532 2010-11-17  François Dumont  <francois.cppdevs@free.fr>
534         * testsuite/lib/libstdc++.exp (check_v3_target_debug_mode): Clean
535         built exe.
537 2010-11-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
539         PR libstdc++/45711
540         * src/Makefile.am (stamp-debug): Also adjust VPATH.
541         * src/Makefile.in: Regenerate.
543 2010-11-15  Jie Zhang  <jie@codesourcery.com>
545         * testsuite/ext/profile/mh.cc: Add xfail for uclibc.
547 2010-11-14  Matthias Klose  <doko@ubuntu.com>
549         * testsuite/28_regex/13_ecmascript: Remove, empty directory.
550         * testsuite/28_regex/02_definitions: Likewise.
551         * testsuite/29_atomics/headers/stdatomic.h: Likewise.
553 2010-11-14  Paolo Carlini  <paolo.carlini@oracle.com>
555         * include/bits/stl_tree.h (_Rb_tree<>::_M_const_cast_iter): Remove.
556         (_Rb_tree_const_iterator<>::_M_const_cast): Add.
557         (_Rb_tree<>::erase, _M_insert_unique_): Adjust.
558         * include/debug/map.h (map<>::erase, insert): Fix C++0x signatures.
559         * include/debug/multimap.h (multimap<>::erase, insert): Likewise.
560         * include/debug/set.h (set<>::erase, insert): Fix, only cosmetic
561         changes in this case.
562         * include/debug/multiset.h (multiset<>::erase, insert): Likewise.
563         * include/profile/set.h (set<>::insert): Remove redundant macro.
564         * include/profile/multiset.h (multiset<>::insert): Likewise.
565         * include/bits/stl_set.h (set<>::insert): Likewise.
566         * include/bits/stl_multiset.h (multiset<>::insert): Likewise.
568 2010-11-12  Ian Lance Taylor  <iant@google.com>
570         PR other/46332
571         * testsuite/abi/demangle/abi_examples/14.cc (main): Change
572         expected demangling.
574 2010-11-11  Paolo Carlini  <paolo.carlini@oracle.com>
576         * include/bits/move.h (forward): Implement N3143, resolving US 90.
577         * testsuite/20_util/forward/a.cc: New.
578         * testsuite/20_util/forward/b.cc: Likewise.
579         * testsuite/20_util/forward/c_neg.cc: Likewise.
580         * testsuite/20_util/forward/d.cc: Likewise.
581         * testsuite/20_util/forward/e.cc: Likewise.
582         * testsuite/20_util/forward/f_neg.cc: Likewise.
584 2010-11-10  François Dumont  <francois.cppdevs@free.fr>
586         * include/profile/unordered_map (unordered_map<>::_M_profile_size):
587         Simplify, don't take a __new_size argument; adjust all callers.
589 2010-11-10  Paolo Carlini  <paolo.carlini@oracle.com>
591         PR libstdc++/44436 (partial)
592         PR libstdc++/46148
593         * include/bits/stl_tree.h (_Rb_tree<>::_M_insert_, _M_insert_lower,
594         _M_insert_equal_lower, _M_insert_unique, _M_insert_equal,
595         _M_insert_unique_, _M_insert_equal_): Templatize in C++0x mode,
596         use _GLIBCXX_FORWARD throughout.
597         * include/bits/stl_map.h (map<>::insert(_Pair&&),
598         insert(const_iterator, _Pair&&), operator[](key_type&&): Add.
599         * include/bits/stl_set.h (set<>::insert(value_type&&),
600         insert(const_iterator, value_type&&)): Likewise.
601         * include/bits/stl_multimap.h (multimap<>::insert(_Pair&&),
602         insert(const_iterator, _Pair&&)): Likewise.
603         * include/bits/stl_multiset.h (multiset<>::insert(value_type&&),
604         insert(const_iterator, value_type&&)): Likewise.
605         * include/debug/set.h: Adjust.
606         * include/debug/multiset.h: Likewise.
607         * include/debug/map.h: Likewise.
608         * include/debug/multimap.h: Likewise.
609         * include/profile/set.h: Likewise.
610         * include/profile/multiset.h: Likewise.
611         * include/profile/map.h: Likewise.
612         * include/profile/multimap.h: Likewise.
613         * testsuite/23_containers/multimap/modifiers/insert/1.cc: New.
614         * testsuite/23_containers/multimap/modifiers/insert/2.cc: Likewise.
615         * testsuite/23_containers/multimap/modifiers/insert/3.cc: Likewise.
616         * testsuite/23_containers/multimap/modifiers/insert/4.cc: Likewise.
617         * testsuite/23_containers/set/modifiers/insert/2.cc: Likewise.
618         * testsuite/23_containers/set/modifiers/insert/3.cc: Likewise.
619         * testsuite/23_containers/multiset/modifiers/insert/3.cc: Likewise.
620         * testsuite/23_containers/multiset/modifiers/insert/4.cc: Likewise.
621         * testsuite/23_containers/map/modifiers/insert/2.cc: Likewise.
622         * testsuite/23_containers/map/modifiers/insert/3.cc: Likewise.
623         * testsuite/23_containers/map/modifiers/insert/4.cc: Likewise.
624         * testsuite/23_containers/map/modifiers/insert/5.cc: Likewise.
625         * testsuite/23_containers/map/element_access/2.cc: Likewise.
626         * testsuite/23_containers/map/element_access/46148.cc: Likewise.
628         * include/bits/hashtable.h: Trivial naming changes.
630 2010-11-10  Paolo Carlini  <paolo.carlini@oracle.com>
632         * include/bits/hashtable.h (_Hashtable<>::_Insert_Conv_Type,
633         _Hashtable<>::_Insert_Return_Type): Change to private.
635 2010-11-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
637         * include/bits/unique_ptr.h: Use static_assert in constexpr
638         constructors.
639         * testsuite/20_util/unique_ptr/cons/ptr_deleter_neg.cc: Remove xfails.
640         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
641         line number.
643 2010-11-09  François Dumont  <francois.cppdevs@free.fr>
644             Johannes Singler  <singler@kit.edu>
646         * include/parallel/algobase.h (equal):  Call parallel variant
647         for applicable overloads.
649 2010-11-09  Paolo Carlini  <paolo.carlini@oracle.com>
651         * include/bits/stl_tree.h (_Rb_tree<>::_M_const_cast_iter): Add
652         and use it throughout.
654 2010-11-09  Paolo Carlini  <paolo.carlini@oracle.com>
656         PR libstdc++/46385
657         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
658         line number.
660 2010-11-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
662         * include/bits/unique_ptr.h: Move misplaced static_assert and use
663         tuple's constexpr constructor in constexpr constructors.
664         * testsuite/20_util/unique_ptr/cons/ptr_deleter.cc: New.
665         * testsuite/20_util/unique_ptr/cons/ptr_deleter_neg.cc: New.
667 2010-11-08  Benjamin Kosnik  <bkoz@redhat.com>
669         * doc/doxygen/user.cfg.in: Adjust scanned includes.
670         * include/std/forward_list: Make doxygen file markup unambiguous.
672 2010-11-08  Jason Merrill  <jason@redhat.com>
674         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust
675         expected error.
677 2010-11-08  Benjamin Kosnik  <bkoz@redhat.com>
679         * include/std/complex (operator==, !=): Mark constexpr.
680         * testsuite/26_numerics/complex/comparison_operators/constexpr.cc: New.
682 2010-11-08  Paolo Carlini  <paolo.carlini@oracle.com>
684         * include/bits/stl_tree.h (_Rb_tree<>::_M_erase_aux): Add.
685         (_Rb_tree<>::erase(iterator)): Fix in C++0x mode to take
686         const_iterator; remove redundant overload in C++03 mode.
687         (_Rb_tree<>::erase(iterator, iterator)): Likewise.
688         * include/bits/stl_map.h (map<>::erase): Adjust.
689         (map<>::insert): Fix signature in C++0x mode.
690         * include/bits/stl_set.h (set<>::erase): Likewise.
691         (set<>::insert): Likewise.
692         * include/bits/stl_multimap.h (multimap<>::erase): Likewise.
693         (multimap<>::insert): Likewise.
694         * include/bits/stl_multiset.h (multiset<>::erase): Likewise.
695         (multiset<>::insert): Fix signature in C++0x mode.
696         * include/profile/set.h: Adjust.
697         * include/profile/multiset.h: Likewise.
698         * include/profile/map.h: Likewise.
699         * include/profile/multimap.h: Likewise.
700         * testsuite/util/exception/safety.h (erase_base, insert_base):
701         Update.
703 2010-11-07  Paolo Carlini  <paolo.carlini@oracle.com>
705         * include/profile/unordered_map (unordered_map<>::operator[](_Key&&)):
706         Add.
708 2010-11-07  Paolo Carlini  <paolo.carlini@oracle.com>
710         * include/profile/bitset (bitset<>::bitset(), bitset<>::
711         bitset(unsigned long long)): Add constexpr specifier.
713 2010-11-07  Paolo Carlini  <paolo.carlini@oracle.com>
715         * include/debug/bitset: Do not derive from _Safe_sequence_base in
716         C++0x mode, otherwise std::bitset isn't a literal type anymore;
717         adjust everywhere.
719         * include/debug/bitset (bitset<>::bitset(), bitset<>::
720         bitset(unsigned long long)):  Add missing constexpr specifier.
722 2010-11-05  Benjamin Kosnik  <bkoz@redhat.com>
724         * doc/doxygen/user.cfg.in: Add typeindex.
726         * testsuite/util/testsuite_common_types.h (constexpr_comparison_eq_ne,
727         constexpr_comparison_operators): New.
728         * testsuite/20_util/duration/comparisons: Move...
729         * testsuite/20_util/duration/comparison_operators: ...here.
730         * testsuite/20_util/duration/comparison_operators/constexpr.cc: New.
731         * testsuite/20_util/time_point/comparison_operators/constexpr.cc: Add.
733         * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Adjust line
734         numbers.
735         * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Same.
736         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Same.
737         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Same.
739 2010-11-05  Paolo Carlini  <paolo.carlini@oracle.com>
741         * include/bits/shared_ptr.h (shared_ptr<>::__shared_ptr(),
742         shared_ptr<>::shared_ptr(nullptr_t), weak_ptr<>::weak_ptr(),
743         enable_shared_from_this::enable_shared_from_this()): Add constexpr
744         specifier.
745         * include/bits/shared_ptr_base.h (__shared_count::__shared_count(),
746         __shared_count::__shared_count(), __shared_ptr<>::__shared_ptr(),
747         __shared_ptr<>::__shared_ptr(nullptr_t), __weak_ptr<>::__weak_ptr(),
748         __enable_shared_from_this::__enable_shared_from_this()): Likewise.
749         * include/bits/unique_ptr.h (default_delete,
750         unique_ptr<>::unique_ptr(), unique_ptr<>::unique_ptr(nullptr_t)):
751         Likewise.
752         * testsuite/20_util/default_delete/cons/constexpr.cc: Do not xfail.
753         * testsuite/20_util/shared_ptr/cons/constexpr.cc: Remove, the test
754         cannot work for a non-literal type like std::shared_ptr.
755         * testsuite/20_util/weak_ptr/cons/constexpr.cc: Likewise.
756         * testsuite/util/testsuite_common_types.h: Add comments.
757         * testsuite/20_util/unique_ptr/cons/constexpr.cc: Likewise.
758         * testsuite/20_util/shared_ptr/cons/43820.cc: Adjust dg-error line
759         numbers.
760         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
762 2010-11-05  Benjamin Kosnik  <bkoz@redhat.com>
764         * doc/doxygen/user.cfg.in: Remove tr1_impl headers.
766         * testsuite/tr1/4_metaprogramming/integral_constant/requirements/
767         constexpr_data.cc: New.
769         * testsuite/util/testsuite_tr1.h (LType, LTypeDerived, NLType): New.
770         * testsuite/20_util/is_literal_type/value.cc: New.
771         * testsuite/20_util/is_literal_type/requirements/typedefs.cc: Name.
772         * testsuite/20_util/is_literal_type/requirements/
773         explicit_instantiation.cc: New.
775 2010-11-04  Paolo Carlini  <paolo.carlini@oracle.com>
777         PR libstdc++/46303
778         * testsuite/30_threads/call_once/constexpr.cc: Add missing dg-require
779         directives.
780         * testsuite/30_threads/mutex/cons/constexpr.cc: Likewise.
781         * testsuite/30_threads/once_flag/cons/constexpr.cc: Likewise.
783 2010-11-04  Paolo Carlini  <paolo.carlini@oracle.com>
785         * include/std/ratio (ratio_add, ratio_subtract, ratio_multiply,
786         ratio_divide): Declare the data members constexpr.
787         * testsuite/20_util/ratio/requirements/constexpr_data.cc: Extend.
789 2010-11-03  Benjamin Kosnik  <bkoz@redhat.com>
791         * include/std/tuple (tuple): Make default constructors constexpr.
792         * testsuite/20_util/tuple/cons/constexpr.cc: Add.
794         * testsuite/18_support/initializer_list/requirements/
795         constexpr_functions.cc: Add.
796         * testsuite/18_support/initializer_list/constexpr.cc: Add.
798 2010-11-03  Paolo Carlini  <paolo.carlini@oracle.com>
800         * include/std/limits (__glibcxx_digits10, __glibcxx_max_digits10):
801         Use 643L instead of 643 to avoid overflows on 16-bit machines.
802         * include/ext/numeric_traits.h (__glibcxx_max_digits10): Likewise.
804 2010-11-02  Benjamin Kosnik  <bkoz@redhat.com>
806         * include/std/chrono: Use typedefs.
807         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust
808         line numbers.
809         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Same.
810         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Same.
811         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Same.
813 2010-11-02  Paolo Carlini  <paolo.carlini@oracle.com>
815         * include/c_global/cmath (fpclassify, isfinite, isinf, isnan,
816         isnormal, signbit, isgreater, isgreaterequal, isless, islessequal,
817         islessgreater, isunordered): Remove spurious duplicate definition
818         added in the last commit.
820         * include/tr1/cmath: Remove tr1_impl leftover macro.
822 2010-11-02  Paolo Carlini  <paolo.carlini@oracle.com>
824         * include/tr1_impl/cinttypes: Remove, move contents to C++0x
825         and TR1 headers.
826         * include/tr1_impl/cstdlib: Likewise.
827         * include/tr1_impl/cstdio: Likewise.
828         * include/tr1_impl/cctype: Likewise.
829         * include/tr1_impl/boost_sp_counted_base.h: Likewise.
830         * include/tr1_impl/cmath: Likewise.
831         * include/tr1_impl/cfenv: Likewise.
832         * include/tr1_impl/utility: Likewise.
833         * include/tr1_impl/complex: Likewise.
834         * include/tr1_impl/cwchar: Likewise.
835         * include/tr1_impl/type_traits: Likewise.
836         * include/tr1_impl/cstdint: Likewise.
837         * include/tr1_impl/regex: Likewise.
838         * include/tr1_impl/array: Likewise.
839         * include/tr1_impl/cwctype: Likewise.
840         * include/Makefile.am: Adjust.
841         * include/Makefile.in: Regenerate.
842         * src/condition_variable.cc: Adjust; consistently use
843         _GLIBCXX_BEGIN_NAMESPACE and _GLIBCXX_END_NAMESPACE.
844         * src/mutex.cc: Likewise.
845         * src/future.cc: Likewise.
846         * src/atomic.cc: Likewise.
847         * src/chrono.cc: Likewise.
848         * src/thread.cc: Likewise.
849         * include/std/tuple: Likewise.
850         * include/std/utility: Likewise.
851         * include/std/thread: Likewise.: Likewise.
852         * include/std/type_traits: Likewise.
853         * include/std/memory: Likewise.
854         * include/std/future: Likewise.
855         * include/std/ratio: Likewise.
856         * include/std/chrono: Likewise.
857         * include/std/condition_variable: Likewise.
858         * include/std/mutex: Likewise.
859         * include/std/functional: Likewise.
860         * include/std/complex: Likewise.
861         * include/std/typeindex: Likewise.
862         * include/std/array: Likewise.
863         * include/bits/regex_compiler.h: Likewise.
864         * include/bits/regex_grep_matcher.tcc: Likewise.
865         * include/bits/regex_grep_matcher.h: Likewise.
866         * include/bits/regex_constants.h: Likewise.
867         * include/bits/regex_cursor.h: Likewise.
868         * include/bits/regex_nfa.tcc: Likewise.
869         * include/bits/shared_ptr_base.h: Likewise.
870         * include/bits/regex_nfa.h: Likewise.
871         * include/bits/random.tcc: Likewise.
872         * include/bits/regex.h: Likewise.
873         * include/bits/random.h: Likewise.
874         * include/bits/regex_error.h: Likewise.
875         * include/c_global/cinttypes: Likewise.
876         * include/c_global/cstdlib: Likewise.
877         * include/c_global/cstdio: Likewise.
878         * include/c_global/cctype: Likewise.
879         * include/c_global/cmath: Likewise.
880         * include/c_global/cfenv: Likewise.
881         * include/c_global/cwchar: Likewise.
882         * include/c_global/cstdint: Likewise.
883         * include/c_global/cwctype: Likewise.
884         * include/tr1/shared_ptr.h: Likewise.
885         * include/tr1/cinttypes: Likewise.
886         * include/tr1/cstdio: Likewise.
887         * include/tr1/cfenv: Likewise.
888         * include/tr1/utility: Likewise.
889         * include/tr1/cwchar: Likewise.
890         * include/tr1/type_traits: Likewise.
891         * include/tr1/memory: Likewise.
892         * include/tr1/cstdint: Likewise.
893         * include/tr1/regex: Likewise.
894         * include/tr1/cwctype: Likewise.
895         * include/tr1/cstdlib: Likewise.
896         * include/tr1/cctype: Likewise.
897         * include/tr1/cmath: Likewise.
898         * include/tr1/complex: Likewise.
899         * include/tr1/array: Likewise.
900         * include/c_compatibility/fenv.h: Likewise.
901         * include/c_compatibility/stdint.h: Likewise.
902         * include/c_compatibility/inttypes.h: Likewise.
903         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820.cc: Adjust
904         dg-error line numbers.
905         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Likewise.
906         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
907         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
908         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
909         * testsuite/20_util/make_unsigned/requirements/
910         typedefs_neg.cc: Likewise.
911         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
912         * testsuite/20_util/shared_ptr/cons/43820.cc: Likewise.
913         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
915 2010-11-02  Paolo Carlini  <paolo.carlini@oracle.com
917         * testsuite/28_regex/05_constants/syntax_option_type.cc: Avoid
918         -Wall warnings.
919         * testsuite/28_regex/08_basic_regex/requirements/constexpr_data.cc:
920         Likewise.
921         * testsuite/18_support/numeric_limits/requirements/
922         constexpr_functions.cc: Likewise.
923         * testsuite/18_support/numeric_limits/requirements/
924         constexpr_data.cc: Likewise.
925         * testsuite/21_strings/char_traits/requirements/
926         constexpr_functions.cc: Likewise.
927         * testsuite/26_numerics/random/independent_bits_engine/requirements/
928         constexpr_functions.cc: Likewise.
929         * testsuite/26_numerics/random/subtract_with_carry_engine/
930         requirements/constexpr_functions.cc: Likewise.
931         * testsuite/26_numerics/random/subtract_with_carry_engine/
932         requirements/constexpr_data.cc: Likewise.
933         * testsuite/26_numerics/random/discard_block_engine/requirements/
934         constexpr_functions.cc: Likewise.
935         * testsuite/26_numerics/random/discard_block_engine/requirements/
936         constexpr_data.cc: Likewise.
937         * testsuite/26_numerics/random/mersenne_twister_engine/
938         requirements/constexpr_functions.cc: Likewise.
939         * testsuite/26_numerics/random/mersenne_twister_engine/
940         requirements/constexpr_data.cc: Likewise.
941         * testsuite/26_numerics/random/linear_congruential_engine/
942         requirements/constexpr_functions.cc: Likewise.
943         * testsuite/26_numerics/random/linear_congruential_engine/
944         requirements/constexpr_data.cc: Likewise.
945         * testsuite/26_numerics/random/shuffle_order_engine/
946         requirements/constexpr_functions.cc: Likewise.
947         * testsuite/26_numerics/random/shuffle_order_engine/
948         requirements/constexpr_data.cc: Likewise.
949         * testsuite/26_numerics/complex/requirements/
950         constexpr_functions.cc: Likewise.
951         * testsuite/23_containers/bitset/requirements/
952         constexpr_functions.cc: Likewise.
953         * testsuite/23_containers/array/requirements/
954         constexpr_functions.cc: Likewise.
955         * testsuite/util/testsuite_common_types.h: Likewise.
956         * testsuite/20_util/duration/requirements/
957         constexpr_functions.cc: Likewise.
958         * testsuite/20_util/duration_cast/constexpr.cc: Likewise.
959         * testsuite/20_util/time_point/requirements/
960         constexpr_functions.cc: Likewise.
961         * testsuite/20_util/ratio/requirements/constexpr_data.cc: Likewise.
963         * testsuite/tr1/4_metaprogramming/integral_constant/
964         requirements/constexpr_data.cc: Remove.
966 2010-11-02  Jason Merrill  <jason@redhat.com>
968         * include/bits/atomic_0.h (_ATOMIC_CMPEXCHNG_): Use C-style cast.
970 2010-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
972         PR target/45693
973         * configure.host (osf*): Set os_include_dir to os/generic.
974         Add -lpthread to OPT_LDFLAGS.
976 2010-11-02  Paolo Carlini  <paolo.carlini@oracle.com>
978         * include/std/bitset (_Base_bitset<>_Base_bitset(unsigned long long)):
979         Convert __val to _WordT.
981 2010-11-01  Benjamin Kosnik  <bkoz@redhat.com>
983         * include/std/chrono: Extend constexpr application.
984         * testsuite/util/testsuite_common_types.h
985         (constexpr_default_constructible, constexpr_single_value_constructible)
986         : Add comments about implied constraints.
987         * testsuite/20_util/duration/cons/constexpr.cc: Activate all tests.
988         * testsuite/20_util/time_point/cons/constexpr.cc: Same.
989         * testsuite/20_util/time_point/requirements/constexpr_functions.cc:
990         Same.
991         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust line
992         numbers.
993         * testsuite/20_util/time_point_cast/constexpr.cc: New.
995         * include/std/bitset: Use __SIZEOF_* macros to re-create original
996         logic instead of slipshod application of
997         std::numeric_limits<T>::max() macros.
998         * testsuite/util/testsuite_common_types.h
999         (constexpr_default_constructible): Modify.
1001         * include/std/chrono: Tested constexpr.
1002         * testsuite/20_util/duration_cast/constexpr.cc: New.
1003         * testsuite/20_util/time_point/cons/constexpr.cc: New.
1005         * testsuite/20_util/duration/cons/constexpr.cc: Add single_value tests.
1006         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust
1007         line numbers.
1008         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Same.
1009         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Same.
1010         * testsuite/20_util/time_point/cons/constexpr.cc: Add single_value
1011         tests.
1012         * testsuite/20_util/time_point/requirements/constexpr_functions.cc: Add.
1014         * testsuite/util/testsuite_common_types.h: Adjust init.
1016         * include/std/chrono (duration): Remove defaulted constructor,
1017         replace with mem-init list.
1018         * testsuite/20_util/duration/cons/constexpr.cc: Add single value.
1019         * testsuite/20_util/duration/requirements/constexpr_functions.cc:
1020         Add non-static member functions.
1022         * testsuite/20_util/default_delete/cons/constexpr.cc: New, xfail.
1023         * testsuite/20_util/enable_shared_from_this/cons/constexpr.cc: Same.
1024         * testsuite/20_util/shared_ptr/cons/constexpr.cc: Same.
1025         * testsuite/20_util/time_point/requirements/constexpr_functions.cc:
1026         Same.
1027         * testsuite/20_util/unique_ptr/cons/constexpr.cc: Same.
1028         * testsuite/20_util/weak_ptr/cons/constexpr.cc: Same.
1030         * include/std/bitset: Add constexpr as per N3126 draft.
1031         * testsuite/23_containers/bitset/cons/constexpr.cc: New.
1032         * testsuite/23_containers/bitset/requirements/constexpr_functions.cc:
1033         New.
1035         * testsuite/util/testsuite_common_types.h: Reset condition.
1037         * include/bits/random.h: Remove misleading comments.
1038         * include/bits/regex.h: Add constexpr.
1039         * testsuite/28_regex/05_constants/syntax_option_type.cc: Add tests.
1040         * testsuite/28_regex/08_basic_regex/requirements/constexpr_data.cc: New.
1042         PR libstdc++/46134
1043         * include/std/chrono: Use default constructor.
1044         * testsuite/util/testsuite_common_types.h
1045         (constexpr_default_constructible): Adjust condition.
1047         PR libstdc++/46133
1048         * include/std/complex: Adjust complex specialization default
1049         constructors for constexpr.
1050         * testsuite/26_numerics/complex/cons/constexpr.cc: Enable tests.
1052         * include/bits/random.h: Adjust for constexpr as per N3126 draft.
1053         * testsuite/26_numerics/random/discard_block_engine/requirements/
1054         constexpr_data.cc: New.
1055         * testsuite/26_numerics/random/discard_block_engine/requirements/
1056         constexpr_functions.cc: New.
1057         * testsuite/26_numerics/random/independent_bits_engine/requirements/
1058         constexpr_functions.cc: New.
1059         * testsuite/26_numerics/random/linear_congruential_engine/requirements/
1060         constexpr_data.cc: New.
1061         * testsuite/26_numerics/random/linear_congruential_engine/requirements/
1062         constexpr_functions.cc: New.
1063         * testsuite/26_numerics/random/mersenne_twister_engine/requirements/
1064         constexpr_data.cc: New.
1065         * testsuite/26_numerics/random/mersenne_twister_engine/requirements/
1066         constexpr_functions.cc: New.
1067         * testsuite/26_numerics/random/shuffle_order_engine/requirements/
1068         constexpr_data.cc: New.
1069         * testsuite/26_numerics/random/shuffle_order_engine/requirements/
1070         constexpr_functions.cc: New.
1071         * testsuite/26_numerics/random/subtract_with_carry_engine/requirements/
1072         constexpr_data.cc: New.
1073         * testsuite/26_numerics/random/subtract_with_carry_engine/requirements/
1074         constexpr_functions.cc: New.
1076         * include/bits/stream_iterator.h: Add constexpr as per N3126 draft.
1077         * include/bits/streambuf_iterator.h: Same.
1078         * include/std/complex: Same.
1079         * testsuite/24_iterators/istream_iterator/cons/constexpr.cc: New.
1080         * testsuite/24_iterators/istreambuf_iterator/cons/constexpr.cc: New.
1081         * testsuite/26_numerics/complex/cons/constexpr.cc: New.
1082         * testsuite/26_numerics/complex/requirements/constexpr_functions.cc:
1083         New.
1085         * include/bits/char_traits.h: Add constexpr as per N3126 draft.
1086         * testsuite/21_strings/char_traits/requirements/constexpr_functions.cc:
1087         New.
1089         * include/tr1_impl/array: Add constexpr as per N3126 draft.
1090         * testsuite/23_containers/array/requirements/
1091         constexpr_functions.cc: New.
1093         * include/bits/shared_ptr.h: Revert changes.
1094         * include/bits/unique_ptr.h: Same.
1096         * include/std/chrono: Adjust.
1097         * include/tr1_impl/type_traits: Same.
1099         * testsuite/util/testsuite_common_types.h: Add test functors.
1100         * testsuite/20_util/duration/cons/constexpr.cc: New.
1101         * testsuite/20_util/duration/requirements/constexpr_functions.cc: Same.
1102         * testsuite/20_util/pair/cons/constexpr.cc: Same.
1103         * testsuite/20_util/ratio/requirements/constexpr_data.cc: Same.
1104         * testsuite/27_io/ios_base/types/fmtflags/constexpr_operators.cc: Same.
1105         * testsuite/27_io/ios_base/types/iostate/constexpr_operators.cc: Same.
1106         * testsuite/27_io/ios_base/types/openmode/constexpr_operators.cc: Same.
1107         * testsuite/30_threads/call_once/constexpr.cc: Same.
1108         * testsuite/30_threads/mutex/cons/constexpr.cc: Same.
1109         * testsuite/30_threads/once_flag/cons/constexpr.cc: Same.
1110         * testsuite/tr1/4_metaprogramming/integral_constant/requirements/
1111         constexpr_data.cc: Same.
1113         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust line numbers.
1114         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Same.
1115         * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Same.
1116         * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Same.
1117         * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc: Same.
1119         * include/bits/allocator.h: Add constexpr as per N3126 draft.
1120         * include/bits/ios_base.h: Same.
1121         * include/bits/shared_ptr.h: Same.
1122         * include/bits/unique_ptr.h: Same.
1123         * include/bits/stl_iterator.h: Same.
1124         * include/bits/stl_pair.h: Same.
1125         * include/std/tuple: Same.
1126         * include/tr1_impl/type_traits: Same.
1127         * include/std/chrono: Same.
1128         * include/std/ratio: Same.
1129         * include/std/mutex: Same.
1130         * src/mutex.cc: Same.
1131         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
1132         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Same.
1133         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Same.
1134         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Same.
1135         * testsuite/27_io/ios_base/cons/assign_neg.cc: Same.
1136         * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
1138         * doc/doxygen/user.cfg.in: Replace _GLIBCXX_USE_CONSTEXPR,
1139         _GLIBCXX_CONSTEXPR for doxygen generation.
1141         * src/limits.cc: Undef.
1142         * testsuite/29_atomics/atomic/cons/constexpr.cc: Adjust.
1143         * testsuite/29_atomics/atomic_address/cons/constexpr.cc: Same.
1144         * testsuite/29_atomics/atomic_integral/cons/constexpr.cc: Same.
1145         * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.c: Same.
1146         * testsuite/18_support/numeric_limits/constexpr.cc: To...
1147         * testsuite/18_support/numeric_limits/requirements/
1148         constexpr_data.cc, constexpr_functions.cc: ...this
1150         * testsuite/util/testsuite_common_types.h
1151         (constexpr_single_value_constructible): Add.
1152         * testsuite/29_atomics/atomic/cons/constexpr.cc: Adjust name.
1153         * testsuite/29_atomics/atomic_integral/cons/constexpr.cc: Same.
1154         * testsuite/29_atomics/atomic_address/cons/constexpr.cc: New.
1155         * testsuite/18_support/numeric_limits/constexpr.cc: New.
1157         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust line numbers.
1158         * testsuite/29_atomics/atomic/cons/constexpr.cc: Same.
1159         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Same.
1160         * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Same.
1161         * testsuite/29_atomics/atomic_integral/cons/constexpr.cc: Same.
1162         * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Same.
1163         * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc: Same.
1164         * testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc: Same.
1165         * testsuite/29_atomics/atomic_integral/operators/increment_neg.cc: Same.
1167         * include/bits/c++config (_GLIBCXX_CONSTEXPR): Add.
1168         (_GLIBCXX_USE_CONSTEXPR): Add.
1169         * include/std/limits: Use it.
1170         * src/limits.cc: Adjust.
1171         * testsuite/ext/profile/mutex_extensions.cc: Change line number.
1173         * include/bits/atomic_0.h: Rework for N3126 draft, add constexpr.
1174         * include/bits/atomic_2.h: Same.
1175         * include/bits/atomic_base.h: Same.
1176         * include/std/atomic: Same.
1177         * src/atomic.cc: Same.
1178         * include/bits/atomicfwd_c.h: Remove.
1179         * include/bits/atomicfwd_cxx.h: Remove.
1180         * include/c_compatibility/stdatomic.h: Remove.
1181         * include/Makefile.am: Remove atomicfwd_c.h, atomicfwd_cxx.h,
1182         stdatomic.h.
1183         * include/Makefile.in: Regenerate.
1184         * doc/xml/manual/using.xml: Update list of header files for changes.
1185         * testsuite/util/testsuite_common_types.h
1186         (constexpr_constructible): Add.
1187         * testsuite/29_atomics/atomic/cons/constexpr.cc: New.
1188         * testsuite/29_atomics/atomic_integral/cons/constexpr.cc: New.
1189         * testsuite/17_intro/headers/c++200x/stdc++.cc: Modify.
1190         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Same.
1191         * testsuite/29_atomics/atomic_address/cons/assign_neg.cc: Same.
1192         * testsuite/29_atomics/atomic_flag/cons/1.cc: Same.
1193         * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Same.
1194         * testsuite/29_atomics/headers/atomic/macros.cc: Same.
1195         * testsuite/29_atomics/headers/atomic/types_std_c++0x.cc: Same.
1196         * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc: Same.
1197         * testsuite/29_atomics/atomic_flag/test_and_set/implicit.c: Remove.
1198         * testsuite/29_atomics/atomic_flag/test_and_set/explicit.c: Same.
1199         * testsuite/29_atomics/atomic_flag/clear/1.c: Same.
1200         * testsuite/29_atomics/headers/stdatomic.h/debug_mode.c: Same.
1201         * testsuite/29_atomics/headers/stdatomic.h/functions.c: Same.
1202         * testsuite/29_atomics/headers/stdatomic.h/macros.c: Same.
1203         * testsuite/29_atomics/headers/stdatomic.h/types.c: Same.
1205         * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.16.
1207 2010-11-01  Jason Merrill  <jason@redhat.com>
1209         * libsupc++/initializer_list: Decorate with constexpr.
1211 2010-11-01  Jonathan Wakely  <jwakely.gcc@gmail.com>
1213         PR libstdc++/45999
1214         * python/libstdcxx/v6/printers.py (StdVectorPrinter): Replace
1215         conditional expression with backward-compatible if-else.
1217 2010-11-01  Jie Zhang  <jie@codesourcery.com>
1219         * config/abi/pre/gnu.ver: Export __emutls_v._ZSt11__once_call
1220         and __emutls_v._ZSt15__once_callable.
1222 2010-10-31  Paolo Carlini  <paolo.carlini@oracle.com>
1224         * testsuite/23_containers/bitset/cons/dr1325-2.cc: Fix typo.
1225         * testsuite/20_util/hash/quality.cc: Avoid -Wall warnings.
1226         * testsuite/20_util/hash/chi2_quality.cc: Likewise.
1228 2010-10-29  Paolo Carlini  <paolo.carlini@oracle.com>
1230         * include/bits/stl_function.h (_Select1st<>::operator()): Add
1231         templatized overloads.
1232         * include/bits/hashtable_policy.h (_Select1st): Remove; revert
1233         everything to std::_Select1st.
1234         * include/bits/unordered_map.h: Likewise.
1236 2010-10-28  Paolo Carlini  <paolo.carlini@oracle.com>
1238         PR libstdc++/44436 (partial)
1239         * include/bits/hashtable.h (_Hashtable<>::insert(value_type&&),
1240         insert(_Pair&&), insert(const_iterator, value_type&&),
1241         insert(const_iterator, _Pair&&)): Add.
1242         (_M_allocate_node, _M_insert, _M_insert_bucket): Templatize.
1243         * include/bits/hashtable_policy.h (__detail::_Select1st): Add; use
1244         it throughout.
1245         (_Map_base<>::operator[](_Key&&)): Add.
1246         * include/bits/unordered_map.h: Use __detail::_Select1st throughout.
1247         * include/debug/unordered_map: Update.
1248         * include/debug/unordered_set: Likewise.
1249         * include/profile/unordered_map: Likewise.
1250         * include/profile/unordered_set: Likewise.
1251         * testsuite/util/testsuite_rvalref.h (struct hash<rvalstruct>): Add;
1252         minor tweaks throughout, use deleted special members.
1253         * testsuite/23_containers/unordered_map/insert/map_single_move-1.cc:
1254         New.
1255         * testsuite/23_containers/unordered_map/insert/map_single_move-2.cc:
1256         Likewise.
1257         * testsuite/23_containers/unordered_map/insert/array_syntax_move.cc:
1258         Likewise.
1259         * testsuite/23_containers/unordered_multimap/insert/
1260         multimap_single_move-1.cc: Likewise.
1261         * testsuite/23_containers/unordered_multimap/insert/
1262         multimap_single_move-2.cc: Likewise.
1263         * testsuite/23_containers/unordered_set/insert/set_single_move.cc:
1264         Likewise.
1265         * testsuite/23_containers/unordered_multiset/insert/
1266         multiset_single_move.cc: Likewise.
1268         * testsuite/23_containers/unordered_map/insert/array_syntax.cc:
1269         Minor cosmetic changes.
1271 2010-10-27  Jason Merrill  <jason@redhat.com>
1273         * include/std/type_traits (is_literal_type): New.
1274         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
1275         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust.
1276         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Adjust.
1278 2010-10-26  Paolo Carlini  <paolo.carlini@oracle.com>
1280         * testsuite/lib/libstdc++.exp ([check_v3_target_normal_mode]): Add.
1281         * testsuite/lib/dg-options.exp ([dg-require-normal-mode]): Likewise.
1282         * testsuite/23_containers/headers/forward_list/synopsis.cc: Use the
1283         latter.
1284         * testsuite/23_containers/headers/vector/synopsis.cc: Likewise.
1285         * testsuite/23_containers/headers/deque/synopsis.cc: Likewise.
1286         * testsuite/23_containers/headers/bitset/synopsis.cc: Likewise.
1287         * testsuite/23_containers/headers/list/synopsis.cc: Likewise.
1288         * testsuite/23_containers/headers/set/synopsis.cc: Likewise.
1289         * testsuite/23_containers/headers/map/synopsis.cc: Likewise.
1291 2010-10-25  Paolo Carlini  <paolo.carlini@oracle.com>
1293         * include/bits/forward_list.h (_Fwd_list_node_base::swap): Remove.
1294         (_Fwd_list_base<>::_Fwd_list_base(_Fwd_list_base&&),
1295         _Fwd_list_base<>::_Fwd_list_base(_Fwd_list_base&&, const _Alloc&)):
1296         Don't use swap.
1297         (forward_list<>::swap): Just use std::swap.
1299         * include/bits/forward_list.h (_Fwd_list_base<>::_Fwd_list_base(),
1300         _Fwd_list_base(const _Alloc&)): Don't zero again _M_next.
1302         * testsuite/23_containers/forward_list/requirements/dr438/
1303         assign_neg.cc: Adjust dg-error line number.
1304         * testsuite/23_containers/forward_list/requirements/dr438/
1305         insert_neg.cc: Likewise.
1306         * testsuite/23_containers/forward_list/requirements/dr438/
1307         constructor_1_neg.cc: Likewise.
1308         * testsuite/23_containers/forward_list/requirements/dr438/
1309         constructor_2_neg.cc: Likewise.
1311 2010-10-25  Paolo Carlini  <paolo.carlini@oracle.com>
1313         * include/bits/hashtable.h (_Hashtable<>:_M_get_Value_allocator):
1314         Remove, unused.
1316 2010-10-24  François Dumont  <francois.cppdevs@free.fr>
1318         * src/debug.cc: Fix parameter indexes in __msg_valid_range2 message.
1319         Replace 'before begin' decription in 'before-begin' for consistency
1320         with 'paste-the-end'.
1322 2010-10-18  Paolo Carlini  <paolo.carlini@oracle.com>
1324         PR libstdc++/45866
1325         * include/std/ratio (ratio<>::type): Add.
1326         (ratio_add<>::num, ratio_add<>::den,
1327         ratio_subtract<>::num, ratio_subtract<>::den,
1328         ratio_multiply<>::num, ratio_multiply<>::den,
1329         ratio_divide<>::num, ratio_divide<>::den): Likewise.
1330         * testsuite/20_util/ratio/operations/45866.cc: New.
1332 2010-10-17  Paolo Carlini  <paolo.carlini@oracle.com>
1334         * include/bits/forward_list.h (forward_list<>::erase_after): Return
1335         an iterator.
1336         (_M_erase_after): Return _Fwd_list_node_base*.
1337         * include/bits/forward_list.tcc: Likewise.
1338         * include/debug/forward_list: Likewise.
1339         * testsuite/23_containers/forward_list/modifiers/3.cc: Update
1340         and extend.
1341         * testsuite/util/exception/safety.h (erase_base<forward_list<>>):
1342         Adjust.
1343         * testsuite/23_containers/forward_list/requirements/dr438/
1344         assign_neg.cc: Adjust dg-error line number.
1345         * testsuite/23_containers/forward_list/requirements/dr438/
1346         insert_neg.cc: Likewise.
1347         * testsuite/23_containers/forward_list/requirements/dr438/
1348         constructor_1_neg.cc: Likewise.
1349         * testsuite/23_containers/forward_list/requirements/dr438/
1350         constructor_2_neg.cc: Likewise.
1352 2010-10-17  Paolo Carlini  <paolo.carlini@oracle.com>
1354         PR libstdc++/43554
1355         * include/profile/forward_list: New file.
1356         * include/std/forward_list: Include <profile/forward_list>.
1357         * include/Makefile.am: Add.
1358         * testsuite/23_containers/forward_list/capacity/1.cc: Adjust.
1359         * include/Makefile.in: Regenerate.
1361 2010-10-15  Paolo Carlini  <paolo.carlini@oracle.com>
1363         * include/std/functional (function<>::operator==, operator!=):
1364         Remove, per LWG 1240.
1365         * testsuite/20_util/function/cmp/cmp_neg.cc: Adjust dg-* directives.
1367 2010-10-13  Jonathan Wakely  <jwakely.gcc@gmail.com>
1369         PR libstdc++/45990
1370         * include/bits/regex.h (regex_traits::isctype): DR 1337.
1372 2010-10-13  Paolo Carlini  <paolo.carlini@oracle.com>
1374         * include/bits/random.h (discrete_distribution<>::param_type::
1375         param_type()): Default construct the vectors.
1376         (discrete_distribution<>::param_type::probabilities): Adjust.
1377         (discrete_distribution<>::probabilities): Likewise.
1378         (discrete_distribution<>::max): Likewise.
1379         (piecewise_constant_distribution<>::param_type::
1380         param_type()): Default construct the vectors.
1381         (piecewise_constant_distribution<>::param_type::intervals): Adjust.
1382         (piecewise_constant_distribution<>::param_type::densities): Likewise.
1383         (piecewise_constant_distribution<>::intervals): Likewise.
1384         (piecewise_constant_distribution<>::densities): Likewise.
1385         (piecewise_constant_distribution<>::min): Likewise.
1386         (piecewise_constant_distribution<>::max): Likewise.
1387         (piecewise_linear_distribution<>::param_type::
1388         param_type()): Default construct the vectors.
1389         (piecewise_linear_distribution<>::param_type::intervals): Adjust.
1390         (piecewise_linear_distribution<>::param_type::densities): Likewise.
1391         (piecewise_linear_distribution<>::intervals): Likewise.
1392         (piecewise_linear_distribution<>::densities): Likewise.
1393         (piecewise_linear_distribution<>::min): Likewise.
1394         (piecewise_linear_distribution<>::max): Likewise.
1395         * include/bits/random.tcc (discrete_distribution<>::param_type::
1396         _M_initialize): Deal quickly with raw _M_prob equivalent to
1397         a default constructed param_type, just clear the vector.
1398         (discrete_distribution<>::operator()): Early return 0 for a
1399         default constructed distribution.
1400         (piecewise_constant_distribution<>::param_type::_M_initialize):
1401         Likewise for _M_int and _M_den.
1402         (piecewise_constant_distribution<>::operator()): Early return
1403         for a default constructed distribution.
1404         (piecewise_linear_distribution<>::param_type::_M_initialize):
1405         Likewise.
1406         (piecewise_linear_distribution<>::operator()): Early return
1407         for a default constructed distribution.
1408         * testsuite/26_numerics/random/discrete_distribution/operators/
1409         call-default.cc: New.
1410         * testsuite/26_numerics/random/piecewise_constant_distribution/
1411         operators/call-default.cc: Likewise.
1413 2010-10-12  Paolo Carlini  <paolo.carlini@oracle.com>
1415         * include/bits/random.h (discrete_distribution<>::param_type):
1416         Disable move operations.
1417         (piecewise_constant_distribution<>::param_type): Likewise.
1418         (piecewise_linear_distribution<>::param_type): Likewise.
1420         * include/bits/random.h (discrete_distribution<>::param_type::
1421         param_type()): Simplify, don't use _M_initialize.
1422         (piecewise_constant_distribution<>::param_type::param_type()):
1423         Likewise.
1424         (piecewise_linear_distribution<>::param_type::param_type()):
1425         Likewise.
1427 2010-10-12  Paolo Carlini  <paolo.carlini@oracle.com>
1429         * include/bits/random.tcc (piecewise_linear_distribution<>::
1430         operator()): Don't crash when the dist is default-constructed.
1431         * testsuite/26_numerics/random/piecewise_linear_distribution/
1432         operators/call-default.cc: New.
1434 2010-10-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
1436         * testsuite/23_containers/bitset/cons/2.cc: Tweak.
1438 2010-10-11  Paolo Carlini  <paolo.carlini@oracle.com>
1440         * include/std/bitset (bitset<>::bitset(const _CharT*,
1441         typename std::basic_string<>::size_type, _CharT, _CharT)):
1442         Implement new proposed resolution for DR 1325.
1443         * include/debug/bitset: Likewise.
1444         * include/profile/bitset: Likewise.
1445         * testsuite/23_containers/bitset/cons/dr1325-1.cc: New.
1446         * testsuite/23_containers/bitset/cons/dr1325-2.cc: Likewise.
1448 2010-10-11  Benjamin Kosnik  <bkoz@redhat.com>
1450         * doc/xml/api.xml: Add link to 4.5 generated docs.
1452 2010-10-08  Paolo Carlini  <paolo.carlini@oracle.com>
1454         * include/std/future (_Result_alloc): Derive from _Alloc,
1455         exploit the Empty Base Optimization.
1457 2010-10-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
1459         PR libstdc++/45403
1460         * python/libstdcxx/v6/printers.py: Check for lazy_string support.
1462 2010-10-08  Paolo Carlini  <paolo.carlini@oracle.com>
1464         * include/std/future (uses_allocator<packaged_task<>,>): Add;
1465         minor formatting tweaks.
1467 2010-10-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
1469         * include/std/future: Enable allocator support.
1470         * testsuite/30_threads/packaged_task/cons/alloc.cc: Expect PASS.
1471         * testsuite/30_threads/promise/cons/alloc.cc: Expect PASS.
1473 2010-10-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
1475         PR libstdc++/45893
1476         * include/std/functional (bind): Implement DR 817 and add support
1477         for volatile-qualified call wrappers.
1478         * include/std/mutex (call_once): Implement DR 891.
1479         * include/std/thread (thread::thread): Implement DR 929.
1480         * include/std/future: Optimise use of std::bind.
1481         * testsuite/20_util/bind/cv_quals.cc: Test volatile-qualification.
1482         * testsuite/20_util/bind/move.cc: New.
1484 2010-10-07  Hans-Peter Nilsson  <hp@axis.com>
1486         PR libstdc++/45841
1487         * testsuite/lib/libstdc++.exp (check_v3_target_fileio): Rewrite to
1488         use an actual testsuite file and machinery, not ".".  Specifically
1489         check that incorrectly seeking backwards from 0 yields an error,
1490         and that reading, seeking backwards and reading again works.
1492         * testsuite/libstdc++-dg/conformance.exp: Apply
1493         check_v3_target_fileio as a gate for tests in
1494         subdirectories matching the substring _filebuf.
1496 2010-10-07  Paolo Carlini  <paolo.carlini@oracle.com>
1498         * include/bits/locale_facets_nonio.tcc (time_get<>::
1499         _M_extract_via_format): Tighten somewhat error checking.
1500         * testsuite/22_locale/time_get/get_time/char/6.cc: New.
1501         * testsuite/22_locale/time_get/get_time/wchar_t/6.cc: Likewise.
1503 2010-10-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
1505         PR libstdc++/45924
1506         * include/std/functional (_Bind_result::operator()): Do not expand
1507         template parameter pack in forward call.
1508         * testsuite/20_util/bind/45924.cc: New.
1510 2010-10-06  Paolo Carlini  <paolo.carlini@oracle.com>
1512         * include/std/functional (struct _Weak_result_type_impl): Add
1513         specializazions for cv-qualified function types, for variadic
1514         function types and pointers and references to function types,
1515         and for pointers to member function types.
1516         (struct _Reference_wrapper_base): Add specializations for
1517         cv-qualified unary and binary function types.
1518         * testsuite/20_util/reference_wrapper/result_type.cc: New.
1519         * testsuite/20_util/reference_wrapper/typedefs-2.cc: Likewise.
1521 2010-10-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1523         PR libstdc++/45863
1524         * scripts/extract_symvers: Restore revision 164879.
1525         Only use pvs on SunOS.
1527 2010-10-05  David Krauss  <potswa@mac.com>
1529         PR libstdc++/45841
1530         * include/bits/fstream.h (basic_filebuf::underflow): Overflow
1531         success does not preclude returning failure.
1532         (basic_filebuf::pbackfail): Likewise.
1533         (basic_filebuf::xsputn): Fix indentation problem.
1534         (basic_filebuf::xsgetn): Likewise. Also, add similar overflow
1535         call to enable optimized case from write mode.
1536         * testsuite/27_io/basic_filebuf/underflow/char/45841.cc: New.
1537         * testsuite/27_io/basic_filebuf/underflow/wchar_t/45841.cc: Likewise.
1539 2010-10-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
1541         * include/bits/locale_facets_nonio.h (time_get::get_time): Doc typo.
1542         (time_get::get_date): Likewise.
1544 2010-10-05  Paolo Carlini  <paolo.carlini@oracle.com>
1546         * include/std/type_traits (_GLIBCXX_HAS_NESTED_TYPE): Add.
1547         * include/std/functional (_Has_result_type_helper,
1548         _Has_result_type): Remove; use the above to define __has_result_type.
1549         * include/bits/stl_iterator_base_types.h: Use the above to define
1550         __has_iterator_category.
1551         * include/bits/allocator.h (__has_allocator_type): Use the above.
1552         * include/bits/cpp_type_traits.h (__has_iterator_category,
1553         __is_iterator): Remove.
1555 2010-10-05  Sebastian Huber  <sebastian.huber@embedded-brains.de>
1556             Jonathan Wakely  <jwakely.gcc@gmail.com>
1558         PR libstdc++/44647
1559         * libsupc++/Makefile.am (sources): Add bad_alloc.cc.
1560         * libsupc++/new_handler.cc (bad_alloc): Move to ...
1561         * libsupc++/bad_alloc.cc (bad_alloc): ... here, new file.
1562         * libsupc++/Makefile.in: Regenerate.
1564 2010-10-04  Paolo Carlini  <paolo.carlini@oracle.com>
1566         * include/std/functional (function<>::swap): Use std::swap.
1567         * include/tr1/functional (function<>::swap): Likewise.
1569 2010-10-04  Andreas Schwab  <schwab@redhat.com>
1571         * acinclude.m4 (GLIBCXX_ENABLE): Properly quote argument to
1572         AC_HELP_STRING.  Double quote expansion of _g_help.
1573         (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Double quote third argument of
1574         GLIBCXX_ENABLE.
1575         (GLIBCXX_ENABLE_CHEADERS): Likewise.
1576         (GLIBCXX_ENABLE_CLOCALE): Likewise.
1577         (GLIBCXX_ENABLE_ALLOCATOR): Likewise.
1578         (GLIBCXX_ENABLE_CSTDIO): Likewise.
1579         (GLIBCXX_ENABLE_SYMVERS): Likewise.
1580         * configure: Regenerate.
1582 2010-10-02  H.J. Lu  <hongjiu.lu@intel.com>
1584         PR libstdc++/45863
1585         * scripts/extract_symvers: Revert the pvs change.
1587 2010-10-01  Benjamin Kosnik  <bkoz@redhat.com>
1589         * scripts/extract_symvers: Add support for tracking TLS symbols.
1590         * testsuite/util/testsuite_abi.h (symbol::category): Add tls type.
1591         * testsuite/util/testsuite_abi.cc: Set symbol type to tls when
1592         appropriate, collect size info.
1594 2010-10-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1596         * scripts/extract_symvers: Use pvs if present.
1597         * config/abi/post/solaris2.8/baseline_symbols.txt: New file.
1598         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
1599         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
1600         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
1601         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
1602         * configure.host (i?86-*-solaris2*): Remove.
1603         (sparc*-*-solaris2*): Remove.
1604         (*-*-solaris2.[89]): Use solaris2.8 baseline.
1605         (*-*-solaris2.1[0-9]): Use solaris2.10 baseline.
1606         * testsuite/Makefile.am (new-abi-baseline): Add missing /.
1607         * testsuite/Makefile.in: Regenerate.
1609 2010-09-30  Michael Eager  <eager@eagercon.com>
1611         * config/cpu/microblaze/cpu_defines.h: New. Define
1612         _GLIBCXX_NO_VERBOSE_TERMINATE for MicroBlaze.
1614 2010-09-29  Paolo Carlini  <paolo.carlini@oracle.com>
1616         * include/Makefile.am: Add debug/forward_list.
1617         * include/Makefile.in: Regenerate.
1619         * testsuite/util/testsuite_container_traits.h (traits_base):
1620         Add has_erase_after and hash_insert_after typedefs.
1621         (traits<forward_list<>>): Adjust.
1622         * testsuite/util/exception/safety.h (erase_point, erase_range,
1623         insert_point): Deal correctly with forward_list.
1624         * include/Makefile.am: Add.
1626 2010-09-29  François Dumont  <francois.cppdevs@free.fr>
1628         * src/debug.cc: Add forward_list specific debug messages.
1629         * include/debug/forward_list: New.
1630         * include/debug/formatter.h: Add debug message ids and before begin
1631         iterator state.
1632         * include/debug/macros.h (__glibcxx_check_insert_after,
1633         __glibcxx_check_insert_range_after, __glibcxx_check_erase_after,
1634         __glibcxx_check_erase_range_after): Add.
1635         * include/debug/safe_iterator.h (_BeforeBeginHelper): Add.
1636         (_Safe_iterator<>::_M_before_dereferenceable,
1637         _Safe_iterator<>::_M_is_before_begin): Add.
1638         (_Safe_iterator<>::_M_dereferenceable, _Safe_iterator<>::_M_is_end,
1639         _Safe_iterator<>::_M_incrementable): Adjust.
1640         * include/std/forward_list: Include debug/forward when _GLIBCXX_DEBUG
1641         defined.
1642         * include/bits/forward_list.h, forward_list.tcc: Put in std::__norm
1643         when debug mode is active.
1644         * testsuite/23_containers/forward_list/capacity/1.cc: Fix to compile
1645         even in debug mode.
1646         * testsuite/23_containers/forward_list/debug/erase_after1.cc,
1647         erase_after2.cc, erase_after3.cc, erase_after4.cc, erase_after5.cc,
1648         insert_after1.cc,erase_after6.cc, erase_after7.cc, insert_after2.cc,
1649         erase_after8.cc, insert_after3.cc, erase_after9.cc: New
1651 2010-09-28  DJ Delorie  <dj@redhat.com>
1653         * libsupc++/hash_bytes.cc (_Hash_bytes): Replace "clength" with
1654         "len" for "unusual sizeof(size_t)" case.
1656 2010-09-28  Matt Austern  <austern@google.com>
1658         * testsuite/20_util/hash/chi2_quality.cc: New.
1659         * testsuite/20_util/hash/quality.cc: Likewise.
1661 2010-09-27  Paolo Carlini  <paolo.carlini@oracle.com>
1663         * include/bits/allocator.h (allocator_arg_t, allocator_arg,
1664         uses_allocator): Add.
1665         * testsuite/20_util/uses_allocator/value.cc: New.
1666         * testsuite/20_util/uses_allocator/requirements/typedefs.cc: Likewise.
1667         * testsuite/20_util/uses_allocator/requirements/
1668         explicit_instantiation.cc: Likewise.
1669         * include/bits/stl_queue.h (uses_allocator<queue>,
1670         uses_allocator<priority_queue>): Add.
1671         * include/bits/stl_stack.h (uses_allocator<stack>): Likewise.
1673         * include/bits/stl_pair.h (piecewise_construct): Add.
1674         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
1675         line number.
1677 2010-09-27  Paolo Carlini  <paolo.carlini@oracle.com>
1679         * include/c_std/cmath (__pow_helper): Remove.
1680         (__cmath_power): Remove declaration.
1681         * include/c_global/cmath: Likewise.
1682         * include/std/complex (__complex_pow_unsigned): Add.
1683         (pow(const complex<_Tp>&, int)): Use the latter.
1684         * include/c_std/cmath.tcc: Remove file.
1685         * include/c_global/cmath.tcc: Likewise.
1686         * acinclude.m4: Adjust.
1687         * include/Makefile.am: Likewise.
1688         * configure: Regenerate.
1689         * include/Makefile.in: Likewise.
1691 2010-09-22  David Krauss  <potswa@mac.com>
1693         PR libstdc++/45628
1694         * include/bits/fstream.tcc (basic_filebuf::underflow): Add state
1695         transition to avoid modality requiring seekoff(0,ios::cur).
1696         (basic_filebuf::pbackfail): Likewise.
1697         (basic_filebuf::overflow): Likewise.
1698         (basic_filebuf::_M_seek): Avoid minor unnecessary conversion.
1699         (basic_filebuf::seekoff): Remove code to _M_get_ext_pos; make
1700         (0, ios::cur) a special case preserving buffer contents.
1701         (basic_filebuf::_M_get_ext_pos): New function to obtain status
1702         about codecvt extern_t buffer for overflow and seekoff.
1703         * include/std/fstream (basic_filebuf::_M_get_ext_pos): Likewise.
1704         * config/abi/pre/gnu.ver: Export new symbols.
1705         * testsuite/27_io/basic_filebuf/seekoff/char/45628-1.cc: New,
1706         verifies that seekoff(0, ios::cur) preserves buffers.
1707         * testsuite/27_io/basic_filebuf/seekoff/45628-2.cc: Likewise.
1708         for codecvt case. More lenient as it may still flush put area.
1709         * testsuite/27_io/basic_filebuf/seekoff/char/4.cc: Modify to
1710         check that seekoff is not required between read and write.
1711         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/4.cc: Likewise.
1712         * testsuite/27_io/basic_filebuf/sync/wchar_t/1.cc: Remove.
1713         * testsuite/27_io/basic_filebuf/sync/wchar_t/1.cc: Likewise.
1714         * testsuite/util/testsuite_character.h (codecvt::do_length): Comply
1715         with 22.2.1.5.2/10 "Returns ... the LARGEST value in the range..."
1717 2010-09-22  Paolo Carlini  <paolo.carlini@oracle.com>
1719         * include/bits/functional_hash.h (__hash_base): Add.
1720         (hash): Derive from __hash_base instead.
1721         * include/debug/bitset (hash): Likewise.
1722         * include/debug/vector (hash): Likewise.
1723         * include/std/system_error (hash): Likewise.
1724         * include/std/thread (hash): Likewise.
1725         * include/std/bitset (hash): Likewise.
1726         * include/profile/bitset (hash): Likewise.
1727         * include/profile/vector (hash): Likewise.
1728         * include/bits/basic_string.h (hash): Likewise.
1729         * include/bits/stl_bvector.h (hash): Likewise.
1730         * include/std/typeindex (hash): Do not derive from unary_function,
1731         add result_type and argument_type typedefs; trim includes.
1733 2010-09-22  Paolo Carlini  <paolo.carlini@oracle.com>
1735         * include/std/typeindex: New.
1736         * include/Makefile.am: Add.
1737         * include/Makefile.in: Regenerate.
1738         * include/precompiled/stdc++.h: Add.
1739         * testsuite/20_util/typeindex/comparison_operators.cc: New.
1740         * testsuite/20_util/typeindex/hash.cc: Likewise.
1741         * testsuite/20_util/typeindex/hash_code.cc: Likewise.
1742         * testsuite/20_util/typeindex/name.cc: Likewise.
1744         * testsuite/18_support/type_info/hash_code.cc: Tweak.
1746 2010-09-22  Paolo Carlini  <paolo.carlini@oracle.com>
1748         * src/hash_bytes.cc: Move...
1749         * libsupc++/hash_bytes.cc: ... here.
1750         * src/Makefile.am: Adjust.
1751         * libsupc++/Makefile.am: Likewise.
1752         * config/abi/pre/gnu.ver: Likewise.
1753         * libsupc++/typeinfo (type_info::hash_code): Add in C++0x mode.
1754         * src/Makefile.in: Regenerate.
1755         * libsupc++/Makefile.am: Likewise.
1756         * testsuite/18_support/type_info/hash_code.cc: New.
1758 2010-09-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1760         PR libstdc++/45711
1761         * src/Makefile.am (stamp-debug): Also adjust possibly-relative
1762         file names in MKDIR_P, and, for consistency, also top_build_prefix.
1763         * src/Makefile.in: Regenerate.
1765 2010-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1767         * include/ext/throw_allocator.h
1768         (hash<__gnu_cxx::throw_value_limit>::operator()): Uglify local.
1769         (hash<__gnu_cxx::throw_value_random>::operator()): Likewise.
1770         * include/parallel/set_operations.h (__symmetric_difference_func):
1771         Uglify remaining arguments to __count, __first_empty, _M_invoke.
1772         (__difference_func): Likewise for __count.
1773         * include/profile/impl/profiler_node.h
1774         (__object_info_base::__write): Uglify parameter.
1776 2010-09-19  Paolo Carlini  <paolo.carlini@oracle.com>
1778         * src/hash_bytes.cc: Compile load_bytes and shift_mix only when
1779         __SIZEOF_SIZE_T__ == 8.
1781 2010-09-17  Luc Hermitte  <hermitte@free.fr>
1782             Paolo Carlini  <paolo.carlini@oracle.com>
1784         PR libstdc++/45713
1785         * include/std/bitset: Fix _GLIBCXX_BITSET_WORDS macro.
1786         * testsuite/23_containers/bitset/45713.cc: New.
1788 2010-09-16  Paolo Carlini  <paolo.carlini@oracle.com>
1790         * include/bits/stl_raw_storage_iter.h (raw_storage_iterator<>::
1791         operator=(const _Tp&)): Use std::__addressof.
1793 2010-09-16  Paolo Carlini  <paolo.carlini@oracle.com>
1795         * include/std/system_error (system_error::system_error(error_code),
1796         system_error(error_code, const string&), system_error(int, const
1797         error_category&), system_error(int, const error_category&,
1798         const string&)): Fix for what() to return the NBTS recommended in
1799         the Note in 19.5.6.2/14.
1800         * testsuite/19_diagnostics/system_error/cons-1.cc: Adjust.
1801         * testsuite/19_diagnostics/system_error/what-1.cc: Likewise.
1802         * testsuite/19_diagnostics/system_error/what-2.cc: Likewise.
1803         * testsuite/19_diagnostics/system_error/what-big.cc: Likewise.
1804         * testsuite/19_diagnostics/system_error/what-3.cc: Likewise.
1806         * testsuite/19_diagnostics/system_error/what-4.cc: Tidy includes.
1808 2010-09-16  Paolo Carlini  <paolo.carlini@oracle.com>
1810         * include/std/complex (complex<float>::operator=(float),
1811         complex<float>::operator+=(float),
1812         complex<float>::operator-=(float),
1813         complex<double>::operator=(double),
1814         complex<double>::operator+=(double),
1815         complex<double>::operator-=(double),
1816         complex<long double>::operator=(long double),
1817         complex<long double>::operator+=(long double),
1818         complex<long double>::operator-=(long double)): Simplify a tad,
1819         just forward to the underlying __complex__ T operators, as
1820         operator*= and operator/= already do.
1822         * include/std/complex (complex<float>, complex<double>,
1823         complex<long double>): Simplify spelling of return types, just
1824         say complex, instead of complex<float>, complex<double>,
1825         complex<long double>, respectively.
1827 2010-09-15  François Dumont  <francois.cppdevs@free.fr>
1829         * testsuite/lib/libstdc++.exp,([check_v3_target_namedlocale]):
1830         Clean temporary source file once compiled.
1832 2010-09-15  Paolo Carlini  <paolo.carlini@oracle.com>
1834         * doc/xml/manual/prerequisites.xml: Update "C" library locale
1835         information prerequisites.
1837 2010-09-15  François Dumont  <francois.cppdevs@free.fr>
1839         * testsuite/lib/libstdc++.exp, dg-options.exp
1840         ([check_v3_target_namedlocale]): Take the name of the required locale.
1841         * testsuite/27_io/objects/wchar_t/9520.cc, 11.cc, 13.cc, 10.cc, 12.cc:
1842         Specify locale name to check.
1843         * testsuite/27_io/basic_streambuf/imbue/wchar_t/9322.cc, 13007-1.cc,
1844         13007-2.cc: Likewise.
1845         * testsuite/27_io/basic_streambuf/imbue/char/9322.cc, 13007-1.cc,
1846         13007-2.cc: Likewise.
1847         * testsuite/27_io/basic_ios/copyfmt/char/2.cc: Likewise.
1848         * testsuite/27_io/basic_stringbuf/imbue/wchar_t/9322.cc: Likewise.
1849         * testsuite/27_io/basic_stringbuf/imbue/char/9322.cc: Likewise.
1850         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/2.cc:
1851         Likewise.
1852         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc:
1853         Likewise.
1854         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/1.cc, 2.cc:
1855         Likewise.
1856         * testsuite/27_io/basic_filebuf/imbue/wchar_t/13171-3.cc, 9322.cc,
1857         13582-2.cc, 2.cc, 13582-3.cc, 12868.cc, 14975-2.cc, 13007.cc: Likewise.
1858         * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc, 13171-4.cc,
1859         9322.cc, 13582-2.cc, 2.cc, 14975-1.cc, 13007.cc, 13171-1.cc: Likewise.
1860         * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1.cc,
1861         11305-2.cc, 11305-3.cc, 11305-4.cc: Likewise.
1862         * testsuite/27_io/basic_filebuf/underflow/wchar_t/9520.cc, 1.cc, 2.cc,
1863         3.cc, 11389-1.cc, 4.cc, 11389-2.cc, 5.cc, 11389-3.cc, 11389-4.cc:
1864         Likewise.
1865         * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: Likewise.
1866         * testsuite/27_io/manipulators/extended/put_money/wchar_t/1.cc:
1867         Likewise.
1868         * testsuite/27_io/manipulators/extended/put_money/char/1.cc: Likewise.
1869         * testsuite/27_io/manipulators/extended/get_money/wchar_t/1.cc:
1870         Likewise.
1871         * testsuite/27_io/manipulators/extended/get_money/char/1.cc: Likewise.
1872         * testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Likewise.
1873         * testsuite/22_locale/money_put/put/wchar_t/1.cc, 2.cc, 3.cc,
1874         wrapped_locale.cc, wrapped_env.cc: Likewise.
1875         * testsuite/22_locale/money_put/put/char/1.cc, 2.cc, 3.cc, 9780-3.cc,
1876         wrapped_locale.cc, wrapped_env.cc: Likewise.
1877         * testsuite/22_locale/facet/2.cc: Likewise.
1878         * testsuite/22_locale/collate/hash/wchar_t/2.cc, wrapped_locale.cc,
1879         wrapped_env.cc: Likewise.
1880         * testsuite/22_locale/collate/hash/char/2.cc, wrapped_locale.cc,
1881         wrapped_env.cc: Likewise.
1882         * testsuite/22_locale/collate/compare/wchar_t/1.cc, 2.cc, 3.cc,
1883         wrapped_locale.cc, wrapped_env.cc: Likewise.
1884         * testsuite/22_locale/collate/compare/char/1.cc, 2.cc, 3.cc,
1885         wrapped_locale.cc, wrapped_env.cc: Likewise.
1886         * testsuite/22_locale/collate/transform/wchar_t/2.cc, 3.cc,
1887         wrapped_locale.cc, wrapped_env.cc: Likewise.
1888         * testsuite/22_locale/collate/transform/char/2.cc, 3.cc,
1889         wrapped_locale.cc, wrapped_env.cc: Likewise.
1890         * testsuite/22_locale/ctype/cons/char/wrapped_locale.cc,
1891         wrapped_env.cc: Likewise.
1892         * testsuite/22_locale/ctype/to/wchar_t/wrapped_locale.cc,
1893         wrapped_env.cc: Likewise.
1894         * testsuite/22_locale/ctype/to/char/wrapped_locale.cc, wrapped_env.cc:
1895         Likewise.
1896         * testsuite/22_locale/ctype/scan/wchar_t/wrapped_locale.cc,
1897         wrapped_env.cc: Likewise.
1898         * testsuite/22_locale/ctype/scan/char/wrapped_locale.cc,
1899         wrapped_env.cc: Likewise.
1900         * testsuite/22_locale/ctype/widen/wchar_t/2.cc, 3.cc,
1901         wrapped_locale.cc, wrapped_env.cc: Likewise.
1902         * testsuite/22_locale/ctype/widen/char/wrapped_locale.cc,
1903         wrapped_env.cc: Likewise.
1904         * testsuite/22_locale/ctype/narrow/wchar_t/3.cc, wrapped_locale.cc,
1905         wrapped_env.cc: Likewise.
1906         * testsuite/22_locale/ctype/narrow/char/wrapped_locale.cc,
1907         wrapped_env.cc: Likewise.
1908         * testsuite/22_locale/ctype/is/wchar_t/2.cc,wrapped_locale.cc,
1909         wrapped_env.cc: Likewise
1910         * testsuite/22_locale/ctype/is/char/2.cc, wrapped_locale.cc,
1911         wrapped_env.cc: Likewise.
1912         * testsuite/22_locale/time_put/put/wchar_t/2.cc, 3.cc, 4.cc, 6.cc,
1913         7.cc, 8.cc, wrapped_env.cc, wrapped_locale.cc, 17038.cc: Likewise.
1914         * testsuite/22_locale/time_put/put/char/2.cc, 3.cc, 4.cc, 6.cc,
1915         9780-1.cc, 7.cc, 8.cc, wrapped_env.cc, wrapped_locale.cc, 17038.cc:
1916         Likewise.
1917         * testsuite/22_locale/money_get/get/wchar_t/1.cc, 2.cc, 3.cc, 4.cc,
1918         wrapped_env.cc, 10.cc, 11528.cc, wrapped_locale.cc, 11.cc, 12.cc,
1919         13.cc, 15.cc, 16.cc, 17.cc, 18.cc: Likewise.
1920         * testsuite/22_locale/money_get/get/char/1.cc, 2.cc, 3.cc, 4.cc,
1921         wrapped_env.cc, 10.cc, 11528.cc, wrapped_locale.cc, 11.cc, 12.cc,
1922         13.cc, 15.cc, 16.cc, 17.cc, 18.cc: Likewise
1923         * testsuite/22_locale/num_put/put/wchar_t/1.cc, 3.cc, 5.cc,
1924         wrapped_env.cc, 20914.cc, wrapped_locale.cc, 20909.cc: Likewise.
1925         * testsuite/22_locale/num_put/put/char/1.cc, 3.cc, 5.cc, 9780-2.cc,
1926         wrapped_env.cc, 20914.cc, wrapped_locale.cc, 20909.cc: Likewise.
1927         * testsuite/22_locale/codecvt/unshift/wchar_t/2.cc, wrapped_locale.cc,
1928         3.cc, 4.cc, wrapped_env.cc: Likewise.
1929         * testsuite/22_locale/codecvt/unshift/char/wrapped_locale.cc,
1930         wrapped_env.cc: Likewise.
1931         testsuite/22_locale/codecvt/length/wchar_t/2.cc, wrapped_locale.cc,
1932         3.cc, 4.cc, 7.cc, wrapped_env.cc: Likewise.
1933         * testsuite/22_locale/codecvt/length/char/wrapped_locale.cc,
1934         wrapped_env.cc: Likewise.
1935         * testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc,
1936         wrapped_locale.cc, 3.cc, 4.cc, wrapped_env.cc: Likewise.
1937         * testsuite/22_locale/codecvt/always_noconv/char/wrapped_locale.cc,
1938         wrapped_env.cc: Likewise.
1939         * testsuite/22_locale/codecvt/encoding/wchar_t/2.cc, wrapped_locale.cc,
1940         3.cc, 4.cc, wrapped_env.cc: Likewise.
1941         * testsuite/22_locale/codecvt/encoding/char/wrapped_locale.cc,
1942         wrapped_env.cc: Likewise.
1943         * testsuite/22_locale/codecvt/in/wchar_t/2.cc, wrapped_locale.cc, 3.cc,
1944         4.cc, 7.cc, 8.cc, 9.cc, wrapped_env.cc: Likewise.
1945         * testsuite/22_locale/codecvt/in/char/wrapped_locale.cc,
1946         wrapped_env.cc: Likewise.
1947         * testsuite/22_locale/codecvt/max_length/wchar_t/2.cc,
1948         wrapped_locale.cc, 3.cc, 4.cc, wrapped_env.cc: Likewise.
1949         * testsuite/22_locale/codecvt/max_length/char/wrapped_locale.cc,
1950         wrapped_env.cc: Likewise.
1951         * testsuite/22_locale/codecvt/out/wchar_t/2.cc, wrapped_locale.cc,
1952         3.cc, 4.cc, 7.cc, wrapped_env.cc: Likewise.
1953         * testsuite/22_locale/codecvt/out/char/wrapped_locale.cc,
1954         wrapped_env.cc: Likewise.
1955         * testsuite/22_locale/moneypunct_byname/named_equivalence.cc: Likewise.
1956         * testsuite/22_locale/time_get/get_year/wchar_t/wrapped_locale.cc,
1957         wrapped_env.cc: Likewise.
1958         * testsuite/22_locale/time_get/get_year/char/wrapped_locale.cc,
1959         wrapped_env.cc: Likewise.
1960         * testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc,
1961         wrapped_locale.cc, wrapped_env.cc: Likewise.
1962         * testsuite/22_locale/time_get/get_monthname/char/2.cc,
1963         wrapped_locale.cc, wrapped_env.cc: Likewise.
1964         * testsuite/22_locale/time_get/date_order/wchar_t/wrapped_locale.cc,
1965         wrapped_env.cc: Likewise.
1966         * testsuite/22_locale/time_get/date_order/char/wrapped_locale.cc,
1967         wrapped_env.cc: Likewise.
1968         * testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc,
1969         wrapped_locale.cc, wrapped_env.cc: Likewise.
1970         * testsuite/22_locale/time_get/get_weekday/char/2.cc, 38081-1.cc,
1971         wrapped_locale.cc, 38081-2.cc, wrapped_env.cc: Likewise.
1972         * testsuite/22_locale/time_get/get_date/wchar_t/12750.cc, 26701.cc,
1973         2.cc, wrapped_locale.cc, 4.cc, wrapped_env.cc: Likewise.
1974         * testsuite/22_locale/time_get/get_date/char/12750.cc, 26701.cc,
1975         2.cc, wrapped_locale.cc, wrapped_env.cc: Likewise.
1976         * testsuite/22_locale/time_get/get_time/wchar_t/1.cc, 2.cc,
1977         wrapped_locale.cc, wrapped_env.cc: Likewise.
1978         * testsuite/22_locale/time_get/get_time/char/1.cc, 2.cc,
1979         wrapped_locale.cc, wrapped_env.cc: Likewise.
1980         * testsuite/22_locale/num_get/get/wchar_t/1.cc, 3.cc, 5.cc, 6.cc, 9.cc,
1981         wrapped_env.cc, wrapped_locale.cc: Likewise.
1982         * testsuite/22_locale/num_get/get/char/1.cc, 3.cc, 5.cc, 6.cc, 9.cc,
1983         wrapped_env.cc, wrapped_locale.cc: Likewise.
1984         * testsuite/22_locale/locale/cons/38368.cc, 2.cc, 4.cc, 5.cc, 7.cc,
1985         12658_thread-1.cc, 12658_thread-2.cc, 40184.cc, 29217.cc, 38365.cc:
1986         Likewise.
1987         * testsuite/22_locale/locale/global_locale_objects/14071.cc, 2.cc:
1988         Likewise.
1989         * testsuite/22_locale/moneypunct/40712.cc: Likewise.
1990         * testsuite/22_locale/moneypunct/members/wchar_t/2.cc,
1991         wrapped_locale.cc, wrapped_env.cc: Likewise.
1992         * testsuite/22_locale/moneypunct/members/char/2.cc, wrapped_locale.cc,
1993         wrapped_env.cc: Likewise.
1994         * testsuite/22_locale/messages_byname/named_equivalence.cc: Likewise.
1995         * testsuite/22_locale/numpunct_byname/named_equivalence.cc: Likewise.
1996         * testsuite/22_locale/messages/members/char/1.cc, 2.cc,
1997         wrapped_locale.cc, 3.cc, wrapped_env.cc: Likewise.
1998         * testsuite/22_locale/numpunct/members/wchar_t/2.cc, wrapped_locale.cc,
1999         wrapped_env.cc: Likewise.
2000         * testsuite/22_locale/numpunct/members/char/2.cc, wrapped_locale.cc,
2001         3.cc, wrapped_env.cc: Likewise.
2002         * testsuite/22_locale/collate_byname/named_equivalence.cc: Likewise.
2004 2010-09-14  Matt Austern  <austern@google.com>
2005             Paolo Carlini  <paolo.carlini@oracle.com>
2007         * testsuite/performance/21_strings/hash.cc: New.
2009 2010-09-14  Paolo Carlini  <paolo.carlini@oracle.com>
2011         * testsuite/performance/21_strings/string_append.cc: Rename to...
2012         * testsuite/performance/21_strings/append-1.cc: ... this.
2013         * testsuite/performance/21_strings/string_append_2.cc: Rename to...
2014         * testsuite/performance/21_strings/append-2.cc: ... this.
2015         * testsuite/performance/21_strings/string_cons_input_iterator.cc:
2016         Rename to...
2017         * testsuite/performance/21_strings/cons_input_iterator.cc: ... this.
2018         * testsuite/performance/21_strings/string_copy_cons_and_dest.cc:
2019         Rename to...
2020         * testsuite/performance/21_strings/copy_cons_and_dest.cc: ... this.
2021         * testsuite/performance/21_strings/string_find.cc: Rename to...
2022         * testsuite/performance/21_strings/find.cc: ... this.
2024 2010-09-13  Benjamin Kosnik  <bkoz@redhat.com>
2026         * doc/xml/api.xml: Add title.
2027         * doc/xml/manual/spine.xml: Same.
2028         * doc/xml/spine.xml: Same.
2030 2010-09-13  Matt Austern  <austern@google.com>
2032         * src/hash_bytes.cc: New file, exports _Hash_bytes (a Murmur hash),
2033         and _Fnv_hash_bytes (based on a FNV algorithm).
2034         * src/compatibility-c++0x.cc (hash<string>::operator(),
2035         hash<const string&>::operator(), hash<wstring>::operator(),
2036         hash<const wstring&>::operator(), hash<error_code>::operator()):
2037         Adjust, use _Hash_bytes.
2038         * include/std/system_error (hash<error_code>::operator()): Likewise.
2039         * include/std/thread (hash<thread::id>operator()): Likewise.
2040         * include/std/bitset (hash<bitset>operator()): Likewise.
2041         * include/bits/basic_string.h (hash<string>::operator(),
2042         hash<wstring>::operator(), hash<u16string>::operator(),
2043         hash<u32string>::operator()): Adjust.
2044         * include/bits/vector.tcc (hash<vector<bool>>::operator()): Adjust.
2045         * include/bits/functional_hash.h (_Hash_bytes, _Fnv_hash_bytes):
2046         Declare.
2047         (struct _Hash_impl, struct _Fnv_hash_impl): Add, use _Hash_bytes
2048         and _Fnv_hash_bytes, respectively.
2049         (hash<float>::operator(), hash<double>::operator()): Adjust.
2050         * config/abi/pre/gnu.ver: Add exports.
2051         * src/Makefile.am: Add.
2052         * src/Makefile.in: Regenerate.
2054 2010-09-13  Paolo Carlini  <paolo.carlini@oracle.com>
2056         * include/bits/forward_list.h (forward_list<>::resize(size_type,
2057         value_type)): Fix signature, per LWG 1340.
2058         * include/bits/forward_list.tcc: Adjust definition.
2060 2010-09-13  Paolo Carlini  <paolo.carlini@oracle.com>
2062         * testsuite/27_io/basic_filebuf/seekoff/char/4.cc: New.
2063         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/4.cc: Likewise.
2065 2010-09-10  Paolo Carlini  <paolo.carlini@oracle.com>
2067         * src/hash-string-aux.cc: Remove. Move contents...
2068         * src/hash_tr1.cc: ... here.
2069         * src/compatibility-c++0x.cc: ... and here.
2071 2010-09-09  Paolo Carlini  <paolo.carlini@oracle.com>
2073         PR libstdc++/45613
2074         * include/bits/random.tcc: Add missing include guards.
2075         * include/bits/random.h: Likewise.
2076         * include/tr1/random.tcc: Likewise.
2078 2010-09-09  Paolo Carlini  <paolo.carlini@oracle.com>
2080         * libsupc++/cxxabi.h: Uglify nothrow to __nothrow__; fix a few
2081         inconsistent uglifications everywhere.
2083 2010-09-07  Paolo Carlini  <paolo.carlini@oracle.com>
2084             Marc Glisse  <marc.glisse@normalesup.org>
2086         PR libstdc++/45549
2087         * include/bits/cpp_type_traits.h (__is_iterator_helper): Rename to
2088         __has_iterator_category.
2089         (__is_iterator): Adjust.
2090         * include/bits/stl_iterator_base_types.h (__iterator_traits): Add
2091         in C++0x mode, use the latter.
2092         (iterator_traits): In C++0x mode, derive from the latter.
2093         * include/bits/stl_iterator_base_funcs.h (next, prev): Remove
2094         enable_if on the return type.
2096 2010-09-07  Paolo Carlini  <paolo.carlini@oracle.com>
2098         PR libstdc++/45398
2099         * include/std/atomic (atomic<_TP*>::store): Define.
2101         * include/std/atomic (atomic<_TP*>::load, exchange): Define inline.
2103 2010-09-06  Jason Merrill  <jason@redhat.com>
2105         * testsuite/libstdc++-abi/abi.exp: Add "libstdc++-abi/" to
2106         abi_check FAIL message.
2108 2010-09-03  Paolo Carlini  <paolo.carlini@oracle.com>
2110         PR libstdc++/45347
2111         * include/ext/concurrence.h: Add #pragma GCC system_header.
2113 2010-09-03  François Dumont <francois.cppdevs@free.fr>
2115         * testsuite/lib/libstdc++.exp ([check_v3_target_debug_mode]): Fix so
2116         that it really detects when debug mode is activated.
2117         * testsuite/util/debug/construct_neg.h, insert_neg.h, assign_neg.h:
2118         Remove, content moved...
2119         * testsuite/util/debug/checks.h: ... here. Modify checks to take the
2120         type of the container to test rather than an intermediate container
2121         type traits helper.
2122         * testsuite/23_containers/unordered_map/debug/insert1_neg.cc: Update to
2123         use dg-require-debug-mode when necessary and use new check functions.
2124         * testsuite/23_containers/unordered_map/debug/construct1_neg.cc:
2125         Likewise.
2126         * testsuite/23_containers/unordered_map/debug/construct2_neg.cc:
2127         Likewise.
2128         * testsuite/23_containers/unordered_map/debug/insert2_neg.cc: Likewise.
2129         * testsuite/23_containers/unordered_map/debug/construct3_neg.cc:
2130         Likewise.
2131         * testsuite/23_containers/unordered_map/debug/insert3_neg.cc: Likewise.
2132         * testsuite/23_containers/unordered_map/debug/construct4_neg.cc:
2133         Likewise.
2134         * testsuite/23_containers/unordered_map/debug/insert4_neg.cc: Likewise.
2135         * testsuite/23_containers/multimap/debug/insert1_neg.cc: Likewise.
2136         * testsuite/23_containers/multimap/debug/construct1_neg.cc: Likewise.
2137         * testsuite/23_containers/multimap/debug/construct2_neg.cc: Likewise.
2138         * testsuite/23_containers/multimap/debug/insert2_neg.cc: Likewise.
2139         * testsuite/23_containers/multimap/debug/construct3_neg.cc: Likewise.
2140         * testsuite/23_containers/multimap/debug/insert3_neg.cc: Likewise.
2141         * testsuite/23_containers/multimap/debug/construct4_neg.cc: Likewise.
2142         * testsuite/23_containers/multimap/debug/insert4_neg.cc: Likewise.
2143         * testsuite/23_containers/set/debug/insert1_neg.cc: Likewise.
2144         * testsuite/23_containers/set/debug/construct1_neg.cc: Likewise.
2145         * testsuite/23_containers/set/debug/construct2_neg.cc: Likewise.
2146         * testsuite/23_containers/set/debug/insert2_neg.cc: Likewise.
2147         * testsuite/23_containers/set/debug/construct3_neg.cc: Likewise.
2148         * testsuite/23_containers/set/debug/insert3_neg.cc: Likewise.
2149         * testsuite/23_containers/set/debug/construct4_neg.cc: Likewise.
2150         * testsuite/23_containers/set/debug/insert4_neg.cc: Likewise.
2151         * testsuite/23_containers/unordered_multimap/debug/insert1_neg.cc:
2152         Likewise.
2153         * testsuite/23_containers/unordered_multimap/debug/construct1_neg.cc:
2154         Likewise.
2155         * testsuite/23_containers/unordered_multimap/debug/construct2_neg.cc:
2156         Likewise.
2157         * testsuite/23_containers/unordered_multimap/debug/insert2_neg.cc:
2158         Likewise.
2159         * testsuite/23_containers/unordered_multimap/debug/construct3_neg.cc:
2160         Likewise.
2161         * testsuite/23_containers/unordered_multimap/debug/insert3_neg.cc:
2162         Likewise.
2163         * testsuite/23_containers/unordered_multimap/debug/construct4_neg.cc:
2164         Likewise.
2165         * testsuite/23_containers/unordered_multimap/debug/insert4_neg.cc:
2166         Likewise.
2167         * testsuite/23_containers/vector/debug/assign1_neg.cc: Likewise.
2168         * testsuite/23_containers/vector/debug/construct1_neg.cc: Likewise.
2169         * testsuite/23_containers/vector/debug/construct2_neg.cc: Likewise.
2170         * testsuite/23_containers/vector/debug/assign2_neg.cc: Likewise.
2171         * testsuite/23_containers/vector/debug/construct3_neg.cc: Likewise.
2172         * testsuite/23_containers/vector/debug/assign3_neg.cc: Likewise.
2173         * testsuite/23_containers/vector/debug/construct4_neg.cc: Likewise.
2174         * testsuite/23_containers/vector/debug/assign4_neg.cc: Likewise.
2175         * testsuite/23_containers/vector/debug/insert1_neg.cc: Likewise.
2176         * testsuite/23_containers/vector/debug/insert2_neg.cc: Likewise.
2177         * testsuite/23_containers/vector/debug/insert3_neg.cc: Likewise.
2178         * testsuite/23_containers/vector/debug/insert4_neg.cc: Likewise.
2179         * testsuite/23_containers/unordered_set/debug/insert1_neg.cc: Likewise.
2180         * testsuite/23_containers/unordered_set/debug/construct1_neg.cc:
2181         Likewise.
2182         * testsuite/23_containers/unordered_set/debug/construct2_neg.cc:
2183         Likewise.
2184         * testsuite/23_containers/unordered_set/debug/insert2_neg.cc: Likewise.
2185         * testsuite/23_containers/unordered_set/debug/construct3_neg.cc:
2186         Likewise.
2187         * testsuite/23_containers/unordered_set/debug/insert3_neg.cc: Likewise.
2188         * testsuite/23_containers/unordered_set/debug/construct4_neg.cc:
2189         Likewise.
2190         * testsuite/23_containers/unordered_set/debug/insert4_neg.cc: Likewise.
2191         * testsuite/23_containers/deque/debug/assign1_neg.cc: Likewise.
2192         * testsuite/23_containers/deque/debug/construct1_neg.cc: Likewise.
2193         * testsuite/23_containers/deque/debug/construct2_neg.cc: Likewise.
2194         * testsuite/23_containers/deque/debug/assign2_neg.cc: Likewise.
2195         * testsuite/23_containers/deque/debug/construct3_neg.cc: Likewise.
2196         * testsuite/23_containers/deque/debug/assign3_neg.cc: Likewise.
2197         * testsuite/23_containers/deque/debug/construct4_neg.cc: Likewise.
2198         * testsuite/23_containers/deque/debug/assign4_neg.cc: Likewise.
2199         * testsuite/23_containers/deque/debug/insert1_neg.cc: Likewise.
2200         * testsuite/23_containers/deque/debug/insert2_neg.cc: Likewise.
2201         * testsuite/23_containers/deque/debug/insert3_neg.cc: Likewise.
2202         * testsuite/23_containers/deque/debug/insert4_neg.cc: Likewise.
2203         * testsuite/23_containers/multiset/debug/insert1_neg.cc: Likewise.
2204         * testsuite/23_containers/multiset/debug/construct1_neg.cc: Likewise.
2205         * testsuite/23_containers/multiset/debug/construct2_neg.cc: Likewise.
2206         * testsuite/23_containers/multiset/debug/insert2_neg.cc: Likewise.
2207         * testsuite/23_containers/multiset/debug/construct3_neg.cc: Likewise.
2208         * testsuite/23_containers/multiset/debug/insert3_neg.cc: Likewise.
2209         * testsuite/23_containers/multiset/debug/construct4_neg.cc: Likewise.
2210         * testsuite/23_containers/multiset/debug/insert4_neg.cc: Likewise.
2211         * testsuite/23_containers/list/debug/assign1_neg.cc: Likewise.
2212         * testsuite/23_containers/list/debug/construct1_neg.cc: Likewise.
2213         * testsuite/23_containers/list/debug/construct2_neg.cc: Likewise.
2214         * testsuite/23_containers/list/debug/assign2_neg.cc: Likewise.
2215         * testsuite/23_containers/list/debug/construct3_neg.cc: Likewise.
2216         * testsuite/23_containers/list/debug/assign3_neg.cc: Likewise.
2217         * testsuite/23_containers/list/debug/construct4_neg.cc: Likewise.
2218         * testsuite/23_containers/list/debug/assign4_neg.cc: Likewise.
2219         * testsuite/23_containers/list/debug/insert1_neg.cc: Likewise.
2220         * testsuite/23_containers/list/debug/insert2_neg.cc: Likewise.
2221         * testsuite/23_containers/list/debug/insert3_neg.cc: Likewise.
2222         * testsuite/23_containers/list/debug/insert4_neg.cc: Likewise.
2223         * testsuite/23_containers/unordered_multiset/debug/insert1_neg.cc:
2224         Likewise.
2225         * testsuite/23_containers/unordered_multiset/debug/construct1_neg.cc:
2226         Likewise.
2227         * testsuite/23_containers/unordered_multiset/debug/construct2_neg.cc:
2228         Likewise.
2229         * testsuite/23_containers/unordered_multiset/debug/insert2_neg.cc:
2230         Likewise.
2231         * testsuite/23_containers/unordered_multiset/debug/construct3_neg.cc:
2232         Likewise.
2233         * testsuite/23_containers/unordered_multiset/debug/insert3_neg.cc:
2234         Likewise.
2235         * testsuite/23_containers/unordered_multiset/debug/construct4_neg.cc:
2236         Likewise.
2237         * testsuite/23_containers/unordered_multiset/debug/insert4_neg.cc:
2238         Likewise.
2239         * testsuite/23_containers/map/debug/insert1_neg.cc: Likewise.
2240         * testsuite/23_containers/map/debug/construct1_neg.cc: Likewise.
2241         * testsuite/23_containers/map/debug/construct2_neg.cc: Likewise.
2242         * testsuite/23_containers/map/debug/insert2_neg.cc: Likewise.
2243         * testsuite/23_containers/map/debug/construct3_neg.cc: Likewise.
2244         * testsuite/23_containers/map/debug/insert3_neg.cc: Likewise.
2245         * testsuite/23_containers/map/debug/construct4_neg.cc: Likewise.
2246         * testsuite/23_containers/map/debug/insert4_neg.cc: Likewise.
2248         * testsuite/23_containers/unordered_map/debug/cont_traits.h: Remove.
2249         * testsuite/23_containers/unordered_map/debug/debug_cont_traits.h:
2250         Likewise.
2251         * testsuite/23_containers/multimap/debug/cont_traits.h: Likewise.
2252         * testsuite/23_containers/multimap/debug/debug_cont_traits.h: Likewise.
2253         * testsuite/23_containers/set/debug/cont_traits.h: Likewise.
2254         * testsuite/23_containers/set/debug/debug_cont_traits.h: Likewise.
2255         * testsuite/23_containers/unordered_multimap/debug/cont_traits.h:
2256         Likewise.
2257         * testsuite/23_containers/unordered_multimap/debug/
2258         debug_cont_traits.h: Likewise.
2259         * testsuite/23_containers/vector/debug/cont_traits.h: Likewise.
2260         * testsuite/23_containers/vector/debug/debug_cont_traits.h: Likewise.
2261         * testsuite/23_containers/unordered_set/debug/cont_traits.h: Likewise.
2262         * testsuite/23_containers/unordered_set/debug/debug_cont_traits.h:
2263         Likewise.
2264         * testsuite/23_containers/deque/debug/cont_traits.h: Likewise.
2265         * testsuite/23_containers/deque/debug/debug_cont_traits.h: Likewise.
2266         * testsuite/23_containers/multiset/debug/cont_traits.h: Likewise.
2267         * testsuite/23_containers/multiset/debug/debug_cont_traits.h: Likewise.
2268         * testsuite/23_containers/list/debug/cont_traits.h: Likewise.
2269         * testsuite/23_containers/list/debug/debug_cont_traits.h: Likewise.
2270         * testsuite/23_containers/unordered_multiset/debug/cont_traits.h:
2271         Likewise.
2272         * testsuite/23_containers/unordered_multiset/debug/
2273         debug_cont_traits.h: Likewise.
2274         * testsuite/23_containers/map/debug/cont_traits.h: Likewise.
2275         * testsuite/23_containers/map/debug/debug_cont_traits.h: Likewise.
2277         * testsuite/21_strings/basic_string/element_access/char: Tidy.
2278         * testsuite/21_strings/basic_string/element_access/wchar_t: Likewise.
2280 2010-09-02  Paolo Carlini  <paolo.carlini@oracle.com>
2282         PR libstdc++/40974
2283         * include/Makefile.am: Add -nostdinc++ to PCHFLAGS.
2284         * include/Makefile.in: Regenerate.
2286 2010-09-01  Christopher Yeleighton  <giecrilj@stegny.2a.pl>
2287             Paolo Carlini  <paolo.carlini@oracle.com>
2289         PR libstdc++/45488
2290         * include/bits/stl_algobase.h (lower_bound): Clean-up a tad, move
2291         two variables inside the main loop.
2292         * include/bits/stl_algo.h (lower_bound, upper_bound, equal_range):
2293         Likewise.
2295 2010-08-31  Paolo Carlini  <paolo.carlini@oracle.com>
2297         PR libstdc++/44480
2298         * include/bits/hashtable.h (_Hashtable<>::_M_begin_bucket_index):
2299         Add, caching the index of the first non-empty bucket.
2300         (begin, cbegin): Use it.
2301         (_Hashtable<>::_Hashtable(_InputIterator, _InputIterator, ...),
2302         _Hashtable(const _Hashtable&), _Hashtable(_Hashtable&&),
2303         swap(_Hashtable&), clear): Adjust.
2304         (_M_insert_bucket, _M_insert, erase(const_iterator),
2305         erase(const key_type&), _M_rehash): Update it.
2307         * include/bits/hashtable.h (_Hashtable<>::_M_erase): Remove.
2308         (erase(const_iterator)): Inline the latter.
2310 2010-08-31  Paolo Carlini  <paolo.carlini@oracle.com>
2312         * testsuite/23_containers/forward_list/operations/remove_freed.cc:
2313         Fix test01 return type to void.
2314         * testsuite/util/exception/safety.h: Avoid -Wall -m32 warnings.
2315         * testsuite/util/replacement_memory_operators.h: Likewise.
2317 2010-08-29  Paolo Carlini  <paolo.carlini@oracle.com>
2319         * testsuite/23_containers/bitset/invalidation: Move...
2320         * testsuite/23_containers/bitset/debug/invalidation: ... here.
2321         * testsuite/23_containers/deque/invalidation: Move...
2322         * testsuite/23_containers/deque/debug/invalidation: ... here.
2323         * testsuite/23_containers/list/invalidation: Move...
2324         * testsuite/23_containers/list/debug/invalidation: ... here.
2325         * testsuite/23_containers/map/invalidation: Move...
2326         * testsuite/23_containers/map/debug/invalidation: ... here.
2327         * testsuite/23_containers/multimap/invalidation: Move...
2328         * testsuite/23_containers/multimap/debug/invalidation: ... here.
2329         * testsuite/23_containers/set/invalidation: Move...
2330         * testsuite/23_containers/set/debug/invalidation: ... here.
2331         * testsuite/23_containers/multiset/invalidation: Move...
2332         * testsuite/23_containers/multiset/debug/invalidation: ... here.
2333         * testsuite/23_containers/vector/invalidation: Move...
2334         * testsuite/23_containers/vector/debug/invalidation: ... here.
2336 2010-08-29  François Dumont  <francois.cppdevs@free.fr>
2338         * include/bits/stl_algobase.h (_Iter_base):  Move...
2339         * include/bits/stl_iterator_base_types.h: ...here.
2340         * include/debug/functions.h (__check_valid_range, __check_string,
2341         __check_sorted): Fix to not depend on _GLIBCXX_DEBUG; include
2342         formatter.h and use formatting macros for a consistent debug result.
2343         * include/debug/formatter.h (__check_singular): Declare; do not
2344         include debug.h.
2345         * include/debug/debug.h: Do not include formatter.h.
2346         * include/debug/safe_iterator.h (_Safe_iterator::_Base_Iterator)
2347         rename to iterator_type.
2348         (__gnu_debug::__base): Add.
2349         * include/debug/set.h: Use everywhere __gnu_debug::__base once
2350         iterator range valided.
2351         * include/debug/unordered_map: Likewise.
2352         * include/debug/multiset.h: Likewise.
2353         * include/debug/vector: Likewise.
2354         * include/debug/unordered_set: Likewise.
2355         * include/debug/deque: Likewise.
2356         * include/debug/map.h: Likewise.
2357         * include/debug/string: Likewise.
2358         * include/debug/list: Likewise.
2359         * include/debug/multimap.h: Likewise.
2360         * testsuite/23_containers/util/debug/assign_neg.h: New test cases on
2361         debug checks performed on container assign operation.
2362         * testsuite/23_containers/util/debug/construct_neg.h: New test cases
2363         on debug checks on constructors.
2364         * testsuite/23_containers/util/debug/insert_neg.h: New test cases on
2365         debug checks performed on container insert operations.
2366         * testsuite/23_containers/unordered_map/debug/cont_traits.h,
2367         debug_cont_traits.h, construct1_neg.cc, construct2_neg.cc,
2368         construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc,
2369         insert3_neg.cc, insert4_neg.cc: New.
2370         * testsuite/23_containers/multimap/debug/cont_traits.h,
2371         debug_cont_traits.h, construct1_neg.cc, construct2_neg.cc,
2372         construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc,
2373         insert3_neg.cc, insert4_neg.cc: Likewise.
2374         * testsuite/23_containers/set/debug/cont_traits.h,
2375         debug_cont_traits.h, construct1_neg.cc, construct2_neg.cc,
2376         construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc,
2377         insert3_neg.cc, insert4_neg.cc: Likewise.
2378         * testsuite/23_containers/unordered_multimap/debug/cont_traits.h,
2379         debug_cont_traits.h, construct1_neg.cc, construct2_neg.cc,
2380         construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc,
2381         insert3_neg.cc, insert4_neg.cc: Likewise.
2382         * testsuite/23_containers/unordered_set/debug/cont_traits.h,
2383         debug_cont_traits.h, construct1_neg.cc, construct2_neg.cc,
2384         construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc,
2385         insert3_neg.cc, insert4_neg.cc: Likewise.
2386         * testsuite/23_containers/multiset/debug/cont_traits.h,
2387         debug_cont_traits.h, construct1_neg.cc, construct2_neg.cc,
2388         construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc,
2389         insert3_neg.cc, insert4_neg.cc: Likewise.
2390         * testsuite/23_containers/unordered_multiset/debug/cont_traits.h,
2391         debug_cont_traits.h, construct1_neg.cc, construct2_neg.cc,
2392         construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc,
2393         insert3_neg.cc, insert4_neg.cc: Likewise.
2394         * testsuite/23_containers/map/debug/cont_traits.h,
2395         debug_cont_traits.h, construct1_neg.cc, construct2_neg.cc,
2396         construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc,
2397         insert3_neg.cc, insert4_neg.cc: Likewise.
2398         * testsuite/23_containers/vector/debug/cont_traits.h,
2399         debug_cont_traits.h, assign1_neg.cc, assign2_neg.cc, assign3_neg.cc,
2400         assign4_neg.cc, construct1_neg.cc, construct2_neg.cc,
2401         construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc,
2402         insert3_neg.cc, insert4_neg.cc: Likewise.
2403         * testsuite/23_containers/deque/debug/cont_traits.h,
2404         debug_cont_traits.h, assign1_neg.cc, assign2_neg.cc, assign3_neg.cc,
2405         assign4_neg.cc, construct1_neg.cc, construct2_neg.cc,
2406         construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc,
2407         insert3_neg.cc, insert4_neg.cc: Likewise.
2408         * testsuite/23_containers/list/debug/cont_traits.h,
2409         debug_cont_traits.h, assign1_neg.cc, assign2_neg.cc, assign3_neg.cc,
2410         assign4_neg.cc, construct1_neg.cc, construct2_neg.cc,
2411         construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc,
2412         insert3_neg.cc, insert4_neg.cc: Likewise.
2413         * testsuite/performance/23_containers/range_construct/
2414         list_construct1.cc: New, validate performance impact of the patch
2415         on the debug mode.
2416         * testsuite/performance/23_containers/range_construct/
2417         list_construct2.cc: Likewise.
2418         * testsuite/performance/23_containers/range_construct/
2419         vector_construct.cc: Likewise.
2420         * testsuite/performance/23_containers/range_construct/
2421         deque_construct.cc: Likewise.
2423 2010-08-26  Benjamin Kosnik  <bkoz@redhat.com>
2425         * include/bits/stl_iterator_base_types.h: Fix doxygen warning.
2427 2010-08-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2429         * configure: Regenerate.
2431 2010-08-18  Kostya Serebryany <kcc@google.com>
2432             Paolo Carlini  <paolo.carlini@oracle.com>
2434         PR libstdc++/45276
2435         * doc/xml/manual/debug.xml ([debug.races]): Add.
2437 2010-08-17  Paolo Carlini  <paolo.carlini@oracle.com>
2439         PR libstdc++/45300
2440         * include/c_std/cwchar: Replace 'restrict' -> '__restrict'.
2441         * include/c_global/cwchar: Likewise.
2443 2010-08-16  Paolo Carlini  <paolo.carlini@oracle.com>
2445         PR libstdc++/45300
2446         * include/c_std/cstdlib: Replace 'restrict' -> '__restrict'.
2447         * include/c_std/cstdio: Likewise.
2448         * include/c_global/cstdlib: Likewise.
2449         * include/c_global/cstdio: Likewise.
2451 2010-08-16  Chris Moller  <cmoller@redhat.com>
2453         http://sourceware.org/bugzilla/show_bug.cgi?id=11874
2454         * python/libstdcxx/v6/printers.py (StdVectorPrinter): Added stuff
2455         to handle pretty-printing of std::vector<bool>.
2457 2010-08-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
2459         PR libstdc++/45283
2460         * testsuite/performance/30_threads/future/polling.cc: Replace calls to
2461         shared_future::is_ready.
2463 2010-08-13  Paolo Carlini  <paolo.carlini@oracle.com>
2465         * include/bits/hashtable.h (_Hashtable<>::operator=(const
2466         _Hashtable&)): Move inline.
2467         (operator=(_Hashtable&&)): Define.
2468         * include/bits/unordered_map.h (unordered_map(unordered_map&&),
2469         unordered_map(const unordered_map&), unordered_multimap
2470         (unordered_multimap&&), unordered_multimap(const unordered_multimap&),
2471         __unordered_map(__unordered_map&&), __unordered_map(const
2472         __unordered_map&), __unordered_multimap(__unordered_multimap&&),
2473         __unordered_multimap(const __unordered_multimap&)): Do not define,
2474         leave implicit.
2475         * include/bits/unordered_set.h (unordered_set(unordered_set&&),
2476         unordered_set(const unordered_set&), unordered_multiset
2477         (unordered_multiset&&), unordered_multiset(const unordered_multiset&),
2478         __unordered_set(__unordered_set&&), __unordered_set(const
2479         __unordered_set&), __unordered_multiset(__unordered_multiset&&),
2480         __unordered_multiset(const __unordered_multiset&)): Likewise.
2482         * include/bits/unordered_map.h (__unordered_map(initializer_list<>),
2483         __unordered_map<>::operator=(initializer_list<>),
2484         __unordered_multimap(initializer_list<>), __unordered_multimap<>::
2485         operator=(initializer_list<>)): Add.
2486         * include/bits/unordered_set.h (__unordered_set(initializer_list<>),
2487         __unordered_set<>::operator=(initializer_list<>),
2488         __unordered_multiset(initializer_list<>), __unordered_multiset<>::
2489         operator=(initializer_list<>)): Likewise.
2491         * include/bits/unordered_map.h (__unordered_map(_InputIterator,
2492         _InputIterator, size_type __n), unordered_map(_InputIterator,
2493         _InputIterator, size_type __n), unordered_map(initializer_list<>,
2494         size_type __n), unordered_multimap(initializer_list<>, size_type __n)):
2495         Fix __n default to 0.
2496         * include/bits/unordered_set.h (__unordered_set(_InputIterator,
2497         _InputIterator, size_type __n), unordered_set(_InputIterator,
2498         _InputIterator, size_type __n), unordered_set(initializer_list<>,
2499         size_type __n), unordered_multiset(initializer_list<>, size_type __n)):
2500         Likewise.
2501         * include/debug/unordered_map (unordered_map(_InputIterator,
2502         _InputIterator, size_type __n), unordered_map(initializer_list<>,
2503         size_type __n), unordered_map(_InputIterator, _InputIterator,
2504         size_type __n), unordered_multimap(initializer_list<>, size_type __n)):
2505         Likewise.
2506         * include/debug/unordered_set (unordered_set(_InputIterator,
2507         _InputIterator, size_type __n), unordered_set(initializer_list<>,
2508         size_type __n), unordered_set(_InputIterator, _InputIterator,
2509         size_type __n), unordered_multiset(initializer_list<>, size_type __n)):
2510         Likewise.
2511         * include/profile/unordered_map (unordered_map(_InputIterator,
2512         _InputIterator, size_type __n), unordered_map(initializer_list<>,
2513         size_type __n), unordered_map(_InputIterator, _InputIterator,
2514         size_type __n), unordered_multimap(initializer_list<>, size_type __n)):
2515         Likewise.
2516         * include/profile/unordered_set (unordered_set(_InputIterator,
2517         _InputIterator, size_type __n), unordered_set(initializer_list<>,
2518         size_type __n), unordered_set(_InputIterator, _InputIterator,
2519         size_type __n), unordered_multiset(initializer_list<>, size_type __n)):
2520         Likewise.
2522 2010-08-13  Paolo Carlini  <paolo.carlini@oracle.com>
2524         PR libstdc++/45281
2525         * include/bits/stl_queue.h (queue(queue&&), operator=(queue&&),
2526         priority_queue(priority_queue&&), operator=(priority_queue&&)):
2527         Remove, per CH 15.
2529 2010-08-13  Paolo Carlini  <paolo.carlini@oracle.com>
2531         * testsuite/23_containers/unordered_map/dr1189.cc: Move to...
2532         * testsuite/23_containers/unordered_map/hash_policy/dr1189.cc:
2533         ... here.
2534         * testsuite/23_containers/unordered_set/dr1189.cc: Move to...
2535         * testsuite/23_containers/unordered_set/hash_policy/dr1189.cc:
2536         ... here.
2537         * testsuite/23_containers/unordered_multimap/dr1189.cc: Move to...
2538         * testsuite/23_containers/unordered_multimap/hash_policy/dr1189.cc:
2539         ... here.
2540         * testsuite/23_containers/unordered_multiset/dr1189.cc: Move to...
2541         * testsuite/23_containers/unordered_multiset/hash_policy/dr1189.cc:
2542         ... here.
2544         * testsuite/23_containers/unordered_set/hash_policy/26132.cc: New.
2546 2010-08-13  Paolo Carlini  <paolo.carlini@oracle.com>
2548         * src/ios_init.cc (ios_base::Init::~Init): Add back semicolon
2549         at the end of the _GLIBCXX_SYNCHRONIZATION_HAPPENS_* macros,
2550         removed by mistake.
2551         * include/tr1_impl/boost_sp_counted_base.h: Likewise.
2552         * include/ext/rc_string_base.h: Likewise.
2553         * include/bits/locale_classes.h: Likewise.
2554         * include/bits/basic_string.h: Likewise.
2555         * include/bits/ios_base.h: Likewise.
2556         * include/bits/c++config: Adjust comment.
2558 2010-08-12  Kostya Serebryany <kcc@google.com>
2559             Paolo Carlini  <paolo.carlini@oracle.com>
2561         * include/bits/c++config (_GLIBCXX_SYNCHRONIZATION_HAPPENS_BEFORE,
2562         _GLIBCXX_SYNCHRONIZATION_HAPPENS_AFTER): Add.
2563         * src/ios_init.cc (ios_base::Init::~Init): Decorate with the
2564         latter.
2565         * include/tr1_impl/boost_sp_counted_base.h: Likewise.
2566         * include/ext/rc_string_base.h: Likewise.
2567         * include/bits/locale_classes.h: Likewise.
2568         * include/bits/basic_string.h: Likewise.
2569         * include/bits/ios_base.h: Likewise.
2570         * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust dg-error
2571         line number.
2572         * testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
2573         * testsuite/ext/profile/mutex_extensions.cc: Likewise.
2575 2010-08-11  Paolo Carlini  <paolo.carlini@oracle.com>
2577         * include/bits/hashtable.h (_Hashtable<>::erase(const key_type&)):
2578         Use std::__addressof.
2580         * include/bits/forward_list.tcc (forward_list<>::remove): Deal
2581         correctly with &__tmp->_M_value == &__val.
2582         * testsuite/23_containers/forward_list/operations/remove_freed.cc:
2583         New.
2585 2010-08-11  Paolo Carlini  <paolo.carlini@oracle.com>
2587         * include/bits/stl_algo.h (shuffle): Change signature consistently
2588         with random_shuffle (US 121).
2589         * include/bits/algorithmfwd.h: Adjust.
2590         * testsuite/25_algorithms/shuffle/requirements/
2591         explicit_instantiation/2.cc: Likewise.
2592         * testsuite/25_algorithms/shuffle/requirements/
2593         explicit_instantiation/pod.cc: Likewise.
2595 2010-08-11  Paolo Carlini  <paolo.carlini@oracle.com>
2597         * include/bits/move.h (forward): Reinstate the N2835 version.
2599 2010-08-11  Paolo Carlini  <paolo.carlini@oracle.com>
2601         PR libstdc++/42925
2602         * include/bits/unique_ptr.h (operator==(const unique_ptr<>&,
2603         nullptr_t), operator==(nullptr_t, const unique_ptr<>&),
2604         operator!=(const unique_ptr<>&, nullptr_t),
2605         operator!=(nullptr_t, const unique_ptr<>&)): Add.
2606         * include/bits/shared_ptr_base.h (operator==(const __shared_ptr<>&,
2607         nullptr_t), operator==(nullptr_t, const __shared_ptr<>&),
2608         operator!=(const __shared_ptr<>&, nullptr_t),
2609         operator!=(nullptr_t, const __shared_ptr<>&)): Likewise.
2610         * include/bits/shared_ptr.h (operator==(const shared_ptr<>&,
2611         nullptr_t), operator==(nullptr_t, const shared_ptr<>&),
2612         operator!=(const shared_ptr<>&, nullptr_t),
2613         operator!=(nullptr_t, const shared_ptr<>&)): Likewise.
2614         * testsuite/20_util/unique_ptr/comparison/42925.cc: New.
2615         * testsuite/20_util/shared_ptr/comparison/42925.cc: Likewise.
2616         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust
2617         dg-error line numbers.
2619 2010-08-11  Paolo Carlini  <paolo.carlini@oracle.com>
2621         * include/bits/unique_ptr.h: Replace _Tp_Deleter -> _Dp, and
2622         _Up_Deleter -> _Ep.
2624 2010-08-10  Paolo Carlini  <paolo.carlini@oracle.com>
2626         * include/bits/shared_ptr_base.h: Remove a few now redundant
2627         __glibcxx_function_requires(_ConvertibleConcept...).
2628         * testsuite/20_util/shared_ptr/cons/43820.cc: Adjust dg-error
2629         line number.
2630         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
2632 2010-08-10  Paolo Carlini  <paolo.carlini@oracle.com>
2634         * testsuite/ext/stdio_sync_filebuf/char/1.cc: Avoid -Wall
2635         warnings.
2636         * testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc: Likewise.
2638 2010-08-10  Paolo Carlini  <paolo.carlini@oracle.com>
2640         * testsuite/23_containers/array/range_access.cc: Avoid -Wall
2641         warnings.
2643 2010-08-10  Paolo Carlini  <paolo.carlini@oracle.com>
2645         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Avoid -Wall
2646         warnings.
2648         * include/bits/shared_ptr.h (shared_ptr<>::shared_ptr
2649         (const shared_ptr<>&), shared_ptr(shared_ptr<>&&), weak_ptr<>::
2650         weak_ptr(const weak_ptr<>&), weak_ptr(const shared_ptr<>&)):
2651         Constrain appropriately via std::is_convertible, etc.
2652         * include/bits/shared_ptr_base.h: Likewise.
2653         * include/bits/unique_ptr.h (default_delete<>::
2654         default_delete(const default_delete<>&),
2655         unique_ptr<>::unique_ptr(unique_ptr<>&&), operator=(unique_ptr<>&&)):
2656         Likewise.
2658         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
2659         line numbers.
2660         * testsuite/20_util/shared_ptr/cons/43820.cc: Likewise.
2662         * include/bits/unique_ptr.h (unique_ptr<>::unique_ptr(auto_ptr<>&&)):
2663         Add.
2664         * include/std/memory: Adjust includes order.
2665         * testsuite/20_util/unique_ptr/cons/auto_ptr.cc: New.
2666         * testsuite/20_util/unique_ptr/cons/auto_ptr_neg.cc: Likewise.
2667         * testsuite/20_util/shared_ptr/cons/auto_ptr_neg.cc: Minor tweaks.
2669 2010-08-10  Paolo Carlini  <paolo.carlini@oracle.com>
2671         PR libstdc++/45228
2672         * include/std/tuple (tuple<typename... _Elements>): Constrain
2673         converting constructors and assignment operators with
2674         sizeof...(_UElements) == sizeof...(_Elements).
2675         (tuple(tuple<_UElements...>&): Remove.
2676         (tuple<typename _T1>): Add.
2677         * testsuite/20_util/tuple/cons/45228.cc: New.
2678         * testsuite/20_util/tuple/cons/converting.cc: Likewise.
2679         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust
2680         dg-error line number.
2682         * include/std/tuple (_Tuple_impl<>::_Tuple_impl(const _Tuple_impl&)):
2683         Defaulted.
2685         * include/std/tuple (tuple<typename _T1, typename _T2>
2686         ::operator=(pair<_U1, _U2>&&)): Use forward.
2688 2010-08-08  Paolo Carlini  <paolo.carlini@oracle.com>
2690         PR libstdc++/44963
2691         * include/bits/stl_iterator.h (insert_iterator<>::
2692         operator=(const typename _Container::value_type&,
2693         back_insert_iterator<>::
2694         operator=(const typename _Container::value_type&),
2695         front_insert_iterator<>::
2696         operator=(const typename _Container::value_type&))): Add
2697         in C++0x mode.
2698         * testsuite/ext/rope/44963.cc: New.
2699         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust
2700         dg-error line number.
2702 2010-08-08  Paolo Carlini  <paolo.carlini@oracle.com>
2704         * include/c_global/cmath: Implement US 136.
2705         * include/tr1_impl/cmath: Do not bring fpclassify, etc from namespace
2706         std, define namespace tr1.
2707         * testsuite/26_numerics/headers/cmath/
2708         c99_classification_macros_c++0x.cc: New.
2710 2010-08-06  David Malcolm  <dmalcolm@redhat.com>
2711             Jan Kratochvil  <jan.kratochvil@redhat.com>
2713         * python/hook.in: Rename variable dir to dir_.
2715 2010-08-06  Jason Merrill  <jason@redhat.com>
2717         * include/std/thread: Add deleted thread(thread&).
2718         * testsuite/30_threads/thread/cons/copy_neg.cc: Remove XFAIL.
2720 2010-08-06  Paolo Carlini  <paolo.carlini@oracle.com>
2722         * include/std/tuple (pack_arguments): Rename to forward_as_tuple
2723         and simplify, per US 98 and US 99.
2724         * testsuite/20_util/tuple/creation_functions/pack_arguments.cc:
2725         Rename to...
2726         * testsuite/20_util/tuple/creation_functions/forward_as_tuple.cc:
2727         ... this, adjust.
2728         * testsuite/20_util/pair/piecewise.cc: Adjust.
2730 2010-08-06  Paolo Carlini  <paolo.carlini@oracle.com>
2732         * include/std/tuple (begin, end): Remove per GB 87.
2733         * testsuite/20_util/tuple/range_access.cc: Remove.
2735 2010-08-06  Paolo Carlini  <paolo.carlini@oracle.com>
2737         * include/std/ratio (ratio_less): Improve, use ratio_divide to avoid
2738         more overflows.
2739         * testsuite/20_util/ratio/comparisons/comp1.cc: Extend.
2740         * testsuite/20_util/ratio/comparisons/comp2.cc: Likewise.
2742 2010-08-05  Paolo Carlini  <paolo.carlini@oracle.com>
2744         * include/tr1_impl/utility (begin, end): Remove per GB 85.
2745         * testsuite/20_util/pair/range_access.cc: Remove.
2747         * include/std/functional (function<>::function()): Remove explicit,
2748         per JP 3.
2750 2010-08-05  Paolo Carlini  <paolo.carlini@oracle.com>
2752         * include/bits/move.h (forward): Update to N3092.
2753         (identity): Remove (US 92 is NAD).
2754         * include/debug/set.h: Fix move constructor to simply use move.
2755         * include/debug/unordered_map: Likewise.
2756         * include/debug/multiset.h: Likewise.
2757         * include/debug/vector: Likewise.
2758         * include/debug/unordered_set: Likewise.
2759         * include/debug/deque: Likewise.
2760         * include/debug/map.h: Likewise.
2761         * include/debug/string: Likewise.
2762         * include/debug/list: Likewise.
2763         * include/debug/multimap.h: Likewise.
2764         * include/profile/set.h: Likewise.
2765         * include/profile/unordered_map: Likewise.
2766         * include/profile/multiset.h: Likewise.
2767         * include/profile/unordered_set: Likewise.
2768         * include/profile/vector: Likewise.
2769         * include/profile/deque: Likewise.
2770         * include/profile/map.h: Likewise.
2771         * include/profile/list: Likewise.
2772         * include/profile/multimap.h: Likewise.
2773         * include/ext/vstring.h: Likewise.
2774         * include/bits/stl_list.h: Likewise.
2775         * include/bits/stl_map.h: Likewise.
2776         * include/bits/stl_set.h: Likewise.
2777         * include/bits/forward_list.h: Likewise.
2778         * include/bits/stl_multimap.h: Likewise.
2779         * include/bits/unordered_map.h: Likewise.
2780         * include/bits/stl_vector.h: Likewise.
2781         * include/bits/stl_deque.h: Likewise.
2782         * include/bits/stl_multiset.h: Likewise.
2783         * include/bits/unordered_set.h: Likewise.
2784         * include/bits/stl_bvector.h: Likewise.
2785         * testsuite/20_util/identity/value.cc: Remove
2786         * testsuite/20_util/identity/requirements/typedefs.cc: Likewise.
2787         * testsuite/20_util/identity/requirements/explicit_instantiation.cc:
2788         Likewise.
2790 2010-07-27  Paolo Carlini  <paolo.carlini@oracle.com>
2792         * acinclude.m4 ([GLIBCXX_COMPUTE_STDIO_INTEGER_CONSTANTS]): Fix
2793         messages.
2794         * configure: Regenerate.
2796 2010-07-27  Paolo Carlini  <paolo.carlini@oracle.com>
2798         * include/ext/vstring_util.h: Include bits/range_access.h.
2799         * testsuite/ext/vstring/range_access.cc: New test.
2801 2010-07-27  Ed Smith-Rowland  <3dw4rd@verizon.net>
2803         * include/bits/range_access.h: New.
2804         * include/Makefile.in: Add bits/range_access.h.
2805         * include/Makefile.am: Regenerate.
2806         * include/std/array: Include bits/range_access.h.
2807         * include/std/deque: Ditto.
2808         * include/std/forward_list: Ditto.
2809         * include/std/iterator: Ditto.
2810         * include/std/list: Ditto.
2811         * include/std/map: Ditto.
2812         * include/std/regex: Ditto.
2813         * include/std/set: Ditto.
2814         * include/std/string: Ditto.
2815         * include/std/unordered_map: Ditto.
2816         * include/std/unordered_set: Ditto.
2817         * include/std/vector: Ditto.
2818         * include/std/valarray: Add begin() and end().
2819         * libsupc++/initializer_list: Ditto.
2820         * include/tr1_impl/utility: Add begin() and end().
2821         * include/std/tuple: Ditto.
2822         * testsuite/24_iterators/headers/iterator/range_access.cc: New test.
2823         * testsuite/24_iterators/range_access.cc: Ditto.
2824         * testsuite/28_regex/range_access.cc: Ditto.
2825         * testsuite/18_support/initializer_list/range_access.cc: Ditto.
2826         * testsuite/21_strings/basic_string/range_access.cc: Ditto.
2827         * testsuite/26_numerics/valarray/range_access.cc: Ditto.
2828         * testsuite/23_containers/unordered_map/range_access.cc: Ditto.
2829         * testsuite/23_containers/multimap/range_access.cc: Ditto.
2830         * testsuite/23_containers/set/range_access.cc: Ditto.
2831         * testsuite/23_containers/unordered_multimap/range_access.cc: Ditto.
2832         * testsuite/23_containers/forward_list/range_access.cc: Ditto.
2833         * testsuite/23_containers/unordered_set/range_access.cc: Ditto.
2834         * testsuite/23_containers/vector/range_access.cc: Ditto.
2835         * testsuite/23_containers/deque/range_access.cc: Ditto.
2836         * testsuite/23_containers/multiset/range_access.cc: Ditto.
2837         * testsuite/23_containers/list/range_access.cc: Ditto.
2838         * testsuite/23_containers/unordered_multiset/range_access.cc: Ditto.
2839         * testsuite/23_containers/map/range_access.cc: Ditto.
2840         * testsuite/23_containers/array/range_access.cc: Ditto.
2841         * testsuite/20_util/tuple/range_access.cc: Ditto.
2842         * testsuite/20_util/pair/range_access.cc: Ditto.
2844 2010-07-27  Paolo Carlini  <paolo.carlini@oracle.com>
2845             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2847         * acinclude.m4 ([GLIBCXX_CHECK_STDIO_MACROS]): Remove.
2848         ([GLIBCXX_COMPUTE_STDIO_INTEGER_CONSTANTS]): Add, actually
2849         compute the constants via AC_COMPUTE_INT.
2850         * configure.ac: Call the latter.
2851         * include/bits/ios_base.h: Adjust.
2852         * include/bits/char_traits.h: Likewise.
2853         * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust dg-error
2854         line number.
2855         * testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
2856         * config.h.in: Regenerate.
2857         * configure: Likewise.
2859 2010-07-27  Paolo Carlini  <paolo.carlini@oracle.com>
2861         * config/io/c_io_stdio.h: Do not include <cstddef>.
2863 2010-07-26  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2865         * testsuite/22_locale/num_put/put/char/14220.cc: XFAIL on Solaris
2866         9/x86, 32-bit Solaris 10/x86 and 64-bit Solaris 10/SPARC.
2867         * testsuite/22_locale/num_put/put/wchar_t/14220.cc: XFAIL on
2868         Solaris 9/x86 and 32-bit Solaris 10/x86.
2870         * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
2871         Only XFAIL on Solaris 8 and 9.
2872         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
2873         Likewise.
2875         * testsuite/ext/enc_filebuf/char/13598.cc: XFAIL before Solaris 11.
2877 2010-07-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
2879         PR libstdc++/45060
2880         * include/bits/hashtable.h (_Hashtable::_Hashtable(_Hashtable&&)):
2881         Reorder mem-initializers.
2883 2010-07-22  Benjamin Kosnik  <bkoz@redhat.com>
2885         DocBook 4.5 to 5.0 transition.
2886         * doc/xml/authors.xml: Update markup to DocBook 5.0.
2887         * doc/xml/faq.xml: Same.
2888         * doc/xml/api.xml: Same.
2889         * doc/xml/class.txml
2890         * doc/xml/gnu/gpl-3.0.xml: Same.
2891         * doc/xml/gnu/fdl-1.2.xml: Same.
2892         * doc/xml/gnu/fdl-1.3.xml: Same.
2893         * doc/xml/gnu/gpl-2.0.xml: Same.
2894         * doc/xml/chapter.txml: Same.
2895         * doc/xml/manual/mt_allocator.xml: Same.
2896         * doc/xml/manual/allocator.xml: Same.
2897         * doc/xml/manual/ctype.xml: Same.
2898         * doc/xml/manual/numerics.xml: Same.
2899         * doc/xml/manual/codecvt.xml: Same.
2900         * doc/xml/manual/backwards_compatibility.xml: Same.
2901         * doc/xml/manual/concurrency.xml: Same.
2902         * doc/xml/manual/intro.xml: Same.
2903         * doc/xml/manual/abi.xml: Same.
2904         * doc/xml/manual/shared_ptr.xml: Same.
2905         * doc/xml/manual/status_cxxtr1.xml: Same.
2906         * doc/xml/manual/auto_ptr.xml: Same.
2907         * doc/xml/manual/internals.xml: Same.
2908         * doc/xml/manual/atomics.xml: Same.
2909         * doc/xml/manual/parallel_mode.xml: Same.
2910         * doc/xml/manual/status_cxx1998.xml: Same.
2911         * doc/xml/manual/profile_mode.xml: Same.
2912         * doc/xml/manual/containers.xml: Same.
2913         * doc/xml/manual/io.xml: Same.
2914         * doc/xml/manual/concurrency_extensions.xml: Same.
2915         * doc/xml/manual/appendix_porting.xml: Same.
2916         * doc/xml/manual/utilities.xml: Same.
2917         * doc/xml/manual/support.xml: Same.
2918         * doc/xml/manual/bitmap_allocator.xml: Same.
2919         * doc/xml/manual/configure.xml: Same.
2920         * doc/xml/manual/build_hacking.xml: Same.
2921         * doc/xml/manual/evolution.xml: Same.
2922         * doc/xml/manual/using.xml: Same.
2923         * doc/xml/manual/using_exceptions.xml: Same.
2924         * doc/xml/manual/debug.xml: Same.
2925         * doc/xml/manual/localization.xml: Same.
2926         * doc/xml/manual/strings.xml: Same.
2927         * doc/xml/manual/debug_mode.xml: Same.
2928         * doc/xml/manual/locale.xml: Same.
2929         * doc/xml/manual/extensions.xml: Same.
2930         * doc/xml/manual/appendix_contributing.xml: Same.
2931         * doc/xml/manual/prerequisites.xml: Same.
2932         * doc/xml/manual/messages.xml: Same.
2933         * doc/xml/manual/diagnostics.xml: Same.
2934         * doc/xml/manual/algorithms.xml: Same.
2935         * doc/xml/manual/appendix_free.xml: Same.
2936         * doc/xml/manual/iterators.xml: Same.
2937         * doc/xml/manual/spine.xml: Same.
2938         * doc/xml/manual/status_cxxtr24733.xml: Same.
2939         * doc/xml/manual/status_cxx200x.xml: Same.
2940         * doc/xml/manual/test.xml: Same.
2941         * doc/xml/book.txml: Same.
2942         * doc/xml/spine.xml: Same.
2943         * doc/Makefile.am: Same.
2944         * doc/Makefile.in: Regenerate.
2946 2010-07-20  Benjamin Kosnik  <bkoz@redhat.com>
2948         * doc/xml/manual/appendix_contributing.xml: Update for new reality.
2949         * doc/Makefile.am (doc-xml): New default rule for XML output.
2950         (doc-xml-single-doxygen): Standardize output names.
2951         * doc/Makefile.in: Regenerate.
2953         * doc/doxygen/user.cfg.in: Tweak.
2955 2010-07-20  Paolo Carlini  <paolo.carlini@oracle.com>
2957         * libsupc++/unwind-cxx.h: Minor formatting / stylistic tweaks.
2959 2010-07-20  Mikael Pettersson  <mikpe@it.uu.se>
2961         PR libstdc++/44902
2962         * libsupc++/unwind-cxx.h (__cxa_type_match): Correct prototype.
2963         (__cxa_begin_cleanup): Likewise.
2965 2010-07-19  Benjamin Kosnik  <bkoz@redhat.com>
2967         * doc/Makefile.am (doc-texinfo): New rule.
2968         (doc-texinfo-docbook): New rule.
2969         (DB2TEXI_FLAGS): New.
2970         (doc-xml-single-docbook): Just the manual, not the set. Tweak flags.
2971         * doc/Makefile.in: Regenerate.
2973 2010-07-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
2975         * doc/xml/manual/shared_ptr.xml: Update.
2976         * doc/html/*: Regenerate.
2978 2010-07-13  Benjamin Kosnik  <bkoz@redhat.com>
2980         * doc/Makefile.am: Edit pdf rules.
2981         (doc-man, doc-pdf, doc-html): Expand default rules.
2982         * doc/Makefile.in: Regenerate.
2983         * doc/doxygen/user.cfg.in: Update to Doxygen 1.7.1.
2985 2010-07-11  Paolo Carlini  <paolo.carlini@oracle.com>
2987         * include/std/type_traits (is_convertible): Use SFINAE.
2988         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
2989         dg-error line numbers.
2990         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2991         Likewise.
2992         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
2994 2010-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2996         PR libstdc++/44875
2997         * doc/xml/manual/status_cxx200x.xml: Corrections to status.
2998         * doc/html/*: Regenerate.
3000 2010-07-08  Benjamin Kosnik  <bkoz@redhat.com>
3002         * include/bits/stl_heap.h: Update markup.
3003         * include/bits/move.h: Same.
3004         * include/bits/algorithmfwd.h: Same.
3005         * include/bits/regex.h: Same.
3006         * include/bits/random.h: Same.
3007         * doc/doxygen/doxygroups.cc: Same.
3008         * doc/doxygen/user.cfg.in: Remove include/tr1_impl/regex from
3009         input file list.
3010         * doc/Makefile.am (doc-pdf-doxygen): Add comment, put generated
3011         pdf in location consistent with docbook pdf generation.
3012         * doc/Makefile.in: Regenerate.
3014 2010-07-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
3016         * doc/xml/manual/status_cxx200x.xml: Add some missing features.
3017         * doc/html/*: Regenerate.
3019 2010-07-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
3021         * include/bits/regex_compiler.h: Fix filename in doxygen comment.
3022         * include/bits/regex_constants.h: Likewise.
3023         * include/bits/regex_error.h: Likewise.
3024         * include/bits/regex_grep_matcher.h: Likewise.
3025         * include/bits/regex_grep_matcher.tcc: Likewise.
3026         * include/bits/regex_nfa.tcc: Likewise.
3028 2010-07-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3030         * acinclude.m4 (symvers_renaming): Define
3031         HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT instead of
3032         _GLIBCXX_HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT.
3033         Fix syntax error.
3034         * config.h.in: Regenerate.
3035         * configure: Regenerate.
3037 2010-07-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3039         * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Handle sun style.
3040         Require GCC_PROG_GNU_CXXFILT.
3041         (_GLIBCXX_HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT): Define
3042         unless targetting solaris2*.
3043         Include ../config/gc++filt.m4.
3044         * configure.host (i?86-*-solaris2*): Set abi_baseline_pair.
3045         (sparc-*-solaris2*): Likewise.
3046         * src/Makefile.am [ENABLE_SYMVERS_SUN] (version_dep, version_arg):
3047         New variables.
3048         (libstdc++-symbols.ver-sun): New target.
3049         * configure: Regenerate.
3050         * config.h.in: Regenerate.
3051         * Makefile.in: Likewise.
3052         * doc/Makefile.in: Likewise.
3053         * include/Makefile.in: Likewise.
3054         * libsupc++/Makefile.in: Likewise.
3055         * po/Makefile.in: Likewise.
3056         * python/Makefile.in: Likewise.
3057         * src/Makefile.in: Likewise.
3058         * src/atomic.cc: Only define/use _GLIBCXX_ASM_SYMVER if
3059         _GLIBCXX_HAVE_SYMVER_RENAMING_RUNTIME_SUPPORT.
3060         * src/compatibility.cc: Likewise.
3061         * testsuite/Makefile.am (baseline_subdir): Define.
3062         (baseline_symbols): Use it.
3063         (new-abi-baseline): Likewise.
3064         * testsuite/Makefile.in: Regenerate.
3066         * config/abi/pre/gnu.ver (GLIBCXX_3.4.5): Enclose duplicates in
3067         #ifdef HAVE_SYMVER_RENAMING_RUNTIME_SUPPORT.
3068         (GLIBCXX_3.4.6): Likewise.
3070         * doc/xml/manual/configure.xml (--enable-symvers): Document sun
3071         style.
3073         * doc/xml/manual/abi.xml: Fix grammar.
3074         (Symbol versioning on the libstdc++.so binary): Fix mapfile path.
3075         (Incremental bumping of a library pre-defined macro): Fix
3076         c++config path.
3077         (Incremental bumping of a library pre-defined macro,
3078         _GLIBCPP_VERSION): Likewise.
3079         (Matching each specific C++ compiler release to a specific set of
3080         C++ include files): Fix acinclude.m4 path.
3081         (Prerequisites): Allow for Sun linker on Solaris 2.5+.
3082         Use proper link to Configuring.
3083         Fix acinclude.m4 path.
3084         (Checking Active): Allow for additional symbol versioning styles.
3085         Provide Solaris 2 example with pvs -r.
3086         (Bibliography): Update Linker and Libraries Guide, C++ Migration
3087         Guide entries.
3089 2010-06-29  Jason Merrill  <jason@redhat.com>
3091         Enable implicitly declared move constructor/operator= (N3053).
3092         * include/bits/unordered_map.h: Explicitly default copy constructors.
3093         * include/bits/unordered_set.h: Likewise.
3095         * 19_diagnostics/error_category/cons/copy_neg.cc: Adjust expected
3096         errors, use dg-prune-output.
3097         * 20_util/function/cmp/cmp_neg.cc: Likewise.
3098         * 20_util/unique_ptr/assign/assign_neg.cc: Likewise.
3099         * 20_util/unique_ptr/cons/pointer_array_convertible.cc: Likewise.
3100         * 20_util/unique_ptr/modifiers/reset_neg.cc: Likewise.
3101         * 29_atomics/atomic/cons/assign_neg.cc: Likewise.
3102         * 29_atomics/atomic/cons/copy_neg.cc: Likewise.
3103         * 29_atomics/atomic_address/cons/assign_neg.cc: Likewise.
3104         * 29_atomics/atomic_address/cons/copy_neg.cc: Likewise.
3105         * 29_atomics/atomic_flag/cons/assign_neg.cc: Likewise.
3106         * 29_atomics/atomic_flag/cons/copy_neg.cc: Likewise.
3107         * 29_atomics/atomic_integral/cons/assign_neg.cc: Likewise.
3108         * 29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
3109         * 29_atomics/condition_variable/cons/assign_neg.cc: Likewise.
3110         * 30_threads/condition_variable/cons/copy_neg.cc: Likewise.
3111         * 30_threads/condition_variable_any/cons/assign_neg.cc: Likewise.
3112         * 30_threads/condition_variable_any/cons/copy_neg.cc: Likewise.
3113         * 30_threads/future/cons/assign_neg.cc: Likewise.
3114         * 30_threads/future/cons/copy_neg.cc: Likewise.
3115         * 30_threads/mutex/cons/assign_neg.cc: Likewise.
3116         * 30_threads/mutex/cons/copy_neg.cc: Likewise.
3117         * 30_threads/packaged_task/cons/assign_neg.cc: Likewise.
3118         * 30_threads/packaged_task/cons/copy_neg.cc: Likewise.
3119         * 30_threads/promise/cons/assign_neg.cc: Likewise.
3120         * 30_threads/promise/cons/copy_neg.cc: Likewise.
3121         * 30_threads/recursive_mutex/cons/assign_neg.cc: Likewise.
3122         * 30_threads/recursive_mutex/cons/copy_neg.cc: Likewise.
3123         * 30_threads/recursive_timed_mutex/cons/assign_neg.cc: Likewise.
3124         * 30_threads/recursive_timed_mutex/cons/copy_neg.cc: Likewise.
3125         * 30_threads/thread/cons/assign_neg.cc: Likewise.
3126         * 30_threads/thread/cons/copy_neg.cc: Likewise.
3127         * 30_threads/timed_mutex/cons/assign_neg.cc: Likewise.
3128         * 30_threads/timed_mutex/cons/copy_neg.cc: Likewise.
3129         * ext/ext_pointer/1_neg.cc: Likewise.
3131 2010-06-29  Paolo Carlini  <paolo.carlini@oracle.com>
3133         PR libstdc++/44708
3134         * include/ext/algorithm (copy_n): Qualify __copy_n call with
3135         __gnu_cxx::
3136         * testsuite/ext/rope/44708.cc: New.
3138 2010-06-27  Paolo Carlini  <paolo.carlini@oracle.com>
3140         * include/bits/regex_compiler.h: Trivial formatting / stylistic fixes.
3141         * include/bits/regex_grep_matcher.tcc: Likewise.
3142         * include/bits/regex_cursor.h: Likewise.
3143         * include/bits/regex.h: Likewise.
3145 2010-06-26  Paolo Carlini  <paolo.carlini@oracle.com>
3147         * testsuite/util/testsuite_hooks.h: Cast fn to bool.
3149 2010-06-26  Kees Cook  <kees.cook@canonical.com>
3151         * testsuite/27_io/ios_base/sync_with_stdio/1.cc: Verify freopen.
3152         * testsuite/27_io/objects/wchar_t/9520.cc: Likewise.
3153         * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
3154         * testsuite/27_io/objects/wchar_t/12048-2.cc: Likewise.
3155         * testsuite/27_io/objects/wchar_t/12048-4.cc: Likewise.
3156         * testsuite/27_io/objects/wchar_t/11.cc: Likewise.
3157         * testsuite/27_io/objects/wchar_t/12048-1.cc: Likewise.
3158         * testsuite/27_io/objects/wchar_t/12048-3.cc: Likewise.
3159         * testsuite/27_io/objects/wchar_t/10.cc: Likewise.
3160         * testsuite/27_io/objects/wchar_t/12048-5.cc: Likewise.
3161         * testsuite/27_io/objects/char/9661-1.cc: Likewise.
3162         * testsuite/27_io/objects/char/12048-2.cc: Likewise.
3163         * testsuite/27_io/objects/char/12048-4.cc: Likewise.
3164         * testsuite/27_io/objects/char/9.cc: Likewise.
3165         * testsuite/27_io/objects/char/12048-1.cc: Likewise.
3166         * testsuite/27_io/objects/char/12048-3.cc: Likewise.
3167         * testsuite/27_io/objects/char/12048-5.cc: Likewise.
3168         * testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Likewise.
3169         * testsuite/27_io/basic_filebuf/setbuf/char/12875-2.cc: Verify fgets.
3170         * testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-2.cc: Verify
3171         fwrite.
3172         * testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc: Likewise.
3173         * testsuite/ext/stdio_sync_filebuf/char/1.cc: Likewise.
3175 2010-06-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
3177         * doc/xml/faq.xml: Fix typo.
3178         * doc/html/faq.xml: Likewise.
3180 2010-06-25  Stephen M. Webb  <stephen.webb@bregmasoft.ca>
3182         Initial regex implementation.
3183         * include/std/regex: Modified to use bits/regex_* headers.
3184         * include/bits/regex_compiler.h: New.
3185         * include/bits/regex_constants.h: Likewise.
3186         * include/bits/regex_cursor.h: Likewise.
3187         * include/bits/regex_error.h: Likewise.
3188         * include/bits/regex_grep_matcher.h: Likewise.
3189         * include/bits/regex_grep_matcher.tcc: Likewise.
3190         * include/bits/regex.h: Likewise.
3191         * include/bits/regex_nfa.h: Likewise.
3192         * include/bits/regex_nfa.tcc: Likewise.
3193         * include/Makefile.am: Add.
3194         * include/Makefile.in: Regenerated.
3195         * testsuite/28_regex/02_definitions: New.
3196         * testsuite/28_regex/03_requirements: Likewise.
3197         * testsuite/28_regex/03_requirements/typedefs.cc: Likewise.
3198         * testsuite/28_regex/04_header: Likewise.
3199         * testsuite/28_regex/04_header/regex: Likewise.
3200         * testsuite/28_regex/04_header/regex/std_c++0x_neg.cc: Likewise.
3201         * testsuite/28_regex/05_constants: Likewise.
3202         * testsuite/28_regex/05_constants/error_type.cc: Likewise.
3203         * testsuite/28_regex/05_constants/match_flag_type.cc: Likewise.
3204         * testsuite/28_regex/05_constants/syntax_option_type.cc: Likewise.
3205         * testsuite/28_regex/06_exception_type: Likewise.
3206         * testsuite/28_regex/06_exception_type/regex_error.cc: Likewise.
3207         * testsuite/28_regex/07_traits: Likewise.
3208         * testsuite/28_regex/07_traits/char: Likewise.
3209         * testsuite/28_regex/07_traits/char/ctor.cc: Likewise.
3210         * testsuite/28_regex/07_traits/char/isctype.cc: Likewise.
3211         * testsuite/28_regex/07_traits/char/length.cc: Likewise.
3212         * testsuite/28_regex/07_traits/char/lookup_classname.cc: Likewise.
3213         * testsuite/28_regex/07_traits/char/lookup_collatename.cc: Likewise.
3214         * testsuite/28_regex/07_traits/char/transform.cc: Likewise.
3215         * testsuite/28_regex/07_traits/char/transform_primary.cc: Likewise.
3216         * testsuite/28_regex/07_traits/char/translate.cc: Likewise.
3217         * testsuite/28_regex/07_traits/char/translate_nocase.cc: Likewise.
3218         * testsuite/28_regex/07_traits/char/value.cc: Likewise.
3219         * testsuite/28_regex/07_traits/wchar_t: Likewise.
3220         * testsuite/28_regex/07_traits/wchar_t/ctor.cc: Likewise.
3221         * testsuite/28_regex/07_traits/wchar_t/length.cc: Likewise.
3222         * testsuite/28_regex/07_traits/wchar_t/transform.cc: Likewise.
3223         * testsuite/28_regex/07_traits/wchar_t/translate.cc: Likewise.
3224         * testsuite/28_regex/07_traits/wchar_t/translate_nocase.cc: Likewise.
3225         * testsuite/28_regex/07_traits/wchar_t/value.cc: Likewise.
3226         * testsuite/28_regex/08_basic_regex: Likewise.
3227         * testsuite/28_regex/08_basic_regex/assign: Likewise.
3228         * testsuite/28_regex/08_basic_regex/assign/char: Likewise.
3229         * testsuite/28_regex/08_basic_regex/assign/char/cstring.cc: Likewise.
3230         * testsuite/28_regex/08_basic_regex/assign/char/cstring_op.cc: Likewise.
3231         * testsuite/28_regex/08_basic_regex/assign/char/moveable.cc: Likewise.
3232         * testsuite/28_regex/08_basic_regex/assign/char/pstring.cc: Likewise.
3233         * testsuite/28_regex/08_basic_regex/assign/char/range.cc: Likewise.
3234         * testsuite/28_regex/08_basic_regex/assign/char/string.cc: Likewise.
3235         * testsuite/28_regex/08_basic_regex/assign/char/string_op.cc: Likewise.
3236         * testsuite/28_regex/08_basic_regex/assign/wchar_t: Likewise.
3237         * testsuite/28_regex/08_basic_regex/assign/wchar_t/cstring.cc: Likewise.
3238         * testsuite/28_regex/08_basic_regex/assign/wchar_t/cstring_op.cc:
3239         Likewise.
3240         * testsuite/28_regex/08_basic_regex/assign/wchar_t/pstring.cc: Likewise.
3241         * testsuite/28_regex/08_basic_regex/assign/wchar_t/range.cc: Likewise.
3242         * testsuite/28_regex/08_basic_regex/assign/wchar_t/string.cc: Likewise.
3243         * testsuite/28_regex/08_basic_regex/assign/wchar_t/string_op.cc:
3244         Likewise.
3245         * testsuite/28_regex/08_basic_regex/ctors: Likewise.
3246         * testsuite/28_regex/08_basic_regex/ctors/basic: Likewise.
3247         * testsuite/28_regex/08_basic_regex/ctors/basic/cstring.cc: Likewise.
3248         * testsuite/28_regex/08_basic_regex/ctors/basic/pstring_char.cc:
3249         Likewise.
3250         * testsuite/28_regex/08_basic_regex/ctors/basic/pstring_wchar_t.cc:
3251         Likewise.
3252         * testsuite/28_regex/08_basic_regex/ctors/basic/
3253         string_range_01_02_03.cc: Likewise.
3254         * testsuite/28_regex/08_basic_regex/ctors/char: Likewise.
3255         * testsuite/28_regex/08_basic_regex/ctors/char/cstring_awk.cc: Likewise.
3256         * testsuite/28_regex/08_basic_regex/ctors/char/cstring.cc: Likewise.
3257         * testsuite/28_regex/08_basic_regex/ctors/char/cstring_ecma.cc:
3258         Likewise.
3259         * testsuite/28_regex/08_basic_regex/ctors/char/cstring_egrep.cc:
3260         Likewise.
3261         * testsuite/28_regex/08_basic_regex/ctors/char/cstring_grep.cc:
3262         Likewise.
3263         * testsuite/28_regex/08_basic_regex/ctors/char/default.cc: Likewise.
3264         * testsuite/28_regex/08_basic_regex/ctors/char/range.cc: Likewise.
3265         * testsuite/28_regex/08_basic_regex/ctors/copy_char.cc: Likewise.
3266         * testsuite/28_regex/08_basic_regex/ctors/extended: Likewise.
3267         * testsuite/28_regex/08_basic_regex/ctors/extended/cstring.cc: Likewise.
3268         * testsuite/28_regex/08_basic_regex/ctors/extended/
3269         string_range_01_02_03.cc: Likewise.
3270         * testsuite/28_regex/08_basic_regex/ctors/move_char.cc: Likewise.
3271         * testsuite/28_regex/08_basic_regex/ctors/string_char.cc: Likewise.
3272         * testsuite/28_regex/08_basic_regex/ctors/string_wchar_t.cc: Likewise.
3273         * testsuite/28_regex/08_basic_regex/ctors/wchar_t: Likewise.
3274         * testsuite/28_regex/08_basic_regex/ctors/wchar_t/cstring.cc: Likewise.
3275         * testsuite/28_regex/08_basic_regex/ctors/wchar_t/default.cc: Likewise.
3276         * testsuite/28_regex/08_basic_regex/ctors/wchar_t/range.cc: Likewise.
3277         * testsuite/28_regex/08_basic_regex/regex.cc: Likewise.
3278         * testsuite/28_regex/09_sub_match: Likewise.
3279         * testsuite/28_regex/09_sub_match/cast_char.cc: Likewise.
3280         * testsuite/28_regex/09_sub_match/cast_wchar_t.cc: Likewise.
3281         * testsuite/28_regex/09_sub_match/length.cc: Likewise.
3282         * testsuite/28_regex/09_sub_match/typedefs.cc: Likewise.
3283         * testsuite/28_regex/10_match_results: Likewise.
3284         * testsuite/28_regex/10_match_results/ctors: Likewise.
3285         * testsuite/28_regex/10_match_results/ctors/char: Likewise.
3286         * testsuite/28_regex/10_match_results/ctors/char/default.cc: Likewise.
3287         * testsuite/28_regex/10_match_results/ctors/wchar_t: Likewise.
3288         * testsuite/28_regex/10_match_results/ctors/wchar_t/default.cc:
3289         Likewise.
3290         * testsuite/28_regex/10_match_results/typedefs.cc: Likewise.
3291         * testsuite/28_regex/11_algorithms: Likewise.
3292         * testsuite/28_regex/11_algorithms/02_match: Likewise.
3293         * testsuite/28_regex/11_algorithms/02_match/basic: Likewise.
3294         * testsuite/28_regex/11_algorithms/02_match/basic/string_01.cc:
3295         Likewise.
3296         * testsuite/28_regex/11_algorithms/02_match/basic/
3297         string_range_00_03.cc: Likewise.
3298         * testsuite/28_regex/11_algorithms/02_match/basic/
3299         string_range_01_03.cc: Likewise.
3300         * testsuite/28_regex/11_algorithms/02_match/basic/
3301         string_range_02_03.cc: Likewise.
3302         * testsuite/28_regex/11_algorithms/02_match/extended: Likewise.
3303         * testsuite/28_regex/11_algorithms/02_match/extended/cstring_plus.cc:
3304         Likewise.
3305         * testsuite/28_regex/11_algorithms/02_match/extended/
3306         cstring_questionmark.cc: Likewise.
3307         * testsuite/28_regex/11_algorithms/02_match/extended/string_any.cc:
3308         Likewise.
3309         * testsuite/28_regex/11_algorithms/02_match/extended/
3310         string_range_00_03.cc: Likewise.
3311         * testsuite/28_regex/11_algorithms/02_match/extended/
3312         string_range_01_03.cc: Likewise.
3313         * testsuite/28_regex/11_algorithms/02_match/extended/
3314         string_range_02_03.cc: Likewise.
3315         * testsuite/28_regex/12_iterators: Likewise.
3316         * testsuite/28_regex/12_iterators/regex_iterator: Likewise.
3317         * testsuite/28_regex/12_iterators/regex_iterator/ctors: Likewise.
3318         * testsuite/28_regex/12_iterators/regex_iterator/ctors/char: Likewise.
3319         * testsuite/28_regex/12_iterators/regex_iterator/ctors/char/
3320         default.cc: Likewise.
3321         * testsuite/28_regex/12_iterators/regex_iterator/ctors/wchar_t:
3322         Likewise.
3323         * testsuite/28_regex/12_iterators/regex_iterator/ctors/wchar_t/
3324         default.cc: Likewise.
3325         * testsuite/28_regex/12_iterators/regex_iterator/typedefs.cc: Likewise.
3326         * testsuite/28_regex/12_iterators/regex_token_iterator: Likewise.
3327         * testsuite/28_regex/12_iterators/regex_token_iterator/ctors: Likewise.
3328         * testsuite/28_regex/12_iterators/regex_token_iterator/ctors/char:
3329         Likewise.
3330         * testsuite/28_regex/12_iterators/regex_token_iterator/ctors/char/
3331         default.cc: Likewise.
3332         * testsuite/28_regex/12_iterators/regex_token_iterator/ctors/
3333         wchar_t: Likewise.
3334         * testsuite/28_regex/12_iterators/regex_token_iterator/ctors/
3335         wchar_t/default.cc: Likewise.
3336         * testsuite/28_regex/12_iterators/regex_token_iterator/
3337         typedefs.cc: Likewise.
3338         * testsuite/28_regex/13_ecmascript: Likewise.
3340 2010-06-25  Paolo Carlini  <paolo.carlini@oracle.com>
3342         * include/profile/impl/profiler_list_to_slist.h: Remove spurious
3343         semicolon; prefer pre-increment.
3344         * include/profile/impl/profiler_container_size.h: Use everywhere
3345         qualified std::size_t.
3346         * include/profile/impl/profiler_trace.h (__trace_base<>::
3347         __collect_warnings): Tidy loop.
3348         * include/profile/impl/profiler_vector_to_list.h: Minor formatting
3349         changes.
3351 2010-06-25  Paolo Carlini  <paolo.carlini@oracle.com>
3353         * include/profile/impl/profiler_trace.h: Uglify it to __it, use
3354         everywhere std::size_t instead of size_t.
3356 2010-06-24  Paolo Carlini  <paolo.carlini@oracle.com>
3358         * include/profile/impl/profiler_trace.h (__trace_base<>::
3359         __trace_base()): Move inline, simplify; formatting tweaks.
3360         * include/profile/impl/profiler_hash_func.h: Formatting tweaks.
3362 2010-06-24  Paolo Carlini  <paolo.carlini@oracle.com>
3364         * include/profile/impl/profiler_trace.h (__warning_data::
3365         __warning_message): Change to std::string; clean-up includes,
3366         qualify size_t, fprintf, etc, with std everywhere.
3367         (struct __warn::operator()): Adjust.
3368         * include/profile/impl/profiler_list_to_slist.h
3369         (__list2slist_info::__advice): Change to return a std::string;
3370         clean-up includes, qualify size_t, fprintf, etc, with std.
3371         * include/profile/impl/profiler_container_size.h
3372         (__container_size_info::__advice): Likewise.
3373         * include/profile/impl/profiler_hash_func.h (__hashfunc_info::
3374         __advice): Likewise.
3375         * include/profile/impl/profiler_list_to_vector.h
3376         (__list2vector_info::__advice): Likewise.
3377         * include/profile/impl/profiler_vector_to_list.h
3378         (__vector2list_info::__advice): Likewise.
3379         * include/profile/impl/profiler_map_to_unordered_map.h
3380         (__map2umap_info::__advice): Likewise.
3381         * include/profile/impl/profiler.h: Likewise.
3382         * include/profile/impl/profiler_hashtable_size.h: Likewise.
3383         * include/profile/impl/profiler_node.h: Likewise.
3384         * include/profile/impl/profiler_vector_size.h: Likewise.
3386         * include/profile/iterator_tracker.h: Formatting and stylistic
3387         tweaks.
3388         * include/profile/base.h: Likewise.
3389         * include/profile/map.h: Likewise.
3391 2010-06-23  Paolo Carlini <paolo.carlini@oracle.com>
3393         * include/bits/stl_tree.h (erase(iterator), erase(const_iterator)):
3394         Remove inline specifier.
3396 2010-06-22  Paolo Carlini  <paolo.carlini@oracle.com>
3398         * include/profile/impl/profiler_list_to_slist.h: Fix formatting,
3399         other minor stylistic changes.
3400         * include/profile/impl/profiler_container_size.h: Likewise.
3401         * include/profile/impl/profiler_vector_size.h: Likewise.
3402         * include/profile/impl/profiler_hash_func.h: Likewise.
3403         * include/profile/impl/profiler_trace.h: Likewise.
3404         * include/profile/impl/profiler_list_to_vector.h: Likewise.
3405         * include/profile/impl/profiler_vector_to_list.h: Likewise.
3406         * include/profile/impl/profiler_state.h: Likewise.
3407         * include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
3408         * include/profile/impl/profiler_hashtable_size.h: Likewise.
3409         * include/profile/impl/profiler_node.h: Likewise.
3411 2010-06-22  Matthias Klose  <doko@ubuntu.com>
3413         * python/libstdcxx/v6/printers.py: Don't use string exceptions.
3415 2010-06-22  Paolo Carlini  <paolo.carlini@oracle.com>
3417         PR libstdc++/44630
3418         * include/profile/impl/profiler_trace.h (__min, __max): Remove,
3419         use std::min, std::max everywhere.
3420         * include/profile/impl/profiler_container_size.h: Use std::min and
3421         std::max.
3422         * include/profile/impl/profiler_hash_func.h: Likewise.
3423         * include/profile/impl/profiler_list_to_vector.h: Likewise.
3425 2010-06-21  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3427         * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
3428         Add *-*-solaris2.1[0-9]* to dg-xfail-if, dg-excess-errors.
3430 2010-06-20  Paolo Carlini  <paolo.carlini@oracle.com>
3431             Kai-Uwe Bux  <bux@kubux.net>
3433         * include/bits/random.tcc (uniform_int_distribution<>::operator()):
3434         Fix to work well for arbitrary urng.max() and urng.min().
3436 2010-06-18  Paolo Carlini  <paolo.carlini@oracle.com>
3438         PR libstdc++/32618
3439         * include/bits/stl_list.h (vector<>::_M_default_initialize,
3440         _M_default_append): Declare.
3441         (list<>::list(size_type), resize(size_type)): Add in C++0x mode,
3442         use the latter.
3443         * include/bits/list.tcc (list<>::resize, _M_default_append): Define.
3444         * include/bits/stl_vector.h (vector<>::_M_default_initialize,
3445         _M_default_append): Declare.
3446         (vector<>::vector(size_type), resize(size_type)): Add in C++0x mode,
3447         use the latter.
3448         * include/bits/vector.tcc (vector<>::_M_default_append): Define.
3449         * include/bits/stl_deque.h (deque<>::_M_default_initialize,
3450         _M_default_append): Declare.
3451         (deque<>::deque(size_type), resize(size_type)): Add in C++0x mode,
3452         use the latter.
3453         * include/bits/deque.tcc (deque<>::_M_default_append): Define.
3454         * include/debug/vector: Update.
3455         * include/debug/deque: Likewise.
3456         * include/debug/list: Likewise.
3457         * include/profile/vector: Likewise.
3458         * include/profile/deque: Likewise.
3459         * include/profile/list: Likewise.
3460         * include/bits/forward_list.h (_M_default_initialize,
3461         _M_default_insert_after): Declare.
3462         (forward_list<>::forward_list(size_type), resize(size_type)): Fix,
3463         use the latter.
3464         * include/bits/forward_list.tcc (forward_list<>::_M_default_append,
3465         _M_default_insert_after): Define.
3466         * testsuite/util/testsuite_api.h (NonCopyConstructible): Add.
3467         * testsuite/23_containers/forward_list/modifiers/6.cc: Move to...
3468         * testsuite/23_containers/forward_list/capacity/resize_size.cc:
3469         ... here.
3470         * testsuite/23_containers/forward_list/cons/10.cc: Move to...
3471         * testsuite/23_containers/forward_list/cons/cons_size.cc: ... here.
3472         * testsuite/23_containers/vector/resize/1.cc: Move to...
3473         * testsuite/23_containers/vector/capacity/resize/1.cc: ... here.
3474         * testsuite/23_containers/vector/resize/moveable.cc: Move to...
3475         * testsuite/23_containers/vector/resize/capacity/moveable.cc: ... here.
3476         * testsuite/23_containers/vector/cons/cons_size.cc: New.
3477         * testsuite/23_containers/vector/capacity/resize/resize_size.cc:
3478         Likewise.
3479         * testsuite/23_containers/deque/cons/cons_size.cc: Likewise.
3480         * testsuite/23_containers/deque/capacity/resize_size.cc: Likewise.
3481         * testsuite/23_containers/list/cons/cons_size.cc: Likewise.
3482         * testsuite/23_containers/list/capacity/resize_size.cc: Likewise.
3483         * testsuite/23_containers/vector/capacity/resize/moveable.cc: Adjust.
3484         * testsuite/23_containers/deque/capacity/moveable.cc: Likewise.
3485         * testsuite/23_containers/forward_list/requirements/dr438/
3486         assign_neg.cc: Adjust dg-error line numbers.
3487         * testsuite/23_containers/forward_list/requirements/dr438/
3488         insert_neg.cc: Likewise.
3489         * testsuite/23_containers/forward_list/requirements/dr438/
3490         constructor_1_neg.cc: Likewise.
3491         * testsuite/23_containers/forward_list/requirements/dr438/
3492         constructor_2_neg.cc: Likewise.
3493         * testsuite/23_containers/vector/requirements/dr438/
3494         assign_neg.cc: Likewise.
3495         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
3496         Likewise.
3497         * testsuite/23_containers/vector/requirements/dr438/
3498         constructor_1_neg.cc: Likewise.
3499         * testsuite/23_containers/vector/requirements/dr438/
3500         constructor_2_neg.cc: Likewise.
3501         * testsuite/23_containers/deque/requirements/dr438/
3502         assign_neg.cc: Likewise.
3503         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
3504         Likewise.
3505         * testsuite/23_containers/deque/requirements/dr438/
3506         constructor_1_neg.cc: Likewise.
3507         * testsuite/23_containers/deque/requirements/dr438/
3508         constructor_2_neg.cc: Likewise.
3509         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
3510         Likewise.
3511         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
3512         Likewise.
3513         * testsuite/23_containers/list/requirements/dr438/
3514         constructor_1_neg.cc: Likewise.
3515         * testsuite/23_containers/list/requirements/dr438/
3516         constructor_2_neg.cc: Likewise.
3518 2010-06-17  Paolo Carlini  <paolo.carlini@oracle.com>
3520         * include/bits/stl_uninitialized.h (__uninitialized_default,
3521         __uninitialized_default_n, __uninitialized_default_a,
3522         __uninitialized_default_n_a): Add.
3524         * include/bits/stl_uninitialized.h (uninitialized_copy,
3525         uninitialized_fill, uninitialized_fill_n): Use __is_trivial
3526         instead of __is_pod.
3527         * include/bits/valarray_array.h: Likewise.
3528         * include/bits/stl_algobase.h (__copy_move_backward_a,
3529         __copy_move_a): Likewise.
3531 2010-06-16  Paolo Carlini  <paolo.carlini@oracle.com>
3533         * include/bits/stl_construct.h (_Construct): Change to variadic in
3534         C++0x mode, consistently with allocator::construct.
3535         * include/bits/stl_uninitialized.h (__uninitialized_copy_n): Use
3536         _Construct.
3537         (__uninitialized_construct_range): Move to...
3538         * include/bits/stl_tempbuf.h (__uninitialized_construct_buf): ... here.
3540 2010-06-16  Matthias Klose  <doko@ubuntu.com>
3542         * src/compatibility.cc: Export long double versions of "C" math
3543         library for arm-linux-gnueabi, m68k-linux-gnu (ColdFire),
3544         mips*-linux-gnu (o32 ABI), sh*-linux-gnu (32 bit).
3546 2010-06-15  Jason Merrill  <jason@redhat.com>
3548         * testsuite/lib/libstdc++.exp: Set additional_prunes.
3549         (libstdc++-dg-test): Don't prune here.
3550         * testsuite/lib/prune.exp (dg-prune-output): New.
3551         (libstdc++-dg-prune): Rename from prune_g++_output.
3552         Add a bunch of prunes from gcc's prune.exp.
3553         * testsuite/18_support/headers/cstdbool/std_c++0x_neg.cc:
3554         Remove dg-excess-errors.
3555         * testsuite/18_support/headers/cstdint/std_c++0x_neg.cc: Likewise.
3556         * testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Likewise.
3557         * testsuite/19_diagnostics/headers/system_error/std_c++0x_neg.cc:
3558         Likewise.
3559         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
3560         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Likewise.
3561         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
3562         * testsuite/20_util/headers/type_traits/std_c++0x_neg.cc: Likewise.
3563         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
3564         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
3565         Likewise.
3566         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
3567         * testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc: Likewise.
3568         * testsuite/20_util/shared_ptr/cons/43820.cc: Likewise.
3569         * testsuite/23_containers/headers/array/std_c++0x_neg.cc: Likewise.
3570         * testsuite/23_containers/headers/tuple/std_c++0x_neg.cc: Likewise.
3571         * testsuite/23_containers/headers/unordered_map/std_c++0x_neg.cc:
3572         Likewise.
3573         * testsuite/23_containers/headers/unordered_set/std_c++0x_neg.cc:
3574         Likewise.
3575         * testsuite/26_numerics/headers/ccomplex/std_c++0x_neg.cc: Likewise.
3576         * testsuite/26_numerics/headers/cfenv/std_c++0x_neg.cc: Likewise.
3577         * testsuite/26_numerics/headers/ctgmath/std_c++0x_neg.cc: Likewise.
3578         * testsuite/26_numerics/headers/random/std_c++0x_neg.cc: Likewise.
3579         * testsuite/27_io/headers/cinttypes/std_c++0x_neg.cc: Likewise.
3580         * testsuite/28_regex/headers/regex/std_c++0x_neg.cc: Likewise.
3581         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
3582         * testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc:
3583         Likewise.
3584         * testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
3585         Likewise.
3586         * testsuite/30_threads/headers/condition_variable/std_c++0x_neg.cc:
3587         Likewise.
3588         * testsuite/30_threads/headers/future/std_c++0x_neg.cc: Likewise.
3589         * testsuite/30_threads/headers/mutex/std_c++0x_neg.cc: Likewise.
3590         * testsuite/30_threads/headers/thread/std_c++0x_neg.cc: Likewise.
3591         * testsuite/ext/pb_ds/example/hash_resize_neg.cc: Likewise.
3592         * testsuite/ext/profile/mutex_extensions.cc: Likewise.
3593         * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Likewise.
3594         * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
3595         * testsuite/tr1/2_general_utilities/shared_ptr/assign/
3596         shared_ptr_neg.cc: Likewise.
3597         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820.cc: Likewise.
3599 2010-06-13  Paolo Carlini <paolo.carlini@oracle.com>
3601         * include/parallel/base.h (min, max): Mark inline.
3602         * include/parallel/set_operations.h (__parallel_set_operation):
3603         Uglify the Operation template parameter.
3605 2010-06-11  Paolo Carlini  <paolo.carlini@oracle.com>
3607         * include/bits/shared_ptr.h (hash<shared_ptr>): Add.
3608         * include/bits/shared_ptr_base.h (hash<__shared_ptr>): Likewise.
3609         * include/bits/unique_ptr.h (hash<unique_ptr>): Likewise.
3610         * testsuite/20_util/shared_ptr/hash/1.cc: New.
3611         * testsuite/20_util/unique_ptr/hash/1.cc: Likewise.
3613 2010-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
3615         * doc/xml/manual/appendix_contributing.xml: Indent code examples
3616         to match original C++STYLE document. Fix typos and syntax errors.
3617         Add some basic docbook markup.
3618         * doc/html/*: Regenerate.
3620 2010-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
3622         PR libstdc++/44268
3623         * doc/xml/manual/abi.xml: Fix libgcc version for hppa-linux.
3625 2010-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
3627         * include/std/tuple (_Swallow_assign::operator=): Add const.
3628         (ignore): Replace anonymous namespace member with const instance.
3630 2010-06-10  Suresh Gumpula  <suresh.gumpula@amd.com>
3632         PR libstdc++/43918
3633         * config/os/djgpp/error_constants.h: New.
3634         * configure.host: Use it.
3636 2010-06-10  Paolo Carlini  <paolo.carlini@oracle.com>
3638         * include/std/tuple (tuple(const tuple&)): Define explicitly-defaulted.
3639         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Tweak dg-warning
3640         line number.
3642 2010-06-10  Paolo Carlini  <paolo.carlini@oracle.com>
3644         PR libstdc++/44487
3645         * include/bits/stl_pair.h (pair(pair&&)): Remove.
3646         (pair(pair<_U1, _U2>&&): Use forward, consistently with Bullet 5
3647         of LWG 1326.
3648         * include/std/tuple (tuple(pair<_U1, _U2>&&)): Likewise.
3649         * testsuite/20_util/pair/44487.cc: Add.
3650         * testsuite/20_util/tuple/cons/44487.cc: Likewise.
3651         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
3652         line numbers.
3654 2010-06-09  Paolo Carlini  <paolo.carlini@oracle.com>
3656         * include/std/type_traits (is_nothrow_constructible): Add.
3657         (declval): Add noexcept specification.
3658         * testsuite/util/testsuite_tr1.h (struct NothrowExplicitClass,
3659         ThrowExplicitClass, NoexceptExplicitClass, ExceptExplicitClass):
3660         Add.
3661         * testsuite/20_util/is_nothrow_constructible/value.cc: New.
3662         * testsuite/20_util/is_nothrow_constructible/requirements/
3663         typedefs.cc: Likewise.
3664         * testsuite/20_util/is_nothrow_constructible/requirements/
3665         explicit_instantiation.cc: Likewise.
3666         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
3667         Adjust dg-error line numbers.
3668         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
3669         Likewise.
3670         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
3672 2010-06-09  Khem Raj  <raj.khem@gmail.com>
3674         PR libstdc++/44461
3675         * libsupc++/eh_arm.cc (__cxa_end_cleanup): Use .pushsection/.popsection
3676         to emit inline assembly into .text section.
3678 2010-06-09  Paolo Carlini  <paolo.carlini@oracle.com>
3680         Revert:
3681         2010-06-09  Paolo Carlini  <paolo.carlini@oracle.com>
3683         PR libstdc++/44413
3684         * include/ext/vstring_util.h (__vstring_utility<>::_S_compare):
3685         Simplify, just return -1, 0, 1.
3687 2010-06-09  Iain Sandoe  <iains@gcc.gnu.org>
3689         PR bootstrap/43170
3690         * configure: Regenerate.
3692 2010-06-09  Paolo Carlini  <paolo.carlini@oracle.com>
3694         PR libstdc++/44413
3695         * include/ext/vstring_util.h (__vstring_utility<>::_S_compare):
3696         Simplify, just return -1, 0, 1.
3698 2010-06-08  Paolo Carlini  <paolo.carlini@oracle.com>
3700         * include/std/type_traits (has_nothrow_assign): Rename to
3701         has_nothrow_copy_assign.
3702         (has_trivial_assign): Rename to has_trivial_copy_assign.
3703         * testsuite/20_util/has_nothrow_copy_assign/value.cc: New.
3704         * testsuite/20_util/has_nothrow_copy_assign/requirements/
3705         typedefs.cc: Likewise.
3706         * testsuite/20_util/has_nothrow_copy_assign/requirements/
3707         explicit_instantiation.cc: Likewise.
3708         * testsuite/20_util/has_trivial_copy_assign/value.cc: Likewise.
3709         * testsuite/20_util/has_trivial_copy_assign/requirements/
3710         typedefs.cc: Likewise.
3711         * testsuite/20_util/has_trivial_copy_assign/requirements/
3712         explicit_instantiation.cc: Likewise.
3714 2010-06-08  Johannes Singler  <singler@kit.edu>
3716         * include/parallel/find.h
3717         (__find_template(.., growing_blocks_tag)): Make block size
3718         proportional to current position.
3719         * include/parallel/settings.h (_Settings): Introduce new tuning
3720         parameter find_scale_factor to the end of the struct, defaults to
3721         0.01f.
3723 2010-06-08  Johannes Singler  <singler@kit.edu>
3725         * include/parallel/partial_sum.h
3726         (__parallel_partial_sum_linear):
3727         Correctly calculate part lengths for partial_sum_dilation!=1.
3729 2010-06-07  Paolo Carlini  <paolo.carlini@oracle.com>
3731         PR libstdc++/44417
3732         * include/c_std/cwctype: Provide a workaround for bug glibc
3733         BZ 9694 affecting glibc 2.9 and older.
3734         * include/c_global/cwctype: Likewise.
3735         * testsuite/util/testsuite_abi.h: Remove temporary workaround.
3736         * testsuite/util/testsuite_allocator.h: Use everywhere std::size_t
3737         and std::ptrdiff_t, don't include <cstddef>.
3739         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
3740         error_code.cc: Minor tweak, prefer <cwchar> to <wchar.h>.
3742 2010-06-07  Paolo Carlini  <paolo.carlini@oracle.com>
3744         * include/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp:
3745         Avoid -Wall warnings.
3746         * testsuite/27_io/ios_base/failure/what-3.cc: Likewise.
3747         * testsuite/27_io/basic_ostringstream/str/wchar_t/1.cc: Likewise.
3748         * testsuite/27_io/basic_ostringstream/str/char/1.cc: Likewise.
3749         * testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc: Likewise.
3750         * testsuite/27_io/basic_stringbuf/sputbackc/char/1.cc: Likewise.
3751         * testsuite/27_io/basic_stringbuf/sgetn/wchar_t/1.cc: Likewise.
3752         * testsuite/27_io/basic_stringbuf/sgetn/char/1.cc: Likewise.
3753         * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/1.cc: Likewise.
3754         * testsuite/27_io/basic_stringbuf/seekoff/char/1.cc: Likewise.
3755         * testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc: Likewise.
3756         * testsuite/27_io/basic_stringbuf/sbumpc/char/1.cc: Likewise.
3757         * testsuite/27_io/basic_stringbuf/snextc/wchar_t/1.cc: Likewise.
3758         * testsuite/27_io/basic_stringbuf/snextc/char/1.cc: Likewise.
3759         * testsuite/27_io/basic_stringbuf/sgetc/wchar_t/1.cc: Likewise.
3760         * testsuite/27_io/basic_stringbuf/sgetc/char/1.cc: Likewise.
3761         * testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc: Likewise.
3762         * testsuite/27_io/basic_stringbuf/sungetc/char/1.cc: Likewise.
3763         * testsuite/27_io/basic_stringbuf/seekpos/wchar_t/1.cc: Likewise.
3764         * testsuite/27_io/basic_stringbuf/seekpos/char/1.cc: Likewise.
3765         * testsuite/27_io/types/2.cc: Likewise.
3766         * testsuite/27_io/basic_istream/ignore/wchar_t/1.cc: Likewise.
3767         * testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise.
3768         * testsuite/27_io/basic_istream/peek/wchar_t/1.cc: Likewise.
3769         * testsuite/27_io/basic_istream/peek/char/1.cc: Likewise.
3770         * testsuite/27_io/basic_istream/ws/wchar_t/1.cc: Likewise.
3771         * testsuite/27_io/basic_istream/ws/char/1.cc: Likewise.
3772         * testsuite/27_io/basic_istream/seekg/wchar_t/8348-2.cc: Likewise.
3773         * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
3774         * testsuite/27_io/basic_istream/tellg/wchar_t/8348.cc: Likewise.
3775         * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
3776         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/01.cc:
3777         Likewise.
3778         * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc:
3779         Likewise.
3780         * testsuite/27_io/fpos/mbstate_t/4_neg.cc: Likewise.
3781         * testsuite/27_io/fpos/mbstate_t/2.cc: Likewise.
3782         * testsuite/27_io/fpos/mbstate_t/3.cc: Likewise.
3783         * testsuite/27_io/fpos/mbstate_t/5.cc: Likewise.
3784         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/4.cc:
3785         Likewise.
3786         * testsuite/27_io/basic_ostream/inserters_character/char/4.cc:
3787         Likewise.
3788         * testsuite/27_io/basic_filebuf/sgetn/char/2-out.cc: Likewise.
3789         * testsuite/27_io/basic_filebuf/seekoff/12790-4.cc: Likewise.
3790         * testsuite/27_io/basic_filebuf/seekoff/char/1-in.cc: Likewise.
3791         * testsuite/27_io/basic_filebuf/seekoff/char/2-in.cc: Likewise.
3792         * testsuite/27_io/basic_filebuf/seekoff/char/1-out.cc: Likewise.
3793         * testsuite/27_io/basic_filebuf/seekoff/char/1-io.cc: Likewise.
3794         * testsuite/27_io/basic_filebuf/seekoff/char/2-out.cc: Likewise.
3795         * testsuite/27_io/basic_filebuf/seekoff/char/2-io.cc: Likewise.
3796         * testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc: Likewise.
3797         * testsuite/27_io/basic_filebuf/sungetc/char/2-io.cc: Likewise.
3798         * testsuite/25_algorithms/minmax/3.cc: Likewise.
3799         * testsuite/19_diagnostics/logic_error/what-3.cc: Likewise.
3800         * testsuite/19_diagnostics/runtime_error/what-3.cc: Likewise.
3801         * testsuite/19_diagnostics/system_error/what-3.cc: Likewise.
3802         * testsuite/24_iterators/front_insert_iterator/2.cc: Likewise.
3803         * testsuite/24_iterators/back_insert_iterator/2.cc: Likewise.
3804         * testsuite/24_iterators/insert_iterator/2.cc: Likewise.
3805         * testsuite/18_support/exception_ptr/make_exception_ptr.cc: Likewise.
3806         * testsuite/21_strings/c_strings/wchar_t/1.cc: Likewise.
3807         * testsuite/21_strings/c_strings/wchar_t/2.cc: Likewise.
3808         * testsuite/21_strings/c_strings/char/1.cc: Likewise.
3809         * testsuite/21_strings/c_strings/char/2.cc: Likewise.
3810         * testsuite/26_numerics/random/independent_bits_engine/cons/
3811         copy.cc: Likewise.
3812         * testsuite/26_numerics/random/subtract_with_carry_engine/
3813         cons/copy.cc: Likewise.
3814         * testsuite/26_numerics/random/subtract_with_carry_engine/
3815         requirements/constants.cc: Likewise.
3816         * testsuite/26_numerics/random/discard_block_engine/
3817         cons/copy.cc: Likewise.
3818         * testsuite/26_numerics/random/mersenne_twister_engine/
3819         cons/copy.cc: Likewise.
3820         * testsuite/26_numerics/random/mersenne_twister_engine/
3821         requirements/constants.cc: Likewise.
3822         * testsuite/26_numerics/random/linear_congruential_engine/
3823         cons/copy.cc: Likewise.
3824         * testsuite/26_numerics/random/linear_congruential_engine/
3825         requirements/constants.cc: Likewise.
3826         * testsuite/26_numerics/random/shuffle_order_engine/
3827         cons/copy.cc: Likewise.
3828         * testsuite/26_numerics/random/shuffle_order_engine/
3829         requirements/constants.cc: Likewise.
3830         * testsuite/26_numerics/complex/complex_value.cc: Likewise.
3831         * testsuite/26_numerics/headers/cmath/overloads.cc: Likewise.
3832         * testsuite/26_numerics/headers/cmath/
3833         c99_classification_macros_c++.cc: Likewise.
3834         * testsuite/26_numerics/slice_array/array_assignment.cc: Likewise.
3835         * testsuite/22_locale/money_put/put/wchar_t/1.cc: Likewise.
3836         * testsuite/22_locale/money_put/put/wchar_t/2.cc: Likewise.
3837         * testsuite/22_locale/money_put/put/wchar_t/3.cc: Likewise.
3838         * testsuite/22_locale/money_put/put/wchar_t/12971.cc: Likewise.
3839         * testsuite/22_locale/money_put/put/char/1.cc: Likewise.
3840         * testsuite/22_locale/money_put/put/char/2.cc: Likewise.
3841         * testsuite/22_locale/money_put/put/char/3.cc: Likewise.
3842         * testsuite/22_locale/money_put/put/char/12971.cc: Likewise.
3843         * testsuite/22_locale/time_put/put/wchar_t/1.cc: Likewise.
3844         * testsuite/22_locale/time_put/put/wchar_t/2.cc: Likewise.
3845         * testsuite/22_locale/time_put/put/wchar_t/3.cc: Likewise.
3846         * testsuite/22_locale/time_put/put/wchar_t/4.cc: Likewise.
3847         * testsuite/22_locale/time_put/put/wchar_t/5.cc: Likewise.
3848         * testsuite/22_locale/time_put/put/wchar_t/6.cc: Likewise.
3849         * testsuite/22_locale/time_put/put/wchar_t/7.cc: Likewise.
3850         * testsuite/22_locale/time_put/put/wchar_t/8.cc: Likewise.
3851         * testsuite/22_locale/time_put/put/wchar_t/17038.cc: Likewise.
3852         * testsuite/22_locale/time_put/put/char/1.cc: Likewise.
3853         * testsuite/22_locale/time_put/put/char/2.cc: Likewise.
3854         * testsuite/22_locale/time_put/put/char/3.cc: Likewise.
3855         * testsuite/22_locale/time_put/put/char/4.cc: Likewise.
3856         * testsuite/22_locale/time_put/put/char/5.cc: Likewise.
3857         * testsuite/22_locale/time_put/put/char/6.cc: Likewise.
3858         * testsuite/22_locale/time_put/put/char/7.cc: Likewise.
3859         * testsuite/22_locale/time_put/put/char/8.cc: Likewise.
3860         * testsuite/22_locale/time_put/put/char/17038.cc: Likewise.
3861         * testsuite/22_locale/num_put/put/wchar_t/1.cc: Likewise.
3862         * testsuite/22_locale/num_put/put/char/1.cc: Likewise.
3863         * testsuite/22_locale/time_get/get_year/wchar_t/5.cc: Likewise.
3864         * testsuite/22_locale/time_get/get_year/char/5.cc: Likewise.
3865         * testsuite/22_locale/time_get/get_monthname/wchar_t/5.cc: Likewise.
3866         * testsuite/22_locale/time_get/get_monthname/char/5.cc: Likewise.
3867         * testsuite/22_locale/time_get/get_weekday/wchar_t/5.cc: Likewise.
3868         * testsuite/22_locale/time_get/get_weekday/char/5.cc: Likewise.
3869         * testsuite/22_locale/time_get/get_date/wchar_t/5.cc: Likewise.
3870         * testsuite/22_locale/time_get/get_date/char/5.cc: Likewise.
3871         * testsuite/22_locale/time_get/get_time/wchar_t/5.cc: Likewise.
3872         * testsuite/22_locale/time_get/get_time/char/5.cc: Likewise.
3873         * testsuite/22_locale/num_get/get/wchar_t/1.cc: Likewise.
3874         * testsuite/22_locale/num_get/get/char/1.cc: Likewise.
3875         * testsuite/22_locale/moneypunct/members/wchar_t/1.cc: Likewise.
3876         * testsuite/22_locale/moneypunct/members/char/1.cc: Likewise.
3877         * testsuite/22_locale/ctype_base/mask.cc: Likewise.
3878         * testsuite/tr1/5_numerical_facilities/random/
3879         subtract_with_carry/requirements/constants.cc: Likewise.
3880         * testsuite/tr1/5_numerical_facilities/random/
3881         subtract_with_carry_01/requirements/constants.cc: Likewise.
3882         * testsuite/tr1/5_numerical_facilities/random/
3883         discard_block/requirements/constants.cc: Likewise.
3884         * testsuite/tr1/5_numerical_facilities/random/
3885         linear_congruential/requirements/constants.cc: Likewise.
3886         * testsuite/tr1/5_numerical_facilities/random/
3887         mersenne_twister/requirements/constants.cc: Likewise.
3888         * testsuite/tr1/5_numerical_facilities/random/
3889         xor_combine/requirements/constants.cc: Likewise.
3890         * testsuite/tr1/8_c_compatibility/cfenv/functions.cc: Likewise.
3891         * testsuite/tr1/8_c_compatibility/cinttypes/functions.cc: Likewise.
3892         * testsuite/tr1/8_c_compatibility/cstdlib/functions.cc: Likewise.
3893         * testsuite/tr1/8_c_compatibility/cstdio/functions.cc: Likewise.
3894         * testsuite/tr1/8_c_compatibility/cctype/functions.cc: Likewise.
3895         * testsuite/tr1/8_c_compatibility/cwchar/functions.cc: Likewise.
3896         * testsuite/tr1/8_c_compatibility/cmath/templates.cc: Likewise.
3897         * testsuite/tr1/8_c_compatibility/cmath/functions.cc: Likewise.
3898         * testsuite/tr1/8_c_compatibility/cwctype/functions.cc: Likewise.
3899         * testsuite/tr1/6_containers/utility/pair.cc: Likewise.
3900         * testsuite/29_atomics/atomic_address/cons/aggregate.cc: Likewise.
3901         * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Likewise.
3902         * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
3903         * testsuite/29_atomics/atomic_integral/operators/
3904         increment_neg.cc: Likewise.
3905         * testsuite/29_atomics/atomic_integral/operators/
3906         bitwise_neg.cc: Likewise.
3907         * testsuite/29_atomics/atomic_integral/operators/
3908         decrement_neg.cc: Likewise.
3909         * testsuite/29_atomics/atomic_flag/cons/1.cc: Likewise.
3910         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Likewise.
3911         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
3912         * testsuite/23_containers/priority_queue/members/7161.cc
3913         * testsuite/23_containers/set/dr130.cc: Likewise.
3914         * testsuite/23_containers/list/pthread5.cc: Likewise.
3915         * testsuite/23_containers/map/dr130.cc: Likewise.
3916         * testsuite/util/exception/safety.h: Likewise.
3917         * testsuite/util/testsuite_common_types.h: Likewise.
3918         * testsuite/20_util/clocks/1.cc: Likewise.
3920 2010-06-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
3922         * doc/Makefile.am, doc/Makefile.in (xml_sources_extra): Add
3923         fdl-1.3.xml.
3924         * doc/xml/manual/intro.xml: Update FDL link.
3925         * doc/xml/manual/spine.xml: Update FDL include.
3926         * doc/xml/gnu/fdl-1.3.xml: Add.
3927         * doc/html/*: Regenerate.
3929 2010-06-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
3931         * include/ext/pointer.h (_Pointer_adapter::operator++): Remove
3932         name of unused parameter.
3934 2010-06-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
3936         PR libstdc++/40296
3937         * libsupc++/exception_ptr.h (exception_ptr::exception_ptr): Replace
3938         __safe_bool constructor with nullptr_t constructor in C++0x mode.
3939         (exception_ptr::operator bool): Add explicit conversion to bool.
3940         (swap(exception_ptr&, exception_ptr&)): Add.
3941         (exception_ptr::_M_safe_bool_dummy): Only declare for old ABI.
3942         * libsupc++/eh_ptr.cc (exception_ptr::_M_safe_bool_dummy): Move
3943         next to other functions retained for ABI compatibility.
3944         * testsuite/18_support/exception_ptr/requirements.cc: New.
3945         * testsuite/18_support/exception_ptr/requirements_neg.cc: New.
3947 2010-06-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
3949         * include/bits/shared_ptr_base.h (_Sp_counted_ptr::_M_dispose): Make
3950         nullptr_t specializations inline.
3952 2010-06-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
3954         * doc/xml/manual/status_cxx200x.xml: Update.
3956 2010-06-05  Magnus Fromreide  <magfr@lysator.liu.se>
3957             Jonathan Wakely  <jwakely.gcc@gmail.com>
3959         * include/std/functional (function): Add nullptr_t support.
3960         * include/bits/shared_ptr.h (shared_ptr): Likewise.
3961         * include/bits/unique_ptr.h (unique_ptr): Likewise.
3963 2010-06-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
3965         * include/bits/shared_ptr_base.h (__shared_ptr): Add nullptr_t support.
3966         (__shared_count): Add nullptr_t support and make constructors explicit.
3967         * testsuite/20_util/shared_ptr/cons/43820.cc: Adjust.
3968         * testsuite/20_util/shared_ptr/cons/nullptr.cc: New.
3969         * testsuite/20_util/unique_ptr/cons/nullptr.cc: New.
3970         * testsuite/20_util/unique_ptr/assign/nullptr.cc: New.
3971         * testsuite/20_util/unique_ptr/assign/assign_neg.cc: Adjust.
3972         * testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Adjust.
3973         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust.
3975 2010-06-04  Jason Merrill  <jason@redhat.com>
3977         * testsuite/util/testsuite_abi.h: Work around glibc BZ 9694.
3979 2010-06-03  Paolo Carlini  <paolo.carlini@oracle.com>
3981         * testsuite/util/testsuite_iterators.h: Don't include <cstddef>,
3982         don't use NULL, use std::size_t and std::ptrdiff_t.
3983         * testsuite/18_support/exception/38732.cc: Likewise.
3984         * testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: Likewise.
3985         * testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: Likewise.
3986         * testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: Likewise.
3987         * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
3988         * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
3989         * testsuite/23_containers/list/pthread1.cc: Likewise.
3990         * testsuite/23_containers/map/pthread6.cc: Likewise.
3991         * testsuite/util/testsuite_hooks.cc: Likewise.
3992         * config/locale/gnu/codecvt_members.cc: Likewise.
3993         * config/locale/gnu/messages_members.cc: Likewise.
3994         * config/locale/gnu/c_locale.h: Likewise.
3995         * config/locale/gnu/messages_members.h: Likewise.
3996         * config/locale/gnu/monetary_members.cc: Likewise.
3997         * config/locale/gnu/time_members.cc: Likewise.
3998         * config/locale/gnu/time_members.h: Likewise.
3999         * config/locale/generic/c_locale.cc: Likewise.
4000         * config/locale/generic/codecvt_members.cc: Likewise.
4001         * config/locale/generic/c_locale.h: Likewise.
4002         * config/locale/generic/time_members.cc: Likewise.
4003         * config/locale/generic/time_members.h: Likewise.
4005 2010-06-03  Paolo Carlini  <paolo.carlini@oracle.com>
4007         * include/bits/c++config (std::size_t, std::ptrdiff_t,
4008         std::nullptr_t): Provide typedefs.
4009         * include/c_std/cstddef: Don't provide std::size_t and
4010         std::ptrdiff_t here.
4011         * include/c_global/cstddef: Likewise.
4012         * src/condition_variable.cc: Don't include <cstddef>,
4013         don't use NULL, use std::size_t and std::ptrdiff_t.
4014         * src/mt_allocator.cc: Likewise.
4015         * src/localename.cc: Likewise.
4016         * src/chrono.cc: Likewise.
4017         * src/thread.cc: Likewise.
4018         * include/debug/formatter.h: Likewise.
4019         * include/debug/functions.h: Likewise.
4020         * include/std/valarray: Likewise.
4021         * include/std/thread: Likewise.
4022         * include/std/type_traits: Likewise.
4023         * include/std/atomic: Likewise.
4024         * include/std/iterator: Likewise.
4025         * include/std/bitset: Likewise.
4026         * include/std/fstream: Likewise.
4027         * include/std/mutex: Likewise.
4028         * include/c_std/cstdlib: Likewise.
4029         * include/c_std/cstdio: Likewise.
4030         * include/c_std/ctime: Likewise.
4031         * include/c_std/cwchar: Likewise.
4032         * include/c_std/cstring: Likewise.
4033         * include/parallel/multiway_merge.h: Likewise.
4034         * include/parallel/multiseq_selection.h: Likewise.
4035         * include/parallel/base.h: Likewise.
4036         * include/parallel/basic_iterator.h: Likewise.
4037         * include/parallel/multiway_mergesort.h
4038         * include/parallel/partition.h: Likewise.
4039         * include/ext/string_conversions.h: Likewise.
4040         * include/ext/pb_ds/assoc_container.hpp: Likewise.
4041         * include/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp:
4042         Likewise.
4043         * include/ext/pb_ds/detail/resize_policy/
4044         hash_prime_size_policy_imp.hpp: Likewise.
4045         * include/ext/pb_ds/detail/resize_policy/
4046         sample_resize_policy.hpp: Likewise.
4047         * include/ext/pb_ds/detail/resize_policy/
4048         sample_resize_trigger.hpp: Likewise.
4049         * include/ext/pb_ds/detail/binomial_heap_base_/
4050         erase_fn_imps.hpp: Likewise.
4051         * include/ext/pb_ds/detail/binomial_heap_base_/
4052         find_fn_imps.hpp: Likewise.
4053         * include/ext/pb_ds/detail/binomial_heap_base_/
4054         insert_fn_imps.hpp: Likewise.
4055         * include/ext/pb_ds/detail/binomial_heap_base_/
4056         constructors_destructor_fn_imps.hpp: Likewise.
4057         * include/ext/pb_ds/detail/binomial_heap_base_/
4058         debug_fn_imps.hpp: Likewise.
4059         * include/ext/pb_ds/detail/binomial_heap_base_/
4060         split_join_fn_imps.hpp: Likewise.
4061         * include/ext/pb_ds/detail/cc_hash_table_map_/
4062         erase_store_hash_fn_imps.hpp: Likewise.
4063         * include/ext/pb_ds/d: Likewise.etail/cc_hash_table_map_/
4064         insert_no_store_hash_fn_imps.hpp
4065         * include/ext/pb_ds/detail/cc_hash_table_map_/
4066         cmp_fn_imps.hpp: Likewise.
4067         * include/ext/pb_ds/detail/cc_hash_table_map_/
4068         find_fn_imps.hpp: Likewise.
4069         * include/ext/pb_ds/detail/cc_hash_table_map_/
4070         insert_store_hash_fn_imps.hpp: Likewise.
4071         * include/ext/pb_ds/detail/cc_hash_table_map_/
4072         debug_fn_imps.hpp: Likewise.
4073         * include/ext/pb_ds/detail/cc_hash_table_map_/
4074         info_fn_imps.hpp: Likewise.
4075         * include/ext/pb_ds/detail/cc_hash_table_map_/
4076         entry_list_fn_imps.hpp: Likewise.
4077         * include/ext/pb_ds/detail/cc_hash_table_map_/
4078         trace_fn_imps.hpp: Likewise.
4079         * include/ext/pb_ds/detail/cc_hash_table_map_/
4080         erase_fn_imps.hpp: Likewise.
4081         * include/ext/pb_ds/detail/cc_hash_table_map_/
4082         cc_ht_map_.hpp: Likewise.
4083         * include/ext/pb_ds/detail/cc_hash_table_map_/
4084         resize_fn_imps.hpp: Likewise.
4085         * include/ext/pb_ds/detail/cc_hash_table_map_/
4086         constructor_destructor_fn_imps.hpp: Likewise.
4087         * include/ext/pb_ds/detail/cc_hash_table_map_/
4088         erase_no_store_hash_fn_imps.hpp: Likewise.
4089         * include/ext/pb_ds/detail/unordered_iterator/
4090         iterator.hpp: Likewise.
4091         * include/ext/pb_ds/detail/unordered_iterator/
4092         const_iterator.hpp: Likewise.
4093         * include/ext/pb_ds/detail/unordered_iterator/
4094         point_iterator.hpp: Likewise.
4095         * include/ext/pb_ds/detail/unordered_iterator/
4096         const_point_iterator.hpp: Likewise.
4097         * include/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp: Likewise.
4098         * include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp: Likewise.
4099         * include/ext/pb_ds/detail/pat_trie_/child_iterator.hpp: Likewise.
4100         * include/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp: Likewise.
4101         * include/ext/pb_ds/detail/pat_trie_/
4102         insert_join_fn_imps.hpp: Likewise.
4103         * include/ext/pb_ds/detail/pat_trie_/
4104         constructors_destructor_fn_imps.hpp: Likewise.
4105         * include/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp: Likewise.
4106         * include/ext/pb_ds/detail/pat_trie_/
4107         const_child_iterator.hpp: Likewise.
4108         * include/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp: Likewise.
4109         * include/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp: Likewise.
4110         * include/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp: Likewise.
4111         * include/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp: Likewise.
4112         * include/ext/pb_ds/detail/pat_trie_/node_iterators.hpp: Likewise.
4113         * include/ext/pb_ds/detail/pat_trie_/internal_node.hpp: Likewise.
4114         * include/ext/pb_ds/detail/pat_trie_/point_iterators.hpp: Likewise.
4115         * include/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp: Likewise.
4116         * include/ext/pb_ds/detail/bin_search_tree_/
4117         find_fn_imps.hpp: Likewise.
4118         * include/ext/pb_ds/detail/bin_search_tree_/
4119         r_erase_fn_imps.hpp: Likewise.
4120         * include/ext/pb_ds/detail/bin_search_tree_/
4121         constructors_destructor_fn_imps.hpp: Likewise.
4122         * include/ext/pb_ds/detail/bin_search_tree_/
4123         debug_fn_imps.hpp: Likewise.
4124         * include/ext/pb_ds/detail/bin_search_tree_/
4125         rotate_fn_imps.hpp: Likewise.
4126         * include/ext/pb_ds/detail/bin_search_tree_/
4127         erase_fn_imps.hpp: Likewise.
4128         * include/ext/pb_ds/detail/bin_search_tree_/
4129         insert_fn_imps.hpp: Likewise.
4130         * include/ext/pb_ds/detail/bin_search_tree_/
4131         node_iterators.hpp: Likewise.
4132         * include/ext/pb_ds/detail/bin_search_tree_/
4133         point_iterators.hpp: Likewise.
4134         * include/ext/pb_ds/detail/bin_search_tree_/
4135         split_join_fn_imps.hpp: Likewise.
4136         * include/ext/pb_ds/detail/bin_search_tree_/
4137         iterators_fn_imps.hpp: Likewise.
4138         * include/ext/pb_ds/detail/gp_hash_table_map_/
4139         find_fn_imps.hpp: Likewise.
4140         * include/ext/pb_ds/detail/gp_hash_table_map_/
4141         gp_ht_map_.hpp: Likewise.
4142         * include/ext/pb_ds/detail/gp_hash_table_map_/
4143         resize_fn_imps.hpp: Likewise.
4144         * include/ext/pb_ds/detail/gp_hash_table_map_/
4145         standard_policies.hpp: Likewise.
4146         * include/ext/pb_ds/detail/tree_policy/
4147         sample_tree_node_update.hpp: Likewise.
4148         * include/ext/pb_ds/detail/basic_tree_policy/
4149         null_node_metadata.hpp: Likewise.
4150         * include/ext/pb_ds/detail/binary_heap_/const_iterator.hpp: Likewise.
4151         * include/ext/pb_ds/detail/binary_heap_/
4152         const_point_iterator.hpp: Likewise.
4153         * include/ext/pb_ds/detail/binary_heap_/
4154         split_join_fn_imps.hpp: Likewise.
4155         * include/ext/pb_ds/detail/trie_policy/
4156         sample_trie_node_update.hpp: Likewise.
4157         * include/ext/pb_ds/detail/trie_policy/
4158         sample_trie_e_access_traits.hpp: Likewise.
4159         * include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp: Likewise.
4160         * include/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp: Likewise.
4161         * include/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp: Likewise.
4162         * include/ext/pb_ds/detail/pairing_heap_/
4163         split_join_fn_imps.hpp: Likewise.
4164         * include/ext/pb_ds/detail/list_update_policy/
4165         counter_lu_metadata.hpp: Likewise.
4166         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
4167         trace_fn_imps.hpp: Likewise.
4168         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
4169         erase_fn_imps.hpp: Likewise.
4170         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
4171         null_metadata.hpp: Likewise.
4172         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
4173         const_iterator.hpp: Likewise.
4174         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
4175         insert_fn_imps.hpp: Likewise.
4176         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
4177         constructors_destructor_fn_imps.hpp: Likewise.
4178         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
4179         debug_fn_imps.hpp: Likewise.
4180         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
4181         iterators_fn_imps.hpp: Likewise.
4182         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
4183         const_point_iterator.hpp: Likewise.
4184         * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp: Likewise.
4185         * include/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp: Likewise.
4186         * include/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp: Likewise.
4187         * include/ext/pb_ds/detail/thin_heap_/
4188         constructors_destructor_fn_imps.hpp: Likewise.
4189         * include/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp: Likewise.
4190         * include/ext/pb_ds/detail/thin_heap_/
4191         split_join_fn_imps.hpp: Likewise.
4192         * include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp: Likewise.
4193         * include/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp: Likewise.
4194         * include/ext/pb_ds/detail/ov_tree_map_/
4195         constructors_destructor_fn_imps.hpp: Likewise.
4196         * include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Likewise.
4197         * include/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp: Likewise.
4198         * include/ext/pb_ds/detail/ov_tree_map_/
4199         iterators_fn_imps.hpp: Likewise.
4200         * include/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp: Likewise.
4201         * include/ext/pb_ds/detail/hash_fn/
4202         sample_ranged_probe_fn.hpp: Likewise.
4203         * include/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp: Likewise.
4204         * include/ext/pb_ds/detail/hash_fn/
4205         sample_ranged_hash_fn.hpp: Likewise.
4206         * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Likewise.
4207         * include/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp: Likewise.
4208         * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Likewise.
4209         * include/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp: Likewise.
4210         * include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Likewise.
4211         * include/ext/pb_ds/detail/splay_tree_/
4212         split_join_fn_imps.hpp: Likewise.
4213         * include/ext/pb_ds/detail/list_update_map_/
4214         trace_fn_imps.hpp: Likewise.
4215         * include/ext/pb_ds/detail/list_update_map_/
4216         erase_fn_imps.hpp: Likewise.
4217         * include/ext/pb_ds/detail/list_update_map_/
4218         find_fn_imps.hpp: Likewise.
4219         * include/ext/pb_ds/detail/list_update_map_/lu_map_.hpp: Likewise.
4220         * include/ext/pb_ds/detail/list_update_map_/
4221         constructor_destructor_fn_imps.hpp: Likewise.
4222         * include/ext/pb_ds/detail/list_update_map_/
4223         insert_fn_imps.hpp: Likewise.
4224         * include/ext/pb_ds/detail/list_update_map_/
4225         info_fn_imps.hpp: Likewise.
4226         * include/ext/pb_ds/detail/list_update_map_/
4227         iterators_fn_imps.hpp: Likewise.
4228         * include/ext/pb_ds/detail/rc_binomial_heap_/
4229         erase_fn_imps.hpp: Likewise.
4230         * include/ext/pb_ds/detail/rc_binomial_heap_/
4231         insert_fn_imps.hpp: Likewise.
4232         * include/ext/pb_ds/detail/rc_binomial_heap_/
4233         debug_fn_imps.hpp: Likewise.
4234         * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Likewise.
4235         * include/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp: Likewise.
4236         * include/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp: Likewise.
4237         * include/ext/pb_ds/detail/rb_tree_map_/
4238         split_join_fn_imps.hpp: Likewise.
4239         * include/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp: Likewise.
4240         * include/ext/pb_ds/list_update_policy.hpp: Likewise.
4241         * include/ext/pb_ds/exception.hpp: Likewise.
4242         * include/ext/pb_ds/tree_policy.hpp: Likewise.
4243         * include/ext/pb_ds/tag_and_trait.hpp: Likewise.
4244         * include/ext/pb_ds/hash_policy.hpp: Likewise.
4245         * include/ext/pb_ds/trie_policy.hpp: Likewise.
4246         * include/ext/pb_ds/priority_queue.hpp: Likewise.
4247         * include/ext/throw_allocator.h: Likewis: Likewise.e.
4248         * include/ext/bitmap_allocator.h
4249         * include/ext/rc_string_base.h: Likewise.
4250         * include/ext/new_allocator.h: Likewise.
4251         * include/ext/codecvt_specializations.h: Likewise.
4252         * include/ext/functional: Likewise.: Likewise.
4253         * include/ext/array_allocator.h: Likewise.
4254         * include/ext/mt_allocator.h: Likewise.
4255         * include/ext/sso_string_base.h: Likewise.
4256         * include/profile/impl/profiler_trace.h: Likewise.
4257         * include/profile/impl/profiler_node.h: Likewise.
4258         * include/bits/stl_algobase.h: Likewise.
4259         * include/bits/functional_hash.h: Likewise.
4260         * include/bits/locale_facets.tcc: Likewise.
4261         * include/bits/locale_facets.h: Likewise.
4262         * include/bits/stl_iterator_base_types.h: Likewise.
4263         * include/bits/move.h: Likewise.
4264         * include/bits/boost_concept_check.h: Likewise.
4265         * include/bits/basic_string.tcc: Likewise.
4266         * include/bits/locale_facets_nonio.tcc: Likewise.
4267         * include/bits/fstream.tcc: Likewise.
4268         * include/bits/locale_facets_nonio.h: Likewise.
4269         * include/c_global/cstdlib: Likewise.
4270         * include/c_global/cstdio: Likewise.
4271         * include/c_global/ctime: Likewise.
4272         * include/c_global/cwchar: Likewise.
4273         * include/c_global/cstring
4274         * include/tr1/type_traits: Likewise.
4275         * include/backward/hash_fun.h: Likewise.
4276         * libsupc++/new: Likewise.
4277         * libsupc++/initializer_list: Likewise.
4278         * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
4279         * testsuite/27_io/basic_iostream/cons/2020.cc: Likewise.
4280         * testsuite/27_io/basic_streambuf/sgetn/wchar_t/1.cc: Likewise.
4281         * testsuite/27_io/basic_streambuf/sgetn/char/1.cc: Likewise.
4282         * testsuite/27_io/basic_streambuf/overflow/wchar_t/1.cc: Likewise.
4283         * testsuite/27_io/basic_streambuf/overflow/char/1.cc: Likewise.
4284         * testsuite/27_io/basic_streambuf/sgetc/wchar_t/1.cc: Likewise.
4285         * testsuite/27_io/basic_streambuf/sgetc/char/1.cc: Likewise.
4286         * testsuite/27_io/basic_streambuf/sputn/wchar_t/1057.cc: Likewise.
4287         * testsuite/27_io/basic_streambuf/sputn/wchar_t/1.cc: Likewise.
4288         * testsuite/27_io/basic_streambuf/sputn/char/1057.cc: Likewise.
4289         * testsuite/27_io/basic_streambuf/sputn/char/1.cc: Likewise.
4290         * testsuite/27_io/basic_streambuf/sputc/wchar_t/1057.cc: Likewise.
4291         * testsuite/27_io/basic_streambuf/sputc/char/1057.cc: Likewise.
4292         * testsuite/27_io/objects/wchar_t/5268.cc: Likewise.
4293         * testsuite/27_io/objects/char/9661-1.cc: Likewise.
4294         * testsuite/27_io/objects/char/5268.cc: Likewise.
4295         * testsuite/27_io/objects/char/10.cc: Likewise.
4296         * testsuite/27_io/basic_ios/copyfmt/char/1.cc: Likewise.
4297         * testsuite/27_io/basic_ios/copyfmt/char/2.cc: Likewise.
4298         * testsuite/27_io/basic_ios/exceptions/char/1.cc: Likewise.
4299         * testsuite/27_io/basic_ios/locales/char/1.cc: Likewise.
4300         * testsuite/27_io/basic_ios/clear/char/1.cc: Likewise.
4301         * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
4302         * testsuite/27_io/basic_stringbuf/sputc/wchar_t/1057.cc: Likewise.
4303         * testsuite/27_io/basic_stringbuf/sputc/char/1057.cc: Likewise.
4304         * testsuite/27_io/basic_stringbuf/sputn/wchar_t/1057.cc: Likewise.
4305         * testsuite/27_io/basic_stringbuf/sputn/char/1057.cc: Likewise.
4306         * testsuite/27_io/basic_istream/get/wchar_t/1.cc: Likewise.
4307         * testsuite/27_io/basic_istream/get/char/1.cc: Likewise.
4308         * testsuite/27_io/basic_istream/ignore/wchar_t/1.cc: Likewise.
4309         * testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise.
4310         * testsuite/27_io/basic_istream/peek/wchar_t/1.cc: Likewise.
4311         * testsuite/27_io/basic_istream/peek/char/1.cc: Likewise.
4312         * testsuite/27_io/basic_istream/getline/wchar_t/1.cc: Likewise.
4313         * testsuite/27_io/basic_istream/getline/char/1.cc: Likewise.
4314         * testsuite/27_io/basic_istream/extractors_other/wchar_t/
4315         exceptions_null.cc
4316         * testsuite/27_io/basic_istream/extractors_other/wchar_t/
4317         1.cc: Likewise.
4318         * testsuite/27_io/basic_istream/extractors_other/char/
4319         exceptions_null.cc: Likewise.
4320         * testsuite/27_io/basic_istream/extractors_other/char/1.cc: Likewise.
4321         * testsuite/27_io/basic_istream/cons/3.cc: Likewise.
4322         * testsuite/27_io/basic_istream/extractors_arithmetic/
4323         wchar_t/01.cc: Likewise.
4324         * testsuite/27_io/basic_istream/extractors_arithmetic/
4325         char/01.cc: Likewise.
4326         * testsuite/27_io/basic_istream/extractors_character/
4327         wchar_t/1.cc: Likewise.
4328         * testsuite/27_io/basic_istream/extractors_character/
4329         wchar_t/2.cc: Likewise.
4330         * testsuite/27_io/basic_istream/extractors_character/
4331         wchar_t/3.cc: Likewise.
4332         * testsuite/27_io/basic_istream/extractors_character/
4333         char/1.cc: Likewise.
4334         * testsuite/27_io/basic_istream/extractors_character/
4335         char/2.cc: Likewise.
4336         * testsuite/27_io/basic_istream/extractors_character/
4337         char/3.cc: Likewise.
4338         * testsuite/27_io/basic_istream/extractors_character/
4339         char/9826.cc: Likewise.
4340         * testsuite/27_io/basic_istream/read/wchar_t/1.cc: Likewise.
4341         * testsuite/27_io/basic_istream/read/char/1.cc: Likewise.
4342         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
4343         exceptions_null.cc: Likewise.
4344         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
4345         1.cc: Likewise.
4346         * testsuite/27_io/basic_ostream/inserters_other/char/
4347         exceptions_null.cc: Likewise.
4348         * testsuite/27_io/basic_ostream/inserters_other/char/1.cc: Likewise.
4349         * testsuite/27_io/basic_ostream/cons/2020.cc: Likewise.
4350         * testsuite/27_io/basic_ostream/sentry/pod/1.cc: Likewise.
4351         * testsuite/27_io/basic_ostream/inserters_character/
4352         wchar_t/8.cc: Likewise.
4353         * testsuite/27_io/basic_ostream/inserters_character/
4354         char/8.cc: Likewise.
4355         * testsuite/27_io/basic_filebuf/setbuf/char/1.cc: Likewise.
4356         * testsuite/27_io/basic_filebuf/sputc/char/1057.cc: Likewise.
4357         * testsuite/27_io/basic_filebuf/open/char/1.cc: Likewise.
4358         * testsuite/27_io/basic_filebuf/open/char/2.cc: Likewise.
4359         * testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
4360         * testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: Likewise.
4361         * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1.cc: Likewise.
4362         * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2.cc: Likewise.
4363         * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3.cc: Likewise.
4364         * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4.cc: Likewise.
4365         * testsuite/27_io/basic_filebuf/close/wchar_t/12790-3.cc: Likewise.
4366         * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
4367         * testsuite/27_io/basic_filebuf/close/char/1.cc: Likewise.
4368         * testsuite/27_io/basic_filebuf/close/char/2.cc: Likewise.
4369         * testsuite/27_io/basic_filebuf/close/char/12790-3.cc: Likewise.
4370         * testsuite/27_io/basic_filebuf/sputn/char/1057.cc: Likewise.
4371         * testsuite/24_iterators/ostreambuf_iterator/2.cc: Likewise.
4372         * testsuite/18_support/bad_exception/23591_thread-1.c
4373         * testsuite/18_support/new_delete_placement.cc: Likewise.
4374         * testsuite/18_support/pthread_guard.cc: Likewise.
4375         * testsuite/21_strings/basic_string/operations/wchar_t/1.cc: Likewise.
4376         * testsuite/21_strings/basic_string/operations/char/1.cc: Likewise.
4377         * testsuite/21_strings/basic_string/pthread4.cc: Likewise.
4378         * testsuite/21_strings/basic_string/cons/wchar_t/5.cc: Likewise.
4379         * testsuite/21_strings/basic_string/cons/char/5.cc: Likewise.
4380         * testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Likewise.
4381         * testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Likewise.
4382         * testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: Likewise.
4383         * testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: Likewise.
4384         * testsuite/30_threads/mutex/cons/assign_neg.cc: Likewise.
4385         * testsuite/30_threads/mutex/cons/copy_neg.cc: Likewise.
4386         * testsuite/30_threads/thread/cons/assign_neg.cc: Likewise.
4387         * testsuite/30_threads/thread/cons/copy_neg.cc: Likewise.
4388         * testsuite/30_threads/recursive_timed_mutex/cons/
4389         assign_neg.cc: Likewise.
4390         * testsuite/30_threads/recursive_timed_mutex/cons/
4391         copy_neg.cc: Likewise.
4392         * testsuite/ext/mt_allocator/22309_thread.cc: Likewise.
4393         * testsuite/ext/slist/23781.cc: Likewise.
4394         * testsuite/ext/rope/pthread7-rope.cc: Likewise.
4395         * testsuite/ext/stdio_filebuf/char/10063-2.cc: Likewise.
4396         * testsuite/22_locale/ctype/is/wchar_t/1.cc: Likewise.
4397         * testsuite/22_locale/ctype/is/char/1.cc: Likewise.
4398         * testsuite/22_locale/time_put/put/char/12439_1.cc: Likewise.
4399         * testsuite/22_locale/time_put/put/char/12439_3.cc: Likewise.
4400         * testsuite/22_locale/locale/cons/2.cc: Likewise.
4401         * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
4402         * testsuite/22_locale/locale/cons/29217.cc: Likewise.
4403         * testsuite/22_locale/locale/global_locale_objects/14071.cc: Likewise.
4404         * testsuite/22_locale/locale/global_locale_objects/2.cc: Likewise.
4405         * testsuite/tr1/6_containers/unordered_multimap/
4406         requirements/iterator_null_neg.cc: Likewise.
4407         * testsuite/tr1/6_containers/unordered_multiset/
4408         requirements/iterator_null_neg.cc: Likewise.
4409         * testsuite/29_atomics/atomic_address/cons/single_value.cc: Likewise.
4410         * testsuite/29_atomics/atomic_address/cons/aggregate.cc: Likewise.
4411         * testsuite/23_containers/multimap/23781.cc: Likewise.
4412         * testsuite/23_containers/set/23781.cc: Likewise.
4413         * testsuite/23_containers/multiset/23781.cc: Likewise.
4414         * testsuite/23_containers/list/pthread1.cc: Likewise.
4415         * testsuite/23_containers/list/23781.cc: Likewise.
4416         * testsuite/23_containers/map/pthread6.cc: Likewise.
4417         * testsuite/23_containers/map/23781.cc: Likewise.
4418         * testsuite/util/regression/rand/priority_queue/
4419         rand_regression_test.hpp: Likewise.
4420         * testsuite/util/regression/rand/priority_queue/
4421         container_rand_regression_test.tcc: Likewise.
4422         * testsuite/util/regression/rand/assoc/
4423         rand_regression_test.hpp: Likewise.
4424         * testsuite/util/regression/rand/assoc/
4425         container_rand_regression_test.tcc: Likewise.
4426         * testsuite/util/testsuite_hooks.cc: Likewise.
4427         * testsuite/util/testsuite_io.h: Likewise.
4428         * testsuite/util/testsuite_iterators.h: Likewise.
4429         * testsuite/util/replacement_memory_operators.h: Likewise.
4430         * testsuite/util/testsuite_allocator.h: Likewise.
4431         * testsuite/util/testsuite_performance.h: Likewise.
4433 2010-06-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
4435         * testsuite/tr1/2_general_utilities/shared_ptr/cons/pointer.cc: Fix
4436         which tests are run.
4437         * testsuite/20_util/shared_ptr/cons/pointer.cc: Likewise.
4439 2010-06-01  Maxim Kuvyrkov  <maxim@codesourcery.com>
4441         * acinclude.m4, configure.host: Support Bionic C library.
4442         * configure: Regenerate.
4443         * config/os/bionic/ctype_base.h, config/os/bionic/ctype_inline.h,
4444         * config/os/bionic/ctype_noincline.h, config/os/bionic/os_defines.h:
4445         New files, based on config/os/newlib/*.
4447 2010-05-31  Jonathan Wakely  <jwakely.gcc@gmail.com>
4449         PR libstdc++/43820
4450         * include/bits/shared_ptr_base.h: Require complete type.
4451         * include/tr1/shared_ptr.h: Likewise.
4452         * testsuite/20_util/shared_ptr/cons/43820.cc: New.
4453         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820.cc: New.
4455 2010-05-31  Paolo Carlini  <paolo.carlini@oracle.com>
4457         * include/bits/basic_string.h (front, back): Add.
4458         * include/debug/string: Adjust.
4459         * include/ext/vstring.h (front, back): Tweak the implementation
4460         to follow more closely the letter of the specs.
4461         * testsuite/21_strings/basic_string/element_access/char/
4462         front_back.cc: New.
4463         * testsuite/21_strings/basic_string/element_access/wchar_t/
4464         front_back.cc: Likewise.
4465         * config/abi/pre/gnu.ver: Export new symbols.
4466         * testsuite/util/testsuite_abi.cc: Adjust.
4467         * configure.ac: Bump minor version to 6:15:0.
4468         * configure: Regenerate.
4470 2010-05-28  Paolo Carlini  <paolo.carlini@oracle.com>
4472         * include/bits/stl_vector.h (vector<>::data): Fix return type
4473         in c++0x mode.
4474         * testsuite/23_containers/vector/requirements/dr438/
4475         assign_neg.cc: Adjust dg-error line number.
4476         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
4477         Likewise.
4478         * testsuite/23_containers/vector/requirements/dr438/
4479         constructor_1_neg.cc: Likewise.
4480         * testsuite/23_containers/vector/requirements/dr438/
4481         constructor_2_neg.cc: Likewise.
4483 2010-05-27  Jason Merrill  <jason@redhat.com>
4485         Revert:
4486         PR libstdc++/42832
4487         * include/std/functional (function<>::swap): Perform bytewise
4488         swap of _M_functor.
4489         * include/tr1/functional (function<>::swap): Likewise.
4491 2010-05-27  Paolo Carlini  <paolo.carlini@oracle.com>
4493         PR libstdc++/40497
4494         * include/bits/cpp_type_traits.h (__is_iterator): Add.
4495         * include/bits/stl_iterator_base_funcs.h (next, prev): Use it.
4496         * testsuite/24_iterators/operations/40497.cc: New.
4498 2010-05-21  Paolo Carlini  <paolo.carlini@oracle.com>
4500         PR libstdc++/25306
4501         * include/bits/stl_algobase.h (fill_n): Use a properly typed __niter
4502         initialized to __n.
4503         * include/bits/stl_algo.h (generate_n): Likewise.
4504         * testsuite/25_algorithms/fill_n/25306.cc: New.
4505         * testsuite/25_algorithms/generate_n/25306.cc: Likewise.
4507 2010-05-21  Joseph Myers  <joseph@codesourcery.com>
4509         * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Use GNU locale model for
4510         glibc 2.3 and later, but not uClibc, without an execution test.
4511         * configure: Regenerate.
4512         * doc/xml/manual/configure.xml, doc/xml/manual/prerequisites.xml,
4513         doc/xml/faq.xml: Update.
4515 2010-05-21  Paolo Carlini  <paolo.carlini@oracle.com>
4517         * include/tr1/functional: Use std::__addressof.
4518         * include/tr1/hashtable_policy.h: Likewise.
4520 2010-05-20  Paolo Carlini  <paolo.carlini@oracle.com>
4522         PR libstdc++/41792
4523         * include/tr1_impl/array: Use std::__addressof.
4524         * include/std/functional (reference_wrapper): Likewise.
4525         * include/ext/throw_allocator.h: Likewise.
4526         * include/ext/pool_allocator.h: Likewise.
4527         * include/ext/bitmap_allocator.h: Likewise.
4528         * include/ext/new_allocator.h: Likewise.
4529         * include/ext/malloc_allocator.h: Likewise.
4530         * include/ext/array_allocator.h: Likewise.
4531         * include/ext/mt_allocator.h: Likewise.
4532         * include/ext/extptr_allocator.h: Likewise.
4533         * include/bits/stl_list.h: Likewise.
4534         * include/bits/hashtable_policy.h: Likewise.
4535         * include/bits/forward_list.h: Likewise.
4536         * include/bits/stl_uninitialized.h: Likewise.
4537         * include/bits/list.tcc: Likewise.
4538         * include/bits/stl_construct.h: Likewise.
4539         * include/bits/stl_tree.h: Likewise.
4540         * testsuite/20_util/reference_wrapper/41792.cc: New.
4541         * testsuite/23_containers/unordered_map/requirements/
4542         explicit_instantiation/4.cc: Likewise.
4543         * testsuite/23_containers/multimap/requirements/
4544         explicit_instantiation/4.cc: Likewise.
4545         * testsuite/23_containers/set/requirements/
4546         explicit_instantiation/4.cc: Likewise.
4547         * testsuite/23_containers/unordered_multimap/requirements/
4548         explicit_instantiation/4.cc: Likewise.
4549         * testsuite/23_containers/forward_list/requirements/
4550         explicit_instantiation/4.cc: Likewise.
4551         * testsuite/23_containers/unordered_set/requirements/
4552         explicit_instantiation/4.cc: Likewise.
4553         * testsuite/23_containers/vector/requirements/
4554         explicit_instantiation/4.cc: Likewise.
4555         * testsuite/23_containers/deque/requirements/
4556         explicit_instantiation/4.cc: Likewise.
4557         * testsuite/23_containers/multiset/requirements/
4558         explicit_instantiation/4.cc: Likewise.
4559         * testsuite/23_containers/list/requirements/
4560         explicit_instantiation/4.cc: Likewise.
4561         * testsuite/23_containers/unordered_multiset/requirements/
4562         explicit_instantiation/4.cc: Likewise.
4563         * testsuite/23_containers/map/requirements/
4564         explicit_instantiation/4.cc: Likewise.
4565         * testsuite/23_containers/array/requirements/
4566         explicit_instantiation/3.cc: Likewise.
4567         * testsuite/23_containers/forward_list/requirements/
4568         dr438/assign_neg.cc: Adjust dg-error line numbers.
4569         * testsuite/23_containers/forward_list/requirements/dr438/
4570         insert_neg.cc: Likewise.
4571         * testsuite/23_containers/forward_list/requirements/dr438/
4572         constructor_1_neg.cc: Likewise.
4573         * testsuite/23_containers/forward_list/requirements/dr438/
4574         constructor_2_neg.cc: Likewise.
4575         * testsuite/23_containers/list/requirements/dr438/
4576         assign_neg.cc: Likewise.
4577         * testsuite/23_containers/list/requirements/dr438/
4578         insert_neg.cc: Likewise.
4579         * testsuite/23_containers/list/requirements/dr438/
4580         constructor_1_neg.cc: Likewise.
4581         * testsuite/23_containers/list/requirements/dr438/
4582         constructor_2_neg.cc: Likewise.
4584 2010-05-20  Peter Dimov  <pdimov@pdimov.com>
4585             Paolo Carlini  <paolo.carlini@oracle.com>
4587         * include/bits/move.h (__addressof, addressof): Add.
4588         * testsuite/util/testsuite_api.h (struct OverloadedAddress): Add.
4589         * testsuite/20_util/addressof/requirements/
4590         explicit_instantiation.cc: New.
4591         * testsuite/20_util/addressof/1.cc: Likewise.
4593 2010-05-20  Paolo Carlini  <paolo.carlini@oracle.com>
4595         * include/bits/stl_pair.h (pair<>::pair(const pair&)): Defaulted
4596         in C++0x mode.
4597         (pair<>::operator=(const pair<>&)): Add in C++0x mode.
4598         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
4599         line number.
4601 2010-05-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
4603         * testsuite/30_threads/future/members/wait.cc (wait): Rename.
4604         * testsuite/30_threads/shared_future/members/wait.cc (wait): Likewise.
4606 2010-05-18  Eelis van der Weegen  <gcc-bugzilla@contacts.eelis.net>
4608         PR libstdc++/44190
4609         * include/debug/vector (vector<>::resize): Call
4610         _M_update_guaranteed_capacity.
4611         * testsuite/23_containers/vector/capacity/44190.cc: New.
4613 2010-05-17  Paolo Carlini  <paolo.carlini@oracle.com>
4615         * include/std/functional (result_of): Move...
4616         * include/std/type_traits: ... here.
4617         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
4618         line number.
4620 2010-05-12  Jason Merrill  <jason@redhat.com>
4622         * testsuite/20_util/auto_ptr/assign_neg.cc: Expect template
4623         candidate messages.
4624         * testsuite/20_util/unique_ptr/assign/assign_neg.cc: Likewise.
4625         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
4627 2010-05-11  Silvius Rus  <silvius.rus@gmail.com>
4629         PR libstdc++/43259
4630         * include/profile/impl/profiler_algos.h: New.
4631         * include/Makefile.am: Add.
4632         * include/Makefile.in: Regenerate.
4633         * include/profile/impl/profiler.h
4634         (_GLIBCXX_PROFILE_DEFINE_UNINIT_DATA): Add.
4635         * include/profile/impl/profiler_trace.h
4636         (__mutex_t, __lock, __unlock): Remove.
4637         (__lock_object_table, __lock_stack_table): Remove. Replace uses with
4638         calls to __gnu_cxx::__mutex::lock.
4639         (__unlock_object_table, __unlock_stack_table): Remove. Replace uses
4640         with calls to __gnu_cxx::__mutex::unlock.
4641         (__warn, __cost_factor_writer, __cost_factor_setter): Add.
4642         * testsuite/ext/profile/profiler_algos.cc: New.
4644 2010-05-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
4646         * libsupc++/exception_ptr.h (make_exception_ptr): Add.
4647         * testsuite/18_support/exception_ptr/make_exception_ptr.cc: New.
4649 2010-05-06  Jason Merrill  <jason@redhat.com>
4651         * config/abi/pre/gnu.ver: Move decltype(nullptr) into CXXABI_1.3.5.
4652         * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.5.
4654         * config/abi/pre/gnu.ver: Add typeinfo for decltype(nullptr).
4656 2010-05-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
4658         * include/bits/basic_string.h: Escape class names in doxygen docs.
4660 2010-05-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
4662         PR libstdc++/44014
4663         * include/bits/stringfwd.h: Add doxygen comments and new group.
4664         * include/bits/basic_string.h: Add to new doxygen group.
4665         * doc/doxygen/user.cfg.in (ALIASES): Link to correct group.
4667 2010-05-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4669         * configure.host: Removed irix[1-6], irix[1-5].*, irix6.[0-4]*
4670         support.
4671         * config/os/irix/irix5.2: Removed.
4673 2010-05-05  Paolo Carlini  <paolo.carlini@oracle.com>
4675         * testsuite/23_containers/vector/bool/capacity/29134.cc: Adjust
4676         for profile-mode too.
4677         * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
4678         Likewise.
4680 2010-05-05  Paolo Carlini  <paolo.carlini@oracle.com>
4682         * include/profile/unordered_map (unordered_map<>::insert(_InputIter,
4683         _InputIter), unordered_multimap<>::insert(_InputIter, _InputIter)):
4684         Fix typo, don't call base() on __first and __last.
4686 2010-05-05  Paolo Carlini  <paolo.carlini@oracle.com>
4688         Fix profile-mode vs -std=c++0x
4689         * include/profile/impl/profiler_trace.h: Do not include the
4690         whole <algorithm>, include <bits/stl_heap.h> (additionally
4691         to <bits/stl_algobase.h>).
4692         (__write_cost_factors): Replace std::for_each with open-coding.
4693         (__set_cost_factors): Likewise.
4694         (__report): Likewise; use std::make_heap / std::sort_heap
4695         instead of std::sort.
4696         (__report_cost_factors): Replace std::remove with open-coding.
4697         (__warn, __cost_factor_writer, __cost_factor_setter): Remove.
4699 2010-05-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4701         PR other/43620
4702         * configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
4703         * configure: Regenerate.
4704         * Makefile.in: Regenerate.
4705         * doc/Makefile.in: Regenerate.
4706         * include/Makefile.in: Regenerate.
4707         * libsupc++/Makefile.in: Regenerate.
4708         * po/Makefile.in: Regenerate.
4709         * python/Makefile.in: Regenerate.
4710         * src/Makefile.in: Regenerate.
4711         * testsuite/Makefile.in: Regenerate.
4713 2010-05-01  Jonathan Wakely  <jwakely.gcc@gmail.com>
4715         * doc/xml/faq.xml: Fix anachronisms.
4716         * doc/xml/manual/intro.xml (Make): Tweak grammar and whitespace.
4717         * doc/xml/manual/support.xml (NULL): Use inline <code> element
4718         instead of <programlisting> block.
4719         * doc/html/*: Regenerate.
4721 2010-04-30  Paolo Carlini  <paolo.carlini@oracle.com>
4723         * include/bits/stl_pair.h (piecewise_construct_t,
4724         pair<>::pair(piecewise_construct_t, tuple, tuple)): Add.
4725         (pair<>::__cons, pair<>::__do_cons): Declare.
4726         (__decay_and_strip, __strip_reference_wrapper): Move...
4727         * include/std/type_traits: ... here.
4728         * include/std/functional (_Index_tuple, _Build_index_tuple): Move...
4729         * include/std/tuple: ... here.
4730         (pack_arguments): Add.
4731         (pair<>::__cons, pair<>::__do_cons): Define.
4732         * testsuite/20_util/tuple/creation_functions/pack_arguments.cc: New.
4733         * testsuite/20_util/pair/piecewise.cc: Likewise.
4734         * testsuite/20_util/tuple/cons/big_tuples.cc: Include <utility>.
4735         * testsuite/20_util/tuple/cons/constructor.cc: Likewise.
4736         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
4737         dg-error line numbers.
4738         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
4739         Likewise.
4740         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
4742 2010-04-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
4744         PR libstdc++/43865
4745         * include/c_global/cstdlib (abort, exit): _GLIBCXX_NORETURN typo.
4747 2010-04-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
4749         * doc/xml/manual/status_cxx200x.xml: Update quick_exit status.
4750         * doc/html/*: Regenerate.
4752 2010-04-27  Fabien Chêne  <fabien.chene@gmail.com>
4754         * testsuite/util/testsuite_error.h: Add empty default constructor
4755         to __gnu_test::test_category and
4756         __gnu_test::test_derived_category.
4757         * src/future.cc: Add empty default constructor to
4758         future_error_category.
4759         * src/system_error.cc: Add default ctor to generic_error_category
4760         and system_error_category.
4762 2010-04-27  Alexander Monakov  <amonakov@ispras.ru>
4764         * testsuite/22_locale/codecvt/unshift/char/1.cc (test01): Clarify size
4765         definition.  Use memcpy and memcmp to avoid access beyond allocated
4766         memory.
4768 2010-04-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
4770         * doc/xml/manual/status_cxx200x.xml: Update to match n3092.
4771         * doc/html/*: Regenerate.
4773 2010-04-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
4775         * doc/xml/manual/status_cxx200x.xml: Update Threads status.
4776         * doc/html/manual/status.html: Regenerate.
4778 2010-04-24  Jonathan Wakely  <jwakely.gcc@gmail.com>
4780         * include/bits/unique_ptr (unique_ptr::pointer): Use deleter's
4781         pointer type if it exists.
4782         * testsuite/20_util/unique_ptr/requirements/pointer_type.cc: New.
4783         * testsuite/20_util/unique_ptr/assign/assign_neg.cc: Adjust.
4784         * testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Adjust.
4786 2010-04-22  Johannes Singler  <singler@kit.edu>
4788         * include/parallel/partition.h (__parallel_partition):
4789         Improve scalability by:
4790         -introducing new variables __leftold, __rightold, __dist, thus
4791         -getting rid of omp lock by using atomic operations
4792         -getting rid of two omp barriers
4794 2010-04-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
4796         * doc/xml/faq.xml: Link to manual.
4797         * doc/xml/manual/using.xml: Expand dynamic libraries section.
4798         * doc/xml/manual/strings.xml: Mention shrink_to_fit() member.
4799         * doc/xml/manual/prerequisites.xml: Link to doxygen requirements.
4800         * doc/xml/manual/appendix_contributing.xml: Update Bash version.
4801         * doc/html/*: Regenerate.
4803 2010-04-13  Ian Lance Taylor  <iant@google.com>
4805         * include/backward/hash_map: Don't #include "backward_warning.h"
4806         if _GLIBCXX_PERMIT_BACKWARD_HASH is defined.
4807         * include/backward/hash_set: Likewise.
4809 2010-04-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4811         * configure.host (os_include_dir): Removed solaris2.7 support.
4812         * crossconfig.m4 (GLIBCXX_CROSSCONFIG): Likewise.
4813         * configure: Regenerate.
4815 2010-04-06  Matthias Klose  <doko@ubuntu.com>
4817         * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Show test result.
4818         * configure: Regenerate.
4819         * doc/xml/manual/configure.xml, doc/html/manual/configure.html:
4820         Document --enable-libstdcxx-time as the short form for
4821         --enable-libstdcxx-time=yes.
4823 2010-04-03  Paolo Carlini  <paolo.carlini@oracle.com>
4825         * include/bits/basic_string.h: Fix pasto in comment.
4826         * include/ext/vstring.h: Likewise.
4828 2010-04-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4830         * Makefile.in: Regenerate.
4831         * aclocal.m4: Regenerate.
4832         * doc/Makefile.in: Regenerate.
4833         * include/Makefile.in: Regenerate.
4834         * libsupc++/Makefile.in: Regenerate.
4835         * po/Makefile.in: Regenerate.
4836         * python/Makefile.in: Regenerate.
4837         * src/Makefile.in: Regenerate.
4838         * testsuite/Makefile.in: Regenerate.
4840 2010-03-30  Johannes Singler  <singler@kit.edu>
4842         * include/parallel/random_shuffle.h
4843         (__parallel_random_shuffle_drs) : Take as many threads as
4844         possible, i. e. favor parallelism over cache efficiency.
4845         Use own PRNG also for the 1 thread case.
4847 2010-03-30  Paolo Carlini  <paolo.carlini@oracle.com>
4849         * include/debug/unordered_map: Clean-up includes and guards.
4850         * include/debug/unordered_set: Likewise.
4851         * include/debug/list: Likewise.
4852         * include/profile/unordered_map: Likewise.
4853         * include/profile/unordered_set: Likewise.
4855 2010-03-29  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
4857         PR target/43458
4858         * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
4859         Xfail hppa*-*-hpux*.
4861 2010-03-26  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4863         * doc/xml/manual/profile_mode.xml (Profile Diagnostics): Correct
4864         cols.
4865         * doc/xml/manual/using.xml (C++ 1998 Library Headers): Add missing
4866         c5 colspec.
4867         (C++ 1998 Library Headers for C Library Facilities): Likewise.
4868         (C++ 200x Library Headers): Likewise.
4870 2010-03-25  Paolo Carlini  <paolo.carlini@oracle.com>
4872         * include/bits/unordered_map.h (operator==, operator!=): Add per N3068.
4873         * include/bits/unordered_set.h (operator==, operator!=): Likewise.
4874         * include/debug/unordered_map (operator==, operator!=): Likewise.
4875         * include/debug/unordered_set: Likewise.
4876         * include/profile/unordered_map: Likewise.
4877         * include/profile/unordered_set: Likewise.
4878         * testsuite/23_containers/unordered_map/operators/1.cc: New.
4879         * testsuite/23_containers/unordered_multimap/operators/1.cc: Likewise.
4880         * testsuite/23_containers/unordered_multimap/operators/2.cc: Likewise.
4881         * testsuite/23_containers/unordered_set/operators/1.cc: Likewise.
4882         * testsuite/23_containers/unordered_multiset/operators/1.cc: Likewise.
4884 2010-03-25  John Lakos  <jlakos@bloomberg.net>
4885             Pablo Halpern  <phalpern@halpernwightsoftware.com>
4886             Paolo Carlini  <paolo.carlini@oracle.com>
4888         * include/bits/hashtable_policy.h (struct _Equality_base): Add.
4889         * include/bits/hashtable.h (_Hashtable<>): Derive from the latter.
4891 2010-03-23  Paolo Carlini  <paolo.carlini@oracle.com>
4893         * testsuite/util/testsuite_tr1.h (NType, TType, SLType, PODType): Add.
4894         * testsuite/20_util/is_trivial/value.cc: Adjust.
4895         * testsuite/20_util/is_standard_layout/value.cc: Likewise.
4896         * testsuite/20_util/is_pod/value.cc: Likewise.
4898 2010-03-23  Paolo Carlini  <paolo.carlini@oracle.com>
4900         * testsuite/20_util/is_trivial/value.cc: New.
4901         * testsuite/20_util/is_standard_layout/value.cc: Likewise.
4902         * testsuite/20_util/is_pod/value.cc: Extend.
4904 2010-03-23  Paolo Carlini  <paolo.carlini@oracle.com>
4906         * include/bits/stl_algobase.h (lower_bound(_ForwardIterator,
4907         _ForwardIterator, const _Tp&, _Compare)): Move...
4908         * include/bits/stl_algo.h: ... here.
4910 2010-03-22  Johannes Singler  <singler@kit.edu>
4912         * include/parallel/numeric (inner_product, partial_sum):
4913         Precede subsequent call with _GLIBCXX_STD_P:: to avoid ambiguity
4914         between __gnu_parallel:: and std::
4915         * include/parallel/algobase.h (equal): Likewise.
4916         * include/parallel/algo.h (find_first_of, search_n, merge, nth_element,
4917         partial_sort, max_element, min_element): Likewise.
4918         * include/parallel/partial_sum.h (__parallel_partial_sum_linear):
4919         Qualify accumulate call with __gnu_parallel::.
4921 2010-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
4923         * include/parallel/base.h (_PseudoSequence): Do not forward declare.
4924         (_VoidFunctor): Remove, unused.
4925         (__median_of_three_iterators): Take __comp by value.
4926         (_PseudoSequenceIterator<>::operator++(int)): Do not const qualify
4927         the return type.
4928         (_PseudoSequenceIterator<>::operator!=): Fix return type to bool.
4930 2010-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
4932         * include/parallel/base.h (_Less): Use std::less.
4933         (_Plus): Likewise use std::plus.
4934         (_Multiplies): Likewise use std::multiplies.
4935         * include/parallel/numeric: Adjust.
4937 2010-03-19  Paolo Carlini  <paolo.carlini@oracle.com>
4939         * testsuite/17_intro/freestanding.cc: Avoid -Wall warnings.
4941 2010-03-19  Rodolfo Lima  <rodolfo@rodsoft.org>
4943         * include/bits/shared_ptr.h (shared_ptr(unique_ptr&&),
4944         shared_ptr(auto_ptr&&)): Remove explicit specifier (as per DR 925).
4945         * include/bits/shared_ptr_base.h: Likewise.
4946         * testsuite/20_util/shared_ptr/creation/dr925.cc: New.
4948 2010-03-19  Paolo Carlini  <paolo.carlini@oracle.com>
4950         * include/bits/random.tcc: Minor formatting changes.
4952 2010-03-19  Paolo Carlini  <paolo.carlini@oracle.com>
4954         * include/bits/stl_algo.h (shuffle): Fix typo in signature.
4955         * include/bits/algorithmfwd.h: Adjust.
4956         * testsuite/25_algorithms/shuffle/requirements/
4957         explicit_instantiation/2.cc: Likewise.
4958         * testsuite/25_algorithms/shuffle/requirements/
4959         explicit_instantiation/pod.cc: Likewise.
4961 2010-03-19  Paolo Carlini  <paolo.carlini@oracle.com>
4963         * include/bits/stl_algo.h (shuffle): Add, per D3056.
4964         (random_shuffle): Fix signature in C++0x mode.
4965         (lower_bound, __lg): Move...
4966         * include/bits/stl_algobase.h: ... here.
4967         * include/bits/algorithmfwd.h: Adjust.
4968         * include/parallel/algorithmfwd.h: Likewise.
4969         * include/parallel/algo.h: Likewise.
4970         * include/bits/hashtable_policy.h (__lower_bound): Remove,
4971         adjust callers.
4972         * include/tr1/hashtable_policy.h (__lower_bound): Likewise.
4973         * include/bits/random.tcc (__detail::__transform): Add,
4974         adjust std::transform callers; don't include <algorithm>.
4975         * testsuite/25_algorithms/shuffle/1.cc: Add.
4976         * testsuite/25_algorithms/shuffle/requirements/
4977         explicit_instantiation/2.cc: Likewise.
4978         * testsuite/25_algorithms/shuffle/requirements/
4979         explicit_instantiation/pod.cc: Likewise.
4981         * include/bits/random.h: Add comments.
4983 2010-03-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
4985         * doc/xml/manual/debug_mode.xml: Correct debug headers.
4987 2010-03-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
4989         PR libstdc++/43397
4990         * include/std/functional (_Mem_fn): Use perfect forwarding.
4991         * testsuite/20_util/function/43397.cc: New.
4993 2010-03-16  Paolo Carlini  <paolo.carlini@oracle.com>
4995         PR libstdc++/43394
4996         * include/parallel/compatibility.h: Add __k8 and __core2 among the
4997         i386 targets supporting atomic operations.
4999 2010-03-16  Paolo Carlini  <paolo.carlini@oracle.com>
5001         * include/backward/hash_map: Use consistently the _BACKWARD_*
5002         prefix for the include guard.
5003         * include/backward/hash_fun.h: Likewise.
5004         * include/backward/hashtable.h: Likewise.
5005         * include/backward/auto_ptr.h: Likewise.
5006         * include/backward/strstream: Likewise.
5007         * include/backward/binders.h: Likewise.
5008         * include/backward/hash_set: Likewise.
5010 2010-03-16  Paolo Carlini  <paolo.carlini@oracle.com>
5012         * include/bits/random.h (operator==(const uniform_int_distribution<>&,
5013         const uniform_int_distribution<>&), operator==(const
5014         uniform_real_distribution<>&, const uniform_real_distribution<>&),
5015         operator==(const lognormal_distribution<>&,
5016         const lognormal_distribution<>&), operator==(const
5017         chi_squared_distribution<>&, const chi_squared_distribution<>&),
5018         operator==(const cauchy_distribution<>&, const cauchy_distribution<>&),
5019         operator==(const fisher_distribution<>&, const fisher_distribution<>&),
5020         operator==(const student_t_distribution<>&,
5021         const student_t_distribution<>&), operator==(const
5022         bernoulli_distribution<>&, const bernoulli_distribution<>&),
5023         operator==(const binomial_distribution<>&, const
5024         binomial_distribution<>&), operator==(const geometric_distribution<>&,
5025         const geometric_distribution<>&), operator==(const
5026         negative_binomial_distribution<>&, const
5027         negative_binomial_distribution<>&), operator==(const
5028         poisson_distribution<>&, const poisson_distribution<>&),
5029         operator==(const exponential_distribution<>&,
5030         const exponential_distribution<>&), operator==(const
5031         gamma_distribution<>&, const gamma_distribution<>&), operator==(const
5032         weibull_distribution<>&, const weibull_distribution<>&),
5033         operator==(const extreme_value_distribution<>&,
5034         const extreme_value_distribution<>&), operator==(const
5035         discrete_distribution<>&, const discrete_distribution<>&),
5036         operator==(const piecewise_constant_distribution<>&,
5037         const piecewise_constant_distribution<>&), operator==(const
5038         piecewise_linear_distribution<>&, const
5039         piecewise_linear_distribution<>&)): Add, likewise for operator!=.
5040         (operator!=(const independent_bits_engine<>&, const
5041         independent_bits_engine<>&), operator!=(const
5042         subtract_with_carry_engine<>&, const subtract_with_carry_engine<>&),
5043         operator!=(const discard_block_engine<>&, const
5044         discard_block_engine<>&), operator!=(const mersenne_twister_engine<>&,
5045         const mersenne_twister_engine<>&), operator!=(const
5046         linear_congruential_engine<>&, const linear_congruential_engine<>&),
5047         operator!=(const shuffle_order_engine<>&, const
5048         shuffle_order_engine<>&): Add.
5049         * include/bits/random.tcc (operator==(const normal_distribution<>&,
5050         const normal_distribution<>&)): Add.
5051         * testsuite/26_numerics/random/uniform_real_distribution/operators/
5052         inequal.cc: New.
5053         * testsuite/26_numerics/random/uniform_real_distribution/operators/
5054         equal.cc: Likewise.
5055         * testsuite/26_numerics/random/piecewise_constant_distribution/
5056         operators/inequal.cc: Likewise.
5057         * testsuite/26_numerics/random/piecewise_constant_distribution/
5058         operators/equal.cc: Likewise.
5059         * testsuite/26_numerics/random/chi_squared_distribution/operators/
5060         inequal.cc: Likewise.
5061         * testsuite/26_numerics/random/chi_squared_distribution/operators/
5062         equal.cc: Likewise.
5063         * testsuite/26_numerics/random/normal_distribution/operators/
5064         inequal.cc: Likewise.
5065         * testsuite/26_numerics/random/normal_distribution/operators/
5066         equal.cc: Likewise.
5067         * testsuite/26_numerics/random/uniform_int_distribution/operators/
5068         inequal.cc: Likewise.
5069         * testsuite/26_numerics/random/uniform_int_distribution/operators/
5070         equal.cc: Likewise.
5071         * testsuite/26_numerics/random/poisson_distribution/operators/
5072         inequal.cc: Likewise.
5073         * testsuite/26_numerics/random/poisson_distribution/operators/
5074         equal.cc: Likewise.
5075         * testsuite/26_numerics/random/bernoulli_distribution/operators/
5076         inequal.cc: Likewise.
5077         * testsuite/26_numerics/random/bernoulli_distribution/operators/
5078         equal.cc: Likewise.
5079         * testsuite/26_numerics/random/discrete_distribution/operators/
5080         inequal.cc: Likewise.
5081         * testsuite/26_numerics/random/discrete_distribution/operators/
5082         equal.cc: Likewise.
5083         * testsuite/26_numerics/random/weibull_distribution/operators/
5084         inequal.cc: Likewise.
5085         * testsuite/26_numerics/random/weibull_distribution/operators/
5086         equal.cc: Likewise.
5087         * testsuite/26_numerics/random/independent_bits_engine/operators/
5088         inequal.cc: Likewise.
5089         * testsuite/26_numerics/random/subtract_with_carry_engine/operators/
5090         inequal.cc: Likewise.
5091         * testsuite/26_numerics/random/discard_block_engine/operators/
5092         inequal.cc: Likewise.
5093         * testsuite/26_numerics/random/cauchy_distribution/operators/
5094         inequal.cc: Likewise.
5095         * testsuite/26_numerics/random/cauchy_distribution/operators/
5096         equal.cc: Likewise.
5097         * testsuite/26_numerics/random/negative_binomial_distribution/
5098         operators/inequal.cc: Likewise.
5099         * testsuite/26_numerics/random/negative_binomial_distribution/
5100         operators/equal.cc: Likewise.
5101         * testsuite/26_numerics/random/gamma_distribution/operators/
5102         inequal.cc: Likewise.
5103         * testsuite/26_numerics/random/gamma_distribution/operators/
5104         equal.cc: Likewise.
5105         * testsuite/26_numerics/random/mersenne_twister_engine/operators/
5106         inequal.cc: Likewise.
5107         * testsuite/26_numerics/random/fisher_f_distribution/operators/
5108         inequal.cc: Likewise.
5109         * testsuite/26_numerics/random/fisher_f_distribution/operators/
5110         equal.cc: Likewise.
5111         * testsuite/26_numerics/random/exponential_distribution/operators/
5112         inequal.cc: Likewise.
5113         * testsuite/26_numerics/random/exponential_distribution/operators/
5114         equal.cc: Likewise.
5115         * testsuite/26_numerics/random/binomial_distribution/operators/
5116         inequal.cc: Likewise.
5117         * testsuite/26_numerics/random/binomial_distribution/operators/
5118         equal.cc: Likewise.
5119         * testsuite/26_numerics/random/lognormal_distribution/operators/
5120         inequal.cc: Likewise.
5121         * testsuite/26_numerics/random/lognormal_distribution/operators/
5122         equal.cc: Likewise.
5123         * testsuite/26_numerics/random/extreme_value_distribution/operators/
5124         inequal.cc: Likewise.
5125         * testsuite/26_numerics/random/extreme_value_distribution/operators/
5126         equal.cc: Likewise.
5127         * testsuite/26_numerics/random/piecewise_linear_distribution/
5128         operators/inequal.cc: Likewise.
5129         * testsuite/26_numerics/random/piecewise_linear_distribution/
5130         operators/equal.cc: Likewise.
5131         * testsuite/26_numerics/random/student_t_distribution/operators/
5132         inequal.cc: Likewise.
5133         * testsuite/26_numerics/random/student_t_distribution/operators/
5134         equal.cc: Likewise.
5135         * testsuite/26_numerics/random/linear_congruential_engine/operators/
5136         inequal.cc: Likewise.
5137         * testsuite/26_numerics/random/shuffle_order_engine/operators/
5138         inequal.cc: Likewise.
5139         * testsuite/26_numerics/random/geometric_distribution/operators/
5140         inequal.cc: Likewise.
5141         * testsuite/26_numerics/random/geometric_distribution/operators/
5142         equal.cc: Likewise.
5144 2010-03-15  Paolo Carlini  <paolo.carlini@oracle.com>
5146         * include/bits/forward_list.tcc (_Fwd_list_node_base::
5147         _M_transfer_after): Return _Fwd_list_node_base*.
5148         (forward_list<>::_M_splice_after): Add.
5149         (forward_list<>::insert_after(const_iterator, size_type, const _Tp&),
5150         insert_after(const_iterator, _InputIterator, _InputIterator),
5151         insert_after(const_iterator, initializer_list<>)): Use the above,
5152         implement DR 1278 ([Ready] in Pittsburgh).
5153         * include/bits/forward_list.h (insert_after(const_iterator,
5154         size_type, const _Tp&), insert_after(const_iterator, _InputIterator,
5155         _InputIterator), insert_after(const_iterator, initializer_list<>)):
5156         Only declare.
5157         * testsuite/23_containers/forward_list/modifiers/2.cc: Adjust.
5158         * testsuite/23_containers/forward_list/requirements/dr438/
5159         assign_neg.cc: Adjust dg-error line number.
5160         * testsuite/23_containers/forward_list/requirements/dr438/
5161         insert_neg.cc: Likewise.
5162         * testsuite/23_containers/forward_list/requirements/dr438/
5163         constructor_1_neg.cc: Likewise.
5164         * testsuite/23_containers/forward_list/requirements/dr438/
5165         constructor_2_neg.cc: Likewise.
5167 2010-03-15  Paolo Carlini  <paolo.carlini@oracle.com>
5169         * testsuite/23_containers/forward_list/requirements/dr438/
5170         assign_neg.cc: Adjust dg-error line number.
5171         * testsuite/23_containers/forward_list/requirements/dr438/
5172         constructor_1_neg.cc: Likewise.
5173         * testsuite/23_containers/forward_list/requirements/dr438/
5174         constructor_2_neg.cc: Likewise.
5175         * testsuite/23_containers/forward_list/requirements/dr438/
5176         insert_neg.cc: Likewise.
5177         * testsuite/23_containers/forward_list/capacity/1.cc: Adjust.
5179         Revert:
5180         2008-11-11  Bob Walters  <bob.s.walters@gmail.com>
5182         * include/bits/forward_list.h: Support non-standard pointer types
5183         (_Fwd_list_node_base): Add _Alloc template parameter.
5184         (_Fwd_list_node<>): Likewise.
5185         (_Fwd_list_iterator<>): Likewise.
5186         (_Fwd_list_const_iterator<>): Likewise.
5187         (_Fwd_list_node_base::_M_next, _M_transfer_after, _M_reverse_after):
5188         Use _Alloc<_Tp>::pointer.
5189         (_Fwd_list_iterator<>::_M_node): Use _Node_base::_Pointer.
5190         (_Fwd_list_base<>::_M_get_node, _M_create_node, _M_create_node,
5191         _M_insert_after, _M_put_node, _M_erase_after): Likewise.
5192         (_Fwd_list_const_iterator<>::_M_node): use _Node_base::_Const_pointer.
5193         (forward_list<>): Use __static_pointer_cast in place of static_cast,
5194         and __const_pointer_cast in place of const_cast.
5195         * include/bits/forward_list.tcc
5196         (_Fwd_list_node<>::_M_sort_after): Using _Pointer typedefs in place
5197         of standard pointers, __static_pointer_cast in place of static_cast.
5198         (_Fwd_list_base<>::_Fwd_list_base, _M_insert_after, _M_erase_after):
5199         Likewise.
5200         (forward_list<>::_M_initialize_dispatch, _M_fill_initialize,
5201         splice_after, remove, remove_if, merge): Likewise.
5202         * testsuite/23_containers/forward_list/ext_pointer/modifiers/1.cc: New.
5203         * testsuite/23_containers/forward_list/ext_pointer/modifiers/2.cc:
5204         Likewise.
5205         * testsuite/23_containers/forward_list/ext_pointer/modifiers/3.cc:
5206         Likewise.
5207         * testsuite/23_containers/forward_list/ext_pointer/modifiers/4.cc:
5208         Likewise.
5209         * testsuite/23_containers/forward_list/ext_pointer/modifiers/5.cc:
5210         Likewise.
5211         * testsuite/23_containers/forward_list/ext_pointer/operations/1.cc:
5212         Likewise.
5213         * testsuite/23_containers/forward_list/ext_pointer/operations/2.cc:
5214         Likewise.
5215         * testsuite/23_containers/forward_list/ext_pointer/operations/3.cc:
5216         Likewise.
5217         * testsuite/23_containers/forward_list/ext_pointer/operations/4.cc:
5218         Likewise.
5219         * testsuite/23_containers/forward_list/ext_pointer/operations/5.cc:
5220         Likewise.
5221         * testsuite/23_containers/forward_list/ext_pointer/operations/6.cc:
5222         Likewise.
5223         * testsuite/23_containers/forward_list/ext_pointer/operations/7.cc:
5224         Likewise.
5225         * testsuite/23_containers/forward_list/ext_pointer/requirements/1.cc:
5226         Likewise.
5227         * testsuite/23_containers/forward_list/ext_pointer/requirements/
5228         explicit_instantiation/1.cc: Likewise.
5229         * testsuite/23_containers/forward_list/ext_pointer/requirements/
5230         explicit_instantiation/3.cc: Likewise.
5231         * testsuite/23_containers/forward_list/ext_pointer/1.cc: Likewise.
5233 2010-03-13  Paolo Carlini  <paolo.carlini@oracle.com>
5235         * include/tr1_impl/array (swap(array<>&, array<>&)): Use member swap.
5237         * include/bits/stl_algo.h: Improve comment.
5239 2010-03-12  Benjamin Kosnik  <bkoz@redhat.com>
5241         * scripts/run_doxygen: Adjust.
5242         * doc/doxygen/user.cfg.in: Adjust latex, xml prefs.
5243         * doc/xml/api.xml: Update.
5244         * doc/Makefile.am: Re-do stamp rules.
5245         * doc/Makefile.in: Regenerate.
5247 2010-03-10  Paolo Carlini  <paolo.carlini@oracle.com>
5249         * include/bits/hashtable_policy.h (_Rehash_base<_Prime_rehash_policy,
5250         _Hashtable>::reserve): Add, per DR 1189.
5251         * include/bits/hashtable.h (_Hashtable<>::size_type,
5252         _Hashtable<>::difference_type): Do not typedef from _Allocator.
5253         * testsuite/23_containers/unordered_map/dr1189.cc: New.
5254         * testsuite/23_containers/unordered_set/dr1189.cc: Likewise.
5255         * testsuite/23_containers/unordered_multimap/dr1189.cc: Likewise.
5256         * testsuite/23_containers/unordered_multiset/dr1189.cc: Likewise.
5258 2010-03-08  Paolo Carlini  <paolo.carlini@oracle.com>
5260         Revert:
5261         2010-02-11  Paolo Carlini  <paolo.carlini@oracle.com>
5263         PR libstdc++/41975, DR 579
5264         * include/bits/hashtable.h (_Hashtable<>::_M_erase_node): Remove.
5265         (erase(const_iterator), erase(const_iterator, const_iterator)):
5266         Change return type to void.
5267         * include/debug/unordered_map: Adjust.
5268         * include/debug/unordered_set: Likewise.
5269         * testsuite/util/exception/safety.h: Likewise.
5270         * testsuite/23_containers/unordered_map/erase/1.cc: Likewise.
5271         * testsuite/23_containers/unordered_map/erase/24061-map.cc: Likewise.
5272         * testsuite/23_containers/unordered_set/erase/1.cc:  Likewise.
5273         * testsuite/23_containers/unordered_set/erase/24061-map.cc: Likewise.
5274         * testsuite/23_containers/unordered_multimap/erase/1.cc:  Likewise.
5275         * testsuite/23_containers/unordered_multimap/erase/24061-map.cc:
5276         Likewise.
5277         * testsuite/23_containers/unordered_multiset/erase/1.cc:  Likewise.
5278         * testsuite/23_containers/unordered_multiset/erase/24061-map.cc:
5279         Likewise.
5281 2010-03-04  Paolo Carlini  <paolo.carlini@oracle.com>
5283         * testsuite/util/testsuite_container_traits.h (traits_base): Add
5284         has_throwing_erase trait.
5285         (traits<vector>, traits<deque>): Typedef the latter to true_type.
5286         * testsuite/util/exception/safety.h (generation_prohibited):
5287         Do not test vector::erase and deque::erase: can throw if
5288         either copy constructor or assignment operator of value_type
5289         throws.
5290         * testsuite/23_containers/vector/requirements/exception/
5291         generation_prohibited.cc: Remove xfail.
5292         * testsuite/23_containers/deque/requirements/exception/
5293         generation_prohibited.cc: Likewise.
5295         * include/ext/throw_allocator.h (hash<__gnu_cxx::throw_value_limit>::
5296         operator(), hash<__gnu_cxx::throw_value_random>::operator()): Pass
5297         argument by const ref.
5299         * testsuite/util/testsuite_container_traits.h (traits<map>,
5300         traits<multimap>, traits<set>, traits<multiset>,
5301         traits<unordered_map>, traits<unordered_multimap>,
5302         traits<unordered_set>, traits<unordered_multiset>): Typedef
5303         consistently has_erase and has_insert as true_type.
5305         * testsuite/util/testsuite_container_traits.h
5306         (traits<unordered_map>, traits<unordered_multimap>,
5307         traits<unordered_set>, traits<unordered_multiset>): Do not wrongly
5308         typedef has_size_type_constructor as true_type: the constructor
5309         accepting a size_type actually gets the initial number of
5310         buckets.
5312 2010-03-03  Benjamin Kosnik  <bkoz@redhat.com>
5314         * doc/Makefile.am: Re-organize xml sources.
5315         (doc-latex-doxygen): New.
5316         (doc-pdf-doxygen): New.
5317         (stamp-xml-doxygen, stamp-latex-doxygen): New.
5318         * doc/Makefile.in: Regenerate.
5319         * doc/doxygen/user.cfg.in: Add support here.
5320         * doc/xml/manual/appendix_contributing.xml: Add specifics.
5322         * doc/xml/manual/concurrency.xml: New.
5323         * doc/xml/manual/atomics.xml: New.
5324         * doc/xml/manual/spine.xml: Adjust.
5325         * doc/xml/manual/diagnostics.xml: Adjust.
5327 2010-03-03  Paolo Carlini  <paolo.carlini@oracle.com>
5328             Jonathan Wakely  <jwakely.gcc@gmail.com>
5330         * include/bits/unique_ptr.h (unique_ptr<>::get_deleter): Simplify
5331         return type.
5332         * testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Adjust
5333         dg-error line number.
5334         * testsuite/20_util/unique_ptr/assign/assign_neg.cc: Likewise.
5336 2010-03-02  Paolo Carlini  <paolo.carlini@oracle.com>
5338         * include/debug/bitset (hash): Minor tweaks.
5339         * include/debug/vector (hash): Likewise.
5340         * include/profile/bitset (hash): Likewise.
5341         * include/profile/vector (hash): Likewise.
5343 2010-03-02  Paolo Carlini  <paolo.carlini@oracle.com>
5345         * include/bits/functional_hash.h (_Fnv_hash_base<>::hash): Change
5346         to template.
5347         * include/tr1/functional_hash.h (_Fnv_hash_base<>::hash): Likewise.
5348         * include/bits/vector.tcc (hash): Adjust.
5349         * include/bits/basic_string.h (hash): Likewise.
5350         * include/std/bitset (hash): Likewise.
5351         * src/hash-string-aux.cc (hash): Likewise.
5353 2010-03-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
5355         * include/std/mutex (lock_guard::lock_guard): Do not lock mutex when
5356         adopt_lock_t constructor is used.
5357         * testsuite/30_threads/lock_guard/cons/1.cc: New.
5359 2010-03-02  Paolo Carlini  <paolo.carlini@oracle.com>
5361         * include/bits/stl_bvector.h (hash<vector<bool, _Alloc>>::
5362         operator()(const vector<bool, _Alloc>&)): Move definition...
5363         * include/bits/vector.tcc: ... here.
5365 2010-03-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5367         * testsuite/Makefile.am (check-DEJAGNU): Include de* in normal0
5368         dirs.
5369         * testsuite/Makefile.in: Regenerate.
5371 2010-03-02  Paolo Carlini  <paolo.carlini@oracle.com>
5373         * include/bits/stl_bvector.h (hash<vector<bool, _Alloc>>): Add.
5374         * include/debug/vector (hash<__debug::vector<bool, _Alloc>>):
5375         Likewise.
5376         * include/profile/vector (hash<__profile::vector<bool, _Alloc>>):
5377         Likewise.
5378         * testsuite/23_containers/vector/bool/hash/1.cc: New.
5380         * include/std/bitset (hash<bitset<_Nb>>): Small tweaks.
5381         (hash<bitset<0>>): Add.
5382         * include/debug/bitset (hash<__debug::bitset<_Nb>>): Forward to
5383         hash<bitset<_Nb>>.
5384         * include/profile/bitset (hash<__profile::bitset<_Nb>>): Likewise.
5385         * testsuite/23_containers/bitset/hash/1.cc: Improve.
5387 2010-03-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
5389         PR libstdc++/43230
5390         * testsuite/30_threads/promise/members/set_value3.cc
5391         (tester::~tester): Remove.
5393 2010-03-02  Paolo Carlini  <paolo.carlini@oracle.com>
5395         * include/std/bitset (_Base_bitset<>::_M_getdata()): Add.
5396         (hash<bitset<_Nb>>): Add, use the latter.
5397         * include/debug/bitset (hash<__debug::bitset<_Nb>>): Add.
5398         * include/profile/bitset (hash<__profile::bitset<_Nb>>): Likewise.
5399         * testsuite/23_containers/bitset/hash/1.cc: New.
5401 2010-03-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
5403         PR libstdc++/43183
5404         * include/bits/unique_ptr.h (reset): Fix as per working paper.
5405         (operator*, operator->, operator[], operator bool, release): Use
5406         pointer's null value instead of 0.
5407         * testsuite/20_util/unique_ptr/assign/assign_neg.cc: Adjust.
5408         * testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Adjust.
5409         * testsuite/20_util/unique_ptr/modifiers/43183.cc: New.
5411 2010-03-01  Paolo Carlini  <paolo.carlini@oracle.com>
5413         * include/std/iomanip (get_money, put_money): Add in C++0x mode; tidy.
5414         * testsuite/27_io/manipulators/extended/get_money/char/1.cc: New.
5415         * testsuite/27_io/manipulators/extended/get_money/wchar_t/1.cc:
5416         Likewise.
5417         * testsuite/27_io/manipulators/extended/put_money/char/1.cc: Likewise.
5418         * testsuite/27_io/manipulators/extended/put_money/wchar_t/1.cc:
5419         Likewise.
5421 2010-03-01  Benjamin Kosnik  <bkoz@redhat.com>
5423         * include/bits/atomicfwd_cxx.h: Add typedefs to group.
5425 2010-03-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5427         PR libstdc++/32499
5428         * testsuite/Makefile.am (check-DEJAGNU
5429         $(check_DEJAGNU_normal_targets)): Export AR, RANLIB.
5430         * testsuite/Makefile.in: Regenerate.
5432 2010-02-28  Gerald Pfeifer  <gerald@pfeifer.com>
5434         * doc/html/ext/pb_ds/references.html: Adjust link to SGI's STL
5435         site.
5437 2010-02-28  Paolo Carlini  <paolo.carlini@oracle.com>
5439         * src/hash-long-double-aux.cc (hash<long double>::
5440         operator()(long double)): Hash both -0 and +0 to 0.
5442 2010-02-25  Ed Smith-Rowland  <3dw4rd@verizon.net>
5444         * include/bits/random.tcc (operator<<): Use max_digits10.
5446 2010-02-25  Ed Smith-Rowland  <3dw4rd@verizon.net>
5448         * include/std/limits (__numeric_limits_base::max_digits10,
5449         numeric_limits<>::max_digits10, numeric_limits<>::lowest): Add.
5450         * src/limits.cc: Define max_digits10.
5451         * config/abi/pre/gnu.ver: Adjust.
5452         * testsuite/18_support/numeric_limits/dr559.cc: Test max_digits10
5453         and lowest too.
5454         * testsuite/18_support/numeric_limits/lowest.cc: New.
5455         * testsuite/18_support/numeric_limits/max_digits10.cc: New.
5457 2010-02-25  Paolo Carlini  <paolo.carlini@oracle.com>
5459         * include/bits/functional_hash.h (__hash_combine): Remove.
5460         (_Fnv_hash_base<>::hash(const char*, size_t)): Add defaulted
5461         hash parameter.
5462         (_Fnv_hash::__hash_combine(const _Tp&, size_t)): Add.
5463         * include/std/system_error (hash<system_error>): Adjust.
5464         * src/compatibility-c++0x.cc (hash<system_error>): Likewise.
5466 2010-02-24  Benjamin Kosnik  <bkoz@redhat.com>
5468         * doc/xml/faq.xml: Adjust structure for pdf index.
5469         * doc/xml/manual/mt_allocator.xml: Same.
5470         * doc/xml/manual/allocator.xml: Same.
5471         * doc/xml/manual/ctype.xml: Same.
5472         * doc/xml/manual/numerics.xml: Same.
5473         * doc/xml/manual/codecvt.xml: Same.
5474         * doc/xml/manual/intro.xml: Same.
5475         * doc/xml/manual/shared_ptr.xml: Same.
5476         * doc/xml/manual/status_cxxtr1.xml: Same.
5477         * doc/xml/manual/auto_ptr.xml: Same.
5478         * doc/xml/manual/internals.xml: Same.
5479         * doc/xml/manual/status_cxx1998.xml: Same.
5480         * doc/xml/manual/parallel_mode.xml: Same.
5481         * doc/xml/manual/profile_mode.xml: Same.
5482         * doc/xml/manual/containers.xml: Same.
5483         * doc/xml/manual/io.xml: Same.
5484         * doc/xml/manual/concurrency_extensions.xml: Same.
5485         * doc/xml/manual/appendix_porting.xml: Same.
5486         * doc/xml/manual/utilities.xml: Same.
5487         * doc/xml/manual/support.xml: Same.
5488         * doc/xml/manual/bitmap_allocator.xml: Same.
5489         * doc/xml/manual/configure.xml: Same.
5490         * doc/xml/manual/build_hacking.xml: Same.
5491         * doc/xml/manual/evolution.xml: Same.
5492         * doc/xml/manual/using.xml: Same.
5493         * doc/xml/manual/debug.xml: Same.
5494         * doc/xml/manual/localization.xml: Same.
5495         * doc/xml/manual/strings.xml: Same.
5496         * doc/xml/manual/debug_mode.xml: Same.
5497         * doc/xml/manual/locale.xml: Same.
5498         * doc/xml/manual/extensions.xml: Same.
5499         * doc/xml/manual/appendix_contributing.xml: Same.
5500         * doc/xml/manual/prerequisites.xml: Same.
5501         * doc/xml/manual/messages.xml: Same.
5502         * doc/xml/manual/diagnostics.xml: Same.
5503         * doc/xml/manual/algorithms.xml: Same.
5504         * doc/xml/manual/appendix_free.xml: Same.
5505         * doc/xml/manual/iterators.xml: Same.
5506         * doc/xml/manual/spine.xml: Same.
5507         * doc/xml/manual/status_cxxtr24733.xml: Same.
5508         * doc/xml/manual/status_cxx200x.xml: Same.
5509         * doc/Makefile.am: Refactor.
5510         * doc/Makefile.in: Regenerate.
5512         * include/bits/c++0x_warning.h: Tweak doxygen file markup.
5514 2010-02-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5516         * testsuite/ext/new_allocator/deallocate_global.cc: Require
5517         __cxa_atexit.
5518         * testsuite/ext/throw_allocator/deallocate_global.cc: Likewise.
5520 2010-02-23  Benjamin Kosnik  <bkoz@redhat.com>
5522         * doc/xml/manual/concurrency.xml: Move...
5523         * doc/xml/manual/concurrency_extensions.xml: ...here.
5524         * doc/xml/manual/extensions.xml: Adjust.
5525         * doc/Makefile.am: Adjust.
5526         * doc/Makefile.in: Regenerate.
5528 2010-02-23  Benjamin Kosnik  <bkoz@redhat.com>
5530         * include/bits/random.h: Doxygen group markup fixes.
5532 2010-02-23  Paolo Carlini  <paolo.carlini@oracle.com>
5534         * include/bits/functional_hash.h (struct _Fnv_hash): Rename
5535         to _Fnv_hash_base.
5536         (struct _Fnv_hash): Add, derives from the latter.
5537         (__hash_combine): Add.
5538         (hash<float>::operator()(float), hash<double>::operator()(double)):
5539         Adjust.
5540         * include/bits/basic_string.h (hash<string>, hash<wstring>,
5541         hash<u16string>, hash<u32string>): Adjust.
5542         * src/hash-string-aux.cc: Adjust.
5543         * src/compatibility-c++0x.cc (hash<error_code>): Use __hash_combine.
5544         * include/std/system_error (hash<error_code>): Likewise.
5545         * include/std/thread (struct hash<thread::id>): Add.
5546         * include/tr1/functional_hash.h : Rename to _Fnv_hash_base.
5547         (struct _Fnv_hash): Add, derives from the latter.
5548         (hash<float>::operator()(float), hash<double>::operator()(double)):
5549         Adjust.
5550         * testsuite/30_threads/thread/id/hash.cc: New.
5551         * testsuite/30_threads/thread/cons/assign_neg.cc: Adjust dg-error
5552         line number.
5553         * testsuite/30_threads/thread/cons/copy_neg.cc: Likewise.
5555 2010-02-22  Janis Johnson  <janis187@us.ibm.com>
5557         * src/compatibility-ldbl.cc: Include new hash-long-double-aux.cc.
5559 2010-02-22  Paolo Carlini  <paolo.carlini@oracle.com>
5561         * src/hash-aux.cc: Rename to...
5562         * src/hash-string-aux.cc: ... this.
5563         * src/hash-long-double-aux.cc: New.
5564         * src/hash_c++0x.cc: Adjust.
5565         * src/hash_tr1.cc: Likewise.
5566         * src/compatibility-c++0x.cc: Likewise.
5568 2010-02-22  Benjamin Kosnik  <bkoz@redhat.com>
5570         * doc/xml/class.txml: Adjust biblio markup.
5571         * doc/xml/manual/allocator.xml: Same.
5572         * doc/xml/manual/ctype.xml: Same.
5573         * doc/xml/manual/codecvt.xml: Same.
5574         * doc/xml/manual/backwards_compatibility.xml: Same.
5575         * doc/xml/manual/abi.xml: Same.
5576         * doc/xml/manual/shared_ptr.xml: Same.
5577         * doc/xml/manual/profile_mode.xml: Same.
5578         * doc/xml/manual/using_exceptions.xml: Same.
5579         * doc/xml/manual/locale.xml: Same.
5580         * doc/xml/manual/appendix_contributing.xml: Same.
5581         * doc/xml/manual/messages.xml: Same.
5582         * doc/Makefile.am (DBLATEX_FLAGS): Adjust.
5583         * doc/Makefile.in: Regenerate.
5585 2010-02-22  François Dumont  <francois.cppdevs@free.fr>
5587         * doc/xml/manual/profile_mode.xml: Minor updates and fixes.
5588         * doc/xml/manual/debug_mode.xml: Likewise.
5589         * doc/xml/manual/test.xml: Likewise.
5591 2010-02-22  Paolo Carlini  <paolo.carlini@oracle.com>
5593         * include/tr1_impl/complex (arg): Use std::signbit only when
5594         available.
5596 2010-02-22  Paolo Carlini  <paolo.carlini@oracle.com>
5598         * include/bits/functional_hash.h (hash<string>, hash<wstring>,
5599         hash<u16string>, hash<u32string>, hash<error_code>): Move, per
5600         DR 1182 to...
5601         * include/bits/basic_string.h: ... here.
5602         * include/std/system_error: ... and here, respectively.
5603         * src/hash-aux.cc (hash<long double>::operator()(long double)):
5604         Move definition...
5605         * src/hash_c++0x.cc: ... here, new file.
5606         * src/hash_tr1.cc: ... and here, tweak includes.
5607         * src/compatibility-c++0x.cc (hash, _Fnv_hash): Remove.
5608         * src/Makefile.am: Adjust.
5609         * src/Makefile.in: Regenerate.
5610         * include/std/functional: Include <bits/functexcept.h>.
5611         * include/std/unordered_set: Remove redundant include.
5612         * include/std/unordered_map: Likewise.
5613         * include/tr1/functional_hash.h: Remove spurious trailing semicolon.
5614         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Remove
5615         dg-excess.
5617 2010-02-21  Paolo Carlini  <paolo.carlini@oracle.com>
5619         * include/std/complex (proj): Change return type per DR 1137.
5620         (conj): Copy from tr1_impl, likewise adjust return type.
5621         * include/tr1_impl/complex (conj): Remove.
5622         * include/tr1/complex (conj): Add both overloads.
5623         * testsuite/26_numerics/complex/dr781.cc: Rename to...
5624         * testsuite/26_numerics/complex/dr781_dr1137.cc: ... this, and extend.
5626         * include/tr1_impl/complex (arg): Optimize.
5628 2010-02-21  Paolo Carlini  <paolo.carlini@oracle.com>
5630         * testsuite/20_util/is_trivial/requirements/typedefs.cc: New.
5631         * testsuite/20_util/is_trivial/requirements/
5632         explicit_instantiation.cc: Likewise.
5633         * testsuite/20_util/is_pod/value.cc: Likewise.
5634         * testsuite/20_util/is_pod/requirements/typedefs.cc: Likewise.
5635         * testsuite/20_util/is_pod/requirements/
5636         explicit_instantiation.cc: Likewise.
5637         * testsuite/20_util/is_standard_layout/requiremenents/
5638         typedefs.cc: Likewise.
5639         * testsuite/20_util/is_standard_layout/requiremenents/
5640         explicit_instantiation.cc: Likewise.
5642 2010-02-20  Manuel López-Ibáñez  <manu@gcc.gnu.org>
5644         PR c++/35669
5645         * testsuite/18_support/headers/cstddef/macros.cc: Add
5646         -Wno-conversion-null.
5648 2010-02-19  Paolo Carlini  <paolo.carlini@oracle.com>
5650         * include/tr1_impl/array (array): Add pointer and const_pointer
5651         typedefs in C++0x mode, per DR 1306.
5652         * testsuite/util/testsuite_containers.h (basic_types): Add pointer
5653         and const_pointer typedefs.
5654         (pointer_aware_types): Remove.
5655         * testsuite/util/testsuite_container_traits.h: Adjust.
5657 2010-02-19  Paolo Carlini  <paolo.carlini@oracle.com>
5659         * include/bits/stl_algo.h (for_each): Implement resolution of DR 1110.
5660         * testsuite/25_algorithms/for_each/1.cc: New.
5662 2010-02-19  Paolo Carlini  <paolo.carlini@oracle.com>
5664         * include/bits/shared_ptr_base.h (__weak_ptr): Remove deleted
5665         comparison operators, per DR 1256.
5666         * include/bits/shared_ptr.h (weak_ptr): Likewise.
5667         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust.
5669 2010-02-18  Benjamin Kosnik  <bkoz@redhat.com>
5671         * scripts/run_doxygen: Add shortnames option.
5672         * doc/Makefile.am (doc-man-doxygen): Use it.
5673         (doc-html-doxygen): Use it.
5674         (doc-xml-doxygen): Use it, but default to NO.
5675         (doc-pdf-dblatex): Add.
5676         * doc/Makefile.in: Regenerate.
5677         * doc/doxygen/user.cfg.in: Update filelist.
5678         * include/bits/locale_facets.h: Fix markup warning.
5680 2010-02-18  Benjamin Kosnik  <bkoz@redhat.com>
5682         * doc/xml/manual/using.xml: Update.
5683         * doc/xml/manual/status_cxx1998.xml: Same.
5684         * doc/xml/manual/status_cxx200x.xml: Add link.
5685         * doc/html/*: Regenerate.
5687         * testsuite/17_intro/freestanding.cc: Add.
5689 2010-02-18  Paolo Carlini  <paolo.carlini@oracle.com>
5691         * libsupc++/typeinfo: Add system_header pragma.
5692         * libsupc++/exception: Likewise.
5693         * libsupc++/cxxabi-forced.h: Likewise.
5694         * libsupc++/new: Likewise.
5695         * libsupc++/cxxabi.h: Likewise.
5696         * libsupc++/initializer_list: Likewise.
5698 2010-02-18  Paolo Carlini  <paolo.carlini@oracle.com>
5700         * libsupc++/nested_exception.h: Fix <bits/c++0x_warning.h> include.
5702 2010-02-17  Benjamin Kosnik  <bkoz@redhat.com>
5704         * doc/xml/manual/appendix_contributing.xml: Update markup rules
5705         for quoting and functions.
5707 2010-02-17  Chris Jefferson  <chris@bubblescope.net>
5709         * include/bits/locale_facets.h (__convert_to_v): Add empty
5710         exception-specification.
5712 2010-02-17  Paolo Carlini  <paolo.carlini@oracle.com>
5714         * include/std/limits: Implement resolution of DR 559 (CD1) in
5715         C++0x mode.
5716         * testsuite/18_support/numeric_limits/dr559.cc: New.
5718 2010-02-16  Benjamin Kosnik  <bkoz@redhat.com>
5720         * src/ios_locale.cc: Fixes for -pedantic.
5721         * src/system_error.cc: Same.
5722         * src/locale.cc: Same.
5723         * src/list.cc: Same.
5724         * src/locale_facets.cc: Same.
5725         * src/locale_init.cc: Same.
5726         * src/ios.cc: Same.
5727         * config/locale/darwin/ctype_members.cc: Same.
5728         * config/locale/gnu/collate_members.cc: Same.
5729         * config/locale/gnu/ctype_members.cc: Same.
5730         * config/locale/gnu/c_locale.cc: Same.
5731         * config/locale/gnu/monetary_members.cc: Same.
5732         * config/locale/gnu/time_members.cc: Same.
5733         * config/locale/ieee_1003.1-2001/c_locale.cc: Same.
5734         * config/locale/generic/collate_members.cc: Same.
5735         * config/locale/generic/ctype_members.cc: Same.
5736         * config/locale/generic/c_locale.cc: Same.
5737         * config/locale/generic/monetary_members.cc: Same.
5738         * config/locale/generic/time_members.cc: Same.
5739         * config/io/basic_file_stdio.cc: Same.
5741         * libsupc++/pbase_type_info.cc: Fixes for -fno-rtti.
5742         * libsupc++/pointer_type_info.cc: Same.
5743         * libsupc++/eh_personality.cc: Same.
5745         * include/std/system_error: Throw spacing.
5746         * include/bits/locale_classes.h: Same.
5747         * include/bits/locale_facets.h: Same.
5748         * include/bits/ios_base.h: Same.
5750         * testsuite/17_intro/headers/c++200x/all_no_rtti.cc: New.
5751         * testsuite/17_intro/headers/c++1998/all_no_rtti.cc: New.
5753 2010-02-16  Paolo Carlini  <paolo.carlini@oracle.com>
5755         * include/bits/random.h (linear_congruential_engine(_Sseq&),
5756         mersenne_twister_engine(_Sseq&), subtract_with_carry_engine(_Sseq&)):
5757         Do not enable for the type itself.
5758         (discard_block_engine(_Sseq&), independent_bits_engine(_Sseq&),
5759         shuffle_order_engine(_Sseq&)): Do not enable for the type itself too.
5760         (linear_congruential_engine<>::seed(_Sseq&),
5761         mersenne_twister_engine<>::seed(_Sseq&),
5762         subtract_with_carry_engine<>::seed(_Sseq&)): Use enable_if on the
5763         return type.
5764         (discard_block_engine<>::seed(_Sseq&),
5765         independent_bits_engine<>::seed(_Sseq&),
5766         shuffle_order_engine<>::seed(_Sseq&)): Do not use enable_if.
5767         * include/bits/random.tcc: Adjust definitions.
5768         * testsuite/26_numerics/random/independent_bits_engine/cons/copy.cc:
5769         New.
5770         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
5771         copy.cc: Likewise.
5772         * testsuite/26_numerics/random/discard_block_engine/cons/
5773         copy.cc: Likewise.
5774         * testsuite/26_numerics/random/mersenne_twister_engine/cons/
5775         copy.cc: Likewise.
5776         * testsuite/26_numerics/random/linear_congruential_engine/cons/
5777         copy.cc: Likewise.
5778         * testsuite/26_numerics/random/shuffle_order_engine/cons/
5779         copy.cc: Likewise.
5781         * testsuite/26_numerics/random/independent_bits_engine/cons/
5782         base_move.cc: Minor tweaks.
5783         * testsuite/26_numerics/random/independent_bits_engine/cons/seed1.cc:
5784         Likewise.
5785         * testsuite/26_numerics/random/independent_bits_engine/cons/seed2.cc:
5786         Likewise.
5787         * testsuite/26_numerics/random/independent_bits_engine/cons/
5788         base_copy.cc: Likewise.
5789         * testsuite/26_numerics/random/independent_bits_engine/cons/
5790         default.cc: Likewise.
5791         * testsuite/26_numerics/random/independent_bits_engine/cons/
5792         seed_seq.cc: Likewise.
5793         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
5794         seed1.cc: Likewise.
5795         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
5796         seed2.cc: Likewise.
5797         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
5798         default.cc: Likewise.
5799         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
5800         seed_seq.cc: Likewise.
5801         * testsuite/26_numerics/random/discard_block_engine/cons/base_move.cc:
5802         Likewise.
5803         * testsuite/26_numerics/random/discard_block_engine/cons/seed1.cc:
5804         Likewise.
5805         * testsuite/26_numerics/random/discard_block_engine/cons/seed2.cc:
5806         Likewise.
5807         * testsuite/26_numerics/random/discard_block_engine/cons/base_copy.cc:
5808         Likewise.
5809         * testsuite/26_numerics/random/discard_block_engine/cons/default.cc:
5810         Likewise.
5811         * testsuite/26_numerics/random/discard_block_engine/cons/seed_seq.cc:
5812         Likewise.
5813         * testsuite/26_numerics/random/mersenne_twister_engine/cons/seed1.cc:
5814         Likewise.
5815         * testsuite/26_numerics/random/mersenne_twister_engine/cons/seed2.cc:
5816         Likewise.
5817         * testsuite/26_numerics/random/mersenne_twister_engine/cons/
5818         default.cc: Likewise.
5819         * testsuite/26_numerics/random/mersenne_twister_engine/cons/
5820         seed_seq.cc: Likewise.
5821         * testsuite/26_numerics/random/linear_congruential_engine/cons/
5822         seed1.cc: Likewise.
5823         * testsuite/26_numerics/random/linear_congruential_engine/cons/
5824         seed2.cc: Likewise.
5825         * testsuite/26_numerics/random/linear_congruential_engine/cons/
5826         seed_seq.cc: Likewise.
5827         * testsuite/26_numerics/random/shuffle_order_engine/cons/base_move.cc:
5828         Likewise.
5829         * testsuite/26_numerics/random/shuffle_order_engine/cons/seed1.cc:
5830         Likewise.
5831         * testsuite/26_numerics/random/shuffle_order_engine/cons/seed2.cc:
5832         Likewise.
5833         * testsuite/26_numerics/random/shuffle_order_engine/cons/base_copy.cc:
5834         Likewise.
5835         * testsuite/26_numerics/random/shuffle_order_engine/cons/default.cc:
5836         Likewise.
5837         * testsuite/26_numerics/random/shuffle_order_engine/cons/seed_seq.cc:
5838         Likewise.
5840 2010-02-16  Paolo Carlini  <paolo.carlini@oracle.com>
5842         * include/bits/unique_ptr.h: (unique_ptr<>::
5843         unique_ptr(const unique_ptr<_Up, _Up_Deleter>&),
5844         operator=(const unique_ptr<_Up, _Up_Deleter>&)): Remove, redundant,
5845         per DR 1303.
5846         * include/bits/shared_ptr.h (shared_ptr<>::
5847         shared_ptr(const unique_ptr<_Up, _Up_Deleter>&),
5848         operator=(const unique_ptr<_Up, _Up_Deleter>&)): Likewise.
5849         * include/bits/shared_ptr_base.h (__shared_ptr<>::
5850         __shared_ptr(const unique_ptr<_Up, _Up_Deleter>&),
5851         operator=(const unique_ptr<_Up, _Up_Deleter>&)): Likewise.
5852         * testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Adjust.
5853         * testsuite/20_util/unique_ptr/assign/assign_neg.cc: Likewise.
5854         * testsuite/20_util/shared_ptr/cons/unique_ptr_neg.cc: Likewise.
5855         * testsuite/20_util/shared_ptr/assign/unique_ptr_lvalue_neg.cc:
5856         Likewise.
5858 2010-02-15  Paolo Carlini  <paolo.carlini@oracle.com>
5860         * testsuite/ext/median.cc: Adjust.
5862 2010-02-15  Paolo Carlini  <paolo.carlini@oracle.com>
5864         * include/bits/stl_algo.h (__median): Move...
5865         * include/ext/algorithm: ... here, being an SGI extension.
5867 2010-02-12  Jonathan Wakely  <jwakely.gcc@gmail.com>
5868             Paolo Carlini  <paolo.carlini@oracle.com>
5870         PR libstdc++/42819, DR 1315
5871         * include/std/future (async): Use std::result_of for the template
5872         argument of the std::future return type; adjust everywhere.
5873         * testsuite/30_threads/async/42819.cc: New.
5874         * testsuite/30_threads/packaged_task/cons/assign_neg.cc: Adjust
5875         dg-error line number.
5876         * testsuite/30_threads/packaged_task/cons/copy_neg.cc: Likewise.
5877         * testsuite/30_threads/future/cons/assign_neg.cc: Likewise.
5878         * testsuite/30_threads/future/cons/copy_neg.cc: Likewise.
5879         * testsuite/30_threads/promise/cons/assign_neg.cc: Likewise.
5880         * testsuite/30_threads/promise/cons/assign_neg.cc: Likewise.
5882 2010-02-11  Paolo Carlini  <paolo.carlini@oracle.com>
5884         * config/abi/pre/gnu.ver: Revert last changes.
5886 2010-02-11  Jason Merrill  <jason@redhat.com>
5888         * include/std/thread (~_Impl_base): Declare inline.
5889         * libsupc++/nested_exception.h (~nested_exception): Likewise.
5891 2010-02-11  Paolo Carlini  <paolo.carlini@oracle.com>
5893         PR libstdc++/41975, DR 579
5894         * include/bits/hashtable.h (_Hashtable<>::_M_erase_node): Remove.
5895         (erase(const_iterator), erase(const_iterator, const_iterator)):
5896         Change return type to void.
5897         * include/debug/unordered_map: Adjust.
5898         * include/debug/unordered_set: Likewise.
5899         * testsuite/util/exception/safety.h: Likewise.
5900         * testsuite/23_containers/unordered_map/erase/1.cc: Likewise.
5901         * testsuite/23_containers/unordered_map/erase/24061-map.cc: Likewise.
5902         * testsuite/23_containers/unordered_set/erase/1.cc:  Likewise.
5903         * testsuite/23_containers/unordered_set/erase/24061-map.cc: Likewise.
5904         * testsuite/23_containers/unordered_multimap/erase/1.cc:  Likewise.
5905         * testsuite/23_containers/unordered_multimap/erase/24061-map.cc:
5906         Likewise.
5907         * testsuite/23_containers/unordered_multiset/erase/1.cc:  Likewise.
5908         * testsuite/23_containers/unordered_multiset/erase/24061-map.cc:
5909         Likewise.
5911 2010-02-11  Paolo Carlini  <paolo.carlini@oracle.com>
5913         * config/abi/pre/gnu.ver: Avoid exporting inadvertently
5914         std::nested_exception symbols at GLIBCXX_3.4.
5916 2010-02-10  Jason Merrill  <jason@redhat.com>
5918         Core issue 906
5919         * include/std/thread (~_Impl_base): Move defaulted dtor out of line.
5920         * libsupc++/nested_exception.h (~nested_exception): Likewise.
5921         * testsuite/18_support/nested_exception/throw_with_nested.cc: Likewise.
5922         * testsuite/18_support/nested_exception/rethrow_if_nested.cc: Likewise.
5924 2010-02-10  Paolo Carlini  <paolo.carlini@oracle.com>
5926         * include/tr1/hashtable.h: Fold in include/tr1_impl/hashtable.h
5927         contents.
5928         * include/tr1_impl/hashtable.h: Remove.
5929         * include/tr1_impl/hashtable_policy.h: Move and rename...
5930         * include/tr1/hashtable_policy.h: ... here.
5931         * include/tr1_impl/unordered_map: Move and rename...
5932         * include/tr1/unordered_map.h: ... here.
5933         * include/tr1_impl/unordered_set: Move and rename...
5934         * include/tr1/unordered_set.h: ... here.
5935         * include/tr1_impl/unordered_map: Move and rename...
5936         * include/tr1/unordered_map.h: ... here.
5937         * include/tr1/unordered_map: Adjust.
5938         * include/tr1/unordered_set: Likewise.
5939         * include/Makefile.am: Adjust.
5940         * include/Makefile.in: Regenerate.
5942         * include/std/c++0x_warning.h: Move...
5943         * include/bits/c++0x_warning.h: ... here.
5944         * include/debug/unordered_map: Adjust.
5945         * include/debug/unordered_set: Likewise.
5946         * include/std/tuple: Likewise.
5947         * include/std/system_error: Likewise.
5948         * include/std/forward_list: Likewise.
5949         * include/std/thread: Likewise.
5950         * include/std/type_traits: Likewise.
5951         * include/std/future: Likewise.
5952         * include/std/regex: Likewise.
5953         * include/std/atomic: Likewise.
5954         * include/std/ratio: Likewise.
5955         * include/std/random: Likewise.
5956         * include/std/unordered_map: Likewise.
5957         * include/std/chrono: Likewise.: Likewise.
5958         * include/std/condition_variable: Likewise.
5959         * include/std/mutex: Likewise.
5960         * include/std/unordered_set: Likewise.
5961         * include/std/array: Likewise.
5962         * include/profile/unordered_map: Likewise.
5963         * include/profile/unordered_set: Likewise.
5964         * include/c_global/cinttypes: Likewise.
5965         * include/c_global/ctgmath: Likewise.
5966         * include/c_global/cfenv: Likewise.
5967         * include/c_global/cstdint: Likewise.
5968         * include/c_global/cstdbool: Likewise.
5969         * include/c_global/ccomplex: Likewise.
5971         * include/bits/shared_ptr.h: Do not include <bits/c++0x_warning.h>
5972         at all, the file is not meant to be included by the users.
5973         * include/bits/functional_hash.h: Likewise.
5974         * include/bits/unique_ptr.h: Likewise.
5975         * include/bits/forward_list.h: Likewise.
5977         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust dg-*
5978         line numbers.
5979         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
5980         * testsuite/23_containers/forward_list/requirements/dr438/
5981         assign_neg.cc: Likewise.
5982         * testsuite/23_containers/forward_list/requirements/dr438/
5983         insert_neg.cc: Likewise.
5984         * testsuite/23_containers/forward_list/requirements/dr438/
5985         constructor_1_neg.cc: Likewise.
5986         * testsuite/23_containers/forward_list/requirements/dr438/
5987         constructor_2_neg.cc: Likewise.
5988         * testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Likewise.
5989         * testsuite/20_util/unique_ptr/assign/assign_neg.cc: Likewise.
5991 2010-02-10  Paolo Carlini  <paolo.carlini@oracle.com>
5993         * include/bits/hashtable.h: Fold in include/tr1_impl/hashtable.h
5994         for C++0x use.
5995         * include/bits/hashtable_policy.h: New, copy and adjust for
5996         C++0x use, include/tr1_impl/hashtable_policy.h; fix erase and
5997         insert member functions per n3000.
5998         * include/bits/unordered_map.h: Likewise for include/tr1_impl/
5999         unordered_map.
6000         * include/bits/unordered_set.h: Likewise for include/tr1_impl/
6001         unordered_set.
6002         * include/Makefile.am: Adjust.
6003         * include/Makefile.in: Regenerate.
6004         * include/tr1/unordered_map: Adjust.
6005         * include/tr1/unordered_set: Likewise.
6006         * include/tr1_impl/unordered_map: Adjust, now used only by tr1.
6007         * include/tr1_impl/hashtable: Likewise.
6008         * include/tr1_impl/hashtable_policy.h: Likewise.
6009         * include/tr1_impl/unordered_set: Likewise.
6010         * include/std/unordered_map: Adjust and simplify includes.
6011         * include/std/unordered_set: Likewise.
6012         * include/debug/unordered_map: Adjuse erase and insert members.
6013         * include/debug/unordered_set: Likewise.
6014         * include/profile/unordered_map: Likewise.
6015         * include/profile/unordered_set: Likewise.
6016         * testsuite/util/exception/safety.h: Fix for the updated erase and
6017         insert member functions of the unordered_containers.
6018         * testsuite/23_containers/unordered_map/erase/1.cc: New.
6019         * testsuite/23_containers/unordered_map/erase/24061-map.cc: Likewise.
6020         * testsuite/23_containers/unordered_map/insert/map_single.cc:
6021         Likewise.
6022         * testsuite/23_containers/unordered_map/insert/array_syntax.cc:
6023         Likewise.
6024         * testsuite/23_containers/unordered_map/insert/24061-map.cc: Likewise.
6025         * testsuite/23_containers/unordered_map/insert/map_range.cc: Likewise.
6026         * testsuite/23_containers/set/operators/1_neg.cc: Likewise.
6027         * testsuite/23_containers/unordered_multimap/erase/1.cc: Likewise.
6028         * testsuite/23_containers/unordered_multimap/erase/
6029         24061-multimap.cc: Likewise.
6030         * testsuite/23_containers/unordered_multimap/insert/
6031         24061-multimap.cc: Likewise.
6032         * testsuite/23_containers/unordered_multimap/insert/
6033         multimap_range.cc: Likewise.
6034         * testsuite/23_containers/unordered_multimap/insert/
6035         multimap_single.cc: Likewise.
6036         * testsuite/23_containers/unordered_set/erase/1.cc: Likewise.
6037         * testsuite/23_containers/unordered_set/erase/24061-set.cc: Likewise.
6038         * testsuite/23_containers/unordered_set/insert/set_single.cc: Likewise.
6039         * testsuite/23_containers/unordered_set/insert/24061-set.cc: Likewise.
6040         * testsuite/23_containers/unordered_set/insert/set_range.cc: Likewise.
6041         * testsuite/23_containers/unordered_multiset/erase/1.cc: Likewise.
6042         * testsuite/23_containers/unordered_multiset/erase/
6043         24061-multiset.cc: Likewise.
6044         * testsuite/23_containers/unordered_multiset/insert/
6045         24061-multiset.cc: Likewise.
6046         * testsuite/23_containers/unordered_multiset/insert/
6047         multiset_range.cc: Likewise.
6048         * testsuite/23_containers/unordered_multiset/insert/
6049         multiset_single.cc: Likewise.
6051         * testsuite/23_containers/set/operators/1_neg.cc: Tweak dg-errors
6052         to avoid spurious fails in debug-mode.
6053         * testsuite/23_containers/map/operators/1_neg.cc: Likewise.
6055 2010-02-09  Benjamin Kosnik  <bkoz@redhat.com>
6057         * include/std/streambuf: Adjust doxygen group markup.
6058         * include/std/functional: Same.
6059         * include/ext/vstring.h: Same.
6060         * include/ext/pb_ds/assoc_container.hpp: Same.
6061         * include/ext/stdio_filebuf.h: Same.
6062         * include/ext/stdio_sync_filebuf.h: Same.
6063         * include/bits/localefwd.h: Same.
6064         * include/bits/functional_hash.h: Same.
6065         * include/bits/locale_classes.h: Same.
6066         * include/bits/locale_facets.h: Same.
6067         * include/bits/ios_base.h: Same.
6068         * include/bits/codecvt.h: Same.
6069         * include/bits/locale_facets_nonio.h: Same.
6071         * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
6072         * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
6074 2010-02-08  Benjamin Kosnik  <bkoz@redhat.com>
6076         PR libstdc++/42460
6077         * include/tr1_impl/regex: Fix quoting issues in doxygen markup.
6078         * include/bits/random.h: Fix multi-line doxygen function markup.
6080 2010-02-08  Matthias Klose  <doko@debian.org>
6082         PR libstdc++/42460
6083         * include/std/istream: Fix '\' quoting in doxygen markup.
6085 2010-02-08  Ed Smith-Rowland  <3dw4rd@verizon.net>
6087         * include/bits/random.tcc (uniform_int_distribution<>::
6088         operator()(_UniformRandomNumberGenerator&, const param_type&)):
6089         Use make_unsigned instead of __add_unsigned and conditional
6090         instead of __conditional_type.
6091         * include/std/random: Do not include <ext/type_traits.h> and
6092         <ext/numeric_traits.h>.
6094 2010-02-07  Paolo Carlini  <paolo.carlini@oracle.com>
6096         PR libstdc++/16896
6097         * include/bits/stl_list.h (_List_node_base::transfer): Rename
6098         to _M_transfer.
6099         (_List_node_base::reverse): Rename to _M_reverse.
6100         (_List_node_base::hook): Rename to _M_hook.
6101         (_List_node_base::unhook): Rename to _M_unhook; adjust callers.
6102         * include/bits/list.tcc: Adjust callers.
6103         * src/list.cc: Adjust.
6104         * src/compatibility.cc: Likewise.
6105         * src/compatibility-list.cc: New.
6106         * src/compatibility-debug_list.cc: Likewise.
6107         * src/compatibility-parallel_list.cc: Likewise.
6108         * src/Makefile.am: Add.
6109         * src/Makefile.in: Regenerate.
6110         * config/abi/pre/gnu.ver: Export _M_* symbols.
6112         * src/hash.cc: Rename to hash-aux.cc.
6113         * src/compatibility-ldbl.cc: Adjust.
6114         * src/compatibility-c++0x.cc: Likewise.
6115         * src/hash_tr1.cc: Likewise.
6117         * src/hashtable.cc: Rename to hashtable-aux.cc.
6118         * src/hashtable_c++0x.cc: Adjust.
6119         * src/hashtable_tr1.cc: Likewise.
6121         * src/limits_c++0x.cc: Fold...
6122         * src/limits.cc... here.
6124 2010-02-07  Paolo Carlini  <paolo.carlini@oracle.com>
6126         * include/bits/stl_pair.h (pair<>::pair(_U1&&, const _T2&),
6127         pair<>::pair(const _T1&, _U2&&), pair<>::pair(_U1&&, _U2&&)):
6128         Revert to std::is_convertible, basing on DR 811.
6130 2010-02-06  Paolo Carlini  <paolo.carlini@oracle.com>
6132         PR libstdc++/42989
6133         * config/abi/pre/gnu.ver: Fix wstring move assignment operator typo.
6135 2010-02-06  Paolo Carlini  <paolo.carlini@oracle.com>
6137         PR libstdc++/27340
6138         * include/bits/valarray_before.h: Uglify the structs wrapping
6139         cmath functions differently, eg, _Cos instead of __cos.
6140         * include/bits/valarray_after.h: Adjust.
6142 2010-02-05  Paolo Carlini  <paolo.carlini@oracle.com>
6144         * include/std/future (swap(packaged_task<>&, packaged_task<>&)): Fix
6145         typo in last commit.
6147 2010-02-05  Paolo Carlini  <paolo.carlini@oracle.com>
6149         * include/std/future (swap(packaged_task<>&, packaged_task<>&),
6150         swap(promise<>&, promise<>&)): Add; minor formatting fixes.
6151         * testsuite/30_threads/packaged_task/cons/assign_neg.cc: Adjust
6152         dg-error line number.
6153         * testsuite/30_threads/packaged_task/cons/copy_neg.cc: Likewise.
6154         * testsuite/30_threads/promise/cons/assign_neg.cc: Likewise.
6155         * testsuite/30_threads/promise/cons/copy_neg.cc: Likewise.
6157 2010-02-05  Paolo Carlini  <paolo.carlini@oracle.com>
6159         * include/bits/stl_algobase.h (struct __iter_base): Rename to
6160         _Iter_base; add iterator_type typedef.
6161         (struct __miter_base): Rename to _Miter_base.
6162         (struct __niter_base): Rename to _Niter_base.
6163         (__miter_base, __niter_base): Add, use the latter; adjust everywhere.
6165 2010-02-04  Benjamin Kosnik  <bkoz@redhat.com>
6167         PR libstdc++/42460
6168         * doc/doxygen/user.cfg.in: Update file list.
6169         * include/debug/safe_sequence.h: Doxygen markup fixes for '' and "".
6170         * include/debug/safe_base.h: Same.
6171         * include/debug/macros.h: Same.
6172         * include/tr1_impl/regex: Same.
6173         * include/std/iostream: Same.
6174         * include/std/streambuf: Same.
6175         * include/std/bitset: Same.
6176         * include/std/iosfwd: Same.
6177         * include/std/limits: Same.
6178         * include/std/fstream: Same.
6179         * include/std/istream: Same.
6180         * include/std/ostream: Same.
6181         * include/std/sstream: Same.
6182         * include/parallel/multiway_merge.h: Same.
6183         * include/parallel/for_each.h: Same.
6184         * include/parallel/workstealing.h: Same.
6185         * include/parallel/omp_loop_static.h: Same.
6186         * include/parallel/omp_loop.h: Same.
6187         * include/c_std/csignal: Same.
6188         * include/c_std/cstdlib: Same.
6189         * include/c_std/cstdio: Same.
6190         * include/c_std/cstdarg: Same.
6191         * include/c_std/cctype: Same.
6192         * include/c_std/cerrno: Same.
6193         * include/c_std/cmath: Same.
6194         * include/c_std/ciso646: Same.
6195         * include/c_std/ctime: Same.
6196         * include/c_std/clocale: Same.
6197         * include/c_std/climits: Same.
6198         * include/c_std/cassert: Same.
6199         * include/c_std/csetjmp: Same.
6200         * include/c_std/cwchar: Same.
6201         * include/c_std/cfloat: Same.
6202         * include/c_std/cstring: Same.
6203         * include/c_std/cstddef: Same.
6204         * include/c_std/cwctype: Same.
6205         * include/profile/iterator_tracker.h: Same.
6206         * include/profile/impl/profiler_trace.h: Same.
6207         * include/ext/vstring.h: Same.
6208         * include/ext/algorithm: Same.
6209         * include/ext/pb_ds/detail/pat_trie_/pat_trie_.h.pp: Same.
6210         * include/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.h.pp: Same.
6211         * include/ext/pb_ds/detail/type_utils.hpp: Same.
6212         * include/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp: Same
6213         * include/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp: Same.
6214         * include/ext/rc_string_base.h: Same.
6215         * include/ext/stdio_sync_filebuf.h: Same.
6216         * include/ext/functional: Same.
6217         * include/ext/mt_allocator.h: Same.
6218         * include/bits/basic_ios.h: Same.
6219         * include/bits/stl_map.h: Same.
6220         * include/bits/stl_algobase.h: Same.
6221         * include/bits/stl_queue.h: Same.
6222         * include/bits/locale_classes.h: Same.
6223         * include/bits/stl_set.h: Same.
6224         * include/bits/locale_facets.h: Same.
6225         * include/bits/stl_stack.h: Same.
6226         * include/bits/stl_iterator_base_types.h: Same.
6227         * include/bits/basic_string.h: Same.
6228         * include/bits/stl_multimap.h: Same.
6229         * include/bits/ios_base.h: Same.
6230         * include/bits/stl_deque.h: Same.
6231         * include/bits/stl_multiset.h: Same.
6232         * include/bits/stl_iterator_base_funcs.h: Same.
6233         * include/bits/char_traits.h: Same.
6234         * include/bits/stl_algo.h: Same.
6235         * include/bits/stl_iterator.h: Same.
6236         * include/bits/stl_tempbuf.h: Same.
6237         * include/bits/random.tcc: Same.
6238         * include/bits/stl_function.h: Same.
6239         * include/bits/cpp_type_traits.h: Same.
6240         * include/bits/random.h: Same.
6241         * include/bits/allocator.h: Same.
6242         * include/bits/locale_facets_nonio.h: Same.
6243         * include/c_global/csignal: Same.
6244         * include/c_global/cstdlib: Same.
6245         * include/c_global/cstdio: Same.
6246         * include/c_global/cstdarg: Same.
6247         * include/c_global/cctype: Same.
6248         * include/c_global/cerrno: Same.
6249         * include/c_global/cmath: Same.
6250         * include/c_global/ciso646: Same.
6251         * include/c_global/ctime: Same.
6252         * include/c_global/clocale: Same.
6253         * include/c_global/climits: Same.
6254         * include/c_global/cassert: Same.
6255         * include/c_global/csetjmp: Same.
6256         * include/c_global/cwchar: Same.
6257         * include/c_global/cfloat: Same.
6258         * include/c_global/cstring: Same.
6259         * include/c_global/cstddef: Same.
6260         * include/c_global/cwctype: Same.
6261         * include/tr1/hypergeometric.tcc: Same.
6262         * include/tr1/random.tcc: Same.
6263         * include/tr1/functional: Same.
6264         * include/tr1/random.h: Same.
6265         * include/backward/auto_ptr.h: Same.
6266         * include/backward/binders.h: Same.
6267         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
6268         Adjust line numbers.
6269         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Same.
6270         * testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc:
6271         Same.
6272         * testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc:
6273         Same.
6275 2010-02-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
6277         * include/std/condition_variable (condition_variable_any): Provide
6278         definitions for all members.
6279         * src/condition_variable.cc (condition_variable_any): Adjust
6280         definitions.
6281         * config/abi/pre/gnu.ver: Adjust exports for condition_variable_any.
6282         * testsuite/30_threads/condition_variable_any/cons/assign_neg.cc:
6283         Adjust dg-error line number.
6284         * testsuite/30_threads/condition_variable_any/cons/copy_neg.cc:
6285         Likewise.
6286         * testsuite/30_threads/condition_variable_any/members/1.cc: New.
6287         * testsuite/30_threads/condition_variable_any/members/2.cc: New.
6288         * testsuite/30_threads/condition_variable_any/requirements/
6289         standard_layout.cc: Remove.
6290         * testsuite/30_threads/condition_variable_any/native_handle/
6291         typesizes.cc: Remove.
6293 2010-02-02  Paolo Carlini  <paolo.carlini@oracle.com>
6295         * include/ext/vstring.h (__versa_string::shrink_to_fit): Fix
6296         for -fno-exceptions.
6298 2010-02-02  Benjamin Kosnik  <bkoz@redhat.com>
6300         * include/bits/allocator.h: Fix for -fno-exceptions.
6301         * include/bits/basic_string.h (basic_string::shrink_to_fit): Same.
6303 2010-02-02  Paolo Carlini  <paolo.carlini@oracle.com>
6305         * testsuite/30_threads/unique_future: Rename to /future.
6307 2010-02-01  Paolo Carlini  <paolo.carlini@oracle.com>
6309         PR libstdc++/42408
6310         * include/bits/random.h (linear_congruential_engine<>::
6311         linear_congruential_engine(seed_seq&),
6312         linear_congruential_engine<>::seed(seed_seq&),
6313         mersenne_twister<>::mersenne_twister(seed_seq&),
6314         mersenne_twister<>::seed(seed_seq&),
6315         subtract_with_carry_engine<>::subtract_with_carry_engine(seed_seq&),
6316         subtract_with_carry_engine<>::seed(seed_seq&),
6317         discard_block_engine<>::discard_block_engine(seed_seq&),
6318         discard_block_engine<>::seed(seed_seq&),
6319         independent_bits_engine<>::independent_bits_engine(seed_seq&),
6320         independent_bits_engine<>::seed(seed_seq&),
6321         shuffle_order_engine<>::shuffle_order_engine(seed_seq&),
6322         shuffle_order_engine<>::seed(seed_seq&)): Templatize.
6323         * include/bits/random.tcc: Adjust.
6324         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
6325         seed_seq.cc: New.
6326         * testsuite/26_numerics/random/mersenne_twister_engine/cons/
6327         seed_seq.cc: Likewise.
6328         * testsuite/26_numerics/random/linear_congruential_engine/
6329         cons/seed_seq.cc: Likewise.
6331 2010-02-01  Paolo Carlini  <paolo.carlini@oracle.com>
6333         * include/bits/forward_list.h (forward_list<>::resize(size_type),
6334         forward_list(size_type)): Only declare.
6335         * include/bits/forward_list.tcc (forward_list<>::resize(size_type),
6336         forward_list(size_type)): Define, don't assume CopyConstructible.
6337         * testsuite/23_containers/forward_list/cons/10.cc: New.
6338         * testsuite/23_containers/forward_list/modifiers/6.cc: Likewis.
6339         * testsuite/23_containers/forward_list/requirements/dr438/
6340         assign_neg.cc: Adjust dg-error line numbers.
6341         * testsuite/23_containers/forward_list/requirements/dr438/
6342         insert_neg.cc: Likewise.
6343         * testsuite/23_containers/forward_list/requirements/dr438/
6344         constructor_1_neg.cc: Likewise.
6345         * testsuite/23_containers/forward_list/requirements/dr438/
6346         constructor_2_neg.cc: Likewise.
6348         * include/bits/forward_list.h: Use _M_get_Node_allocator throughout.
6350 2010-01-31  Paolo Carlini  <paolo.carlini@oracle.com>
6352         * testsuite/23_containers/array/requirements/exception/
6353         generation_prohibited.c: Remove, swap can indeed throw (DR 774).
6355         * testsuite/util/exception/safety.h (insert_base<__versa_string>): Fix.
6356         * testsuite/util/testsuite_container_traits.h
6357         (traits<__versa_string>): Enable insert tests.
6359 2010-01-31  Paolo Carlini  <paolo.carlini@oracle.com>
6361         * include/bits/forward_list.h (forward_list<>::insert_after
6362         (const_iterator, size_type, const _Tp&), insert_after(const_iterator,
6363         _InputIterator, _InputIterator), insert_after(const_iterator,
6364         std::initializer_list<>)): Fix return type per N3000.
6365         * testsuite/23_containers/forward_list/ext_pointer/modifiers/2.cc:
6366         Adjust.
6367         * testsuite/23_containers/forward_list/modifiers/2.cc: Likewise.
6368         * testsuite/23_containers/forward_list/requirements/dr438/
6369         assign_neg.cc: Adjust dg-error line numbers.
6370         * testsuite/23_containers/forward_list/requirements/dr438/
6371         insert_neg.cc: Likewise.
6372         * testsuite/23_containers/forward_list/requirements/dr438/
6373         constructor_1_neg.cc: Likewise.
6374         * testsuite/23_containers/forward_list/requirements/dr438/
6375         constructor_2_neg.cc: Likewise.
6377 2010-01-31  Paolo Carlini  <paolo.carlini@oracle.com>
6379         Revert last changes. Also revert, among the previous changes:
6380         * include/std/condition_variable (condition_variable_any::
6381         wait<>(_Lock&)): Provide definition.
6383 2010-01-29  Paolo Carlini  <paolo.carlini@oracle.com>
6385         * include/std/condition_variable (condition_variable_any::
6386         __wait_until_impl): Add.
6387         (condition_variable_any::wait_until): Provide definitions.
6388         * testsuite/30_threads/condition_variable_any/members/2.cc: New.
6389         * testsuite/30_threads/condition_variable_any/cons/assign_neg.cc:
6390         Adjust dg-error line number.
6391         * testsuite/30_threads/condition_variable_any/cons/copy_neg.cc:
6392         Likewise.
6394         * testsuite/30_threads/condition_variable/members/1.cc: Minor
6395         stylistic changes.
6396         * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
6398 2010-01-29  Paolo Carlini  <paolo.carlini@oracle.com>
6400         * include/std/condition_variable (enum class cv_status): Add and
6401         use it throughout, per N3000.
6402         (condition_variable_any::wait<>(_Lock&), wait<>(_Lock&, _Predicate),
6403         wait_until<>(_Lock&, const chrono::time_point<>&, _Predicate)):
6404         Provide definitions.
6405         * src/condition_variable.cc (condition_variable_any::notify_one,
6406         condition_variable_any::notify_all): Likewise.
6407         * config/abi/pre/gnu.ver: Export.
6408         * testsuite/30_threads/condition_variable_any/requirements/
6409         typedefs.cc: New.
6410         * testsuite/30_threads/condition_variable_any/requirements/
6411         standard_layout.cc: Likewise.
6412         * testsuite/30_threads/condition_variable/members/1.cc: Adjust.
6413         * testsuite/30_threads/condition_variable/members/2.cc: Likewise.
6414         * testsuite/30_threads/condition_variable/cons/assign_neg.cc: Adjust
6415         dg-error line numbers.
6416         * testsuite/30_threads/condition_variable/cons/copy_neg.cc: Likewise.
6417         * testsuite/30_threads/condition_variable_any/cons/assign_neg.cc:
6418         Likewise.
6419         * testsuite/30_threads/condition_variable_any/cons/copy_neg.cc:
6420         Likewise.
6422 2010-01-28  François Dumont  <francois.cppdevs@free.fr>
6424         * include/bits/stl_algobase.h (struct __iter_base): Add.
6425         (__niter_base, __miter_base): Adjust, use the latter.
6427 2010-01-28  Paolo Carlini  <paolo.carlini@oracle.com>
6429         * testsuite/21_strings/basic_string/element_access/char/21674.cc:
6430         Extend xfail to all systems.
6431         * testsuite/21_strings/basic_string/element_access/wchar_T/21674.cc:
6432         Likewise.
6433         * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
6434         Extend xfail to darwin10 systems.
6436 2010-01-27  Benjamin Kosnik  <bkoz@redhat.com>
6438         PR c++/42346
6439         * testsuite/23_containers/unordered_map/requirements/exception/: Remove
6440         -O1 workaround.
6441         * testsuite/23_containers/multimap/requirements/exception/: Same.
6442         * testsuite/23_containers/map/requirements/exception: Same.
6444 2010-01-27  Richard Guenther  <rguenther@suse.de>
6446         PR libstdc++/42832
6447         * include/std/functional (function<>::swap): Perform bytewise
6448         swap of _M_functor.
6449         * include/tr1/functional (function<>::swap): Likewise.
6451 2010-01-27  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
6453         * config/abi/pre/gnu.ver: Avoid time_get pattern conflicts.
6455 2010-01-26  François Dumont  <francois.cppdevs@free.fr>
6457         * doc/xml/manual/allocator.xml: Minor updates and fixes.
6458         * doc/xml/manual/containers.xml: Likewise.
6459         * doc/xml/manual/using.xml: Likewise.
6460         * doc/xml/manual/locale.xml: Likewise.
6461         * doc/xml/manual/appendix_contributing.xml: Likewise.
6463 2010-01-26  Daniel Frey  <d.frey@gmx.de>
6465         * include/std/functional: Use enable_if instead of __enable_if
6466         throughout, do not include ext/type_traits.h.
6467         (is_placeholder, is_bind_expression): Use integral_constant.
6469 2010-01-25  Paolo Carlini  <paolo.carlini@oracle.com>
6471         * testsuite/util/testsuite_common_types.h (has_bitwise_operators):
6472         Avoid -Wall warnings.
6474 2010-01-25  Paolo Carlini  <paolo.carlini@oracle.com>
6476         * testsuite/22_locale/time_get/get_monthname/char/6.cc: Use an int
6477         as loop variable, to avoid -Wall warnings.
6478         * testsuite/22_locale/time_get/get_monthname/wchar_t/6.cc: Likewise.
6479         * testsuite/22_locale/time_get/get_weekday/char/6.cc: Likewise.
6480         * testsuite/22_locale/time_get/get_weekday/wchar_t/6.cc: Likewise.
6481         * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.
6483         * testsuite/20_util/reference_wrapper/24803.cc: Remove unused vars.
6484         * testsuite/20_util/reference_wrapper/invoke.cc: Likewise.
6486 2010-01-22  Daniel Frey  <d.frey@gmx.de>
6488         * include/std/functional (_Index_tuple, _Build_index_tuple):
6489         Simplify and speed-up.
6491 2010-01-22  Joern Rennecke  <amylaar@spamcop.net>
6493         PR libstdc++/36101, PR libstdc++/42813
6494         * acinclude.m4 (enable_parallel): Test ${TARGET_CONFIGDIRS} instead of
6495         looking for omp.h.
6496         * configure: Regenerate.
6498 2010-01-21  Jonathan Wakely  <jwakely.gcc@gmail.com>
6500         PR libstdc++/42201
6501         * include/std/future: Update to latest WP.
6502         * src/functexcept.cc (__throw_future_error): Use make_error_code.
6503         * testsuite/30_threads/async/any.cc: New.
6504         * testsuite/30_threads/async/async.cc: New.
6505         * testsuite/30_threads/async/sync.cc: New.
6506         * testsuite/30_threads/packaged_task/cons/alloc.cc: New.
6507         * testsuite/30_threads/packaged_task/cons/assign_neg.cc: Adjust.
6508         * testsuite/30_threads/packaged_task/cons/copy_neg.cc: Adjust.
6509         * testsuite/30_threads/packaged_task/members/get_future.cc: Adjust.
6510         * testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise.
6511         * testsuite/30_threads/packaged_task/members/invoke.cc: Adjust.
6512         * testsuite/30_threads/packaged_task/members/invoke2.cc: Adjust.
6513         * testsuite/30_threads/packaged_task/members/invoke3.cc: Adjust.
6514         * testsuite/30_threads/packaged_task/members/invoke4.cc: Adjust.
6515         * testsuite/30_threads/packaged_task/members/reset.cc: Adjust.
6516         * testsuite/30_threads/packaged_task/members/reset2.cc: Adjust.
6517         * testsuite/30_threads/shared_future/cons/assign_neg.cc: Remove.
6518         * testsuite/30_threads/shared_future/cons/default_neg.cc: Remove.
6519         * testsuite/30_threads/shared_future/cons/default.cc: New.
6520         * testsuite/30_threads/shared_future/cons/assign.cc: New.
6521         * testsuite/30_threads/shared_future/cons/copy.cc: Adjust.
6522         * testsuite/30_threads/shared_future/cons/move.cc: Adjust.
6523         * testsuite/30_threads/shared_future/cons/move_assign.cc: New.
6524         * testsuite/30_threads/shared_future/members/is_ready.cc: Remove.
6525         * testsuite/30_threads/shared_future/members/has_value.cc: Remove.
6526         * testsuite/30_threads/shared_future/members/has_exception.cc: Remove.
6527         * testsuite/30_threads/shared_future/members/valid.cc: New.
6528         * testsuite/30_threads/unique_future/cons/default_neg.cc: Remove.
6529         * testsuite/30_threads/unique_future/cons/default.cc: New.
6530         * testsuite/30_threads/unique_future/cons/move_assign.cc: New.
6531         * testsuite/30_threads/unique_future/cons/assign_neg.cc: Adjust.
6532         * testsuite/30_threads/unique_future/cons/copy_neg.cc: Adjust.
6533         * testsuite/30_threads/unique_future/cons/move.cc: Adjust.
6534         * testsuite/30_threads/unique_future/requirements/
6535         explicit_instantiation.cc: Adjust.
6536         * testsuite/30_threads/unique_future/members/is_ready.cc: Remove.
6537         * testsuite/30_threads/unique_future/members/has_value.cc: Remove.
6538         * testsuite/30_threads/unique_future/members/has_exception.cc: Remove.
6539         * testsuite/30_threads/unique_future/members/valid.cc: New.
6540         * testsuite/30_threads/unique_future/members/get.cc: Adjust.
6541         * testsuite/30_threads/unique_future/members/get2.cc: Adjust.
6542         * testsuite/30_threads/unique_future/members/wait.cc: Adjust.
6543         * testsuite/30_threads/unique_future/members/wait_for.cc: Adjust.
6544         * testsuite/30_threads/unique_future/members/wait_until.cc: Adjust.
6545         * testsuite/30_threads/headers/future/types_std_c++0x.cc: Adjust.
6546         * testsuite/30_threads/promise/cons/alloc.cc: New.
6547         * testsuite/30_threads/promise/cons/assign_neg.cc: Adjust.
6548         * testsuite/30_threads/promise/cons/copy_neg.cc: Adjust.
6549         * testsuite/30_threads/promise/cons/move.cc: Adjust.
6550         * testsuite/30_threads/promise/cons/move_assign.cc: Adjust.
6551         * testsuite/30_threads/promise/members/get_future.cc: Adjust.
6552         * testsuite/30_threads/promise/members/set_value.cc: Adjust.
6553         * testsuite/30_threads/promise/members/set_exception.cc: Adjust.
6554         * testsuite/30_threads/promise/members/set_exception2.cc: Adjust.
6555         * testsuite/30_threads/promise/members/set_value2.cc: Adjust.
6556         * testsuite/30_threads/promise/members/set_value3.cc: Adjust.
6557         * testsuite/30_threads/promise/members/swap.cc: Adjust.
6559 2010-01-20  Janis Johnson  <janis187@us.ibm.com>
6560             Paolo Carlini  <paolo.carlini@oracle.com>
6562         PR libstdc++/21769
6563         * testsuite/lib/dg-options.exp (add_options_for_no_pch): Add.
6564         * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
6565         Use it.
6567 2010-01-19  Johannes Singler  <singler@kit.edu>
6569         PR libstdc++/42712
6570         * include/parallel/settings.h (_Settings): Add search_minimal_n.
6571         * include/parallel/algo.h (__search_switch):
6572         Add serial fallback for too small inputs.
6573         (__search_n_switch): Likewise.  Call serial fallback on higher level
6574         to gain special treatment for __count 0 or 1.
6575         * testsuite/25_algorithms/search_n/iterator.cc:
6576         Reenable full test depth for parallel mode.
6578 2010-01-18  Daniel Frey  <d.frey@gmx.de>
6580         * include/std/functional (_Bind<_Functor(_Bound_args...)>::
6581         operator()): "Pass" _Result to __call*.
6582         (_Bind<_Functor(_Bound_args...)>::__call*): Adjust, simplify.
6584 2010-01-18  Johannes Singler  <singler@kit.edu>
6586         * include/parallel/base.h (__unary_negate): Correct comment.
6588 2010-01-16  Paolo Carlini  <paolo.carlini@oracle.com>
6590         * include/std/functional (_Bind<_Functor(_Bound_args...)>::__call):
6591         Rename const version to __call_c and remove _Sfinae template
6592         parameter.
6593         (_Bind<_Functor(_Bound_args...)>::operator()): Adjust.
6595         * include/std/functional: Pass everywhere temporary tuple<_Args...>
6596         arguments by rvalue reference.
6598         * testsuite/20_util/bind/cv_quals.cc: New.
6600         * testsuite/20_util/bind/ref2.cc: Add missing test variables.
6602 2010-01-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6604         PR libstdc++/35942
6605         * configure.ac: Remove -lstdc++ from libtool's postdeps_CXX.
6606         * configure: Regenerate.
6608 2010-01-15  Phil Muldoon  <pmuldoon@redhat.com>
6610         * python/libstdcxx/v6/printers.py (StdStringPrinter.__init__):
6611         Remove encoding argument.
6612         (StdStringPrinter.to_string): Do not compute or pass encoding.
6613         Use lazy_string over string function.
6615 2010-01-14  Paolo Carlini  <paolo.carlini@oracle.com>
6617         * include/c_std/cstring (memchr): Forward to the builtin.
6618         * include/c_std/cstring: Remove redundant casts; use names consistent
6619         with the letter of the Standard.
6620         * include/c_global/cstring: Likewise.
6622 2010-01-13  Benjamin Kosnik  <bkoz@redhat.com>
6624         * include/profile/iterator_tracker.h: Add copyright.
6626 2010-01-13  Paolo Carlini  <paolo.carlini@oracle.com>
6628         * testsuite/Makefile.am (check-debug): Add.
6629         * testsuite/Makefile.in: Regenerate.
6630         * config.h.in: Likewise.
6632 2010-01-12  Paolo Carlini  <paolo.carlini@oracle.com>
6634         * testsuite/17_intro/using_namespace_std_tr1_neg.cc: Do not run
6635         in parallel-mode.
6636         * testsuite/25_algorithms/inplace_merge/moveable.cc: Likewiwse.
6637         * testsuite/25_algorithms/rotate/moveable.cc: Likewiwse.
6638         * testsuite/25_algorithms/stable_partition/moveable.cc: Likewiwse.
6639         * testsuite/25_algorithms/remove/moveable.c: Likewiwse.
6640         * testsuite/25_algorithms/random_shuffle/moveable.cc: Likewiwse.
6641         * testsuite/25_algorithms/nth_element/moveable.cc: Likewiwse.
6642         * testsuite/25_algorithms/partial_sort/moveable.cc: Likewiwse.
6643         * testsuite/25_algorithms/next_permutation/moveable.cc: Likewiwse.
6644         * testsuite/25_algorithms/partition/moveable.cc: Likewiwse.
6645         * testsuite/25_algorithms/stable_sort/moveable.cc: Likewiwse.
6646         * testsuite/25_algorithms/stable_sort/moveable2.cc: Likewiwse.
6647         * testsuite/25_algorithms/sort/moveable.cc: Likewiwse.
6648         * testsuite/25_algorithms/prev_permutation/moveable.cc: Likewiwse.
6649         * testsuite/25_algorithms/unique/moveable.cc: Likewiwse.
6650         * testsuite/25_algorithms/remove_if/moveable.cc: Likewiwse.
6651         * testsuite/25_algorithms/heap/moveable.cc: Likewiwse.
6653         * testsuite/25_algorithms/search_n/iterator.cc: Reduce iteration #
6654         in parallel-mode.
6656 2010-01-12  Hans-Peter Nilsson  <hp@axis.com>
6658         * testsuite/ext/profile/all.cc: Pass -D_GLIBCXX_PROFILE_NO_THREADS
6659         for non-tls_native targets.
6661 2010-01-12  Benjamin Kosnik  <bkoz@redhat.com>
6663         * scripts/run_doxygen: Correct nested scope on the man pages.
6664         * doc/xml/faq.xml: Edits, linkcheck, doxygen link reassociate.
6665         * doc/xml/manual/mt_allocator.xml: Same.
6666         * doc/xml/manual/allocator.xml: Same.
6667         * doc/xml/manual/codecvt.xml: Same.
6668         * doc/xml/manual/backwards_compatibility.xml: Same.
6669         * doc/xml/manual/concurrency.xml: Same.
6670         * doc/xml/manual/parallel_mode.xml: Same.
6671         * doc/xml/manual/io.xml: Same.
6672         * doc/xml/manual/support.xml: Same.
6673         * doc/xml/manual/evolution.xml: Same.
6674         * doc/xml/manual/using.xml: Same.
6675         * doc/xml/manual/extensions.xml: Same.
6676         * doc/xml/manual/appendix_contributing.xml: Same.
6677         * doc/xml/manual/prerequisites.xml: Same.
6678         * doc/xml/manual/diagnostics.xml: Same.
6679         * doc/xml/manual/spine.xml: Same.
6680         * doc/xml/manual/status_cxx200x.xml: Same.
6681         * doc/xml/manual/test.xml: Same.
6682         * doc/xml/spine.xml: Same.
6683         * doc/html/*: Regenerate.
6685         * include/profile/impl/profiler.h: Remove duplicate markup.
6687 2010-01-12  Jonathan Wakely  <jwakely.gcc@gmail.com>
6689         PR libstdc++/24803
6690         PR libstdc++/35569
6691         PR libstdc++/42593
6692         * include/std/functional (bind): Forward rvalues and detect correct
6693         result type of bound function object.
6694         * include/std/mutex (call_once): Specify bind result type.
6695         * testsuite/20_util/reference_wrapper/invoke.cc: Remove invalid tests.
6696         * testsuite/20_util/reference_wrapper/24803.cc: Remove invalid tests
6697         and enable FIXME tests.
6698         * testsuite/20_util/bind/35569.cc: New.
6699         * testsuite/20_util/bind/ref2.cc: New.
6700         * testsuite/20_util/bind/38889.cc: New.
6701         * testsuite/20_util/bind/ref_neg.cc: New.
6702         * testsuite/20_util/bind/42593.cc: New.
6704 2010-01-11  Paolo Carlini  <paolo.carlini@oracle.com>
6706         * include/parallel/base.h (decode2): Rename to __decode2.
6707         (binder2nd): Likewise to __binder2nd.
6708         * include/parallel/quicksort.h: Adjust callers.
6709         * include/parallel/balanced_quicksort.h: Likewise.
6710         * include/parallel/partition.h: Likewise.
6711         * include/parallel/queue.h: Likewise.
6713         * include/parallel/algo.h: Qualify with std:: binder2nd use.
6715 2010-01-10  Paolo Carlini  <paolo.carlini@oracle.com>
6717         * include/debug/string (basic_string<>::basic_string(basic_string&&),
6718         operator=(basic_string&&), assign(basic_string&&)): Add.
6720         * include/debug/string: Fully qualify initializer_list with std; fix
6721         _Allocator misspellings as _Alloc.
6723 2010-01-10  Paolo Carlini  <paolo.carlini@oracle.com>
6725         * include/bits/basic_string.h (basic_string<>::
6726         basic_string(basic_string&&), operator=(basic_string&&),
6727         assign(basic_string&&)): Add.
6728         * config/abi/pre/gnu.ver: Export new symbols.
6729         * include/ext/vstring.h (__versa_string<>::assign(__versa_string&&)):
6730         Add.
6731         (operator=(__versa_string&&)): Don't call clear unnecessarily.
6732         * include/ext/rc_string_base.h (__rc_string_base<>::
6733         __rc_string_base(__rc_string_base&&)): Simplify a tad.
6734         * testsuite/21_strings/basic_string/cons/char/moveable.cc: New.
6735         * testsuite/21_strings/basic_string/cons/wchar_t/moveable.cc: Likewise.
6736         * testsuite/ext/vstring/assign/move_assign.cc: Likewise.
6737         * testsuite/21_strings/basic_string/assign/char/move_assign.cc:
6738         Likewise.
6739         * testsuite/21_strings/basic_string/assign/wchar_t/move_assign.cc:
6740         Likewise.
6742         * testsuite/ext/vstring/cons/moveable.cc: Fix comment nit.
6744 2010-01-10  Silvius Rus  <rus@google.com>
6746         * configure.ac: Add detection of execinfo.h.
6747         * configure: Regenerate.
6748         * config.h.in: Likewise.
6749         * doc/xml/manual/profile_mode.xml: Add list_to_slist manual.
6750         Also, correct user interface mistakes.
6751         * include/Makefile.am: Add references to new include files.
6752         * include/Makefile.in: Regenerate.
6753         * include/backward/hash_map: Remove profile include.
6754         * include/backward/hash_set: Likewise.
6755         * include/profile/hashtable.h: Delete file.
6756         * include/profile/iterator_tracker.h: New file.
6757         * include/profile/vector: Add instrumentation for tracked iterator.
6758         * include/profile/list: Same.
6759         * include/profile/impl/profiler_list_to_slist.h: New file.
6760         * include/profile/impl/profiler_list_to_vector.h: Same.
6761         * include/profile/impl/profiler.h: Add list_to_slist and
6762         list_to_vector instrumentation hook interfaces.  Fixed broken
6763         diagnostic disabling mechanism.
6764         (_GLIBCXX_PROFILE_DEFINE_DATA,_GLIBCXX_PROFILE_DATA) New macros.
6765         (__reentrance_guard) Fix bug.
6766         * include/profile/impl/profiler_trace.h: Replace dummy templates
6767         with _GLIBCXX_PROFILE_DEFINE_DATA.
6768         * include/profile/impl/profiler_container_size.h: Same.
6769         * include/profile/impl/profiler_vector_size.h: Same.
6770         * include/profile/impl/profiler_hash_func.h: Same.
6771         * include/profile/impl/profiler_vector_to_list.h: Same.
6772         * include/profile/impl/profiler_map_to_unordered_map.h: Same.
6773         * include/profile/impl/profiler_hashtable_size.h: Same.
6774         * include/profile/impl/profiler_node.h: Same.
6775         * include/profile/impl/profiler_state.h: Same.  Also, remove
6776         class __state. Also, use __sync_val_compare_and_swap to set state.
6778 2010-01-09  H.J. Lu  <hongjiu.lu@intel.com>
6780         PR other/42230
6781         * testsuite/abi/pr42230.cc: New.
6783 2010-01-09  Paolo Carlini  <paolo.carlini@oracle.com>
6785         * include/debug/set.h: Revert last change, per DR 1204 [Ready];
6786         mention the latter in comment.
6787         * include/debug/unordered_map: Likewise.
6788         * include/debug/multiset.h: Likewise.
6789         * include/debug/vector: Likewise.
6790         * include/debug/unordered_set: Likewise.
6791         * include/debug/deque: Likewise.
6792         * include/debug/map.h: Likewise.
6793         * include/debug/list: Likewise.
6794         * include/debug/multimap.h: Likewise.
6795         * include/tr1_impl/unordered_map: Likewise.
6796         * include/tr1_impl/unordered_set: Likewise.
6797         * include/profile/set.h: Likewise.
6798         * include/profile/unordered_map: Likewise.
6799         * include/profile/multiset.h: Likewise.
6800         * include/profile/unordered_set: Likewise.
6801         * include/profile/vector: Likewise.
6802         * include/profile/deque: Likewise.
6803         * include/profile/map.h: Likewise.
6804         * include/profile/list: Likewise.
6805         * include/profile/multimap.h: Likewise.
6806         * include/ext/vstring.h: Likewise.
6807         * include/bits/stl_list.h: Likewise.
6808         * include/bits/stl_map.h: Likewise.
6809         * include/bits/stl_set.h: Likewise.
6810         * include/bits/stl_multimap.h: Likewise.
6811         * include/bits/stl_vector.h: Likewise.
6812         * include/bits/stl_deque.h: Likewise.
6813         * include/bits/stl_multiset.h: Likewise.
6815         * include/bits/forward_list.h: Remove pre-existing check.
6816         * include/ext/vstring.h: Likewise.
6818         * testsuite/ext/vstring/cons/self_move_assign.cc: Remove.
6819         * testsuite/23_containers/unordered_map/cons/self_move_assign.cc:
6820         Likewise.
6821         * testsuite/23_containers/multimap/cons/self_move_assign.cc: Likewise.
6822         * testsuite/23_containers/set/cons/self_move_assign.cc: Likewise.
6823         * testsuite/23_containers/unordered_multimap/cons/
6824         self_move_assign.cc: Likewise.
6825         * testsuite/23_containers/forward_list/cons/self_move_assign.cc:
6826         Likewise.
6827         * testsuite/23_containers/unordered_set/cons/self_move_assign.cc:
6828         Likewise.
6829         * testsuite/23_containers/vector/cons/self_move_assign.cc: Likewise.
6830         * testsuite/23_containers/deque/cons/self_move_assign.cc: Likewise.
6831         * testsuite/23_containers/multiset/cons/self_move_assign.cc: Likewise.
6832         * testsuite/23_containers/list/cons/self_move_assign.cc: Likewise.
6833         * testsuite/23_containers/unordered_multiset/cons/
6834         self_move_assign.cc: Likewise.
6835         * testsuite/23_containers/map/cons/self_move_assign.cc: Likewise.
6837         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
6838         Adjust dg-error line numbers.
6839         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
6840         Likewise.
6841         * testsuite/23_containers/vector/requirements/dr438/
6842         constructor_1_neg.cc: Likewise.
6843         * testsuite/23_containers/vector/requirements/dr438/
6844         constructor_2_neg.cc: Likewise.
6845         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
6846         Likewise.
6847         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
6848         Likewise.
6849         * testsuite/23_containers/deque/requirements/dr438/
6850         constructor_1_neg.cc: Likewise.
6851         * testsuite/23_containers/forward_list/requirements/dr438/
6852         assign_neg.cc: Likewise.
6853         * testsuite/23_containers/forward_list/requirements/dr438/
6854         insert_neg.cc: Likewise.
6855         * testsuite/23_containers/forward_list/requirements/dr438/
6856         constructor_1_neg.cc: Likewise.
6857         * testsuite/23_containers/forward_list/requirements/dr438/
6858         constructor_2_neg.cc: Likewise.
6859         * testsuite/23_containers/deque/requirements/dr438/
6860         constructor_2_neg.cc: Likewise.
6861         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
6862         Likewise.
6863         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
6864         Likewise.
6865         * testsuite/23_containers/list/requirements/dr438/
6866         constructor_1_neg.cc: Likewise.
6867         * testsuite/23_containers/list/requirements/dr438/
6868         constructor_2_neg.cc: Likewise.
6870 2010-01-08  Paolo Carlini  <paolo.carlini@oracle.com>
6872         * include/debug/set.h: Protect move assignment operator vs self
6873         assignment.
6874         * include/debug/unordered_map: Likewise.
6875         * include/debug/multiset.h: Likewise.
6876         * include/debug/vector: Likewise.
6877         * include/debug/unordered_set: Likewise.
6878         * include/debug/deque: Likewise.
6879         * include/debug/map.h: Likewise.
6880         * include/debug/list: Likewise.
6881         * include/debug/multimap.h: Likewise.
6882         * include/tr1_impl/unordered_map: Likewise.
6883         * include/tr1_impl/unordered_set: Likewise.
6884         * include/profile/set.h: Likewise.
6885         * include/profile/unordered_map: Likewise.
6886         * include/profile/multiset.h: Likewise.
6887         * include/profile/unordered_set: Likewise.
6888         * include/profile/vector: Likewise.
6889         * include/profile/deque: Likewise.
6890         * include/profile/map.h: Likewise.
6891         * include/profile/list: Likewise.
6892         * include/profile/multimap.h: Likewise.
6893         * include/ext/vstring.h: Likewise.
6894         * include/bits/stl_list.h: Likewise.
6895         * include/bits/stl_map.h: Likewise.
6896         * include/bits/stl_set.h: Likewise.
6897         * include/bits/stl_multimap.h: Likewise.
6898         * include/bits/stl_vector.h: Likewise.
6899         * include/bits/stl_deque.h: Likewise.
6900         * include/bits/stl_multiset.h: Likewise.
6901         * include/ext/vstring.h: Use clear().
6902         * testsuite/ext/vstring/cons/self_move_assign.cc: New.
6903         * testsuite/23_containers/unordered_map/cons/self_move_assign.cc:
6904         Likewise.
6905         * testsuite/23_containers/multimap/cons/self_move_assign.cc: Likewise.
6906         * testsuite/23_containers/set/cons/self_move_assign.cc: Likewise.
6907         * testsuite/23_containers/unordered_multimap/cons/
6908         self_move_assign.cc: Likewise.
6909         * testsuite/23_containers/forward_list/cons/self_move_assign.cc:
6910         Likewise.
6911         * testsuite/23_containers/unordered_set/cons/self_move_assign.cc:
6912         Likewise.
6913         * testsuite/23_containers/vector/cons/self_move_assign.cc: Likewise.
6914         * testsuite/23_containers/deque/cons/self_move_assign.cc: Likewise.
6915         * testsuite/23_containers/multiset/cons/self_move_assign.cc: Likewise.
6916         * testsuite/23_containers/list/cons/self_move_assign.cc: Likewise.
6917         * testsuite/23_containers/unordered_multiset/cons/
6918         self_move_assign.cc: Likewise.
6919         * testsuite/23_containers/map/cons/self_move_assign.cc: Likewise.
6921         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
6922         Adjust dg-error line numbers.
6923         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
6924         Likewise.
6925         * testsuite/23_containers/vector/requirements/dr438/
6926         constructor_1_neg.cc: Likewise.
6927         * testsuite/23_containers/vector/requirements/dr438/
6928         constructor_2_neg.cc: Likewise.
6929         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
6930         Likewise.
6931         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
6932         Likewise.
6933         * testsuite/23_containers/deque/requirements/dr438/
6934         constructor_1_neg.cc: Likewise.
6935         * testsuite/23_containers/deque/requirements/dr438/
6936         constructor_2_neg.cc: Likewise.
6937         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
6938         Likewise.
6939         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
6940         Likewise.
6941         * testsuite/23_containers/list/requirements/dr438/
6942         constructor_1_neg.cc: Likewise.
6943         * testsuite/23_containers/list/requirements/dr438/
6944         constructor_2_neg.cc: Likewise.
6946         * testsuite/ext/vstring/moveable.cc: Move to...
6947         * testsuite/ext/vstring/cons/moveable.cc: ... here.
6948         * testsuite/23_containers/unordered_map/moveable.cc: Move to...
6949         * testsuite/23_containers/unordered_map/cons/moveable.cc ... here.
6950         * testsuite/23_containers/multimap/moveable.cc: Move to...
6951         * testsuite/23_containers/multimap/cons/moveable.cc: ... here.
6952         * testsuite/23_containers/set/moveable.cc: Move to...
6953         * testsuite/23_containers/set/cons/moveable.cc: ... here.
6954         * testsuite/23_containers/unordered_multimap/moveable.cc: Move to...
6955         * testsuite/23_containers/unordered_multimap/cons/moveable.cc:
6956         ... here.
6957         * testsuite/23_containers/forward_list/moveable.cc: Move to...
6958         * testsuite/23_containers/forward_list/cons/moveable.cc: ... here.
6959         * testsuite/23_containers/unordered_set/moveable.cc Move to...
6960         * testsuite/23_containers/unordered_set/moveable.cc: ... here.
6961         * testsuite/23_containers/vector/cons/moveable.cc Move to...
6962         * testsuite/23_containers/vector/cons/moveable2.cc: ... this.
6963         * testsuite/23_containers/deque/cons/moveable.cc Move to...
6964         * testsuite/23_containers/deque/cons/moveable2.cc: ... this.
6965         * testsuite/23_containers/multiset/moveable.cc Move to...
6966         * testsuite/23_containers/multiset/cons/moveable.cc: ... here.
6967         * testsuite/23_containers/list/moveable.h Move to...
6968         * testsuite/23_containers/list/cons/moveable.h: ... here.
6969         * testsuite/23_containers/list/moveable.cc Move to...
6970         * testsuite/23_containers/list/cons/moveable.cc: ... here.
6971         * testsuite/23_containers/unordered_multiset/moveable.cc Move to...
6972         * testsuite/23_containers/unordered_multiset/cons/moveable.cc:
6973         ... here.
6974         * testsuite/23_containers/map/moveable.cc Move to...
6975         * testsuite/23_containers/map/cons/moveable.cc: ... here.
6976         * testsuite/23_containers/vector/moveable.cc: Move to...
6977         * testsuite/23_containers/vector/cons/moveable.cc: ... here.
6978         * testsuite/23_containers/deque/moveable.cc: Move to...
6979         * testsuite/23_containers/deque/cons/moveable.cc: ... here.
6981 2010-01-08  Paolo Carlini  <paolo.carlini@oracle.com>
6983         PR libstdc++/42573
6984         * include/bits/allocator.h (struct __shrink_to_fit): Add.
6985         * include/bits/stl_deque.h (deque<>::shrink_to_fit): Add.
6986         * include/bits/stl_vector.h (vector<>::shrink_to_fit): Likewise.
6987         * include/bits/stl_bvector.h (vector<bool>::shrink_to_fit): Likewise.
6988         * include/bits/basic_string.h (basic_string<>::shrink_to_fit):
6989         Likewise.
6990         * include/ext/vstring.h (__versa_string<>::shrink_to_fit): Likewise.
6991         * include/debug/deque: Add corresponding using declaration.
6992         * include/debug/vector: Likewise.
6993         * include/debug/string: Likewise.
6994         * include/profile/deque: Likewise.
6995         * include/profile/vector: Likewise.
6996         * config/abi/pre/gnu.ver: Export new symbols.
6997         * testsuite/23_containers/deque/capacity/shrink_to_fit.cc: New.
6998         * testsuite/23_containers/vector/capacity/shrink_to_fit.cc: Likewise.
6999         * testsuite/21_strings/basic_string/capacity/char/shrink_to_fit.cc:
7000         Likewise.
7001         * testsuite/21_strings/basic_string/capacity/wchar_t/shrink_to_fit.cc:
7002         Likewise.
7003         * testsuite/ext/vstring/capacity/shrink_to_fit.cc: Likewise.
7004         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
7005         Adjust dg-error line number.
7006         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
7007         Likewise.
7008         * testsuite/23_containers/deque/requirements/dr438/
7009         constructor_1_neg.cc: Likewise.
7010         * testsuite/23_containers/deque/requirements/dr438/
7011         constructor_2_neg.cc: Likewise.
7012         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
7013         Adjust dg-error line number.
7014         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
7015         Likewise.
7016         * testsuite/23_containers/vector/requirements/dr438/
7017         constructor_1_neg.cc: Likewise.
7018         * testsuite/23_containers/vector/requirements/dr438/
7019         constructor_2_neg.cc: Likewise.
7021 2010-01-07  Benjamin Kosnik  <bkoz@redhat.com>
7023         * doc/xml/manual/evolution.xml: Fix typos, update.
7025 2010-01-07  Paolo Carlini  <paolo.carlini@oracle.com>
7027         * include/bits/locale_facets_nonio.tcc (time_put<>::do_put): Avoid
7028         pointless __builtin_alloca use.
7030 2010-01-06  Paolo Carlini  <paolo.carlini@oracle.com>
7032         PR libstdc++/26701
7033         * include/bits/locale_facets_nonio.tcc (time_get<>::_M_extract_num):
7034         Encode short two digits over four parsings to negative numbers.
7035         (time_get<>::_M_extract_via_format): Adjust, accept both two digits
7036         and four digits for both 'y' and 'Y'.
7037         (time_get<>::do_get_year): Call time_get<>::_M_extract_num.
7038         * doc/xml/manual/prerequisites.xml: Add en_GB.
7039         * testsuite/lib/libstdc++.exp: Adjust
7040         * testsuite/22_locale/time_get/get_date/char/26701.cc: New.
7041         * testsuite/22_locale/time_get/get_date/wchar_t/26701.cc: Likewise.
7043 2010-01-06  Benjamin Kosnik  <bkoz@redhat.com>
7045         PR libstdc++/42491
7046         * scripts/check_performance (CXX): Add -std=gnu++0x.
7047         * testsuite/performance/30_threads/future/polling.cc: Mark up as
7048         using threads.
7050 2010-01-06  Paolo Carlini  <paolo.carlini@oracle.com>
7052         * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc:
7053         Add dg-require-namedlocale.
7055 2010-01-05  Benjamin Kosnik  <bkoz@redhat.com>
7057         * doc/xml/manual/evolution.xml: Update for 4.4 and 4.5 releases.
7058         * doc/html: Regenerate.
7060 2010-01-05  Paolo Carlini  <paolo.carlini@oracle.com>
7062         PR libstdc++/38081
7063         * include/bits/locale_facets_nonio.h (time_get<>::
7064         _M_extract_wday_or_month): New, declare.
7065         * include/bits/locale_facets_nonio.tcc (time_get<>::
7066         _M_extract_wday_or_month): Define.
7067         (time_get<>::do_get_weekday, time_get<>::do_get_monthname): Use it.
7068         * config/abi/pre/gnu.ver: Export new symbols.
7069         * doc/xml/manual/prerequisites.xml: Add ru_RU.UTF-8 and
7070         ru_RU.ISO-8859-5.
7071         * testsuite/lib/libstdc++.exp: Adjust.
7072         * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc: New.
7073         * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.
7075 2010-01-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7077         * configure: Regenerate.
7079 2010-01-05  Paolo Carlini  <paolo.carlini@oracle.com>
7081         * testsuite/22_locale/time_get/get_monthname/char/6.cc: New.
7082         * testsuite/22_locale/time_get/get_monthname/wchar_t/6.cc: Likewise.
7083         * testsuite/22_locale/time_get/get_weekday/char/6.cc: Likewise.
7084         * testsuite/22_locale/time_get/get_weekday/wchar_t/6.cc: Likewise.
7086 2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
7088         * include/profile/list: Implement DR 1133 here too.
7090         * testsuite/25_algorithms/set_intersection/34730.cc: Do not force
7091         debug-mode, leads to spurious failures in profile-mode.
7092         * testsuite/25_algorithms/upper_bound/33613.cc: Likewise.
7093         * testsuite/25_algorithms/lower_bound/33613.cc: Likewise.
7094         * testsuite/25_algorithms/set_difference/35541.cc: Likewise.
7095         * testsuite/21_strings/basic_string/40160.cc: Likewise.
7096         * testsuite/26_numerics/random/uniform_real_distribution/
7097         cons/parms_neg.cc: Likewise.
7098         * testsuite/26_numerics/random/uniform_int_distribution/
7099         cons/parms_neg.cc: Likewise.
7100         * testsuite/23_containers/unordered_map/requirements/debug_mode.cc:
7101         Likewise.
7102         * testsuite/23_containers/multimap/14340.cc: Likewise.
7103         * testsuite/23_containers/bitset/18604.cc: Likewise.
7104         * testsuite/23_containers/set/14340.cc: Likewise.
7105         * testsuite/23_containers/set/18604.cc: Likewise.
7106         * testsuite/23_containers/unordered_set/requirements/
7107         debug_mode.cc: Likewise.
7108         * testsuite/23_containers/vector/
7109         debug_mode_requires_reallocation-1.cc: Likewise.
7110         * testsuite/23_containers/vector/
7111         debug_mode_requires_reallocation-2.cc: Likewise.
7112         * testsuite/23_containers/vector/14340.cc: Likewise.
7113         * testsuite/23_containers/vector/15523.cc: Likewise.
7114         * testsuite/23_containers/vector/18604.cc: Likewise.
7115         * testsuite/23_containers/deque/14340.cc: Likewise.
7116         * testsuite/23_containers/deque/18604.cc: Likewise.
7117         * testsuite/23_containers/multiset/14340.cc: Likewise.
7118         * testsuite/23_containers/list/operations/35969.cc: Likewise.
7119         * testsuite/23_containers/list/14340.cc: Likewise.
7120         * testsuite/23_containers/list/18604.cc: Likewise.
7121         * testsuite/23_containers/map/14340.cc: Likewise.
7122         * testsuite/23_containers/map/18604.cc: Likewise.
7123         * testsuite/tr1/5_numerical_facilities/random/uniform_int/
7124         cons/range_neg.cc: Likewise.
7126         * testsuite/23_containers/unordered_map/requirements/
7127         explicit_instantiation/2.cc: Do not instantiate for
7128         non-defaultconstructible mapped_type.
7130 2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
7132         * include/debug/set.h: Implement DR 130 here too.
7133         * include/debug/multiset.h: Likewise.
7134         * include/debug/map.h: Likewise.
7135         * include/debug/multimap.h: Likewise.
7136         * include/profile/set.h: Implement DR 130 fully.
7137         * include/profile/multiset.h: Likewise.
7138         * include/profile/map.h: Likewise.
7139         * include/profile/multimap.h: Likewise.
7140         * include/debug/list: Implement DR 1133 here too.
7141         * include/ext/pb_ds/detail/debug_map_base.hpp: Comment out for
7142         now uses of __gnu_cxx::throw_allocator.
7143         * testsuite/21_strings/basic_string/40160.cc: Don't pass
7144         explicitly -D_GLIBCXX_DEBUG, doesn't play well with profile-mode
7145         testing.
7147 2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
7149         * include/profile/bitset (bitset<>::bitset(unsigned long long)): Add
7150         in C++0x mode.
7151         * include/debug/bitset (bitset<>::bitset(unsigned long long)):
7152         Likewise.
7154 2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
7156         * include/tr1_impl/hashtable (_Hashtable<>): Remove insert_return_type
7157         typedef.
7158         * include/profile/unordered_map (unordered_map<>::insert(const
7159         value_type&), unordered_multimap<>::insert(const value_type&)): Adjust.
7160         * include/profile/unordered_set (unordered_set<>::insert(const
7161         value_type&), unordered_multimap<>::insert(const value_type&)):
7162         Likewise.
7164 2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
7166         * include/bits/stl_pair.h (pair<>::pair(_U1&&, const _T2&),
7167         pair<>::pair(const _T1&, _U2&&), pair<>::pair(_U1&&, _U2&&)):
7168         Use std::is_constructible instead of std::is_convertible.
7170 2010-01-01  Paolo Carlini  <paolo.carlini@oracle.com>
7172         Revert last change, reinstantiate basic_string and vstring tests.
7174 2010-01-01  Paolo Carlini  <paolo.carlini@oracle.com>
7176         * testsuite/21_strings/basic_string/requirements/exception/
7177         propagation_consistent.cc: Remove, cannot instantiate basic_string
7178         for non-PODs (21/1).
7179         * testsuite/21_strings/basic_string/requirements/exception/
7180         basic.cc: Likewise.
7181         * testsuite/21_strings/basic_string/requirements/exception/
7182         generation_prohibited.cc: Likewise.
7183         * testsuite/ext/vstring/requirements/exception/
7184         propagation_consistent.cc: Likewise.
7185         * testsuite/ext/vstring/requirements/exception/basic.cc:
7186         Likewise.
7187         * testsuite/ext/vstring/requirements/exception/
7188         generation_prohibited.cc: Likewise.
7190 Copyright (C) 2010 Free Software Foundation, Inc.
7192 Copying and distribution of this file, with or without modification,
7193 are permitted in any medium without royalty provided the copyright
7194 notice and this notice are preserved.