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