OSDN Git Service

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