]> rtime.felk.cvut.cz Git - l4.git/blob - l4/pkg/libstdc++-v3/contrib/libstdc++-v3-4.9/ChangeLog-2010
update
[l4.git] / l4 / pkg / libstdc++-v3 / contrib / libstdc++-v3-4.9 / ChangeLog-2010
1 2010-12-31  Benjamin Kosnik  <bkoz@redhat.com>
2
3         * scripts/run_doxygen: Allow doxygen 1.7.1 again.
4
5         * doc/xml/manual/build_hacking.xml: Update.
6         * doc/xml/images/confdeps.dot: Same.
7         * doc/xml/images/confdeps.png: Same.
8
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.
26
27 2010-12-31  Benjamin Kosnik  <bkoz@redhat.com>
28
29         * doc/doxygen/user.cfg.in: Disable PDF_HYPERLINKS.
30
31 2010-12-19  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
32
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.
39
40 2010-12-19  Paolo Carlini  <paolo.carlini@oracle.com>
41
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.
46
47 2010-12-19  Paolo Carlini  <paolo.carlini@oracle.com>
48
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.
52
53 2010-11-18  Benjamin Kosnik  <bkoz@redhat.com>
54
55         * config/*/*: Use headername alias to associate private includes
56         to public includes.
57         * include/*/*: Same.
58
59         * scripts/run_doxygen: Update for doxygen 1.7.2.
60         * doc/doxygen/user.cfg.in: Same.
61         * doc/doxygen/TODO: Remove.
62
63         * testsuite/*/std_c++0x_neg.cc: Adjust line number.
64
65 2010-12-17  Paolo Carlini  <paolo.carlini@oracle.com>
66
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.
75
76 2010-12-17  Paolo Carlini  <paolo.carlini@oracle.com>
77
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.
87
88 2010-11-16  Benjamin Kosnik  <bkoz@redhat.com>
89
90         * testsuite/util/testsuite_iterators.h: Guard move.h includes.
91         * testsuite/util/testsuite_allocator.h: Same.
92
93         * testsuite/20_util/temporary_buffer.cc: Use typedef, qualify.
94
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.
105
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.
139
140 2010-12-15  Paolo Carlini  <paolo.carlini@oracle.com>
141
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.
150
151 2010-12-15  Jonathan Wakely  <jwakely.gcc@gmail.com>
152
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.
156
157 2010-12-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
158
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.
166
167 2010-12-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
168
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.
175
176 2010-12-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
177
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.
183
184 2010-12-12  Paolo Carlini  <paolo.carlini@oracle.com>
185
186         * testsuite/util/testsuite_abi.cc (check_version): Don't push back
187         GLIBCXX_3.4.16, unused.
188
189 2010-12-10  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
190
191         * testsuite/lib/libstdc++.exp (v3-build_support): Delete
192         libtestc++.a before creation.
193
194 2010-12-10  Jack Howarth  <howarth@bromo.med.uc.edu>
195             Iain Sandoe  <iains@gcc.gnu.org>
196
197         PR 43751/target
198         * testsuite/lib/prune.exp: Prune dsymutil warnings.
199
200 2010-12-08  Nathan Froyd  <froydnj@codesourcery.com>
201
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.
206
207 2010-12-08  Paolo Carlini  <paolo.carlini@oracle.com>
208
209         * include/std/bitset (_Base_bitset<>::_Base_bitset(),
210         _Base_bitset(unsigned long)): Simplify.
211
212 2010-12-07  François Dumont  <francois.cppdevs@free.fr>
213
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.
224
225 2010-12-06  Paul Pluzhnikov  <ppluzhnikov@google.com>
226
227         PR libstdc++/46830
228         * include/ext/sso_string_base.h (__sso_string_base<>::_M_swap):
229         Early return when this == &__rcs.
230
231 2010-12-06  Paolo Carlini  <paolo.carlini@oracle.com>
232
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.
249
250 2010-12-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
251
252         * acinclude.m4 (symvers_renaming): Also set if enable_symvers = no.
253         * configure: Regenerate.
254
255 2010-12-06  Paolo Carlini  <paolo.carlini@oracle.com>
256
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.
263
264 2010-12-06  Dave Korn  <dave.korn.cygwin@gmail.com>
265
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.
280
281 2010-12-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
282
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.
291
292 2010-12-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
293
294         * src/future.cc (future_category): Export compatibility symbol.
295         * config/abi/pre/gnu.ver: Move _ZSt15future_categoryv to 3.4.15
296         version.
297
298 2010-12-02  François Dumont  <francois.cppdevs@free.fr>
299
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.
307
308 2010-12-02  Kai Tietz  <kai.tietz@onevision.com>
309
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.
314
315 2010-12-01  François Dumont  <francois.cppdevs@free.fr>
316
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.
320
321 2010-12-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
322
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.
335
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.
341
342 2010-11-30  Paolo Carlini  <paolo.carlini@oracle.com>
343
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.
356
357 2010-11-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
358
359         PR libstdc++/46689
360         * testsuite/20_util/shared_ptr/comparison/cmp.cc: Remove tests for
361         invalid comparisons.
362
363 2010-11-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
364
365         * include/bits/shared_ptr_base.h (operator>, operator>=, operator<=):
366         Remove comparisons not specified in the C++0x draft.
367
368 2010-11-27  François Dumont  <francois.cppdevs@free.fr>
369
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.
376
377 2010-11-27  François Dumont  <francois.cppdevs@free.fr>
378
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.
383
384 2010-11-27  François Dumont  <francois.cppdevs@free.fr>
385
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.
390
391 2010-11-26  François Dumont  <francois.cppdevs@free.fr>
392
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.
399
400 2010-11-25  François Dumont  <francois.cppdevs@free.fr>
401
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.
432
433 2010-11-24  Benjamin Kosnik  <bkoz@redhat.com>
434
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.
443
444         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust line number.
445
446 2010-11-24  Paolo Carlini  <paolo.carlini@oracle.com>
447
448         * testsuite/30_threads/future/cons/constexpr.cc: Add dg-require*
449         directives.
450         * testsuite/30_threads/shared_future/cons/constexpr.cc: Likewise.
451
452 2010-11-23  Benjamin Kosnik  <bkoz@redhat.com>
453
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
460
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.
468
469 2010-11-23  Benjamin Kosnik  <bkoz@redhat.com>
470             Jason Merrill  <jason@redhat.com>
471
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.
482
483 2010-11-23  Benjamin Kosnik  <bkoz@redhat.com>
484             Jonathan Wakely  <jwakely.gcc@gmail.com>
485
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.
490
491 2010-11-23  Uros Bizjak  <ubizjak@gmail.com>
492
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.
496
497 2010-11-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
498
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.
503
504 2010-11-18  Paolo Carlini  <paolo.carlini@oracle.com>
505
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.
517
518 2010-11-18  H.J. Lu  <hongjiu.lu@intel.com>
519
520         PR other/42670
521         * testsuite/abi/demangle/regression/cw-13.cc: Updated.
522
523 2010-11-18  Paolo Carlini  <paolo.carlini@oracle.com>
524
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.
531
532 2010-11-17  François Dumont  <francois.cppdevs@free.fr>
533
534         * testsuite/lib/libstdc++.exp (check_v3_target_debug_mode): Clean
535         built exe.
536
537 2010-11-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
538
539         PR libstdc++/45711
540         * src/Makefile.am (stamp-debug): Also adjust VPATH.
541         * src/Makefile.in: Regenerate.
542
543 2010-11-15  Jie Zhang  <jie@codesourcery.com>
544
545         * testsuite/ext/profile/mh.cc: Add xfail for uclibc.
546
547 2010-11-14  Matthias Klose  <doko@ubuntu.com>
548
549         * testsuite/28_regex/13_ecmascript: Remove, empty directory.
550         * testsuite/28_regex/02_definitions: Likewise.
551         * testsuite/29_atomics/headers/stdatomic.h: Likewise.
552
553 2010-11-14  Paolo Carlini  <paolo.carlini@oracle.com>
554
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.
567
568 2010-11-12  Ian Lance Taylor  <iant@google.com>
569
570         PR other/46332
571         * testsuite/abi/demangle/abi_examples/14.cc (main): Change
572         expected demangling.
573
574 2010-11-11  Paolo Carlini  <paolo.carlini@oracle.com>
575
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.
583
584 2010-11-10  François Dumont  <francois.cppdevs@free.fr>
585
586         * include/profile/unordered_map (unordered_map<>::_M_profile_size):
587         Simplify, don't take a __new_size argument; adjust all callers.
588
589 2010-11-10  Paolo Carlini  <paolo.carlini@oracle.com>
590
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.
627
628         * include/bits/hashtable.h: Trivial naming changes.
629
630 2010-11-10  Paolo Carlini  <paolo.carlini@oracle.com>
631
632         * include/bits/hashtable.h (_Hashtable<>::_Insert_Conv_Type,
633         _Hashtable<>::_Insert_Return_Type): Change to private.
634
635 2010-11-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
636
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.
642
643 2010-11-09  François Dumont  <francois.cppdevs@free.fr>
644             Johannes Singler  <singler@kit.edu>
645
646         * include/parallel/algobase.h (equal):  Call parallel variant
647         for applicable overloads.
648
649 2010-11-09  Paolo Carlini  <paolo.carlini@oracle.com>
650
651         * include/bits/stl_tree.h (_Rb_tree<>::_M_const_cast_iter): Add
652         and use it throughout.
653
654 2010-11-09  Paolo Carlini  <paolo.carlini@oracle.com>
655
656         PR libstdc++/46385
657         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
658         line number.
659
660 2010-11-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
661
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.
666
667 2010-11-08  Benjamin Kosnik  <bkoz@redhat.com>
668
669         * doc/doxygen/user.cfg.in: Adjust scanned includes.
670         * include/std/forward_list: Make doxygen file markup unambiguous.
671
672 2010-11-08  Jason Merrill  <jason@redhat.com>
673
674         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust
675         expected error.
676
677 2010-11-08  Benjamin Kosnik  <bkoz@redhat.com>
678
679         * include/std/complex (operator==, !=): Mark constexpr.
680         * testsuite/26_numerics/complex/comparison_operators/constexpr.cc: New.
681
682 2010-11-08  Paolo Carlini  <paolo.carlini@oracle.com>
683
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.
702
703 2010-11-07  Paolo Carlini  <paolo.carlini@oracle.com>
704
705         * include/profile/unordered_map (unordered_map<>::operator[](_Key&&)):
706         Add.
707
708 2010-11-07  Paolo Carlini  <paolo.carlini@oracle.com>
709
710         * include/profile/bitset (bitset<>::bitset(), bitset<>::
711         bitset(unsigned long long)): Add constexpr specifier.
712
713 2010-11-07  Paolo Carlini  <paolo.carlini@oracle.com>
714
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.
718
719         * include/debug/bitset (bitset<>::bitset(), bitset<>::
720         bitset(unsigned long long)):  Add missing constexpr specifier.
721
722 2010-11-05  Benjamin Kosnik  <bkoz@redhat.com>
723
724         * doc/doxygen/user.cfg.in: Add typeindex.
725
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.
732
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.
738
739 2010-11-05  Paolo Carlini  <paolo.carlini@oracle.com>
740
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.
761
762 2010-11-05  Benjamin Kosnik  <bkoz@redhat.com>
763
764         * doc/doxygen/user.cfg.in: Remove tr1_impl headers.
765
766         * testsuite/tr1/4_metaprogramming/integral_constant/requirements/
767         constexpr_data.cc: New.
768
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.
774
775 2010-11-04  Paolo Carlini  <paolo.carlini@oracle.com>
776
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.
782
783 2010-11-04  Paolo Carlini  <paolo.carlini@oracle.com>
784
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.
788
789 2010-11-03  Benjamin Kosnik  <bkoz@redhat.com>
790
791         * include/std/tuple (tuple): Make default constructors constexpr.
792         * testsuite/20_util/tuple/cons/constexpr.cc: Add.
793
794         * testsuite/18_support/initializer_list/requirements/
795         constexpr_functions.cc: Add.
796         * testsuite/18_support/initializer_list/constexpr.cc: Add.
797
798 2010-11-03  Paolo Carlini  <paolo.carlini@oracle.com>
799
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.
803
804 2010-11-02  Benjamin Kosnik  <bkoz@redhat.com>
805
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.
812
813 2010-11-02  Paolo Carlini  <paolo.carlini@oracle.com>
814
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.
819
820         * include/tr1/cmath: Remove tr1_impl leftover macro.
821
822 2010-11-02  Paolo Carlini  <paolo.carlini@oracle.com>
823
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.
914
915 2010-11-02  Paolo Carlini  <paolo.carlini@oracle.com
916
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.
962
963         * testsuite/tr1/4_metaprogramming/integral_constant/
964         requirements/constexpr_data.cc: Remove.
965
966 2010-11-02  Jason Merrill  <jason@redhat.com>
967
968         * include/bits/atomic_0.h (_ATOMIC_CMPEXCHNG_): Use C-style cast.
969
970 2010-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
971
972         PR target/45693
973         * configure.host (osf*): Set os_include_dir to os/generic.
974         Add -lpthread to OPT_LDFLAGS.
975
976 2010-11-02  Paolo Carlini  <paolo.carlini@oracle.com>
977
978         * include/std/bitset (_Base_bitset<>_Base_bitset(unsigned long long)):
979         Convert __val to _WordT.
980
981 2010-11-01  Benjamin Kosnik  <bkoz@redhat.com>
982
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.
994
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.
1000
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.
1004
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.
1013
1014         * testsuite/util/testsuite_common_types.h: Adjust init.
1015
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.
1021
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.
1029
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.
1034
1035         * testsuite/util/testsuite_common_types.h: Reset condition.
1036
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.
1041
1042         PR libstdc++/46134
1043         * include/std/chrono: Use default constructor.
1044         * testsuite/util/testsuite_common_types.h
1045         (constexpr_default_constructible): Adjust condition.
1046
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.
1051
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.
1075
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.
1084
1085         * include/bits/char_traits.h: Add constexpr as per N3126 draft.
1086         * testsuite/21_strings/char_traits/requirements/constexpr_functions.cc:
1087         New.
1088
1089         * include/tr1_impl/array: Add constexpr as per N3126 draft.
1090         * testsuite/23_containers/array/requirements/
1091         constexpr_functions.cc: New.
1092
1093         * include/bits/shared_ptr.h: Revert changes.
1094         * include/bits/unique_ptr.h: Same.
1095
1096         * include/std/chrono: Adjust.
1097         * include/tr1_impl/type_traits: Same.
1098
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.
1112
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.
1118
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.
1137
1138         * doc/doxygen/user.cfg.in: Replace _GLIBCXX_USE_CONSTEXPR,
1139         _GLIBCXX_CONSTEXPR for doxygen generation.
1140
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
1149
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.
1156
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.
1166
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.
1172
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.
1204
1205         * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.16.
1206
1207 2010-11-01  Jason Merrill  <jason@redhat.com>
1208
1209         * libsupc++/initializer_list: Decorate with constexpr.
1210
1211 2010-11-01  Jonathan Wakely  <jwakely.gcc@gmail.com>
1212
1213         PR libstdc++/45999
1214         * python/libstdcxx/v6/printers.py (StdVectorPrinter): Replace
1215         conditional expression with backward-compatible if-else.
1216
1217 2010-11-01  Jie Zhang  <jie@codesourcery.com>
1218
1219         * config/abi/pre/gnu.ver: Export __emutls_v._ZSt11__once_call
1220         and __emutls_v._ZSt15__once_callable.
1221
1222 2010-10-31  Paolo Carlini  <paolo.carlini@oracle.com>
1223
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.
1227
1228 2010-10-29  Paolo Carlini  <paolo.carlini@oracle.com>
1229
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.
1235
1236 2010-10-28  Paolo Carlini  <paolo.carlini@oracle.com>
1237
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.
1267
1268         * testsuite/23_containers/unordered_map/insert/array_syntax.cc:
1269         Minor cosmetic changes.
1270
1271 2010-10-27  Jason Merrill  <jason@redhat.com>
1272
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.
1277
1278 2010-10-26  Paolo Carlini  <paolo.carlini@oracle.com>
1279
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.
1290
1291 2010-10-25  Paolo Carlini  <paolo.carlini@oracle.com>
1292
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.
1298
1299         * include/bits/forward_list.h (_Fwd_list_base<>::_Fwd_list_base(),
1300         _Fwd_list_base(const _Alloc&)): Don't zero again _M_next.
1301
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.
1310
1311 2010-10-25  Paolo Carlini  <paolo.carlini@oracle.com>
1312
1313         * include/bits/hashtable.h (_Hashtable<>:_M_get_Value_allocator):
1314         Remove, unused.
1315
1316 2010-10-24  François Dumont  <francois.cppdevs@free.fr>
1317
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'.
1321
1322 2010-10-18  Paolo Carlini  <paolo.carlini@oracle.com>
1323
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.
1331
1332 2010-10-17  Paolo Carlini  <paolo.carlini@oracle.com>
1333
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.
1351
1352 2010-10-17  Paolo Carlini  <paolo.carlini@oracle.com>
1353
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.
1360
1361 2010-10-15  Paolo Carlini  <paolo.carlini@oracle.com>
1362
1363         * include/std/functional (function<>::operator==, operator!=):
1364         Remove, per LWG 1240.
1365         * testsuite/20_util/function/cmp/cmp_neg.cc: Adjust dg-* directives.
1366
1367 2010-10-13  Jonathan Wakely  <jwakely.gcc@gmail.com>
1368
1369         PR libstdc++/45990
1370         * include/bits/regex.h (regex_traits::isctype): DR 1337.
1371
1372 2010-10-13  Paolo Carlini  <paolo.carlini@oracle.com>
1373
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.
1412
1413 2010-10-12  Paolo Carlini  <paolo.carlini@oracle.com>
1414
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.
1419
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.
1426
1427 2010-10-12  Paolo Carlini  <paolo.carlini@oracle.com>
1428
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.
1433
1434 2010-10-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
1435
1436         * testsuite/23_containers/bitset/cons/2.cc: Tweak.
1437
1438 2010-10-11  Paolo Carlini  <paolo.carlini@oracle.com>
1439
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.
1447
1448 2010-10-11  Benjamin Kosnik  <bkoz@redhat.com>
1449
1450         * doc/xml/api.xml: Add link to 4.5 generated docs.
1451
1452 2010-10-08  Paolo Carlini  <paolo.carlini@oracle.com>
1453
1454         * include/std/future (_Result_alloc): Derive from _Alloc,
1455         exploit the Empty Base Optimization.
1456
1457 2010-10-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
1458
1459         PR libstdc++/45403
1460         * python/libstdcxx/v6/printers.py: Check for lazy_string support.
1461
1462 2010-10-08  Paolo Carlini  <paolo.carlini@oracle.com>
1463
1464         * include/std/future (uses_allocator<packaged_task<>,>): Add;
1465         minor formatting tweaks.
1466
1467 2010-10-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
1468
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.
1472
1473 2010-10-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
1474
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.
1483
1484 2010-10-07  Hans-Peter Nilsson  <hp@axis.com>
1485
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.
1491
1492         * testsuite/libstdc++-dg/conformance.exp: Apply
1493         check_v3_target_fileio as a gate for tests in
1494         subdirectories matching the substring _filebuf.
1495
1496 2010-10-07  Paolo Carlini  <paolo.carlini@oracle.com>
1497
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.
1502
1503 2010-10-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
1504
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.
1509
1510 2010-10-06  Paolo Carlini  <paolo.carlini@oracle.com>
1511
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.
1520
1521 2010-10-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1522
1523         PR libstdc++/45863
1524         * scripts/extract_symvers: Restore revision 164879.
1525         Only use pvs on SunOS.
1526
1527 2010-10-05  David Krauss  <potswa@mac.com>
1528
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.
1538
1539 2010-10-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
1540
1541         * include/bits/locale_facets_nonio.h (time_get::get_time): Doc typo.
1542         (time_get::get_date): Likewise.
1543
1544 2010-10-05  Paolo Carlini  <paolo.carlini@oracle.com>
1545
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.
1554
1555 2010-10-05  Sebastian Huber  <sebastian.huber@embedded-brains.de>
1556             Jonathan Wakely  <jwakely.gcc@gmail.com>
1557
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.
1563
1564 2010-10-04  Paolo Carlini  <paolo.carlini@oracle.com>
1565
1566         * include/std/functional (function<>::swap): Use std::swap.
1567         * include/tr1/functional (function<>::swap): Likewise.
1568
1569 2010-10-04  Andreas Schwab  <schwab@redhat.com>
1570
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.
1581
1582 2010-10-02  H.J. Lu  <hongjiu.lu@intel.com>
1583
1584         PR libstdc++/45863
1585         * scripts/extract_symvers: Revert the pvs change.
1586
1587 2010-10-01  Benjamin Kosnik  <bkoz@redhat.com>
1588
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.
1593
1594 2010-10-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1595
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.
1608
1609 2010-09-30  Michael Eager  <eager@eagercon.com>
1610
1611         * config/cpu/microblaze/cpu_defines.h: New. Define
1612         _GLIBCXX_NO_VERBOSE_TERMINATE for MicroBlaze.
1613
1614 2010-09-29  Paolo Carlini  <paolo.carlini@oracle.com>
1615
1616         * include/Makefile.am: Add debug/forward_list.
1617         * include/Makefile.in: Regenerate.
1618
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.
1625
1626 2010-09-29  François Dumont  <francois.cppdevs@free.fr>
1627
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
1650
1651 2010-09-28  DJ Delorie  <dj@redhat.com>
1652
1653         * libsupc++/hash_bytes.cc (_Hash_bytes): Replace "clength" with
1654         "len" for "unusual sizeof(size_t)" case.
1655
1656 2010-09-28  Matt Austern  <austern@google.com>
1657
1658         * testsuite/20_util/hash/chi2_quality.cc: New.
1659         * testsuite/20_util/hash/quality.cc: Likewise.
1660
1661 2010-09-27  Paolo Carlini  <paolo.carlini@oracle.com>
1662
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.
1672
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.
1676
1677 2010-09-27  Paolo Carlini  <paolo.carlini@oracle.com>
1678
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.
1690
1691 2010-09-22  David Krauss  <potswa@mac.com>
1692
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..."
1716
1717 2010-09-22  Paolo Carlini  <paolo.carlini@oracle.com>
1718
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.
1732
1733 2010-09-22  Paolo Carlini  <paolo.carlini@oracle.com>
1734
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.
1743
1744         * testsuite/18_support/type_info/hash_code.cc: Tweak.
1745
1746 2010-09-22  Paolo Carlini  <paolo.carlini@oracle.com>
1747
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.
1757
1758 2010-09-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1759
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.
1764
1765 2010-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1766
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.
1775
1776 2010-09-19  Paolo Carlini  <paolo.carlini@oracle.com>
1777
1778         * src/hash_bytes.cc: Compile load_bytes and shift_mix only when
1779         __SIZEOF_SIZE_T__ == 8.
1780
1781 2010-09-17  Luc Hermitte  <hermitte@free.fr>
1782             Paolo Carlini  <paolo.carlini@oracle.com>
1783
1784         PR libstdc++/45713
1785         * include/std/bitset: Fix _GLIBCXX_BITSET_WORDS macro.
1786         * testsuite/23_containers/bitset/45713.cc: New.
1787
1788 2010-09-16  Paolo Carlini  <paolo.carlini@oracle.com>
1789
1790         * include/bits/stl_raw_storage_iter.h (raw_storage_iterator<>::
1791         operator=(const _Tp&)): Use std::__addressof.
1792
1793 2010-09-16  Paolo Carlini  <paolo.carlini@oracle.com>
1794
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.
1805
1806         * testsuite/19_diagnostics/system_error/what-4.cc: Tidy includes.
1807
1808 2010-09-16  Paolo Carlini  <paolo.carlini@oracle.com>
1809
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.
1821
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.
1826
1827 2010-09-15  François Dumont  <francois.cppdevs@free.fr>
1828
1829         * testsuite/lib/libstdc++.exp,([check_v3_target_namedlocale]):
1830         Clean temporary source file once compiled.
1831
1832 2010-09-15  Paolo Carlini  <paolo.carlini@oracle.com>
1833
1834         * doc/xml/manual/prerequisites.xml: Update "C" library locale
1835         information prerequisites.
1836
1837 2010-09-15  François Dumont  <francois.cppdevs@free.fr>
1838
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.
2003
2004 2010-09-14  Matt Austern  <austern@google.com>
2005             Paolo Carlini  <paolo.carlini@oracle.com>
2006
2007         * testsuite/performance/21_strings/hash.cc: New.
2008
2009 2010-09-14  Paolo Carlini  <paolo.carlini@oracle.com>
2010
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.
2023
2024 2010-09-13  Benjamin Kosnik  <bkoz@redhat.com>
2025
2026         * doc/xml/api.xml: Add title.
2027         * doc/xml/manual/spine.xml: Same.
2028         * doc/xml/spine.xml: Same.
2029
2030 2010-09-13  Matt Austern  <austern@google.com>
2031
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.
2053
2054 2010-09-13  Paolo Carlini  <paolo.carlini@oracle.com>
2055
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.
2059
2060 2010-09-13  Paolo Carlini  <paolo.carlini@oracle.com>
2061
2062         * testsuite/27_io/basic_filebuf/seekoff/char/4.cc: New.
2063         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/4.cc: Likewise.
2064
2065 2010-09-10  Paolo Carlini  <paolo.carlini@oracle.com>
2066
2067         * src/hash-string-aux.cc: Remove. Move contents...
2068         * src/hash_tr1.cc: ... here.
2069         * src/compatibility-c++0x.cc: ... and here.
2070
2071 2010-09-09  Paolo Carlini  <paolo.carlini@oracle.com>
2072
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.
2077
2078 2010-09-09  Paolo Carlini  <paolo.carlini@oracle.com>
2079
2080         * libsupc++/cxxabi.h: Uglify nothrow to __nothrow__; fix a few
2081         inconsistent uglifications everywhere.
2082
2083 2010-09-07  Paolo Carlini  <paolo.carlini@oracle.com>
2084             Marc Glisse  <marc.glisse@normalesup.org>
2085
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.
2095
2096 2010-09-07  Paolo Carlini  <paolo.carlini@oracle.com>
2097
2098         PR libstdc++/45398
2099         * include/std/atomic (atomic<_TP*>::store): Define.
2100
2101         * include/std/atomic (atomic<_TP*>::load, exchange): Define inline.
2102
2103 2010-09-06  Jason Merrill  <jason@redhat.com>
2104
2105         * testsuite/libstdc++-abi/abi.exp: Add "libstdc++-abi/" to
2106         abi_check FAIL message.
2107
2108 2010-09-03  Paolo Carlini  <paolo.carlini@oracle.com>
2109
2110         PR libstdc++/45347
2111         * include/ext/concurrence.h: Add #pragma GCC system_header.
2112
2113 2010-09-03  François Dumont <francois.cppdevs@free.fr>
2114
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.
2247
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.
2276
2277         * testsuite/21_strings/basic_string/element_access/char: Tidy.
2278         * testsuite/21_strings/basic_string/element_access/wchar_t: Likewise.
2279
2280 2010-09-02  Paolo Carlini  <paolo.carlini@oracle.com>
2281
2282         PR libstdc++/40974
2283         * include/Makefile.am: Add -nostdinc++ to PCHFLAGS.
2284         * include/Makefile.in: Regenerate.
2285
2286 2010-09-01  Christopher Yeleighton  <giecrilj@stegny.2a.pl>
2287             Paolo Carlini  <paolo.carlini@oracle.com>
2288
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.
2294
2295 2010-08-31  Paolo Carlini  <paolo.carlini@oracle.com>
2296
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.
2306
2307         * include/bits/hashtable.h (_Hashtable<>::_M_erase): Remove.
2308         (erase(const_iterator)): Inline the latter.
2309
2310 2010-08-31  Paolo Carlini  <paolo.carlini@oracle.com>
2311
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.
2316
2317 2010-08-29  Paolo Carlini  <paolo.carlini@oracle.com>
2318
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.
2335
2336 2010-08-29  François Dumont  <francois.cppdevs@free.fr>
2337
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.
2422
2423 2010-08-26  Benjamin Kosnik  <bkoz@redhat.com>
2424
2425         * include/bits/stl_iterator_base_types.h: Fix doxygen warning.
2426
2427 2010-08-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2428
2429         * configure: Regenerate.
2430
2431 2010-08-18  Kostya Serebryany <kcc@google.com>
2432             Paolo Carlini  <paolo.carlini@oracle.com>
2433
2434         PR libstdc++/45276
2435         * doc/xml/manual/debug.xml ([debug.races]): Add.
2436
2437 2010-08-17  Paolo Carlini  <paolo.carlini@oracle.com>
2438
2439         PR libstdc++/45300
2440         * include/c_std/cwchar: Replace 'restrict' -> '__restrict'.
2441         * include/c_global/cwchar: Likewise.
2442
2443 2010-08-16  Paolo Carlini  <paolo.carlini@oracle.com>
2444
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.
2450
2451 2010-08-16  Chris Moller  <cmoller@redhat.com>
2452
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>.
2456
2457 2010-08-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
2458
2459         PR libstdc++/45283
2460         * testsuite/performance/30_threads/future/polling.cc: Replace calls to
2461         shared_future::is_ready.
2462
2463 2010-08-13  Paolo Carlini  <paolo.carlini@oracle.com>
2464
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.
2481
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.
2490
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.
2521
2522 2010-08-13  Paolo Carlini  <paolo.carlini@oracle.com>
2523
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.
2528
2529 2010-08-13  Paolo Carlini  <paolo.carlini@oracle.com>
2530
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.
2543
2544         * testsuite/23_containers/unordered_set/hash_policy/26132.cc: New.
2545
2546 2010-08-13  Paolo Carlini  <paolo.carlini@oracle.com>
2547
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.
2557
2558 2010-08-12  Kostya Serebryany <kcc@google.com>
2559             Paolo Carlini  <paolo.carlini@oracle.com>
2560
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.
2574
2575 2010-08-11  Paolo Carlini  <paolo.carlini@oracle.com>
2576
2577         * include/bits/hashtable.h (_Hashtable<>::erase(const key_type&)):
2578         Use std::__addressof.
2579
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.
2584
2585 2010-08-11  Paolo Carlini  <paolo.carlini@oracle.com>
2586
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.
2594
2595 2010-08-11  Paolo Carlini  <paolo.carlini@oracle.com>
2596
2597         * include/bits/move.h (forward): Reinstate the N2835 version.
2598
2599 2010-08-11  Paolo Carlini  <paolo.carlini@oracle.com>
2600
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.
2618
2619 2010-08-11  Paolo Carlini  <paolo.carlini@oracle.com>
2620
2621         * include/bits/unique_ptr.h: Replace _Tp_Deleter -> _Dp, and
2622         _Up_Deleter -> _Ep.
2623
2624 2010-08-10  Paolo Carlini  <paolo.carlini@oracle.com>
2625
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.
2631
2632 2010-08-10  Paolo Carlini  <paolo.carlini@oracle.com>
2633
2634         * testsuite/ext/stdio_sync_filebuf/char/1.cc: Avoid -Wall
2635         warnings.
2636         * testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc: Likewise.
2637
2638 2010-08-10  Paolo Carlini  <paolo.carlini@oracle.com>
2639
2640         * testsuite/23_containers/array/range_access.cc: Avoid -Wall
2641         warnings.
2642
2643 2010-08-10  Paolo Carlini  <paolo.carlini@oracle.com>
2644
2645         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Avoid -Wall
2646         warnings.
2647
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.
2657
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.
2661
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.
2668
2669 2010-08-10  Paolo Carlini  <paolo.carlini@oracle.com>
2670
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.
2681
2682         * include/std/tuple (_Tuple_impl<>::_Tuple_impl(const _Tuple_impl&)):
2683         Defaulted.
2684
2685         * include/std/tuple (tuple<typename _T1, typename _T2>
2686         ::operator=(pair<_U1, _U2>&&)): Use forward.
2687
2688 2010-08-08  Paolo Carlini  <paolo.carlini@oracle.com>
2689
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.
2701
2702 2010-08-08  Paolo Carlini  <paolo.carlini@oracle.com>
2703
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.
2709
2710 2010-08-06  David Malcolm  <dmalcolm@redhat.com>
2711             Jan Kratochvil  <jan.kratochvil@redhat.com>
2712
2713         * python/hook.in: Rename variable dir to dir_.
2714
2715 2010-08-06  Jason Merrill  <jason@redhat.com>
2716
2717         * include/std/thread: Add deleted thread(thread&).
2718         * testsuite/30_threads/thread/cons/copy_neg.cc: Remove XFAIL.
2719
2720 2010-08-06  Paolo Carlini  <paolo.carlini@oracle.com>
2721
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.
2729
2730 2010-08-06  Paolo Carlini  <paolo.carlini@oracle.com>
2731
2732         * include/std/tuple (begin, end): Remove per GB 87.
2733         * testsuite/20_util/tuple/range_access.cc: Remove.
2734
2735 2010-08-06  Paolo Carlini  <paolo.carlini@oracle.com>
2736
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.
2741
2742 2010-08-05  Paolo Carlini  <paolo.carlini@oracle.com>
2743
2744         * include/tr1_impl/utility (begin, end): Remove per GB 85.
2745         * testsuite/20_util/pair/range_access.cc: Remove.
2746
2747         * include/std/functional (function<>::function()): Remove explicit,
2748         per JP 3.
2749
2750 2010-08-05  Paolo Carlini  <paolo.carlini@oracle.com>
2751
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.
2789
2790 2010-07-27  Paolo Carlini  <paolo.carlini@oracle.com>
2791
2792         * acinclude.m4 ([GLIBCXX_COMPUTE_STDIO_INTEGER_CONSTANTS]): Fix
2793         messages.
2794         * configure: Regenerate.
2795
2796 2010-07-27  Paolo Carlini  <paolo.carlini@oracle.com>
2797
2798         * include/ext/vstring_util.h: Include bits/range_access.h.
2799         * testsuite/ext/vstring/range_access.cc: New test.
2800
2801 2010-07-27  Ed Smith-Rowland  <3dw4rd@verizon.net>
2802
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.
2843
2844 2010-07-27  Paolo Carlini  <paolo.carlini@oracle.com>
2845             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2846
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.
2858
2859 2010-07-27  Paolo Carlini  <paolo.carlini@oracle.com>
2860
2861         * config/io/c_io_stdio.h: Do not include <cstddef>.
2862
2863 2010-07-26  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2864
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.
2869
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.
2874
2875         * testsuite/ext/enc_filebuf/char/13598.cc: XFAIL before Solaris 11.
2876
2877 2010-07-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
2878
2879         PR libstdc++/45060
2880         * include/bits/hashtable.h (_Hashtable::_Hashtable(_Hashtable&&)):
2881         Reorder mem-initializers.
2882
2883 2010-07-22  Benjamin Kosnik  <bkoz@redhat.com>
2884
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.
2945
2946 2010-07-20  Benjamin Kosnik  <bkoz@redhat.com>
2947
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.
2952
2953         * doc/doxygen/user.cfg.in: Tweak.
2954
2955 2010-07-20  Paolo Carlini  <paolo.carlini@oracle.com>
2956
2957         * libsupc++/unwind-cxx.h: Minor formatting / stylistic tweaks.
2958
2959 2010-07-20  Mikael Pettersson  <mikpe@it.uu.se>
2960
2961         PR libstdc++/44902
2962         * libsupc++/unwind-cxx.h (__cxa_type_match): Correct prototype.
2963         (__cxa_begin_cleanup): Likewise.
2964
2965 2010-07-19  Benjamin Kosnik  <bkoz@redhat.com>
2966
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.
2972
2973 2010-07-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
2974
2975         * doc/xml/manual/shared_ptr.xml: Update.
2976         * doc/html/*: Regenerate.
2977
2978 2010-07-13  Benjamin Kosnik  <bkoz@redhat.com>
2979
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.
2984
2985 2010-07-11  Paolo Carlini  <paolo.carlini@oracle.com>
2986
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.
2993
2994 2010-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2995
2996         PR libstdc++/44875
2997         * doc/xml/manual/status_cxx200x.xml: Corrections to status.
2998         * doc/html/*: Regenerate.
2999
3000 2010-07-08  Benjamin Kosnik  <bkoz@redhat.com>
3001
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.
3013
3014 2010-07-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
3015
3016         * doc/xml/manual/status_cxx200x.xml: Add some missing features.
3017         * doc/html/*: Regenerate.
3018
3019 2010-07-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
3020
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.
3027
3028 2010-07-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3029
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.
3036
3037 2010-07-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3038
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.
3065
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.
3069
3070         * doc/xml/manual/configure.xml (--enable-symvers): Document sun
3071         style.
3072
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.
3088
3089 2010-06-29  Jason Merrill  <jason@redhat.com>
3090
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.
3094
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.
3130
3131 2010-06-29  Paolo Carlini  <paolo.carlini@oracle.com>
3132
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.
3137
3138 2010-06-27  Paolo Carlini  <paolo.carlini@oracle.com>
3139
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.
3144
3145 2010-06-26  Paolo Carlini  <paolo.carlini@oracle.com>
3146
3147         * testsuite/util/testsuite_hooks.h: Cast fn to bool.
3148
3149 2010-06-26  Kees Cook  <kees.cook@canonical.com>
3150
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.
3174
3175 2010-06-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
3176
3177         * doc/xml/faq.xml: Fix typo.
3178         * doc/html/faq.xml: Likewise.
3179
3180 2010-06-25  Stephen M. Webb  <stephen.webb@bregmasoft.ca>
3181
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.
3339
3340 2010-06-25  Paolo Carlini  <paolo.carlini@oracle.com>
3341
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.
3350
3351 2010-06-25  Paolo Carlini  <paolo.carlini@oracle.com>
3352
3353         * include/profile/impl/profiler_trace.h: Uglify it to __it, use
3354         everywhere std::size_t instead of size_t.
3355
3356 2010-06-24  Paolo Carlini  <paolo.carlini@oracle.com>
3357
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.
3361
3362 2010-06-24  Paolo Carlini  <paolo.carlini@oracle.com>
3363
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.
3385
3386         * include/profile/iterator_tracker.h: Formatting and stylistic
3387         tweaks.
3388         * include/profile/base.h: Likewise.
3389         * include/profile/map.h: Likewise.
3390
3391 2010-06-23  Paolo Carlini <paolo.carlini@oracle.com>
3392
3393         * include/bits/stl_tree.h (erase(iterator), erase(const_iterator)):
3394         Remove inline specifier.
3395
3396 2010-06-22  Paolo Carlini  <paolo.carlini@oracle.com>
3397
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.
3410
3411 2010-06-22  Matthias Klose  <doko@ubuntu.com>
3412
3413         * python/libstdcxx/v6/printers.py: Don't use string exceptions.
3414
3415 2010-06-22  Paolo Carlini  <paolo.carlini@oracle.com>
3416
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.
3424
3425 2010-06-21  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3426
3427         * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
3428         Add *-*-solaris2.1[0-9]* to dg-xfail-if, dg-excess-errors.
3429
3430 2010-06-20  Paolo Carlini  <paolo.carlini@oracle.com>
3431             Kai-Uwe Bux  <bux@kubux.net>
3432
3433         * include/bits/random.tcc (uniform_int_distribution<>::operator()):
3434         Fix to work well for arbitrary urng.max() and urng.min().
3435
3436 2010-06-18  Paolo Carlini  <paolo.carlini@oracle.com>
3437
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.
3517
3518 2010-06-17  Paolo Carlini  <paolo.carlini@oracle.com>
3519
3520         * include/bits/stl_uninitialized.h (__uninitialized_default,
3521         __uninitialized_default_n, __uninitialized_default_a,
3522         __uninitialized_default_n_a): Add.
3523
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.
3530
3531 2010-06-16  Paolo Carlini  <paolo.carlini@oracle.com>
3532
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.
3539
3540 2010-06-16  Matthias Klose  <doko@ubuntu.com>
3541
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).
3545
3546 2010-06-15  Jason Merrill  <jason@redhat.com>
3547
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.
3598
3599 2010-06-13  Paolo Carlini <paolo.carlini@oracle.com>
3600
3601         * include/parallel/base.h (min, max): Mark inline.
3602         * include/parallel/set_operations.h (__parallel_set_operation):
3603         Uglify the Operation template parameter.
3604
3605 2010-06-11  Paolo Carlini  <paolo.carlini@oracle.com>
3606
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.
3612
3613 2010-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
3614
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.
3619
3620 2010-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
3621
3622         PR libstdc++/44268
3623         * doc/xml/manual/abi.xml: Fix libgcc version for hppa-linux.
3624
3625 2010-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
3626
3627         * include/std/tuple (_Swallow_assign::operator=): Add const.
3628         (ignore): Replace anonymous namespace member with const instance.
3629
3630 2010-06-10  Suresh Gumpula  <suresh.gumpula@amd.com>
3631
3632         PR libstdc++/43918
3633         * config/os/djgpp/error_constants.h: New.
3634         * configure.host: Use it.
3635
3636 2010-06-10  Paolo Carlini  <paolo.carlini@oracle.com>
3637
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.
3641
3642 2010-06-10  Paolo Carlini  <paolo.carlini@oracle.com>
3643
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.
3653
3654 2010-06-09  Paolo Carlini  <paolo.carlini@oracle.com>
3655
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.
3671
3672 2010-06-09  Khem Raj  <raj.khem@gmail.com>
3673
3674         PR libstdc++/44461
3675         * libsupc++/eh_arm.cc (__cxa_end_cleanup): Use .pushsection/.popsection
3676         to emit inline assembly into .text section.
3677
3678 2010-06-09  Paolo Carlini  <paolo.carlini@oracle.com>
3679
3680         Revert:
3681         2010-06-09  Paolo Carlini  <paolo.carlini@oracle.com>
3682
3683         PR libstdc++/44413
3684         * include/ext/vstring_util.h (__vstring_utility<>::_S_compare):
3685         Simplify, just return -1, 0, 1.
3686
3687 2010-06-09  Iain Sandoe  <iains@gcc.gnu.org>
3688
3689         PR bootstrap/43170
3690         * configure: Regenerate.
3691
3692 2010-06-09  Paolo Carlini  <paolo.carlini@oracle.com>
3693
3694         PR libstdc++/44413
3695         * include/ext/vstring_util.h (__vstring_utility<>::_S_compare):
3696         Simplify, just return -1, 0, 1.
3697
3698 2010-06-08  Paolo Carlini  <paolo.carlini@oracle.com>
3699
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.
3713
3714 2010-06-08  Johannes Singler  <singler@kit.edu>
3715
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.
3722
3723 2010-06-08  Johannes Singler  <singler@kit.edu>
3724
3725         * include/parallel/partial_sum.h
3726         (__parallel_partial_sum_linear):
3727         Correctly calculate part lengths for partial_sum_dilation!=1.
3728
3729 2010-06-07  Paolo Carlini  <paolo.carlini@oracle.com>
3730
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>.
3738
3739         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
3740         error_code.cc: Minor tweak, prefer <cwchar> to <wchar.h>.
3741
3742 2010-06-07  Paolo Carlini  <paolo.carlini@oracle.com>
3743
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.
3919
3920 2010-06-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
3921
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.
3928
3929 2010-06-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
3930
3931         * include/ext/pointer.h (_Pointer_adapter::operator++): Remove
3932         name of unused parameter.
3933
3934 2010-06-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
3935
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.
3946
3947 2010-06-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
3948
3949         * include/bits/shared_ptr_base.h (_Sp_counted_ptr::_M_dispose): Make
3950         nullptr_t specializations inline.
3951
3952 2010-06-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
3953
3954         * doc/xml/manual/status_cxx200x.xml: Update.
3955
3956 2010-06-05  Magnus Fromreide  <magfr@lysator.liu.se>
3957             Jonathan Wakely  <jwakely.gcc@gmail.com>
3958
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.
3962
3963 2010-06-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
3964
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.
3974
3975 2010-06-04  Jason Merrill  <jason@redhat.com>
3976
3977         * testsuite/util/testsuite_abi.h: Work around glibc BZ 9694.
3978
3979 2010-06-03  Paolo Carlini  <paolo.carlini@oracle.com>
3980
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.
4004
4005 2010-06-03  Paolo Carlini  <paolo.carlini@oracle.com>
4006
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.
4432
4433 2010-06-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
4434
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.
4438
4439 2010-06-01  Maxim Kuvyrkov  <maxim@codesourcery.com>
4440
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/*.
4446
4447 2010-05-31  Jonathan Wakely  <jwakely.gcc@gmail.com>
4448
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.
4454
4455 2010-05-31  Paolo Carlini  <paolo.carlini@oracle.com>
4456
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.
4469
4470 2010-05-28  Paolo Carlini  <paolo.carlini@oracle.com>
4471
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.
4482
4483 2010-05-27  Jason Merrill  <jason@redhat.com>
4484
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.
4490
4491 2010-05-27  Paolo Carlini  <paolo.carlini@oracle.com>
4492
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.
4497
4498 2010-05-21  Paolo Carlini  <paolo.carlini@oracle.com>
4499
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.
4506
4507 2010-05-21  Joseph Myers  <joseph@codesourcery.com>
4508
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.
4514
4515 2010-05-21  Paolo Carlini  <paolo.carlini@oracle.com>
4516
4517         * include/tr1/functional: Use std::__addressof.
4518         * include/tr1/hashtable_policy.h: Likewise.
4519
4520 2010-05-20  Paolo Carlini  <paolo.carlini@oracle.com>
4521
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.
4583
4584 2010-05-20  Peter Dimov  <pdimov@pdimov.com>
4585             Paolo Carlini  <paolo.carlini@oracle.com>
4586
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.
4592
4593 2010-05-20  Paolo Carlini  <paolo.carlini@oracle.com>
4594
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.
4600
4601 2010-05-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
4602
4603         * testsuite/30_threads/future/members/wait.cc (wait): Rename.
4604         * testsuite/30_threads/shared_future/members/wait.cc (wait): Likewise.
4605
4606 2010-05-18  Eelis van der Weegen  <gcc-bugzilla@contacts.eelis.net>
4607
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.
4612
4613 2010-05-17  Paolo Carlini  <paolo.carlini@oracle.com>
4614
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.
4619
4620 2010-05-12  Jason Merrill  <jason@redhat.com>
4621
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.
4626
4627 2010-05-11  Silvius Rus  <silvius.rus@gmail.com>
4628
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.
4643
4644 2010-05-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
4645
4646         * libsupc++/exception_ptr.h (make_exception_ptr): Add.
4647         * testsuite/18_support/exception_ptr/make_exception_ptr.cc: New.
4648
4649 2010-05-06  Jason Merrill  <jason@redhat.com>
4650
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.
4653
4654         * config/abi/pre/gnu.ver: Add typeinfo for decltype(nullptr).
4655
4656 2010-05-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
4657
4658         * include/bits/basic_string.h: Escape class names in doxygen docs.
4659
4660 2010-05-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
4661
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.
4666
4667 2010-05-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4668
4669         * configure.host: Removed irix[1-6], irix[1-5].*, irix6.[0-4]*
4670         support.
4671         * config/os/irix/irix5.2: Removed.
4672
4673 2010-05-05  Paolo Carlini  <paolo.carlini@oracle.com>
4674
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.
4679
4680 2010-05-05  Paolo Carlini  <paolo.carlini@oracle.com>
4681
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.
4685
4686 2010-05-05  Paolo Carlini  <paolo.carlini@oracle.com>
4687
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.
4698
4699 2010-05-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4700
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.
4712
4713 2010-05-01  Jonathan Wakely  <jwakely.gcc@gmail.com>
4714
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.
4720
4721 2010-04-30  Paolo Carlini  <paolo.carlini@oracle.com>
4722
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.
4741
4742 2010-04-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
4743
4744         PR libstdc++/43865
4745         * include/c_global/cstdlib (abort, exit): _GLIBCXX_NORETURN typo.
4746
4747 2010-04-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
4748
4749         * doc/xml/manual/status_cxx200x.xml: Update quick_exit status.
4750         * doc/html/*: Regenerate.
4751
4752 2010-04-27  Fabien Chêne  <fabien.chene@gmail.com>
4753
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.
4761
4762 2010-04-27  Alexander Monakov  <amonakov@ispras.ru>
4763
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.
4767
4768 2010-04-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
4769
4770         * doc/xml/manual/status_cxx200x.xml: Update to match n3092.
4771         * doc/html/*: Regenerate.
4772
4773 2010-04-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
4774
4775         * doc/xml/manual/status_cxx200x.xml: Update Threads status.
4776         * doc/html/manual/status.html: Regenerate.
4777
4778 2010-04-24  Jonathan Wakely  <jwakely.gcc@gmail.com>
4779
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.
4785
4786 2010-04-22  Johannes Singler  <singler@kit.edu>
4787
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
4793
4794 2010-04-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
4795
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.
4802
4803 2010-04-13  Ian Lance Taylor  <iant@google.com>
4804
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.
4808
4809 2010-04-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4810
4811         * configure.host (os_include_dir): Removed solaris2.7 support.
4812         * crossconfig.m4 (GLIBCXX_CROSSCONFIG): Likewise.
4813         * configure: Regenerate.
4814
4815 2010-04-06  Matthias Klose  <doko@ubuntu.com>
4816
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.
4822
4823 2010-04-03  Paolo Carlini  <paolo.carlini@oracle.com>
4824
4825         * include/bits/basic_string.h: Fix pasto in comment.
4826         * include/ext/vstring.h: Likewise.
4827
4828 2010-04-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4829
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.
4839
4840 2010-03-30  Johannes Singler  <singler@kit.edu>
4841
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.
4846
4847 2010-03-30  Paolo Carlini  <paolo.carlini@oracle.com>
4848
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.
4854
4855 2010-03-29  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
4856
4857         PR target/43458
4858         * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
4859         Xfail hppa*-*-hpux*.
4860
4861 2010-03-26  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4862
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.
4869
4870 2010-03-25  Paolo Carlini  <paolo.carlini@oracle.com>
4871
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.
4883
4884 2010-03-25  John Lakos  <jlakos@bloomberg.net>
4885             Pablo Halpern  <phalpern@halpernwightsoftware.com>
4886             Paolo Carlini  <paolo.carlini@oracle.com>
4887
4888         * include/bits/hashtable_policy.h (struct _Equality_base): Add.
4889         * include/bits/hashtable.h (_Hashtable<>): Derive from the latter.
4890
4891 2010-03-23  Paolo Carlini  <paolo.carlini@oracle.com>
4892
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.
4897
4898 2010-03-23  Paolo Carlini  <paolo.carlini@oracle.com>
4899
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.
4903
4904 2010-03-23  Paolo Carlini  <paolo.carlini@oracle.com>
4905
4906         * include/bits/stl_algobase.h (lower_bound(_ForwardIterator,
4907         _ForwardIterator, const _Tp&, _Compare)): Move...
4908         * include/bits/stl_algo.h: ... here.
4909
4910 2010-03-22  Johannes Singler  <singler@kit.edu>
4911
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::.
4920
4921 2010-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
4922
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.
4929
4930 2010-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
4931
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.
4936
4937 2010-03-19  Paolo Carlini  <paolo.carlini@oracle.com>
4938
4939         * testsuite/17_intro/freestanding.cc: Avoid -Wall warnings.
4940
4941 2010-03-19  Rodolfo Lima  <rodolfo@rodsoft.org>
4942
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.
4947
4948 2010-03-19  Paolo Carlini  <paolo.carlini@oracle.com>
4949
4950         * include/bits/random.tcc: Minor formatting changes.
4951
4952 2010-03-19  Paolo Carlini  <paolo.carlini@oracle.com>
4953
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.
4960
4961 2010-03-19  Paolo Carlini  <paolo.carlini@oracle.com>
4962
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.
4980
4981         * include/bits/random.h: Add comments.
4982
4983 2010-03-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
4984
4985         * doc/xml/manual/debug_mode.xml: Correct debug headers.
4986
4987 2010-03-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
4988
4989         PR libstdc++/43397
4990         * include/std/functional (_Mem_fn): Use perfect forwarding.
4991         * testsuite/20_util/function/43397.cc: New.
4992
4993 2010-03-16  Paolo Carlini  <paolo.carlini@oracle.com>
4994
4995         PR libstdc++/43394
4996         * include/parallel/compatibility.h: Add __k8 and __core2 among the
4997         i386 targets supporting atomic operations.
4998
4999 2010-03-16  Paolo Carlini  <paolo.carlini@oracle.com>
5000
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.
5009
5010 2010-03-16  Paolo Carlini  <paolo.carlini@oracle.com>
5011
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.
5143
5144 2010-03-15  Paolo Carlini  <paolo.carlini@oracle.com>
5145
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.
5166
5167 2010-03-15  Paolo Carlini  <paolo.carlini@oracle.com>
5168
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.
5178
5179         Revert:
5180         2008-11-11  Bob Walters  <bob.s.walters@gmail.com>
5181
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.
5232
5233 2010-03-13  Paolo Carlini  <paolo.carlini@oracle.com>
5234
5235         * include/tr1_impl/array (swap(array<>&, array<>&)): Use member swap.
5236
5237         * include/bits/stl_algo.h: Improve comment.
5238
5239 2010-03-12  Benjamin Kosnik  <bkoz@redhat.com>
5240
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.
5246
5247 2010-03-10  Paolo Carlini  <paolo.carlini@oracle.com>
5248
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.
5257
5258 2010-03-08  Paolo Carlini  <paolo.carlini@oracle.com>
5259
5260         Revert:
5261         2010-02-11  Paolo Carlini  <paolo.carlini@oracle.com>
5262
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.
5280
5281 2010-03-04  Paolo Carlini  <paolo.carlini@oracle.com>
5282
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.
5294
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.
5298
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.
5304
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.
5311
5312 2010-03-03  Benjamin Kosnik  <bkoz@redhat.com>
5313
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.
5321
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.
5326
5327 2010-03-03  Paolo Carlini  <paolo.carlini@oracle.com>
5328             Jonathan Wakely  <jwakely.gcc@gmail.com>
5329
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.
5335
5336 2010-03-02  Paolo Carlini  <paolo.carlini@oracle.com>
5337
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.
5342
5343 2010-03-02  Paolo Carlini  <paolo.carlini@oracle.com>
5344
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.
5352
5353 2010-03-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
5354
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.
5358
5359 2010-03-02  Paolo Carlini  <paolo.carlini@oracle.com>
5360
5361         * include/bits/stl_bvector.h (hash<vector<bool, _Alloc>>::
5362         operator()(const vector<bool, _Alloc>&)): Move definition...
5363         * include/bits/vector.tcc: ... here.
5364
5365 2010-03-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5366
5367         * testsuite/Makefile.am (check-DEJAGNU): Include de* in normal0
5368         dirs.
5369         * testsuite/Makefile.in: Regenerate.
5370
5371 2010-03-02  Paolo Carlini  <paolo.carlini@oracle.com>
5372
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.
5379
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.
5386
5387 2010-03-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
5388
5389         PR libstdc++/43230
5390         * testsuite/30_threads/promise/members/set_value3.cc
5391         (tester::~tester): Remove.
5392
5393 2010-03-02  Paolo Carlini  <paolo.carlini@oracle.com>
5394
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.
5400
5401 2010-03-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
5402
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.
5410
5411 2010-03-01  Paolo Carlini  <paolo.carlini@oracle.com>
5412
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.
5420
5421 2010-03-01  Benjamin Kosnik  <bkoz@redhat.com>
5422
5423         * include/bits/atomicfwd_cxx.h: Add typedefs to group.
5424
5425 2010-03-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5426
5427         PR libstdc++/32499
5428         * testsuite/Makefile.am (check-DEJAGNU
5429         $(check_DEJAGNU_normal_targets)): Export AR, RANLIB.
5430         * testsuite/Makefile.in: Regenerate.
5431
5432 2010-02-28  Gerald Pfeifer  <gerald@pfeifer.com>
5433
5434         * doc/html/ext/pb_ds/references.html: Adjust link to SGI's STL
5435         site.
5436
5437 2010-02-28  Paolo Carlini  <paolo.carlini@oracle.com>
5438
5439         * src/hash-long-double-aux.cc (hash<long double>::
5440         operator()(long double)): Hash both -0 and +0 to 0.
5441
5442 2010-02-25  Ed Smith-Rowland  <3dw4rd@verizon.net>
5443
5444         * include/bits/random.tcc (operator<<): Use max_digits10.
5445
5446 2010-02-25  Ed Smith-Rowland  <3dw4rd@verizon.net>
5447
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.
5456
5457 2010-02-25  Paolo Carlini  <paolo.carlini@oracle.com>
5458
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.
5465
5466 2010-02-24  Benjamin Kosnik  <bkoz@redhat.com>
5467
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.
5511
5512         * include/bits/c++0x_warning.h: Tweak doxygen file markup.
5513
5514 2010-02-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5515
5516         * testsuite/ext/new_allocator/deallocate_global.cc: Require
5517         __cxa_atexit.
5518         * testsuite/ext/throw_allocator/deallocate_global.cc: Likewise.
5519
5520 2010-02-23  Benjamin Kosnik  <bkoz@redhat.com>
5521
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.
5527
5528 2010-02-23  Benjamin Kosnik  <bkoz@redhat.com>
5529
5530         * include/bits/random.h: Doxygen group markup fixes.
5531
5532 2010-02-23  Paolo Carlini  <paolo.carlini@oracle.com>
5533
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.
5554
5555 2010-02-22  Janis Johnson  <janis187@us.ibm.com>
5556
5557         * src/compatibility-ldbl.cc: Include new hash-long-double-aux.cc.
5558
5559 2010-02-22  Paolo Carlini  <paolo.carlini@oracle.com>
5560
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.
5567
5568 2010-02-22  Benjamin Kosnik  <bkoz@redhat.com>
5569
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.
5584
5585 2010-02-22  François Dumont  <francois.cppdevs@free.fr>
5586
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.
5590
5591 2010-02-22  Paolo Carlini  <paolo.carlini@oracle.com>
5592
5593         * include/tr1_impl/complex (arg): Use std::signbit only when
5594         available.
5595
5596 2010-02-22  Paolo Carlini  <paolo.carlini@oracle.com>
5597
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.
5616
5617 2010-02-21  Paolo Carlini  <paolo.carlini@oracle.com>
5618
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.
5625
5626         * include/tr1_impl/complex (arg): Optimize.
5627
5628 2010-02-21  Paolo Carlini  <paolo.carlini@oracle.com>
5629
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.
5641
5642 2010-02-20  Manuel López-Ibáñez  <manu@gcc.gnu.org>
5643
5644         PR c++/35669
5645         * testsuite/18_support/headers/cstddef/macros.cc: Add
5646         -Wno-conversion-null.
5647
5648 2010-02-19  Paolo Carlini  <paolo.carlini@oracle.com>
5649
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.
5656
5657 2010-02-19  Paolo Carlini  <paolo.carlini@oracle.com>
5658
5659         * include/bits/stl_algo.h (for_each): Implement resolution of DR 1110.
5660         * testsuite/25_algorithms/for_each/1.cc: New.
5661
5662 2010-02-19  Paolo Carlini  <paolo.carlini@oracle.com>
5663
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.
5668
5669 2010-02-18  Benjamin Kosnik  <bkoz@redhat.com>
5670
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.
5679
5680 2010-02-18  Benjamin Kosnik  <bkoz@redhat.com>
5681
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.
5686
5687         * testsuite/17_intro/freestanding.cc: Add.
5688
5689 2010-02-18  Paolo Carlini  <paolo.carlini@oracle.com>
5690
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.
5697
5698 2010-02-18  Paolo Carlini  <paolo.carlini@oracle.com>
5699
5700         * libsupc++/nested_exception.h: Fix <bits/c++0x_warning.h> include.
5701
5702 2010-02-17  Benjamin Kosnik  <bkoz@redhat.com>
5703
5704         * doc/xml/manual/appendix_contributing.xml: Update markup rules
5705         for quoting and functions.
5706
5707 2010-02-17  Chris Jefferson  <chris@bubblescope.net>
5708
5709         * include/bits/locale_facets.h (__convert_to_v): Add empty
5710         exception-specification.
5711
5712 2010-02-17  Paolo Carlini  <paolo.carlini@oracle.com>
5713
5714         * include/std/limits: Implement resolution of DR 559 (CD1) in
5715         C++0x mode.
5716         * testsuite/18_support/numeric_limits/dr559.cc: New.
5717
5718 2010-02-16  Benjamin Kosnik  <bkoz@redhat.com>
5719
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.
5740
5741         * libsupc++/pbase_type_info.cc: Fixes for -fno-rtti.
5742         * libsupc++/pointer_type_info.cc: Same.
5743         * libsupc++/eh_personality.cc: Same.
5744
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.
5749
5750         * testsuite/17_intro/headers/c++200x/all_no_rtti.cc: New.
5751         * testsuite/17_intro/headers/c++1998/all_no_rtti.cc: New.
5752
5753 2010-02-16  Paolo Carlini  <paolo.carlini@oracle.com>
5754
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.
5780
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.
5839
5840 2010-02-16  Paolo Carlini  <paolo.carlini@oracle.com>
5841
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.
5857
5858 2010-02-15  Paolo Carlini  <paolo.carlini@oracle.com>
5859
5860         * testsuite/ext/median.cc: Adjust.
5861
5862 2010-02-15  Paolo Carlini  <paolo.carlini@oracle.com>
5863
5864         * include/bits/stl_algo.h (__median): Move...
5865         * include/ext/algorithm: ... here, being an SGI extension.
5866
5867 2010-02-12  Jonathan Wakely  <jwakely.gcc@gmail.com>
5868             Paolo Carlini  <paolo.carlini@oracle.com>
5869
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.
5881
5882 2010-02-11  Paolo Carlini  <paolo.carlini@oracle.com>
5883
5884         * config/abi/pre/gnu.ver: Revert last changes.
5885
5886 2010-02-11  Jason Merrill  <jason@redhat.com>
5887
5888         * include/std/thread (~_Impl_base): Declare inline.
5889         * libsupc++/nested_exception.h (~nested_exception): Likewise.
5890
5891 2010-02-11  Paolo Carlini  <paolo.carlini@oracle.com>
5892
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.
5910
5911 2010-02-11  Paolo Carlini  <paolo.carlini@oracle.com>
5912
5913         * config/abi/pre/gnu.ver: Avoid exporting inadvertently
5914         std::nested_exception symbols at GLIBCXX_3.4.
5915
5916 2010-02-10  Jason Merrill  <jason@redhat.com>
5917
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.
5923
5924 2010-02-10  Paolo Carlini  <paolo.carlini@oracle.com>
5925
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.
5941
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.
5970
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.
5976
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.
5990
5991 2010-02-10  Paolo Carlini  <paolo.carlini@oracle.com>
5992
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.
6050
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.
6054
6055 2010-02-09  Benjamin Kosnik  <bkoz@redhat.com>
6056
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.
6070
6071         * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
6072         * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
6073
6074 2010-02-08  Benjamin Kosnik  <bkoz@redhat.com>
6075
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.
6079
6080 2010-02-08  Matthias Klose  <doko@debian.org>
6081
6082         PR libstdc++/42460
6083         * include/std/istream: Fix '\' quoting in doxygen markup.
6084
6085 2010-02-08  Ed Smith-Rowland  <3dw4rd@verizon.net>
6086
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>.
6093
6094 2010-02-07  Paolo Carlini  <paolo.carlini@oracle.com>
6095
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.
6111
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.
6116
6117         * src/hashtable.cc: Rename to hashtable-aux.cc.
6118         * src/hashtable_c++0x.cc: Adjust.
6119         * src/hashtable_tr1.cc: Likewise.
6120
6121         * src/limits_c++0x.cc: Fold...
6122         * src/limits.cc... here.
6123
6124 2010-02-07  Paolo Carlini  <paolo.carlini@oracle.com>
6125
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.
6129
6130 2010-02-06  Paolo Carlini  <paolo.carlini@oracle.com>
6131
6132         PR libstdc++/42989
6133         * config/abi/pre/gnu.ver: Fix wstring move assignment operator typo.
6134
6135 2010-02-06  Paolo Carlini  <paolo.carlini@oracle.com>
6136
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.
6141
6142 2010-02-05  Paolo Carlini  <paolo.carlini@oracle.com>
6143
6144         * include/std/future (swap(packaged_task<>&, packaged_task<>&)): Fix
6145         typo in last commit.
6146
6147 2010-02-05  Paolo Carlini  <paolo.carlini@oracle.com>
6148
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.
6156
6157 2010-02-05  Paolo Carlini  <paolo.carlini@oracle.com>
6158
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.
6164
6165 2010-02-04  Benjamin Kosnik  <bkoz@redhat.com>
6166
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.
6274
6275 2010-02-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
6276
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.
6292
6293 2010-02-02  Paolo Carlini  <paolo.carlini@oracle.com>
6294
6295         * include/ext/vstring.h (__versa_string::shrink_to_fit): Fix
6296         for -fno-exceptions.
6297
6298 2010-02-02  Benjamin Kosnik  <bkoz@redhat.com>
6299
6300         * include/bits/allocator.h: Fix for -fno-exceptions.
6301         * include/bits/basic_string.h (basic_string::shrink_to_fit): Same.
6302
6303 2010-02-02  Paolo Carlini  <paolo.carlini@oracle.com>
6304
6305         * testsuite/30_threads/unique_future: Rename to /future.
6306
6307 2010-02-01  Paolo Carlini  <paolo.carlini@oracle.com>
6308
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.
6330
6331 2010-02-01  Paolo Carlini  <paolo.carlini@oracle.com>
6332
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.
6347
6348         * include/bits/forward_list.h: Use _M_get_Node_allocator throughout.
6349
6350 2010-01-31  Paolo Carlini  <paolo.carlini@oracle.com>
6351
6352         * testsuite/23_containers/array/requirements/exception/
6353         generation_prohibited.c: Remove, swap can indeed throw (DR 774).
6354
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.
6358
6359 2010-01-31  Paolo Carlini  <paolo.carlini@oracle.com>
6360
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.
6376
6377 2010-01-31  Paolo Carlini  <paolo.carlini@oracle.com>
6378
6379         Revert last changes. Also revert, among the previous changes:
6380         * include/std/condition_variable (condition_variable_any::
6381         wait<>(_Lock&)): Provide definition.
6382
6383 2010-01-29  Paolo Carlini  <paolo.carlini@oracle.com>
6384
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.
6393
6394         * testsuite/30_threads/condition_variable/members/1.cc: Minor
6395         stylistic changes.
6396         * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
6397
6398 2010-01-29  Paolo Carlini  <paolo.carlini@oracle.com>
6399
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.
6421
6422 2010-01-28  François Dumont  <francois.cppdevs@free.fr>
6423
6424         * include/bits/stl_algobase.h (struct __iter_base): Add.
6425         (__niter_base, __miter_base): Adjust, use the latter.
6426
6427 2010-01-28  Paolo Carlini  <paolo.carlini@oracle.com>
6428
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.
6435
6436 2010-01-27  Benjamin Kosnik  <bkoz@redhat.com>
6437
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.
6443
6444 2010-01-27  Richard Guenther  <rguenther@suse.de>
6445
6446         PR libstdc++/42832
6447         * include/std/functional (function<>::swap): Perform bytewise
6448         swap of _M_functor.
6449         * include/tr1/functional (function<>::swap): Likewise.
6450
6451 2010-01-27  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
6452
6453         * config/abi/pre/gnu.ver: Avoid time_get pattern conflicts.
6454
6455 2010-01-26  François Dumont  <francois.cppdevs@free.fr>
6456
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.
6462
6463 2010-01-26  Daniel Frey  <d.frey@gmx.de>
6464
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.
6468
6469 2010-01-25  Paolo Carlini  <paolo.carlini@oracle.com>
6470
6471         * testsuite/util/testsuite_common_types.h (has_bitwise_operators):
6472         Avoid -Wall warnings.
6473
6474 2010-01-25  Paolo Carlini  <paolo.carlini@oracle.com>
6475
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.
6482
6483         * testsuite/20_util/reference_wrapper/24803.cc: Remove unused vars.
6484         * testsuite/20_util/reference_wrapper/invoke.cc: Likewise.
6485
6486 2010-01-22  Daniel Frey  <d.frey@gmx.de>
6487
6488         * include/std/functional (_Index_tuple, _Build_index_tuple):
6489         Simplify and speed-up.
6490
6491 2010-01-22  Joern Rennecke  <amylaar@spamcop.net>
6492
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.
6497
6498 2010-01-21  Jonathan Wakely  <jwakely.gcc@gmail.com>
6499
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.
6558
6559 2010-01-20  Janis Johnson  <janis187@us.ibm.com>
6560             Paolo Carlini  <paolo.carlini@oracle.com>
6561
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.
6566
6567 2010-01-19  Johannes Singler  <singler@kit.edu>
6568
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.
6577
6578 2010-01-18  Daniel Frey  <d.frey@gmx.de>
6579
6580         * include/std/functional (_Bind<_Functor(_Bound_args...)>::
6581         operator()): "Pass" _Result to __call*.
6582         (_Bind<_Functor(_Bound_args...)>::__call*): Adjust, simplify.
6583
6584 2010-01-18  Johannes Singler  <singler@kit.edu>
6585
6586         * include/parallel/base.h (__unary_negate): Correct comment.
6587
6588 2010-01-16  Paolo Carlini  <paolo.carlini@oracle.com>
6589
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.
6594
6595         * include/std/functional: Pass everywhere temporary tuple<_Args...>
6596         arguments by rvalue reference.
6597
6598         * testsuite/20_util/bind/cv_quals.cc: New.
6599
6600         * testsuite/20_util/bind/ref2.cc: Add missing test variables.
6601
6602 2010-01-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6603
6604         PR libstdc++/35942
6605         * configure.ac: Remove -lstdc++ from libtool's postdeps_CXX.
6606         * configure: Regenerate.
6607
6608 2010-01-15  Phil Muldoon  <pmuldoon@redhat.com>
6609
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.
6614
6615 2010-01-14  Paolo Carlini  <paolo.carlini@oracle.com>
6616
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.
6621
6622 2010-01-13  Benjamin Kosnik  <bkoz@redhat.com>
6623
6624         * include/profile/iterator_tracker.h: Add copyright.
6625
6626 2010-01-13  Paolo Carlini  <paolo.carlini@oracle.com>
6627
6628         * testsuite/Makefile.am (check-debug): Add.
6629         * testsuite/Makefile.in: Regenerate.
6630         * config.h.in: Likewise.
6631
6632 2010-01-12  Paolo Carlini  <paolo.carlini@oracle.com>
6633
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.
6652
6653         * testsuite/25_algorithms/search_n/iterator.cc: Reduce iteration #
6654         in parallel-mode.
6655
6656 2010-01-12  Hans-Peter Nilsson  <hp@axis.com>
6657
6658         * testsuite/ext/profile/all.cc: Pass -D_GLIBCXX_PROFILE_NO_THREADS
6659         for non-tls_native targets.
6660
6661 2010-01-12  Benjamin Kosnik  <bkoz@redhat.com>
6662
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.
6684
6685         * include/profile/impl/profiler.h: Remove duplicate markup.
6686
6687 2010-01-12  Jonathan Wakely  <jwakely.gcc@gmail.com>
6688
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.
6703
6704 2010-01-11  Paolo Carlini  <paolo.carlini@oracle.com>
6705
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.
6712
6713         * include/parallel/algo.h: Qualify with std:: binder2nd use.
6714
6715 2010-01-10  Paolo Carlini  <paolo.carlini@oracle.com>
6716
6717         * include/debug/string (basic_string<>::basic_string(basic_string&&),
6718         operator=(basic_string&&), assign(basic_string&&)): Add.
6719
6720         * include/debug/string: Fully qualify initializer_list with std; fix
6721         _Allocator misspellings as _Alloc.
6722
6723 2010-01-10  Paolo Carlini  <paolo.carlini@oracle.com>
6724
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.
6741
6742         * testsuite/ext/vstring/cons/moveable.cc: Fix comment nit.
6743
6744 2010-01-10  Silvius Rus  <rus@google.com>
6745
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.
6777
6778 2010-01-09  H.J. Lu  <hongjiu.lu@intel.com>
6779
6780         PR other/42230
6781         * testsuite/abi/pr42230.cc: New.
6782
6783 2010-01-09  Paolo Carlini  <paolo.carlini@oracle.com>
6784
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.
6814
6815         * include/bits/forward_list.h: Remove pre-existing check.
6816         * include/ext/vstring.h: Likewise.
6817
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.
6836
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.
6869
6870 2010-01-08  Paolo Carlini  <paolo.carlini@oracle.com>
6871
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.
6920
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.
6945
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.
6980
6981 2010-01-08  Paolo Carlini  <paolo.carlini@oracle.com>
6982
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.
7020
7021 2010-01-07  Benjamin Kosnik  <bkoz@redhat.com>
7022
7023         * doc/xml/manual/evolution.xml: Fix typos, update.
7024
7025 2010-01-07  Paolo Carlini  <paolo.carlini@oracle.com>
7026
7027         * include/bits/locale_facets_nonio.tcc (time_put<>::do_put): Avoid
7028         pointless __builtin_alloca use.
7029
7030 2010-01-06  Paolo Carlini  <paolo.carlini@oracle.com>
7031
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.
7042
7043 2010-01-06  Benjamin Kosnik  <bkoz@redhat.com>
7044
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.
7049
7050 2010-01-06  Paolo Carlini  <paolo.carlini@oracle.com>
7051
7052         * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc:
7053         Add dg-require-namedlocale.
7054
7055 2010-01-05  Benjamin Kosnik  <bkoz@redhat.com>
7056
7057         * doc/xml/manual/evolution.xml: Update for 4.4 and 4.5 releases.
7058         * doc/html: Regenerate.
7059
7060 2010-01-05  Paolo Carlini  <paolo.carlini@oracle.com>
7061
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.
7074
7075 2010-01-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7076
7077         * configure: Regenerate.
7078
7079 2010-01-05  Paolo Carlini  <paolo.carlini@oracle.com>
7080
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.
7085
7086 2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
7087
7088         * include/profile/list: Implement DR 1133 here too.
7089
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.
7125
7126         * testsuite/23_containers/unordered_map/requirements/
7127         explicit_instantiation/2.cc: Do not instantiate for
7128         non-defaultconstructible mapped_type.
7129
7130 2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
7131
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.
7146
7147 2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
7148
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.
7153
7154 2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
7155
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.
7163
7164 2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
7165
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.
7169
7170 2010-01-01  Paolo Carlini  <paolo.carlini@oracle.com>
7171
7172         Revert last change, reinstantiate basic_string and vstring tests.
7173
7174 2010-01-01  Paolo Carlini  <paolo.carlini@oracle.com>
7175
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.
7189 \f
7190 Copyright (C) 2010 Free Software Foundation, Inc.
7191
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.