OSDN Git Service

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