OSDN Git Service

* config/abi/pre/gnu.ver: Fix exports for string::pop_back.
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
1 2011-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
2
3         * config/abi/pre/gnu.ver: Fix exports for string::pop_back.
4
5 2011-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
6
7         * acinclude.m4: Check for <stdalign.h>
8         * configure: Regenerate.
9         * config.h.in: Likewise.
10         * include/Makefile.am: Add <cstdalign>.
11         * include/Makefile.in: Regenerate.
12         * include/c_global/cstdalign: New.
13         * testsuite/18_support/headers/cstdalign/std_c++0x_neg.cc: New.
14         * doc/xml/manual/backwards_compatibility.xml: Update.
15         * doc/xml/manual/status_cxx2011.xml: Update.
16
17 2011-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
18
19         PR libstdc++/50982
20         * include/std/mutex (__once_proxy): Use void parameter list to
21         work on implicit extern "C" systems.
22
23 2011-11-07  Xinliang David Li  <davidxl@google.com>
24
25         * include/backward/hashtable.h: Make __stl_prime_list
26         in comdat section.
27
28 2011-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
29
30         * include/bits/basic_string.h (basic_string::at): Move adjacent to other
31         overload.
32         (basic_string::pop_back): Define.
33         * include/debug/string (__gnu_debug::basic_string::pop_back): Likewise.
34         * include/ext/vstring.h (__versa_string::pop_back): Likewise.
35         * config/abi/pre/gnu.ver: Add new symbols.
36         * testsuite/21_strings/basic_string/modifiers/char/pop_back.cc: New.
37         * testsuite/21_strings/basic_string/modifiers/wchar_t/pop_back.cc: New.
38         * testsuite/21_strings/basic_string/range_access.cc: Split to ...
39         * testsuite/21_strings/basic_string/range_access/char/1.cc: Here and ...
40         * testsuite/21_strings/basic_string/range_access/wchar_t/1.cc: Here.
41         * testsuite/ext/vstring/modifiers/char/pop_back.cc: New.
42         * testsuite/ext/vstring/modifiers/wchar_t/pop_back.cc: New.
43
44 2011-11-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
45
46         * doc/xml/manual/backwards_compatibility.xml: Fix autoconf tests for
47         C++11 compiler features and library headers. Add stable id
48         attributes. Use <filename> element for headers and surround in angle
49         brackets. Use <classname> for classes.
50         * doc/html/*: Regenerate.
51
52 2011-11-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
53
54         * doc/xml/manual/status_cxx2011.xml: Document <cuchar> and
55         <cstdalign> as missing.
56
57 2011-11-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
58
59         * doc/xml/faq.xml: Replace references to C++0x with C++11.
60         * doc/xml/manual/intro.xml: Likewise.
61         * doc/xml/manual/backwards_compatibility.xml: Likewise.
62         * doc/xml/manual/shared_ptr.xml: Likewise.
63         * doc/xml/manual/configure.xml: Likewise.
64         * doc/xml/manual/evolution.xml: Likewise.
65         * doc/xml/manual/using.xml: Likewise.
66         * doc/xml/manual/strings.xml: Likewise.
67         * doc/xml/manual/debug_mode.xml: Likewise.
68         * doc/xml/manual/policy_data_structures.xml: Likewise.
69         * doc/xml/manual/extensions.xml: Likewise.
70         * doc/xml/manual/diagnostics.xml: Likewise.
71         * doc/xml/manual/test.xml: Likewise.
72         * doc/xml/manual/status_cxx200x.xml: Likewise, and rename to...
73         * doc/xml/manual/status_cxx2011.xml: Here.
74         * doc/Makefile.am: Rename status_cxx200x.xml.
75         * doc/Makefile.in: Regenerate.
76         * doc/html/*: Regenerate.
77
78 2011-11-06  François Dumont <fdumont@gcc.gnu.org>
79
80         * testsuite/performance/23_containers/insert_erase/41975.cc: Add
81         tests to check performance with or without cache of hash code and with
82         string type that has a costlier hash functor than int type.
83
84 2011-11-06  Benjamin Kosnik  <bkoz@redhat.com>
85             Andrew MacLeod  <amacleod@redhat.com>
86
87         Merged from cxx-mem-model.
88
89         * include/Makefile.am (bits_headers): Remove atomic_0.h, atomic_2.h.
90         * include/Makefile.in: Regenerate.
91         * src/Makefile.am (sources): Rename atomic.cc to
92         compatibility-atomic-c++0x.cc.
93         * src/Makefile.in: Regenerate.
94         * include/bits/atomic_0.h: Remove.
95         * include/bits/atomic_2.h: Incorporate into...
96         * include/bits/atomic_base.h: ...this.  Use new __atomic routines.
97         * include/std/atomic: Add generic atomic calls to basic atomic class.
98         * src/atomic.cc: Move...
99         * src/compatibility-atomic-c++0x.cc: ...here.
100         * src/compatibility-c++0x.cc: Tweak.
101         * testsuite/29_atomics/atomic/cons/user_pod.cc: Fix.
102         * testsuite/29_atomics/atomic/requirements/explicit_instantiation/1.cc:
103           Same.
104         * testsuite/29_atomics/headers/atomic/macros.cc: Same.
105
106 2011-11-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
107
108         * doc/xml/manual/test.xml: Fix dg-warning examples.
109
110 2011-11-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
111
112         PR libstdc++/44436
113         * doc/xml/manual/status_cxx200x.xml: Document emplace members are
114         missing.
115
116 2011-11-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
117
118         PR libstdc++/49894
119         PR bootstrap/50982
120         * include/std/mutex (once_flag): Use NSDMI.
121
122 2011-11-04  Benjamin Kosnik  <bkoz@redhat.com>
123
124         * scripts/run_doxygen: Fix sed quoting.
125
126 2011-11-03  Benjamin Kosnik  <bkoz@redhat.com>
127
128         * doc/doxygen/doxygroups.cc: Add markup for namespace tr2.
129         * include/tr2/bool_set: Adjust doxygen markup.
130         * include/tr2/dynamic_bitset: Same.
131         * include/tr2/type_traits: Same.
132
133 2011-11-03  Benjamin Kosnik  <bkoz@redhat.com>
134
135         * doc/html/*: Regenerate.
136
137 2011-11-02  Richard B. Kreckel  <kreckel@ginac.de>
138             Paolo Carlini  <paolo.carlini@oracle.com>
139
140         PR libstdc++/50880
141         * include/std/complex (__complex_acosh): Fix in a better way,
142         use Kahan's formula.
143         * include/tr1/complex (__complex_acosh): Likewise.
144
145 2011-11-02  Paolo Carlini  <paolo.carlini@oracle.com>
146
147         PR libstdc++/50951
148         * include/bits/random.tcc (operator<<(basic_ostream<>&,
149         const mersenne_twister_engine<>&): Output _M_p too.
150         (operator<<(basic_ostream<>&, const
151         subtract_with_carry_engine<>&): Likewise.
152         (operator>>(basic_istream<>&, mersenne_twister_engine<>&):
153         Reload it.
154         (operator>>(basic_istream<>&, subtract_with_carry_engine<>&):
155         Likewise.
156         * include/bits/random.h (mersenne_twister_engine<>::operator==):
157         Compare _M_p too.
158         (subtract_with_carry_engine<>::operator==): Compare _M_carry
159         and _M_p too.
160         (shuffle_order_engine<>::operator==): Compare _M_v(s) and _M_y too.
161         * testsuite/26_numerics/random/independent_bits_engine/
162         operators/serialize.cc: Extend.
163         * testsuite/26_numerics/random/subtract_with_carry_engine/
164         operators/serialize.cc: Likewise.
165         * testsuite/26_numerics/random/discard_block_engine/
166         operators/serialize.cc: Likewise.
167         * testsuite/26_numerics/random/mersenne_twister_engine/
168         operators/serialize.cc: Likewise.
169         * testsuite/26_numerics/random/linear_congruential_engine/
170         operators/serialize.cc: Likewise.
171         * testsuite/26_numerics/random/shuffle_order_engine/
172         operators/serialize.cc: Likewise.
173
174 2011-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
175
176         * acinclude.m4 (GLIBCXX_CONFIGURE): Determine and substitute
177         toplevel_builddir.
178         (GLIBCXX_ENABLE_THREADS): Remove glibcxx_thread_h,
179         HAVE_GTHR_DEFAULT, enable_thread.
180         (GLIBCXX_CHECK_GTHREADS): Reflect gthr move to libgcc.
181         * include/Makefile.am (thread_host_headers): Remove
182         ${host_builddir}/gthr-tpf.h.
183         (${host_builddir}/gthr.h): Reflect gthr move to libgcc.
184         Use $<.
185         (${host_builddir}/gthr-single.h): Likewise.
186         (${host_builddir}/gthr-posix.h): Likewise.
187         (${host_builddir}/gthr-tpf.h): Remove.
188         (${host_builddir}/gthr-default.h): Likewise.
189         * configure, config.h.in: Regenerate.
190         * Makefile.in, doc/Makefile.in, include/Makefile.in,
191         libsupc++/Makefile.in, po/Makefile.in, python/Makefile.in,
192         src/Makefile.intestsuite/Makefile.in: Regenerate.
193
194 2011-11-02  Benjamin Kosnik  <bkoz@redhat.com>
195
196         * include/bits/c++config: Add tr2 to versioned namespaces.
197         * scripts/run_doxygen: Adjust generated man files as well.
198         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers.
199
200 2011-11-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
201
202         * include/std/future (promise): Add constructors for uses-allocator
203         construction from rvalue promise.
204         (packaged_task): Implement LWG 2067. Add additional constructors for
205         uses-allocator construction.
206         * testsuite/30_threads/packaged_task/cons/3.cc: New.
207         * testsuite/30_threads/packaged_task/cons/alloc2.cc: New.
208         * testsuite/30_threads/promise/cons/alloc2.cc: New.
209
210 2011-10-31  Jason Merrill  <jason@redhat.com>
211
212         * include/Makefile.am (install-freestanding-headers): Install
213         c++0x_warning.h.
214         * libsupc++/initializer_list: Include it.
215
216 2011-10-31  Gerald Pfeifer  <gerald@pfeifer.com>
217
218         * acinclude.m4 (GLIBCXX_CONFIGURE): Refer to GNU/Linux.
219         * configure: Regenerate.
220
221 2011-10-31  Jason Merrill  <jason@redhat.com>
222
223         PR c++/50920
224         * include/bits/c++0x_warning.h: Change -std=c++0x to -std=c++11.
225
226 2011-10-30  Gerald Pfeifer  <gerald@pfeifer.com>
227
228         * prerequisites.xml: Refer to GCC (instead of gcc) and GNU/Linux.
229         Remove an obsolete reference to a Red Hat release we do not
230         support any longer.
231         Refer to Debian GNU/Linux.
232
233 2011-10-30  Gerald Pfeifer  <gerald@pfeifer.com>
234
235         * faq.xml (Who's in charge of it?): Refer to the Linux kernel
236         instead of just Linux.
237         (How do I install libstdc++?): Refer to GNU/Linux instead of
238         just Linux.
239
240 2011-10-28  Paolo Carlini  <paolo.carlini@oracle.com>
241
242         * testsuite/30_threads/condition_variable_any/50862.cc: Trivial
243         formatting fixes.
244
245 2011-10-28  Paolo Carlini  <paolo.carlini@oracle.com>
246
247         * testsuite/23_containers/unordered_map/operations/count.cc: New.
248         * testsuite/23_containers/multimap/operations/count.cc: Likewise.
249         * testsuite/23_containers/set/operations/count.cc: Likewise.
250         * testsuite/23_containers/unordered_multimap/operations/count.cc:
251         Likewise.
252         * testsuite/23_containers/unordered_set/operations/count.cc: Likewise.
253         * testsuite/23_containers/multiset/operations/count.cc: Likewise.
254         * testsuite/23_containers/unordered_multiset/operations/count.cc:
255         Likewise.
256         * testsuite/23_containers/map/operations/count.cc: Likewise.
257
258 2011-10-28  Richard B. Kreckel  <kreckel@ginac.de>
259
260         * include/std/complex (__complex_acosh): Just use '< _Tp()'.
261         * include/tr1/complex (__complex_acosh): Likewise.
262
263 2011-10-27  Richard B. Kreckel  <kreckel@ginac.de>
264             Paolo Carlini  <paolo.carlini@oracle.com>
265
266         PR libstdc++/50880
267         * include/std/complex (__complex_acosh): Fix for __z.real() < 0.
268         * include/tr1/complex (__complex_acosh): Likewise.
269         * testsuite/26_numerics/complex/50880.cc: New.
270         * testsuite/tr1/8_c_compatibility/complex/50880.cc: Likewise.
271
272 2011-10-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
273
274         PR libstdc++/50862
275         * include/std/condition_variable (condition_variable_any::wait): Avoid
276         terminating if relocking user mutex throws during stack-unwinding.
277         * testsuite/30_threads/condition_variable_any/50862.cc: Add dg-require.
278
279 2011-10-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
280
281         * include/std/condition_variable (condition_variable_any): Remove
282         unused native_handle_type typedef.
283         * src/condition_variable.cc (condition_variable): Add missing noexcept
284         specifications.
285         * testsuite/30_threads/condition_variable_any/requirements/
286         typedefs.cc: Remove.
287
288 2011-10-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
289
290         PR libstdc++/50862
291         * include/std/condition_variable (condition_variable_any::wait): Fix
292         deadlock and ensure _Lock::lock() is called on exit.
293         (condition_variable_any::native_handle): Remove, as per LWG 1500.
294         * testsuite/30_threads/condition_variable_any/50862.cc: New.
295
296 2011-10-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
297
298         PR libstdc++/49894
299         * include/std/mutex (__mutex_base,__recursive_mutex_base): Define new
300         base classes to manage construction/destruction of native mutexes,
301         using NSDMI when INIT macros are defined.
302         (mutex,recursive_mutex,timed_mutex,recursive_timed_mutex): Derive from
303         new base classes.
304         * include/std/condition_variable (condition_variable): Use NSDMI when
305         INIT macro is defined. Use noexcept.
306         * src/condition_variable.cc (condition_variable): Explicitly-default
307         constructor/destructor when using NSDMI. Use noexcept.
308         (condition_variable_any): Likewise.
309
310 2011-10-24  Jonathan Wakely  <jwakely.gcc@gmail.com>
311
312         * testsuite/30_threads/async/49668.cc: Add missing dg-require.
313         * testsuite/30_threads/packaged_task/49668.cc: Likewise.
314
315 2011-10-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
316
317         PR libstdc++/50834
318         * doc/xml/manual/using.xml: Update thread safety docs w.r.t. C++11.
319
320 2011-10-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
321
322         PR libstdc++/50196
323         * acinclude.m4 (GLIBCXX_HAS_GTHREADS): Don't depend on _POSIX_TIMEOUTS.
324         * configure: Regenerate.
325         * include/std/mutex (timed_mutex, recursive_timed_mutex): Define
326         conditionally on GTHREADS_HAS_MUTEX_TIMEDLOCK.
327         * testsuite/lib/libstdc++.exp (check_v3_target_gthreads_timed): Define.
328         * testsuite/lib/dg-options.exp (dg-require-gthreads-timed): Define.
329         * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
330         Use dg-require-gthreads-timed instead of dg-require-gthreads.
331         * testsuite/30_threads/recursive_timed_mutex/native_handle/
332         typesizes.cc: Likewise.
333         * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
334         Likewise.
335         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
336         Likewise.
337         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
338         Likewise.
339         * testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc:
340         Likewise.
341         * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
342         * testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc:
343         Likewise.
344         * testsuite/30_threads/recursive_timed_mutex/requirements/typedefs.cc:
345         Likewise.
346         * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
347         * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
348         * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
349         * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
350         * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
351         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
352         Likewise.
353         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
354         Likewise.
355         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
356         Likewise.
357         * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
358         * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc:
359         Likewise.
360         * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
361         * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
362         * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
363         * testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Likewise.
364         * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
365         * testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Likewise.
366         * testsuite/30_threads/timed_mutex/requirements/standard_layout.cc:
367         Likewise.
368         * testsuite/30_threads/timed_mutex/requirements/typedefs.cc: Likewise.
369         * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
370         * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
371         * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
372         * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
373         * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
374         * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
375         * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
376         * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
377         * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
378         * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
379         * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
380
381 2011-10-19  Ed Smith-Rowland  <3dw4rd@verizon.net>
382
383         * include/tr2/bool_set (bool_set): New.
384         * include/tr2/bool_set.tcc: New.
385         * include/tr2/dynamic_bitset (dynamic_bitset): New.
386         * include/tr2/ratio (kibi, mebi, gibi, tebi, pebi, exbi): New.
387         * include/Makefile.am: Add files.
388         * include/Makefile.in: Regenerate.
389
390 2011-10-19  Benjamin Kosnik  <bkoz@redhat.com>
391
392         * doc/doxygen/user.cfg.in: Add tr2 files.
393         * testsuite/tr2/headers/all.cc: New.
394         * testsuite/tr2/headers/using_namespace_std_tr2.cc: New.
395
396         * include/tr2/type_traits: Tweak.
397
398 2011-10-18  Jason Merrill  <jason@redhat.com>
399
400         PR c++/50500
401         * include/bits/shared_ptr.h: Default copy ctor and assignment.
402         * testsuite/util/testsuite_allocator.h: Define copy assignment.
403         * testsuite/util/testsuite_rvalref.h: Default copy assignment.
404         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Remove note tags.
405
406 2011-10-17  Michael Spertus  <mike_spertus@symantec.com>
407
408         * include/tr2/type_traits (bases, direct_bases, typelist): New.
409
410 2011-10-17  Benjamin Kosnik  <bkoz@redhat.com>
411
412         * libstdc++-v3/include/Makefile.am: Add tr2 directory and includes.
413         * libstdc++-v3/include/Makefile.in: Regenerate.
414
415         * scripts/create_testsuite_files: Search tr2 directory.
416         * testsuite/libstdc++-dg/conformance.exp: Same.
417
418         * testsuite/tr2/bases/requirements/explicit_instantiation.cc: New.
419         * testsuite/tr2/bases/requirements/typedefs.cc: New.
420         * testsuite/tr2/bases/value.cc: New.
421         * testsuite/tr2/direct_bases/requirements/
422         explicit_instantiation.cc: New.
423         * testsuite/tr2/direct_bases/requirements/typedefs.cc: New.
424         * testsuite/tr2/direct_bases/value.cc: New.
425
426 2011-10-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
427
428         PR bootstrap/50715
429         * config/abi/pre/gnu.ver (CXXABI_1.3.6): Remove duplicate
430         __cxa_get_exception_ptr.
431
432 2011-10-14  François Dumont  <francois.cppdevs@free.fr>
433
434         * testsuite/performance/23_containers/insert_erase/41975.cc: New.
435
436 2011-10-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
437
438         * testsuite/22_locale/codecvt_byname/50714.cc: Fix mychar.
439
440 2011-10-14  Jonathan Yong  <jon_y@users.sourceforge.net>
441
442         * configure.host: Use config/os/mingw32-w64 instead of
443         config/os/mingw32 if vendor key is "w64".
444         * config/os/mingw32-w64: Duplicate from config/os/mingw32.
445         * config/os/mingw32-w64/os_defines.h: Enable
446         _GLIBCXX_FULLY_DYNAMIC_STRING if undefined.
447         * acinclude.m4: Set fully-dynamic-string to 1 when enabled,
448         0 when disabled or undefined if unset by user.
449         * include/bits/basic_string.h: Check if
450         _GLIBCXX_FULLY_DYNAMIC_STRING is set to 0 instead of undefined.
451         include/bits/basic_string.tcc: Likewise.
452         * configure: Regenerated.
453         * config.h.in: Likewise.
454
455 2011-10-13  Paolo Carlini  <paolo.carlini@oracle.com>
456
457         PR libstdc++/50714
458         * include/bits/codecvt.h (codecvt<>::codecvt(size_t)): Initialize
459         _M_c_locale_codecvt member.
460         * testsuite/22_locale/codecvt_byname/50714.cc: New.
461
462 2011-10-12  Paolo Carlini  <paolo.carlini@oracle.com>
463
464         PR c++/50594
465         * libsupc++/new (operator new, operator delete): Decorate with
466         __attribute__((__externally_visible__)).
467         * include/bits/c++config: Add _GLIBCXX_THROW.
468         * libsupc++/del_op.cc: Adjust.
469         * libsupc++/del_opv.cc: Likewise.
470         * libsupc++/del_opnt.cc: Likewise.
471         * libsupc++/del_opvnt.cc: Likewise.
472         * libsupc++/new_op.cc: Likewise.
473         * libsupc++/new_opv.cc: Likewise.
474         * libsupc++/new_opnt.cc: Likewise.
475         * libsupc++/new_opvnt.cc: Likewise.
476         * testsuite/18_support/50594.cc: New.
477         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
478         line number.
479
480 2011-10-11  Emil Wojak  <emil@wojak.eu>
481
482         PR c++/50661
483         * include/bits/stl_algobase.h (equal): Compare arrays of pointers
484         too with memcmp.
485
486 2011-10-10  Benjamin Kosnik  <bkoz@redhat.com>
487
488         PR libstdc++/49818
489         * config/abi/pre/gnu.ver (CXXABI_1.3.6): Add symbols.
490         * testsuite/util/testsuite_abi.cc: Same.
491         * libsupc++/unwind-cxx.h: Move required eh API...
492         * libsupc++/cxxabi.h: ... to here. Add required forward declarations.
493         Use _GLIBCXX_NOTHROW.
494         * libsupc++/pure.cc (__cxa_deleted_virtual): Add.
495         * libsupc++/eh_alloc.cc: Use _GLIBCXX_NOTHROW.
496         * libsupc++/eh_catch.cc: Same.
497         * libsupc++/eh_globals.cc: Same.
498         * libsupc++/eh_type.cc: Same.
499
500 2011-10-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
501
502         * testsuite/util/testsuite_allocator.h (uneq_allocator): Add
503         propagate_on_container_swap typedef for C++0x testing.
504
505 2011-10-06  Paolo Carlini  <paolo.carlini@oracle.com>
506
507         * testsuite/27_io/ios_base/cons/assign_neg.cc: Tidy dg- directives,
508         for C++0x testing too.
509         * testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
510         * testsuite/ext/pb_ds/example/hash_resize_neg.cc: Likewise.
511         * testsuite/24_iterators/istreambuf_iterator/requirements/
512         base_classes.cc: Adjust for C++0x testing.
513         * testsuite/ext/codecvt/char-1.cc: Avoid warnings in C++0x mode.
514         * testsuite/ext/codecvt/char-2.cc: Likewise.
515         * testsuite/ext/codecvt/wchar_t.cc: Likewise.
516
517 2011-10-05  Paolo Carlini  <paolo.carlini@oracle.com>
518
519         * include/ext/pod_char_traits.h: Avoid warnings in C++0x mode
520         when int_type is unsigned.
521
522 2011-10-04  Paolo Carlini  <paolo.carlini@oracle.com>
523
524         PR libstdc++/49561
525         * include/bits/stl_list.h (_List_base<>::_List_impl::_M_size):
526         Add in C++0x mode.
527         (_List_base<>::_List_impl, _List_base<>::_M_get_node,
528         _List_base<>::_M_put_node, _List_base<>::_List_base(_List_base&&),
529         list<>::size, list<>::swap, list<>::splice): Use it.
530         (operator==(const list<>&, const list<>&)): Rewrite in C++0x mode.
531         * include/bits/list.tcc (list<>::erase): Likewise.
532         (list<>::merge): Adjust in C++0x mode.
533         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
534         Adjust dg-error line number.
535         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
536         Likewise.
537         * testsuite/23_containers/list/requirements/dr438/
538         constructor_1_neg.cc: Likewise.
539         * testsuite/23_containers/list/requirements/dr438/
540         constructor_2_neg.cc: Likewise.
541
542 2011-10-04  Paolo Carlini  <paolo.carlini@oracle.com>
543
544         * testsuite/20_util/bind/48698.cc (g): Fix return type, avoid -Wall
545         warning.
546
547 2011-10-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
548
549         * include/ext/alloc_traits.h (__alloc_traits::max_size): Define.
550         (__alloc_traits::rebind): Define.
551         * include/bits/stl_vector.h: Use them.
552         * testsuite/util/testsuite_allocator.h (SimpleAllocator): Define.
553         * testsuite/23_containers/vector/allocator/minimal.cc: New.
554         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
555         Adjust dg-error line numbers.
556         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
557         Likewise.
558         * testsuite/23_containers/vector/requirements/dr438/
559         constructor_1_neg.cc: Likewise.
560         * testsuite/23_containers/vector/requirements/dr438/
561         constructor_2_neg.cc: Likewise.
562
563 2011-10-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
564
565         * testsuite/20_util/pointer_traits/pointer_to.cc: Define equality
566         operator and use.
567
568 2011-10-03  Paolo Carlini  <paolo.carlini@oracle.com>
569
570         * include/bits/hashtable.h (_Hashtable<>::insert(value_type&&),
571         insert(const_iterator, value_type&&)): Don't define here...
572         * include/bits/unordered_set.h (__unordered_set<>,
573         __unordered_multiset<>): ... define here instead.
574
575 2011-09-29  Jason Merrill  <jason@redhat.com>
576
577         * testsuite/util/testsuite_tr1.h (test_property): Avoid
578         ambiguity.
579
580 2011-10-01  François Dumont  <fdumont@gcc.gnu.org>
581
582         * include/debug/vector (vector<>::erase(iterator, iterator): Check
583         iterators equality using normal iterators.
584         * include/debug/deque (deque<>::erase(iterator, iterator): Likewise.
585
586 2011-09-29  Paolo Carlini  <paolo.carlini@oracle.com>
587
588         * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
589         Remove noexcept from declaration too.
590
591 2011-09-27  Benjamin Kosnik  <bkoz@redhat.com>
592
593         * doc/html/*: Regenerate.
594
595         * doc/Makefile.am: Un-nest the ext output directory.
596         * doc/Makefile.in: Regenerate.
597         * spine.xml: Remove authors, add abstract for short
598         contents. Rename to index.html for html output.
599         * manual/spine.xml: Authors here, manual starts with index.html.
600         * api.xml: Update.
601         * faq.xml: Same.
602
603 2011-09-27  Marcus Shawcroft  <marcus.shawcroft@arm.com>
604
605         * libsupc++/tinfo.cc (type_info::operator==): Test __name instead
606         of name().
607
608 2011-09-26  Paolo Carlini  <paolo.carlini@oracle.com>
609
610         PR libstdc++/50529
611         * include/bits/vector.tcc (vector<>::erase(iterator, iterator)):
612         Fix to do nothing if the range is empty.
613         * include/bits/stl_bvector.h: Likewise.
614         * include/bits/deque.tcc: Likewise.
615         * include/debug/vector: Adjust.
616         * include/debug/deque: Likewise.
617         * testsuite/23_containers/vector/modifiers/erase/50529.cc: New.
618         * testsuite/23_containers/deque/modifiers/erase/50529.cc: Likewise.
619         * testsuite/23_containers/deque/modifiers/erase/3.cc: Adjust.
620
621 2011-09-25  Benjamin Kosnik  <bkoz@redhat.com>
622             Jonathan Wakely  <jwakely.gcc@gmail.com>
623
624         PR libstdc++/48698
625         * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Set libtool_VERSION here.
626         * configure.ac: Move AC_SUBST of libtool_VERSION past call to
627         GLIBCXX_ENABLE_SYMVERS.
628         * configure: Regenerate.
629         * include/bits/c++config: Use __7 as versioned namespace name.
630         * config/abi/pre/gnu-versioned-namespace.ver: Change mangling as
631         per above.
632         * include/c_global/cwchar: Adjust nested namespaces.
633         * testsuite/20_util/bind/48698.cc: Add test case.
634         * testsuite/ext/profile/mutex_extensions_neg.cc: Change line number.
635
636 2011-09-25  Paolo Carlini  <paolo.carlini@oracle.com>
637
638         Revert (no longer necessary post r179130):
639
640         2010-04-27  Fabien Chêne  <fabien.chene@gmail.com>
641
642         * testsuite/util/testsuite_error.h: Add empty default constructor
643         to __gnu_test::test_category and
644         __gnu_test::test_derived_category.
645         * src/future.cc: Add empty default constructor to
646         future_error_category.
647         * src/system_error.cc: Add default ctor to generic_error_category
648         and system_error_category.
649
650 2011-09-24  John Salmon  <john.salmon@deshaw.com>
651
652         PR libstdc++/50510
653         * include/bits/random.tcc (seed_seq::generate): Fix computation.
654
655 2011-09-24  John Salmon  <john.salmon@deshaw.com>
656
657         PR libstdc++/50509
658         * include/bits/random.tcc (seed_seq::generate): Fix computation.
659
660 2011-09-21  Benjamin Kosnik  <bkoz@redhat.com
661
662         * doc/Makefile.am (stamp-epub-docbook): Fix image directory location.
663         * doc/Makefile.in: Regenerate.
664
665 2011-09-21  Paolo Carlini  <paolo.carlini@oracle.com>
666
667         * src/limits.cc: Replace everywhere __int128_t -> __int128, and
668         __uint128_t -> unsigned __int128.
669         * include/std/type_traits: Likewise.
670         * include/std/limits: Likewise.
671         * testsuite/18_support/numeric_limits/dr559.cc: Likewise.
672         * testsuite/18_support/numeric_limits/lowest.cc: Likewise.
673         * testsuite/18_support/numeric_limits/40856.cc: Likewise.
674         * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise.
675         * testsuite/util/testsuite_common_types.h: Likewise.
676         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Likewise.
677         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
678         * testsuite/20_util/is_floating_point/value.cc: Likewise.
679         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Likewise.
680         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise.
681         * testsuite/20_util/is_signed/value.cc: Likewise.
682         * testsuite/20_util/is_unsigned/value.cc: Likewise.
683         * testsuite/20_util/is_integral/value.cc: Likewise.
684         * config/abi/pre/gnu.ver: Likewise.
685         * acinclude.m4: Likewise.
686         * configure: Regenerate.
687         * config.h.in: Likewise.
688
689 2011-09-19  Paolo Carlini  <paolo.carlini@oracle.com>
690
691         PR libstdc++/40856
692         * include/std/limits (numeric_limits<__int128_t>,
693         numeric_limits<__uint128_t>): Add.
694         * src/limits.cc:Define.
695         * config/abi/pre/gnu.ver: Export.
696         * include/ext/typelist.h (_GLIBCXX_TYPELIST_CHAIN16, 20): Add.
697         * testsuite/util/testsuite_common_types.h (integral_types_gnu): Add
698         (limits_tl): Use it.
699         * testsuite/18_support/numeric_limits/requirements/
700         constexpr_functions.cc: Likewise.
701         * testsuite/18_support/numeric_limits/40856.cc: New.
702         * testsuite/18_support/numeric_limits/dr559.cc: Extend.
703         * testsuite/18_support/numeric_limits/lowest.cc: Likewise.
704         * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise.
705         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust dg-error
706         line numbers.
707         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
708         * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Likewise.
709         * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
710         * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc:
711         Likewise.
712         * testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc:
713         Likewise.
714         * testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
715         Likewise.
716
717 2011-09-17  Paolo Carlini  <paolo.carlini@oracle.com>
718
719         PR libstdc++/50441
720         * acinclude.m4 ([GLIBCXX_ENABLE_INT128_FLOAT128]): Add.
721         * configure.ac: Call it.
722         * include/std/type_traits (__is_integral_helper<__int128_t>,
723         __is_integral_helper<__uint128_t>,
724         __is_floating_point_helper<__float128>,
725         __make_unsigned<__int128_t>, __make_signed<__uint128_t>): Add.
726         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Extend.
727         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
728         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Likewise.
729         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise.
730         * testsuite/20_util/is_signed/value.cc: Likewise.
731         * testsuite/20_util/is_unsigned/value.cc: Likewise.
732         * testsuite/20_util/is_integral/value.cc: Likewise.
733         * testsuite/20_util/is_floating_point/value.cc: New.
734         * testsuite/20_util/is_floating_point/requirements/typedefs.cc:
735         Likewise.
736         * testsuite/20_util/is_floating_point/requirements/
737         explicit_instantiation.cc: Likewise.
738         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
739         dg-error line numbers.
740         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
741         Likewise.
742         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
743         * configure: Regenerate.
744         * config.h.in: Likewise.
745
746 2011-09-17  François Dumont  <fdumont@gcc.gnu.org>
747
748         * include/bits/hashtable.h (_Hashtable<>::__rehash_policy(const
749         _RehashPolicy&)): Commit the modification of the policy only if no
750         exception occured.
751         * testsuite/23_containers/unordered_set/max_load_factor/robustness.cc:
752         New.
753
754 2011-09-16  Paolo Carlini  <paolo.carlini@oracle.com>
755
756         * testsuite/23_containers/array/comparison_operators/
757         less_or_equal.cc: New.
758         * testsuite/23_containers/array/comparison_operators/
759         greater_or_equal.cc: Likewise.
760         * testsuite/23_containers/array/comparison_operators/less.cc: Likewise.
761         * testsuite/23_containers/array/comparison_operators/equal.cc: Likewise.
762         * testsuite/23_containers/array/comparison_operators/not_equal.cc:
763         Likewise.
764         * testsuite/23_containers/array/comparison_operators/greater.cc:
765         Likewise.
766         * testsuite/23_containers/array/iterators/end_is_one_past.cc: Likewise.
767         * testsuite/23_containers/array/capacity/empty.cc: Likewise.
768         * testsuite/23_containers/array/capacity/max_size.cc: Likewise.
769         * testsuite/23_containers/array/capacity/size.cc: Likewise.
770         * testsuite/23_containers/array/tuple_interface/tuple_element.cc:
771         Likewise.
772         * testsuite/23_containers/array/tuple_interface/tuple_size.cc:
773         Likewise.
774         * testsuite/23_containers/array/element_access/at_out_of_range.cc:
775         Likewise.
776         * testsuite/23_containers/array/element_access/back.cc: Likewise.
777         * testsuite/23_containers/array/element_access/front.cc: Likewise.
778         * testsuite/23_containers/array/element_access/data.cc: Likewise.
779         * testsuite/23_containers/array/cons/aggregate_initialization.cc:
780         Likewise.
781         * testsuite/23_containers/array/requirements/zero_sized_arrays.cc:
782         Likewise.
783         * testsuite/23_containers/array/requirements/contiguous.cc: Likewise.
784         * testsuite/23_containers/array/requirements/member_swap.cc: Likewise.
785         * testsuite/23_containers/array/specialized_algorithms/swap.cc:
786         Likewise.
787         * testsuite/23_containers/array/constexpr_get.cc: Move...
788         * testsuite/23_containers/array/tuple_interface/constexpr_get.cc:
789         ... here.
790         * testsuite/23_containers/array/requirements/get.cc: Move...
791         * testsuite/23_containers/array/tuple_interface/get: ... here.
792         * testsuite/23_containers/array/at_neg.cc: Move...
793         * testsuite/23_containers/array/element_access: ... here.
794         * testsuite/23_containers/array/requirements/constexpr_functions.cc:
795         Move...
796         * testsuite/23_containers/array/capacity: ... here.
797         * testsuite/23_containers/array/requirements/
798         constexpr_element_access.cc: Move...
799         * testsuite/23_containers/array/element_access: ... here.
800
801         * testsuite/20_util/duration/cons/1_neg.cc: Avoid -Wall warnings.
802         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Likewise.
803         * testsuite/20_util/pair/make_pair/constexpr.cc: Likewise.
804         * testsuite/20_util/time_point/nonmember/constexpr.cc: Likewise.
805         * testsuite/23_containers/bitset/operations/constexpr.cc: Likewise.
806
807         * testsuite/20_util/duration/cons/1_neg.cc: Discard bogus warning.
808         * testsuite/20_util/forward/1_neg.cc: Likewise.
809
810 2011-09-15  Paolo Carlini  <paolo.carlini@oracle.com>
811
812         * include/std/tuple (make_tuple, forward_as_tuple): Declare constexpr.
813         (_Tuple_impl<>::_Tuple_impl(_Tuple_impl<>&&)): Likewise.
814         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Enable
815         make_tuple test.
816         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
817         line number.
818
819 2011-09-14  François Dumont  <fdumont@gcc.gnu.org>
820             Paolo Carlini  <paolo.carlini@oracle.com>
821
822         * include/bits/hashtable.h (_Hashtable<>::_M_rehash): Take and restore
823         hash policy _M_prev_resize on exception.
824         (_Hashtable<>::_M_insert_bucket): Capture hash policy next resize
825         before using it and use latter method to have it restored on exception.
826         (_Hashtable<>::_M_insert(_Arg&& __v, std::false_type): Likewise.
827         (_Hashtable<>::insert(_InputIterator, _InputIterator): Likewise.
828         (_Hashtable<>::rehash): Likewise.
829         * testsuite/23_containers/unordered_set/insert/hash_policy.cc: New.
830         * testsuite/23_containers/unordered_multiset/insert/hash_policy.cc:
831         Likewise.
832
833 2011-09-13  Paul Brook  <paul@codesourcery.com>
834
835         * libsupc++/eh_arm.cc (__cxa_end_cleanup): Add C6X implementation.
836         * libsupc++/eh_call.cc (__cxa_call_unexpected): Set rtti_base.
837         * libsupc++/eh_personality.cc (NO_SIZE_OF_ENCODED_VALUE): Remove
838         __ARM_EABI_UNWINDER__ check.
839         (parse_lsda_header): Check _GLIBCXX_OVERRIDE_TTYPE_ENCODING.
840         (get_ttype_entry): Use generic implementation on ARM EABI.
841         (check_exception_spec): Use _Unwind_decode_typeinfo_ptr and
842         UNWIND_STACK_REG.
843         (PERSONALITY_FUNCTION): Set ttype_base.
844
845 2011-09-12  Daniel Krugler  <daniel.kruegler@googlemail.com>
846             Paolo Carlini  <paolo.carlini@oracle.com>
847
848         * include/std/tuple (_Head_base<>::_M_head, _Head_base<>::_M_tail,
849         _Tuple_impl<>::_M_head, _Tuple_impl<>::_M_tail): Change to static
850         constexpr functions; adjust everywhere.
851         (__get_helper, get): Declare constexpr all three overloads.
852         (tuple_cat): Declare constexpr; use late return type to improve
853         error messages.
854         * include/std/utility (__pair_get<>::__get, __pair_get<>::__move_get,
855         __pair_get<>::__const_get, get): Declare all constexpr.
856         * include/std/array (get): Likewise.
857         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Re-enable
858         tuple_cat test.
859         * testsuite/23_containers/array/constexpr_get.cc: New.
860         * testsuite/20_util/tuple/element_access/constexpr_get.cc: Likewise.
861         * testsuite/20_util/pair/constexpr_get.cc: Likewise.
862         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
863         line number.
864
865 2011-09-12  Jason Merrill  <jason@redhat.com>
866
867         * testsuite/20_util/is_constructible/value-2.cc: Adjust
868         expected values.
869
870 2011-09-11  Daniel Krugler  <daniel.kruegler@googlemail.com>
871
872         PR libstdc++/50159
873         * include/std/tuple (tuple_cat): Reimplement according to the
874         resolution of LWG 1385.
875         * include/std/type_traits: Define __and_ and __or_ for zero
876         arguments too; minor tweaks.
877         * testsuite/20_util/tuple/creation_functions/tuple_cat.cc: New.
878         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Disable
879         for now tuple_cat test.
880         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
881         line numbers.
882         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
883         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
884         Likewise.
885         * doc/xml/manual/status_cxx200x.xml: Update.
886
887 2011-09-09  Paolo Carlini  <paolo.carlini@oracle.com>
888
889         * include/std/tuple: Use everywhere std::size_t... instead of int...
890         * include/std/functional: Likewise.
891         * include/std/scoped_allocator: Likewise.
892         * include/bits/stl_pair.h: Likewise.
893
894 2011-09-09  Paolo Carlini  <paolo.carlini@oracle.com>
895
896         PR libstdc++/50336
897         * include/bits/streambuf_iterator.h (class istreambuf_iterator):
898         Implement LWG 445 in C++0x mode.
899         * testsuite/24_iterators/istreambuf_iterator/requirements/dr445.cc:
900         New.
901
902 2011-09-08  Dodji Seketeli  <dodji@redhat.com>
903
904         PR c++/33255 - Support -Wunused-local-typedefs warning
905         * include/ext/bitmap_allocator.h
906         (__detail::__mini_vector::__lower_bound): Remove unused typedef.
907         * src/istream.cc (std::operator>>(basic_istream<char>& __in,
908         basic_string<char>& __str)): Likewise.
909         (std::getline): Likewise.
910         * src/valarray.cc (__valarray_product): Likewise.
911
912 2011-09-07  François Dumont  <francois.cppdevs@free.fr>
913
914         * testsuite/23_containers/array/at.cc: Revert to...
915         * testsuite/23_containers/array/at_neg.cc: ...this.
916
917 2011-09-07  Jason Merrill  <jason@redhat.com>
918
919         * testsuite/20_util/bind/ref_neg.cc: Adjust errors.
920         * testsuite/20_util/duration/cons/1_neg.cc: Adjust errors.
921
922 2011-09-06  Benjamin Kosnik  <bkoz@redhat.com>
923
924         * include/std/tuple (_Tuple_impl::_M_head, _M_tail): Mark constexpr.
925         (tuple(tuple&&)): Same.
926         (tuple(const tuple<_UElements...>& __in)): Same.
927         (tuple(tuple<_UElements...>&& __in)): Same.
928         (tuple_cat(const tuple<_TElements...>&, const tuple<_UElements...>&)):
929         Same.
930         (get): Same.
931         * include/std/array: Consolidate array::data usage.
932         * testsuite/23_containers/array/requirements/constexpr_functions.cc:
933         Remove extra include.
934         * testsuite/20_util/tuple/creation_functions/constexpr.cc: New.
935         * testsuite/20_util/tuple/cons/constexpr-2.cc: Add tests.
936         * testsuite/20_util/tuple/cons/constexpr-3.cc: Same.
937         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust line numbers.
938
939 2011-09-06  François Dumont  <fdumont@gcc.gnu.org>
940             Paolo Carlini  <paolo.carlini@oracle.com>
941
942         * include/bits/hashtable_policy.h (_Prime_rehash_policy::
943         _M_next_bkt): Cast _M_max_load_factor to long double.
944         (_Prime_rehash_policy::_M_bkt_for_elements): Use _M_next_bkt.
945         (_Prime_rehash_policy::_M_need_rehash): Likewise; cast all
946         float quantities to long double.
947
948 2011-09-06  Paolo Carlini  <paolo.carlini@oracle.com>
949
950         PR libstdc++/50257
951         * include/bits/hashtable_policy.h (_Prime_rehash_policy::
952         _M_next_bkt): Optimize for small argument.
953
954 2011-09-02  François Dumont  <fdumont@gcc.gnu.org>
955
956         * testsuite/util/testsuite_allocator.h (tracker_allocator_counter::
957         allocate): Update allocation count only if allocation succeeded.
958
959 2011-09-02  Paolo Carlini  <paolo.carlini@oracle.com>
960
961         * include/std/bitset: Trivial formatting fixes.
962
963 2011-09-02  Paolo Carlini  <paolo.carlini@oracle.com>
964             Marc Glisse  <marc.glisse@normalesup.org>
965
966         * include/std/bitset (_Base_bitset<>::_M_are_all_aux): Remove.
967         (_Base_bitset<>::_M_are_all): Add.
968         (bitset<>::all): Use the latter, improve implementation.
969
970 2011-09-02  Paolo Carlini  <paolo.carlini@oracle.com>
971             Marc Glisse  <marc.glisse@normalesup.org>
972
973         PR libstdc++/50268
974         * include/std/bitset (struct _Sanitize_val): Add.
975         (bitset<>::bitset(unsigned long long)): Fix.
976         * testsuite/23_containers/bitset/cons/50268.cc: New.
977
978 2011-09-01  Paolo Carlini  <paolo.carlini@oracle.com>
979
980         * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
981         Remove noexcept, the move constructor allocates memory; rearrange
982         the code in the body to consistently update __ht._M_rehash_policy
983         before using _M_next_bkt on it.
984         * include/debug/unordered_map: Adjust.
985         * include/debug/unordered_set: Likewise.
986         * include/profile/unordered_map: Likewise.
987         * include/profile/unordered_set: Likewise.
988         * testsuite/23_containers/unordered_map/cons/
989         noexcept_move_construct.cc: Remove.
990         * testsuite/23_containers/unordered_set/cons/
991         noexcept_move_construct.cc: Likewise.
992         * testsuite/23_containers/unordered_multimap/cons/
993         noexcept_move_construct.cc: Likewise.
994         * testsuite/23_containers/unordered_multiset/cons/
995         noexcept_move_construct.cc: Likewise.
996
997 2011-08-31  Paolo Carlini  <paolo.carlini@oracle.com>
998
999         * include/std/chrono (operator*(const _Rep1&, const duration<>&)):
1000         Fix order of template parameters per LWG 2004.
1001
1002 2011-08-30  Paolo Carlini  <paolo.carlini@oracle.com>
1003
1004         * include/bits/stl_iterator.h (make_move_iterator): Implement DR2061.
1005         * testsuite/24_iterators/move_iterator/dr2061.cc: New.
1006         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
1007         line numbers.
1008
1009 2011-08-30  Paolo Carlini  <paolo.carlini@oracle.com>
1010
1011         * config/os/mingw32/error_constants.h: Fix commas.
1012
1013 2011-08-29  Benjamin Kosnik  <bkoz@redhat.com>
1014
1015         * testsuite/20_util/duration/arithmetic/constexpr.cc: Add.
1016
1017 2011-08-29  Kai Tietz  <ktietz@redhat.com>
1018
1019         * configure: Regenerated.
1020         * config.h.in: Regenerated.
1021         * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR)  Add
1022         checks for ECHILD, ENOSPC, EPERM, ETIMEDOUT, and
1023         EWOULDBLOCK.
1024         * config/os/mingw32/error_constants.h (errc): Add
1025         enumerator values no_child_process, no_space_on_device,
1026         not_supported, operation_not_permitted, operation_would_block,
1027         timed_out, and value_too_large,
1028
1029 2011-08-29  Paolo Carlini  <paolo.carlini@oracle.com>
1030
1031         PR libstdc++/50118
1032         * include/bits/stl_list.h (_List_base<>::
1033         _List_base(const allocator_type&)): Remove.
1034         (_List_base<>::_List_base(const _Node_alloc_type&)): Add.
1035         (list<>:list(const allocator_type&), list(size_type, const
1036         value_type&, const allocator_type&),
1037         list(initializer_list<, const allocator_type&),
1038         list(_InputIterator, _InputIterator, const allocator_type&),
1039         insert(iterator, size_type, const value_type&),
1040         insert(iterator, _InputIterator, _InputIterator)): Adjust.
1041         * include/bits/stl_tree.h (_Rb_tree<>::_Rb_tree(const _Compare&,
1042         const allocator_type&)): Fix.
1043         * include/bits/stl_map.h (map<>::map(const _Compare&,
1044         const allocator_type&), map(initializer_list<>,
1045         const _Compare&, const allocator_type&), map(_InputIterator,
1046         _InputIterator, const _Compare&, const allocator_type&),
1047         get_allocator): Adjust.
1048         * include/bits/stl_set.h (set<>::set(const _Compare&,
1049         const allocator_type&), set(initializer_list<>,
1050         const _Compare&, const allocator_type&), set(_InputIterator,
1051         _InputIterator, const _Compare&, const allocator_type&),
1052         get_allocator): Likewise.
1053         * include/bits/stl_multimap.h (multimap<>::multimap(const _Compare&,
1054         const allocator_type&), multimap(initializer_list<>,
1055         const _Compare&, const allocator_type&), multimap(_InputIterator,
1056         _InputIterator, const _Compare&, const allocator_type&),
1057         get_allocator): Likewise.
1058         * include/bits/stl_multiset.h (multiset<>::multiset(const _Compare&,
1059         const allocator_type&), multiset(initializer_list<>,
1060         const _Compare&, const allocator_type&), multiset(_InputIterator,
1061         _InputIterator, const _Compare&, const allocator_type&),
1062         get_allocator): Likewise.
1063         * include/bits/forward_list.h (_Fwd_list_base<>::
1064         _Fwd_list_base(const _Alloc&), _Fwd_list_base(const _Fwd_list_base&,
1065         const _Alloc&), _Fwd_list_base(_Fwd_list_base&&, const _Alloc&)):
1066         Remove.
1067         (_Fwd_list_base<>::_Fwd_list_base(const _Node_alloc_type&),
1068         _Fwd_list_base(const _Fwd_list_base&,
1069         const _Node_alloc_type&), _Fwd_list_base(_Fwd_list_base&&,
1070         const _Node_alloc_type&)): Add.
1071         (forward_list<>::forward_list(const _Alloc&),
1072         forward_list(const forward_list&, const _Alloc&),
1073         forward_list(forward_list&&, const _Alloc&),
1074         forward_list(size_type, const _Tp&, const _Alloc&),
1075         forward_list(_InputIterator, _InputIterator, const _Alloc&),
1076         forward_list(std::initializer_list<>, const _Alloc&),
1077         get_allocator): Adjust.
1078         * include/bits/forward_list.tcc: Adjust.
1079         * testsuite/util/testsuite_allocator.h (ExplicitConsAlloc): Add.
1080         * testsuite/23_containers/unordered_map/requirements/
1081         explicit_instantiation/5.cc: New.
1082         * testsuite/23_containers/multimap/requirements/
1083         explicit_instantiation/5.cc: Likewise.
1084         * testsuite/23_containers/multimap/requirements/
1085         explicit_instantiation/5_c++0x.cc: Likewise.
1086         * testsuite/23_containers/set/requirements/explicit_instantiation/
1087         5.cc: Likewise.
1088         * testsuite/23_containers/set/requirements/explicit_instantiation/
1089         5_c++0x.cc: Likewise.
1090         * testsuite/23_containers/unordered_multimap/requirements/
1091         explicit_instantiation/5.cc: Likewise.
1092         * testsuite/23_containers/forward_list/requirements/
1093         explicit_instantiation/5.cc: Likewise.
1094         * testsuite/23_containers/unordered_set/requirements/
1095         explicit_instantiation/5.cc: Likewise.
1096         testsuite/23_containers/multiset/requirements/explicit_instantiation/
1097         5.cc: Likewise.
1098         * testsuite/23_containers/multiset/requirements/
1099         explicit_instantiation/5_c++0x.cc: Likewise.
1100         * testsuite/23_containers/list/requirements/explicit_instantiation/
1101         5_c++0x.cc: Likewise.
1102         * testsuite/23_containers/list/requirements/explicit_instantiation/
1103         5.cc: Likewise.
1104         * testsuite/23_containers/unordered_multiset/requirements/
1105         explicit_instantiation/5.cc: Likewise.
1106         * testsuite/23_containers/map/requirements/explicit_instantiation/
1107         5.cc: Likewise.
1108         * testsuite/23_containers/map/requirements/explicit_instantiation/
1109         5_c++0x.cc: Likewise.
1110         * testsuite/23_containers/forward_list/requirements/dr438/
1111         assign_neg.cc: Adjust dg-error line number.
1112         * testsuite/23_containers/forward_list/requirements/dr438/
1113         insert_neg.cc: Likewise.
1114         * testsuite/23_containers/forward_list/requirements/dr438/
1115         constructor_1_neg.cc: Likewise.
1116         * testsuite/23_containers/forward_list/requirements/dr438/
1117         constructor_2_neg.cc: Likewise.
1118         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1119         Likewise.
1120         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1121         Likewise.
1122         * testsuite/23_containers/list/requirements/dr438/
1123         constructor_1_neg.cc: Likewise.
1124         * testsuite/23_containers/list/requirements/dr438/
1125         constructor_2_neg.cc: Likewise.
1126
1127 2011-08-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1128
1129         * acinclude.m4 (GLIBCXX_CHECK_MATH_PROTO)
1130         (GLIBCXX_CHECK_STDLIB_PROTO): New tests.
1131         * configure.ac (GLIBCXX_CHECK_MATH_PROTO)
1132         (GLIBCXX_CHECK_STDLIB_PROTO): Call them.
1133         * configure: Regenerate.
1134         * config.h.in: Regenerate.
1135         * config/os/solaris/solaris2.8/os_defines.h
1136         (__CORRECT_ISO_CPP_MATH_H_PROTO2): Don't define.
1137         * config/os/solaris/solaris2.9: Remove.
1138         * configure.host (solaris2.8): Merge with ...
1139         (solaris2.9, solaris2.1[0-9]): ... this.
1140         Always use os/solaris/solaris2.8.
1141
1142 2011-08-28  Paolo Carlini  <paolo.carlini@oracle.com>
1143
1144         * include/bits/move.h (swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Remove
1145         workaround for c++/49045.
1146         * include/bits/algorithmfwd.h: Likewise.
1147
1148 2011-08-25  Tom Tromey  <tromey@redhat.com>
1149
1150         * testsuite/libstdc++-prettyprinters/simple.cc: New file.
1151         * testsuite/lib/gdb-test.exp: New file.
1152         * testsuite/libstdc++-prettyprinters/prettyprinters.exp: New
1153         file.
1154
1155 2011-08-18  Marc Glisse  <marc.glisse@normalesup.org>
1156
1157         * include/tr1/cmath: Extend/update comment.
1158
1159 2011-08-18  Paolo Carlini  <paolo.carlini@oracle.com>
1160
1161         PR libstdc++/50119
1162         * include/bits/stl_algo.h (__copy_n(_InputIterator, _Size,
1163         _OutputIterator, input_iterator_tag)): Fix.
1164         * testsuite/25_algorithms/copy_n/50119.cc: New.
1165
1166 2011-08-18  Marc Glisse  <marc.glisse@normalesup.org>
1167             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1168
1169         PR libstdc++/1773
1170         * config/os/solaris2.7: Rename to config/os/solaris2.9.
1171         * config/os/solaris/solaris2.9/os_defines.h
1172         (__CORRECT_ISO_CPP_MATH_H_PROTO1)
1173         (__CORRECT_ISO_CPP_STDLIB_H_PROTO)
1174         (__CORRECT_ISO_CPP_STRING_H_PROTO)
1175         (__CORRECT_ISO_CPP_WCHAR_H_PROTO): Define.
1176         * config/os/solaris2.8/ctype_base.h,
1177         config/os/solaris2.8/ctype_configure_char.cc,
1178         config/solaris2.8/ctype_inline.h,
1179         config/os/solaris2.8/os_defines.h: New files.
1180
1181         * configure.host (solaris2.[89], solaris2.1[0-9]):
1182         Split into ...
1183         (solaris2.8): ... this.
1184         Use os/solaris/solaris2.8.
1185         (solaris2.9, solaris2.1[0-9]): ... and this.
1186         Use os/solaris/solaris2.9.
1187
1188         * include/c_global/cmath (double abs(double)): Wrap in
1189         !__CORRECT_ISO_CPP_MATH_H_PROTO1 &&
1190         !__CORRECT_ISO_CPP_MATH_H_PROTO2.
1191         (float abs(float), long double abs(long double): Wrap in
1192         !__CORRECT_ISO_CPP_MATH_H_PROTO1.
1193         (float acos(float), long double acos(long double)): Likewise.
1194         (float asin(float), long double asin(long double)): Likewise.
1195         (float atan(float), long double atan(long double)): Likewise.
1196         (float atan2(float, float), long double atan2(long double, long
1197         double)): Likewise.
1198         (float ceil(float), long double ceil(long double)): Likewise.
1199         (float cos(float), long double cos(long double)): Likewise.
1200         (float cosh(float), long double cosh(long double)): Likewise.
1201         (float exp(float), long double exp(long double)): Likewise.
1202         (float fabs(float), long double fabs(long double)): Likewise.
1203         (float floor(float), long double floor(long double)): Likewise.
1204         (float fmod(float, float), long double fmod(long double, long
1205         double)): Likewise.
1206         (float frexp(float, int*), long double frexp(long double, int*)):
1207         Likewise.
1208         (float ldexp(float, int), long double ldexp(long double, int)):
1209         Likewise.
1210         (float log(float), long double log(long double)): Likewise.
1211         (float log10(float), long double log10(long double)): Likewise.
1212         (float modf(float, float*), long double modf(long double, long
1213         double*))): Likewise.
1214         (float pow(float, float), long double pow(long double, long
1215         double)): Likewise.
1216         (float sin(float), long double sin(long double)): Likewise.
1217         (float sinh(float), long double sinh(long double)): Likewise.
1218         (float sqrt(float), long double sqrt(long double)): Likewise.
1219         (float tan(float), long double tan(long double)): Likewise.
1220         (float tanh(float), long double tanh(long double)): Likewise.
1221         * include/c_global/cstdlib (long abs(long), ldiv_t div(long,
1222         long)): Wrap in !__CORRECT_ISO_CPP_STDLIB_H_PROTO.
1223         * include/tr1/cmath (float fabs(float), long double fabs(long
1224         double)): Wrap in !__CORRECT_ISO_CPP_MATH_H_PROTO1.
1225
1226 2011-08-14  Benjamin Kosnik  <bkoz@redhat.com>
1227
1228         * doc/xml/images/*: Image and image filename changes.
1229
1230 2011-08-14  Benjamin Kosnik  <bkoz@redhat.com>
1231
1232         * testsuite/data/make_graph_test_infos.xml: Edit.
1233         * testsuite/data/make_graph_htmls.xml: Remove
1234         * scripts/make_graph.py: Edit, fix.
1235         * scripts/make_graphs.py: Remove.
1236
1237         * doc/Makefile.am (doc-svg-performance): New.
1238         (doc-html-performance): Remove.
1239         * doc/Makefile.in: Regenerate.
1240
1241         * doc/xml/manual/test_policy_data_structures.xml: Markup changes.
1242         * doc/xml/manual/policy_data_structures.xml: Same.
1243         * doc/xml/manual/locale.xml: Same.
1244
1245         Testsuite renames.
1246         * performance/ext/pb_ds/priority_queue_text_modify_down_timing.cc:
1247         Rename.
1248         * performance/ext/pb_ds/random_int_find_timing.cc: Same.
1249         * performance/ext/pb_ds/multimap_text_insert_mem_usage.hpp
1250         * performance/ext/pb_ds/multimap_text_find_timing.hpp
1251         * performance/ext/pb_ds/priority_queue_random_int_push_timing.cc: Same.
1252         * performance/ext/pb_ds/priority_queue_text_modify_timing.hpp
1253         * performance/ext/pb_ds/tree_order_statistics_timing.cc: Same.
1254         * performance/ext/pb_ds/multimap_text_insert_mem_usage_large.cc: Same.
1255         * performance/ext/pb_ds/priority_queue_text_push_pop_timing.cc: Same.
1256         * performance/ext/pb_ds/priority_queue_text_join_timing.cc: Same.
1257         * performance/ext/pb_ds/multimap_text_insert_timing_small.cc: Same.
1258         * performance/ext/pb_ds/random_int_subscript_insert_timing.cc: Same.
1259         * performance/ext/pb_ds/tree_text_lor_find_timing.cc: Same.
1260         * performance/ext/pb_ds/priority_queue_text_pop_mem_usage.cc: Same.
1261         * performance/ext/pb_ds/multimap_text_find_timing_small.cc: Same.
1262         * performance/ext/pb_ds/text_find_timing.cc: Same.
1263         * performance/ext/pb_ds/tree_text_insert_timing.cc: Same.
1264         * performance/ext/pb_ds/hash_random_int_erase_mem_usage.cc: Same.
1265         * performance/ext/pb_ds/random_int_subscript_find_timing.cc: Same.
1266         * performance/ext/pb_ds/priority_queue_text_push_timing.cc: Same.
1267         * performance/ext/pb_ds/tree_split_join_timing.cc: Same.
1268         * performance/ext/pb_ds/multimap_text_insert_timing_large.cc: Same.
1269         * performance/ext/pb_ds/priority_queue_text_modify_up_timing.cc: Same.
1270         * performance/ext/pb_ds/multimap_text_find_timing_large.cc: Same.
1271         * performance/ext/pb_ds/priority_queue_random_int_push_pop_timing.cc:
1272         Same.
1273         * performance/ext/pb_ds/multimap_text_insert_timing.hpp
1274         * performance/ext/pb_ds/multimap_text_insert_mem_usage_small.cc: Same.
1275         * performance/ext/pb_ds/hash_zlob_random_int_find_timing.cc: Same.
1276
1277         * performance/ext/pb_ds/all_int_find.cc: To these new files...
1278         * performance/ext/pb_ds/all_int_subscript_find.cc: ...this.
1279         * performance/ext/pb_ds/all_int_subscript_insert.cc: ...this.
1280         * performance/ext/pb_ds/all_text_find.cc: ...this.
1281         * performance/ext/pb_ds/hash_int_erase_mem.cc: ...this.
1282         * performance/ext/pb_ds/hash_zlob_int_find.cc: ...this.
1283         * performance/ext/pb_ds/multimap_text_find.hpp
1284         * performance/ext/pb_ds/multimap_text_find_large.cc: ...this.
1285         * performance/ext/pb_ds/multimap_text_find_small.cc: ...this.
1286         * performance/ext/pb_ds/multimap_text_insert.hpp
1287         * performance/ext/pb_ds/multimap_text_insert_large.cc: ...this.
1288         * performance/ext/pb_ds/multimap_text_insert_mem.hpp
1289         * performance/ext/pb_ds/multimap_text_insert_mem_large.cc: ...this.
1290         * performance/ext/pb_ds/multimap_text_insert_mem_small.cc: ...this.
1291         * performance/ext/pb_ds/multimap_text_insert_small.cc: ...this.
1292         * performance/ext/pb_ds/priority_queue_int_push.cc: ...this.
1293         * performance/ext/pb_ds/priority_queue_int_push_pop.cc: ...this.
1294         * performance/ext/pb_ds/priority_queue_text_join.cc: ...this.
1295         * performance/ext/pb_ds/priority_queue_text_modify_down.cc: ...this.
1296         * performance/ext/pb_ds/priority_queue_text_modify.hpp
1297         * performance/ext/pb_ds/priority_queue_text_modify_up.cc: ...this.
1298         * performance/ext/pb_ds/priority_queue_text_pop_mem.cc: ...this.
1299         * performance/ext/pb_ds/priority_queue_text_push.cc: ...this.
1300         * performance/ext/pb_ds/priority_queue_text_push_pop.cc: ...this.
1301         * performance/ext/pb_ds/tree_order_statistics.cc: ...this.
1302         * performance/ext/pb_ds/tree_split_join.cc: ...this.
1303         * performance/ext/pb_ds/tree_text_insert.cc: ...this.
1304         * performance/ext/pb_ds/tree_text_lor_find.cc: ...this.
1305
1306         * doc/xml/images/*: Image and image filename changes.
1307
1308 2011-08-12  Paolo Carlini  <paolo.carlini@oracle.com>
1309
1310         * include/c_global/cmath (fmod(_Tp, _Up)): Add.
1311         * include/c_std/cmath: Likewise.
1312
1313 2011-08-11  Paolo Carlini  <paolo.carlini@oracle.com>
1314
1315         * include/std/future: constexpr functions are implicitly inline.
1316         * include/std/chrono: Likewise.
1317         * include/std/complex: Likewise.
1318         * include/bits/move.h: Likewise.
1319         * include/bits/stl_pair.h: Likewise.
1320
1321 2011-08-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
1322
1323         * include/bits/alloc_traits.h: Fix doxygen @headername.
1324
1325 2011-08-06  Benjamin Kosnik  <bkoz@redhat.com>
1326
1327         * doc/doxygen/user.cfg.in (PDF_HYPERLINKS): To NO.
1328
1329 2011-08-06  Benjamin Kosnik  <bkoz@redhat.com>
1330
1331         * doc/doxygen/user.cfg.in: Add scoped_allocator.
1332
1333         * include/debug/safe_sequence.h: Fix doxygen markup.
1334         * include/debug/safe_unordered_base.h: Same.
1335         * include/debug/safe_local_iterator.tcc: Same.
1336         * include/debug/safe_unordered_container.h: Same.
1337         * include/std/valarray: Same.
1338         * include/std/iomanip: Same.
1339         * include/std/streambuf: Same.
1340         * include/std/bitset: Same.
1341         * include/std/fstream: Same.
1342         * include/std/functional: Same.
1343         * include/std/istream: Same.
1344         * include/std/ostream: Same.
1345         * include/std/scoped_allocator: Same.
1346         * include/std/sstream: Same.
1347         * include/parallel/multiway_merge.h: Same.
1348         * include/parallel/base.h: Same.
1349         * include/parallel/for_each_selectors.h: Same.
1350         * include/parallel/multiway_mergesort.h: Same.
1351         * include/parallel/search.h: Same.
1352         * include/parallel/partial_sum.h: Same.
1353         * include/parallel/queue.h: Same.
1354         * include/parallel/sort.h: Same.
1355         * include/parallel/random_number.h: Same.
1356         * include/ext/vstring.h: Same.
1357         * include/ext/algorithm: Same.
1358         * include/ext/pb_ds/assoc_container.h: Same.
1359         * include/ext/bitmap_allocator.h: Same.
1360         * include/ext/stdio_filebuf.h: Same.
1361         * include/ext/memory: Same.
1362         * include/ext/functional: Same.
1363         * include/bits/basic_ios.h: Same.
1364         * include/bits/stl_list.h: Same.
1365         * include/bits/stl_map.h: Same.
1366         * include/bits/stl_algobase.h: Same.
1367         * include/bits/stl_queue.h: Same.
1368         * include/bits/gslice.h: Same.
1369         * include/bits/locale_classes.h: Same.
1370         * include/bits/stl_set.h: Same.
1371         * include/bits/locale_facets.h: Same.
1372         * include/bits/stl_stack.h: Same.
1373         * include/bits/stl_heap.h: Same.
1374         * include/bits/forward_list.h: Same.
1375         * include/bits/stream_iterator.h: Same.
1376         * include/bits/basic_string.h: Same.
1377         * include/bits/stl_multimap.h: Same.
1378         * include/bits/stl_pair.h: Same.
1379         * include/bits/ios_base.h: Same.
1380         * include/bits/stl_numeric.h: Same.
1381         * include/bits/stl_vector.h: Same.
1382         * include/bits/stl_deque.h: Same.
1383         * include/bits/codecvt.h: Same.
1384         * include/bits/stl_multiset.h: Same.
1385         * include/bits/stl_uninitialized.h: Same.
1386         * include/bits/ptr_traits.h: Same.
1387         * include/bits/slice_array.h: Same.
1388         * include/bits/stl_iterator_base_funcs.h: Same.
1389         * include/bits/stl_algo.h: Same.
1390         * include/bits/stl_iterator.h: Same.
1391         * include/bits/stl_tempbuf.h: Same.
1392         * include/bits/regex.h: Same.
1393         * include/bits/range_access.h: Same.
1394         * include/bits/random.h: Same.
1395         * include/bits/alloc_traits.h: Same.
1396         * include/bits/regex_error.h: Same.
1397         * include/bits/locale_facets_nonio.h: Same.
1398         * include/bits/stl_relops.h: Same.
1399         * include/backward/auto_ptr.h: Same.
1400         * libsupc++/initializer_list: Same.
1401
1402         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1403         Adjust line numbers.
1404         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
1405         * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
1406         Same.
1407         * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
1408         Same.
1409
1410 2011-08-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1411
1412         * acinclude.m4 (GLIBCXX_EXPORT_INCLUDES): Point TOPLEVEL_INCLUDES
1413         to $(toplevel_srcdir)/libgcc.
1414         * configure: Regenerate.
1415
1416 2011-08-04  Benjamin Kosnik  <bkoz@redhat.com>
1417
1418         * doc/xml/manual/build_hacking.xml: Use relative fileref for PNG
1419         imagedata.
1420         * doc/xml/manual/test_policy_data_structures.xml: Same.
1421         * doc/xml/manual/policy_data_structures.xml: Same.
1422
1423         * doc/Makefile.am (stamp-html-docbook-images)
1424         (stamp-html-docbook-lwg, stamp-html-docbook-data): New.
1425         (xml_extra): Add lwg html file dependencies.
1426         (xml_images): Add image html file dependencies.
1427         * doc/Makefile.in: Regenerate.
1428         (stamp-html): Change to stamp-html-docbook-data.
1429         (stamp-html-copy): Remove.
1430
1431 2011-08-04  Paolo Carlini  <paolo.carlini@oracle.com>
1432
1433         * src/atomic.cc: Use noexcept.
1434         * include/std/atomic: Likewise.
1435         * include/bits/atomic_0.h: Likewise.
1436         * include/bits/atomic_2.h: Likewise.
1437         * include/bits/atomic_base.h: Likewise.
1438
1439 2011-08-03  Benjamin Kosnik  <bkoz@redhat.com>
1440
1441         * testsuite/performance/27_io/filebuf_sputn_unbuf.cc: Include
1442         unistd.h for unlink.
1443         * testsuite/performance/27_io/ofstream_insert_int.cc: Same.
1444         * testsuite/performance/27_io/ifstream_extract_int.cc: Same.
1445         * testsuite/performance/27_io/ifstream_getline-2.cc: Same.
1446         * testsuite/performance/27_io/fstream_seek_write.cc: Same.
1447         * testsuite/performance/27_io/ifstream_extract_chars.cc: Same.
1448         * testsuite/performance/27_io/ofstream_insert_float.cc: Same.
1449         * testsuite/performance/27_io/ifstream_extract_float.cc: Same.
1450         * testsuite/performance/27_io/filebuf_sputc.cc: Same.
1451
1452 2011-08-03  Benjamin Kosnik  <bkoz@redhat.com>
1453
1454         * include/std/tuple: Mark more constructors constexpr.
1455         * testsuite/20_util/tuple/cons/constexpr.cc: Split into and extend as:
1456         * testsuite/20_util/tuple/cons/constexpr-2.cc: ...this.
1457         * testsuite/20_util/tuple/cons/constexpr-3.cc: ... and this.
1458         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust line numbers.
1459
1460 2011-08-03  Benjamin Kosnik  <bkoz@redhat.com>
1461             François Dumont  <francois.cppdevs@free.fr>
1462
1463         * testsuite/23_containers/array/at_neg.cc: Move...
1464         * testsuite/23_containers/array/at.cc: ...here. Remove
1465         -fno-exceptions, call const at member function.
1466
1467 2011-08-01  H.J. Lu  <hongjiu.lu@intel.com>
1468
1469         * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Generated.
1470
1471 2011-08-01  Paolo Carlini  <paolo.carlini@oracle.com>
1472
1473         PR c++/49813
1474         * include/c_global/cmath (isinf): Remove workaround.
1475
1476 2011-07-31  Paolo Carlini  <paolo.carlini@oracle.com>
1477
1478         PR libstdc++/49925
1479         * include/bits/shared_ptr.h (make_shared): Qualify allocate_shared
1480         with std::.
1481         * include/bits/shared_ptr_base.h (__make_shared): Likewise.
1482
1483 2011-07-29  Benjamin Kosnik  <bkoz@redhat.com>
1484
1485         * doc/xml/manual/build_hacking.xml: Markup imagedata changes.
1486         * doc/xml/manual/policy_data_structures.xml: Same.
1487
1488         * doc/xml/class.txml: Remove biblioid.
1489         * doc/xml/manual/allocator.xml: Same.
1490         * doc/xml/manual/ctype.xml: Same.
1491         * doc/xml/manual/codecvt.xml: Same.
1492         * doc/xml/manual/backwards_compatibility.xml: Same.
1493         * doc/xml/manual/abi.xml: Same.
1494         * doc/xml/manual/shared_ptr.xml: Same.
1495         * doc/xml/manual/using_exceptions.xml: Same.
1496         * doc/xml/manual/messages.xml: Same.
1497
1498 2011-07-29  Benjamin Kosnik  <bkoz@redhat.com>
1499
1500         Docbook conversion of existing ext/pb_ds documentation.
1501         * doc/Makefile.am (xml_sources_manual): Add
1502         policy_data_structures.xml and
1503         test_policy_data_structures.xml.
1504         (stamp-html-copy): Remove special-case for ext/pb_ds directory.
1505         (XSLTPROC_FLAGS): Split into XSLT_FLAGS and XSLT_PARAM, use.
1506         * doc/Makefile.in: Regenerate.
1507         * doc/xml/manual/policy_data_structures.xml: New, adapted from
1508           previous html-only instance in doc/html/ext/pb_ds.
1509         * doc/xml/manual/test_policy_data_structures.xml: New, same as above.
1510
1511         * doc/xml/spine.xml: Update copyright.
1512         * doc/xml/manual/spine.xml: Same.
1513         * doc/xml/manual/extensions.xml: Adjust set, chapter, sections.
1514         * doc/xml/manual/bitmap_allocator.xml: Same.
1515         * doc/xml/manual/mt_allocator.xml: Same.
1516
1517         Populate image directory.
1518         * doc/xml/images/(pbds_balls_and_bins.png,
1519         pbds_binary_priority_queue_random_int_push_timing_test_local.pdf,
1520         pbds_binary_priority_queue_random_int_push_timing_test_local.png,
1521         pbds_binary_priority_queue_random_int_push_timing_test_local.svg,
1522         pbds_cc_hash_random_int_find_timing_test_local.pdf,
1523         pbds_cc_hash_random_int_find_timing_test_local.png,
1524         pbds_cc_hash_random_int_find_timing_test_local.svg,
1525         pbds_cc_hash_random_int_subscript_timing_test_find_local.pdf,
1526         pbds_cc_hash_random_int_subscript_timing_test_find_local.png,
1527         pbds_cc_hash_random_int_subscript_timing_test_find_local.svg,
1528         pbds_cc_hash_random_int_subscript_timing_test_insert_local.pdf,
1529         pbds_cc_hash_random_int_subscript_timing_test_insert_local.png,
1530         pbds_cc_hash_random_int_subscript_timing_test_insert_local.svg,
1531         pbds_container_tag_hierarchy.pdf,
1532         pbds_container_tag_hierarchy.png,
1533         pbds_container_tag_hierarchy.svg,
1534         pbds_different_underlying_dss_1.png,
1535         pbds_different_underlying_dss_2.png,
1536         pbds_embedded_lists_1.png, pbds_embedded_lists_2.png,
1537         pbds_embedded_lists_3.png, pbds_exception_hierarchy.pdf,
1538         pbds_exception_hierarchy.png, pbds_exception_hierarchy.svg,
1539         pbds_gp_hash_random_int_find_timing_test_local.pdf,
1540         pbds_gp_hash_random_int_find_timing_test_local.png,
1541         pbds_gp_hash_random_int_find_timing_test_local.svg,
1542         pbds_gp_hash_random_int_subscript_timing_test_find_local.pdf,
1543         pbds_gp_hash_random_int_subscript_timing_test_find_local.png,
1544         pbds_gp_hash_random_int_subscript_timing_test_find_local.svg,
1545         pbds_gp_hash_random_int_subscript_timing_test_insert_local.pdf,
1546         pbds_gp_hash_random_int_subscript_timing_test_insert_local.png,
1547         pbds_gp_hash_random_int_subscript_timing_test_insert_local.svg,
1548         pbds_hash_policy_cd.png,
1549         pbds_hash_random_int_erase_mem_usage_test_local.pdf,
1550         pbds_hash_random_int_erase_mem_usage_test_local.png,
1551         pbds_hash_random_int_erase_mem_usage_test_local.svg,
1552         pbds_hash_ranged_hash_range_hashing_fns.png,
1553         pbds_hash_range_hashing_seq_diagram2.png,
1554         pbds_hash_range_hashing_seq_diagram.png,
1555         pbds_hash_zlob_random_int_find_timing_test_local.pdf,
1556         pbds_hash_zlob_random_int_find_timing_test_local.png,
1557         pbds_hash_zlob_random_int_find_timing_test_local.svg,
1558         pbds_insert_resize_sequence_diagram1.png,
1559         pbds_insert_resize_sequence_diagram2.png,
1560         pbds_insert_resize_sequence_diagram3.png,
1561         pbds_invalidation_guarantee_erase.png,
1562         pbds_invalidation_tag_hierarchy.pdf,
1563         pbds_invalidation_tag_hierarchy.png,
1564         pbds_invalidation_tag_hierarchy.svg, pbds_list_update.png,
1565         pbds_multimap_text_find_timing_test_large_s2p_hash_local.pdf,
1566         pbds_multimap_text_find_timing_test_large_s2p_hash_local.png,
1567         pbds_multimap_text_find_timing_test_large_s2p_hash_local.svg,
1568         pbds_multimap_text_find_timing_test_large_s2p_tree_local.pdf,
1569         pbds_multimap_text_find_timing_test_large_s2p_tree_local.png,
1570         pbds_multimap_text_find_timing_test_large_s2p_tree_local.svg,
1571         pbds_multimap_text_find_timing_test_small_s2p_hash_local.pdf,
1572         pbds_multimap_text_find_timing_test_small_s2p_hash_local.png,
1573         pbds_multimap_text_find_timing_test_small_s2p_hash_local.svg,
1574         pbds_multimap_text_find_timing_test_small_s2p_tree_local.pdf,
1575         pbds_multimap_text_find_timing_test_small_s2p_tree_local.png,
1576         pbds_multimap_text_find_timing_test_small_s2p_tree_local.svg,
1577         pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.pdf,
1578         pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.png,
1579         pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.svg,
1580         pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.pdf,
1581         pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.png,
1582         pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.svg,
1583         pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.pdf,
1584         pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.png,
1585         pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.svg,
1586         pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.pdf,
1587         pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.png,
1588         pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.svg,
1589         pbds_multimap_text_insert_timing_test_large_s2p_hash_local.pdf,
1590         pbds_multimap_text_insert_timing_test_large_s2p_hash_local.png,
1591         pbds_multimap_text_insert_timing_test_large_s2p_hash_local.svg,
1592         pbds_multimap_text_insert_timing_test_large_s2p_tree_local.pdf,
1593         pbds_multimap_text_insert_timing_test_large_s2p_tree_local.png,
1594         pbds_multimap_text_insert_timing_test_large_s2p_tree_local.svg,
1595         pbds_multimap_text_insert_timing_test_small_s2p_hash_local.pdf,
1596         pbds_multimap_text_insert_timing_test_small_s2p_hash_local.png,
1597         pbds_multimap_text_insert_timing_test_small_s2p_hash_local.svg,
1598         pbds_multimap_text_insert_timing_test_small_s2p_tree_local.pdf,
1599         pbds_multimap_text_insert_timing_test_small_s2p_tree_local.png,
1600         pbds_multimap_text_insert_timing_test_small_s2p_tree_local.svg,
1601         pbds_node_invariants.png,
1602         pbds_pairing_priority_queue_text_push_pop_timing_test_local.pdf,
1603         pbds_pairing_priority_queue_text_push_pop_timing_test_local.png,
1604         pbds_pairing_priority_queue_text_push_pop_timing_test_local.svg,
1605         pbds_pairing_priority_queue_text_push_timing_test_local.pdf,
1606         pbds_pairing_priority_queue_text_push_timing_test_local.png,
1607         pbds_pairing_priority_queue_text_push_timing_test_local.svg,
1608         pbds_pat_trie.png, pbds_point_iterator_hierarchy.png,
1609         pbds_point_iterators_range_ops_1.png,
1610         pbds_point_iterators_range_ops_2.png,
1611         pbds_priority_queue_different_underlying_dss.png,
1612         pbds_priority_queue_random_int_push_pop_timing_test_local.pdf,
1613         pbds_priority_queue_random_int_push_pop_timing_test_local.png,
1614         pbds_priority_queue_random_int_push_pop_timing_test_local.svg,
1615         pbds_priority_queue_random_int_push_timing_test_local.pdf,
1616         pbds_priority_queue_random_int_push_timing_test_local.png,
1617         pbds_priority_queue_random_int_push_timing_test_local.svg,
1618         pbds_priority_queue_tag_hierarchy.pdf,
1619         pbds_priority_queue_tag_hierarchy.png,
1620         pbds_priority_queue_tag_hierarchy.svg,
1621         pbds_priority_queue_text_join_timing_test_local.pdf,
1622         pbds_priority_queue_text_join_timing_test_local.png,
1623         pbds_priority_queue_text_join_timing_test_local.svg,
1624         pbds_priority_queue_text_modify_down_timing_test_local.pdf,
1625         pbds_priority_queue_text_modify_down_timing_test_local.png,
1626         pbds_priority_queue_text_modify_down_timing_test_local.svg,
1627         pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.pdf,
1628         pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.png,
1629         pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.svg,
1630         pbds_priority_queue_text_modify_up_timing_test_local.pdf,
1631         pbds_priority_queue_text_modify_up_timing_test_local.png,
1632         pbds_priority_queue_text_modify_up_timing_test_local.svg,
1633         pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.pdf,
1634         pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.png,
1635         pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.svg,
1636         pbds_priority_queue_text_pop_mem_usage_test_local.pdf,
1637         pbds_priority_queue_text_pop_mem_usage_test_local.png,
1638         pbds_priority_queue_text_pop_mem_usage_test_local.svg,
1639         pbds_priority_queue_text_push_pop_timing_test_local.pdf,
1640         pbds_priority_queue_text_push_pop_timing_test_local.png,
1641         pbds_priority_queue_text_push_pop_timing_test_local.svg,
1642         pbds_priority_queue_text_push_timing_test_local.pdf,
1643         pbds_priority_queue_text_push_timing_test_local.png,
1644         pbds_priority_queue_text_push_timing_test_local.svg,
1645         pbds_rationale_null_node_updator.png,
1646         pbds_resize_policy_cd.png, pbds_restoring_node_invariants.png,
1647         pbds_simple_list.png,
1648         pbds_text_find_timing_test_hash_local.pdf,
1649         pbds_text_find_timing_test_hash_local.png,
1650         pbds_text_find_timing_test_hash_local.svg,
1651         pbds_text_find_timing_test_tree_like_local.pdf,
1652         pbds_text_find_timing_test_tree_like_local.png,
1653         pbds_text_find_timing_test_tree_like_local.svg,
1654         pbds_tree_node_invalidations.png,
1655         pbds_tree_node_invariants.png,
1656         pbds_tree_node_updator_policy_cd.png,
1657         pbds_tree_order_statistics_timing_test_local.pdf,
1658         pbds_tree_order_statistics_timing_test_local.png,
1659         pbds_tree_order_statistics_timing_test_local.svg,
1660         pbds_tree_split_join_timing_test_local.pdf,
1661         pbds_tree_split_join_timing_test_local.png,
1662         pbds_tree_split_join_timing_test_local.svg,
1663         pbds_tree_text_insert_timing_test_node_tree_local.pdf,
1664         pbds_tree_text_insert_timing_test_node_tree_local.png,
1665         pbds_tree_text_insert_timing_test_node_tree_local.svg,
1666         pbds_tree_text_insert_timing_test_pat_trie_local.pdf,
1667         pbds_tree_text_insert_timing_test_pat_trie_local.png,
1668         pbds_tree_text_insert_timing_test_pat_trie_local.svg,
1669         pbds_tree_text_insert_timing_test_vector_tree_local.pdf,
1670         pbds_tree_text_insert_timing_test_vector_tree_local.png,
1671         pbds_tree_text_insert_timing_test_vector_tree_local.svg,
1672         pbds_tree_text_lor_find_timing_test_local.pdf,
1673         pbds_tree_text_lor_find_timing_test_local.png,
1674         pbds_tree_text_lor_find_timing_test_local.svg,
1675         pbds_trie_node_updator_policy_cd.png,
1676         pbds_update_seq_diagram.png): Add.
1677
1678         * doc/html/ext/pb_ds: Remove.
1679         * doc/html/ext/pb_ds/(acks.html, assoc_container_tag_cd.png,
1680         assoc_container_tag_cd.svg, assoc_container_traits.html,
1681         assoc_design.html, assoc_examples.html,
1682         associative_container_tag.html, assoc_performance_tests.html,
1683         assoc_regression_tests.html, assoc_tests.html,
1684         balls_and_bins.png, basic_hash_table.html,
1685         basic_hash_tag.html, basic_invalidation_guarantee.html,
1686         basic_tree_assoc_container_const_node_iterator.html,
1687         basic_tree.html, basic_tree_tag.html, binary_heap_tag.html,
1688         binary_priority_queue_random_int_push_timing_test_gcc.png,
1689         binary_priority_queue_random_int_push_timing_test_local.png,
1690         binary_priority_queue_random_int_push_timing_test_msvc.png,
1691         binomial_heap_tag.html,
1692         ccgp_hash_random_int_subscript_timing_test_insert_gcc.png,
1693         ccgp_hash_random_int_subscript_timing_test_insert_local.png,
1694         ccgp_hash_random_int_subscript_timing_test_insert_msvc.png,
1695         cc_hash_max_collision_check_resize_trigger.html,
1696         cc_hash_random_int_find_timing_test_gcc.png,
1697         cc_hash_random_int_find_timing_test_local.png,
1698         cc_hash_random_int_find_timing_test_msvc.png,
1699         cc_hash_random_int_subscript_timing_test_find_gcc.png,
1700         cc_hash_random_int_subscript_timing_test_find_local.png,
1701         cc_hash_random_int_subscript_timing_test_find_msvc.png,
1702         cc_hash_random_int_subscript_timing_test_insert_gcc.png,
1703         cc_hash_random_int_subscript_timing_test_insert_local.png,
1704         cc_hash_random_int_subscript_timing_test_insert_msvc.png,
1705         cc_hash_table.html, cc_hash_tag.html, checked_by_tidy.gif
1706         concepts.html, contact.html, container_base.html,
1707         container_cd.png, container_cd.svg, container_tag.html,
1708         counter_lu_policy.html, design.html,
1709         different_underlying_dss.png, direct_mask_range_hashing.html,
1710         direct_mod_range_hashing.html, disclaimer.html, ds_gen.html,
1711         embedded_lists_1.png, embedded_lists_2.png,
1712         embedded_lists_3.png, examples.html, exceptions.html,
1713         gp_hash_random_int_find_timing_test_gcc.png,
1714         gp_hash_random_int_find_timing_test_local.png,
1715         gp_hash_random_int_find_timing_test_msvc.png,
1716         gp_hash_random_int_subscript_timing_test_find_gcc.png,
1717         gp_hash_random_int_subscript_timing_test_find_local.png,
1718         gp_hash_random_int_subscript_timing_test_find_msvc.png,
1719         gp_hash_random_int_subscript_timing_test_insert_gcc.png,
1720         gp_hash_random_int_subscript_timing_test_insert_local.png,
1721         gp_hash_random_int_subscript_timing_test_insert_msvc.png,
1722         gp_hash_table.html, gp_hash_tag.html,
1723         hash_based_containers.html, hash_exponential_size_policy.html,
1724         hash_load_check_resize_trigger.html, hash_policy_cd.png,
1725         hash_prime_size_policy.html,
1726         hash_random_int_erase_mem_usage_test_gcc.png,
1727         hash_random_int_erase_mem_usage_test.html,
1728         hash_random_int_erase_mem_usage_test_local.png,
1729         hash_random_int_erase_mem_usage_test_msvc.png,
1730         hash_random_int_find_find_timing_test.html,
1731         hash_random_int_subscript_find_timing_test.html,
1732         hash_random_int_subscript_insert_timing_test.html,
1733         hash_ranged_hash_range_hashing_fns.png,
1734         hash_range_hashing_seq_diagram2.png,
1735         hash_range_hashing_seq_diagram.png,
1736         hash_standard_resize_policy.html,
1737         hash_text_find_find_timing_test.html,
1738         hash_zlob_random_int_find_find_timing_test.html,
1739         hash_zlob_random_int_find_timing_test_gcc.png,
1740         hash_zlob_random_int_find_timing_test_local.png,
1741         hash_zlob_random_int_find_timing_test_msvc.png, index.html,
1742         insert_error.html, insert_resize_sequence_diagram1.png,
1743         insert_resize_sequence_diagram2.png,
1744         insert_resize_sequence_diagram3.png, interface.html,
1745         introduction.html, invalidation_guarantee_cd.png,
1746         invalidation_guarantee_erase.png, join_error.html,
1747         linear_probe_fn.html, list_update.html, list_update_tag.html,
1748         lu_based_containers.html, lu.png, misc.html, motivation.html,
1749         move_to_front_lu_policy.html,
1750         multimap_text_find_timing_test_large.html,
1751         multimap_text_find_timing_test_large_s2p_hash_gcc.png,
1752         multimap_text_find_timing_test_large_s2p_hash_local.png,
1753         multimap_text_find_timing_test_large_s2p_hash_msvc.png,
1754         multimap_text_find_timing_test_large_s2p_tree_gcc.png,
1755         multimap_text_find_timing_test_large_s2p_tree_local.png,
1756         multimap_text_find_timing_test_large_s2p_tree_msvc.png,
1757         multimap_text_find_timing_test_small.html,
1758         multimap_text_find_timing_test_small_s2p_hash_gcc.png,
1759         multimap_text_find_timing_test_small_s2p_hash_local.png,
1760         multimap_text_find_timing_test_small_s2p_hash_msvc.png,
1761         multimap_text_find_timing_test_small_s2p_tree_gcc.png,
1762         multimap_text_find_timing_test_small_s2p_tree_local.png,
1763         multimap_text_find_timing_test_small_s2p_tree_msvc.png,
1764         multimap_text_insert_mem_usage_test_large.html,
1765         multimap_text_insert_mem_usage_test_large_s2p_hash_gcc.png,
1766         multimap_text_insert_mem_usage_test_large_s2p_hash_local.png,
1767         multimap_text_insert_mem_usage_test_large_s2p_hash_msvc.png,
1768         multimap_text_insert_mem_usage_test_large_s2p_tree_gcc.png,
1769         multimap_text_insert_mem_usage_test_large_s2p_tree_local.png,
1770         multimap_text_insert_mem_usage_test_large_s2p_tree_msvc.png,
1771         multimap_text_insert_mem_usage_test_small.html,
1772         multimap_text_insert_mem_usage_test_small_s2p_hash_gcc.png,
1773         multimap_text_insert_mem_usage_test_small_s2p_hash_local.png,
1774         multimap_text_insert_mem_usage_test_small_s2p_hash_msvc.png,
1775         multimap_text_insert_mem_usage_test_small_s2p_tree_gcc.png,
1776         multimap_text_insert_mem_usage_test_small_s2p_tree_local.png,
1777         multimap_text_insert_mem_usage_test_small_s2p_tree_msvc.png,
1778         multimap_text_insert_timing_test_large.html,
1779         multimap_text_insert_timing_test_large_s2p_hash_gcc.png,
1780         multimap_text_insert_timing_test_large_s2p_hash_local.png,
1781         multimap_text_insert_timing_test_large_s2p_hash_msvc.png,
1782         multimap_text_insert_timing_test_large_s2p_tree_gcc.png,
1783         multimap_text_insert_timing_test_large_s2p_tree_local.png,
1784         multimap_text_insert_timing_test_large_s2p_tree_msvc.png,
1785         multimap_text_insert_timing_test_small.html,
1786         multimap_text_insert_timing_test_small_s2p_hash_gcc.png,
1787         multimap_text_insert_timing_test_small_s2p_hash_local.png,
1788         multimap_text_insert_timing_test_small_s2p_hash_msvc.png,
1789         multimap_text_insert_timing_test_small_s2p_tree_gcc.png,
1790         multimap_text_insert_timing_test_small_s2p_tree_local.png,
1791         multimap_text_insert_timing_test_small_s2p_tree_msvc.png,
1792         node_invariant_invalidations.png, node_invariants.png,
1793         null_hash_fn.html, null_lu_metadata.html,
1794         null_mapped_type.html, null_probe_fn.html,
1795         null_tree_node_update.html, null_trie_node_update.html,
1796         ov_tree_tag.html, pairing_heap_tag.html,
1797         pairing_priority_queue_text_push_pop_timing_test_gcc.png,
1798         pairing_priority_queue_text_push_pop_timing_test_local.png,
1799         pairing_priority_queue_text_push_pop_timing_test_msvc.png,
1800         pairing_priority_queue_text_push_timing_test_gcc.png,
1801         pairing_priority_queue_text_push_timing_test_local.png,
1802         pairing_priority_queue_text_push_timing_test_msvc.png,
1803         pat_trie.png, pat_trie_tag.html,
1804         point_invalidation_guarantee.html, point_iterators_cd.png,
1805         point_iterators_range_ops_1.png,
1806         point_iterators_range_ops_2.png, pq_container_traits.html,
1807         pq_design.html, pq_different_underlying_dss.png,
1808         pq_examples.html, pq_performance_tests.html,
1809         pq_regression_tests.html, pq_tests.html, prerequisites.html,
1810         priority_queue.html,
1811         priority_queue_random_int_push_pop_timing_test_gcc.png,
1812         priority_queue_random_int_push_pop_timing_test.html,
1813         priority_queue_random_int_push_pop_timing_test_local.png,
1814         priority_queue_random_int_push_pop_timing_test_msvc.png,
1815         priority_queue_random_int_push_timing_test_gcc.png,
1816         priority_queue_random_int_push_timing_test.html,
1817         priority_queue_random_int_push_timing_test_local.png,
1818         priority_queue_random_int_push_timing_test_msvc.png,
1819         priority_queue_tag_cd.png, priority_queue_tag_cd.svg,
1820         priority_queue_tag.html,
1821         priority_queue_text_join_timing_test_gcc.png,
1822         priority_queue_text_join_timing_test.html,
1823         priority_queue_text_join_timing_test_local.png,
1824         priority_queue_text_join_timing_test_msvc.png,
1825         priority_queue_text_modify_down_timing_test_gcc.png,
1826         priority_queue_text_modify_down_timing_test.html,
1827         priority_queue_text_modify_down_timing_test_local.png,
1828         priority_queue_text_modify_down_timing_test_msvc.png,
1829         priority_queue_text_modify_down_timing_test_pairing_thin_gcc.png,
1830         priority_queue_text_modify_down_timing_test_pairing_thin_local.png,
1831         priority_queue_text_modify_down_timing_test_pairing_thin_msvc.png,
1832         priority_queue_text_modify_up_timing_test_gcc.png,
1833         priority_queue_text_modify_up_timing_test.html,
1834         priority_queue_text_modify_up_timing_test_local.png,
1835         priority_queue_text_modify_up_timing_test_msvc.png,
1836         priority_queue_text_modify_up_timing_test_pairing_thin_gcc.png,
1837         priority_queue_text_modify_up_timing_test_pairing_thin_local.png,
1838         priority_queue_text_modify_up_timing_test_pairing_thin_msvc.png,
1839         priority_queue_text_pop_mem_usage_test_gcc.png,
1840         priority_queue_text_pop_mem_usage_test.html,
1841         priority_queue_text_pop_mem_usage_test_local.png,
1842         priority_queue_text_pop_mem_usage_test_msvc.png,
1843         priority_queue_text_push_pop_timing_test_gcc.png,
1844         priority_queue_text_push_pop_timing_test.html,
1845         priority_queue_text_push_pop_timing_test_local.png,
1846         priority_queue_text_push_pop_timing_test_msvc.png,
1847         priority_queue_text_push_timing_test_gcc.png,
1848         priority_queue_text_push_timing_test.html,
1849         priority_queue_text_push_timing_test_local.png,
1850         priority_queue_text_push_timing_test_msvc.png,
1851         PythonPoweredSmall.gif quadratic_probe_fn.html,
1852         random_int_find_find_timing_test_tree_gcc.png,
1853         random_int_find_find_timing_test_tree_local.png,
1854         random_int_find_find_timing_test_tree_msvc.png,
1855         range_invalidation_guarantee.html,
1856         rationale_null_node_updator.png, rb_tree_tag.html,
1857         rc_binomial_heap_tag.html, references.html, resize_error.html,
1858         resize_policy_cd.png, restoring_node_invariants.png,
1859         sample_probe_fn.html, sample_ranged_hash_fn.html,
1860         sample_ranged_probe_fn.html, sample_range_hashing.html,
1861         sample_resize_policy.html, sample_resize_trigger.html,
1862         sample_size_policy.html, sample_tree_node_update.html,
1863         sample_trie_access_traits.html, sample_trie_node_update.html,
1864         sample_update_policy.html, simple_list.png,
1865         splay_tree_tag.html, tests.html,
1866         text_find_timing_test_hash_gcc.png,
1867         text_find_timing_test_hash_local.png,
1868         text_find_timing_test_hash_msvc.png,
1869         text_find_timing_test_tree_like_gcc.png,
1870         text_find_timing_test_tree_like_local.png,
1871         text_find_timing_test_tree_like_msvc.png, thin_heap_tag.html,
1872         tree_based_containers.html, tree.html,
1873         tree_node_iterator.html, tree_node_updator_policy_cd.png,
1874         tree_order_statistics_node_update.html,
1875         tree_order_statistics_timing_test_gcc.png,
1876         tree_order_statistics_timing_test.html,
1877         tree_order_statistics_timing_test_local.png,
1878         tree_order_statistics_timing_test_msvc.png,
1879         tree_random_int_find_find_timing_test.html,
1880         tree_split_join_timing_test_gcc.png,
1881         tree_split_join_timing_test.html,
1882         tree_split_join_timing_test_local.png,
1883         tree_split_join_timing_test_msvc.png, tree_tag.html,
1884         tree_text_find_find_timing_test.html,
1885         tree_text_insert_timing_test.html,
1886         tree_text_insert_timing_test_node_tree_gcc.png,
1887         tree_text_insert_timing_test_node_tree_local.png,
1888         tree_text_insert_timing_test_node_tree_msvc.png,
1889         tree_text_insert_timing_test_pat_trie_gcc.png,
1890         tree_text_insert_timing_test_pat_trie_local.png,
1891         tree_text_insert_timing_test_pat_trie_msvc.png,
1892         tree_text_insert_timing_test_vector_tree_gcc.png,
1893         tree_text_insert_timing_test_vector_tree_local.png,
1894         tree_text_insert_timing_test_vector_tree_msvc.png,
1895         tree_text_lor_find_find_timing_test.html,
1896         tree_text_lor_find_timing_test_gcc.png,
1897         tree_text_lor_find_timing_test_local.png,
1898         tree_text_lor_find_timing_test_msvc.png,
1899         trie_based_containers.html, trie_const_node_iterator.html,
1900         trie.html, trie_node_iterator.html,
1901         trie_node_updator_policy_cd.png,
1902         trie_order_statistics_node_update.html,
1903         trie_prefix_search_node_update.html,
1904         trie_string_access_traits.html, trie_tag.html,
1905         trivial_iterator_tag.html, tutorial.html,
1906         update_policy_cd.png, update_seq_diagram.png): Remove.
1907
1908 2011-07-27  Paolo Carlini  <paolo.carlini@oracle.com>
1909
1910         PR c++/49813
1911         * include/c_global/cmath: Use _GLIBCXX_CONSTEXPR and constexpr.
1912
1913 2011-07-27  Jeffrey Yasskin  <jyasskin@google.com>
1914
1915         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Updated.
1916
1917 2011-07-25  Benjamin Kosnik  <bkoz@redhat.com>
1918
1919         * include/std/array (at): Remove constexpr when -fno-exceptions.
1920         * testsuite/23_containers/array/at_neg.cc: Test.
1921
1922 2011-07-25  Paolo Carlini  <paolo.carlini@oracle.com>
1923             Nathan Ridge  <zeratul976@hotmail.com>
1924
1925         PR libstdc++/49836
1926         * include/bits/stl_vector.h (vector<>::_M_emplace_back_aux):
1927         Declare.
1928         (vector<>::push_back(const value_type&)): Use it.
1929         * include/bits/vector.tcc: Define.
1930         (vector<>::emplace_back(_Args&&...)): Use it.
1931         * testsuite/util/testsuite_tr1.h (CopyConsOnlyType, MoveConsOnlyType):
1932         Add.
1933         * testsuite/23_containers/vector/modifiers/push_back/49836.cc: New.
1934         * testsuite/23_containers/deque/modifiers/push_back/49836.cc:
1935         Likewise.
1936         * testsuite/23_containers/deque/modifiers/push_front/49836.cc:
1937         Likewise.
1938         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1939         Adjust dg-error line number.
1940         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1941         Likewise.
1942         * testsuite/23_containers/vector/requirements/dr438/
1943         constructor_1_neg.cc: Likewise.
1944         * testsuite/23_containers/vector/requirements/dr438/
1945         constructor_2_neg.cc: Likewise.
1946
1947 2011-07-24  Paolo Carlini  <paolo.carlini@oracle.com>
1948
1949         * include/bits/hashtable_policy.h (_Prime_rehash_policy::_M_next_bkt,
1950         _M_bkt_for_elements, _M_need_rehash): Fix typos in the last commit.
1951
1952 2011-07-24  François Dumont  <francois.cppdevs@free.fr>
1953
1954         * include/bits/hashtable_policy.h (_Prime_rehash_policy): Use
1955         __builtin_floor rather than __builtin_ceil to compute next resize
1956         value.
1957         * testsuite/23_containers/unordered_set/hash_policy/load_factor.cc:
1958         New.
1959
1960 2011-07-22  Benjamin Kosnik  <bkoz@redhat.com>
1961             Daniel Krugler  <daniel.kruegler@googlemail.com>
1962
1963         * include/bits/move.h (move, forward): Mark constexpr.
1964         * include/bits/stl_pair.h (pair): Mark move ctors constexpr.
1965         * testsuite/20_util/pair/make_pair/constexpr.cc: New.
1966         * testsuite/20_util/pair/cons/constexpr.cc: Add tests.
1967
1968 2011-07-22  Ian Lance Taylor  <iant@google.com>
1969
1970         * fragment.am (CONFIG_CXXFLAGS): Add -frandom-seed.
1971         * Makefile.in: Rebuild.
1972         * doc/Makefile.in: Rebuild.
1973         * include/Makefile.in: Rebuild.
1974         * libsupc++/Makefile.in: Rebuild.
1975         * po/Makefile.in: Rebuild.
1976         * python/Makefile.in: Rebuild.
1977         * src/Makefile.in: Rebuild.
1978         * testsuite/Makefile.in: Rebuild.
1979
1980 2011-07-21  Benjamin Kosnik  <bkoz@redhat.com>
1981
1982         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Move...
1983         * testsuite/ext/pb_ds/regression/tree_set_rand.cc: ... here.
1984         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc: Move...
1985         * testsuite/ext/pb_ds/regression/tree_set_rand_debug.cc: ... here.
1986         * testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Move...
1987         * testsuite/ext/pb_ds/regression/tree_map_rand.cc: ... here.
1988         * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc: Move...
1989         * testsuite/ext/pb_ds/regression/tree_map_rand_debug.cc: ... here.
1990
1991         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Move...
1992         * testsuite/ext/pb_ds/regression/trie_set_rand.cc: ... here.
1993         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc: Move...
1994         * testsuite/ext/pb_ds/regression/trie_set_rand_debug.cc: ... here.
1995         * testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Move...
1996         * testsuite/ext/pb_ds/regression/trie_map_rand.cc: ... here.
1997         * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc: Move...
1998         * testsuite/ext/pb_ds/regression/trie_map_rand_debug.cc: ... here.
1999
2000         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand.cc: Move.
2001         * testsuite/ext/pb_ds/regression/list_update_set_rand.cc: ...here.
2002         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc:
2003         Move...
2004         * testsuite/ext/pb_ds/regression/list_update_set_rand_debug.cc: ...here.
2005         * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc: Move...
2006         * testsuite/ext/pb_ds/regression/list_update_map_rand.cc: ...here.
2007         * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc:
2008         Move...
2009         * testsuite/ext/pb_ds/regression/list_update_map_rand_debug.cc: ...here.
2010
2011         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Move...
2012         * testsuite/ext/pb_ds/regression/hash_set_rand.cc: ...here.
2013         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc: Move...
2014         * testsuite/ext/pb_ds/regression/hash_set_rand_debug.cc: ...here.
2015
2016         * testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Move...
2017         * testsuite/ext/pb_ds/regression/hash_map_rand.cc: ...here.
2018         * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc: Move...
2019         * testsuite/ext/pb_ds/regression/hash_map_rand_debug.cc: ...here.
2020
2021 2011-07-21  François Dumont  <francois.cppdevs@free.fr>
2022
2023         * include/debug/safe_unordered_sequence.h,
2024         safe_unordered_sequence.tcc: Rename respectively in...
2025         * include/debug/safe_unordered_container.h,
2026         safe_unordered_container.tcc: ...those. _Safe_unordered_sequence
2027         rename _Safe_unordered_container.
2028         * include/debug/safe_unordered_base.h: _Safe_unordered_sequence_base
2029         rename _Safe_unordered_container_base.
2030         * include/debug/unordered_map, unordered_set: Adapt to previous
2031         modifications.
2032         * config/abi/pre/gnu.ver: Likewise.
2033         * src/debug.cc: Likewise.
2034         * include/Makefile.am: Likewise.
2035         * include/Makefile.in: Regenerate.
2036
2037 2011-07-21  Paolo Carlini  <paolo.carlini@oracle.com>
2038
2039         * include/std/mutex (timed_mutex, recursive_timed_mutex): Update
2040         to use steady_clock instead of monotonic_clock.
2041         * config/abi/pre/gnu.ver: Export steady_clock::now.
2042
2043 2011-07-20  Benjamin Kosnik  <bkoz@redhat.com>
2044             Daniel Krugler  <daniel.kruegler@googlemail.com>
2045
2046         * include/std/array (array::at, array::operator[]): Mark constexpr.
2047         * testsuite/23_containers/array/requirements/
2048         constexpr_element_access.cc: Add.
2049
2050 2011-07-20  Benjamin Kosnik  <bkoz@redhat.com>
2051             Daniel Krugler  <daniel.kruegler@googlemail.com>
2052
2053         * include/std/chrono: (system_clock::is_steady): Update to N3291
2054         from is_monotonic.
2055         (time_point): Mark nonmember arithmetic operators constexpr.
2056         * src/chrono.cc: Modify for above.
2057         * src/compatibility-c++0x.cc: Same.
2058         * testsuite/20_util/time_point/nonmember/constexpr.cc: New.
2059         * testsuite/20_util/time_point/1.cc: Modify.
2060         * testsuite/20_util/system_clock/constexpr_data.cc: Modify.
2061         * testsuite/20_util/system_clock/1.cc: Modify.
2062         * testsuite/20_util/monotonic_clock/constexpr_data.cc: Move to...
2063         * testsuite/20_util/steady_clock/constexpr_data.cc: ...here.
2064         * testsuite/30_threads/condition_variable/members/2.cc: Modify.
2065         * testsuite/30_threads/condition_variable_any/members/2.cc: Modify.
2066
2067 2011-07-20  Paolo Carlini  <paolo.carlini@oracle.com>
2068
2069         * include/std/system_error: Use noexcept.
2070         * src/system_error.cc: Likewise.
2071         * testsuite/19_diagnostics/error_condition/modifiers/39881.cc: Adjust.
2072         * testsuite/19_diagnostics/error_condition/cons/39881.cc: Likewise.
2073         * testsuite/19_diagnostics/error_code/modifiers/39882.cc: Likewise.
2074         * testsuite/19_diagnostics/error_code/cons/39882.cc: Likewise.
2075         * testsuite/util/testsuite_error.h: Likewise.
2076
2077         * include/std/system_error (error_code::error_code(_ErrorCodeEnum)):
2078         Use enable_if on template parameter default.
2079         (error_condition::error_condition(_ErrorConditionEnum)): Likewise.
2080
2081 2011-07-20  Ed Smith-Rowland  <3dw4rd@verizon.net>
2082
2083         * include/precompiled/stdc++.h: Add scoped_allocator.
2084
2085 2011-07-20  Benjamin Kosnik  <bkoz@redhat.com>
2086
2087         * include/std/bitset (operator[]): Make constexpr.
2088         * testsuite/23_containers/bitset/operations/constexpr.cc: New.
2089
2090 2011-07-20  Paolo Carlini  <paolo.carlini@oracle.com>
2091
2092         * include/debug/safe_local_iterator.h (_Safe_local_iterator<>::
2093         _Safe_local_iterator(const _Iterator&, size_type, const _Sequence*)):
2094         Fix typo.
2095
2096 2011-07-19  François Dumont  <francois.cppdevs@free.fr>
2097
2098         * include/debug/safe_unordered_base.h, safe_unordered_sequence.h,
2099         safe_unordered_sequence.tcc, safe_local_iterator.h,
2100         safe_local_iterator.tcc: New, support for unordered sequence safe
2101         local iterators.
2102         * include/Makefile.am: Add previous files.
2103         * include/Makefile.in: Regenerate.
2104         * include/debug/unordered_map, unordered_set: Implement
2105         _Safe_unordered_sequence and expose _Safe_local_iterator.
2106         * include/debug/safe_iterator.h, safe_iterator.tcc: Refactor
2107         _Safe_iterator::_M_get_distance static method to expose it as
2108         __get_distance function and use it in _Safe_local_iterator type.
2109         * include/debug/formatter.h: Add __msg_local_iter_compare_bad
2110         _Debug_msg_id enum entry to notify invalid comparison between local
2111         iterators from different buckets. Add _Parameter constructor from
2112         _Safe_local_iterator.
2113         * include/debug/functions.h: Add __valid_range overload for
2114         _Safe_local_iterator.
2115         * src/debug.cc: Add _Safe_unordered_sequence_base and
2116         _Safe_local_iterator_base methods implementations.
2117         * config/abi/pre/gnu.ver: Add export of some
2118         _Safe_unordered_sequence_base and _Safe_local_iterator_base methods.
2119         * testsuite/util/debug/checks.h: Add use_invalid_iterator function to
2120         simulate use of a singular iterator.
2121         * testsuite/util/debug/unordered_checks.h: New, several functions
2122         to simulate classic invalid usage of unordered sequence local
2123         iterators.
2124         * testsuite/23_containers/unordered_map/debug/
2125         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
2126         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
2127         invalid_local_iterator_compare_neg.cc: New.
2128         * testsuite/23_containers/unordered_multimap/debug/
2129         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
2130         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
2131         invalid_local_iterator_compare_neg.cc: New.
2132         * testsuite/23_containers/unordered_set/debug/
2133         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
2134         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
2135         invalid_local_iterator_compare_neg.cc: New.
2136         * testsuite/23_containers/unordered_multiset/debug/
2137         use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
2138         use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
2139         invalid_local_iterator_compare_neg.cc: New.
2140
2141 2011-07-18  Paolo Carlini  <paolo.carlini@oracle.com>
2142
2143         PR libstdc++/48430
2144         * include/bits/shared_ptr.h (struct hash<shared_ptr<>>): Use
2145         __hash_base.
2146         * include/bits/unique_ptr.h (struct hash<unique_ptr<>>): Likewise.
2147
2148 2011-07-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2149
2150         * crossconfig.m4 (*-netware): Remove.
2151         * configure: Regenerate.
2152
2153 2011-07-15  Yufeng Zhang  <yufeng.zhang@arm.com>
2154
2155         * config/locale/newlib/ctype_members.cc: New file.
2156         * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Add a new C locale
2157         kind: newlib.  Configure to use the newlib specific
2158         ctype_members.cc when with_newlib is enabled.
2159         * configure: Regenerate.
2160
2161 2011-07-15  Paolo Carlini  <paolo.carlini@oracle.com>
2162             Jakub Jelinek  <jakub@redhat.com>
2163
2164         PR libstdc++/49745
2165         * acinclude.m4 ([GLIBCXX_CHECK_GTHREADS]): Check separately for
2166         _POSIX_TIMEOUTS and define _GTHREADS_USE_MUTEX_TIMEDLOCK.
2167         * libsupc++/guard.cc: Include <unistd.h>.
2168         * testsuite/17_intro/headers/c++1998/49745.cc: New.
2169         * configure: Regenerate.
2170         * config.h.in: Likewise.
2171
2172 2011-07-11  Paolo Carlini  <paolo.carlini@oracle.com>
2173
2174         PR libstdc++/49559
2175         * include/bits/stl_algo.h (__move_merge_backward): Remove.
2176         (__move_merge_adaptive, __move_merge_adaptive_backward): New.
2177         (__merge_adaptive): Use the latter two.
2178         (__rotate_adaptive): Avoid self move-assignment.
2179         * include/bits/stl_algobase.h (move_backward): Fix comment.
2180         * testsuite/25_algorithms/stable_sort/49559.cc: New.
2181         * testsuite/25_algorithms/inplace_merge/49559.cc: Likewise.
2182         * testsuite/25_algorithms/inplace_merge/moveable.cc: Extend.
2183         * testsuite/25_algorithms/inplace_merge/moveable2.cc: Likewise.
2184         * testsuite/util/testsuite_rvalref.h (rvalstruct::operator=
2185         (rvalstruct&&)): Check for self move-assignment.
2186
2187 2011-07-11  Paolo Carlini  <paolo.carlini@oracle.com>
2188
2189         * testsuite/util/testsuite_allocator.h (propagating_allocator<>::
2190         operator=(const propagating_allocator<>&)): Retun *this.
2191
2192 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2193
2194         * include/Makefile.am: Add new header.
2195         * include/Makefile.in: Regenerate.
2196         * include/std/scoped_allocator: New.
2197         * doc/xml/manual/status_cxx200x.xml: Update.
2198         * testsuite/20_util/scoped_allocator/1.cc: New.
2199         * testsuite/20_util/scoped_allocator/propagation.cc: New.
2200         * testsuite/20_util/scoped_allocator/requirements/typedefs.cc: New.
2201         * testsuite/20_util/scoped_allocator/requirements/
2202         explicit_instantiation.cc: New.
2203
2204 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2205
2206         * include/bits/stl_vector.h: Use new allocator model in C++0x mode.
2207         * include/bits/vector.tcc: Likewise.
2208         * testsuite/util/testsuite_allocator.h (propagating_allocator): Define.
2209         * testsuite/23_containers/vector/allocator/copy_assign.cc: New.
2210         * testsuite/23_containers/vector/allocator/noexcept.cc: New.
2211         * testsuite/23_containers/vector/allocator/copy.cc: New.
2212         * testsuite/23_containers/vector/allocator/swap.cc: New.
2213         * testsuite/23_containers/vector/allocator/move_assign.cc: New.
2214         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2215         Adjust dg-error line numbers.
2216         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2217         Likewise.
2218         * testsuite/23_containers/vector/requirements/dr438/
2219         constructor_1_neg.cc: Likewise.
2220         * testsuite/23_containers/vector/requirements/dr438/
2221         constructor_2_neg.cc: Likewise.
2222
2223 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2224
2225         * include/ext/alloc_traits.h (__allocator_always_compares_equal): New
2226         trait, provide partial specializations for known allocators.
2227         (__alloc_traits::construct, __alloc_traits::destroy): Overload for
2228         non-standard pointer types.
2229         (__alloc_traits::_S_always_equal): New trait for use with noexcept.
2230         (__alloc_traits::_S_nothrow_move): Likewise.
2231         (__alloc_traits::_S_nothrow_swap): Likewise.
2232
2233 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2234
2235         * include/ext/cast.h: Fix typo in include guard.
2236         * include/ext/pointer.h (_Unqualified_type): Remove redundant
2237         partial specializations for volatile types. Fix typos in comments.
2238         (pointer_traits<_Pointer_adaptor<Tp>>::pointer_to): Define.
2239
2240 2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2241
2242         PR libstdc++/49668
2243         * include/std/functional (__bind_simple): Define.
2244         * include/std/future (_Task_setter): Parameterize by type of result
2245         pointer instead of state object.
2246         (_S_task_setter): Type deduction helper.
2247         (_Task_state): Use _S_task_setter and __bind_simple.
2248         (_Deferred_state, _Async_state): Store call wrapper directly not as
2249         std::function. Use _S_task_setter and __bind_simple.
2250         (_S_make_deferred_state, _S_make_async_state): Type deduction helpers.
2251         (async): Use new functions and __bind_simple.
2252         * include/std/mutex (call_once): Use __bind_simple.
2253         * include/std/thread (thread): Likewise. Remove unused headers.
2254         * src/thread.cc: Add header.
2255         * testsuite/30_threads/async/49668.cc: New.
2256         * testsuite/30_threads/call_once/49668.cc: New.
2257         * testsuite/30_threads/thread/cons/49668.cc: New.
2258         * testsuite/30_threads/thread/cons/moveable.cc: Remove unused bool.
2259
2260 2011-07-08  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2261
2262         * configure.host (abi_baseline_subdir_switch): Describe.
2263         Provide default.
2264         (*-*-solaris2.[89], *-*-solaris2.1[0-9]): Override.
2265         * acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Substitute
2266         baseline_subdir_switch.
2267         * testsuite/Makefile.am (site.exp): Emit it.
2268         (baseline_subdir): Use it.
2269         * testsuite/libstdc++-abi/abi.exp: Use it.
2270         * configure: Regenerate.
2271         * Makefile.in: Regenerate.
2272         * doc/Makefile.in: Regenerate.
2273         * include/Makefile.in: Regenerate.
2274         * libsupc++/Makefile.in: Regenerate.
2275         * po/Makefile.in: Regenerate.
2276         * python/Makefile.in: Regenerate.
2277         * src/Makefile.in: Regenerate.
2278         * testsuite/Makefile.in: Regenerate.
2279
2280 2011-06-29  François Dumont  <francois.cppdevs@free.fr>
2281
2282         * include/debug/set.h, unordered_map, multiset.h, forward_list,
2283         unordered_set, vector, deque, string, list, multimap.h: Remove
2284         base class default constructor calls.
2285         * include/debug/map.h: Likewise and cleanup several redefinition of
2286         base iterator typedef.
2287
2288 2011-06-29  Nathan Sidwell  <nathan@codesourcery.com>
2289
2290         * libsupc++/eh_arm.c (__cxa_type_match): Construct address of
2291         thrown object here.  Return succeded_with_ptr_to_base for all
2292         pointer cases.
2293
2294 2011-06-23  Jonathan Wakely  <jwakely.gcc@gmail.com>
2295
2296         * testsuite/tr1/6_containers/tuple/creation_functions/tie2.cc: Fix for
2297         C++0x mode.
2298         * testsuite/25_algorithms/sort/35588.cc: Likewise.
2299         * testsuite/26_numerics/headers/complex/synopsis.cc: Likewise.
2300
2301 2011-06-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
2302
2303         * testsuite/20_util/bind/socket.cc: Use variable and remove attribute.
2304
2305 2011-06-22  Paolo Carlini  <paolo.carlini@oracle.com>
2306
2307         * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: Avoid -Wall
2308         warning.
2309
2310 2011-06-22  Paolo Carlini  <paolo.carlini@oracle.com>
2311
2312         * testsuite/20_util/reference_wrapper/invoke.cc: Avoid -Wall warnings.
2313         * testsuite/20_util/reference_wrapper/typedefs-3.cc: Likewise.
2314         * testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise.
2315         * testsuite/20_util/allocator_traits/members/allocate_hint.cc:
2316         Likewise.
2317         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
2318         * testsuite/20_util/bind/socket.cc: Likewise.
2319         * testsuite/20_util/pointer_traits/pointer_to.cc: Likewise.
2320         * testsuite/util/testsuite_random.h: Likewise.
2321
2322 2011-06-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
2323
2324         * include/Makefile.am: Add alloc_traits.h headers.
2325         * include/Makefile.in: Regenerate.
2326         * include/std/memory: Include uses_allocator.h explicitly.
2327         * include/bits/allocator.h (allocator_traits): Move to ...
2328         * include/bits/alloc_traits.h: New header.
2329         * include/ext/alloc_traits.h (__alloc_traits): Extension to provide
2330         a common allocator interface for C++98 and C++0x.
2331         * include/bits/stl_construct.h: Use __alloc_traits.
2332         * include/bits/stl_uninitialized.h: Likewise.
2333
2334 2011-06-22  Daniel Krugler  <daniel.kruegler@googlemail.com>
2335             Paolo Carlini  <paolo.carlini@oracle.com>
2336
2337         * include/bits/move.h (__is_nothrow_swappable): Add.
2338         (swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Use noexcept.
2339         * include/bits/algorithmfwd.h: Adjust.
2340         * testsuite/25_algorithms/swap/noexcept.cc: New.
2341
2342 2011-06-21  Jakub Jelinek  <jakub@redhat.com>
2343
2344         * testsuite/Makefile.am (check_DEJAGNU_normal_targets): Add
2345         check-DEJAGNUnormal[4-9].
2346         (check-DEJAGNU): Split into 10 jobs for parallel testing instead of 4.
2347         * testsuite/Makefile.in: Regenerated.
2348
2349 2011-06-20  Daniel Krugler  <daniel.kruegler@googlemail.com>
2350             Paolo Carlini  <paolo.carlini@oracle.com>
2351
2352         * include/std/tuple (__conv_types, __one_by_one_convertible,
2353         __all_convertible): Add.
2354         (tuple): Use the latter.
2355         (tuple<_T1>): Remove.
2356         * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error
2357         line number.
2358         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
2359
2360 2011-06-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
2361
2362         * include/bits/ptr_traits.h (pointer_traits<T*>::pointer_to): Use
2363         noexcept.
2364
2365 2011-06-14  Paolo Carlini  <paolo.carlini@oracle.com>
2366
2367         * include/std/valarray (~valarray): Use noexcept.
2368         * include/bits/unique_ptr.h (~unique_ptr): Likewise.
2369         * testsuite/26_numerics/valarray/noexcept_move_construct.cc: New.
2370         * testsuite/20_util/shared_ptr/cons/noexcept_move_construct.cc:
2371         Likewise.
2372         * testsuite/20_util/unique_ptr/cons/noexcept_move_construct.cc:
2373         Likewise.
2374         * testsuite/20_util/weak_ptr/cons/noexcept_move_construct.cc:
2375         Likewise.
2376
2377 2011-06-14  Paolo Carlini  <paolo.carlini@oracle.com>
2378
2379         * include/std/functional: Use noexcept.
2380         * include/bits/stl_tempbuf.h: Likewise.
2381
2382 2011-06-12  François Dumont  <francois.cppdevs@free.fr>
2383             Paolo Carlini  <paolo.carlini@oracle.com>
2384
2385         * include/bits/allocator.h (__shrink_to_fit): Rename to
2386         __shrink_to_fit_aux, fix.
2387         * include/bits/stl_vector.h (_M_shrink_to_fit): Declare.
2388         (shrink_to_fit): Use the latter.
2389         * include/debug/vector (shrink_to_fit): Likewise.
2390         * include/bits/vector.tcc (_M_shrink_to_fit): Define.
2391         * include/bits/stl_deque.h (_M_shrink_to_fit): Declare.
2392         (shrink_to_fit): Use the latter.
2393         * include/debug/deque (shrink_to_fit): Likewise.
2394         * include/bits/deque.tcc (_M_shrink_to_fit): Define.
2395         * include/bits/vector.tcc (vector<bool>::_M_reallocate): Add.
2396         * include/bits/stl_bvector.h (_M_shrink_to_fit): Declare.
2397         (shrink_to_fit): Use the latter.
2398         (reserve): Use _M_reallocate, move inline.
2399         (_Bvector_base<>::_S_nword): Add, use it throughout.
2400         * include/debug/string (shrink_to_fit): Redo.
2401         * include/ext/vstring.h (shrink_to_fit): Optimize.
2402         * include/bits/basic_string.h (shrink_to_fit): Likewise.
2403         * testsuite/21_strings/debug/shrink_to_fit.cc: New.
2404         * testsuite/23_containers/vector/debug/shrink_to_fit.cc: Likewise.
2405         * testsuite/23_containers/vector/debug/bool/shrink_to_fit.cc:
2406         Likewise.
2407         * testsuite/23_containers/vector/bool/capacity/shrink_to_fit.cc:
2408         Likewise.
2409         * testsuite/23_containers/deque/debug/shrink_to_fit.cc: Likewise.
2410
2411 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2412
2413         * include/ext/extptr_allocator.h (construct, destroy): Fix for C++0x
2414         mode by overloading to take allocator's pointer type.
2415         * testsuite/23_containers/vector/ext_pointer/types/2.cc: New.
2416         * testsuite/23_containers/vector/ext_pointer/explicit_instantiation/
2417         2.cc: New.
2418
2419 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2420
2421         * testsuite/20_util/allocator_traits/requirements/
2422         explicit_instantiation.cc: Add another instantiation.
2423
2424 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2425
2426         * testsuite/20_util/allocator_traits/requirements/typedefs.cc: Check
2427         for allocator_type and value_type.
2428
2429 2011-06-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
2430
2431         * testsuite/30_threads/packaged_task/uses_allocator.cc: New.
2432         * testsuite/30_threads/promise/uses_allocator.cc: Likewise.
2433
2434 2011-06-10  Paolo Carlini  <paolo.carlini@oracle.com>
2435
2436         * include/ext/throw_allocator.h: Use noexcept.
2437         * include/ext/pool_allocator.h: Likewise.
2438         * include/ext/bitmap_allocator.h: Likewise.
2439         * include/ext/new_allocator.h: Likewise.
2440         * include/ext/malloc_allocator.h: Likewise.
2441         * include/ext/array_allocator.h: Likewise.
2442         * include/ext/mt_allocator.h: Likewise.
2443         * include/ext/extptr_allocator.h: Likewise.
2444         * testsuite/util/testsuite_allocator.h: Likewise; do not include
2445         <cassert> directly, include <testsuite_hooks.h> instead.
2446
2447 2011-06-10  Benjamin Kosnik  <bkoz@redhat.com>
2448
2449         * include/ext/pb_ds/*: Doxygen markup redo.
2450         * include/Makefile.am: Fold in constructors_destructor_fn_imps.hpp.
2451         * include/Makefile.in: Regenerate.
2452
2453 2011-06-10  Jason Merrill  <jason@redhat.com>
2454
2455         * testsuite/20_util/bind/ref_neg.cc: Remove wrong test lines.
2456
2457         * testsuite/20_util/bind/ref_neg.cc: Remove dg-excess-errors,
2458         fix dg-error markup.
2459
2460 2011-06-09  Jason Merrill  <jason@redhat.com>
2461
2462         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust.
2463
2464         * testsuite/lib/prune.exp (libstdc++-dg-prune): Prune notes.
2465         * testsuite/20_util/duration/cons/1_neg.cc: Remove dg-excess-errors.
2466         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
2467         * testsuite/20_util/forward/1_neg.cc: Likewise.
2468         * testsuite/20_util/function/cmp/cmp_neg.cc: Likewise.
2469         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
2470         * testsuite/20_util/reference_wrapper/ref_neg.cc: Likewise.
2471         * testsuite/20_util/tuple/comparison_operators/35480_neg.cc: Likewise.
2472         * testsuite/tr1/6_containers/tuple/comparison_operators/35480_neg.cc:
2473         Likewise.
2474         * testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Likewise.
2475         * testsuite/20_util/shared_ptr/cons/unique_ptr_neg.cc: Likewise.
2476         * testsuite/20_util/shared_ptr/assign/unique_ptr_lvalue_neg.cc:
2477         Likewise.
2478         * testsuite/20_util/unique_ptr/cons/auto_ptr_neg.cc: Likewise.
2479         * testsuite/20_util/unique_ptr/cons/ptr_deleter_neg.cc: Likewise.
2480         * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_neg.cc:
2481         Likewise.
2482         * testsuite/tr1/2_general_utilities/shared_ptr/assign/
2483         auto_ptr_rvalue_neg.cc: Likewise.
2484         * testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr_neg.cc:
2485         Likewise.
2486         * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise.
2487         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
2488         Likewise.
2489         * testsuite/23_containers/deque/requirements/dr438/
2490         constructor_1_neg.cc: Likewise.
2491         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
2492         Likewise.
2493         * testsuite/23_containers/forward_list/requirements/dr438/
2494         assign_neg.cc: Likewise.
2495         * testsuite/23_containers/forward_list/requirements/dr438/
2496         constructor_1_neg.cc: Likewise.
2497         * testsuite/23_containers/forward_list/requirements/dr438/
2498         constructor_2_neg.cc: Likewise.
2499         * testsuite/23_containers/forward_list/requirements/dr438/
2500         insert_neg.cc: Likewise.
2501         * testsuite/23_containers/list/requirements/dr438/
2502         assign_neg.cc: Likewise.
2503         * testsuite/23_containers/list/requirements/dr438/
2504         constructor_1_neg.cc: Likewise.
2505         * testsuite/23_containers/list/requirements/dr438/
2506         constructor_2_neg.cc: Likewise.
2507         * testsuite/23_containers/list/requirements/dr438/
2508         insert_neg.cc: Likewise.
2509         * testsuite/23_containers/vector/requirements/dr438/
2510         assign_neg.cc: Likewise.
2511         * testsuite/23_containers/vector/requirements/dr438/
2512         constructor_1_neg.cc: Likewise.
2513         * testsuite/23_containers/vector/requirements/dr438/
2514         constructor_2_neg.cc: Likewise.
2515         * testsuite/23_containers/vector/requirements/dr438/
2516         insert_neg.cc: Likewise.
2517         * testsuite/23_containers/map/operators/1_neg.cc: Likewise.
2518         * testsuite/29_atomics/atomic_integral/operators/
2519         bitwise_neg.cc: Likewise.
2520         * testsuite/decimal/mixed-mode-arith_neg.cc: Likewise.
2521         * testsuite/decimal/mixed-mode-cmp_neg.cc: Likewise.
2522         * testsuite/decimal/operator_neg.cc: Likewise.
2523
2524 2011-06-09  Simon Baldwin  <simonb@google.com>
2525
2526         * scripts/extract_symvers.in: Handle processor/OS specific or
2527         unknown symbol binding strings from readelf.
2528
2529 2011-06-09  Paolo Carlini  <paolo.carlini@oracle.com>
2530
2531         * include/std/type_traits (__is_copy_assignable_impl,
2532         __is_nt_copy_assignable_impl): Fix typo.
2533
2534 2011-06-08  Paolo Carlini  <paolo.carlini@oracle.com>
2535
2536         * include/ext/extptr_allocator.h: Include <ext/numeric_traits.h>
2537         instead of <limits>.
2538         * include/bits/allocator.h: Likewise.
2539
2540         * include/std/chrono (duration_values<>::min): Call lowest, not min.
2541
2542 2011-06-08  Paolo Carlini  <paolo.carlini@oracle.com>
2543
2544         * include/bits/allocator.h (__shrink_to_fit): Simplify.
2545         * include/bits/stl_vector.h (vector<>::shrink_to_fit): Adjust.
2546         * include/bits/stl_deque.h: Likewise.
2547         * include/bits/stl_bvector.h: Likewise.
2548
2549 2011-06-07  Jason Merrill  <jason@redhat.com>
2550
2551         * testsuite/lib/prune.exp: s/required/instantiated/.
2552         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
2553         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Likewise.
2554         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
2555         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
2556         * testsuite/20_util/forward/1_neg.cc: Likewise.
2557         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
2558         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2559         Likewise.
2560         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
2561         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
2562         * testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc: Likewise.
2563         * testsuite/ext/ext_pointer/1_neg.cc: Likewise.
2564         * testsuite/ext/pb_ds/example/hash_resize_neg.cc: Likewise.
2565         * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Likewise.
2566         * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
2567         * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
2568         * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise.
2569         * testsuite/tr1/2_general_utilities/shared_ptr/assign/
2570         shared_ptr_neg.cc: Likewise.
2571
2572 2011-06-07  Paolo Carlini  <paolo.carlini@oracle.com>
2573
2574         * include/bits/move.h (struct __move_if_noexcept_cond): Add.
2575         (move_if_noexcept): Use the latter.
2576         * include/bits/stl_iterator.h (__make_move_if_noexcept_iterator,
2577         _GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR): Add.
2578         * include/bits/stl_uninitialized.h
2579         (__uninitialized_move_if_noexcept_a): Add.
2580         * include/bits/vector.tcc (vector<>::reserve): Use
2581         _GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR.
2582         (vector<>::_M_insert_aux, _M_fill_insert, _M_default_append,
2583         _M_range_insert): Use __uninitialized_move_if_noexcept_a.
2584         * testsuite/util/testsuite_rvalref.h (throwing_move_constructor):
2585         Add.
2586         (copycounter::copycounter(copycounter&&)): Use noexcept.
2587         * testsuite/23_containers/vector/modifiers/moveable2.cc: New.
2588         * testsuite/23_containers/vector/capacity/resize/moveable2.cc:
2589         Likewise.
2590         * testsuite/23_containers/vector/capacity/reserve/moveable2.cc:
2591         Likewise.
2592
2593 2011-06-07  Paolo Carlini  <paolo.carlini@oracle.com>
2594
2595         PR libstdc++/49293
2596         * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc: Tweak
2597         for glibc 2.14.
2598         * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.
2599
2600 2011-06-06  Paolo Carlini  <paolo.carlini@oracle.com>
2601
2602         * include/bits/move.h (move_if_noexcept): Use __and_ and __not_.
2603
2604 2011-06-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
2605
2606         * include/bits/ptr_traits.h (pointer_traits): Fix typos.
2607         * include/ext/pointer.h (pointer_traits): Add partial specialization
2608         for _Pointer_adapter.
2609
2610 2011-06-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
2611
2612         * testsuite/util/testsuite_allocator.h (tracker_allocator::construct):
2613         Update to C++0x definition using type to construct as template
2614         parameter.
2615         (tracker_allocator::destroy): Likewise for type to destroy.
2616         (uneq_allocator::construct, uneq_allocator::destroy): Likewise.
2617
2618 2011-06-01  Paolo Carlini  <paolo.carlini@oracle.com>
2619
2620         * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
2621         Use std::move on the allocator, use noexcept.
2622         (_Hashtable<>::~_Hashtable): Use noexcept.
2623         * include/bits/stl_list.h: Likewise.
2624         * include/bits/forward_list.h: Likewise.
2625         * include/bits/stl_vector.h: Likewise.
2626         * include/bits/stl_bvector.h: Likewise.
2627         * include/bits/stl_map.h (map<>::map(map&&)): Use noexcept.
2628         * include/bits/stl_set.h: Likewise.
2629         * include/bits/stl_multimap.h: Likewise.
2630         * include/bits/stl_multiset.h: Likewise.
2631         * include/bits/stl_tree.h (_Rb_tree<>::_Rb_tree(_Rb_tree&&)): Use
2632         std::move on the allocator.
2633         (_Rb_tree<>::~_Rb_tree): Use noexcept.
2634         * include/bits/stl_deque.h: Likewise.
2635         * include/bits/basic_string.h (basic_string<>::~basic_string): Use
2636         noexcept.
2637         * include/ext/vstring.h (__versa_string<>::~__versa_string): Likewise.
2638         * include/debug/set.h: Adjust.
2639         * include/debug/unordered_map: Likewise.
2640         * include/debug/multiset.h: Likewise.
2641         * include/debug/forward_list: Likewise.
2642         * include/debug/vector: Likewise.
2643         * include/debug/unordered_set: Likewise.
2644         * include/debug/deque: Likewise.
2645         * include/debug/map.h: Likewise.
2646         * include/debug/string: Likewise.
2647         * include/debug/list: Likewise.
2648         * include/debug/multimap.h: Likewise.
2649         * include/profile/set.h: Likewise.
2650         * include/profile/unordered_map: Likewise.
2651         * include/profile/multiset.h: Likewise.
2652         * include/profile/forward_list: Likewise.
2653         * include/profile/unordered_set: Likewise.
2654         * include/profile/vector: Likewise.
2655         * include/profile/deque: Likewise.
2656         * include/profile/map.h: Likewise.
2657         * include/profile/list: Likewise.
2658         * include/profile/multimap.h: Likewise.
2659         * testsuite/21_strings/basic_string/cons/wchar_t/
2660         noexcept_move_construct.cc: New.
2661         * testsuite/21_strings/basic_string/cons/char/
2662         noexcept_move_construct.cc: Likewise.
2663         * testsuite/ext/vstring/cons/noexcept_move_construct.cc: Likewise.
2664         * testsuite/23_containers/unordered_map/cons/
2665         noexcept_move_construct.cc: Likewise.
2666         * testsuite/23_containers/multimap/cons/
2667         noexcept_move_construct.cc: Likewise.
2668         * testsuite/23_containers/set/cons/
2669         noexcept_move_construct.cc: Likewise.
2670         * testsuite/23_containers/unordered_multimap/cons/
2671         noexcept_move_construct.cc: Likewise.
2672         * testsuite/23_containers/forward_list/cons/
2673         noexcept_move_construct.cc: Likewise.
2674         * testsuite/23_containers/unordered_set/cons/
2675         noexcept_move_construct.cc: Likewise.
2676         * testsuite/23_containers/vector/bool/cons/
2677         noexcept_move_construct.cc: Likewise.
2678         * testsuite/23_containers/vector/cons/
2679         noexcept_move_construct.cc: Likewise.
2680         * testsuite/23_containers/multiset/cons/
2681         noexcept_move_construct.cc: Likewise.
2682         * testsuite/23_containers/list/cons/
2683         noexcept_move_construct.cc: Likewise.
2684         * testsuite/23_containers/unordered_multiset/cons/
2685         noexcept_move_construct.cc: Likewise.
2686         * testsuite/23_containers/map/cons/noexcept_move_construct.cc
2687         * testsuite/23_containers/forward_list/requirements/dr438/
2688         assign_neg.cc: Adjust dg-error line numbers.
2689         * testsuite/23_containers/forward_list/requirements/dr438/
2690         insert_neg.cc: Likewise.
2691         * testsuite/23_containers/forward_list/requirements/dr438/
2692         constructor_1_neg.cc: Likewise.
2693         * testsuite/23_containers/forward_list/requirements/dr438/
2694         constructor_2_neg.cc: Likewise.
2695         * testsuite/23_containers/vector/requirements/dr438/
2696         assign_neg.cc: Likewise.
2697         * testsuite/23_containers/vector/requirements/dr438/
2698         insert_neg.cc: Likewise.
2699         * testsuite/23_containers/vector/requirements/dr438/
2700         constructor_1_neg.cc: Likewise.
2701         * testsuite/23_containers/vector/requirements/dr438/
2702         constructor_2_neg.cc: Likewise.
2703         * testsuite/23_containers/deque/requirements/dr438/
2704         assign_neg.cc: Likewise.
2705         * testsuite/23_containers/deque/requirements/dr438/
2706         insert_neg.cc: Likewise.
2707         * testsuite/23_containers/deque/requirements/dr438/
2708         constructor_1_neg.cc: Likewise.
2709         * testsuite/23_containers/deque/requirements/dr438/
2710         constructor_2_neg.cc: Likewise.
2711         * testsuite/23_containers/list/requirements/dr438/
2712         assign_neg.cc: Likewise.
2713         * testsuite/23_containers/list/requirements/dr438/
2714         insert_neg.cc: Likewise.
2715         * testsuite/23_containers/list/requirements/dr438/
2716         constructor_1_neg.cc: Likewise.
2717         * testsuite/23_containers/list/requirements/dr438/
2718         constructor_2_neg.cc: Likewise.
2719
2720         * include/bits/move.h (swap): Use __and_ in the noexcept.
2721         * include/bits/algorithmfwd.h: Adjust.
2722
2723 2011-05-31  Paolo Carlini  <paolo.carlini@oracle.com>
2724
2725         * include/bits/basic_string.h: Use noexcept per the FDIS (minus
2726         compare(const string&), which uses char_traits::compare, which
2727         isn't noexcept; also no noexcept in the move assignment operator
2728         and move assign, see c++std-lib-30855).
2729         * include/bits/basic_string.tcc: Likewise.
2730         * include/ext/vstring.h: Likewise.
2731         * include/ext/vstring.tcc: Likewise.
2732         * include/debug/string: Likewise.
2733
2734 2011-05-31  Jonathan Wakely  <jwakely.gcc@gmail.com>
2735
2736         * doc/xml/manual/status_cxx200x.xml: Update.
2737         * doc/html/*: Regenerate.
2738
2739 2011-05-30  Paolo Carlini  <paolo.carlini@oracle.com>
2740
2741         * include/std/type_traits (__or_, __and_): Add trivial definitions
2742         for a single element.
2743         * include/bits/stl_pair.h: Use __and_ in noexcept specs and
2744         constraints.
2745         (pair<>::pair(pair&&)): Define.
2746         (pair<>::pair(const pair<>&)): Constrain with is_convertible.
2747         (pair<>::pair(pair<>&&)): Likewise, remove noexcept.
2748         * include/std/tuple: Use __and_ in noexcept specs and constraints.
2749         (_Tuple_impl<>::_Tuple_impl(allocator_arg_t, const _Alloc&,
2750         _Tuple_impl&&)): Remove noexcept.
2751         (tuple<>::tuple(_UElements&&...), tuple(const tuple<_UElements...>&),
2752         tuple(tuple<_UElements...>&&), tuple(const pair<_U1, _U2>&),
2753         tuple(pair<_U1, _U2>&&)): Constrain with is_convertible.
2754         * testsuite/20_util/tuple/moveable2.cc: Use = delete.
2755         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
2756         Adjust dg-error line numbers.
2757         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2758         Likewise.
2759         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
2760         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
2761         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
2762
2763 2011-05-31  Jonathan Wakely  <jwakely.gcc@gmail.com>
2764
2765         * include/std/tuple: Restore is_convertible constraint.
2766         * testsuite/20_util/tuple/cons/allocate_noncopyable.cc: Remove.
2767
2768 2011-05-30  Paolo Carlini  <paolo.carlini@oracle.com>
2769
2770         PR libstdc++/49236
2771         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
2772         line number.
2773
2774 2011-05-30  Jonathan Wakely  <jwakely.gcc@gmail.com>
2775
2776         * include/std/tuple: Implement uses-allocator construction.
2777         * include/bits/allocator.h (uses_allocator): Move to ...
2778         * include/bits/uses_allocator.h: New file.
2779         * include/Makefile.am: Add new header.
2780         * include/Makefile.in: Regenerate.
2781         * testsuite/20_util/uses_allocator/cons_neg.cc: New.
2782         * testsuite/20_util/uses_allocator/construction.cc: New.
2783         * testsuite/20_util/tuple/cons/allocate_noncopyable.cc: New.
2784         * testsuite/20_util/tuple/cons/allocators.cc: New.
2785
2786 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2787
2788         * testsuite/20_util/pointer_traits/pointer_to.cc: Fix.
2789
2790 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2791
2792         * acinclude.m4: Define GLIBCXX_CHECK_GET_NPROCS and
2793         GLIBCXX_CHECK_SC_NPROCESSORS_ONLN.
2794         * configure.ac: Use them. Increase minor version.
2795         * configure: Regenerate.
2796         * config.h.in: Regenerate.
2797         * include/std/thread (thread::hardware_concurrency): Remove inline
2798         definition.
2799         * src/thread.cc (thread::hardware_concurrency): Define.
2800         * config/abi/pre/gnu.ver: Export new symbol @3.4.17
2801         * testsuite/util/testsuite_abi.cc: Add new version.
2802         * testsuite/lib/libstdc++.exp (check_v3_target_nprocs): Add.
2803         * testsuite/lib/dg-options.exp (dg-require-nprocs): Add.
2804         * testsuite/30_threads/thread/members/hardware_concurrency.cc: Use
2805         dg-require-nprocs and verify hardware_concurrency returns non-zero.
2806
2807 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2808
2809         * testsuite/20_util/pointer_traits/pointer_to.cc: New.
2810
2811 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2812
2813         * include/Makefile.am: Add new ptr_traits.h header.
2814         * include/Makefile.in: Regenerate.
2815         * include/bits/ptr_traits.h (pointer_traits): New.
2816         * include/bits/allocator.h (allocator_traits): Add.
2817         * include/ext/array_allocator.h (construct, destroy): Update C++0x
2818         versions.
2819         * include/ext/bitmap_allocator.h (construct, destroy): Likewise.
2820         * include/ext/extptr_allocator.h (construct, destroy): Likewise.
2821         * include/ext/malloc_allocator.h (construct, destroy): Likewise.
2822         * include/ext/mt_allocator.h (construct, destroy): Likewise.
2823         * include/ext/new_allocator.h (construct, destroy): Likewise.
2824         * include/ext/pool_allocator.h (construct, destroy): Likewise.
2825         * include/ext/throw_allocator.h (construct, destroy): Likewise.
2826         * testsuite/20_util/allocator_traits/requirements/typedefs.cc: New.
2827         * testsuite/20_util/allocator_traits/requirements/
2828         explicit_instantiation.cc: New.
2829         * testsuite/20_util/allocator_traits/members/max_size.cc: New.
2830         * testsuite/20_util/allocator_traits/members/select.cc: New.
2831         * testsuite/20_util/allocator_traits/members/construct.cc: New.
2832         * testsuite/20_util/allocator_traits/members/allocate_hint.cc: New.
2833         * testsuite/20_util/allocator_traits/members/destroy.cc: New.
2834         * testsuite/20_util/pointer_traits/requirements/typedefs.cc: New.
2835         * testsuite/20_util/pointer_traits/requirements/
2836         explicit_instantiation.cc: New.
2837
2838 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2839
2840         * include/std/future (launch): Update enumerators and define
2841         operators required for bitmask type. Remove trailing whitespace.
2842         * src/future.cc: Remove trailing whitespace.
2843         * testsuite/30_threads/async/any.cc: Adjust.
2844         * testsuite/30_threads/async/sync.cc: Adjust.
2845         * testsuite/30_threads/async/launch.cc: New.
2846
2847 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2848
2849         * include/std/future: Use noexcept.
2850         * src/future.cc: Likewise.
2851
2852 2011-05-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
2853
2854         * include/std/thread (this_thread::sleep_until): Move after sleep_for.
2855
2856 2011-05-27  Paolo Carlini  <paolo.carlini@oracle.com>
2857
2858         PR libstdc++/49187
2859         * include/parallel/losertree.h: Add missing using declarations
2860         of _Base::_M_comp.
2861         * include/parallel/algobase.h: Include <parallel/algorithmfwd.h>.
2862         * include/parallel/multiway_merge.h: Include <parallel/
2863         multiseq_selection.h>, forward declare __merge_advance.
2864         * include/parallel/multiseq_selection.h: Don't include <parallel/
2865         sort.h> here.
2866         * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp: Fix
2867         qualification of upper_bound.
2868
2869         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc:
2870         Use dg-require-debug-mode.
2871         * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc:
2872         Likewise.
2873         * testsuite/ext/pb_ds/regression/priority_queue_rand_debug.cc:
2874         Likewise.
2875         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc:
2876         Likewise.
2877         * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc:
2878         Likewise.
2879         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc:
2880         Likewise.
2881         * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc:
2882         Likewise.
2883         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc:
2884         Likewise.
2885         * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc:
2886         Likewise.
2887
2888         * include/parallel/algo.h: Minor uglification fixes.
2889
2890 2011-05-26  Paolo Carlini  <paolo.carlini@oracle.com>
2891
2892         * src/list.cc: Use noexcept per the FDIS.
2893         * src/compatibility-list-2.cc: Likewise.
2894         * include/debug/set.h: Likewise.
2895         * include/debug/unordered_map: Likewise.
2896         * include/debug/multiset.h: Likewise.
2897         * include/debug/forward_list: Likewise.
2898         * include/debug/unordered_set: Likewise.
2899         * include/debug/vector: Likewise.
2900         * include/debug/map.h: Likewise.
2901         * include/debug/deque: Likewise.
2902         * include/debug/list: Likewise.
2903         * include/debug/multimap.h: Likewise.
2904         * include/profile/set.h: Likewise.
2905         * include/profile/unordered_map: Likewise.
2906         * include/profile/multiset.h: Likewise.
2907         * include/profile/forward_list: Likewise.
2908         * include/profile/vector: Likewise.
2909         * include/profile/unordered_set: Likewise.
2910         * include/profile/map.h: Likewise.
2911         * include/profile/deque: Likewise.
2912         * include/profile/list: Likewise.
2913         * include/profile/multimap.h: Likewise.
2914         * include/bits/hashtable.h: Likewise.
2915         * include/bits/stl_list.h: Likewise.
2916         * include/bits/stl_map.h: Likewise.
2917         * include/bits/hashtable_policy.h: Likewise.
2918         * include/bits/stl_set.h: Likewise.
2919         * include/bits/forward_list.h: Likewise.
2920         * include/bits/stl_multimap.h: Likewise.
2921         * include/bits/stl_vector.h: Likewise.
2922         * include/bits/stl_deque.h: Likewise.
2923         * include/bits/stl_multiset.h: Likewise.
2924         * include/bits/stl_bvector.h: Likewise.
2925         * include/bits/stl_tree.h: Likewise.
2926
2927 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
2928
2929         * include/bits/stl_queue.h: Use noexcept per the FDIS.
2930         * include/bits/stl_stack.h: Likewise.
2931
2932 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
2933
2934         * config/abi/pre/gnu.ver: Correct last change, export instead
2935         at the existing @3.4.16.
2936         * configure.ac: Revert last change.
2937         * testsuite/util/testsuite_abi.cc: Likewise.
2938         * configure: Regenerate.
2939
2940 2011-05-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
2941
2942         * doc/xml/manual/documentation_hacking.xml: Minor corrections.
2943
2944 2011-05-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
2945
2946         * include/std/mutex: Add doxygen comments.
2947
2948 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
2949
2950         * config/abi/pre/gnu.ver: Export recently added  basic_streambuf
2951         and basic_stringbuf symbols @3.4.17.
2952         * configure.ac: Update.
2953         * testsuite/util/testsuite_abi.cc: Likewise.
2954         * configure: Regenerate.
2955
2956 2011-05-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
2957
2958         * libsupc++/guard.cc: Fix comments.
2959
2960 2011-05-25  Ian Lance Taylor  <iant@google.com>
2961
2962         PR libstdc++/49060
2963         * include/backward/hashtable.h (hashtable::erase): Don't crash if
2964         erasing first and another element with a reference to the other
2965         element.
2966         * testsuite/backward/hash_set/49060.cc: New.
2967
2968 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
2969
2970         * include/bits/random.h (random_device::min, max): Specify constexpr.
2971
2972 2011-05-25  Paolo Carlini  <paolo.carlini@oracle.com>
2973
2974         * include/std/thread: Use noexcept throughout per the FDIS.
2975         * include/std/mutex: Likewise.
2976
2977 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
2978
2979         * testsuite/20_util/duration/arithmetic/dr2020.cc: Fix typo.
2980
2981 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
2982
2983         PR libstdc++/49151
2984         * include/std/chrono (operator+, operator-, operator*, operator/,
2985         operator&): Implement LWG 2020 [WP]; specify constexpr.
2986         * testsuite/20_util/duration/arithmetic/dr2020.cc: New.
2987
2988 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
2989
2990         PR libstdc++/49141
2991         * testsuite/26_numerics/complex/cons/48760.cc: Use dg-require-c-std.
2992         * testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise.
2993         * testsuite/26_numerics/headers/cmath/19322.cc: Likewise.
2994
2995 2011-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
2996
2997         * include/bits/c++config (_GLIBCXX_NOTHROW): Update for noexcept.
2998         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
2999         line number.
3000
3001 2011-05-23  Benjamin Kosnik  <bkoz@redhat.com>
3002
3003         PR libstdc++/37144
3004         PR libstdc++/28457
3005         Interface changes for ext/pb_ds.
3006         PB_DS_BASE_C_DEC to unique PB_DS_*_BASE macros.
3007         * include/ext/pb_ds/assoc_container.hpp (container_base): Remove.
3008         (basic_hash_table, basic_branch, list_update): Derive from
3009         container_base_dispatch.
3010         * include/ext/pb_ds/list_update_policy.hpp (null_lu_metadata): Remove.
3011         (move_to_front_lu_policy): To lu_move_to_front_policy.
3012         (counter_lu_policy): To lu_counter_policy.
3013         * include/ext/pb_ds/tree_policy.hpp (null_tree_node_update): Remove.
3014         * include/ext/pb_ds/tag_and_trait.hpp (container_base_dispatch): Adjust
3015         template parameters, declare here.
3016         (null_mapped_type) Remove.
3017         (null_type): Just use this for template tricks everywhere.
3018         * include/ext/pb_ds/hash_policy.hpp (null_hash_fn, null_probe_fn):
3019         Remove.
3020         * include/ext/pb_ds/trie_policy.hpp (null_trie_node_update): Remove.
3021         (string_trie_e_access_traits): To trie_string_access_traits.
3022         * include/ext/pb_ds/priority_queue.hpp: Use container_base_dispatch.
3023
3024         File changes.
3025         * include/Makefile.am (pb_headers): Removed and changed file names.
3026         * include/Makefile.in: Regenerated.
3027         * include/ext/pb_ds/detail/basic_types.hpp: Remove.
3028         * include/ext/pb_ds/detail/bin_search_tree_/
3029           cond_dtor_entry_dealtor.hpp: Remove.
3030         * include/ext/pb_ds/detail/bin_search_tree_/
3031           cond_key_dtor_entry_dealtor.hpp: Remove.
3032         * include/ext/pb_ds/detail/binary_heap_/const_point_iterator.hpp: Move..
3033         * include/ext/pb_ds/detail/binary_heap_/
3034           point_const_iterator.hpp: ..here.
3035         * include/ext/pb_ds/detail/basic_tree_policy: Move to...
3036         * include/ext/pb_ds/detail/branch_policy: This.
3037         * include/ext/pb_ds/detail/branch_policy/
3038           basic_tree_policy_base.hpp: Move...
3039         * include/ext/pb_ds/detail/branch_policy/branch_policy.hpp: ...here.
3040         * include/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp: Add.
3041         * include/ext/pb_ds/detail/branch_policy/traits.hpp: Add.
3042         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3043         null_metadata.hpp: Remove.
3044         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3045         const_point_iterator.hpp: Move...
3046         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3047         point_const_iterator.hpp: ...here.
3048         * include/ext/pb_ds/detail/list_update_policy/
3049         counter_lu_metadata.hpp: Move..
3050         * include/ext/pb_ds/detail/list_update_policy/
3051         lu_counter_metadata.hpp: ...here.
3052         * include/ext/pb_ds/detail/list_update_policy/
3053         counter_lu_policy_imp.hpp: Remove.
3054         * include/ext/pb_ds/detail/list_update_policy/
3055         mtf_lu_policy_imp.hpp: Remove.
3056         * include/ext/pb_ds/detail/trie_policy/
3057         string_trie_e_access_traits_imp.hpp: Move...
3058         * include/ext/pb_ds/detail/trie_policy/
3059         sample_trie_access_traits.hpp: ...here.
3060         * include/ext/pb_ds/detail/trie_policy/
3061         sample_trie_e_access_traits.hpp: Move...
3062         * include/ext/pb_ds/detail/trie_policy/
3063         trie_string_access_traits_imp.hpp: ...here.
3064         * include/ext/pb_ds/detail/trie_policy/null_node_update_imp.hpp: Remove.
3065         * include/ext/pb_ds/detail/tree_policy/null_node_update_imp.hpp: Remove.
3066         * include/ext/pb_ds/detail/ov_tree_map_/cond_dtor.hpp: Remove.
3067         * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: New, fold all
3068         types found in the following files into pat_trie_base.
3069         * include/ext/pb_ds/detail/pat_trie_/const_child_iterator.hpp: Folded.
3070         * include/ext/pb_ds/detail/pat_trie_/
3071           cond_dtor_entry_dealtor.hpp: Folded.
3072         * include/ext/pb_ds/detail/pat_trie_/child_iterator.hpp: Folded.
3073         * include/ext/pb_ds/detail/pat_trie_/split_join_branch_bag.hpp: Folded.
3074         * include/ext/pb_ds/detail/pat_trie_/head.hpp: Folded.
3075         * include/ext/pb_ds/detail/pat_trie_/leaf.hpp: Folded.
3076         * include/ext/pb_ds/detail/pat_trie_/node_base.hpp: Folded.
3077         * include/ext/pb_ds/detail/pat_trie_/node_metadata_base.hpp: Folded.
3078         * include/ext/pb_ds/detail/pat_trie_/internal_node.hpp: Folded.
3079         * include/ext/pb_ds/detail/pat_trie_/node_iterators.hpp: Folded.
3080         * include/ext/pb_ds/detail/pat_trie_/point_iterators.hpp: Folded.
3081         * include/ext/pb_ds/detail/pat_trie_/synth_e_access_traits.hpp: Move...
3082         * include/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp: ...here.
3083         * include/ext/pb_ds/detail/unordered_iterator/
3084         const_point_iterator.hpp: Move...
3085         * include/ext/pb_ds/detail/unordered_iterator/
3086         point_const_iterator.hpp: ...here.
3087
3088
3089         Adjust for above changes.
3090         * include/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp: Same.
3091         * include/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp: Same.
3092         * include/ext/pb_ds/detail/resize_policy/
3093           sample_resize_trigger.hpp: Same.
3094         * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp: Same.
3095         * include/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp: Same.
3096         * include/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp: Same.
3097         * include/ext/pb_ds/detail/binomial_heap_base_/
3098           binomial_heap_base_.hpp: Same.
3099         * include/ext/pb_ds/detail/binomial_heap_base_/
3100           constructors_destructor_fn_imps.hpp: Same.
3101         * include/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp: Same.
3102         * include/ext/pb_ds/detail/binomial_heap_base_/
3103           split_join_fn_imps.hpp: Same.
3104         * include/ext/pb_ds/detail/container_base_dispatch.hpp: Same. Adjust
3105           for template parameter ordering change.
3106         * include/ext/pb_ds/detail/cc_hash_table_map_/
3107           erase_store_hash_fn_imps.hpp: Same.
3108         * include/ext/pb_ds/detail/cc_hash_table_map_/
3109           constructor_destructor_no_store_hash_fn_imps.hpp: Same.
3110         * include/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp: Same.
3111         * include/ext/pb_ds/detail/cc_hash_table_map_/
3112           insert_no_store_hash_fn_imps.hpp: Same.
3113         * include/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp: Same.
3114         * include/ext/pb_ds/detail/cc_hash_table_map_/
3115           policy_access_fn_imps.hpp: Same.
3116         * include/ext/pb_ds/detail/cc_hash_table_map_/
3117           resize_store_hash_fn_imps.hpp: Same.
3118         * include/ext/pb_ds/detail/cc_hash_table_map_/
3119           constructor_destructor_store_hash_fn_imps.hpp: Same.
3120         * include/ext/pb_ds/detail/cc_hash_table_map_/
3121           insert_store_hash_fn_imps.hpp: Same.
3122         * include/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp: Same.
3123         * include/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp: Same.
3124         * include/ext/pb_ds/detail/cc_hash_table_map_/
3125           entry_list_fn_imps.hpp: Same.
3126         * include/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp: Same.
3127         * include/ext/pb_ds/detail/cc_hash_table_map_/
3128           find_store_hash_fn_imps.hpp: Same.
3129         * include/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp: Same.
3130         * include/ext/pb_ds/detail/cc_hash_table_map_/
3131           debug_no_store_hash_fn_imps.hpp: Same.
3132         * include/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp: Same.
3133         * include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp: Same.
3134         * include/ext/pb_ds/detail/cc_hash_table_map_/
3135           constructor_destructor_fn_imps.hpp: Same.
3136         * include/ext/pb_ds/detail/cc_hash_table_map_/
3137           cond_key_dtor_entry_dealtor.hpp: Same.
3138         * include/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp: Same.
3139         * include/ext/pb_ds/detail/cc_hash_table_map_/
3140           debug_store_hash_fn_imps.hpp: Same.
3141         * include/ext/pb_ds/detail/cc_hash_table_map_/
3142           erase_no_store_hash_fn_imps.hpp: Same.
3143         * include/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp: Same.
3144         * include/ext/pb_ds/detail/cc_hash_table_map_/
3145           iterators_fn_imps.hpp: Same.
3146         * include/ext/pb_ds/detail/cc_hash_table_map_/
3147           resize_no_store_hash_fn_imps.hpp: Same.
3148         * include/ext/pb_ds/detail/cc_hash_table_map_/
3149           standard_policies.hpp: Same.
3150         * include/ext/pb_ds/detail/tree_trace_base.hpp: Same.
3151         * include/ext/pb_ds/detail/unordered_iterator/iterator.hpp: Same.
3152         * include/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp: Same.
3153         * include/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp: Same.
3154         * include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp: Same.
3155         * include/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp: Same.
3156         * include/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp: Same.
3157         * include/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp: Same.
3158         * include/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp: Same.
3159         * include/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp: Same.
3160         * include/ext/pb_ds/detail/pat_trie_/
3161           constructors_destructor_fn_imps.hpp: Same.
3162         * include/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp: Same.
3163         * include/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp: Same.
3164         * include/ext/pb_ds/detail/pat_trie_/traits.hpp: Same.
3165         * include/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp: Same.
3166         * include/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp: Same.
3167         * include/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp: Same.
3168         * include/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp: Same.
3169         * include/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp: Same.
3170         * include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp: Same.
3171         * include/ext/pb_ds/detail/bin_search_tree_/
3172           policy_access_fn_imps.hpp: Same.
3173         * include/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp: Same.
3174         * include/ext/pb_ds/detail/bin_search_tree_/
3175           constructors_destructor_fn_imps.hpp: Same.
3176         * include/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp: Same.
3177         * include/ext/pb_ds/detail/bin_search_tree_/traits.hpp: Same.
3178         * include/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp: Same.
3179         * include/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp: Same.
3180         * include/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp: Same.
3181         * include/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp: Same.
3182         * include/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp: Same.
3183         * include/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp: Same.
3184         * include/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp: Same.
3185         * include/ext/pb_ds/detail/bin_search_tree_/
3186           split_join_fn_imps.hpp: Same.
3187         * include/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp: Same.
3188         * include/ext/pb_ds/detail/list_update_policy/
3189           sample_update_policy.hpp: Same.
3190         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3191           trace_fn_imps.hpp: Same.
3192         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3193           erase_fn_imps.hpp: Same.
3194         * include/ext/pb_ds/detail/gp_hash_table_map_/
3195           erase_store_hash_fn_imps.hpp: Same.
3196         * include/ext/pb_ds/detail/gp_hash_table_map_/
3197           constructor_destructor_no_store_hash_fn_imps.hpp: Same.
3198         * include/ext/pb_ds/detail/gp_hash_table_map_/
3199           insert_no_store_hash_fn_imps.hpp: Same.
3200         * include/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp: Same.
3201         * include/ext/pb_ds/detail/gp_hash_table_map_/
3202           policy_access_fn_imps.hpp: Same.
3203         * include/ext/pb_ds/detail/gp_hash_table_map_/
3204           resize_store_hash_fn_imps.hpp: Same.
3205         * include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Same.
3206         * include/ext/pb_ds/detail/gp_hash_table_map_/
3207           constructor_destructor_store_hash_fn_imps.hpp: Same.
3208         * include/ext/pb_ds/detail/gp_hash_table_map_/
3209           insert_store_hash_fn_imps.hpp: Same.
3210         * include/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp: Same.
3211         * include/ext/pb_ds/detail/gp_hash_table_map_/
3212           iterator_fn_imps.hpp: Same.
3213         * include/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp: Same.
3214         * include/ext/pb_ds/detail/gp_hash_table_map_/
3215           find_no_store_hash_fn_imps.hpp: Same.
3216         * include/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp: Same.
3217         * include/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp: Same.
3218         * include/ext/pb_ds/detail/gp_hash_table_map_/
3219           find_store_hash_fn_imps.hpp: Same.
3220         * include/ext/pb_ds/detail/gp_hash_table_map_/
3221           debug_no_store_hash_fn_imps.hpp: Same.
3222         * include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp: Same.
3223         * include/ext/pb_ds/detail/gp_hash_table_map_/
3224           constructor_destructor_fn_imps.hpp: Same.
3225         * include/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp: Same.
3226         * include/ext/pb_ds/detail/gp_hash_table_map_/
3227           debug_store_hash_fn_imps.hpp: Same.
3228         * include/ext/pb_ds/detail/gp_hash_table_map_/
3229           erase_no_store_hash_fn_imps.hpp: Same.
3230         * include/ext/pb_ds/detail/gp_hash_table_map_/
3231           resize_no_store_hash_fn_imps.hpp: Same.
3232         * include/ext/pb_ds/detail/gp_hash_table_map_/
3233           standard_policies.hpp: Same.
3234         * include/ext/pb_ds/detail/standard_policies.hpp: Same.
3235         * include/ext/pb_ds/detail/types_traits.hpp: Same.
3236         * include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp: Same.
3237         * include/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp: Same.
3238         * include/ext/pb_ds/detail/binary_heap_/const_iterator.hpp: Same.
3239         * include/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp: Same.
3240         * include/ext/pb_ds/detail/binary_heap_/
3241           constructors_destructor_fn_imps.hpp: Same.
3242         * include/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp: Same.
3243         * include/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp: Same.
3244         * include/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp: Same.
3245         * include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp: Same.
3246         * include/ext/pb_ds/detail/binary_heap_/entry_pred.hpp: Same.
3247         * include/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp: Same.
3248         * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp: Same.
3249         * include/ext/pb_ds/detail/binary_heap_/resize_policy.hpp: Same.
3250         * include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp: Same.
3251         * include/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp: Same.
3252         * include/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp: Same.
3253         * include/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp: Same.
3254         * include/ext/pb_ds/detail/tree_policy/
3255           sample_tree_node_update.hpp: Same.
3256         * include/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp: Same.
3257         * include/ext/pb_ds/detail/trie_policy/
3258           sample_trie_node_update.hpp: Same.
3259         * include/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp: Same.
3260         * include/ext/pb_ds/detail/trie_policy/
3261           prefix_search_node_update_imp.hpp: Same.
3262         * include/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp: Same.
3263         * include/ext/pb_ds/detail/cond_dealtor.hpp: Same.
3264         * include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp: Same.
3265           Adjust for template parameter change, fold into
3266           container_base_dispatch.
3267         * include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp: Same.
3268         * include/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp: Same.
3269         * include/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp: Same.
3270         * include/ext/pb_ds/detail/pairing_heap_/
3271           constructors_destructor_fn_imps.hpp: Same.
3272         * include/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp: Same.
3273         * include/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp: Same.
3274         * include/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp: Same.
3275         * include/ext/pb_ds/detail/binomial_heap_/
3276           constructors_destructor_fn_imps.hpp: Same.
3277         * include/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp: Same.
3278         * include/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp: Same.
3279         * include/ext/pb_ds/detail/constructors_destructor_fn_imps.hpp: Same.
3280         * include/ext/pb_ds/detail/type_utils.hpp: Same.
3281         * include/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp: Same.
3282         * include/ext/pb_ds/detail/eq_fn/eq_by_less.hpp: Same.
3283         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3284           policy_access_fn_imps.hpp: Same.
3285         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3286           left_child_next_sibling_heap_.hpp: Same.
3287         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3288           const_iterator.hpp: Same.
3289         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3290           insert_fn_imps.hpp: Same.
3291         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3292           constructors_destructor_fn_imps.hpp: Same.
3293         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3294           debug_fn_imps.hpp: Same.
3295         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3296           node.hpp: Same.
3297         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3298           info_fn_imps.hpp: Same.
3299         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3300           iterators_fn_imps.hpp: Same.
3301         * include/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp: Same.
3302         * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp: Same.
3303         * include/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp: Same.
3304         * include/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp: Same.
3305         * include/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp: Same.
3306         * include/ext/pb_ds/detail/thin_heap_/
3307           constructors_destructor_fn_imps.hpp: Same.
3308         * include/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp: Same.
3309         * include/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp: Same.
3310         * include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp: Same.
3311         * include/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp: Same.
3312         * include/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp: Same.
3313         * include/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp: Same.
3314         * include/ext/pb_ds/detail/ov_tree_map_/
3315           constructors_destructor_fn_imps.hpp: Same.
3316         * include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Same.
3317         * include/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp: Same.
3318         * include/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp: Same.
3319         * include/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp: Same.
3320         * include/ext/pb_ds/detail/ov_tree_map_/traits.hpp: Same.
3321         * include/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp: Same.
3322         * include/ext/pb_ds/detail/debug_map_base.hpp: Same.
3323         * include/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp: Same.
3324         * include/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp: Same.
3325         * include/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp: Same.
3326         * include/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp: Same.
3327         * include/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp: Same.
3328         * include/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp: Same.
3329         * include/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp: Same.
3330         * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Same.
3331         * include/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp: Same.
3332         * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Same.
3333         * include/ext/pb_ds/detail/splay_tree_/
3334           constructors_destructor_fn_imps.hpp: Same.
3335         * include/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp: Same.
3336         * include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Same.
3337         * include/ext/pb_ds/detail/splay_tree_/node.hpp: Same.
3338         * include/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp: Same.
3339         * include/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp: Same.
3340         * include/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp: Same.
3341         * include/ext/pb_ds/detail/splay_tree_/traits.hpp: Same.
3342         * include/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp: Same.
3343         * include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp: Same.
3344         * include/ext/pb_ds/detail/list_update_map_/
3345           entry_metadata_base.hpp: Same.
3346         * include/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp: Same.
3347         * include/ext/pb_ds/detail/list_update_map_/lu_map_.hpp: Same.
3348         * include/ext/pb_ds/detail/list_update_map_/
3349           constructor_destructor_fn_imps.hpp: Same.
3350         * include/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp: Same.
3351         * include/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp: Same.
3352         * include/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp: Same.
3353         * include/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp: Same.
3354         * include/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp: Same.
3355         * include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp: Same.
3356         * include/ext/pb_ds/detail/rc_binomial_heap_/
3357           rc_binomial_heap_.hpp: Same.
3358         * include/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp: Same.
3359         * include/ext/pb_ds/detail/rc_binomial_heap_/
3360           constructors_destructor_fn_imps.hpp: Same.
3361         * include/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp: Same.
3362         * include/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp: Same.
3363         * include/ext/pb_ds/detail/rc_binomial_heap_/
3364           split_join_fn_imps.hpp: Same.
3365         * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Same.
3366         * include/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp: Same.
3367         * include/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp: Same.
3368         * include/ext/pb_ds/detail/rb_tree_map_/
3369           constructors_destructor_fn_imps.hpp: Same.
3370         * include/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp: Same.
3371         * include/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp: Same.
3372         * include/ext/pb_ds/detail/rb_tree_map_/node.hpp: Same.
3373         * include/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp: Same.
3374         * include/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp: Same.
3375         * include/ext/pb_ds/detail/rb_tree_map_/traits.hpp: Same.
3376
3377
3378         Documentation changes.
3379         * include/ext/pb_ds/*: Add doxygen markup.
3380         * doc/doxygen/user.cfg.in: Add details for extracting comments
3381         from pb_ds.
3382         * scripts/run_doxygen: Fixup __gnu_pb_ds::detail.
3383         * scripts/make_graph.py: Move to svg output. Re-format generated tables.
3384
3385         * doc/Makefile.am (stamp-html-copy): New rule.
3386         (stamp-html): Use it to copy non-generated files into html docs.
3387         * doc/Makefile.in: Regenerated.
3388
3389         * doc/html/ext/pb_ds/sample_trie_e_access_traits.html: Move...
3390         * doc/html/ext/pb_ds/trie_string_access_traits.html: ...here.
3391         * doc/html/ext/pb_ds/string_trie_e_access_traits.html: Move..
3392         * doc/html/ext/pb_ds/sample_trie_access_traits.html: ...here.
3393
3394         * doc/html/ext/pb_ds/tree_text_lor_find_timing_test_local.png,
3395         hash_random_int_erase_mem_usage_test_local.png,
3396         multimap_text_insert_mem_usage_test_small_s2p_hash_local.png,
3397         tree_text_insert_timing_test_pat_trie_local.png ,
3398         multimap_text_insert_mem_usage_test_small_s2p_tree_local.png ,
3399         priority_queue_text_modify_down_timing_test_local.png,
3400         gp_hash_random_int_subscript_timing_test_find_local.png,
3401         text_find_timing_test_hash_local.png,
3402         multimap_text_insert_timing_test_small_s2p_hash_local.png,
3403         multimap_text_insert_timing_test_small_s2p_tree_local.png,
3404         multimap_text_insert_mem_usage_test_large_s2p_hash_local.png,
3405         multimap_text_insert_mem_usage_test_large_s2p_tree_local.png,
3406         multimap_text_insert_timing_test_large_s2p_hash_local.png,
3407         hash_zlob_random_int_find_timing_test_local.png,
3408         multimap_text_insert_timing_test_large_s2p_tree_local.png,
3409         binary_priority_queue_random_int_push_timing_test_local.png,
3410         priority_queue_text_pop_mem_usage_test_local.png,
3411         priority_queue_text_modify_down_timing_test_pairing_thin_local.png,
3412         tree_split_join_timing_test_local.png,
3413         multimap_text_find_timing_test_small_s2p_hash_local.png,
3414         ccgp_hash_random_int_subscript_timing_test_insert_local.png,
3415         priority_queue_random_int_push_pop_timing_test_local.png,
3416         multimap_text_find_timing_test_small_s2p_tree_local.png,
3417         gp_hash_random_int_subscript_timing_test_insert_local.png,
3418         priority_queue_text_push_timing_test_local.png,
3419         cc_hash_random_int_subscript_timing_test_find_local.png,
3420         tree_text_insert_timing_test_vector_tree_local.png,
3421         multimap_text_find_timing_test_large_s2p_hash_local.png,
3422         pairing_priority_queue_text_push_timing_test_local.png,
3423         tree_order_statistics_timing_test_local.png,
3424         priority_queue_text_push_pop_timing_test_local.png,
3425         text_find_timing_test_tree_like_local.png,
3426         multimap_text_find_timing_test_large_s2p_tree_local.png,
3427         priority_queue_text_modify_up_timing_test_pairing_thin_local.png,
3428         cc_hash_random_int_subscript_timing_test_insert_local.png,
3429         priority_queue_text_modify_up_timing_test_local.png,
3430         random_int_find_find_timing_test_tree_local.png,
3431         priority_queue_random_int_push_timing_test_local.png,
3432         tree_text_insert_timing_test_node_tree_local.png,
3433         pairing_priority_queue_text_push_pop_timing_test_local.png,
3434         gp_hash_random_int_find_timing_test_local.png,
3435         cc_hash_random_int_find_timing_test_local.png,
3436         priority_queue_text_join_timing_test_local.png: Update local pngs.
3437
3438
3439         Testsuite changes.
3440         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc: New.
3441         * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc: New.
3442         * testsuite/ext/pb_ds/regression/priority_queue_rand_debug.cc: New.
3443         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc: New.
3444         * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc: New.
3445         * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc:
3446         New.
3447         * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc:
3448         New.
3449         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc: New.
3450         * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc: New.
3451
3452         * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc: Fix typo.
3453
3454         * testsuite/ext/pb_ds/example/basic_set.cc: Update.
3455         * testsuite/ext/pb_ds/example/ranged_hash.cc: Same.
3456         * testsuite/ext/pb_ds/example/tree_order_statistics.cc: Same.
3457         * testsuite/ext/pb_ds/example/trie_prefix_search.cc: Same.
3458         * testsuite/ext/pb_ds/example/trie_dna.cc: Same.
3459         * testsuite/ext/pb_ds/example/tree_intervals.cc: Same.
3460         * testsuite/ext/pb_ds/example/basic_multimap.cc: Same.
3461         * testsuite/performance/ext/pb_ds/hash_random_int_erase_mem_usage.cc:
3462           Same.
3463         * testsuite/performance/ext/pb_ds/tree_split_join_timing.cc: Same.
3464         * testsuite/performance/ext/pb_ds/tree_order_statistics_timing.cc: Same.
3465         * testsuite/data/make_graph_test_infos.xml: Same.
3466         * testsuite/util/regression/common_type.hpp: Same.
3467         * testsuite/util/regression/trait/assoc/native_type_trait.hpp: Same.
3468         * testsuite/util/regression/trait/assoc/trait.hpp: Same.
3469         * testsuite/util/regression/trait/assoc/type_trait.hpp: Same.
3470         * testsuite/util/regression/rand/priority_queue/
3471           rand_regression_test.hpp: Same.
3472         * testsuite/util/regression/rand/priority_queue/
3473           container_rand_regression_test.tcc: Same.
3474         * testsuite/util/regression/rand/assoc/rand_regression_test.hpp: Same.
3475         * testsuite/util/regression/rand/assoc/container_rand_regression_test.h
3476         * testsuite/util/regression/rand/assoc/
3477           container_rand_regression_test.tcc: Same.
3478         * testsuite/util/native_type/native_priority_queue.hpp: Same.
3479         * testsuite/util/native_type/native_multimap.hpp: Same.
3480         * testsuite/util/native_type/native_hash_multimap.hpp: Same.
3481         * testsuite/util/native_type/native_set.hpp: Same.
3482         * testsuite/util/native_type/native_map.hpp: Same.
3483         * testsuite/util/native_type/native_hash_set.hpp: Same.
3484         * testsuite/util/native_type/native_hash_map.hpp: Same.
3485         * testsuite/util/testsuite_containers.h
3486         * testsuite/util/common_type/priority_queue/common_type.hpp: Same.
3487         * testsuite/util/common_type/assoc/common_type.hpp: Same.
3488         * testsuite/util/common_type/assoc/string_form.hpp: Same.
3489         * testsuite/util/common_type/assoc/template_policy.hpp: Same.
3490         * testsuite/util/common_type/assoc/detail/
3491           trigger_policy_string_form.hpp: Same.
3492         * testsuite/util/common_type/assoc/detail/ds_string_form.hpp: Same.
3493         * testsuite/util/common_type/assoc/detail/
3494           size_policy_string_form.hpp: Same.
3495         * testsuite/util/common_type/assoc/detail/
3496           probe_fn_string_form.hpp: Same.
3497         * testsuite/util/common_type/assoc/detail/
3498           tree_supports_order_statistics.hpp: Same.
3499         * testsuite/util/common_type/assoc/detail/
3500           trie_supports_prefix_search.hpp: Same.
3501         * testsuite/util/common_type/assoc/detail/
3502           list_update_policy_string_form.hpp: Same.
3503         * testsuite/util/common_type/assoc/detail/
3504           trie_supports_order_statistics.hpp: Same.
3505         * testsuite/util/common_type/assoc/native_set.hpp: Same.
3506         * testsuite/util/performance/assoc/timing/common_type.hpp: Same.
3507         * testsuite/util/performance/assoc/timing/multimap_find_test.hpp: Same.
3508         * testsuite/util/performance/assoc/multimap_common_type.hpp: Same.
3509
3510 2011-05-23  Paolo Carlini  <paolo.carlini@oracle.com>
3511
3512         * include/bits/streambuf_iterator.h: Use noexcept per the FDIS.
3513         (istreambuf_iterator<>::istreambuf_iterator(const
3514         istreambuf_iterator&),  ~istreambuf_iterator()): Add defaulted
3515         in C++0x mode.
3516
3517 2011-05-23  Jason Merrill  <jason@redhat.com>
3518
3519         * libsupc++/exception_ptr.h: Fix compilation in C++0x mode.
3520
3521 2011-05-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
3522
3523         * testsuite/20_util/bind/cv_quals_2.cc: New.
3524
3525 2011-05-22  Paolo Carlini  <paolo.carlini@oracle.com>
3526
3527         PR libstdc++/49058
3528         * include/std/functional (_Bind<_Functor(_Bound_args...)>::
3529         operator()(_Args&&...)): Don't cv qualify _Functor directly
3530         in the default template argument, SFINAE doesn't apply when
3531         the functor has no arguments.
3532         * testsuite/20_util/bind/49058_1.cc: New.
3533         * testsuite/20_util/bind/49058_2.cc: Likewise.
3534
3535 2011-05-21  Paolo Carlini  <paolo.carlini@oracle.com>
3536
3537         * include/bits/unique_ptr.h: Use noexcept per the FDIS.
3538
3539 2011-05-20  Paolo Carlini  <paolo.carlini@oracle.com>
3540
3541         * testsuite/21_strings/basic_string/requirements/exception/
3542         propagation_consistent.cc: Fix vs POD-ness of value_type.
3543         * testsuite/21_strings/basic_string/requirements/exception/
3544         basic.cc: Likewise.
3545         * testsuite/ext/vstring/requirements/exception/
3546         propagation_consistent.cc: Likewise.
3547         * testsuite/ext/vstring/requirements/exception/basic.cc: Likewise.
3548
3549 2011-05-20  Paolo Carlini  <paolo.carlini@oracle.com>
3550
3551         * include/bits/char_traits.h: Use noexcept throughout.
3552         * include/std/typeindex: Likewise.
3553
3554         * include/std/tuple (_Tuple_impl<>_Tuple_impl(_Tuple_impl&&)): Use
3555         noexcept; adjust callers.
3556         * include/bits/stl_pair.h (pair<>::pair(pair<>&&)): Use noexcept.
3557         * testsuite/20_util/tuple/cons/noexcept_move_construct.cc: New.
3558         * testsuite/20_util/pair/cons/noexcept_move_construct.cc: Likewise.
3559         * testsuite/20_util/pair/noexcept_swap.cc: Likewise.
3560         * testsuite/20_util/pair/noexcept_move_assign.cc: Likewise.
3561         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
3562         line numbers.
3563
3564 2011-05-20  Jason Merrill  <jason@redhat.com>
3565
3566         * include/ext/pb_ds/assoc_container.hpp: Explicitly qualify calls to
3567         functions from dependent bases.
3568         * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Likewise.
3569         * include/ext/pb_ds/detail/rb_tree_map_/
3570         split_join_fn_imps.hpp: Likewise.
3571         * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Likewise.
3572         * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Likewise.
3573         * include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Likewise.
3574         * include/ext/pb_ds/detail/splay_tree_/
3575         split_join_fn_imps.hpp: Likewise.
3576         * include/ext/pb_ds/detail/tree_policy/
3577         order_statistics_imp.hpp: Likewise.
3578         * include/ext/pb_ds/detail/trie_policy/
3579         prefix_search_node_update_imp.hpp: Likewise.
3580         * include/ext/rc_string_base.h: Likewise.
3581         * include/ext/rope: Likewise.
3582         * include/ext/ropeimpl.h: Likewise.
3583         * testsuite/util/exception/safety.h: Likewise.
3584         * testsuite/util/native_type/native_priority_queue.hpp: Likewise.
3585         * testsuite/util/testsuite_io.h: Likewise.
3586         * include/std/functional: Declare mem_fn earlier.
3587         * include/tr1/functional: Likewise.
3588         * include/tr1/exp_integral.tcc: Declare __expint_E1 earlier.
3589
3590 2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
3591
3592         * include/std/tuple (tuple_element<__i, const _Tp>,
3593         tuple_element<__i, volatile _Tp>, tuple_element<__i,
3594         const volatile _Tp>, tuple_size<const _Tp>, tuple_size<volatile _Tp>,
3595         tuple_size<const volatile _Tp>): Add.
3596         * include/std/utility (tuple_size<std::pair<_Tp1, _Tp2>>): Tweak.
3597         * include/std/array (tuple_size<array<_Tp, _Nm>>): Likewise.
3598         * testsuite/20_util/tuple/cv_tuple_size.cc: New.
3599         * testsuite/20_util/tuple/cv_tuple_element.cc: Likewise.
3600         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Tweak dg-warning
3601         line number.
3602
3603 2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
3604
3605         * include/std/tuple (tuple<>::operator=(tuple&&)): Specify as
3606         noexcept.
3607         (__get_helper): Likewise.
3608         (_Head_base<>::_M_head, _Tuple_impl<>::_M_head, _M_tail): Likewise.
3609         * include/bits/move.h (swap): Likewise.
3610         * include/bits/algorithmfwd.h (swap): Adjust.
3611         * include/bits/stl_pair.h (pair<>::operator=(pair&&)): Spec noexcept.
3612         * testsuite/util/testsuite_allocator.h (uneq_allocator): In C++0x
3613         mode, prefer delete to access control to make the type not copy
3614         assignable.
3615         * testsuite/util/testsuite_tr1.h: Add test classes.
3616         * testsuite/20_util/tuple/noexcept_swap.cc: New.
3617         * testsuite/20_util/tuple/noexcept_move_assign.cc: Likewise.
3618         * testsuite/25_algorithms/reverse/moveable.cc: Likewise, prefer
3619         delete to access control.
3620         * testsuite/25_algorithms/swap_ranges/moveable.cc: Likewise.
3621         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
3622         line numbers.
3623
3624 2011-05-19  Daniel Krugler  <daniel.kruegler@googlemail.com>
3625
3626         * testsuite/util/testsuite_tr1.h: Add test classes.
3627         * testsuite/20_util/is_nothrow_assignable/value.cc: Add.
3628
3629 2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
3630
3631         * include/std/type_traits (is_assignable, is_copy_assignable,
3632         is_move_assignable, is_nothrow_assignable, is_nothrow_copy_assignable,
3633         is_nothrow_move_assignable): Add; minor tweaks elsewhere.
3634         (has_nothrow_copy_assign): Remove.
3635         * testsuite/util/testsuite_tr1.h: Add test classes.
3636         * testsuite/20_util/is_assignable/requirements/typedefs.cc: Add.
3637         * testsuite/20_util/is_assignable/requirements/
3638         explicit_instantiation.cc: Likewise.
3639         * testsuite/20_util/is_nothrow_assignable/value.cc: Likewise.
3640         * testsuite/20_util/is_nothrow_assignable/requirements/typedefs.cc:
3641         Likewise.
3642         * testsuite/20_util/is_nothrow_assignable/requirements/
3643         explicit_instantiation.cc: Likewise.
3644         * testsuite/20_util/is_move_assignable/value.cc: Likewise.
3645         * testsuite/20_util/is_move_assignable/requirements/typedefs.cc:
3646         Likewise.
3647         * testsuite/20_util/is_move_assignable/requirements/
3648         explicit_instantiation.cc: Likewise.
3649         * testsuite/20_util/is_copy_assignable/value.cc: Likewise.
3650         * testsuite/20_util/is_copy_assignable/requirements/typedefs.cc:
3651         Likewise.
3652         * testsuite/20_util/is_copy_assignable/requirements/
3653         explicit_instantiation.cc: Likewise.
3654         * testsuite/20_util/is_nothrow_move_assignable/value.cc: Likewise.
3655         * testsuite/20_util/is_nothrow_move_assignable/requirements/
3656         typedefs.cc: Likewise.
3657         * testsuite/20_util/is_nothrow_move_assignable/requirements/
3658         explicit_instantiation.cc: Likewise.
3659         * testsuite/20_util/is_nothrow_copy_assignable/value.cc: Likewise.
3660         * testsuite/20_util/is_nothrow_copy_assignable/requirements/
3661         typedefs.cc: Likewise.
3662         * testsuite/20_util/is_nothrow_copy_assignable/requirements/
3663         explicit_instantiation.cc: Likewise.
3664         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
3665         dg-error line numbers.
3666         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
3667         Likewise.
3668         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
3669
3670 2011-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
3671
3672         * include/bits/shared_ptr_base.h: Use noexcept. Define special member
3673         functions as defaulted/deleted.
3674         * include/bits/shared_ptr.h: Use noexcept.
3675         * 20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line numbers.
3676         * 20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
3677
3678 2011-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
3679
3680         * doc/xml/manual/bitmap_allocator.xml: Fix typos.
3681
3682 2011-05-18  Paolo Carlini  <paolo.carlini@oracle.com>
3683
3684         * libsupc++/initializer_list: Use noexcept specifier.
3685         (initializer_list<>::size, begin, end): Qualify as const.
3686         * include/bits/move.h (__addressof, forward, move, addressof): Specify
3687         as noexcept.
3688         * include/std/bitset: Use noexcept specifier throughout.
3689         * include/debug/bitset: Update.
3690         * include/profile/bitset: Likewise.
3691
3692 2011-05-17  Paolo Carlini  <paolo.carlini@oracle.com>
3693
3694         * include/std/tuple: Use noexcept where appropriate.
3695         (tuple<>::swap): Rework implementation.
3696         (_Head_base<>::_M_swap_impl): Remove.
3697         (get(std::tuple<>&&)): Add.
3698         * testsuite/20_util/tuple/element_access/get2.cc: New.
3699         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
3700         line number.
3701
3702 2011-05-16  Paolo Carlini  <paolo.carlini@oracle.com>
3703
3704         * include/std/utility: Simplify the last commit, the whole
3705         std::get code is C++0x only.
3706
3707 2011-05-16  Paolo Carlini  <paolo.carlini@oracle.com>
3708
3709         * include/std/utility (get(std::pair<>&&)): Add.
3710         * include/bits/stl_pair.h (pair::swap(pair&),
3711         swap(pair<>&, pair<>&)): Use noexcept.
3712         * include/bits/random.h (discard_block_engine<>::base,
3713         independent_bits_engine<>::base, shuffle_order_engine<>::base,
3714         random_device::entropy): Use noexcept.
3715         * include/std/array: Use noexcept where appropriate.
3716         (get(array<>&&)): Add.
3717         * testsuite/23_containers/array/requirements/get.cc: New.
3718         * testsuite/20_util/pair/get.cc: Likewise.
3719         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Tweak dg-error
3720         line number.
3721
3722 2011-05-15  Paolo Carlini  <paolo.carlini@oracle.com>
3723
3724         * include/bits/c++config (_GLIBCXX_NOEXCEPT, _GLIBCXX_USE_NOEXCEPT):
3725         Add.
3726         * include/std/limits: Use the latter everywhere.
3727         (numeric_limits<char16_t>, numeric_limits<char32_t>): Simplify
3728         macro usages, the specializations exist only in C++0x mode.
3729         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
3730         line number.
3731
3732 2011-05-11  Paolo Carlini  <paolo.carlini@oracle.com>
3733
3734         * testsuite/26_numerics/headers/cmath/overloads_c++0x_neg.cc: Use
3735         dg-require-cmath.
3736         * testsuite/tr1/8_c_compatibility/cmath/overloads_neg.cc: Likewise.
3737
3738 2011-05-11  François Dumont  <francois.cppdevs@free.fr>
3739
3740         * include/ext/pb_ds/detail/resize_policy/
3741         hash_load_check_resize_trigger_imp.hpp (assert_valid): Replace
3742         _GLIBCXX_DEBUG_ASSERT calls with PB_DS_DEBUG_VERIFY.
3743         * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp,
3744         find_fn_imps.hpp, insert_fn_imps.hpp, binomial_heap_base_.hpp,
3745         constructors_destructor_fn_imps.hpp, split_join_fn_imps.hpp
3746         (PB_DS_ASSERT_VALID): Rename in PB_DS_ASSERT_VALID_COND.
3747         * include/ext/pb_ds/detail/debug_map_base.hpp,
3748         splay_tree_/splay_tree_.hpp, ov_tree_map_/ov_tree_map_.hpp,
3749         cc_hash_table_map_/cc_ht_map_.hpp, pat_trie_/pat_trie_.hpp,
3750         leaf.hpp, internal_node.hpp, gp_hash_table_map_/gp_ht_map_.hpp,
3751         bin_search_tree_/bin_search_tree_.hpp, list_update_map_/lu_map_.hpp,
3752         rb_tree_map_/rb_tree_.hpp (PB_DS_ASSERT_VALID, PB_DS_DEBUG_VERIFY,
3753         PB_DS_CHECK_KEY_EXISTS, PB_DS_CHECK_KEY_DOES_NOT_EXIST): Duplicate
3754         macro definitions move...
3755         * include/ext/pb_ds/detail/container_base_dispatch.hpp: ... here...
3756         * include/ext/pb_ds/detail/basic_tree_policy/traits.hpp: ... and here.
3757         * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp,
3758         resize_policy.hpp, pairing_heap_/pairing_heap_.hpp,
3759         left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp,
3760         binomial_heap_/binomial_heap_.hpp, thin_heap_/thin_heap_.hpp,
3761         rc_binomial_heap_/rc_binomial_heap_.hpp, rc.hpp (PB_DS_ASSERT_VALID,
3762         PB_DS_DEBUG_VERIFY): Duplicate macro definitions move...
3763         * include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp:
3764         ...here.
3765
3766 2011-05-09  Paolo Carlini  <paolo.carlini@oracle.com>
3767
3768         PR libstdc++/48933
3769         * include/c_global/cmath (acosh, asinh, atanh, cbrt, copysign,
3770         erf, erfc, exp2, expm1, fdim, fma, fmax, hypot, ilogb, lgamma,
3771         llrint, llround, log1p, log2, logb, lrint, lround, nearbyint,
3772         nextafter, nexttoward, remainder, remquo, rint, round, scalbln,
3773         scalbn, tgamma, trunc): Use __enable_if on the return type.
3774         * include/tr1/cmath: Likewise.
3775         * testsuite/26_numerics/headers/cmath/overloads_c++0x_neg.cc: New.
3776         * testsuite/tr1/8_c_compatibility/cmath/overloads_neg.cc: Likewise.
3777
3778 2011-05-07  François Dumont  <francois.cppdevs@free.fr>
3779
3780         * include/debug/macro.h (_GLIBCXX_DEBUG_VERIFY_AT): New.
3781         (_GLICXX_DEBUG_VERIFY): Use latter.
3782         * include/ext/pb_ds/detail/resize_policy/
3783         hash_load_check_resize_trigger_imp.hpp: Emit assertion on the line
3784         containing the original assert call.
3785         * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp,
3786         find_fn_imps.hpp, insert_fn_imps.hpp, binomial_heap_base_.hpp,
3787         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3788         split_join_fn_imps.hpp: Likewise.
3789         * include/ext/pb_ds/detail/cc_hash_table_map_/
3790         erase_store_hash_fn_imps.hpp, insert_no_store_hash_fn_imps.hpp,
3791         find_fn_imps.hpp, insert_store_hash_fn_imps.hpp, debug_fn_imps.hpp,
3792         debug_no_store_hash_fn_imps.hpp, cc_ht_map_.hpp, resize_fn_imps.hpp,
3793         constructor_destructor_fn_imps.hpp, debug_store_hash_fn_imps.hpp,
3794         erase_no_store_hash_fn_imps.hpp: Likewise.
3795         * include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp,
3796         insert_join_fn_imps.hpp, pat_trie_/head.hpp, debug_fn_imps.hpp,
3797         constructors_destructor_fn_imps.hpp, pat_trie_.hpp, split_fn_imps.hpp,
3798         leaf.hpp, erase_fn_imps.hpp, node_base.hpp, internal_node.hpp:
3799         Likewise.
3800         * include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp,
3801         r_erase_fn_imps.hpp, constructors_destructor_fn_imps.hpp,
3802         debug_fn_imps.hpp, rotate_fn_imps.hpp, erase_fn_imps.hpp,
3803         bin_search_tree_.hpp, insert_fn_imps.hpp, split_join_fn_imps.hpp:
3804         Likewise.
3805         * include/ext/pb_ds/detail/gp_hash_table_map_/
3806         erase_store_hash_fn_imps.hpp, insert_no_store_hash_fn_imps.hpp,
3807         find_fn_imps.hpp, gp_ht_map_.hpp, insert_store_hash_fn_imps.hpp,
3808         debug_fn_imps.hpp, erase_fn_imps.hpp, debug_no_store_hash_fn_imps.hpp,
3809         resize_fn_imps.hpp, constructor_destructor_fn_imps.hpp,
3810         debug_store_hash_fn_imps.hpp, erase_no_store_hash_fn_imps.hpp:
3811         Likewise.
3812         * include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp,
3813         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3814         erase_fn_imps.hpp, insert_fn_imps.hpp, binary_heap_.hpp,
3815         resize_policy.hpp, split_join_fn_imps.hpp: Likewise.
3816         * include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp,
3817         find_fn_imps.hpp, insert_fn_imps.hpp,
3818         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3819         pairing_heap_.hpp, split_join_fn_imps.hpp: Likewise.
3820         * include/ext/pb_ds/detail/binomial_heap_/
3821         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3822         binomial_heap_.hpp: Likewise.
3823         * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
3824         erase_fn_imps.hpp, left_child_next_sibling_heap_.hpp,
3825         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp: Likewise.
3826         * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp,
3827         find_fn_imps.hpp, thin_heap_.hpp, insert_fn_imps.hpp,
3828         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3829         split_join_fn_imps.hpp: Likewise.
3830         * include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp,
3831         ov_tree_map_.hpp, constructors_destructor_fn_imps.hpp,
3832         debug_fn_imps.hpp, split_join_fn_imps.hpp, info_fn_imps.hpp: Likewise.
3833         * include/ext/pb_ds/detail/debug_map_base.hpp: Likewise.
3834         * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp,
3835         find_fn_imps.hpp, insert_fn_imps.hpp,
3836         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
3837         splay_fn_imps.hpp, split_join_fn_imps.hpp, splay_tree_.hpp: Likewise.
3838         * include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp,
3839         find_fn_imps.hpp, lu_map_.hpp, constructor_destructor_fn_imps.hpp,
3840         insert_fn_imps.hpp, debug_fn_imps.hpp: Likewise.
3841         * include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp,
3842         rc_binomial_heap_.hpp, insert_fn_imps.hpp,
3843         constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp, rc.hpp,
3844         split_join_fn_imps.hpp: Likewise.
3845         * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp,
3846         insert_fn_imps.hpp, constructors_destructor_fn_imps.hpp,
3847         debug_fn_imps.hpp, rb_tree_.hpp, split_join_fn_imps.hpp: Likewise.
3848         * include/ext/pb_ds/hash_policy.hpp: Likewise.
3849
3850 2011-05-06  Paolo Carlini  <paolo.carlini@oracle.com>
3851
3852         * testsuite/22_locale/messages_byname/named_equivalence.cc: Fix.
3853
3854 2011-05-04  Marc Glisse  <marc.glisse@normalesup.org>
3855
3856         PR libstdc++/47913 (again)
3857         * include/std/ratio (ratio_add, ratio_less): Rewrite.
3858         * testsuite/20_util/ratio/operations/47913.cc: Extend.
3859         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust dg-error
3860         line numbers.
3861         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
3862
3863 2011-05-03  Paolo Carlini  <paolo.carlini@oracle.com>
3864
3865         PR libstdc++/48848
3866         * include/std/valarray (valarray<>::valarray(valarray&&),
3867         valarray<>::operator=(valarray&&), valarray<>::swap): Add.
3868         * doc/xml/manual/status_cxx200x.xml: Update.
3869         * testsuite/26_numerics/valarray/moveable.cc: New.
3870         * testsuite/26_numerics/valarray/swap.cc: Likewise.
3871
3872 2011-05-03  Paolo Carlini  <paolo.carlini@oracle.com>
3873
3874         PR libstdc++/48750
3875         * include/parallel/multiway_merge.h: Run _ValueType destructors.
3876         * include/parallel/multiway_mergesort.h: Likewise.
3877         * include/parallel/quicksort.h: Likewise.
3878         * include/parallel/random_shuffle.h: Likewise.
3879         * include/parallel/partial_sum.h: Likewise.
3880         * include/parallel/losertree.h: Run destructors; minor tweaks.
3881         * include/parallel/par_loop.h: Run destructors, fix memory
3882         allocations and deallocations.
3883         * testsuite/26_numerics/accumulate/48750.cc: New.
3884
3885         * testsuite/ext/profile/mutex_extensions_neg.cc: Do not run in
3886         parallel-mode to avoid spurious multiple errors.
3887
3888 2011-05-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
3889
3890         * include/std/functional (bind): Remove from overload set when first
3891         argument type might be a socket file descriptor.
3892         * testsuite/20_util/bind/socket.cc: New.
3893
3894 2011-05-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
3895
3896         PR libstdc++/48848
3897         * doc/xml/manual/status_cxx200x.xml: Update valarray status.
3898         * doc/html/*: Regenerate.
3899
3900 2011-05-02  Ollie Wild  <aaw@google.com>
3901
3902         * include/ext/sso_string_base.h (__sso_string_base<>::_M_construct):
3903         Fix unqualified lookup.
3904         (__sso_string_base<>::_M_assign): Likewise.
3905         (__sso_string_base<>::_M_reserve): Likewise.
3906         (__sso_string_base<>::_M_mutate): Likewise.
3907         (__sso_string_base<>::_M_erase): Likewise.
3908         * include/ext/vstring.h (__versa_string<>::replace): Likewise.
3909         (__versa_string<>::compare): Likewise.
3910         * include/ext/vstring.tcc (__versa_string<>::compare): Likewise.
3911
3912 2011-05-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
3913
3914         * doc/xml/manual/status_cxx200x.xml: Update to reflect current status
3915         and FDIS content.
3916         * doc/xml/manual/documentation_hacking.xml: Fix typo.
3917         * doc/html/*: Regenerate.
3918
3919 2011-04-30  Daniel Krugler  <daniel.kruegler@googlemail.com>
3920
3921         * include/std/type_traits (__is_default_constructible_atom,
3922         __is_default_constructible_safe<, true>,
3923         __is_direct_constructible_new_safe,
3924         __is_base_to_derived_ref<,, true>, __is_lvalue_to_rvalue_ref<,, true>,
3925         __is_direct_constructible_ref_cast, __is_direct_constructible,
3926         __is_nary_constructible): Simplify; add comments throughout.
3927
3928 2011-04-30  Paolo Carlini  <paolo.carlini@oracle.com>
3929
3930         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
3931         Adjust dg-error line numbers.
3932         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
3933         Likewise.
3934         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
3935
3936 2011-04-30  Doug Kwan  <dougkwan@google.com>
3937
3938         * include/Makefile.am (install-freestanding-headers): Also install
3939         cxxabi_tweaks.h.
3940         * include/Makefile.in: Regenerate.
3941
3942 2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>
3943
3944         PR libstdc++/48760
3945         * include/std/complex (complex<float>::complex(float, float),
3946         complex<double>::complex(double, double),
3947         complex<long double>::complex(long double, long double)): Use
3948         list-initialization in C++0x mode, initialize in the body in
3949         C++03 mode.
3950         * testsuite/26_numerics/complex/cons/48760.cc: New.
3951         * testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise.
3952
3953 2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>
3954
3955         * include/std/bitset (_Base_bitset(unsigned long long)): Minor
3956         tweak, remove redundant round braces.
3957
3958 2011-04-27  Paolo Carlini  <paolo.carlini@oracle.com>
3959
3960         * include/bits/move.h (move_if_noexcept): Add.
3961         * testsuite/20_util/move_if_noexcept/requirements/
3962         explicit_instantiation.cc: New.
3963         * testsuite/20_util/move_if_noexcept/1.cc: Likewise.
3964
3965 2011-04-25  Paolo Carlini  <paolo.carlini@oracle.com>
3966
3967         * include/std/type_traits (struct underlying_type): Add.
3968         * testsuite/20_util/underlying_type/requirements/typedefs-1.cc: New.
3969         * testsuite/20_util/underlying_type/requirements/typedefs-2.cc:
3970         Likewise.
3971         * testsuite/20_util/underlying_type/requirements/
3972         explicit_instantiation.cc: Likewise.
3973         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
3974         line number.
3975
3976 2011-04-24  Paolo Carlini  <paolo.carlini@oracle.com>
3977
3978         * include/parallel/multiway_merge.h: Uglify equally_split
3979         and equally_split_point throughout.
3980         * include/parallel/par_loop.h: Likewise.
3981         * include/parallel/equally_split.h: Likewise.
3982         * include/parallel/set_operations.h: Likewise.
3983         * include/parallel/unique_copy.h: Likewise.
3984         * include/parallel/multiway_mergesort.h: Likewise.
3985         * include/parallel/search.h: Likewise.
3986         * include/parallel/partial_sum.h: Likewise.
3987         * include/parallel/find.h: Likewise.
3988
3989 2011-04-24  Gerald Pfeifer  <gerald@pfeifer.com>
3990
3991         * doc/xml/manual/parallel_mode.xml: Fix link to libgomp online
3992         documentation.  Expand link text.
3993
3994 2011-04-24  Gerald Pfeifer  <gerald@pfeifer.com>
3995
3996         * libsupc++/cxxabi.h: Adjust link to FAQ entry.
3997
3998 2011-04-22  François Dumont  <francois.cppdevs@free.fr>
3999
4000         * testsuite/lib/libstdc++.exp (check_v3_target_time): Discard
4001         unused compilation result thanks to /dev/null.
4002         * testsuite/lib/libstdc++.exp (check_v3_target_debug_mode,
4003         check_v3_target_profile_mode, check_v3_target_normal_mode,
4004         check_v3_target_cstdint, check_v3_target_cmath,
4005         check_v3_target_atomic_builtins, check_v3_target_gthreads,
4006         check_v3_target_nanosleep, check_v3_target_sched_yield,
4007         check_v3_target_string_conversions, check_v3_target_swprintf,
4008         check_v3_target_binary_io): Use simple preprocessing rather than
4009         compilation. Discard unused preprocessing result thanks to /dev/null.
4010
4011 2011-04-20  Jim Meyering  <meyering@redhat.com>
4012
4013         * libsupc++/del_opnt.cc (operator delete): Remove useless
4014         if-before-free.
4015
4016 2011-04-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
4017
4018         PR libstdc++/48521
4019         * include/std/type_traits (result_of): Handle pointer to member.
4020         * include/std/functional (__invoke): Likewise.
4021         (_Function_to_function_pointer): Remove.
4022         (_Reference_wrapper_base): Provide nested types independent of
4023         unary_function and binary_function.
4024         (reference_wrapper::operator()): DR 2017.
4025         (ref(const A&&), cref(const A&&): Define as deleted.
4026         * include/std/future (async): Simplify SFINAE and use result_of to
4027         support pointer to member.
4028         * testsuite/20_util/reference_wrapper/invoke.cc: Test pointer to
4029         member.
4030         * testsuite/20_util/reference_wrapper/24803.cc: Likewise.
4031         * testsuite/20_util/reference_wrapper/typedefs.cc: Test for types
4032         instead of derivation from unary_function and binary_function.
4033         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
4034         * testsuite/20_util/reference_wrapper/invoke-2.cc: New.
4035         * testsuite/20_util/reference_wrapper/ref_neg.c: New.
4036         * testsuite/20_util/reference_wrapper/typedefs-3.c: New.
4037
4038 2011-04-19  Hans-Peter Nilsson  <hp@axis.com>
4039
4040         PR testsuite/48675
4041         * testsuite/20_util/hash/chi2_quality.cc (test_document_words): Stub
4042         this part if SAMPLES < 100000.
4043
4044 2011-04-18  Paolo Carlini  <paolo.carlini@oracle.com>
4045
4046         * include/std/type_traits (is_nothrow_default_constructible,
4047         is_nothrow_copy_constructible, is_nothrow_move_constructible,
4048         is_copy_constructible, is_move_constructible): Add.
4049         (has_nothrow_default_constructor, has_nothrow_copy_constructor):
4050         Remove.
4051         (is_nothrow_constructible): Adjust.
4052
4053         * testsuite/util/testsuite_tr1.h (ThrowDefaultClass,
4054         ThrowCopyConsClass, ThrowMoveConsClass, NoexceptDefaultClass,
4055         ExceptDefaultClass, NoexceptCopyConsClass, ExceptCopyConsClass,
4056         NoexceptMoveConsClass, ExceptMoveConsClass): Add in C++0x mode.
4057
4058         * testsuite/20_util/has_nothrow_default_constructor: Remove.
4059         * testsuite/20_util/has_nothrow_copy_constructor: Likewise.
4060
4061         * testsuite/20_util/is_nothrow_move_constructible/value.cc: Likewise.
4062         * testsuite/20_util/is_nothrow_move_constructible/requirements/
4063         typedefs.cc: Likewise.
4064         * testsuite/20_util/is_nothrow_move_constructible/requirements/
4065         explicit_instantiation.cc: Likewise.
4066         * testsuite/20_util/is_nothrow_copy_constructible/value.cc: Likewise.
4067         * testsuite/20_util/is_nothrow_copy_constructible/requirements/
4068         typedefs.cc: Likewise.
4069         * testsuite/20_util/is_nothrow_copy_constructible/requirements/
4070         explicit_instantiation.cc: Likewise.
4071         * testsuite/20_util/is_nothrow_default_constructible/value.cc:
4072         Likewise.
4073         * testsuite/20_util/is_nothrow_default_constructible/requirements/
4074         typedefs.cc: Likewise.
4075         * testsuite/20_util/is_nothrow_default_constructible/requirements/
4076         explicit_instantiation.cc: Likewise.
4077         * testsuite/20_util/is_move_constructible/value.cc: Likewise.
4078         * testsuite/20_util/is_move_constructible/requirements/typedefs.cc:
4079         Likewise.
4080         * testsuite/20_util/is_move_constructible/requirements/
4081         explicit_instantiation.cc: Likewise.
4082         * testsuite/20_util/is_copy_constructible/value.cc: Likewise.
4083         * testsuite/20_util/is_copy_constructible/requirements/typedefs.cc:
4084         Likewise.
4085         * testsuite/20_util/is_copy_constructible/requirements/
4086         explicit_instantiation.cc: Likewise.
4087
4088         * testsuite/20_util/is_default_constructible/value.cc: Add tests.
4089         * testsuite/20_util/is_nothrow_constructible/value.cc: Likewise.
4090
4091         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
4092         Adjust dg-error line numbers.
4093         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
4094         Likewise.
4095         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
4096
4097 2011-04-17  Paolo Carlini  <paolo.carlini@oracle.com>
4098
4099         * testsuite/25_algorithms/partition/moveable.cc: Actually run
4100         it in parallel-mode for check-parallel.
4101
4102 2011-04-17  Daniel Krugler  <daniel.kruegler@googlemail.com>
4103             Paolo Carlini  <paolo.carlini@oracle.com>
4104
4105         PR libstdc++/48635 (again)
4106         * include/bits/unique_ptr.h (unique_ptr<>::unique_ptr(unique_ptr<>&&),
4107         unique_ptr<_Tp[]>::unique_ptr(unique_ptr<>&&),
4108         unique_ptr<>::operator=(unique_ptr<>&&),
4109         unique_ptr<_Tp[]>::operator=(unique_ptr<>&&)): Use forward<_Ep>, not
4110         forward<_Dp>, to forward the deleter.
4111         * testsuite/20_util/unique_ptr/assign/48635_neg.cc: New.
4112
4113 2011-04-15  Daniel Krugler  <daniel.kruegler@googlemail.com>
4114             Paolo Carlini  <paolo.carlini@oracle.com>
4115
4116         PR libstdc++/48631
4117         * include/bits/unique_ptr.h (default_delete<_Tp[]>): Add deleted
4118         function call operator.
4119         * testsuite/20_util/default_delete/48631_neg.cc: New.
4120         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
4121         line numbers.
4122
4123 2011-04-15  Daniel Krugler  <daniel.kruegler@googlemail.com>
4124             Paolo Carlini  <paolo.carlini@oracle.com>
4125
4126         PR libstdc++/48635
4127         * include/bits/unique_ptr.h (unique_ptr<>::operator=(unique_ptr&&),
4128         unique_ptr<>::operator=(unique_ptr<>&&),
4129         unique_ptr<_Tp[],>::operator=(unique_ptr&&),
4130         unique_ptr<_Tp[],>::operator=(unique_ptr<>&&)): Forward the deleter
4131         instead of moving it.
4132         * testsuite/20_util/unique_ptr/assign/48635.cc: New.
4133
4134 2011-04-15  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4135
4136         * scripts/extract_symvers.pl: Handle NOTY.
4137
4138 2011-04-15  Paolo Carlini  <paolo.carlini@oracle.com>
4139
4140         * include/std/istream: Fix comments in the light of DR60 + N3168.
4141
4142 2011-04-13  Daniel Krugler  <daniel.kruegler@googlemail.com>
4143             Paolo Carlini  <paolo.carlini@oracle.com>
4144
4145         PR libstdc++/48526
4146         * include/std/type_traits (struct is_constructible): Re-implement,
4147         according to n3290.
4148         (struct is_default_constructible): Add.
4149         (struct is_destructible): Likewise.
4150         (struct __and_, __or_, __not_): Add and use throughout; reorder some
4151         facilities, other minor tweaks.
4152         * testsuite/util/testsuite_tr1.h: Add test types.
4153         * testsuite/20_util/is_constructible/value-2.cc: New.
4154         * testsuite/20_util/is_default_constructible/value.cc: Likewise.
4155         * testsuite/20_util/is_default_constructible/requirements/typedefs.cc:
4156         Likewise.
4157         * testsuite/20_util/is_default_constructible/requirements/
4158         explicit_instantiation.cc: Likewise.
4159         * testsuite/20_util/is_destructible/value.cc: Likewise.
4160         * testsuite/20_util/is_destructible/requirements/typedefs.cc:
4161         Likewise.
4162         * testsuite/20_util/is_destructible/requirements/
4163         explicit_instantiation.cc: Likewise.
4164         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
4165         dg-error line numbers.
4166         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
4167         Likewise.
4168         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
4169         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
4170
4171 2011-04-13  Paolo Carlini  <paolo.carlini@oracle.com>
4172
4173         * testsuite/20_util/is_function/value.cc: Add, adapted from the tr
4174         testsuite.
4175         * testsuite/20_util/is_function/requirements/typedefs.cc: Likewise.
4176         * testsuite/20_util/is_function/requirements/
4177         explicit_instantiation.cc: Likewise.
4178         * testsuite/20_util/is_function/24808.cc: Likewise.
4179         * testsuite/20_util/is_function/35637.cc: Likewise.
4180         * testsuite/20_util/is_object/value.cc: Likewise.
4181         * testsuite/20_util/is_object/requirements/typedefs.cc: Likewise.
4182         * testsuite/20_util/is_object/requirements/explicit_instantiation.cc:
4183         : Likewise.
4184         * testsuite/20_util/is_object/24808.cc: Likewise.
4185         * testsuite/20_util/is_compound/value.cc: Likewise.
4186         * testsuite/20_util/is_compound/requirements/typedefs.cc: Likewise.
4187         * testsuite/20_util/is_compound/requirements/
4188         explicit_instantiation.cc: Likewise.
4189         * testsuite/20_util/is_member_object_pointer/value.cc: Likewise.
4190         * testsuite/20_util/is_member_object_pointer/requirements/
4191         typedefs.cc: Likewise.
4192         * testsuite/20_util/is_member_object_pointer/requirements/
4193         explicit_instantiation.cc: Likewise.
4194         * testsuite/20_util/is_fundamental/value.cc: Likewise.
4195         * testsuite/20_util/is_fundamental/requirements/typedefs.cc: Likewise.
4196         * testsuite/20_util/is_fundamental/requirements/
4197         explicit_instantiation.cc: Likewise.
4198         * testsuite/20_util/is_member_pointer/value.cc: Likewise.
4199         * testsuite/20_util/is_member_pointer/requirements/typedefs.cc:
4200         Likewise.
4201         * testsuite/20_util/is_member_pointer/requirements/
4202         explicit_instantiation.cc: Likewise.
4203         * testsuite/20_util/is_member_function_pointer/value.cc: Likewise.
4204         * testsuite/20_util/is_member_function_pointer/
4205         requirements/typedefs.cc: Likewise.
4206         * testsuite/20_util/is_member_function_pointer/requirements/
4207         explicit_instantiation.cc: Likewise.
4208
4209         * testsuite/20_util/is_convertible/value.cc: Minor tweak, adjust
4210         Copyright years.
4211
4212 2011-04-12  Takaya Saito  <gintensubaru@gmail.com>
4213
4214         PR libstdc++/48476
4215         * include/std/tuple (_Tuple_impl<>::_Tuple_impl(_Tuple_impl<>&&),
4216         _Tuple_impl<>::operator=(_Tuple_impl&&), _Tuple_impl<>::operator=
4217         (_Tuple_impl<>&&), tuple_cat): Use std::forward where appropriate.
4218         * testsuite/20_util/tuple/cons/48476.cc: New.
4219         * testsuite/20_util/tuple/48476.cc: Likewise.
4220         * testsuite/20_util/tuple/creation_functions/48476.cc: Likewise.
4221
4222 2011-04-12  Allan McRae  <allan@archlinux.org>
4223
4224         PR libstdc++/48566
4225         * testsuite/tr1/6_containers/unordered_map/requirements/
4226         iterator_null_neg.cc: Include <cstddef>.
4227         * testsuite/tr1/6_containers/unordered_set/requirements/
4228         iterator_null_neg.cc: Likewise.
4229         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/4.cc: Include
4230         <cstring>.
4231         * testsuite/util/testsuite_common_types.h: Include <limits>.
4232         * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc:
4233         Adjust dg-error line numbers.
4234         * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
4235         * testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
4236         Likewise.
4237         * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc:
4238         Likewise.
4239         * testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc:
4240         Likewise.
4241         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Likewise.
4242         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
4243
4244 2011-04-11  Jason Merrill  <jason@redhat.com>
4245
4246         * testsuite/20_util/is_convertible/value.cc: Adjust.
4247
4248 2011-04-11  Paolo Carlini  <paolo.carlini@oracle.com>
4249
4250         * testsuite/25_algorithms/inplace_merge/moveable.cc: Actually run
4251         it in parallel-mode for check-parallel.
4252         * testsuite/25_algorithms/rotate/moveable.cc: Likewise.
4253         * testsuite/25_algorithms/stable_partition/moveable.cc: Likewise.
4254         * testsuite/25_algorithms/remove/moveable.cc: Likewise.
4255         * testsuite/25_algorithms/sort_heap/check_compare_by_value.cc:
4256         Likewise.
4257         * testsuite/25_algorithms/unique/moveable.cc: Likewise.
4258         * testsuite/25_algorithms/remove_if/moveable.cc: Likewise.
4259         * testsuite/25_algorithms/heap/moveable.cc: Likewise.
4260
4261         * testsuite/25_algorithms/next_permutation/moveable.cc: Only skip
4262         the tests based on std::lexicographical_compare for check-parallel.
4263         * testsuite/25_algorithms/prev_permutation/moveable.cc: Likewise.
4264
4265 2011-04-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
4266
4267         PR libstdc++/48541
4268         * include/std/functional (_Base_manager::_M_get_pointer): Use
4269         addressof.
4270         * testsuite/20_util/function/48541.cc: New.
4271
4272 2011-04-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
4273
4274         PR libstdc++/48465
4275         * configure.ac (libtool_VERSION): Bump library version to 6:16:0.
4276         * configure: Regenerate.
4277         * config/abi/pre/gnu.ver (GLIBCXX_3.4.16): Export missing symbols.
4278         * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.16.
4279
4280 2011-04-06  Jeffrey Yasskin  <jyasskin@google.com>
4281
4282         * include/ext/algorithm (is_sorted): In C++0x mode import from
4283         namespace std.
4284         * include/ext/numeric (iota): In C++0x mode import from
4285         namespace std.
4286         * testsuite/ext/is_sorted/cxx0x.cc: New.
4287         * testsuite/ext/iota/cxx0x.cc: New.
4288
4289 2011-04-02  Jonathan Wakely  <redi@gcc.gnu.org>
4290
4291         PR libstdc++/48398
4292         * include/bits/unique_ptr.h (__tuple_type): Store pointer type.
4293         * testsuite/20_util/unique_ptr/modifiers/48398.cc: New.
4294         * testsuite/20_util/unique_ptr/requirements/pointer_type.cc: Remove
4295         unused parameter name.
4296
4297 2011-03-31  Jeffrey Yasskin  <jyasskin@google.com>
4298
4299         * libsupc++/exception_ptr.h: Forward-declare std::type_info.
4300         * libsupc++/nested_exception.h (__throw_with_nested): Remove a
4301         redundant default argument from std::__throw_with_nested.
4302
4303 2011-03-31  Paolo Carlini  <paolo.carlini@oracle.com>
4304
4305         PR libstdc++/48382
4306         * src/ctype.cc: Do not include <bits/ctype_noninline.h>.
4307         * src/Makefile.am: Add ctype_configure_char.cc to host_sources.
4308         * src/Makefile.in: Regenerate.
4309         * include/Makefile.am: Remove ctype_noninline.h from host_headers.
4310         * include/Makefile.in: Regenerate.
4311         * doc/xml/manual/internals.xml: Update.
4312         * config/os/newlib/ctype_noninline.h: Fixup and rename to...
4313         * config/os/newlib/ctype_configure_char.cc: ... this.
4314         * config/os/aix/ctype_noninline.h: Likewise.
4315         * config/os/aix/ctype_configure_char.cc: Likewise.
4316         * config/os/vxworks/ctype_noninline.h: Likewise.
4317         * config/os/vxworks/ctype_configure_char.cc
4318         * config/os/hpux/ctype_noninline.h: Likewise.
4319         * config/os/hpux/ctype_configure_char.cc: Likewise.
4320         * config/os/gnu-linux/ctype_noninline.h: Likewise.
4321         * config/os/gnu-linux/ctype_configure_char.cc: Likewise.
4322         * config/os/mingw32/ctype_noninline.h: Likewise.
4323         * config/os/mingw32/ctype_configure_char.cc: Likewise.
4324         * config/os/tpf/ctype_noninline.h: Likewise.
4325         * config/os/tpf/ctype_configure_char.cc: Likewise.
4326         * config/os/uclibc/ctype_noninline.h: Likewise.
4327         * config/os/uclibc/ctype_configure_char.cc: Likewise.
4328         * config/os/bionic/ctype_noninline.h: Likewise.
4329         * config/os/bionic/ctype_configure_char.cc: Likewise.
4330         * config/os/djgpp/ctype_noninline.h: Likewise.
4331         * config/os/djgpp/ctype_configure_char.cc: Likewise.
4332         * config/os/qnx/qnx6.1/ctype_noninline.h: Likewise.
4333         * config/os/qnx/qnx6.1/ctype_configure_char.cc: Likewise.
4334         * config/os/bsd/netbsd/ctype_noninline.h: Likewise.
4335         * config/os/bsd/netbsd/ctype_configure_char.cc: Likewise.
4336         * config/os/bsd/darwin/ctype_noninline.h: Likewise.
4337         * config/os/bsd/darwin/ctype_configure_char.cc: Likewise.
4338         * config/os/bsd/freebsd/ctype_noninline.h: Likewise.
4339         * config/os/bsd/freebsd/ctype_configure_char.cc: Likewise.
4340         * config/os/irix/irix6.5/ctype_noninline.h: Likewise.
4341         * config/os/irix/irix6.5/ctype_configure_char.cc: Likewise.
4342         * config/os/generic/ctype_noninline.h: Likewise.
4343         * config/os/generic/ctype_configure_char.cc: Likewise.
4344         * config/os/solaris/solaris2.7/ctype_noninline.h: Likewise.
4345         * config/os/solaris/solaris2.7/ctype_configure_char.cc: Likewise.
4346
4347 2011-03-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
4348
4349         * include/std/future (future::share): Add.
4350         (packaged_task::result_type): Remove as per LWG 2030.
4351         (packaged_task::packaged_task): Remove redundant constructors, as per
4352         LWG 1514.
4353         * testsuite/30_threads/future/members/share.cc: New.
4354         * testsuite/30_threads/packaged_task/requirements/typedefs.cc: Remove.
4355
4356 2011-03-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
4357
4358         * testsuite/28_regex/match_results/ctors/char/default.cc: Do not call
4359         members which require a fully established result state.
4360         * testsuite/28_regex/match_results/ctors/wchar_t/default.cc: Likewise.
4361
4362 2011-03-25  Paolo Carlini  <paolo.carlini@oracle.com>
4363
4364         * include/bits/random.h (negative_binomial_distribution<>::
4365         negative_binomial_distribution(_IntType, double),
4366         negative_binomial_distribution<>::
4367         negative_binomial_distribution(const param_type&)): Tweak
4368         construction of _M_gd.
4369         * include/bits/random.tcc (negative_binomial_distribution<>::
4370         operator()): Adjust.
4371
4372 2011-03-24  Paolo Carlini  <paolo.carlini@oracle.com>
4373
4374         * include/bits/random.h (negative_binomial_distribution<>::
4375         negative_binomial_distribution(_IntType, double),
4376         negative_binomial_distribution<>::
4377         negative_binomial_distribution(const param_type&)): Fix
4378         construction of _M_gd.
4379         * include/bits/random.tcc (negative_binomial_distribution<>::
4380         operator()): Fix computation, per Leger's algorithm.
4381         * testsuite/util/testsuite_random.h (discrete_pdf,
4382         negative_binomial_pdf, poisson_pdf, uniform_int_pdf): New.
4383         (binomial_pdf): Swap last two parameters.
4384         * testsuite/26_numerics/random/discrete_distribution/
4385         operators/values.cc: New.
4386         * testsuite/26_numerics/random/negative_binomial_distribution/
4387         operators/values.cc: Likewise.
4388         * testsuite/26_numerics/random/poisson_distribution/
4389         operators/values.cc: Likewise.
4390         * testsuite/26_numerics/random/uniform_int_distribution/
4391         operators/values.cc: Likewise.
4392         * testsuite/26_numerics/random/binomial_distribution/
4393         operators/values.cc: Adjust.
4394
4395 2011-03-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4396
4397         * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerate.
4398         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
4399         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
4400         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
4401         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
4402
4403 2011-03-23  Matthias Klose  <doko@ubuntu.com>
4404
4405         * config/abi/post/sparc-linux-gnu/baseline_symbols.txt: Regenerated.
4406
4407 2011-03-23  Uros Bizjak  <ubizjak@gmail.com>
4408
4409         * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Regenerated.
4410
4411 2011-03-22  Joseph Myers  <joseph@codesourcery.com>
4412
4413         * configure.ac: Don't handle powerpc*-*-gnu*.
4414         * configure: Regenerate.
4415
4416 2011-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
4417
4418         * testsuite/21_strings/basic_string/cons/char/moveable2.cc: Tweak
4419         Copyright years.
4420         * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc:
4421         Likewise.
4422
4423 2011-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
4424
4425         * include/bits/shared_ptr.h (operator>, operator<=, operator>=): Add,
4426         per DR 1401.
4427         (operator==, operator!=, operator<): Fix per the letter of DR 1401.
4428         * include/bits/shared_ptr_base.h: Likewise for __shared_ptr.
4429         * include/bits/unique_ptr.h (operator==, operator!=, operator<,
4430         operator<=, operator>, operator>=): Fix per the letter of DR 1401.
4431         * testsuite/20_util/shared_ptr/comparison/dr1401.cc: New.
4432         * testsuite/20_util/unique_ptr/comparison/dr1401.cc: Likewise.
4433         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust.
4434
4435 2011-03-22  Jakub Jelinek  <jakub@redhat.com>
4436
4437         * config/abi/pre/gnu.ver (GLIBCXX_3.4.15): Export _ZNSsC2EOSs
4438         and _ZNSbIwSt11char_traitsIwESaIwEEC2EOS2_.
4439         * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerated.
4440         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
4441         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
4442         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
4443         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
4444         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
4445         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
4446         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
4447         Likewise.
4448         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
4449         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
4450         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
4451         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
4452         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
4453         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
4454         * testsuite/21_strings/basic_string/cons/char/moveable2.cc: New test.
4455         * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc: New
4456         test.
4457
4458 2011-03-21  Jack Howarth  <howarth@bromo.med.uc.edu>
4459
4460         * testsuite/lib/prune.exp (libstdc++-dg-prune): Prune "could not
4461         create compact unwind for" warnings.
4462
4463 2011-03-21  Jakub Jelinek  <jakub@redhat.com>
4464
4465         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
4466         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
4467         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
4468         Likewise.
4469         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
4470         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
4471         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
4472         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
4473         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
4474         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
4475         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
4476         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
4477         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
4478
4479         * testsuite/util/testsuite_abi.cc (check_version): Set incompatible
4480         even when adding symbols to CXXABI_1.3, GLIBCXX_LDBL_3.4 and
4481         CXXABI_LDBL_1.3 versions.
4482
4483 2011-03-21  Benjamin Kosnik  <bkoz@redhat.com>
4484
4485         * config/abi/pre/gnu.ver: Remove typeinfo name exports for C++0x types.
4486
4487 2011-03-21  Jakub Jelinek  <jakub@redhat.com>
4488
4489         * config/abi/pre/gnu.ver (CXXABI_1.3): Don't export _ZT[IS][PK]*[no].
4490         (CXXABI_1.3.5): Export _ZTI[PK]*[no].
4491
4492 2011-03-21  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4493
4494         * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail on
4495         sparc*-sun-solaris2.10 && lp64.
4496
4497 2011-03-19  Paolo Carlini  <paolo.carlini@oracle.com>
4498
4499         * testsuite/lib/libstdc++.exp (check_v3_target_c99_math): Rename
4500         to check_v3_target_cmath.
4501         * testsuite/lib/dg-options.exp (dg-require-c99_math): Rename
4502         to dg-require-cmath.
4503         * testsuite/26_numerics/random/binomial_distribution/
4504         operators/values.cc: Adjust.
4505
4506 2011-03-18  Diego Novillo  <dnovillo@google.com>
4507
4508         * testsuite/decimal/mixed-mode-arith_neg.cc: Rename from
4509         mixed-mode_neg.cc
4510         * testsuite/decimal/mixed-mode-cmp_neg.cc: Factor out of
4511         mixed-mode-arith_neg.cc
4512
4513 2011-03-18  Paolo Carlini  <paolo.carlini@oracle.com>
4514
4515         * testsuite/util/testsuite_random.h: New.
4516         * testsuite/lib/libstdc++.exp (check_v3_target_c99_math): Add.
4517         * testsuite/lib/dg-options.exp (dg-require-c99_math): Likewise.
4518         * testsuite/26_numerics/random/bernoulli_distribution/
4519         operators/values.cc: New.
4520         * testsuite/26_numerics/random/binomial_distribution/
4521         operators/values.cc: Likewise.
4522         * testsuite/26_numerics/random/geometric_distribution/
4523         operators/values.cc: Likewise.
4524
4525 2011-03-16  Benjamin Kosnik  <bkoz@redhat.com>
4526
4527         * config/abi/pre/gnu.ver: Add base destructors for stdexcept classes.
4528         * testsuite/19_diagnostics/stdexcept.cc: New.
4529
4530 2011-03-15  Benjamin Kosnik  <bkoz@redhat.com>
4531
4532         * include/std/thread: Revert.
4533         * src/thread.cc: Same.
4534         * config/abi/pre/gnu.ver: Same.
4535
4536 2011-03-15  Doug Kwan  <dougkwan@google.com>
4537
4538         PR libstdc++/48123
4539         * include/Makefile.am (install-freestanding-headers): Install
4540         cpu_defines.h
4541         * include/Makefile.in: Regenerate.
4542
4543 2011-03-15  Benjamin Kosnik  <bkoz@redhat.com>
4544
4545         * config/abi/pre/gnu.ver: Make nested_exception exports super clear.
4546         Move bad_function_call exports from CXXABI_1.3.5 to GLIBCXX_3.4.15.
4547
4548 2011-03-14  Benjamin Kosnik  <bkoz@redhat.com>
4549
4550         PR libstdc++/48130
4551         * src/future.cc: Guard definitions.
4552         * libsupc++/nested_exception.cc: Same.
4553
4554 2011-03-14  Benjamin Kosnik  <bkoz@redhat.com>
4555
4556         * src/Makefile.am: Add functional.cc, shared_ptr.cc.
4557         * src/Makefile.in: Regenerate.
4558         * libsupc++/Makefile.am: Add nested_exception.cc.
4559         * libsupc++/Makefile.in: Regenerate.
4560         * src/system_error.cc: Add ctor and dtor definitions for error_category.
4561         * src/functional.cc: New. Add dtor definition for bad_function_call.
4562         * src/stdexcept.cc: Add dtor definitions for domain_error,
4563         invalid_argument, length_error, out_of_range, range_error,
4564         overflow_error, underflow_error.
4565         * src/future.cc: Add dtor definition for __future_base::_Result_base.
4566         * src/shared_ptr.cc: New. Add dtor definition for bad_weak_ptr.
4567         * src/thread.cc: Add dtor for thread::_Impl_base.
4568         * include/std/system_error: Adjust.
4569         * include/std/stdexcept: Same.
4570         * include/std/future: Same.
4571         * include/std/functional: Same.
4572         * include/std/thread: Same.
4573         * include/bits/shared_ptr_base.h: Same.
4574         * libsupc++/nested_exception.cc: New. Add dtor for nested_exception.
4575         * libsupc++/nested_exception.h: Adjust.
4576         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
4577         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Same.
4578         * config/abi/pre/gnu.ver: Add new exports.
4579
4580 2011-03-14  Benjamin Kosnik  <bkoz@redhat.com>
4581
4582         * include/bits/regex_compiler.h: Nest namespace versioning.
4583         * include/bits/regex_grep_matcher.tcc: Same.
4584         * include/bits/regex_grep_matcher.h: Same.
4585         * include/bits/regex_cursor.h: Same.
4586         * include/bits/regex_nfa.h: Same.
4587         * include/bits/regex_nfa.tcc: Same.
4588
4589         * include/bits/regex_grep_matcher.h: Version forward declarations.
4590         * include/bits/c++config: Add namespace association for __regex.
4591         * include/bits/regex.h: Make sub_match consistent.
4592
4593 2011-03-14  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4594
4595         * doc/xml/manual/abi.xml: Replace docs.sun.com URLs by their OTN
4596         equivalents.
4597         * doc/html/manual/abi.html: Regenerate.
4598
4599 2011-03-14  Tom Tromey  <tromey@redhat.com>
4600
4601         * python/libstdcxx/v6/printers.py (_use_gdb_pp): New global.
4602         Try to import `gdb.printing' module.
4603         (UniquePointerPrinter.__init__): Add 'typename' argument.
4604         (StdSlistPrinter.__init__): Likewise.
4605         (StdSlistIteratorPrinter.__init__): Likewise.
4606         (StdVectorIteratorPrinter.__init__): Likewise.
4607         (StdRbtreeIteratorPrinter.__init__): Likewise.
4608         (StdDebugIteratorPrinter.__init__): Likewise.
4609         (StdDequeIteratorPrinter.__init__): Likewise.
4610         (StdStringPrinter.__init__): Likewise.
4611         (RxPrinter, Printer): New class.
4612         (libstdcxx_printer): New global.
4613         (register_libstdcxx_printers): Rewrite.
4614         (build_libstdcxx_dictionary): Rewrite.
4615         (pretty_printers_dict): Remove.
4616
4617 2011-03-14  Andrey Zholos  <aaz@althenia.net>
4618
4619         PR libstdc++/48114
4620         * include/bits/random.h (geometric_distribution): Correct formula
4621         in comment, per C++0x.
4622         (geometric_distribution<>::param_type::param_type(double)): Fix check.
4623         (geometric_distribution<>::param_type::_M_initialize):
4624         Store log(1 - p).
4625         * include/bits/random.tcc (geometric_distribution<>::operator()):
4626         Fix computation.
4627         (binomial_distribution<>::operator()): Likewise.
4628
4629 2011-03-09  Paolo Carlini  <paolo.carlini@oracle.com>
4630
4631         * testsuite/util/testsuite_rvalref.h: Minor tweaks.
4632
4633 2011-03-09  Jonathan Wakely  <redi@gcc.gnu.org>
4634             Chris Jefferson  <chris@bubblescope.net>
4635             Paolo Carlini  <paolo.carlini@oracle.com>
4636
4637         * testsuite/util/testsuite_rvalref.h (rvalstruct_compare_by_value):
4638         New.
4639         * testsuite/25_algorithms/sort_heap/check_compare_by_value.cc:
4640         Likewise.
4641         * testsuite/25_algorithms/partial_sort/check_compare_by_value:
4642         Likewise.
4643         * testsuite/25_algorithms/stable_sort/check_compare_by_value.cc:
4644         Likewise.
4645         * testsuite/25_algorithms/sort/check_compare_by_value: Likewise.
4646
4647 2011-03-09  Chris Jefferson  <chris@bubblescope.net>
4648
4649         PR libstdc++/48038
4650         * include/bits/stl_algo.h (__merge_backward): Rename to
4651         __move_merge_backward and change to always move rather than copy.
4652         (__move_merge): New function similar to std::merge except values
4653         are moved instead of copied.
4654         (__merge_adaptive, __merge_sort_loop): Change from using std::merge
4655         and __merge_backward to __move_merge and __move_merge_backward.
4656
4657 2011-03-07  Jason Merrill  <jason@redhat.com>
4658
4659         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust
4660         expected errors.
4661
4662 2011-03-07  Benjamin Kosnik  <bkoz@redhat.com>
4663             Matthias Klose  <doko@ubuntu.com>
4664             Jonathan Wakely  <redi@gcc.gnu.org>
4665
4666         PR libstdc++/47145
4667         * acinclude.m4 (GLIBCXX_CONFIGURE_DOCBOOK): Define.
4668         * configure.ac: Use it.
4669         * doc/Makefile.am (XSL_STYLE_DIR): Set at configure time.
4670         * configure: Regenerate.
4671         * doc/Makefile.in: Regenerate.
4672
4673 2011-03-04  Benjamin Kosnik  <bkoz@chula>
4674
4675         * src/Makefile.am (inst_sources): Make source instantion files
4676         conditional.
4677         (XTEMPLATE_FLAGS): Make -fno-implicit-templates conditional.
4678         * src/Makefile.in: Regenerate.
4679         * src/valarray-inst.cc: Move to..
4680         * src/valarray.cc: ...this.
4681         * acinclude.m4 (GLIBCXX_ENABLE_EXTERN_TEMPLATE]): Define.
4682         * configure.ac (GLIBCXX_ENABLE_EXTERN_TEMPLATE): Use it.
4683         * configure: Regenerate.
4684         * include/Makefile.am (stamp-extern-template): Add.
4685         * include/Makefile.in: Regenerate.
4686
4687         * doc/xml/manual/configure.xml: Document --enable-extern-template.
4688
4689         * include/bits/locale_classes.tcc: Adjust comment.
4690         * include/bits/locale_facets.tcc: Same.
4691         * include/bits/basic_ios.tcc: Same.
4692         * include/bits/istream.tcc: Same.
4693         * include/bits/codecvt.h: Same.
4694         * include/bits/ostream.tcc: Same.
4695         * include/bits/sstream.tcc: Same.
4696         * include/bits/c++config: Same.
4697         * include/bits/basic_string.tcc: Same.
4698         * include/bits/ostream_insert.h: Same.
4699         * include/bits/locale_facets_nonio.tcc: Same.
4700         * include/bits/streambuf.tcc: Same.
4701         * include/bits/allocator.h: Same.
4702         * include/bits/fstream.tcc: Same.
4703
4704         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers.
4705
4706 2011-03-02  Benjamin Kosnik  <bkoz@redhat.com>
4707
4708         * testsuite/Makefile.am: Make clean fixups.
4709         * testsuite/Makefile.in: Regenerate.
4710
4711 2011-03-02  Marc Glisse  <marc.glisse@normalesup.org>
4712
4713         * include/std/ratio (ratio_less): Add comments.
4714
4715 2011-03-02  Marc Glisse  <marc.glisse@normalesup.org>
4716
4717         PR libstdc++/47913
4718         * include/std/ratio (ratio_add): Avoid denominator overflow.
4719         * testsuite/20_util/ratio/operations/47913.cc: New.
4720
4721 2011-02-28  Benjamin Kosnik  <bkoz@redhat.com>
4722
4723         * testsuite/20_util/hash/chi2_quality.cc: Use C++0x mode on simulators.
4724         * testsuite/20_util/hash/quality.cc: Same.
4725
4726 2011-02-28  Paolo Carlini  <paolo.carlini@oracle.com>
4727
4728         PR libstdc++/47921
4729         * include/std/streambuf (basic_streambuf<>::__safe_gbump,
4730         __safe_pbump): Add.
4731         * include/bits/streambuf.tcc (basic_streambuf<>::xgetn,
4732         xputn): Use the latter.
4733         * include/bits/streambuf_iterator.h: Likewise.
4734         * src/strstream.cc: Likewise.
4735         * src/streambuf.cc: Likewise.
4736         * src/compatibility.cc: Likewise.
4737         * src/istream.cc: Likewise.
4738         * include/bits/fstream.tcc (basic_filebuf<>::xsgetn): Use setg
4739         instead of gbump.
4740         * include/std/sstream (basic_stringbuf<>::_M_pbump): Add.
4741         * include/bits/sstream.tcc (basic_stringbuf<>::seekoff,
4742         seekpos, _M_sync): Use setg, setp, and _M_pbump.
4743         * config/abi/pre/gnu.ver: Tweak.
4744
4745 2011-02-28  Paolo Carlini  <paolo.carlini@oracle.com>
4746
4747         * testsuite/20_util/ratio/comparisons/comp3.cc: New.
4748
4749 2011-02-28  Marc Glisse  <marc.glisse@normalesup.org>
4750
4751         PR libstdc++/42622
4752         * include/std/ratio (ratio_less): Reimplement to never overflow.
4753         * testsuite/20_util/ratio/comparisons/comp2.cc: Extend.
4754
4755 2011-02-24  Benjamin Kosnik  <bkoz@redhat.com>
4756
4757         * testsuite/18_support/type_info/fundamental.cc: New.
4758
4759         * testsuite/Makefile.am: Make clean fixups.
4760         * testsuite/Makefile.in: Regenerate.
4761
4762 2011-02-19  François Dumont  <francois.cppdevs@free.fr>
4763
4764         * include/debug/string (basic_string::insert): Add iterator check and
4765         pass normal iterator to normal insert.
4766         * include/debug/macros.h (__glibcxx_check_heap,
4767         __glibcxx_check_heap_pred): Remove __glibcxx_check_valid_range,
4768         already done.
4769
4770 2011-02-17  Paolo Carlini  <paolo.carlini@oracle.com>
4771
4772         PR libstdc++/47776
4773         * testsuite/ext/vstring/hash/char/1.cc: Fix.
4774         * testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
4775
4776 2011-02-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
4777
4778         * include/bits/regex.h (basic_regex::traits_type): Add typedef.
4779         (basic_regex::basic_regex(basic_regex&&)): Add noexcept.
4780         (basic_regex::operator=(basic_regex&&)): Likewise.
4781         (basic_regex::assign(basic_regex&&)): Likewise.
4782         (operator==(sub_match,...)): Implement DR 1181.
4783         (match_results::match_results(match_results&&)): Define.
4784         (match_results::operator=(const match_results&)): Fix parameter type.
4785         (match_results::operator=(match_results&&)): Define.
4786
4787 2011-02-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
4788
4789         PR libstdc++/47724
4790         * include/bits/regex_compiler.h (_Scanner::_M_advance): Do not treat
4791         line anchors as metacharacters.
4792         * testsuite/28_regex/basic_regex/ctors/47724.cc: New.
4793
4794 2011-02-16  Paolo Carlini  <paolo.carlini@oracle.com>
4795
4796         PR libstdc++/47773
4797         * include/ext/vstring.h (hash<__gnu_cxx::__vstring>,
4798         hash<__gnu_cxx::__wvstring>, hash<__gnu_cxx::__u16vstring>,
4799         hash<__gnu_cxx::__u32vstring>): Add.
4800         * testsuite/ext/vstring/hash/char/1.cc: New.
4801         * testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
4802
4803 2011-02-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
4804
4805         * include/bits/regex.h (match_results::format): Use char_traits.
4806
4807 2011-02-16  Benjamin Kosnik  <bkoz@redhat.com>
4808
4809         * include/std/atomic: Remove atomic_address, uplift to N3225.
4810         * include/bits/atomic_0.h: Same.
4811         * include/bits/atomic_2.h: Same.
4812         * include/bits/atomic_base.h: Same.
4813         * testsuite/29_atomics/atomic_address/*: Delete.
4814
4815 2011-02-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
4816
4817         * include/bits/regex.h (sub_match::sub_match): Add.
4818         (match_results::ready): Add.
4819         (match_results::empty): Adjust.
4820         (match_results::length): Add missing dereference.
4821         (match_results::operator[],prefix,suffix): Add debug mode checks.
4822         (match_results::cend): Re-use end().
4823         (match_results::format): Adjust signatures.
4824         (operator==(match_results,match_results)): Implement.
4825         * include/bits/regex_compiler.h (_Scanner_base): Use constexpr.
4826         * include/bits/regex_constants.h (syntax_option_type): Likewise.
4827         * include/bits/regex_grep_matcher.h: Fix comment typo.
4828         (_SpecializedResults::_SpecializedResults): Simplify.
4829         * include/bits/regex_cursor.h: Fix comment typo.
4830         * include/bits/regex_nfa.h: Likewise.
4831         * testsuite/28_regex/basic_regex/ctors/basic/string_range_01_02_03.cc:
4832         Fix error code, remove xfail.
4833         * testsuite/28_regex/basic_regex/ctors/extended/
4834         string_range_01_02_03.cc: Likewise.
4835
4836 2011-02-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
4837
4838         * include/bits/regex_compiler.h: Remove unnecessary bind() calls.
4839         * include/bits/regex_nfa.h: Remove unnecessary base classes.
4840
4841 2011-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4842
4843         * configure: Regenerate.
4844
4845 2011-02-12  Paolo Carlini  <paolo.carlini@oracle.com>
4846
4847         PR libstdc++/47709
4848         * include/ext/algorithm (is_heap): In C++0x mode import from
4849         namespace std.
4850         * testsuite/ext/is_heap/47709.cc: New.
4851
4852 2011-02-12  Jakub Jelinek  <jakub@redhat.com>
4853             Jonathan Wakely  <jwakely.gcc@gmail.com>
4854
4855         PR libstdc++/47662
4856         * testsuite/17_intro/headers/c++200x/operator_names.cc: New.
4857         * testsuite/17_intro/headers/c++1998/operator_names.cc: Add comment.
4858
4859 2011-02-12  Paolo Carlini  <paolo.carlini@oracle.com>
4860
4861         * include/tr1/cmath (fabs): Define.
4862         * include/tr1/complex (acos, asin, atan): Avoid duplicate definitions
4863         in C++0x mode.
4864
4865 2011-02-12  Jonathan Wakely  <jwakely.gcc@gmail.com>
4866
4867         * testsuite/tr1/headers/c++200x/complex.cc: New.
4868
4869 2011-02-11  Johannes Singler  <singler@kit.edu>
4870
4871         PR libstdc++/47433
4872         * include/parallel/losertree.h
4873         (_LoserTreeUnguarded<>::__delete_min_insert):
4874         Add missing "using std::swap;", as for other variants.
4875
4876 2011-02-10  Benjamin Kosnik  <bkoz@redhat.com>
4877
4878         * src/Makefile.am (sources): Add regex.cc.
4879         * src/Makefile.in: Regenerate.
4880         * src/regex.cc: New.
4881         * include/bits/regex_error.h (error_type): Use constexpr.
4882         (regex_error): Move ctor and dtor out of line.
4883
4884         * testsuite/28_regex/03_requirements: To...
4885         * testsuite/28_regex/requirements: ... this.
4886         * testsuite/28_regex/04_header: To...
4887         * testsuite/28_regex/headers: ... this.
4888         * testsuite/28_regex/05_constants: To...
4889         * testsuite/28_regex/constants: ... this.
4890         * testsuite/28_regex/06_exception_type: To...
4891         * testsuite/28_regex/regex_error: ... this.
4892         * testsuite/28_regex/07_traits: To...
4893         * testsuite/28_regex/traits: ... this.
4894         * testsuite/28_regex/08_basic_regex: To...
4895         * testsuite/28_regex/basic_regex: ... this.
4896         * testsuite/28_regex/09_sub_match: To...
4897         * testsuite/28_regex/sub_match: ... this.
4898         * testsuite/28_regex/10_match_results: To...
4899         * testsuite/28_regex/match_results: ... this.
4900         * testsuite/28_regex/11_algorithms: To...
4901         * testsuite/28_regex/algorithms: ... this.
4902         * testsuite/28_regex/12_iterators: To...
4903         * testsuite/28_regex/iterators: ... this.
4904
4905 2011-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
4906
4907         PR libstdc++/47662
4908         * include/bits/c++config: Do not use alternative token.
4909         * testsuite/17_intro/headers/c++1998/operator_names.cc: New.
4910
4911 2011-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
4912
4913         * src/future.cc (future_error_category::message): Handle no_state.
4914
4915 2011-02-10  Paolo Carlini  <paolo.carlini@oracle.com>
4916
4917         * testsuite/23_containers/multimap/modifiers/erase/47628.cc: Do
4918         not test in C++0x mode.
4919         * testsuite/23_containers/map/modifiers/erase/47628.cc: Likewise.
4920         * testsuite/20_util/headers/utility/synopsis.cc: Tweak to work
4921         in C++0x mode too.
4922
4923 2011-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
4924
4925         * doc/xml/manual/status_cxx200x.xml: Update.
4926         * doc/html/*: Regenerate.
4927
4928 2011-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
4929
4930         * doc/xml/manual/debug.xml: Improve data race docs.
4931
4932 2011-02-09  Paolo Carlini  <paolo.carlini@oracle.com>
4933
4934         PR libstdc++/47668
4935         * include/debug/map.h (map): Remove unnecessary using-declaration.
4936         * include/debug/multimap.h (multimap): Likewise.
4937         * include/profile/map.h (map): Likewise.
4938         * include/profile/multimap.h (multimap): Likewise.
4939
4940 2011-02-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
4941
4942         PR libstdc++/43863
4943         * libsupc++/guard.cc (recursive_init_error::~recursive_init_error):
4944         Move to ...
4945         * libsupc++/guard_error.cc: ... new file.
4946         * libsupc++/Makefile.am: Update.
4947         * libsupc++/Makefile.in: Regenerate.
4948
4949 2011-02-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
4950
4951         * include/std/future (packaged_task::operator bool): Rename to...
4952         (packaged_task::valid): ...this.
4953         * testsuite/30_threads/packaged_task/cons/1.cc: Adjust.
4954         * testsuite/30_threads/packaged_task/cons/2.cc: Adjust.
4955         * testsuite/30_threads/packaged_task/cons/move.cc: Adjust.
4956         * testsuite/30_threads/packaged_task/cons/move_assign.cc: Adjust.
4957         * testsuite/30_threads/packaged_task/cons/alloc.cc: Adjust.
4958         * testsuite/30_threads/packaged_task/members/invoke.cc: Adjust.
4959         * testsuite/30_threads/packaged_task/members/reset.cc: Adjust.
4960         * testsuite/30_threads/packaged_task/members/reset2.cc: Adjust.
4961         * testsuite/30_threads/packaged_task/members/swap.cc: Adjust.
4962         * testsuite/30_threads/packaged_task/members/boolconv.cc: Remove.
4963         * testsuite/30_threads/packaged_task/members/valid.cc: Add.
4964
4965 2011-02-09  Paolo Carlini  <paolo.carlini@oracle.com>
4966
4967         * doc/xml/manual/io.xml: Fix typo.
4968         * doc/html/manual/streambufs.html: Likewise.
4969
4970 2011-02-09  Paolo Carlini  <paolo.carlini@oracle.com>
4971
4972         * config/abi/pre/gnu.ver: Fix.
4973
4974 2011-02-08  Benjamin Kosnik  <bkoz@redhat.com>
4975
4976         * doc/xml/manual/appendix_porting.xml: Add doc section.
4977         * doc/xml/manual/appendix_contributing.xml: Split out doc bits to...
4978         * doc/xml/manual/documentation_hacking.xml: ...here.
4979
4980         * doc/xml/manual/debug_mode.xml: Adjust.
4981         * doc/xml/manual/prerequisites.xml: Adjust.
4982         * doc/Makefile.am (xml_sources): Add dot files,
4983         documentation_hacking.xml.
4984         * doc/Makefile.in: Regenerate.
4985
4986         * doc/xml/manual/build_hacking.xml: Use absolute paths for images.
4987         * doc/xml/images/confdeps.pdf: Add.
4988
4989         * doc/html/*: Regenerate.
4990
4991 2011-02-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
4992
4993         * doc/xml/gnu/fdl-1.2.xml: Remove.
4994         * doc/xml/gnu/gpl-2.0.xml: Remove.
4995         * doc/Makefile.am: Update.
4996         * doc/Makefile.in: Regenerate.
4997
4998 2011-02-07  Paolo Carlini  <paolo.carlini@oracle.com>
4999
5000         PR libstdc++/47628
5001         * include/bits/stl_tree.h (_Rb_tree::erase(iterator), erase(iterator,
5002         iterator)): Add back in C++03 mode.
5003         * testsuite/23_containers/map/modifiers/erase/47628.cc: New.
5004         * testsuite/23_containers/multimap/modifiers/erase/47628.cc: Likewise.
5005
5006 2011-02-07  Benjamin Kosnik  <bkoz@redhat.com>
5007
5008         PR libstdc++/47560 try two
5009         * config/os/hpux/os_defines.h: Guard for C++.
5010
5011 2011-02-07  Gerald Pfeifer  <gerald@pfeifer.com>
5012
5013         * doc/xml/faq.xml: Adjust link to bug database.
5014         Remove old item on broken header files.
5015
5016 2011-02-04  Benjamin Kosnik  <bkoz@redhat.com>
5017
5018         * include/bits/regex_error.h (__throw_regex_error): Not inline.
5019         * src/functexcept.cc: Add definition.
5020         * config/abi/pre/gnu.ver: Export.
5021
5022 2011-02-04  Ralf Corsépius <ralf.corsepius@rtems.org>
5023
5024         * crossconfig.m4 (GLIBCXX_CROSSCONFIG): Add *-rtems*.
5025         * configure: Regenerate.
5026
5027 2011-02-01  Paolo Carlini  <paolo.carlini@oracle.com>
5028
5029         PR libstdc++/46914
5030         * include/bits/atomic_0.h (_ATOMIC_STORE_, _ATOMIC_MODIFY_,
5031         _ATOMIC_CMPEXCHNG_): Rename __v -> __w, and __m -> __n, to
5032         avoid name conflicts.
5033
5034 2011-02-01  Benjamin Kosnik  <bkoz@redhat.com>
5035
5036         PR libstdc++/47560
5037         * config/os/hpux/os_defines.h: Remove use of macros on namespace.
5038
5039 2011-02-01  Benjamin Kosnik  <bkoz@redhat.com>
5040
5041         * scripts/run_doxygen: Allow doxygen 1.7.0 again.
5042         * doc/doxygen/user.cfg.in (PDF_HYPERLINKS): Re-enable.
5043         (COMPACT_LATEX): Enable.
5044
5045         * include/profile/impl/profiler_container_size.h: Adjust doxygen markup.
5046         * include/profile/impl/profiler_hash_func.h: Same.
5047         * include/bits/hashtable.h: Same.
5048         * include/backward/auto_ptr.h: Same.
5049         * include/backward/strstream: Same.
5050         * include/backward/backward_warning.h: Same.
5051         * include/backward/binders.h: Same.
5052
5053 2011-02-01  Gerald Pfeifer  <gerald@pfeifer.com>
5054
5055         * doc/xml/manual/debug.xml: Use GDB instead of gdb.
5056         Adjust link to GDB manual.
5057
5058 2011-01-31  Benjamin Kosnik  <bkoz@redhat.com>
5059
5060         * include/bits/c++config (_GLIBCXX_DEPRECATED): To
5061         _GLIBCXX_USE_DEPRECATED.
5062         (_GLIBCXX_DEPRECATED_ATTR): To _GLIBCXX_DEPRECATED.
5063         * doc/xml/manual/using.xml: Same.
5064         * include/std/memory: Same.
5065         * include/std/streambuf: Same.
5066         * include/bits/shared_ptr.h: Same.
5067         * include/bits/unique_ptr.h: Same.
5068         * include/bits/shared_ptr_base.h: Same.
5069         * include/bits/stl_function.h: Same.
5070         * include/tr1/shared_ptr.h: Same.
5071         * include/backward/auto_ptr.h: Same.
5072         * include/backward/binders.h: Same.
5073
5074 2011-01-31  Paolo Carlini  <paolo.carlini@oracle.com>
5075
5076         * doc/html/ext/lwg-active.html: Update to Revision D73.
5077         * doc/html/ext/lwg-closed.html: Likewise.
5078         * doc/html/ext/lwg-defects.html: Likewise.
5079         * doc/xml/manual/intro.xml: Update status of issues 408, 539, 865.
5080
5081 2011-01-30  Benjamin Kosnik  <bkoz@redhat.com>
5082
5083         PR libstdc++/36104 part four
5084         * include/bits/c++config (_GLIBCXX_STD): Remove.
5085         (_GLIBCXX_STD_D, _GLIBCXX_PR): Now _GLIBCXX_STD_C.
5086         (_GLIBCXX_P): Now _GLIBCXX_STD_A.
5087         (_GLIBCXX_NAMESPACE_DEBUG, _GLIBCXX_NAMESPACE_PARALLEL,
5088          _GLIBCXX_NAMESPACE_PROFILE, _GLIBCXX_NAMESPACE_VERSION): Remove.
5089         (_GLIBCXX_INLINE_DEBUG, _GLIBCXX_INLINE_PARALLEL,
5090          _GLIBCXX_INLINE_PROFILE): Remove.
5091         (_GLIBCXX_BEGIN_NAMESPACE(X)): Remove.
5092         (_GLIBCXX_END_NAMESPACE): Remove.
5093         (_GLIBCXX_BEGIN_NESTED_NAMESPACE(X, Y)): Remove.
5094         (_GLIBCXX_END_NESTED_NAMESPACE): Remove.
5095         (_GLIBCXX_BEGIN_NAMESPACE_ALGO): Add.
5096         (_GLIBCXX_END_NAMESPACE_ALGO): Add.
5097         (_GLIBCXX_BEGIN_NAMESPACE_CONTAINER): Add.
5098         (_GLIBCXX_END_NAMESPACE_CONTAINER): Add.
5099         (_GLIBCXX_BEGIN_NAMESPACE_VERSION): Add.
5100         (_GLIBCXX_END_NAMESPACE_VERSION): Add.
5101         (_GLIBCXX_BEGIN_LDBL_NAMESPACE): To _GLIBCXX_BEGIN_NAMESPACE_LDBL.
5102         (_GLIBCXX_END_LDBL_NAMESPACE): To _GLIBCXX_END_NAMESPACE_LDBL.
5103         (_GLIBCXX_VISIBILITY_ATTR): Revert to _GLIBCXX_VISIBILITY.
5104         * include/*: Use new macros for namespace scope.
5105         * config/*: Same.
5106         * src/*: Same.
5107
5108         * src/Makefile.am (sources): Remove debug_list.cc, add
5109         compatibility-debug_list-2.cc.
5110         (parallel_sources): Remove parallel_list.cc, add
5111         compatibility-parallel_list-2.cc.
5112         (compatibility-parallel_list-2.[o,lo]): New rule.
5113         * src/Makefile.in: Regenerate.
5114         * src/debug_list.cc: Remove.
5115         * src/parallel_list.cc: Remove.
5116         * src/compatibility-list-2.cc: New.
5117         * src/compatibility-debug_list-2.cc: New.
5118         * src/compatibility-parallel_list-2.cc: New.
5119
5120         * doc/doxygen/user.cfg.in: Adjust macros.
5121
5122         * testsuite/20_util/auto_ptr/assign_neg.cc: Adjust line numbers, macros.
5123         * testsuite/20_util/declval/requirements/1_neg.cc: Same.
5124         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Same.
5125         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Same.
5126         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Same.
5127         * testsuite/20_util/forward/c_neg.cc: Same.
5128         * testsuite/20_util/forward/f_neg.cc: Same.
5129         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Same.
5130         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
5131         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Same.
5132         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Same.
5133         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Same.
5134         * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Same.
5135         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Same.
5136         * testsuite/23_containers/deque/requirements/dr438/
5137         constructor_1_neg.cc: Same.
5138         * testsuite/23_containers/deque/requirements/dr438/
5139         constructor_2_neg.cc: Same.
5140         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Same.
5141         * testsuite/23_containers/forward_list/capacity/1.cc: Same.
5142         * testsuite/23_containers/forward_list/requirements/dr438/
5143         assign_neg.cc: Same.
5144         * testsuite/23_containers/forward_list/requirements/dr438/
5145         constructor_1_neg.cc: Same.
5146         * testsuite/23_containers/forward_list/requirements/dr438/
5147         constructor_2_neg.cc: Same.
5148         * testsuite/23_containers/forward_list/requirements/dr438/
5149         insert_neg.cc: Same.
5150         * testsuite/23_containers/list/capacity/29134.cc: Same.
5151         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Same.
5152         * testsuite/23_containers/list/requirements/dr438/
5153         constructor_1_neg.cc: Same.
5154         * testsuite/23_containers/list/requirements/dr438/
5155         constructor_2_neg.cc: Same.
5156         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
5157         * testsuite/23_containers/vector/bool/capacity/29134.cc: Same.
5158         * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc: Same.
5159         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Same.
5160         * testsuite/23_containers/vector/requirements/dr438/
5161         constructor_1_neg.cc: Same.
5162         * testsuite/23_containers/vector/requirements/dr438/
5163         constructor_2_neg.cc: Same.
5164         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Same.
5165         * testsuite/25_algorithms/sort/35588.cc: Same.
5166         * testsuite/27_io/ios_base/cons/assign_neg.cc: Same.
5167         * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
5168         * testsuite/ext/profile/mutex_extensions_neg.cc: Same.
5169         * testsuite/ext/profile/profiler_algos.cc: Same.
5170         * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Same.
5171         * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Same.
5172         * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Same.
5173         * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Same.
5174         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
5175
5176 2011-01-30  Gerald Pfeifer  <gerald@pfeifer.com>
5177
5178         * doc/xml/manual/abi.xml: Adjust link to C++ ABI specification.
5179         Improve description of one such reference.
5180
5181 2011-01-30  Gerald Pfeifer  <gerald@pfeifer.com>
5182
5183         * doc/xml/manual/codecvt.xml: Fix link to The Austin Common
5184         Standards Revision Group.
5185         * doc/xml/manual/locale.xml: Ditto.
5186         * doc/xml/manual/messages.xml: Ditto.
5187         * doc/xml/manual/using_exceptions.xml: Ditto.
5188
5189 2011-01-28  Paolo Carlini  <paolo.carlini@oracle.com>
5190
5191         * include/bits/atomic_base.h: Do not include <stddef.h>.
5192         (kill_dependency): Uglify ret.
5193
5194 2011-01-26  Johannes Singler  <singler@kit.edu>
5195
5196         * include/parallel/numeric (inner_product, partial_sum):
5197         Qualify subsequent call with __gnu_parallel instead of
5198         _GLIBCXX_STD_P to reenable parallel execution without ambiguity.
5199         * include/parallel/algobase.h (equal): Likewise.
5200         * include/parallel/algo.h (find_first_of, search_n, merge,
5201         nth_element, partial_sort, max_element, min_element): Likewise.
5202         * testsuite/25_algorithms/headers/algorithm/
5203         parallel_algorithm_mixed1.cc (main): Add respective test cases.
5204         * testsuite/25_algorithms/headers/algorithm/
5205         parallel_algorithm_mixed2.cc (main): Likewise.
5206         * testsuite/26_numerics/headers/numeric/
5207         parallel_numeric_mixed1.cc (main): Likewise.
5208         * testsuite/26_numerics/headers/numeric/
5209         parallel_numeric_mixed2.cc (main): Likewise.
5210
5211 2011-01-24  Graham Reed  <greed@pobox.com>
5212
5213         PR libstdc++/47387
5214         * config/os/aix/ctype_inline.h (ctype<char>::is): Use _M_table if
5215         provided.
5216
5217 2011-01-24  Johannes Singler  <singler@kit.edu>
5218
5219         PR libstdc++/47433
5220         * include/parallel/losertree.h
5221         (_LoserTree<>::__delete_min_insert):
5222         Do not qualify swap with std:: for value type,
5223         but include a using directive instead.
5224         (_LoserTreeUnguarded<>::__delete_min_insert): Likewise.
5225         * include/parallel/balanced_quicksort.h (__qsb_divide):
5226         Use std::iter_swap instead of std::swap.
5227         (__qsb_local_sort_with_helping): Likewise.
5228         * include/parallel/partition.h (__parallel_partition):
5229         Likewise. (__parallel_nth_element): Likewise.
5230
5231 2011-01-24  Johannes Singler  <singler@kit.edu>
5232
5233         PR libstdc++/47437
5234         * include/parallel/multiway_merge.h (_UnguardedIterator):
5235         Remove useless "mutable" from reference declaration.
5236
5237 2011-01-21  Benjamin Kosnik  <bkoz@redhat.com>
5238
5239         * include/bits/c++config (_GLIBCXX_EXPORT_TEMPLATE): Remove.
5240         * include/debug/safe_sequence.h: Same.
5241         * include/debug/safe_iterator.h: Same.
5242         * include/std/forward_list: Same.
5243         * include/std/deque: Same.
5244         * include/std/list: Same.
5245         * include/std/random: Same.
5246         * include/std/streambuf: Same.
5247         * include/std/fstream: Same.
5248         * include/std/istream: Same.
5249         * include/std/string: Same.
5250         * include/std/ostream: Same.
5251         * include/std/sstream: Same.
5252         * include/ext/vstring.h: Same.
5253         * include/bits/basic_ios.h: Same.
5254         * include/bits/locale_classes.h: Same.
5255         * include/bits/locale_facets.h: Same.
5256         * include/bits/valarray_array.h: Same.
5257         * include/bits/locale_facets_nonio.h: Same.
5258         * include/tr1/random: Same.
5259
5260 2011-01-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
5261
5262         * doc/xml/manual/diagnostics.xml: Replace note about C++0x concepts.
5263
5264 2011-01-20  Benjamin Kosnik  <bkoz@redhat.com>
5265
5266         PR libstdc++/36104 part three
5267         * src/hashtable_c++0x.cc: Adjust namespace macros.
5268         * testsuite/util/testsuite_rvalref.h: Don't forward declare hash.
5269         * config/abi/pre/gnu-versioned-namespace.ver: Update.
5270
5271 2011-01-20  Benjamin Kosnik  <bkoz@redhat.com>
5272
5273         * include/ext/pb_ds/detail/resize_policy/
5274         hash_load_check_resize_trigger_imp.hpp: Adjust assert condition.
5275         * include/ext/pb_ds/detail/pat_trie_/
5276         constructors_destructor_fn_imps.hpp: Same.
5277         * include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp: Format.
5278         * include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Same.
5279         * include/ext/pb_ds/detail/debug_map_base.hpp: Use never_adjustor.
5280
5281         * testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Adjust
5282         iterations downward when testing in debug mode.
5283         * testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Same.
5284         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Same.
5285         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Same.
5286         * testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Same.
5287         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Same.
5288         * testsuite/ext/pb_ds/example/hash_illegal_resize.cc: Use SIZE,
5289         reduce in debug mode.
5290
5291 2011-01-19  Benjamin Kosnik  <bkoz@redhat.com>
5292
5293         PR libstdc++/36104 part two
5294         * include/bits/hashtable.h: Revert to non-nested macro usage.
5295         * include/bits/hashtable_policy.h: Same.
5296
5297 2011-01-19  Graham Reed  <greed@pobox.com>
5298
5299         PR libstdc++/47354
5300         * src/bitmap_allocator.cc (free_list::_M_get): Lock mutex.
5301
5302 2011-01-18  Benjamin Kosnik  <bkoz@redhat.com>
5303
5304         * doc/xml/images/confdeps.png: Regenerate.
5305
5306         * include/std/chrono (duration): Mark copy constructor constexpr.
5307         * testsuite/20_util/duration/cons/constexpr.cc: Add test.
5308
5309 2011-01-18  Paolo Carlini  <paolo.carlini@oracle.com>
5310
5311         * include/bits/unique_ptr.h (default_delete<>::default_delete()):
5312         Declare defaulted per DR 1517.
5313         * testsuite/util/testsuite_common_types.h
5314         (constexpr_defaulted_default_constructible): Add.
5315         * testsuite/20_util/default_delete/cons/constexpr.cc: Use it.
5316
5317 2011-01-17  Paolo Carlini  <paolo.carlini@oracle.com>
5318
5319         * include/bits/stl_queue.h (queue<>::swap, priority_queue<>::swap):
5320         Implement DR 1198.
5321         * include/bits/stl_stack.h (stack<>::swap): Likewise.
5322
5323 2011-01-16  Paolo Carlini  <paolo.carlini@oracle.com>
5324
5325         PR libstdc++/47323
5326         * testsuite/28_regex/08_basic_regex/requirements/constexpr_data.cc:
5327         Only test wregex when _GLIBCXX_USE_WCHAR_T is defined.
5328
5329 2011-01-16  Paolo Carlini  <paolo.carlini@oracle.com>
5330
5331         PR libstdc++/47320
5332         * testsuite/18_support/numeric_limits/lowest.cc:
5333         Only test wchar_t when _GLIBCXX_USE_WCHAR_T is defined.
5334
5335 2011-01-16  Paolo Carlini  <paolo.carlini@oracle.com>
5336
5337         PR libstdc++/47321
5338         * testsuite/21_strings/basic_string/requirements/typedefs.cc:
5339         Only test std::wstring when _GLIBCXX_USE_WCHAR_T is defined.
5340
5341 2011-01-16  François Dumont  <francois.cppdevs@free.fr>
5342
5343         * testsuite/23_containers/forward_list/debug/erase_after1_neg.cc: Move
5344         to this. Use _neg suffix.
5345         * testsuite/23_containers/forward_list/debug/erase_after1.cc: ...from
5346         this.
5347         * testsuite/23_containers/forward_list/debug/erase_after2_neg.cc:
5348         Same.
5349         * testsuite/23_containers/forward_list/debug/erase_after2.cc: Same.
5350         * testsuite/23_containers/forward_list/debug/erase_after3_neg.cc:
5351         Same.
5352         * testsuite/23_containers/forward_list/debug/erase_after3.cc: Same.
5353         * testsuite/23_containers/forward_list/debug/erase_after4_neg.cc:
5354         Same.
5355         * testsuite/23_containers/forward_list/debug/erase_after4.cc: Same.
5356         * testsuite/23_containers/forward_list/debug/erase_after5_neg.cc:
5357         Same.
5358         * testsuite/23_containers/forward_list/debug/erase_after5.cc: Same.
5359         * testsuite/23_containers/forward_list/debug/erase_after6_neg.cc:
5360         Same.
5361         * testsuite/23_containers/forward_list/debug/erase_after6.cc: Same.
5362         * testsuite/23_containers/forward_list/debug/erase_after7_neg.cc:
5363         Same.
5364         * testsuite/23_containers/forward_list/debug/erase_after7.cc: Same.
5365         * testsuite/23_containers/forward_list/debug/erase_after8_neg.cc:
5366         Same.
5367         * testsuite/23_containers/forward_list/debug/erase_after8.cc: Same.
5368         * testsuite/23_containers/forward_list/debug/erase_after9_neg.cc:
5369         Same.
5370         * testsuite/23_containers/forward_list/debug/erase_after9.cc: Same.
5371         * testsuite/23_containers/forward_list/debug/insert_after1_neg.cc:
5372         Same.
5373         * testsuite/23_containers/forward_list/debug/insert_after1.cc: Same.
5374         * testsuite/23_containers/forward_list/debug/insert_after2_neg.cc:
5375         Same.
5376         * testsuite/23_containers/forward_list/debug/insert_after2.cc: Same.
5377         * testsuite/23_containers/forward_list/debug/insert_after3_neg.cc:
5378         Same.
5379         * testsuite/23_containers/forward_list/debug/insert_after3.cc: Same.
5380         * testsuite/23_containers/forward_list/debug/splice_after1_neg.cc:
5381         Same.
5382         * testsuite/23_containers/forward_list/debug/splice_after1.cc: Same.
5383         * testsuite/23_containers/forward_list/debug/splice_after2_neg.cc:
5384         Same.
5385         * testsuite/23_containers/forward_list/debug/splice_after2.cc: Same.
5386         * testsuite/23_containers/forward_list/debug/splice_after3_neg.cc:
5387         Same.
5388         * testsuite/23_containers/forward_list/debug/splice_after3.cc: Same.
5389         * testsuite/23_containers/forward_list/debug/splice_after4_neg.cc:
5390         Same.
5391         * testsuite/23_containers/forward_list/debug/splice_after4.cc: Same.
5392
5393 2011-01-14  Benjamin Kosnik  <bkoz@redhat.com>
5394
5395         PR libstdc++/36104
5396         * include/Makefile.am (bits_sup_headers, stamp-bits-sup): New.
5397         * include/Makefile.in: Regenerate.
5398         * libsupc++/Makefile.am (std_HEADERS, bits_HEADERS): New.
5399         (install-stdHEADERS, install-bitsHEADERS): New.
5400         * libsupc++/Makefile.in: Regenerate.
5401
5402         * include/bits/c++config: Update for inline namespaces.
5403         * libsupc++/cxxabi-forced.h: To...
5404         * libsupc++/cxxabi_forced.h: ...this.
5405         * libsupc++/hash_bytes.h: Separate file.
5406         * libsupc++/typeinfo: Use it.
5407         * libsupc++/exception: Adjust for bits subdirectory.
5408         * libsupc++/eh_aux_runtime.cc: Same.
5409         * libsupc++/eh_ptr.cc: Same.
5410         * libsupc++/new_op.cc: Same.
5411         * libsupc++/exception_defines.h: Same.
5412         * libsupc++/nested_exception.h: Same.
5413         * libsupc++/eh_terminate.cc: Same.
5414         * libsupc++/vec.cc: Same.
5415         * libsupc++/vterminate.cc: Same.
5416         * libsupc++/exception_ptr.h: Same.
5417         * libsupc++/eh_personality.cc: Same.
5418         * libsupc++/eh_call.cc: Same.
5419         * libsupc++/new_opnt.cc: Same.
5420         * libsupc++/hash_bytes.cc: Same.
5421         * config/cpu/arm/cxxabi_tweaks.h: Same.
5422         * config/cpu/generic/cxxabi_tweaks.h: Same.
5423         * libsupc++/cxxabi.h: Same. Consolidate _GLIBCXX_NOTHROW defines.
5424         * include/std/bitset: Same.
5425         * include/ext/vstring.tcc: Same.
5426         * include/bits/hashtable.h: Same.
5427         * include/bits/functional_hash.h: Same.
5428         * include/bits/hashtable_policy.h: Same.
5429         * include/bits/basic_string.h: Same.
5430         * include/bits/istream.tcc: Same.
5431         * include/bits/ostream.tcc: Same.
5432         * include/bits/algorithmfwd.h: Same.
5433         * include/bits/basic_string.tcc: Same.
5434         * include/bits/ostream_insert.h: Same.
5435         * include/bits/fstream.tcc: Same.
5436         * include/bits/functexcept.h: Same.
5437
5438         * doc/doxygen/user.cfg.in: Adjust names.
5439
5440         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers.
5441
5442 2011-01-14  Paolo Carlini  <paolo.carlini@oracle.com>
5443
5444         * testsuite/25_algorithms/is_permutation/check_type.cc: Minor
5445         tweaks.
5446         * testsuite/25_algorithms/is_permutation/1.cc: Cosmetic changes.
5447
5448 2011-01-13  Paolo Carlini  <paolo.carlini@oracle.com>
5449
5450         * testsuite/25_algorithms/is_permutation/check_type.cc: New.
5451         * testsuite/25_algorithms/is_permutation/requirements/
5452         explicit_instantiation/2.cc: Likewise.
5453         * testsuite/25_algorithms/is_permutation/requirements/
5454         explicit_instantiation/pod.cc: Likewise.
5455         * testsuite/25_algorithms/is_permutation/1.cc: Likewise.
5456
5457 2011-01-13  John Lakos  <jlakos@bloomberg.net>
5458             Pablo Halpern  <phalpern@halpernwightsoftware.com>
5459             Paolo Carlini  <paolo.carlini@oracle.com>
5460
5461         * include/bits/stl_algo.h (is_permutation): Add, per N3068.
5462         * include/bits/algorithmfwd.h: Add.
5463
5464 2011-01-13  Jonathan Wakely  <jwakely.gcc@gmail.com>
5465
5466         PR libstdc++/47045
5467         * config/os/bsd/netbsd/ctype_base.h: Use new macros based on version.
5468
5469 2011-01-11  Paolo Carlini  <paolo.carlini@oracle.com>
5470
5471         * aclocal.m4: Regenerate.
5472
5473 2011-01-06  Paolo Carlini  <paolo.carlini@oracle.com>
5474
5475         PR libstdc++/47185
5476         * src/placeholders.cc: New.
5477         * src/Makefile.am: Adjust.
5478         * src/Makefile.in: Regenerate.
5479         * include/std/functional (placeholders::_1, _2, ..., _29): Declare
5480         extern.
5481         * config/abi/pre/gnu.ver: Export.
5482
5483 2011-01-05  François Dumont  <francois.cppdevs@free.fr>
5484
5485         * include/debug/safe_base.h (_Safe_iterator_base::_M_unlink): New.
5486         * include/src/debug.cc: Use latter
5487         * include/debug/forward_list (forward_list<>::_M_swap):  Fix to
5488         correctly handle before_begin iterators.
5489         * testsuite/23_containers/forward_list/debug/swap.cc: Remove now
5490         useless _GLIBCXX_DEBUG checks.
5491
5492 2011-01-04  Kai Tietz  <kai.tietz@onevision.com>
5493
5494         PR libstdc++/47145
5495         * configure.ac (AC_CHECK_FILE): Replaced by test -f.
5496         * configure: Regenerated.
5497
5498 2011-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
5499
5500         PR libstdc++/46922
5501         * config/abi/pre/gnu.ver: Export std::bad_function_call symbols.
5502
5503 \f
5504 Copyright (C) 2011 Free Software Foundation, Inc.
5505
5506 Copying and distribution of this file, with or without modification,
5507 are permitted in any medium without royalty provided the copyright
5508 notice and this notice are preserved.