* tree-ssa-loop-ivopts.c (alloc_iv): Lower address expressions.
[official-gcc.git] / libstdc++-v3 / ChangeLog-2012
blob3b53aece35a27377c33b43b169314c38bb76168d
1 2012-12-21  Kai Tietz  <ktietz@redhat.com>
3         * config/os/mingw32/os_defines.h (_GLIBCXX_LLP64): Define if llp64
4         abi is used.
5         * config/os/mingw32-w64/os_defines.h: Likewise.
6         * libsupc++/cxxabi.h (__base_class_type_info): Adjust
7         type of __offset_flags for llp64.
8         * libsupc++/eh_alloc.cc (EMERGENCY_OBJ_SIZE): Define proper
9         for llp64 abi.
10         (EMERGENCY_OBJ_COUNT): Likewise.
11         (bitmask_type): Likewise.
12         * libsupc++/hash_bytes.cc (_Hash_bytes): Handle llp64.
14 2012-12-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
16         * include/std/functional (_Require): Move to ...
17         * include/std/type_traits (_Require): ... here.
18         * include/bits/shared_ptr_base.h (__shared_count::_S_create_from_up):
19         Handle unique_ptr for arrays or with custom pointer types.
20         (__shared_ptr::__shared_ptr(unique_ptr<_Tp1, _Del>&&): Likewise.
21         * include/bits/unique_ptr.h (unique_ptr<_Tp[], _Dp>): Use
22         _Dp::pointer if defined. Implement proposed resolution of LWG 2118.
23         * testsuite/20_util/shared_ptr/cons/unique_ptr_array.cc: New.
24         * testsuite/20_util/unique_ptr/assign/cv_qual.cc: New.
25         * testsuite/20_util/unique_ptr/cons/array_convertible_neg.cc: New.
26         * testsuite/20_util/unique_ptr/cons/convertible_neg.cc: New.
27         * testsuite/20_util/unique_ptr/cons/cv_qual.cc: New.
28         * testsuite/20_util/unique_ptr/modifiers/cv_qual.cc: New.
29         * testsuite/20_util/unique_ptr/requirements/pointer_type_array.cc: New.
30         * testsuite/20_util/shared_ptr/cons/unique_ptr.cc: Adjust comments.
31         * testsuite/20_util/unique_ptr/cons/pointer_array_convertible_neg.cc:
32         Likewise.
33         * testsuite/20_util/unique_ptr/requirements/pointer_type.cc: Likewise.
34         * testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line number.
35         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
36         * testsuite/20_util/default_delete/48631_neg.cc: Likewise.
37         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
38         * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise.
39         * testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Adjust
40         dg-error text.
41         * testsuite/20_util/unique_ptr/cons/ptr_deleter_neg.cc: Use
42         different instantiations so static_assert fails for each.
44 2012-12-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
46         PR libstdc++/55741
47         * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Check for Sleep.
48         * config.h.in: Regenerate.
49         * configure: Regenerate.
50         * src/c++11/thread.cc (__sleep_for): Use Sleep if available.
52 2012-12-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
54         * doc/xml/manual/abi.xml: Update URLs for C++ ABI.
55         * doc/xml/manual/policy_data_structures_biblio.xml: Add xmlns
56         attribute.
57         * doc/xml/manual/debug_mode.xml: Give filenames to chunks.
58         * doc/xml/manual/diagnostics.xml: Likewise.
59         * doc/xml/manual/extensions.xml: Likewise.
60         * doc/xml/manual/bitmap_allocator.xml: Likewise.
61         * doc/xml/manual/mt_allocator.xml: Likewise.
62         * doc/xml/manual/policy_data_structures.xml: Likewise.
63         * doc/xml/manual/parallel_mode.xml: Likewise.
64         * doc/xml/manual/profile_mode.xml: Likewise.
65         * doc/xml/manual/spine.xml: Likewise. Update copyright years.
66         * doc/html/*: Regenerate.
68 2012-12-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
70         * include/std/future (__async_sfinae_helper): Remove.
72 2012-12-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
74         * src/c++11/thread.cc (execute_native_thread_routine): Do not swallow
75         __forced_unwind exceptions.
76         * testsuite/30_threads/thread/native_handle/cancel.cc: New.
78 2012-12-14  Steve Ellcey  <sellcey@mips.com>
80         * testsuite/21_strings/basic_string/append/wchar_t/3.cc: Shrink
81         memory usage under simulator.
82         * testsuite/21_strings/basic_string/cons/wchar_t/6.cc: Ditto.
83         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/10.cc:
84         Ditto.
85         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/11.cc:
86         Ditto.
88 2012-12-13  Steve Ellcey  <sellcey@mips.com>
90         * testsuite/21_strings/basic_string/capacity/char/18654.cc: Shrink
91         memory usage under simulator.
92         * testsuite/21_strings/basic_string/capacity/wchar_t/18654.cc: Ditto.
93         * testsuite/22_locale/collate/transform/char/28277.cc: Ditto.
94         * testsuite/22_locale/collate/transform/wchar_t/28277.cc: Ditto.
96 2012-12-12  Benjamin Kosnik  <bkoz@redhat.com>
98         * doc/xml/manual/documentation_hacking.xml: Fix validation issue.
100 2012-12-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
102         PR libstdc++/55631
103         * include/ext/alloc_traits.h: Include missing header.
104         * include/ext/pointer.h: Likewise.
105         * include/ext/string_conversions.h: Require C++11.
106         * libsupc++/initializer_list: Reindent.
108 2012-12-10  Benjamin Kosnik  <bkoz@redhat.com>
110         * doc/Makefile.am (xml_sources_manual): Add
111         policy_data_structures_biblio.xml.
112         (${docbook_outdir}/latex): Add.
113         (doc-xml-validate-docbook): Split into..
114         (doc-xml-validate-dtd-db):... this for DTD.
115         (doc-xml-validate-rng-db):... this for Relax NG.
116         (doc-pdf-docbook-dirs): Add.
117         (doc-pdf-docbook-pre): Add.
118         * doc/xml/manual/build_hacking.xml: Add literal markup.
119         * doc/xml/manual/documentation_hacking.xml: Clean whitespace in
120         <filename> markup. Add notes about debugging the generation process.
121         * doc/xml/manual/policy_data_structures.xml: Split biblio into...
122         * doc/xml/manual/policy_data_structures_biblio.xml: ... this. New.
123         * doc/xml/manual/test_policy_data_structures.xml: Fixup <filename>
124         markup.
126 2012-12-10  Matthias Klose  <doko@ubuntu.com>
128         * src/Makefile.am (libstdc++-symbols.ver): Use CONFIG_HEADER.
129         * src/Makefile.in: Regenerate.
131 2012-12-09  Andreas Schwab  <schwab@linux-m68k.org>
133         * testsuite/lib/libstdc++.exp (dg-test): Unset testname_with_flags
134         after running the test.
136 2012-12-04  Andreas Schwab  <schwab@linux-m68k.org>
138         * include/Makefile.am (${host_builddir}/c++config.h): Replace
139         [<space><tab>] by [<tab><space>].
140         * include/Makefile.in: Regenerate.
142 2012-12-04  Steven Bosscher  <steven@gcc.gnu.org>
144         * include/Makefile.am: Fix regexp broken by previous commit.
145         * include/Makefile.in: Likewise.
147 2012-12-03  Benjamin Kosnik  <bkoz@redhat.com>
149         * include/ext/pb_ds/detail/cc_hash_table_map_/standard_policies.hpp:
150         Remove.
151         * include/ext/pb_ds/detail/gp_hash_table_map_/standard_policies.hpp:
152         Remove.
153         * include/Makefile.am (pb_headers): Remove include files.
154         * include/Makefile.in: Regenerated.
156 2012-12-01  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
158         PR libstdc++/55503
159         * testsuite/30_threads/condition_variable/members/53841.cc: Add
160         hppa*-hp-hpux11* to -pthread dg-options.
162 2012-11-29  Kai Tietz  <ktietz@redhat.com>
164         PR target/55445
165         * libsupc++/eh_personaltity.cc (__SEH__): Additional check
166         for not being SjLj.
168 2012-11-28  Andrew Pinski  <apinski@cavium.com>
170         PR bootstrap/54279
171         * scripts/testsuite_flags.in (--build-cxx): Use xg++ instead of g++.
172         * testsuite/lib/libstdc++.exp (libstdc++_init): Likewise.
174 2012-11-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
176         * include/std/functional (_Mem_fn): Constrain function call operators
177         to avoid ambiguities. Use perfect forwarding.
178         * testsuite/20_util/function_objects/mem_fn/55463.cc: Additional
179         tests.
180         * testsuite/20_util/function_objects/mem_fn/forward.cc: New.
181         * testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line numbers.
183 2012-11-27  Ollie Wild  <aaw@google.com>
185         * include/bits/stl_tree.h (@headername): Fix incorrect Doxygen macro
186         invocation.
188 2012-11-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
190         * include/std/functional (__is_socketlike): Change from class
191         template to alias template.
193 2012-11-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
195         PR libstdc++/55463
196         * include/std/functional (_Mem_fn): Handle rvalue objects. Add
197         noexcept-specifications.
198         * testsuite/20_util/function_objects/mem_fn/55463.cc: New.
199         * testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line numbers.
201 2012-11-23  Jonathan Wakely  <jwakely.gcc@gmail.com>
203         PR libstdc++/52680
204         * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Check for usleep and
205         sleep if nanosleep is not available. Bump libtool revision.
206         * config.h.in: Regenerate.
207         * configure: Likewise.
208         * config/abi/pre/gnu.ver (GLIBCXX_3.4.18): Add __sleep_for.
209         * include/std/thread (this_thread::__sleep_for): Add.
210         (this_thread::yield, this_thread::sleep_until, this_thread::sleep_for):
211         Declare unconditionally.
212         * src/c++11/thread.cc (this_thread::__sleep_for): Define.
213         * testsuite/lib/libstdc++.exp (check_v3_target_nanosleep): Rename to
214         check_v3_target_sleep.
215         * testsuite/lib/dg-options.exp (dg-require-nanosleep): Rename to
216         dg-require-sleep.
217         * testsuite/30_threads/condition_variable_any/53830.cc: Update.
218         * testsuite/30_threads/this_thread/2.cc: Likewise.
219         * testsuite/30_threads/this_thread/3.cc: Likewise.
220         * testsuite/30_threads/this_thread/4.cc: Likewise.
221         * testsuite/30_threads/async/54297.cc: Likewise.
223 2012-11-20  Paolo Carlini  <paolo.carlini@oracle.com>
225         PR libstdc++/55413
226         * include/bits/hashtable.h (_Hashtable<>::_M_rehash_aux): Initialize
227         __bbegin_bkt and __prev_bkt to avoid uninitialized warnings.
228         * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
229         dg-error line number.
231 2012-11-20  Matthias Klose  <doko@ubuntu.com>
233         * doc/doxygen/user.cfg.in (ALIASES). Escape sharp braces.
234         * include/bits/allocator.h: Escape sharp braces in comment.
235         * include/profile/impl/profiler_algos.h: Likewise.
237 2012-11-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
239         * include/ext/array_allocator.h: Replace uses of
240         __GXX_EXPERIMENTAL_CXX0X__ with __cplusplus.
242 2012-11-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
244         * testsuite/20_util/allocator/requirements/typedefs.cc: Check rebind
245         and improve propagate_on_container_move_assignment check.
247 2012-11-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
249         * include/bits/stl_algo.h (reverse_copy): Update comment per DR 2074.
250         * include/bits/unordered_map.h: Apply DR 2005 resolution.
251         * doc/xml/manual/status_cxx2011.xml: Update per DR 2048.
252         * include/bits/allocator.h (allocator): Apply DR 2103 resolution.
253         * include/ext/array_allocator.h: Likewise.
254         * include/ext/bitmap_allocator.h: Likewise.
255         * include/ext/malloc_allocator.h: Likewise.
256         * include/ext/mt_allocator.h: Likewise.
257         * include/ext/new_allocator.h: Likewise.
258         * include/ext/pool_allocator.h: Likewise.
259         * include/ext/throw_allocator.h: Likewise.
260         * include/ext/alloc_traits.h (__allocator_always_compares_equal): Add
261         additional specializations.
262         * include/std/functional: Add comment about DR resolution.
263         * include/std/future: Likewise.
264         * include/std/scoped_allocator: Likewise.
265         * include/std/thread: Likewise.
266         * testsuite/20_util/allocator/requirements/typedefs.cc: New.
267         * testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line numbers.
269 2012-11-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
271         * include/bits/hashtable.h: Improve comments.
272         * include/bits/hashtable_policy.h: Likewise.
274 2012-11-17  Paolo Carlini  <paolo.carlini@oracle.com>
276         PR libstdc++/55363
277         * include/std/array (tuple_size, tuple_element): Move out
278         NAMESPACE_CONTAINER.
279         * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
280         dg-error line numbers.
281         * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
282         Likewise.
284 2012-11-16  François Dumont  <fdumont@gcc.gnu.org>
286         * include/bits/hashtable_policy.h (_Prime_rehash_policy): Remove
287         automatic shrink.
288         (_Prime_rehash_policy::_M_bkt_for_elements): Do not call
289         _M_next_bkt anymore.
290         (_Prime_rehash_policy::_M_next_bkt): Move usage of
291         _S_growth_factor ...
292         (_Prime_rehash_policy::_M_need_rehash): ... here.
293         * include/bits/hashtable.h (_Hashtable<>): Adapt.
294         * testsuite/performance/23_containers/insert_erase/41975.cc: Add
295         _USE_TR1 to force build using std::tr1 container.
296         * testsuite/performance/23_containers/insert/unordered_set.cc:
297         Likewise.
298         * testsuite/performance/23_containers/insert/54075.cc: New.
300 2012-11-16  Tom Tromey  <tromey@redhat.com>
302         * testsuite/libstdc++-prettyprinters/whatis.cc: New file.
303         * testsuite/lib/gdb-test.exp (whatis-test): New proc.
304         (gdb-test): Handle 'whatis' tests.
305         (gdb_batch_check): New proc.
306         (gdb_version_check): Rewrite to use gdb_batch_check.
307         * python/libstdcxx/v6/printers.py: Import gdb.types.
308         (FilteringTypePrinter): New class.
309         (add_one_type_printer, register_type_printers): New functions.
310         (register_libstdcxx_printers): Call register_type_printers.
312 2012-11-15  Jonathan Wakely  <jwakely.gcc@gmail.com>
314         PR libstdc++/53841
315         * include/std/condition_variable (condition_variable::wait_until):
316         Handle clocks with higher resolution than __clock_t.
317         (condition_variable::__wait_until_impl): Remove unnecessary _Clock
318         parameter.
319         * testsuite/30_threads/condition_variable/members/53841.cc: New.
321 2012-11-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
323         PR libstdc++/55320
324         * include/std/functional (function::function(F)): Set _M_manager after
325         operations that could throw.
326         (_Function_base::_Ref_manager::_M_init_functor): Use addressof.
327         * include/tr1/functional
328         (_Function_base::_Ref_manager::_M_init_functor): Use addressof.
329         (_Function_base::_Base_manager::_M_get_pointer): Likewise.
330         * testsuite/20_util/function/cons/55320.cc: New.
331         * testsuite/20_util/function/cons/addressof.cc: New.
332         * testsuite/20_util/function/cons/callable.cc: Remove header.
333         * testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line numbers.
334         * testsuite/tr1/3_function_objects/function/10.cc: New.
336 2012-11-14  Uros Bizjak  <ubizjak@gmail.com>
338         * testsuite/26_numerics/complex/abi_tag.cc: Adjust expected
339         demangling for 128bit long-double targets.
341 2012-11-12  Jonathan Wakely  <jwakely.gcc@gmail.com>
343         * include/std/future (atomic_future): Remove declaration of
344         non-standard name.
346 2012-11-11  Jason Merrill  <jason@redhat.com>
348         * include/std/complex (real, imag): Add ABI tag in C++11 mode.
350 2012-11-11  Andreas Schwab  <schwab@linux-m68k.org>
352         * doc/xml/chapter.txml: Remove whitespace inside <keyword>.
353         * doc/xml/class.txml: Likewise.
354         * doc/xml/manual/abi.xml: Likewise.
355         * doc/xml/manual/algorithms.xml: Likewise.
356         * doc/xml/manual/allocator.xml: Likewise.
357         * doc/xml/manual/appendix_contributing.xml: Likewise.
358         * doc/xml/manual/appendix_free.xml: Likewise.
359         * doc/xml/manual/appendix_porting.xml: Likewise.
360         * doc/xml/manual/atomics.xml: Likewise.
361         * doc/xml/manual/auto_ptr.xml: Likewise.
362         * doc/xml/manual/backwards_compatibility.xml: Likewise.
363         * doc/xml/manual/bitmap_allocator.xml: Likewise.
364         * doc/xml/manual/build_hacking.xml: Likewise.
365         * doc/xml/manual/codecvt.xml: Likewise.
366         * doc/xml/manual/concurrency.xml: Likewise.
367         * doc/xml/manual/concurrency_extensions.xml: Likewise.
368         * doc/xml/manual/configure.xml: Likewise.
369         * doc/xml/manual/containers.xml: Likewise.
370         * doc/xml/manual/ctype.xml: Likewise.
371         * doc/xml/manual/debug.xml: Likewise.
372         * doc/xml/manual/debug_mode.xml: Likewise.
373         * doc/xml/manual/diagnostics.xml: Likewise.
374         * doc/xml/manual/extensions.xml: Likewise.
375         * doc/xml/manual/internals.xml: Likewise.
376         * doc/xml/manual/intro.xml: Likewise.
377         * doc/xml/manual/io.xml: Likewise.
378         * doc/xml/manual/iterators.xml: Likewise.
379         * doc/xml/manual/locale.xml: Likewise.
380         * doc/xml/manual/localization.xml: Likewise.
381         * doc/xml/manual/messages.xml: Likewise.
382         * doc/xml/manual/mt_allocator.xml: Likewise.
383         * doc/xml/manual/numerics.xml: Likewise.
384         * doc/xml/manual/parallel_mode.xml: Likewise.
385         * doc/xml/manual/policy_data_structures.xml: Likewise.
386         * doc/xml/manual/prerequisites.xml: Likewise.
387         * doc/xml/manual/profile_mode.xml: Likewise.
388         * doc/xml/manual/shared_ptr.xml: Likewise.
389         * doc/xml/manual/status_cxx1998.xml: Likewise.
390         * doc/xml/manual/status_cxx2011.xml: Likewise.
391         * doc/xml/manual/status_cxxtr1.xml: Likewise.
392         * doc/xml/manual/status_cxxtr24733.xml: Likewise.
393         * doc/xml/manual/strings.xml: Likewise.
394         * doc/xml/manual/support.xml: Likewise.
395         * doc/xml/manual/test.xml: Likewise.
396         * doc/xml/manual/using_exceptions.xml: Likewise.
397         * doc/xml/manual/utilities.xml: Likewise.
398         * doc/xml/spine.xml: Likewise.
400         * acinclude.m4 (GLIBCXX_CONFIGURE_DOCBOOK): Also check for
401         /usr/share/xml/docbook/stylesheet/nwalsh5/current.
402         * configure: Regenerate.
404 2012-11-11  Gerald Pfeifer  <gerald@pfeifer.com>
406         * doc/xml/manual/policy_data_structures.xml: Update reference
407         for select.
409 2012-11-10  Jason Merrill  <jason@redhat.com>
411         * many: Replace uses of __GXX_EXPERIMENTAL_CXX0X__ with __cplusplus.
413 2012-11-08  François Dumont  <fdumont@gcc.gnu.org>
415         PR libstdc++/54075
416         * include/bits/hashtable.h (_Hashtable<>::rehash): Reset hash
417         policy state if no rehash.
418         * testsuite/23_containers/unordered_set/modifiers/reserve.cc
419         (test02): New.
421 2012-11-08  Paolo Carlini  <paolo.carlini@oracle.com>
423         * testsuite/23_containers/unordered_multimap/insert/55028-debug.cc:
424         Don't pass -D_GLIBCXX_DEBUG by hand (check-debug does).
426 2012-11-08  Florian Weimer  <fweimer@redhat.com>
428         * testsuite/18_support/cxa_vec.cc: Fix typo in comment.
430 2012-11-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
432         * include/profile/iterator_tracker.h (operator++): Fix returning
433         dangling reference.
434         (operator--): Likewise.
436 2012-11-07  Paolo Carlini  <paolo.carlini@oracle.com>
438         * include/debug/array (_GLIBCXX_THROW_OR_ABORT): Move...
439         * include/bits/c++config: ... here.
440         * include/bits/shared_ptr_base.h (__throw_bad_weak_ptr): Use it.
441         * include/ext/pb_ds/exception.hpp: Likewise.
442         * include/ext/throw_allocator.h (__throw_forced_error): Likewise.
443         * include/ext/concurrence.h (__throw_concurrence_lock_error,
444         __throw_concurrence_unlock_error, __throw_concurrence_broadcast_error,
445         __throw_concurrence_wait_error): Likewise.
446         * include/tr1/shared_ptr.h (__throw_bad_weak_ptr): Likewise.
447         * include/tr1/functional (function<_Res(_ArgTypes...)>::operator()
448         (_ArgTypes...)): Likewise.
449         * libsupc++/eh_aux_runtime.cc (__cxxabiv1::__cxa_bad_cast,
450         __cxxabiv1::__cxa_bad_typeid): Likewise.
451         * libsupc++/vec.cc (compute_size): Likewise.
452         * libsupc++/new_op.cc (operator new (std::size_t)): Likewise.
453         * src/c++11/functexcept.cc: Likewise.
454         * testsuite/util/io/illegal_input_error.hpp
455         (__throw_illegal_input_error): Likewise.
456         * libsupc++/eh_personality.cc: Avoid warning with -fno-exceptions.
457         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error line
458         numbers.
459         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc:
460         Likewise.
461         * testsuite/23_containers/array/tuple_interface/
462         tuple_element_debug_neg.cc: Likewise.
463         * testsuite/23_containers/array/tuple_interface/get_debug_neg.cc:
464         Likewise.
465         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
467 2012-11-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
469         * include/bits/stl_vector.h (vector(size_type)): Add missing allocator
470         parameter.
471         * include/bits/stl_bvector.h: Likewise.
472         * include/debug/vector (vector(size_type)): Likewise.
473         * include/profile/vector (vector(size_type)): Likewise. Pass allocator
474         to base constructor.
475         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
476         Adjust dg-error line numbers.
477         * testsuite/23_containers/vector/requirements/dr438/
478         constructor_1_neg.cc: Likewise.
479         * testsuite/23_containers/vector/requirements/dr438/
480         constructor_2_neg.cc: Likewise.
481         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
482         Likewise.
484 2012-11-06  Paolo Carlini  <paolo.carlini@oracle.com>
486         PR libstdc++/51850
487         * include/debug/array: New, debug-mode implementation.
488         * include/profile/array: New.
489         * include/std/array: Adjust.
490         * include/std/tuple: Just include <array>.
491         * include/Makefile.am: Add.
492         * include/Makefile.in: Regenerate.
493         * testsuite/23_containers/array/debug/front1_neg.cc: New.
494         * testsuite/23_containers/array/debug/
495         square_brackets_operator1_neg.cc: Likewise.
496         * testsuite/23_containers/array/debug/front2_neg.cc: Likewise.
497         * testsuite/23_containers/array/debug/
498         square_brackets_operator2_neg.cc: Likewise.
499         * testsuite/23_containers/array/debug/back1_neg.cc: Likewise.
500         * testsuite/23_containers/array/debug/back2_neg.cc: Likewise.
501         * testsuite/23_containers/array/tuple_interface/get_neg.cc: Tweak
502         to run only in normal-mode.
503         * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
504         Likewise.
505         * testsuite/23_containers/array/tuple_interface/get_debug_neg.cc: New.
506         * testsuite/23_containers/array/tuple_interface/
507         tuple_element_debug_neg.cc: Likewise.
509 2012-11-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
511         * testsuite/20_util/shared_ptr/cons/55123.cc: Remove duplicate
512         include.
514 2012-11-06  Paolo Carlini  <paolo.carlini@oracle.com>
516         * include/bits/atomic_base.h: Don't include <cstddef>, use nullptr.
517         * include/std/atomic: Likewise.
518         * include/tr2/dynamic_bitset: Likewise.
520         * libsupc++/vec.cc (compute_size(std::size_t, std::size_t,
521         std::size_t)): Fix for -fno-exceptions.
523 2012-11-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
525         * include/profile/map.h (map::emplace_hint): Add missing return.
527 2012-11-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
529         * include/profile/deque: Constrain InputIterator parameters.
530         * include/profile/forward_list: Likewise.
531         * include/profile/list: Likewise.
532         * include/profile/map.h: Likewise.
533         * include/profile/multimap.h: Likewise.
534         * include/profile/set.h: Likewise.
535         * include/profile/multiset.h: Likewise.
536         * include/profile/vector: Likewise.
538 2012-11-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
540         * include/profile/forward_list: Update to meet allocator-aware
541         requirements.
542         * include/debug/forward_list: Likewise.
543         * include/debug/vector: Verify allocators are swapped or equal.
544         * include/debug/macros.h (__glibcxx_check_equal_allocs): Define.
545         * include/debug/formatter.h: Add new debug message.
546         * src/c++11/debug.cc: Likewise.
547         * testsuite/23_containers/forward_list/allocator/swap.cc: Do not
548         swap containers with non-propagating, non-equal allocators.
549         * testsuite/23_containers/vector/allocator/swap.cc: Likewise.
551 2012-11-05  Benjamin Kosnik  <bkoz@redhat.com>
552             Oleg Smolsky  <oleg@smolsky.net>
554         PR libstdc++/55028
555         *  config/abi/pre/gnu-versioned-namespace.ver: Add symbols.
556         * testsuite/23_containers/unordered_multimap/insert/55028-debug.cc: New.
558 2012-10-05  François Dumont  <fdumont@gcc.gnu.org>
560         * include/ext/throw_allocator.h (__throw_value_base): Add move
561         semantic, not throwing.
562         (__throw_value_limit): Likewise.
563         (__throw_value_random): Likewise.
564         * testsuite/util/exception/safety.h: Add validation of C++11
565         methods emplace/emplace_front/emplace_back/emplace_hint.
566         * testsuite/util/testsuite_container_traits.h: Signal emplace
567         support on deque, forward_list, list and vector.
568         * testsuite/23_containers/deque/requirements/exception/
569         propagation_consistent.cc: Remove dg-do run fail.
571 2012-11-05  Paolo Carlini  <paolo.carlini@oracle.com>
573         PR libstdc++/55215
574         * include/bits/random.tcc (mersenne_twister_engine<>::seed(_Sseq&)):
575         Assign state_size to _M_p.
576         * testsuite/26_numerics/random/mersenne_twister_engine/cons/55215.cc:
577         New.
578         * testsuite/26_numerics/random/independent_bits_engine/cons/55215.cc:
579         Likewise.
580         * testsuite/26_numerics/random/shuffle_order_engine/cons/55215.cc:
581         Likewise.
582         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
583         55215.cc: Likewise.
584         * testsuite/26_numerics/random/discard_block_engine/cons/55215.cc:
585         Likewise.
586         * testsuite/26_numerics/random/linear_congruential_engine/cons/
587         55215.cc: Likewise.
589 2012-11-03  Florian Weimer  <fweimer@redhat.com>
591         * libsupc++/vec.cc (compute_size): New.
592         (__cxa_vec_new2, __cxa_vec_new3): Use it.
593         * testsuite/18_support/cxa_vec.cc: New.
595 2012-11-03  Robert Mason  <rbmj@verizon.net>
597         * config/os/vxworks/os_defines.h:
598         Keep vxWorks from defining min()/max() as macros
600 2012-11-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
602         * doc/html/*: Regenerate.
604 2012-11-02  Gerald Pfeifer  <gerald@pfeifer.com>
606         * doc/xml/manual/configure.xml: Adjust GNU libc link.
608         * doc/xml/manual/debug.xml: Adjust GDB documentation link.
609         Use GCC instead of gcc.
611         * doc/xml/manual/prerequisites.xml: Remove detailed reference
612         to binutils downloads.
614 2012-11-02  Paolo Carlini  <paolo.carlini@oracle.com>
616         PR libstdc++/55169
617         * include/bits/random.h: Remove all uses of param().
618         (chi_squared_distribution<>::__generate_impl(_ForwardIterator,
619         _ForwardIterator, _UniformRandomNumberGenerator&)): Declare
620         * include/bits/random.tcc: ... define.
621         * include/ext/random: Remove all uses of param().
623 2012-11-02  Gerald Pfeifer  <gerald@pfeifer.com>
625         * doc/xml/manual/allocator.xml: Update reference to Hoard.
626         Update reference to Berger's OOPSLA 2002 paper.
628 2012-11-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
630         * python/libstdcxx/v6/printers.py (Tr1HashtableIterator): Update.
631         (StdForwardListPrinter): Likewise.
633 2012-11-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
635         * include/bits/forward_list.h (forward_list(size_type)): Add missing
636         allocator parameter.
637         (_Fwd_list_node_base): Use NSDMI and define constructor as defaulted.
638         (_Fwd_list_node::_M_value): Replace with uninitialized storage.
639         (_Fwd_list_node::_M_valptr()): Define functions to access storage.
640         (_Fwd_list_iterator, _Fwd_list_const_iterator): Use _M_valptr.
641         (_Fwd_list_base::_M_create_node): Only use allocator to construct the
642         element not the node.
643         * include/bits/forward_list.tcc (_Fwd_list_base::_M_erase_after): Only
644         use allocator to destroy the element not the node.
645         * testsuite/23_containers/forward_list/cons/11.cc: Remove unused
646         headers.
647         * testsuite/23_containers/forward_list/cons/12.cc: Likewise.
648         * testsuite/23_containers/forward_list/cons/13.cc: New.
649         * testsuite/23_containers/forward_list/cons/14.cc: New.
651 2012-11-02  Gerald Pfeifer  <gerald@pfeifer.com>
653         * doc/xml/manual/codecvt.xml: Fix reference to Austin Common
654         Standards Revision Group.
655         * doc/xml/manual/messages.xml: Ditto.
656         * doc/xml/manual/using_exceptions.xml: Ditto.
658         * doc/xml/manual/messages.xml: Fix reference to GNU gettext.
660         * doc/xml/manual/policy_data_structures.xml: Fix reference to
661         STL at SGI.
662         Update reference to COM at Microsoft.
663         Update reference to Worst-case efficient priority queues at ACM.
665 2012-11-01  Jonathan Wakely  <jwakely.gcc@gmail.com>
667         * testsuite/18_support/initializer_list/range_access.cc: Fix copying
668         permission statement.
669         * testsuite/20_util/specialized_algorithms/uninitialized_copy/
670         808590.cc: Likewise.
671         * testsuite/20_util/specialized_algorithms/uninitialized_copy/
672         move_iterators/1.cc: Likewise.
673         * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
674         move_iterators/1.cc: Likewise.
675         * testsuite/21_strings/basic_string/capacity/char/shrink_to_fit.cc:
676         Likewise.
677         * testsuite/21_strings/basic_string/capacity/wchar_t/shrink_to_fit.cc:
678         Likewise.
679         * testsuite/21_strings/basic_string/range_access/char/1.cc: Likewise.
680         * testsuite/21_strings/basic_string/range_access/wchar_t/1.cc:
681         Likewise.
682         * testsuite/23_containers/array/element_access/at_neg.cc: Likewise.
683         * testsuite/23_containers/array/range_access.cc: Likewise.
684         * testsuite/23_containers/deque/capacity/29134-2.cc: Likewise.
685         * testsuite/23_containers/deque/capacity/29134.cc: Likewise.
686         * testsuite/23_containers/deque/capacity/shrink_to_fit.cc: Likewise.
687         * testsuite/23_containers/deque/range_access.cc: Likewise.
688         * testsuite/23_containers/deque/requirements/do_the_right_thing.cc:
689         Likewise.
690         * testsuite/23_containers/forward_list/capacity/1.cc: Likewise.
691         * testsuite/23_containers/forward_list/cons/1.cc: Likewise.
692         * testsuite/23_containers/forward_list/cons/10.cc: Likewise.
693         * testsuite/23_containers/forward_list/cons/11.cc: Likewise.
694         * testsuite/23_containers/forward_list/cons/12.cc: Likewise.
695         * testsuite/23_containers/forward_list/cons/2.cc: Likewise.
696         * testsuite/23_containers/forward_list/cons/3.cc: Likewise.
697         * testsuite/23_containers/forward_list/cons/4.cc: Likewise.
698         * testsuite/23_containers/forward_list/cons/5.cc: Likewise.
699         * testsuite/23_containers/forward_list/cons/6.cc: Likewise.
700         * testsuite/23_containers/forward_list/cons/7.cc: Likewise.
701         * testsuite/23_containers/forward_list/cons/8.cc: Likewise.
702         * testsuite/23_containers/forward_list/cons/9.cc: Likewise.
703         * testsuite/23_containers/forward_list/debug/clear.cc: Likewise.
704         * testsuite/23_containers/forward_list/debug/erase_after1_neg.cc:
705         Likewise.
706         * testsuite/23_containers/forward_list/debug/erase_after2_neg.cc:
707         Likewise.
708         * testsuite/23_containers/forward_list/debug/erase_after3_neg.cc:
709         Likewise.
710         * testsuite/23_containers/forward_list/debug/erase_after4_neg.cc:
711         Likewise.
712         * testsuite/23_containers/forward_list/debug/erase_after5_neg.cc:
713         Likewise.
714         * testsuite/23_containers/forward_list/debug/erase_after6_neg.cc:
715         Likewise.
716         * testsuite/23_containers/forward_list/debug/erase_after7_neg.cc:
717         Likewise.
718         * testsuite/23_containers/forward_list/debug/erase_after8_neg.cc:
719         Likewise.
720         * testsuite/23_containers/forward_list/debug/erase_after9_neg.cc:
721         Likewise.
722         * testsuite/23_containers/forward_list/debug/insert_after1_neg.cc:
723         Likewise.
724         * testsuite/23_containers/forward_list/debug/insert_after2_neg.cc:
725         Likewise.
726         * testsuite/23_containers/forward_list/debug/insert_after3_neg.cc:
727         Likewise.
728         * testsuite/23_containers/forward_list/debug/move_constructor.cc:
729         Likewise.
730         * testsuite/23_containers/forward_list/debug/splice_after.cc: Likewise.
731         * testsuite/23_containers/forward_list/debug/splice_after1_neg.cc:
732         Likewise.
733         * testsuite/23_containers/forward_list/debug/splice_after2_neg.cc:
734         Likewise.
735         * testsuite/23_containers/forward_list/debug/splice_after3_neg.cc:
736         Likewise.
737         * testsuite/23_containers/forward_list/debug/splice_after4_neg.cc:
738         Likewise.
739         * testsuite/23_containers/forward_list/debug/splice_after5_neg.cc:
740         Likewise.
741         * testsuite/23_containers/forward_list/debug/splice_after6_neg.cc:
742         Likewise.
743         * testsuite/23_containers/forward_list/debug/splice_after7_neg.cc:
744         Likewise.
745         * testsuite/23_containers/forward_list/debug/swap.cc: Likewise.
746         * testsuite/23_containers/forward_list/modifiers/1.cc: Likewise.
747         * testsuite/23_containers/forward_list/modifiers/2.cc: Likewise.
748         * testsuite/23_containers/forward_list/modifiers/3.cc: Likewise.
749         * testsuite/23_containers/forward_list/modifiers/4.cc: Likewise.
750         * testsuite/23_containers/forward_list/modifiers/5.cc: Likewise.
751         * testsuite/23_containers/forward_list/modifiers/6.cc: Likewise.
752         * testsuite/23_containers/forward_list/operations/1.cc: Likewise.
753         * testsuite/23_containers/forward_list/operations/2.cc: Likewise.
754         * testsuite/23_containers/forward_list/operations/3.cc: Likewise.
755         * testsuite/23_containers/forward_list/operations/4.cc: Likewise.
756         * testsuite/23_containers/forward_list/operations/5.cc: Likewise.
757         * testsuite/23_containers/forward_list/operations/6.cc: Likewise.
758         * testsuite/23_containers/forward_list/operations/7.cc: Likewise.
759         * testsuite/23_containers/forward_list/range_access.cc: Likewise.
760         * testsuite/23_containers/forward_list/requirements/
761         do_the_right_thing.cc: Likewise.
762         * testsuite/23_containers/list/capacity/1.cc: Likewise.
763         * testsuite/23_containers/list/capacity/1.h: Likewise.
764         * testsuite/23_containers/list/capacity/29134.cc: Likewise.
765         * testsuite/23_containers/list/modifiers/1.cc: Likewise.
766         * testsuite/23_containers/list/modifiers/1.h: Likewise.
767         * testsuite/23_containers/list/modifiers/1_c++0x.cc: Likewise.
768         * testsuite/23_containers/list/modifiers/2.cc: Likewise.
769         * testsuite/23_containers/list/modifiers/2.h: Likewise.
770         * testsuite/23_containers/list/modifiers/3.cc: Likewise.
771         * testsuite/23_containers/list/modifiers/3.h: Likewise.
772         * testsuite/23_containers/list/modifiers/insert/25288.cc: Likewise.
773         * testsuite/23_containers/list/modifiers/insert/25288.h: Likewise.
774         * testsuite/23_containers/list/operations/1.cc: Likewise.
775         * testsuite/23_containers/list/operations/1.h: Likewise.
776         * testsuite/23_containers/list/operations/2.cc: Likewise.
777         * testsuite/23_containers/list/operations/2.h: Likewise.
778         * testsuite/23_containers/list/operations/2_c++0x.cc: Likewise.
779         * testsuite/23_containers/list/operations/3.cc: Likewise.
780         * testsuite/23_containers/list/operations/3.h: Likewise.
781         * testsuite/23_containers/list/operations/3_c++0x.cc: Likewise.
782         * testsuite/23_containers/list/operations/4.cc: Likewise.
783         * testsuite/23_containers/list/operations/4.h: Likewise.
784         * testsuite/23_containers/list/operations/42352.cc: Likewise.
785         * testsuite/23_containers/list/operations/5.cc: Likewise.
786         * testsuite/23_containers/list/operations/5.h: Likewise.
787         * testsuite/23_containers/list/range_access.cc: Likewise.
788         * testsuite/23_containers/list/requirements/do_the_right_thing.cc:
789         Likewise.
790         * testsuite/23_containers/map/capacity/29134.cc: Likewise.
791         * testsuite/23_containers/map/range_access.cc: Likewise.
792         * testsuite/23_containers/multimap/capacity/29134.cc: Likewise.
793         * testsuite/23_containers/multimap/range_access.cc: Likewise.
794         * testsuite/23_containers/multiset/capacity/29134.cc: Likewise.
795         * testsuite/23_containers/multiset/range_access.cc: Likewise.
796         * testsuite/23_containers/set/capacity/29134.cc: Likewise.
797         * testsuite/23_containers/set/range_access.cc: Likewise.
798         * testsuite/23_containers/unordered_map/final_hash.cc: Likewise.
799         * testsuite/23_containers/unordered_map/observers.cc: Likewise.
800         * testsuite/23_containers/unordered_map/range_access.cc: Likewise.
801         * testsuite/23_containers/unordered_map/requirements/52942.cc:
802         Likewise.
803         * testsuite/23_containers/unordered_map/requirements/53067.cc:
804         Likewise.
805         * testsuite/23_containers/unordered_map/requirements/53339.cc:
806         Likewise.
807         * testsuite/23_containers/unordered_multimap/final_hash.cc: Likewise.
808         * testsuite/23_containers/unordered_multimap/observers.cc: Likewise.
809         * testsuite/23_containers/unordered_multimap/range_access.cc: Likewise.
810         * testsuite/23_containers/unordered_multimap/requirements/53339.cc:
811         Likewise.
812         * testsuite/23_containers/unordered_multiset/final_hash.cc: Likewise.
813         * testsuite/23_containers/unordered_multiset/observers.cc: Likewise.
814         * testsuite/23_containers/unordered_multiset/range_access.cc: Likewise.
815         * testsuite/23_containers/unordered_set/final_hash.cc: Likewise.
816         * testsuite/23_containers/unordered_set/instantiation_neg.cc: Likewise.
817         * testsuite/23_containers/unordered_set/observers.cc: Likewise.
818         * testsuite/23_containers/unordered_set/range_access.cc: Likewise.
819         * testsuite/23_containers/unordered_set/requirements/52942.cc:
820         Likewise.
821         * testsuite/23_containers/unordered_set/requirements/53067.cc:
822         Likewise.
823         * testsuite/23_containers/vector/bool/capacity/29134.cc: Likewise.
824         * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
825         Likewise.
826         * testsuite/23_containers/vector/capacity/29134-2.cc: Likewise.
827         * testsuite/23_containers/vector/capacity/29134.cc: Likewise.
828         * testsuite/23_containers/vector/capacity/shrink_to_fit.cc: Likewise.
829         * testsuite/23_containers/vector/capacity/shrink_to_fit2.cc: Likewise.
830         * testsuite/23_containers/vector/range_access.cc: Likewise.
831         * testsuite/23_containers/vector/requirements/do_the_right_thing.cc:
832         Likewise.
833         * testsuite/24_iterators/range_access.cc: Likewise.
834         * testsuite/25_algorithms/copy/1.cc: Likewise.
835         * testsuite/25_algorithms/copy/2.cc: Likewise.
836         * testsuite/25_algorithms/copy/3.cc: Likewise.
837         * testsuite/25_algorithms/copy/34595.cc: Likewise.
838         * testsuite/25_algorithms/copy/4.cc: Likewise.
839         * testsuite/25_algorithms/copy/deque_iterators/1.cc: Likewise.
840         * testsuite/25_algorithms/copy/move_iterators/1.cc: Likewise.
841         * testsuite/25_algorithms/copy/streambuf_iterators/char/1.cc: Likewise.
842         * testsuite/25_algorithms/copy/streambuf_iterators/char/2.cc: Likewise.
843         * testsuite/25_algorithms/copy/streambuf_iterators/char/3.cc: Likewise.
844         * testsuite/25_algorithms/copy/streambuf_iterators/char/4.cc: Likewise.
845         * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/1.cc:
846         Likewise.
847         * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/2.cc:
848         Likewise.
849         * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/3.cc:
850         Likewise.
851         * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/4.cc:
852         Likewise.
853         * testsuite/25_algorithms/copy_backward/deque_iterators/1.cc: Likewise.
854         * testsuite/25_algorithms/copy_backward/move_iterators/1.cc: Likewise.
855         * testsuite/25_algorithms/copy_n/1.cc: Likewise.
856         * testsuite/25_algorithms/copy_n/2.cc: Likewise.
857         * testsuite/25_algorithms/copy_n/3.cc: Likewise.
858         * testsuite/25_algorithms/copy_n/4.cc: Likewise.
859         * testsuite/25_algorithms/copy_n/50119.cc: Likewise.
860         * testsuite/25_algorithms/copy_n/move_iterators/1.cc: Likewise.
861         * testsuite/25_algorithms/fill/4.cc: Likewise.
862         * testsuite/25_algorithms/fill_n/1.cc: Likewise.
863         * testsuite/25_algorithms/find/istreambuf_iterators/char/1.cc:
864         Likewise.
865         * testsuite/25_algorithms/find/istreambuf_iterators/char/2.cc:
866         Likewise.
867         * testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/1.cc:
868         Likewise.
869         * testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/2.cc:
870         Likewise.
871         * testsuite/25_algorithms/heap/1.cc: Likewise.
872         * testsuite/25_algorithms/heap/moveable.cc: Likewise.
873         * testsuite/25_algorithms/heap/moveable2.cc: Likewise.
874         * testsuite/25_algorithms/is_heap/1.cc: Likewise.
875         * testsuite/25_algorithms/is_heap_until/1.cc: Likewise.
876         * testsuite/25_algorithms/is_sorted/1.cc: Likewise.
877         * testsuite/25_algorithms/is_sorted_until/1.cc: Likewise.
878         * testsuite/25_algorithms/move/1.cc: Likewise.
879         * testsuite/25_algorithms/move/deque_iterators/1.cc: Likewise.
880         * testsuite/25_algorithms/move_backward/1.cc: Likewise.
881         * testsuite/25_algorithms/move_backward/deque_iterators/1.cc: Likewise.
882         * testsuite/25_algorithms/partition/1.cc: Likewise.
883         * testsuite/25_algorithms/partition/moveable.cc: Likewise.
884         * testsuite/25_algorithms/pop_heap/empty2_neg.cc: Likewise.
885         * testsuite/25_algorithms/pop_heap/empty_neg.cc: Likewise.
886         * testsuite/25_algorithms/stable_partition/1.cc: Likewise.
887         * testsuite/25_algorithms/stable_partition/moveable.cc: Likewise.
888         * testsuite/25_algorithms/stable_partition/pr52822.cc: Likewise.
889         * testsuite/26_numerics/valarray/range_access.cc: Likewise.
890         * testsuite/28_regex/range_access.cc: Likewise.
891         * testsuite/ext/vstring/capacity/29134.cc: Likewise.
892         * testsuite/ext/vstring/capacity/shrink_to_fit.cc: Likewise.
893         * testsuite/ext/vstring/hash/char/1.cc: Likewise.
894         * testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
895         * testsuite/ext/vstring/range_access.cc: Likewise.
896         * testsuite/ext/vstring/requirements/do_the_right_thing.cc: Likewise.
897         * testsuite/performance/25_algorithms/copy_backward_deque_iterators.cc:
898         Likewise.
899         * testsuite/performance/25_algorithms/copy_deque_iterators.cc:
900         Likewise.
901         * testsuite/tr1/6_containers/unordered_map/capacity/29134-map.cc:
902         Likewise.
903         * testsuite/tr1/6_containers/unordered_multimap/capacity/
904         29134-multimap.cc: Likewise.
905         * testsuite/tr1/6_containers/unordered_multiset/capacity/
906         29134-multiset.cc: Likewise.
907         * testsuite/tr1/6_containers/unordered_set/capacity/29134-set.cc:
908         Likewise.
910 2012-11-01  François Dumont  <fdumont@gcc.gnu.org>
912         * include/bits/hashtable_policy.h (__details::_Before_begin<>):
913         New, combine a base node instance and an allocator.
914         * include/bits/hashtable.h (_Hashtable<>::_M_node_allocator): Remove.
915         (_Hashtable<>::_M_before_begin): Rename into _M_bbegin and type
916         modified to __detail::_Before_begin<>.
917         (_Hashtable<>::_M_node_allocator()): New, get the node allocator
918         part of _M_bbegin.
919         (_Hashtable<>::_M_before_begin()): New, get the before begin node
920         part of _M_bbegin.
921         (_Hashtable<>): Adapt to use latter.
923 2012-11-01  Jonathan Wakely  <jwakely.gcc@gmail.com>
925         * include/bits/forward_list.h (forward_list::assign): Dispatch to new
926         functions based on assignability of elements.
927         (forward_list::_M_assign): Add overloaded functions for assigning
928         via assignment or via clearing and insertion.
929         (forward_list::_M_assign_val): Likewise.
930         (forward_list::_M_move_assign(forward_list&&, false_type)): Do not
931         erase elements that are not moved.
932         * include/bits/forward_list.tcc (forward_list::operator=): Call
933         assign() to copy elements.
934         * testsuite/23_containers/forward_list/cons/10.cc: New.
935         * testsuite/23_containers/forward_list/cons/11.cc: New.
936         * testsuite/23_containers/forward_list/cons/12.cc: New.
938 2012-10-31  Jonathan Yong  <jon_y@users.sourceforge.net>
940         * config/os/mingw32-w64/os_defines.h: Do not define anymore
941         _GLIBCXX_HAVE_BROKEN_VSWPRINTF.
943 2012-10-31  Jonathan Wakely  <jwakely.gcc@gmail.com>
945         * include/bits/forward_list.h (forward_list): Adjust comments.
946         (forward_list(const forward_list&, const _Alloc&)): Use
947         _M_range_initialize to copy elements.
948         (forward_list(forward_list&&, const _Alloc&)): Add exception
949         specification.
950         (_Fwd_list_base(const _Fwd_list_base&, const _Node_alloc_type&)):
951         Remove.
952         * include/bits/forward_list.tcc (_Fwd_list_base(const _Fwd_list_base&,
953         const _Node_alloc_type&)): Remove.
954         (_Fwd_list_base(_Fwd_list_base&&, const _Node_alloc_type&)): Fix
955         memory leak when allocators are not equal.
957 2012-10-29  Jonathan Wakely  <jwakely.gcc@gmail.com>
959         PR libstdc++/55123
960         * include/bits/shared_ptr_base.h (__shared_count::_S_create_from_up):
961         Do not instantiate allocator with element_type.
962         * testsuite/20_util/shared_ptr/cons/55123.cc: New.
964 2012-10-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
966         PR libstdc++/55041
967         * python/libstdcxx/v6/printers.py (Tr1UnorderedMapPrinter): Update
968         to handle hashtable as member of unordered_map not base class.
969         (Tr1UnorderedSetPrinter): Likewise.
971 2012-10-27  François Dumont  <fdumont@gcc.gnu.org>
973         * include/bits/unordered_map.h (unordered_map<>): Prefer
974         aggregation to inheritance with _Hashtable.
975         (unordered_multimap<>): Likewise.
976         * include/bits/unordered_set.h
977         (unordered_set<>(const unordered_set&)):  Use default
978         implementation.
979         (unordered_set<>(unordered_set&&)): Likewise.
980         (unordered_set<>::operator=(const unordered_set&)): Likewise.
981         (unordered_set<>::operator=(unordered_set&&)): Likewise.
982         (unordered_multiset<>(const unordered_multiset&)): Likewise.
983         (unordered_multiset<>(unordered_multiset&&)): Likewise.
984         (unordered_multiset<>::operator=(const unordered_multiset&)):
985         Likewise.
986         (unordered_multiset<>::operator=(unordered_multiset&&)): Likewise.
987         * include/debug/unordered_map (operator==): Adapt.
988         * include/profile/unordered_map (operator==): Adapt.
990 2012-10-24  Daniel Krugler  <daniel.kruegler@gmail.com>
992         * include/std/type_traits (common_type): Implement LWG 2141.
993         * testsuite/20_util/duration/requirements/sfinae_friendly_1.cc:
994         Update.
995         * testsuite/20_util/common_type/requirements/typedefs-1.cc: Likewise.
996         * testsuite/20_util/common_type/requirements/sfinae_friendly_1.cc:
997         Likewise.
998         * testsuite/20_util/common_type/requirements/sfinae_friendly_2.cc:
999         Likewise.
1000         * testsuite/20_util/common_type/requirements/typedefs-2.cc: Likewise.
1002 2012-10-24   Haakan Younes  <hyounes@google.com>
1003              Paolo Carlini  <paolo.carlini@oracle.com>
1005         PR libstdc++/55047
1006         * include/bits/random.h (exponential_distribution<>::operator):
1007         Fix formula to std::log(result_type(1) - __aurng()).
1008         * include/bits/random.tcc: Likewise, everywhere.
1010 2012-10-23  Yufeng Zhang  <yufeng.zhang@arm.com>
1012         * config/cpu/aarch64/cxxabi_tweaks.h: New file.
1013         * configure.host: Enable aarch64.
1015 2012-10-22  François Dumont  <fdumont@gcc.gnu.org>
1017         * include/bits/unordered_set.h (unordered_set<>): Prefer
1018         aggregation to inheritance with _Hashtable.
1019         (unordered_multiset<>): Likewise.
1020         * include/debug/unordered_set (operator==): Adapt.
1021         * include/profile/unordered_set (operator==): Adapt.
1023 2012-10-22  Yufeng Zhang  <yufeng.zhang@arm.com>
1024             Jonathan Wakely  <jwakely.gcc@gmail.com>
1026         * doc/xml/manual/configure.xml (--enable-clocale): Document the
1027         'newlib' and 'darwin' options. Minor stylistic improvements.
1029 2012-10-21  François Dumont  <fdumont@gcc.gnu.org>
1031         * include/profile/map.h (map::emplace_hint): Remove invalid
1032         parenthesis.
1034 2012-10-21  Hans-Peter Nilsson  <hp@bitrange.com>
1036         * testsuite/23_containers/bitset/45713.cc: Skip for mmix-*-*.
1037         Tweak sizetype-related comment.
1039 2012-10-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
1041         * include/std/scoped_allocator: Avoid badname.
1043 2012-10-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
1045         * doc/xml/manual/status_cxx2011.xml: Update.
1047 2012-10-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
1049         * include/std/scoped_allocator (__outermost_alloc_traits): Define.
1050         (scoped_allocator_adaptor::destroy): Use it.
1051         (scoped_allocator_adaptor::construct): Likewise. Overload for
1052         piecewise construction of std::pair objects.
1053         * testsuite/20_util/scoped_allocator/2.cc: New.
1054         * doc/xml/manual/status_cxx2011.xml: Update.
1056 2012-10-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
1058         * include/bits/forward_list.h: Add C++11 allocator support.
1059         * include/bits/forward_list.tcc: Likewise.
1060         * doc/xml/manual/status_cxx2011.xml: Update.
1061         * testsuite/23_containers/forward_list/allocator/copy.cc: New.
1062         * testsuite/23_containers/forward_list/allocator/copy_assign.cc: New.
1063         * testsuite/23_containers/forward_list/allocator/minimal.cc: New.
1064         * testsuite/23_containers/forward_list/allocator/move_assign.cc: New.
1065         * testsuite/23_containers/forward_list/allocator/noexcept.cc: New.
1066         * testsuite/23_containers/forward_list/allocator/swap.cc: New.
1068 2012-10-18  François Dumont  <fdumont@gcc.gnu.org>
1070         * include/debug/formatter.h (_Debug_msg_id): Add
1071         __msg_valid_load_factor.
1072         * include/debug/macros.h (__glibcxx_check_max_load_factor): New.
1073         * include/debug/unordered_set
1074         (unordered_set<>::max_load_factor(float)): Check max load factor
1075         is positive.
1076         (unordered_multiset<>::max_load_factor(float)): Likewise.
1077         * include/debug/unordered_map
1078         (unordered_map<>::max_load_factor(float)): Likewise.
1079         (unordered_multimap<>::max_load_factor(float)): Likewise.
1080         * testsuite/23_containers/unordered_map/debug/max_load_factor_neg.cc:
1081         New.
1082         * testsuite/23_containers/unordered_multimap/debug/
1083         max_load_factor_neg.cc: New.
1084         * testsuite/23_containers/unordered_set/debug/max_load_factor_neg.cc:
1085         New.
1086         * testsuite/23_containers/unordered_multiset/debug/
1087         max_load_factor_neg.cc: New.
1089 2012-10-17  Benjamin Kosnik  <bkoz@redhat.com>
1091         * include/bits/move.h (move_if_noexcept): Mark constexpr.
1092         * include/std/array (front, back): Same.
1093         * include/std/chrono: Add comment.
1094         * include/std/tuple (__tuple_compare): Mark __eq, __less constexpr.
1095         (operator ==, <, >, !=, <=, >=): Same.
1096         * testsuite/20_util/forward/c_neg.cc: Adjust line numbers.
1097         * testsuite/20_util/forward/f_neg.cc: Same.
1098         * testsuite/20_util/move_if_noexcept/constexpr.cc: New.
1099         * testsuite/20_util/tuple/comparison_operators/constexpr.cc: New.
1100         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Add.
1101         * testsuite/23_containers/array/element_access/
1102         constexpr_element_access.cc: Same.
1103         * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
1104         line numbers.
1105         * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
1106         Same.
1108         * testsuite/20_util/tuple/comparison_operators/35480_neg.cc:
1109           Temporarily add dg-excess-errors.
1111 2012-10-16  François Dumont  <fdumont@gcc.gnu.org>
1113         * include/debug/formatter.h (_Debug_msg_id): Add
1114         __msg_bucket_index_oob.
1115         * include/debug/macros.h (__glibcxx_check_bucket_index): New.
1116         * include/debug/unordered_set (unordered_set<>::begin(size_type)):
1117         Add check on bucket index.
1118         (unordered_set<>::begin(size_type) const): Likewise.
1119         (unordered_set<>::cbegin(size_type) const): Likewise.
1120         (unordered_set<>::end(size_type)): Likewise.
1121         (unordered_set<>::end(size_type) const): Likewise.
1122         (unordered_set<>::cend(size_type) const): Likewise.
1123         (unordered_set<>::bucket_size(size_type)): Likewise.
1124         (unordered_multiset<>::begin(size_type)): Likewise.
1125         (unordered_multiset<>::begin(size_type) const): Likewise.
1126         (unordered_multiset<>::cbegin(size_type) const): Likewise.
1127         (unordered_multiset<>::end(size_type)): Likewise.
1128         (unordered_multiset<>::end(size_type) const): Likewise.
1129         (unordered_multiset<>::cend(size_type) const): Likewise.
1130         (unordered_multiset<>::bucket_size(size_type)): Likewise.
1131         * include/debug/unordered_map (unordered_map<>::begin(size_type)):
1132         Likewise.
1133         (unordered_map<>::begin(size_type) const): Likewise.
1134         (unordered_map<>::cbegin(size_type) const): Likewise.
1135         (unordered_map<>::end(size_type)): Likewise.
1136         (unordered_map<>::end(size_type) const): Likewise.
1137         (unordered_map<>::cend(size_type) const): Likewise.
1138         (unordered_map<>::bucket_size(size_type)): Likewise.
1139         (unordered_multimap<>::begin(size_type)): Likewise.
1140         (unordered_multimap<>::begin(size_type) const): Likewise.
1141         (unordered_multimap<>::cbegin(size_type) const): Likewise.
1142         (unordered_multimap<>::end(size_type)): Likewise.
1143         (unordered_multimap<>::end(size_type) const): Likewise.
1144         (unordered_multimap<>::cend(size_type) const): Likewise.
1145         (unordered_multimap<>::bucket_size(size_type)): Likewise.
1146         * testsuite/23_containers/unordered_map/debug/bucket_size_neg.cc:
1147         New.
1148         * testsuite/23_containers/unordered_map/debug/begin1_neg.cc: New.
1149         * testsuite/23_containers/unordered_map/debug/begin2_neg.cc: New.
1150         * testsuite/23_containers/unordered_map/debug/cbegin_neg.cc: New.
1151         * testsuite/23_containers/unordered_map/debug/end1_neg.cc: New.
1152         * testsuite/23_containers/unordered_map/debug/end2_neg.cc: New.
1153         * testsuite/23_containers/unordered_map/debug/cend_neg.cc: New.
1154         * testsuite/23_containers/unordered_multimap/debug/bucket_size_neg.cc:
1155         New.
1156         * testsuite/23_containers/unordered_multimap/debug/begin1_neg.cc: New.
1157         * testsuite/23_containers/unordered_multimap/debug/begin2_neg.cc: New.
1158         * testsuite/23_containers/unordered_multimap/debug/cbegin_neg.cc: New.
1159         * testsuite/23_containers/unordered_multimap/debug/end1_neg.cc: New.
1160         * testsuite/23_containers/unordered_multimap/debug/end2_neg.cc: New.
1161         * testsuite/23_containers/unordered_multimap/debug/cend_neg.cc: New.
1162         * testsuite/23_containers/unordered_set/debug/bucket_size_neg.cc:
1163         New.
1164         * testsuite/23_containers/unordered_set/debug/begin1_neg.cc: New.
1165         * testsuite/23_containers/unordered_set/debug/begin2_neg.cc: New.
1166         * testsuite/23_containers/unordered_set/debug/cbegin_neg.cc: New.
1167         * testsuite/23_containers/unordered_set/debug/end1_neg.cc: New.
1168         * testsuite/23_containers/unordered_set/debug/end2_neg.cc: New.
1169         * testsuite/23_containers/unordered_set/debug/cend_neg.cc: New.
1170         * testsuite/23_containers/unordered_multiset/debug/bucket_size_neg.cc:
1171         New.
1172         * testsuite/23_containers/unordered_multiset/debug/begin1_neg.cc: New.
1173         * testsuite/23_containers/unordered_multiset/debug/begin2_neg.cc: New.
1174         * testsuite/23_containers/unordered_multiset/debug/cbegin_neg.cc: New.
1175         * testsuite/23_containers/unordered_multiset/debug/end1_neg.cc: New.
1176         * testsuite/23_containers/unordered_multiset/debug/end2_neg.cc: New.
1177         * testsuite/23_containers/unordered_multiset/debug/cend_neg.cc: New.
1179 2012-10-15  Matthias Klose  <doko@ubuntu.com>
1181         * configure.host: Match arm*-*-linux-* for ARM Linux/GNU.
1182         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
1183         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise.
1185 2012-10-15  Pavel Chupin  <pavel.v.chupin@intel.com>
1187         * Makefile.in: Regenerate.
1188         * acinclude.m4: Replace code with GCC_AC_THREAD_HEADER use.
1189         * configure: Regenerate.
1190         * doc/Makefile.in: Regenerate.
1191         * include/Makefile.am: Regenerate.
1192         * include/Makefile.in: Rename variable.
1193         * libsupc++/Makefile.in: Regenerate.
1194         * po/Makefile.in: Regenerate.
1195         * python/Makefile.in: Regenerate.
1196         * src/Makefile.in: Regenerate.
1197         * src/c++11/Makefile.in: Regenerate.
1198         * src/c++98/Makefile.in: Regenerate.
1199         * testsuite/Makefile.in: Regenerate.
1201 2012-10-14  Jason Merrill  <jason@redhat.com>
1203         PR target/54908
1204         * libsupc++/atexit_thread.cc: Rewrite to keep the cleanup list
1205         with get/setspecific.  Destroy the key on dlclose.
1207 2012-10-12  Edward Smith-Rowland  <3dw4rd@verizon.net>
1209         * include/ext/random: Add __gnu_cxx::arcsine_distribution<>
1210         and __gnu_cxx::hoyt_distribution<> classes.
1211         * include/ext/random.tcc: Add out-of-line functions for
1212         __gnu_cxx::arcsine_distribution<> and __gnu_cxx::hoyt_distribution<>.
1213         * testsuite/ext/random/hoyt_distribution/cons/parms.cc: New file.
1214         * testsuite/ext/random/hoyt_distribution/cons/default.cc: New file.
1215         * testsuite/ext/random/hoyt_distribution/requirements/
1216         explicit_instantiation/1.cc: New file.
1217         * testsuite/ext/random/hoyt_distribution/requirements/typedefs.cc:
1218         New file.
1219         * testsuite/ext/random/hoyt_distribution/operators/inequal.cc: New file.
1220         * testsuite/ext/random/hoyt_distribution/operators/equal.cc: New file.
1221         * testsuite/ext/random/hoyt_distribution/operators/serialize.cc:
1222         New file.
1223         * testsuite/ext/random/arcsine_distribution/cons/parms.cc: New file.
1224         * testsuite/ext/random/arcsine_distribution/cons/default.cc: New file.
1225         * testsuite/ext/random/arcsine_distribution/requirements/
1226         explicit_instantiation/1.cc: New file.
1227         * testsuite/ext/random/arcsine_distribution/requirements/typedefs.cc:
1228         New file.
1229         * testsuite/ext/random/arcsine_distribution/operators/inequal.cc:
1230         New file.
1231         * testsuite/ext/random/arcsine_distribution/operators/equal.cc:
1232         New file.
1233         * testsuite/ext/random/arcsine_distribution/operators/serialize.cc:
1234         New file.
1236 2012-10-12  Paolo Carlini  <paolo.carlini@oracle.com>
1238         * include/bits/hashtable_policy.h: Revert libstdc++/53067 quick
1239         hacks thanks to the resolution of c++/51213.
1241 2012-10-11  Paolo Carlini  <paolo.carlini@oracle.com>
1243         * testsuite/23_containers/bitset/45713.cc: Tweak.
1245 2012-10-11  Hans-Peter Nilsson  <hp@axis.com>
1247         PR testsuite/54897
1248         * testsuite/23_containers/bitset/45713.cc: Skip for avr*-*-*
1249         cris*-*-* h8300*-*-* mcore*-*-* moxie*-*-*.
1251 2012-10-11  Daniel Krugler  <daniel.kruegler@gmail.com>
1253         * testsuite/20_util/common_type/requirements/sfinae_friendly_1.cc:
1254         Update / extend.
1255         * testsuite/20_util/common_type/requirements/sfinae_friendly_2.cc:
1256         Likewise.
1257         * testsuite/20_util/duration/requirements/sfinae_friendly_1.cc:
1258         Likewise.
1260 2012-10-11  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1262         PR libstdc++/54872
1263         * config/abi/pre/gnu.ver (GLIBCXX_3.4.11) [!__sun__ && !__svr4__]:
1264         Don't export _ZNSt12system_errorC*.
1266 2012-10-10  Jack Howarth  <howarth@bromo.med.uc.edu>
1267             Jonathan Wakely  <jwakely.gcc@gmail.com>
1269         PR libstdc++/54847
1270         * config/os/bsd/darwin/os_defines.h: Define _GLIBCXX_USE_NANOSLEEP
1271         and _GLIBCXX_USE_SCHED_YIELD.
1272         * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Add comment.
1274 2012-10-10  Mark Kettenis  <kettenis@openbsd.org>
1276         * configure.host (*-*-openbsd*) Set cpu_include_dir.
1277         * config/os/bsd/openbsd/ctype_base.h: New file.
1278         * config/os/bsd/openbsd/ctype_configure_char.cc: New file.
1279         * config/os/bsd/openbsd/ctype_inline.h: New file.
1280         * config/os/bsd/openbsd/os_defines.h: New file.
1281         * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Use newlib locale model
1282         for OpenBSD.
1283         * configure: Regenerated.
1285 2012-10-10  Paolo Carlini  <paolo.carlini@oracle.com>
1287         * include/std/type_traits (__do_common_type_impl): Revert for now
1288         LWG 2141-related change.
1289         * testsuite/20_util/common_type/requirements/typedefs-1.cc: Likewise.
1290         * testsuite/20_util/common_type/requirements/sfinae_friendly_1.cc:
1291         Adjust.
1293 2012-10-09  Daniel Krugler  <daniel.kruegler@gmail.com>
1295         * include/std/type_traits (common_type): Provide "SFINAE-friendly"
1296         implementation.
1297         (__success_type, __failure_type): Fix.
1298         * include/std/chrono (common_type): Likewise for the chrono::time_point
1299         specialization.
1300         * testsuite/20_util/common_type/requirements/sfinae_friendly_1.cc: New.
1301         * testsuite/20_util/common_type/requirements/sfinae_friendly_2.cc:
1302         Likewise.
1303         * testsuite/20_util/duration/requirements/sfinae_friendly_1.cc:
1304         Likewise.
1305         * testsuite/20_util/common_type/requirements/typedefs-1.cc: Adjust wrt
1306         LWG 2141.
1307         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust
1308         dg-error line numbers.
1309         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
1310         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
1311         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
1312         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1313         Likewise.
1314         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
1316         * testsuite/20_util/result_of/sfinae_friendly_1.cc: Trivial stylistic
1317         tweaks.
1318         * testsuite/20_util/result_of/sfinae_friendly_2.cc: Likewise.
1320 2012-10-09  Andrew MacLeod  <amacleod@redhat.com>
1322         PR libstdc++/54861
1323         * include/bits/atomic_base.h (atomic_signal_fence): Call
1324         __atomic_signal_fence instead of __atomic_thread_fence.
1326 2012-10-09  Benjamin Kosnik  <bkoz@redhat.com>
1328         * testsuite/20_util/specialized_algorithms/uninitialized_copy/808590.cc:
1329         Fix constant value.
1331 2012-10-09  Paolo Carlini  <paolo.carlini@oracle.com>
1333         PR libstdc++/54869
1334         * include/ext/random (simd_fast_mersenne_twister_engine): Provide
1335         only for little endian targets.
1336         * include/ext/random.tcc: Likewise.
1337         * config/cpu/i486/opt/ext/opt_random.h: Likewise.
1338         * testsuite/lib/libstdc++.exp (check_v3_target_little_endian): Add.
1339         * testsuite/lib/dg-options.exp (dg-require-little-endian): Add.
1340         * testsuite/ext/random/simd_fast_mersenne_twister_engine/
1341         operators/equal.cc: Use the latter.
1342         * testsuite/ext/random/simd_fast_mersenne_twister_engine/
1343         operators/serialize.cc: Likewise.
1344         * testsuite/ext/random/simd_fast_mersenne_twister_engine/
1345         operators/inequal.cc: Likewise.
1346         * testsuite/ext/random/simd_fast_mersenne_twister_engine/
1347         cons/copy.cc: Likewise.
1348         * testsuite/ext/random/simd_fast_mersenne_twister_engine/
1349         cons/seed1.cc: Likewise.
1350         * testsuite/ext/random/simd_fast_mersenne_twister_engine/
1351         cons/seed2.cc: Likewise.
1352         * testsuite/ext/random/simd_fast_mersenne_twister_engine/
1353         cons/default.cc: Likewise.
1354         * testsuite/ext/random/simd_fast_mersenne_twister_engine/
1355         cons/seed_seq.cc: Likewise.
1357 2012-10-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
1359         PR libstdc++/54754
1360         * include/parallel/compatibility.h: Use atomic built-ins when they are
1361         lock-free.
1363 2012-10-09  Uros Bizjak  <ubizjak@gmail.com>
1365         * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.7.
1367 2012-10-08  Jason Merrill  <jason@redhat.com>
1369         * libsupc++/cxxabi.h: Declare __cxa_thread_atexit.
1370         * libsupc++/atexit_thread.cc: New.
1371         * libsupc++/Makefile.am (nested_exception.lo): Add it.
1372         * config/abi/pre/gnu.ver: Add __cxa_thread_atexit.
1374 2012-10-07  Matthias Klose  <doko@ubuntu.com>
1376         * testsuite/28_regex/algorithms/match/basic: Remove empty directory.
1377         * testsuite/28_regex/algorithms/match/extended: Likewise.
1378         * testsuite/28_regex/algorithms/match: Likewise.
1380 2012-10-06  Paolo Carlini  <paolo.carlini@oracle.com>
1382         PR c++/52764
1383         * include/c_global/cstdint: Remove __STDC_LIMIT_MACROS and
1384         __STDC_CONSTANT_MACROS related macros.
1386 2012-10-06  Joe Seymour  <jseymour@codesourcery.com>
1388         * include/tr2/dynamic_bitset: Fix cxxabi_forced.h include path.
1390 2012-10-05  Benjamin Kosnik  <bkoz@redhat.com>
1392         * testsuite/28_regex/algorithms/match: Rename to...
1393         * testsuite/28_regex/algorithms/regex_match: ...this.
1394         * testsuite/28_regex/basic_regex/regex.cc: Rename to...
1395         * testsuite/28_regex/basic_regex/ctors/basic/default.cc: ...this.
1396         * testsuite/util/testsuite_regex.h: New.
1397         * testsuite/28_regex/basic_regex/ctors/basic/raw_string.cc: New.
1399 2012-10-05  Jakub Jelinek  <jakub@redhat.com>
1401         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line
1402         numbers.
1404 2012-10-05  Marc Glisse  <marc.glisse@inria.fr>
1406         PR libstdc++/54686
1407         * include/c_global/cstdlib (abs(long long)): Define with
1408         __builtin_llabs when we have long long.
1409         (abs(long)): Use __builtin_labs.
1410         (abs(__int128)): Define when we have __int128.
1412 2012-10-05  Paolo Carlini  <paolo.carlini@oracle.com>
1414         * include/c_global/cstdlib: Remove redundant pasto code protected
1415         by __GXX_EXPERIMENTAL_CXX0X__.
1416         * include/c_global/cwctype: Likewise.
1417         * include/c_global/ccomplex: Remove uses of obsolete macro
1418         _GLIBCXX_INCLUDE_AS_TR1.
1419         * include/c_global/cfloat: Likewise.
1421 2012-10-05  Marc Glisse  <marc.glisse@inria.fr>
1423         PR libstdc++/54686
1424         * include/c_std/cstdlib (abs(long long)): Define with
1425         __builtin_llabs when we have long long.
1426         (abs(long)): Use __builtin_labs.
1427         (abs(__int128)): Define when we have __int128.
1428         * testsuite/26_numerics/headers/cstdlib/54686.c: New file.
1430 2012-10-03  Paolo Carlini  <paolo.carlini@oracle.com>
1432         PR libstdc++/53248
1433         * include/std/array (__array_traits<>): Add.
1434         (array<>): Allow for zero-size arrays of non default-constructible
1435         elements.
1436         * testsuite/23_containers/array/requirements/
1437         non_default_constructible.cc: New.
1438         * testsuite/23_containers/array/requirements/zero_sized_arrays.cc:
1439         Adjust.
1440         * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
1441         dg-error line numbers.
1442         * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
1443         Likewise.
1445 2012-10-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
1447         PR other/53889
1448         * include/std/mutex (__recursive_mutex_base::~__recursive_mutex_base):
1449         Use __gthread_recursive_mutex_destroy.
1450         (__recursive_mutex_base::_S_destroy): Remove.
1451         (__recursive_mutex_base::_S_destroy_win32): Likewise.
1452         * include/ext/concurrence.h (__recursive_mutex::~__recursive_mutex):
1453         Use __gthread_recursive_mutex_destroy.
1454         (__recursive_mutex::_S_destroy): Remove.
1455         (__recursive_mutex::_S_destroy_win32): Likewise.
1457 2012-10-01  Benjamin Kosnik  <bkoz@redhat.com>
1459         * config/abi/pre/gnu-versioned-namespace.ver: Add more
1460         typeinfo/vtable exports.
1462 2012-10-01  Paolo Carlini  <paolo.carlini@oracle.com>
1464         PR libstdc++/54757
1465         * include/ext/random (rice_distribution<>::operator()): Use std::hypot
1466         only if _GLIBCXX_USE_C99_MATH_TR1.
1467         * include/ext/random.tcc (rice_distribution<>::__generate_impl):
1468         Likewise.
1470 2012-10-01  Daniel Krugler  <daniel.kruegler@gmail.com>
1472         * include/std/type_traits (result_of): Provide "SFINAE-friendly"
1473         (see N3436) implementation.
1474         * testsuite/20_util/result_of/sfinae_friendly_1.cc: New.
1475         * testsuite/20_util/result_of/sfinae_friendly_2.cc: Likewise.
1476         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Tweak
1477         dg-error line numbers.
1478         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1479         Likewise.
1480         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
1482 2012-09-30  Benjamin Kosnik  <bkoz@redhat.com>
1484         * doc/doxygen/user.cfg.in: Update to doxygen 1.8.2.
1486 2012-09-30  Jonathan Wakely  <jwakely.gcc@gmail.com>
1488         * include/ext/ropeimpl.h (__uninitialized_fill_n_a): Fix using
1489         declaration.
1490         * testsuite/ext/rope/5.cc: New.
1492 2012-09-30  Jonathan Wakely  <jwakely.gcc@gmail.com>
1494         PR libstdc++/54577
1495         * doc/xml/manual/status_cxx2011.xml: N2350 changes are missing from
1496         sequence containers.
1497         * doc/html/*: Regenerate.
1499 2012-09-29  Jonathan Wakely  <jwakely.gcc@gmail.com>
1501         PR libstdc++/34106
1502         * include/parallel/compatibility.h: Remove non-GCC code.
1504 2012-09-28  Benjamin Kosnik  <bkoz@redhat.com>
1506         * fragment.am (CONFIG_CXXFLAGS): Remove EXTRA_CXX_FLAGS.
1507         * libsupc++/Makefile.am (LTCXXCOMPILE): Add EXTRA_CXX_FLAGS here.
1508         * src/Makefile.am: Same.
1509         * src/c++98/Makefile.am: Same.
1510         * src/c++11/Makefile.am: Same.
1511         * Makefile.in: Regenerated.
1512         * src/Makefile.am: Same.
1513         * src/c++11/Makefile.in: Same.
1514         * src/c++98/Makefile.in: Same.
1515         * include/Makefile.in: Same.
1516         * po/Makefile.in: Same.
1517         * python/Makefile.in: Same.
1518         * testsuite/Makefile.in: Same.
1520 2012-09-28  Benjamin Kosnik  <bkoz@redhat.com>
1522         * src/c++98/Makefile.am: Fixup PARALLEL_FLAGS.
1524 2012-09-28  Benjamin Kosnik  <bkoz@redhat.com>
1526         * acinclude.m4 (GLIBCXX_ENABLE_PARALLEL): Remove ENABLE_PARALLEL.
1527         * include/Makefile.am: Same.
1528         * src/c++98/Makefile.am: Same.
1529         * src/Makefile.am: Same.
1530         * Makefile.in: Regenerated.
1531         * aclocal.m4: Same.
1532         * configure: Same.
1533         * doc/Makefile.in: Same.
1534         * include/Makefile.in: Same.
1535         * libsupc++/Makefile.in: Same.
1536         * po/Makefile.in: Same.
1537         * python/Makefile.in: Same.
1538         * src/Makefile.in: Same.
1539         * testsuite/Makefile.in: Same.
1540         * src/c++11/Makefile.in: Same.
1541         * src/c++98/Makefile.in: Same.
1543         * src/c++98/compatibility-debug_list-2.cc: Update comments.
1544         * src/c++98/compatibility-debug_list.cc: Same.
1545         * src/c++98/compatibility-list-2.cc: Renamed to src/c++98/list-aux-2.cc
1546         * src/c++98/compatibility-list.cc: Renamed to src/c++98/list-aux.cc
1547         * src/c++98/compatibility-parallel_list-2.cc: Renamed to
1548         src/c++98/list_associated-2.cc.
1549         * src/c++98/compatibility-parallel_list.cc: Renamed to
1550         src/c++98/list_associated.cc.
1552 2012-09-27  Paolo Carlini  <paolo.carlini@oracle.com>
1554         PR libstdc++/54727
1555         * config/cpu/i486/opt/bits/opt_random.h: Avoid UINT64_C.
1557 2012-09-26  Paolo Carlini  <paolo.carlini@oracle.com>
1559         * include/ext/random: Add include checks for c++11 and <cstdint>.
1561 2012-09-26  Benjamin Kosnik  <bkoz@redhat.com>
1563        PR libstdc++/54314
1564        * config/abi/pre/gnu.ver: Add vtable exports.
1565        * config/abi/pre/gnu-versioned-namespace.ver: Same.
1567 2012-09-26  Akira Takahashi  <faithandbrave@gmail.com>
1569         PR libstdc++/53515
1570         * include/bits/stl_iterator_base_funcs.h (__advance(_InputIterator&,
1571         _Distance, input_iterator_tag)): Add _GLIBCXX_DEBUG_ASSERT(__n >= 0).
1573 2012-09-26  Ulrich Drepper  <drepper@gmail.com>
1575         Optimize bulk mode for normal_distribution<double> for SSE3.
1576         * configure.host: Define cpu_opt_bits_random.
1577         * configure.ac: Substitute CPU_OPT_BITS_RANDOM.
1578         * include/Makefile.am (bits_headers): Add ${bits_host_headers}.
1579         (bits_host_headers): Define.
1580         * include/bits/random.tcc: Move __details::_Power_of_2 to...
1581         * include/bits/random.h: ...here.
1582         * include/std/random: Include <bits/opt_random.h>.
1583         * config/cpu/i486/opt/bits/opt_random.h: New file.
1584         * config/cpu/generic/opt/bits/opt_random.h: New file.
1585         * configure: Regenerated.
1586         * Makefile.in: Regenerated.
1587         * aclocal.m4: Regenerated.
1588         * doc/Makefile.in: Regenerated.
1589         * include/Makefile.in: Regenerated.
1590         * libsupc++/Makefile.in: Regenerated.
1591         * po/Makefile.in: Regenerated.
1592         * python/Makefile.in: Regenerated.
1593         * src/Makefile.in: Regenerated.
1594         * src/c++11/Makefile.in: Regenerated.
1595         * src/c++98/Makefile.in: Regenerated.
1596         * testsuite/Makefile.in: Regenerated.
1598         * config/cpu/generic/opt/ext/opt_random.h: Fix comment.
1600 2012-09-25  Paolo Carlini  <paolo.carlini@oracle.com>
1602         * doc/xml/manual/status_cxx2011.xml: Update vs PR 44436.
1604 2012-09-24  Edward Smith-Rowland  <3dw4rd@verizon.net>
1606         * include/ext/random: Add __gnu_cxx::k_distribution<> class.
1607         * include/ext/random.tcc: Add out-of-line functions for
1608         __gnu_cxx::k_distribution<>.
1609         * testsuite/ext/random/k_distribution/operators/equal.cc: New file.
1610         * testsuite/ext/random/k_distribution/operators/serialize.cc: New file.
1611         * testsuite/ext/random/k_distribution/operators/inequal.cc: New file.
1612         * testsuite/ext/random/k_distribution/cons/parms.cc: New file.
1613         * testsuite/ext/random/k_distribution/cons/default.cc: New file.
1614         * testsuite/ext/random/k_distribution/requirements/typedefs.cc:
1615         New file.
1616         * testsuite/ext/random/k_distribution/requirements/
1617         explicit_instantiation/1.cc: New file.
1619 2012-09-24  François Dumont  <fdumont@gcc.gnu.org>
1621         PR libstdc++/44436
1622         * include/bits/stl_tree.h
1623         (_Rb_tree<>::_M_insert_): Take _Base_ptr rather than
1624         _Const_Base_ptr.
1625         (_Rb_tree<>::_M_insert_node): New.
1626         (_Rb_tree<>::_M_get_insert_unique_pos): New, search code of
1627         _M_insert_unique method.
1628         (_Rb_tree<>::_M_insert_unique): Use latter.
1629         (_Rb_tree<>::_M_emplace_unique): New, likewise.
1630         (_Rb_tree<>::_M_get_insert_equal_pos): New, search code of
1631         _M_insert_equal method.
1632         (_Rb_tree<>::_M_insert_equal): Use latter.
1633         (_Rb_tree<>::_M_emplace_equal): New, likewise.
1634         (_Rb_tree<>::_M_get_insert_hint_unique_pos): New, search code of
1635         _M_insert_unique_ method.
1636         (_Rb_tree<>::_M_insert_unique_): Use latter.
1637         (_Rb_tree<>::_M_emplace_hint_unique): New, likewise.
1638         (_Rb_tree<>::_M_get_insert_hint_equal_pos): New, search code of
1639         _M_insert_equal_ method.
1640         (_Rb_tree<>::_M_insert_equal_): Use latter.
1641         (_Rb_tree<>::_M_emplace_hint_equal): New, likewise.
1642         (_Rb_tree<>::_M_insert_lower): Remove first _Base_ptr parameter,
1643         useless as always null.
1644         * include/bits/stl_map.h: Include <tuple> in C++11.
1645         (map<>::operator[](const key_type&)): Use
1646         _Rb_tree<>::_M_emplace_hint_unique in C++11.
1647         (map<>::operator[](key_type&&)): Likewise.
1648         (map<>::emplace): New.
1649         (map<>::emplace_hint): New.
1650         * include/bits/stl_multimap.h (multimap<>::emplace): New.
1651         (multimap<>::emplace_hint): New.
1652         * include/bits/stl_set.h (set<>::emplace): New.
1653         (set<>::emplace_hint): New.
1654         * include/bits/stl_multiset.h (multiset<>::emplace): New.
1655         (multiset<>::emplace_hint): New.
1656         * include/debug/map.h (std::__debug::map<>::emplace): New.
1657         (std::__debug::map<>::emplace_hint): New.
1658         * include/debug/multimap.h (std::__debug::multimap<>::emplace):
1659         New.
1660         (std::__debug::multimap<>::emplace_hint): New.
1661         * include/debug/set.h (std::__debug::set<>::emplace): New.
1662         (std::__debug::set<>::emplace_hint): New.
1663         * include/debug/multiset.h (std::__debug::multiset<>::emplace):
1664         New.
1665         (std::__debug::multiset<>::emplace_hint): New.
1666         * include/profile/map.h (std::__profile::map<>::emplace): New.
1667         (std::__profile::map<>::emplace_hint): New.
1668         * include/profile/multimap.h (std::__profile::multimap<>::emplace):
1669         New.
1670         (std::__profile::multimap<>::emplace_hint): New.
1671         * include/profile/set.h (std::__profile::set<>::emplace): New.
1672         (std::__profile::set<>::emplace_hint): New.
1673         * include/profile/multiset.h (std::__profile::multiset<>::emplace):
1674         New.
1675         (std::__profile::multiset<>::emplace_hint): New.
1676         * testsuite/util/testsuite_container_traits.h: Signal that emplace
1677         and emplace_hint are available on std::map, std::multimap,
1678         std::set and std::multiset in C++11.
1679         * testsuite/23_containers/map/operators/2.cc: New.
1680         * testsuite/23_containers/map/modifiers/emplace/1.cc: New.
1681         * testsuite/23_containers/multimap/modifiers/emplace/1.cc: New.
1682         * testsuite/23_containers/set/modifiers/emplace/1.cc: New.
1683         * testsuite/23_containers/multiset/modifiers/emplace/1.cc: New.
1685 2012-09-24  François Dumont  <fdumont@gcc.gnu.org>
1687         * testsuite/performance/23_containers/insert_erase/41975.cc: Use
1688         __uset_hashtable rather than removed __unordered_set.
1690 2012-09-23  Paolo Carlini  <paolo.carlini@oracle.com>
1692         Revert:
1693         2012-09-21  Paolo Carlini  <paolo.carlini@oracle.com>
1695         * include/bits/stl_algobase.h (max, min): Use conditional operator.
1697 2012-09-23  Uros Bizjak  <ubizjak@gmail.com>
1699         PR libstdc++/54675
1700         * include/ext/random: Avoid the badname __alpha (and, for
1701         consistency, __mu, __nu, __sigma and __omega too).
1702         * include/bits/random.tcc: Likewise.
1704 2012-09-21  Edward Smith-Rowland  <3dw4rd@verizon.net>
1706         * include/ext/random: Add __gnu_cxx::pareto_distribution<> class.
1707         * include/ext/random.tcc: Add out-of-line functions for
1708         __gnu_cxx::pareto_distribution<>.
1709         * testsuite/ext/random/pareto_distribution/operators/equal.cc: New file.
1710         * testsuite/ext/random/pareto_distribution/operators/serialize.cc:
1711         New file.
1712         * testsuite/ext/random/pareto_distribution/operators/inequal.cc:
1713         New file.
1714         * testsuite/ext/random/pareto_distribution/cons/parms.cc: New file.
1715         * testsuite/ext/random/pareto_distribution/cons/default.cc: New file.
1716         * testsuite/ext/random/pareto_distribution/requirements/typedefs.cc:
1717         New file.
1718         * testsuite/ext/random/pareto_distribution/requirements/
1719         explicit_instantiation/1.cc: New file.
1721 2012-09-21  Paolo Carlini  <paolo.carlini@oracle.com>
1723         * include/bits/stl_algobase.h (max, min): Use conditional operator.
1725 2012-09-18  Benjamin Kosnik  <bkoz@redhat.com>
1727         PR libstdc++/28811
1728         PR libstdc++/54482
1729         * configure.ac (glibcxx_lt_pic_flag,
1730         glibcxx_compiler_pic_flag,
1731         glibcxx_compiler_shared_flag): New. Use them.
1732         (lt_prog_compiler_pic_CXX): Set via glibcxx_*_flag(s) above.
1733         (pic_mode): Set to default.
1734         (PIC_CXXFLAGS): Remove.
1735         * Makefile.am (PICFLAG, PICFLAG_FOR_TARGET): Remove. Comment.
1736         * libsupc++/Makefile.am: Use glibcxx_ld_pic_flag and
1737         glibcxx_compiler_shared_flag. Comment.
1738         * src/c++11/Makefile.am: Same.
1739         * src/c++98/Makefile.am: Same.
1740         * src/Makefile.am: Use glibcxx_compiler_pic_flag.
1742         * Makefile.in: Regenerated.
1743         * aclocal.m4: Same.
1744         * configure: Same.
1745         * doc/Makefile.in: Same.
1746         * include/Makefile.in: Same.
1747         * libsupc++/Makefile.in: Same.
1748         * po/Makefile.in: Same.
1749         * python/Makefile.in: Same.
1750         * src/Makefile.in: Same.
1751         * src/c++11/Makefile.in: Same.
1752         * src/c++98/Makefile.in: Same.
1753         * testsuite/Makefile.in: Same.
1755         * src/c++11/compatibility-atomic-c++0x.cc: Use
1756         _GLIBCXX_SHARED instead of PIC to designate shared-only
1757         code blocks.
1758         * src/c++11/compatibility-c++0x.cc: Same.
1759         * src/c++11/compatibility-thread-c++0x.cc: Same.
1760         * src/c++98/compatibility-list-2.cc: Same.
1761         * src/c++98/compatibility.cc: : Same.
1763         * testsuite/17_intro/shared_with_static_deps.cc: New.
1765         * doc/xml/manual/build_hacking.xml: Separate configure from
1766         make/build issues, add build details.
1768 2012-09-18  Edward Smith-Rowland  <3dw4rd@verizon.net>
1770         * include/ext/random: Add __gnu_cxx::nakagami_distribution<> class.
1771         * include/ext/random.tcc: Add out-of-line functions for
1772         __gnu_cxx::nakagami_distribution<>.
1773         * testsuite/ext/random/nakagami_distribution/operators/equal.cc:
1774         New file.
1775         * testsuite/ext/random/nakagami_distribution/operators/serialize.cc:
1776         New file.
1777         * testsuite/ext/random/nakagami_distribution/operators/inequal.cc:
1778         New file.
1779         * testsuite/ext/random/nakagami_distribution/cons/parms.cc: New file.
1780         * testsuite/ext/random/nakagami_distribution/cons/default.cc: New file.
1781         * testsuite/ext/random/nakagami_distribution/requirements/typedefs.cc:
1782         New file.
1783         * testsuite/ext/random/nakagami_distribution/requirements/
1784         explicit_instantiation/1.cc: New file.
1786 2012-09-18  Paolo Carlini  <paolo.carlini@oracle.com>
1788         PR libstdc++/54612
1789         * include/ext/random.tcc (operator==
1790         (const __gnu_cxx::simd_fast_mersenne_twister_engine<>&,
1791         const __gnu_cxx::simd_fast_mersenne_twister_engine<>&)): Fix
1792         state_size use.
1793         * config/cpu/i486/opt/ext/opt_random.h: Guard with __SSE2__.
1795 2012-09-17  Ulrich Drepper  <drepper@gmail.com>
1797         * configure.ac: Substitute CPU_OPT_EXT_RANDOM.
1798         * configure.host: Define cpu_opt_ext_random to location of the
1799         optimized version of <ext/random>.
1800         * include/Makefile.am (ext_headers): Add ${ext_host_headers}.
1801         (ext_host_headers): Define.
1802         * include/ext/random (simd_fast_mersenne_twister_engine<>
1803         ::operator==): Don't define function here.
1804         * include/ext/random.tcc (simd_fast_mersenne_twister_engine): Don't
1805         define code using SSE2 here.  Define generic code only if
1806         _GLIBCXX_OPT_HAVE_RANDOM_SFMT_GEN_READ is not defined.
1807         (simd_fast_mersenne_twister_engine<>
1808         ::operator==): Define here if
1809         _GLIBCXX_OPT_HAVE_RANDOM_SFMT_OPERATOREQUAL is not defined.
1810         * config/cpu/generic/opt/ext/opt_random.h: New file.
1811         * config/cpu/i486/opt/ext/opt_random.h: New file.
1812         * libsupc++/Makefile.in: Regenerated.
1813         * testsuite/Makefile.in: Regenerated.
1814         * po/Makefile.in: Regenerated.
1815         * configure: Regenerated.
1816         * Makefile.in: Regenerated.
1817         * doc/Makefile.in: Regenerated.
1818         * aclocal.m4: Regenerated.
1819         * python/Makefile.in: Regenerated.
1820         * include/Makefile.in: Regenerated.
1821         * src/c++98/Makefile.in: Regenerated.
1822         * src/c++11/Makefile.in: Regenerated.
1823         * src/Makefile.in: Regenerated.
1825 2012-09-16  Edward Smith-Rowland  <3dw4rd@verizon.net>
1827         * include/ext/random.tcc (__gnu_cxx::rice_distribution<>
1828         ::__generate_impl): Remove bogus _Adaptor usage.
1830 2012-09-16  Paolo Carlini  <paolo.carlini@oracle.com>
1832         * include/ext/random (rice_distribution<>::operator==): Change
1833         inline friend definition to non-template.
1834         * testsuite/ext/random/rice_distribution/requirements/
1835         explicit_instantiation/1.cc: New.
1837         * testsuite/26_numerics/random/normal_mv_distribution: Move...
1838         * testsuite/ext/random/normal_mv_distribution: ... here.
1839         * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine:
1840         Move...
1841         * testsuite/ext/random/simd_fast_mersenne_twister_engine: ... here.
1842         * testsuite/26_numerics/random/beta_distribution: Move...
1843         * testsuite/ext/random/beta_distribution: ... here.
1844         * testsuite/26_numerics/random/rice_distribution: Move...
1845         * testsuite/ext/random/rice_distribution: ... here.
1847 2012-09-14  Edward Smith-Rowland  <3dw4rd@verizon.net>
1849         * include/ext/random: Add __gnu_cxx::rice_distribution<> class.
1850         * include/ext/random.tcc: Add out-of-line functions for
1851         __gnu_cxx::rice_distribution<>.
1852         * testsuite/26_numerics/random/rice_distribution/
1853         operators/equal.cc: New file.
1854         * testsuite/26_numerics/random/rice_distribution/
1855         operators/serialize.cc: New file.
1856         * testsuite/26_numerics/random/rice_distribution/
1857         operators/inequal.cc: New file.
1858         * testsuite/26_numerics/random/rice_distribution/
1859         cons/parms.cc: New file.
1860         * testsuite/26_numerics/random/rice_distribution/
1861         cons/default.cc: New file.
1862         * testsuite/26_numerics/random/rice_distribution/
1863         requirements/typedefs.cc: New file.
1865 2012-09-14  David Edelsohn  <dje.gcc@gmail.com>
1867         * configure: Regenerated.
1869 2012-09-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
1870             H.J. Lu  <hongjiu.lu@intel.com>
1872         PR libstdc++/54576
1873         * src/c++11/random.cc: Check if _GLIBCXX_USE_C99_STDINT_TR1 is defined.
1875 2012-09-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1877         * acinclude.m4 (GLIBCXX_CHECK_ASSEMBLER_HWCAP): Define.
1878         * configure.ac: Call GLIBCXX_CHECK_ASSEMBLER_HWCAP.
1879         * fragment.am (CONFIG_CXXFLAGS): Add $(HWCAP_FLAGS).
1880         * configure: Regenerate.
1881         * Makefile.in: Regenerate.
1882         * doc/Makefile.in: Regenerate.
1883         * include/Makefile.in: Regenerate.
1884         * libsupc++/Makefile.in: Regenerate.
1885         * po/Makefile.in: Regenerate.
1886         * python/Makefile.in: Regenerate.
1887         * src/Makefile.in: Regenerate.
1888         * src/c++11/Makefile.in: Regenerate.
1889         * src/c++98/Makefile.in: Regenerate.
1890         * testsuite/Makefile.in: Regenerate.
1892 2012-09-11  Jakub Jelinek  <jakub@redhat.com>
1894         PR libstdc++/54172
1895         * libsupc++/guard.cc (__cxa_guard_acquire): Fix up the last
1896         argument of the first __atomic_compare_exchange_n.
1898 2012-09-10  Sebastian Huber  <sebastian.huber@embedded-brains.de>
1899             Jonathan Wakely  <jwakely.gcc@gmail.com>
1901         PR libstdc++/43852
1902         * acinclude.m4 (GLIBCXX_ENABLE_VERBOSE): Define.
1903         * configure.ac (GLIBCXX_ENABLE_VERBOSE): Use it.
1904         * config.h.in: Regenerate.
1905         * configure: Likewise.
1906         * libsupc++/eh_term_handler.cc (_GLIBCXX_VERBOSE): Check new macro.
1907         * libsupc++/pure.cc (_GLIBCXX_VERBOSE): Likewise.
1908         * doc/xml/manual/configure.xml (--disable-libstdcxx-verbose): Document.
1909         * doc/html/manual/configure.html: Regenerate.
1911 2012-09-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
1913         PR bootstrap/54419
1914         * acinclude.m4 (GLIBCXX_CHECK_X86_RDRAND): Remove stray character.
1915         * configure: Regenerated.
1917 2012-09-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
1919         PR libstdc++/54388
1920         * include/std/array (array::at() const): Ensure lvalue result.
1921         * testsuite/23_containers/array/element_access/54388.cc: New.
1922         * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
1923         dg-error line numbers.
1924         * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
1925         Likewise.
1927 2012-09-09  Ulrich Drepper  <drepper@gmail.com>
1928             Dominique d'Humieres  <dominiq@lps.ens.fr>
1929             Jack Howarth  <howarth@bromo.med.uc.edu>
1931         PR bootstrap/54419
1932         * acinclude.m4: Define GLIBCXX_CHECK_X86_RDRAND.
1933         * configure.ac: Use GLIBCXX_CHECK_X86_RDRAND to test for rdrand
1934         support in assembler.
1935         * src/c++11/random.cc (__x86_rdrand): Depend on _GLIBCXX_X86_RDRAND.
1936         (random_device::_M_init): Likewise.
1937         (random_device::_M_getval): Likewise.
1938         * configure: Regenerated.
1939         * config.h.in: Regenerated.
1941 2012-09-09  Ulrich Drepper  <drepper@gmail.com>
1943         * src/c++11/random.cc (random_device::_M_init): Use new macro
1944         signature_INTEL_ebx to check for Intel processors.
1946 2012-09-06  Thiago Macieira  <thiago.macieira@intel.com>
1948         PR libstdc++/54172
1949         * libsupc++/guard.cc (__cxa_guard_acquire): Exit the loop earlier if
1950         we detect that another thread has had success. Don't compare_exchange
1951         from a finished state back to a waiting state. Comment.
1953 2012-09-05  François Dumont  <fdumont@gcc.gnu.org>
1955         PR libstdc++/54296
1956         * include/bits/hashtable.h (_M_erase(size_type, __node_base*,
1957         __node_type*)): New.
1958         (erase(const_iterator)): Use latter.
1959         (_M_erase(std::true_type, const key_type&)): New, likewise.
1960         (_M_erase(std::false_type, const key_type&)): New. Find all nodes
1961         matching the key before deallocating them so that the key doesn't
1962         get invalidated.
1963         (erase(const key_type&)): Use the new member functions.
1964         * testsuite/23_containers/unordered_map/erase/54296.cc: New.
1965         * testsuite/23_containers/unordered_multimap/erase/54296.cc: New.
1967 2012-09-05  Ulrich Drepper  <drepper@gmail.com>
1969         * src/c++11/random.cc (random_device::_M_init): Check whether cpuid
1970         instruction is available by using __get_cpuid_max.
1972         * include/ext/random.tcc (__gnu_cxx:normal_mv_distribution<>)
1973         (operator()): Use __generate() function of _M_nd.
1975         * include/ext/random: Add __gnu_cxx:normal_mv_distribution<> class.
1976         * include/ext/random.tccAdd out-of-line functions for
1977         __gnu_cxx::normal_mv_distribution<>.
1978         * testsuite/26_numerics/random/normal_mv_distribution/
1979         operators/equal.cc: New file.
1980         * testsuite/26_numerics/random/normal_mv_distribution/
1981         operators/serialize.cc: New file.
1982         * testsuite/26_numerics/random/normal_mv_distribution/
1983         operators/inequal.cc: New file.
1984         * testsuite/26_numerics/random/normal_mv_distribution/
1985         cons/default.cc: New file.
1986         * testsuite/26_numerics/random/normal_mv_distribution/
1987         cons/parms.cc: New file.
1988         * testsuite/26_numerics/random/normal_mv_distribution/
1989         requirements/explicit_instantiation/1.cc: New file.
1990         * testsuite/26_numerics/random/normal_mv_distribution/
1991         requirements/typedefs.cc: New file.
1993 2012-09-04  Ulrich Drepper  <drepper@gmail.com>
1995         * include/ext/random: Add __gnu_cxx::beta_distribution<> class.
1996         * include/ext/random.tcc: Add out-of-line functions for
1997         __gnu_cxx::beta_distribution<>.
1998         * testsuite/26_numerics/random/beta_distribution/
1999         operators/equal.cc: New file.
2000         * testsuite/26_numerics/random/beta_distribution/
2001         operators/serialize.cc: New file.
2002         * testsuite/26_numerics/random/beta_distribution/
2003         operators/inequal.cc: New file.
2004         * testsuite/26_numerics/random/beta_distribution/
2005         cons/parms.cc: New file.
2006         * testsuite/26_numerics/random/beta_distribution/
2007         cons/default.cc: New file.
2008         * testsuite/26_numerics/random/beta_distribution/
2009         requirements/typedefs.cc: New file.
2010         * testsuite/26_numerics/random/beta_distribution/
2011         requirements/explicit_instantiation/1.cc: New file.
2013 2012-09-04  Steven Bosscher  <steven@gcc.gnu.org>
2015         PR bootstrap/54453
2016         * include/Makefile.am: Fix regex.
2017         * include/Makefile.in: Regenerate.
2019 2012-08-30  Benjamin Kosnik  <bkoz@redhat.com>
2021         PR libstdc++/54005 continued
2022         * include/std/atomic: Use __atomic_lock_free with NULL.
2023         * include/bits/atomic_base.h: Same.
2025 2012-08-30  Ulrich Drepper  <drepper@gmail.com>
2027         * include/bits/random.h (random_device) [GLIBCXX_USE_RANDOM_TR1]:
2028         Remove 'return' from constructor.
2030 2012-08-30  Benjamin Kosnik  <bkoz@redhat.com>
2032         * testsuite/util/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.18.
2034 2012-08-29  Ulrich Drepper  <drepper@gmail.com>
2036         * include/bits/random.h (random_device): Move implementation to...
2037         * src/c++11/random.cc: ...here.  New file.
2038         * config/abi/pre/gnu.ver: Add new version GLIBCXX_3.4.18.  Export
2039         std::random_device::* symbols.
2040         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Generated.
2041         * src/c++11/Makefile.am (sources): Add random.cc.
2042         * src/c++11/Makefile.in: Regenerated.
2044         Add simd_fast_mersenne_twister_engine class.
2045         * include/ext/random: New file.
2046         * include/ext/random.tcc: New file.
2047         * include/Makefile.am (ext_headers): Add random and random.tcc.
2048         * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
2049         operators/inequal.cc: New file.
2050         * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
2051         operators/equal.cc: New file.
2052         * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
2053         operators/serialize.cc: New file.
2054         * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
2055         cons/seed2.cc: New file.
2056         * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
2057         cons/default.cc: New file.
2058         * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
2059         cons/seed_seq.cc: New file.
2060         * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
2061         cons/copy.cc: New file.
2062         * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
2063         cons/seed1.cc: New file.
2065 2012-08-28  Benjamin Kosnik  <bkoz@redhat.com>
2067         PR libstdc++/54102, part 2
2068         * doc/Makefile.am (XSL_HTML_STYLE): use xhtml, not html.
2069         * doc/Makefile.in: Regenerate.
2070         * doc/html/*: Same.
2072 2012-08-28  Benjamin Kosnik  <bkoz@redhat.com>
2074         * doc/html/*: Regenerate.
2076 2012-08-28  Benjamin Kosnik  <bkoz@redhat.com>
2078         PR libstdc++/54102
2079         * doc/xsl/customization.xsl.in: New.
2080         * configure.ac: Output local copy of customization xsl.
2081         * doc/Makefile.am (stamp-html-single-docbook): Use XSL_LOCAL_STYLE.
2082         (stamp-html-docbook): Set stringparam to UTF-8.
2083         * Makefile.in: Regenerated.
2084         * configure: Same.
2085         * doc/Makefile.in: Same.
2087 2012-08-27  Ulrich Drepper  <drepper@gmail.com>
2089         Add interfaces to retrieve random numbers in bulk.
2090         * include/bits/random.h (uniform_int_distribution<>): Add __generate
2091         and __generate_impl functions.
2092         (uniform_real_distribution<>): Likewise.
2093         (bernoulli_distribution): Likewise.
2094         (geometric_distribution<>): Likewise.
2095         (negative_binomial_distribution<>): Likewise.
2096         (poisson_distribution<>): Likewise.
2097         (exponential_distribution<>): Likewise.
2098         (normal_distribution<>): Likewise.
2099         (lognormal_distribution<>): Likewise.
2100         (chi_squared_distribution<>): Likewise.
2101         (cauchy_distribution<>): Likewise.
2102         (fisher_f_distribution<>): Likewise.
2103         (student_t_distribution<>): Likewise.
2104         (gamma_distribution<>): Likewise.
2105         (weibull_distribution<>): Likewise.
2106         (extreme_value_distribution<>): Likewise.
2107         (discrete_distribution<>): Likewise.
2108         (piecewise_constant_distribution<>): Likewise.
2109         (piecewise_linear_distribution<>): Likewise.
2110         * include/bits/random.tcc (__detail::_Power_of_2): New function.
2111         (uniform_int_distribution<>::__generate_impl): New function.
2112         (uniform_real_distribution<>::__generate_impl): New function.
2113         (bernoulli_distribution::__generate_impl): New function.
2114         (geometric_distribution<>::__generate_impl): New function.
2115         (negative_binomial_distribution<>::__generate_impl): New function.
2116         (poisson_distribution<>::__generate_impl): New function.
2117         (exponential_distribution<>::__generate_impl): New function.
2118         (normal_distribution<>::__generate_impl): New function.
2119         (lognormal_distribution<>::__generate_impl): New function.
2120         (chi_squared_distribution<>::__generate_impl): New function.
2121         (cauchy_distribution<>::__generate_impl): New function.
2122         (fisher_f_distribution<>::__generate_impl): New function.
2123         (student_t_distribution<>::__generate_impl): New function.
2124         (gamma_distribution<>::__generate_impl): New function.
2125         (weibull_distribution<>::__generate_impl): New function.
2126         (extreme_value_distribution<>::__generate_impl): New function.
2127         (discrete_distribution<>::__generate_impl): New function.
2128         (piecewise_constant_distribution<>::__generate_impl): New function.
2129         (piecewise_linear_distribution<>::__generate_impl): New function.
2131 2012-08-22  Ulrich Drepper  <drepper@gmail.com>
2133         * include/bits/random.h (mersenne_twister_engine): Don't inline
2134         discard here.  New member function _M_gen_rand.
2135         * include/bits/random.tcc (mersenne_twister_engine<>::_M_gen_rand):
2136         New function.  Extracted from operator().
2137         (mersenne_twister_engine<>::discard): New implementation which
2138         skips in large steps.
2139         (mersenne_twister_engine<>::operator()): Use _M_gen_rand.
2141 2012-08-26  Marc Glisse  <marc.glisse@inria.fr>
2142             Paolo Carlini  <paolo.carlini@oracle.com>
2144         PR libstdc++/54376
2145         * include/bits/random.h (lognormal_distribution<>::operator==,
2146         gamma_distribution<>::operator==,
2147         chi_squared_distribution<>::operator==,
2148         fisher_f_distribution<>::operator==,
2149         student_t_distribution<>::operator==,
2150         binomial_distribution<>::operator==,
2151         negative_binomial_distribution<>::operator==,
2152         poisson_distribution<>::operator==): Change inline friend definition
2153         to non-template.
2154         * testsuite/26_numerics/random/binomial_distribution/requirements/
2155         explicit_instantiation/1.cc: New.
2156         * testsuite/26_numerics/random/cauchy_distribution/requirements/
2157         explicit_instantiation/1.cc: Likewise.
2158         * testsuite/26_numerics/random/chi_squared_distribution/
2159         requirements/explicit_instantiation/1.cc: Likewise.
2160         * testsuite/26_numerics/random/discrete_distribution/requirements/
2161         explicit_instantiation/1.cc: Likewise.
2162         * testsuite/26_numerics/random/exponential_distribution/
2163         requirements/explicit_instantiation/1.cc: Likewise.
2164         * testsuite/26_numerics/random/extreme_value_distribution/
2165         requirements/explicit_instantiation/1.cc: Likewise.
2166         * testsuite/26_numerics/random/fisher_f_distribution/requirements/
2167         explicit_instantiation/1.cc: Likewise.
2168         * testsuite/26_numerics/random/gamma_distribution/requirements/
2169         explicit_instantiation/1.cc: Likewise.
2170         * testsuite/26_numerics/random/geometric_distribution/requirements/
2171         explicit_instantiation/1.cc: Likewise.
2172         * testsuite/26_numerics/random/lognormal_distribution/requirements/
2173         explicit_instantiation/1.cc: Likewise.
2174         * testsuite/26_numerics/random/negative_binomial_distribution/
2175         requirements/explicit_instantiation/1.cc: Likewise.
2176         * testsuite/26_numerics/random/normal_distribution/requirements/
2177         explicit_instantiation/1.cc: Likewise.
2178         * testsuite/26_numerics/random/piecewise_constant_distribution/
2179         requirements/explicit_instantiation/1.cc: Likewise.
2180         * testsuite/26_numerics/random/piecewise_linear_distribution/
2181         requirements/explicit_instantiation/1.cc: Likewise.
2182         * testsuite/26_numerics/random/poisson_distribution/requirements/
2183         explicit_instantiation/1.cc: Likewise.
2184         * testsuite/26_numerics/random/student_t_distribution/requirements/
2185         explicit_instantiation/1.cc: Likewise.
2186         * testsuite/26_numerics/random/uniform_int_distribution/
2187         requirements/explicit_instantiation/1.cc: Likewise.
2188         * testsuite/26_numerics/random/uniform_real_distribution/
2189         requirements/explicit_instantiation/1.cc: Likewise.
2190         * testsuite/26_numerics/random/weibull_distribution/requirements/
2191         explicit_instantiation/1.cc: Likewise.
2193 2012-08-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
2195         * testsuite/30_threads/async/54297.cc: Add dg-require-nanosleep.
2197 2012-08-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
2199         PR libstdc++/54297
2200         * src/c++11/future.cc (~_Async_state_common): Move to...
2201         * src/c++11/compatibility-thread-c++0x.cc (~_Async_state_common):
2202         Here.
2203         (_GLIBCXX_ABI_COMPAT_ASYNC): Rename to _GLIBCXX_ASYNC_ABI_COMPAT.
2204         * include/std/future (_GLIBCXX_ABI_COMPAT_ASYNC): Likewise.
2206 2012-08-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
2207             Geoff Romer  <gromer@google.com>
2209         PR libstdc++/54351
2210         * include/bits/unique_ptr.h (unique_ptr<T>::~unique_ptr): Do not use
2211         reset().
2212         (unique_ptr<T[]>::~unique_ptr()): Likewise.
2213         * testsuite/20_util/unique_ptr/54351.cc: New.
2214         * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust dg-error
2215         line numbers.
2217 2012-08-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
2219         PR libstdc++/54297
2220         * include/std/future (~_Async_state_impl): Join thread before
2221         derived class members are destroyed.
2222         (~_Async_state_common): Only define non-trivial destructor when
2223         included from future.cc for ABI compatibility reasons.
2224         * src/c++11/future.cc (_GLIBCXX_ABI_COMPAT_ASYNC): Define.
2225         * testsuite/30_threads/async/54297.cc: New.
2227 2012-08-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
2229         PR libstdc++/54248
2230         * include/bits/concept_check.h: Replace references to boost
2231         namespace.
2233 2012-08-23  Jonathan Wakely  <jwakely.gcc@gmail.com>
2235         PR libstdc++/54354
2236         * doc/xml/manual/status_cxx2011.xml: Note missing manipulators.
2237         * doc/html/*: Regenerate.
2239 2012-08-15  Tom Tromey  <tromey@redhat.com>
2241         * testsuite/libstdc++-prettyprinters/cxx11.cc (struct datum):
2242         New.
2243         (global): New global.
2244         (main): Add test for unique_ptr.
2245         * python/libstdcxx/v6/printers.py
2246         (UniquePointerPrinter.to_string): Extract the pointer and also
2247         print its type.
2249 2012-08-13  David Adler  <d.adler.s@gmail.com>
2251         PR libstdc++/54185
2252         * src/c++11/condition_variable.cc (condition_variable): Always
2253         destroy native type in destructor.
2254         * testsuite/30_threads/condition_variable/54185.cc: New.
2256 2012-08-13  François Dumont  <fdumont@gcc.gnu.org>
2257             Ollie Wild  <aaw@google.com>
2259         * include/bits/hashtable.h
2260         (_Hashtable<>_M_insert_multi_node(hash_code, node_type*)): New.
2261         (_Hashtable<>_M_insert(_Args&&, false_type)): Use latter.
2262         (_Hashtable<>::_M_emplace(false_type, _Args&&...)): Likewise.
2263         (_Hashtable<>::_M_insert_bucket): Replace by ...
2264         (_Hashtable<>::_M_insert_unique_node(size_type, hash_code, node_type*)):
2265         ... this, new.
2266         (_Hashtable<>::_M_insert(_Args&&, true_type)): Use latter.
2267         (_Hashtable<>::_M_emplace(true_type, _Args&&...)): Likewise.
2268         * include/bits/hashtable_policy.h (_Map_base<>::operator[]): Use
2269         latter, emplace the value_type rather than insert.
2270         * include/std/unordered_map: Include tuple.
2271         * include/std/unordered_set: Likewise.
2272         * testsuite/util/testsuite_counter_type.h: New.
2273         * testsuite/23_containers/unordered_map/operators/2.cc: New.
2275 2012-08-13  Marc Glisse  <marc.glisse@inria.fr>
2277         PR libstdc++/54112
2278         * include/c_compatibility/complex.h: Undefine complex, always
2279         include system's complex.h if present.
2280         * testsuite/26_numerics/complex/c99.cc: New testcase.
2281         * testsuite/17_intro/headers/c++1998/complex.cc: Likewise.
2282         * doc/xml/manual/numerics.xml: Document it.
2284 2012-08-12  Jonathan Wakely  <jwakely.gcc@gmail.com>
2286         PR libstdc++/52681
2287         * src/c++11/thread.cc (thread::_M_start_thread): Improve error text
2288         when threads are not enabled.
2290 2012-08-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
2292         * acinclude.m4: Update references to final C++11 standard.
2293         * include/bits/shared_ptr.h: Likewise.
2294         * include/bits/shared_ptr_base.h: Likewise.
2295         * include/bits/unique_ptr.h: Likewise.
2296         * include/std/chrono: Likewise.
2297         * include/std/thread: Likewise.
2299 2012-08-07  Benjamin Kosnik  <bkoz@redhat.com>
2301         PR libstdc++/54005
2302         * include/std/atomic: Use __atomic_always_lock_free.
2303         * include/bits/atomic_base.h: Same.
2305 2012-08-06  Paolo Carlini  <paolo.carlini@oracle.com>
2307         * testsuite/decimal/mixed-mode-cmp_neg.cc: Add test variable; minor
2308         tweaks.
2309         * testsuite/decimal/unary-arith.cc: Likewise.
2310         * testsuite/decimal/ctor.cc: Likewise.
2311         * testsuite/decimal/conversion-to-integral.cc: Likewise.
2312         * testsuite/decimal/make-decimal.cc: Likewise.
2313         * testsuite/decimal/comparison.cc: Likewise.
2314         * testsuite/decimal/incdec-memfunc.cc: Likewise.
2315         * testsuite/decimal/conversion-to-generic-float.cc: Likewise.
2316         * testsuite/decimal/compound-assignment-memfunc.cc: Likewise.
2317         * testsuite/decimal/cast_neg.cc: Likewise.
2318         * testsuite/decimal/incdec.cc: Likewise.
2319         * testsuite/decimal/mixed-mode-arith_neg.cc: Likewise.
2320         * testsuite/decimal/binary-arith.cc: Likewise.
2321         * testsuite/decimal/conversion-from-float.cc: Likewise.
2322         * testsuite/decimal/conversion-from-integral.cc: Likewise.
2323         * testsuite/decimal/compound-assignment.cc: Likewise.
2325 2012-08-06  Peter Bergner  <bergner@vnet.ibm.com>
2327         PR libstdc++/54036
2328         * include/decimal/decimal.h (_DEFINE_DECIMAL_UNARY_OP): Use _Op as
2329         a unary operator.
2330         * testsuite/decimal/pr54036-1.cc: New test.
2331         * testsuite/decimal/pr54036-2.cc: Likewise.
2332         * testsuite/decimal/pr54036-3.cc: Likewise.
2334 2012-08-04  Paolo Carlini  <paolo.carlini@oracle.com>
2336         Revert:
2337         2012-08-03  Ollie Wild  <aaw@google.com>
2338                     Richard Smith  <richardsmith@google.com>
2340         * include/bits/stl_map.h (operator[](key_type&&)): Replace
2341         std::make_pair with value_type.
2342         * testsuite/23_containers/map/operators/2.cc: New test.
2344 2012-08-03  François Dumont  <fdumont@gcc.gnu.org>
2346         * include/debug/functions.h (__check_partition_lower_aux): Remove
2347         redundant comparison with pivot value.
2348         (__check_partition_upper_aux): Likewise.
2350 2012-08-03  Ollie Wild  <aaw@google.com>
2351             Richard Smith  <richardsmith@google.com>
2353         * include/bits/stl_map.h (operator[](key_type&&)): Replace
2354         std::make_pair with value_type.
2355         * testsuite/23_containers/map/operators/2.cc: New test.
2357 2012-08-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
2359         * include/std/memory: Include auto_ptr.h later.
2360         * include/bits/shared_ptr.h (shared_ptr(auto_ptr<_Up>&&): Remove
2361         definition.
2362         * include/bits/shared_ptr_base.h (__shared_ptr(auto_ptr<_Up>&&):
2363         Likewise.
2364         * include/bits/unique_ptr.h (unique_ptr(auto_ptr<_Up>&&): Likewise.
2365         * include/backward/auto_ptr.h (unique_ptr(auto_ptr<_Up>&&): Define.
2366         (shared_ptr(auto_ptr<_Up>&&, __shared_ptr(auto_ptr<_Up>&&): Likewise.
2367         * include/std/future: Reduce header dependencies.
2368         * testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line
2369         numbers.
2370         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
2371         * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise.
2373 2012-07-30  François Dumont  <fdumont@gcc.gnu.org>
2375         * include/bits/c++config (_GLIBCXX_END_NAMESPACE_CONTAINER): Fix
2376         order of closures.
2377         (_GLIBCXX_END_NAMESPACE_ALGO): Likewise.
2379 2012-07-29  François Dumont  <fdumont@gcc.gnu.org>
2381         PR libstdc++/54075
2382         * include/bits/hashtable_policy.h
2383         (_Prime_rehash_policy::_M_next_bkt): Add a growth factor set to 2
2384         to boost growth in the number of buckets.
2385         * testsuite/performance/23_containers/insert/unordered_set.cc: New.
2387 2012-07-25  François Dumont  <fdumont@gcc.gnu.org>
2389         PR libstdc++/54075
2390         * include/bits/hashtable.h
2391         (_Hashtable<>::_Hashtable(_InputIterator, _InputIterator,
2392         size_type, ...): Remove std::max usage to guarantee that hashtable
2393         state is consistent with hash policy state.
2394         (_Hashtable<>::rehash): Likewise. Set _M_prev_resize to 0 to avoid
2395         the hashtable shrinking on next insertion.
2396         * testsuite/23_containers/unordered_set/modifiers/reserve.cc: New.
2397         * testsuite/23_containers/unordered_multiset/modifiers/reserve.cc: New.
2398         * testsuite/23_containers/unordered_map/modifiers/reserve.cc: New.
2399         * testsuite/23_containers/unordered_multimap/modifiers/reserve.cc: New.
2401 2012-07-20  Chip Salzenberg  <chip@pobox.com>
2402             Jonathan Wakely  <jwakely.gcc@gmail.com>
2404         PR libstdc++/54025
2405         * include/std/chrono (duration<>::duration): Fix per C++11.
2406         * testsuite/20_util/duration/cons/54025.cc: New.
2407         * testsuite/20_util/duration/cons/constexpr.cc: Adjust.
2409 2012-07-20  Paolo Carlini  <paolo.carlini@oracle.com>
2411         * testsuite/30_threads/thread/adl.cc: Add missing dg-requires.
2413 2012-07-19  Tristan Gingold  <gingold@adacore.com>
2414             Richard Henderson  <rth@redhat.com>
2416         * libsupc++/eh_personality.cc (__gxx_personality_seh0): New function.
2417         Adjust for SEH.
2418         * config/abi/pre/gnu.ver: Add __gxx_personality_seh0.
2420 2012-07-18  Paolo Carlini  <paolo.carlini@oracle.com>
2422         PR c++/51213
2423         * testsuite/20_util/pair/noncopyable.cc: New.
2425 2012-07-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
2427         PR libstdc++/53270
2428         * include/ext/concurrence.h (__mutex, __recursive_mutex, __cond): Use
2429         NSDMI in C++98 mode too.
2430         * include/ext/rope: Add system_header pragma.
2431         (_Refcount_Base, _Rope_RopeRep): Use NSDMI.
2432         (_Rope_RopeRep::~_Rope_RopeRep): Destroy mutex.
2434 2012-07-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
2436         PR libstdc++/53978
2437         * include/bits/alloc_traits.h (allocator_traits): Define static
2438         constants.
2439         * include/bits/ptr_traits.h (pointer_traits): Likewise.
2440         * include/ext/alloc_traits.h (__allocator_always_compares_equal):
2441         Likewise.
2443 2012-07-13  Paolo Carlini  <paolo.carlini@oracle.com>
2445         PR libstdc++/53657
2446         * include/bits/stl_pair.h (pair<>::pair(pair&&)): Declare defaulted,
2447         per C++11.
2448         * include/bits/stl_map.h (map<>::insert(_Pair&&), map<>::insert
2449         (const_iterator, _Pair&&)): Constrain with std::is_constructible,
2450         per LWG2005.
2451         * include/bits/stl_multimap.h (multimap<>::insert(_Pair&&),
2452         multimap<>::insert(const_iterator, _Pair&&)): Likewise.
2453         * include/bits/hashtable_policy.h (_Insert<>::insert(_Pair&&),
2454         _Insert<>::insert(const_iterator, _Pair&&)): Likewise.
2455         * include/debug/unordered_map: Adjust.
2456         * include/debug/map.h: Likewise.
2457         * include/debug/multimap.h: Likewise.
2458         * include/profile/unordered_map: Likewise.
2459         * include/profile/map.h: Likewise.
2460         * include/profile/multimap.h: Likewise.
2462 2012-07-06  Paolo Carlini  <paolo.carlini@oracle.com>
2464         PR libstdc++/53872
2465         * include/std/thread (thread::_M_make_routine): Qualify make_shared
2466         to prevent ADL.
2467         * testsuite/30_threads/thread/adl.cc: New.
2469 2012-07-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
2471         * include/std/condition_variable: Update copyright years.
2473 2012-07-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
2475         PR libstdc++/53830
2476         * include/std/condition_variable (condition_variable_any::wait):
2477         Move _Unlock type to class scope.
2478         (condition_variable_any::wait_until): Reuse it.
2479         * testsuite/30_threads/condition_variable_any/53830.cc: New.
2481 2012-07-04  Matthias Klose  <doko@ubuntu.com>
2483         * testsuite/28_regex/headers/04_header: Remove empty directory.
2484         * testsuite/28_regex/algorithms/02_match: Likewise.
2486 2012-07-03  Paolo Carlini  <paolo.carlini@oracle.com>
2488         PR libstdc++/53840
2489         * include/std/ratio (ratio_multiply, ratio_divide, ratio_add,
2490         ratio_subtract): Use template aliases.
2491         * include/std/chrono (duration<>::duration(const duration<>&),
2492         duration_cast): Adjust.
2493         * testsuite/20_util/ratio/operations/53840.cc: New.
2494         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
2495         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
2496         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
2497         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
2499 2012-07-02  Paolo Carlini  <paolo.carlini@oracle.com>
2501         Revert:
2502         2011-10-04  Paolo Carlini  <paolo.carlini@oracle.com>
2504         PR libstdc++/49561
2505         * include/bits/stl_list.h (_List_base<>::_List_impl::_M_size):
2506         Add in C++0x mode.
2507         (_List_base<>::_List_impl, _List_base<>::_M_get_node,
2508         _List_base<>::_M_put_node, _List_base<>::_List_base(_List_base&&),
2509         list<>::size, list<>::swap, list<>::splice): Use it.
2510         (operator==(const list<>&, const list<>&)): Rewrite in C++0x mode.
2511         * include/bits/list.tcc (list<>::erase): Likewise.
2512         (list<>::merge): Adjust in C++0x mode.
2513         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2514         Adjust dg-error line number.
2515         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
2516         Likewise.
2517         * testsuite/23_containers/list/requirements/dr438/
2518         constructor_1_neg.cc: Likewise.
2519         * testsuite/23_containers/list/requirements/dr438/
2520         constructor_2_neg.cc: Likewise.
2522 2012-06-27  Benjamin Kosnik  <bkoz@redhat.com>
2524         * include/bits/c++config: Remove __regex nested namespace.
2525         * include/bits/regex_compiler.h: Change __regex to
2526         __detail. Adjust doxygen markup, add regex-details group.
2527         * include/bits/regex_constants.h: Same.
2528         * include/bits/regex_cursor.h: Same.
2529         * include/bits/regex_error.h: Same.
2530         * include/bits/regex_grep_matcher.h: Same.
2531         * include/bits/regex_grep_matcher.tcc: Same.
2532         * include/bits/regex_nfa.h: Same.
2533         * include/bits/regex_nfa.tcc: Same.
2534         * include/bits/regex.h: Same. Remove static from global constants.
2536         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers.
2538         * include/bits/locale_classes.tcc: Add use_facet, has_facet to
2539         locales group.
2541 2012-06-25  Edward Smith-Rowland  <3dw4rd@verizon.net>
2543         * include/tr2/bool_set (count, size, num_blocks, empty, max_size):
2544         Add noexcept.
2546 2012-06-25  Edward Smith-Rowland  <3dw4rd@verizon.net>
2548         * include/tr2/dynamic_bitset (count, size, num_blocks, empty, max_size):
2549         Add noexcept.
2551 2012-06-25  Benjamin Kosnik  <bkoz@redhat.com>
2553         * doc/doxygen/user.cfg.in: Change COMPACT_LATEX to NO.
2555 2012-06-24  Benjamin Kosnik  <bkoz@redhat.com>
2557         * testsuite/28_regex/algorithms/02_match: To...
2558         * testsuite/28_regex/algorithms/match: ...this.
2559         * testsuite/28_regex/headers/04_header/regex/std_c++0x_neg.cc: Remove
2560         duplicate.
2562 2012-06-18  Jörg Sonnenberger <joerg@britannica.bec.de>
2563             Jonathan Wakely  <jwakely.gcc@gmail.com>
2565         PR libstdc++/53678
2566         * config/os/bsd/netbsd/ctype_base.h: Check for _CTYPE_U.
2567         * testsuite/22_locale/ctype_base/53678.cc: New.
2569 2012-06-15  Jonathan Wakely  <jwakely.gcc@gmail.com>
2571         PR libstdc++/53578
2572         * include/ext/concurrence.h (__recursive_mutex::_S_destroy): Fix
2573         narrowing conversion.
2574         * include/std/mutex (__recursive_mutex_base::_S_destroy): Likewise.
2576 2012-06-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
2578         PR libstdc++/53270
2579         * include/ext/concurrence.h (__mutex, __recursive_mutex, __cond): Use
2580         NSDMI in C++11 mode.
2581         * include/ext/rope (_Refcount_Base): Likewise. Destroy mutex in
2582         destructor when initialized by function.
2584 2012-06-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
2586         PR libstdc++/53648
2587         * include/std/tuple (__empty_not_final): Do not use EBO for tuples.
2588         * testsuite/20_util/tuple/53648.cc: New.
2589         * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line
2590         number.
2592 2012-06-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
2594         * doc/xml/manual/status_cxx2011.xml: Correct C++11 status table.
2596 2012-06-01  Jonathan Wakely  <jwakely.gcc@gmail.com>
2598         * doc/xml/manual/status_cxx2011.xml: Correct C++11 status table.
2600 2012-05-31  Benjamin Kosnik  <bkoz@redhat.com>
2602         PR libstdc++/53543
2603         * include/bits/hashtable_policy.h (_Insert::__is_convertible):
2604         Rename to __is_conv to avoid clash with clang built-in.
2606 2012-05-29  François Dumont  <fdumont@gcc.gnu.org>
2608         * include/bits/stl_tempbuf.h (__uninitialized_construct_buf)
2609         (__uninitialized_construct_buf_dispatch<>::__ucr): Fix to work
2610         with iterator returning rvalue.
2611         * testsuite/25_algorithms/stable_sort/3.cc: New.
2613 2012-05-28  Paolo Carlini  <paolo.carlini@oracle.com>
2615         PR c++/53503
2616         * testsuite/26_numerics/headers/cmath/53503.cc: New.
2618 2012-05-22  Dodji Seketeli  <dodji@redhat.com>
2620         PR c++/53322
2621         * include/bits/stl_algobase.h (lower_bound)
2622         (lexicographical_compare): Do not declare unused local typedefs
2623         here when Concepts are turned off.
2625 2012-05-21  Paolo Carlini  <paolo.carlini@oracle.com>
2627         * testsuite/22_locale/num_put/put/char/9780-2.cc: Avoid -Wall warnings.
2628         * testsuite/29_atomics/atomic/cons/49445.cc: Likewise.
2629         * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
2630         * Likewise.
2631         * testsuite/23_containers/unordered_map/observers.cc: Likewise.
2632         * testsuite/23_containers/unordered_map/erase/1.cc: Likewise.
2633         * testsuite/23_containers/unordered_multimap/erase/1.cc: Likewise.
2634         * testsuite/23_containers/unordered_multimap/erase/2.cc: Likewise.
2635         * testsuite/23_containers/unordered_multimap/insert/53115.cc: Likewise.
2636         * testsuite/23_containers/unordered_multimap/observers.cc: Likewise.
2637         * testsuite/23_containers/vector/debug/alloc_prop.cc: Likewise.
2638         * testsuite/23_containers/unordered_set/observers.cc: Likewise.
2639         * testsuite/23_containers/unordered_set/erase/1.cc: Likewise.
2640         * testsuite/23_containers/unordered_multiset/erase/1.cc: Likewise.
2641         * testsuite/23_containers/unordered_multiset/erase/2.cc: Likewise.
2642         * testsuite/23_containers/unordered_multiset/insert/53115.cc: Likewise.
2643         * testsuite/23_containers/unordered_multiset/insert/multiset_range.cc:
2644         * Likewise.
2645         * testsuite/23_containers/unordered_multiset/observers.cc: Likewise.
2647 2012-05-21  Paolo Carlini  <paolo.carlini@oracle.com>
2649         PR c++/53361
2650         * testsuite/23_containers/array/cons/53361.cc: New.
2652 2012-05-17  Paolo Carlini  <paolo.carlini@oracle.com>
2654         PR c++/44516
2655         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust
2656         dg-error line number.
2658 2012-05-16  H.J. Lu  <hongjiu.lu@intel.com>
2660         * configure: Regenerated.
2662 2012-05-15  Paolo Carlini  <paolo.carlini@oracle.com>
2664         PR libstdc++/53339
2665         * include/bits/hashtable_policy.h (__detail::_Identity,
2666         __detail::_Select1st): Add.
2667         (_Map_base, _Hashtable_base): Use the latter, adjust parameters.
2668         * include/bits/hashtable.h (_Hashtable::__key_extract): Adjust.
2669         * include/bits/unordered_set.h (__uset_hashtable, __umset_hashtable):
2670         Likewise.
2671         * include/bits/unordered_map.h (__umap_hashtable, __ummap_hashtable):
2672         Likewise.
2673         * include/bits/stl_function.h (_Identity, _Select1st, _Select2nd)
2674         Unconditionally derive from unary_function.
2675         * include/ext/functional (identity, select1st, select2nd): Remove
2676         #ifdef __GXX_EXPERIMENTAL_CXX0X__ bits.
2677         * testsuite/23_containers/unordered_map/requirements/53339.cc: New.
2678         * testsuite/23_containers/unordered_multimap/requirements/
2679         53339.cc: Likewise.
2681 2012-05-11  François Dumont  <fdumont@gcc.gnu.org>
2683         PR libstdc++/53263
2684         * include/debug/safe_iterator.h (__gnu_debug::__base): Move...
2685         * include/debug/functions.h: ... Here.
2686         (__check_sorted_aux): Add overload for random access safe
2687         iterators.
2688         (__check_partition_lower_aux): New.
2689         (__check_partition_lower): Use latter.
2690         (__check_partition_upper_aux): New.
2691         (__check_partition_upper): Use latter.
2692         * include/debug/macros.h (__glibcxx_check_heap)
2693         (__glibcxx_check_heap_pred): Use __gnu_debug::__base on iterator range.
2695 2012-05-10  DJ Delorie  <dj@redhat.com>
2697         * include/bits/random.tcc (seed_seq::generate): Cast max()
2698         operands to size_t to ensure a template match.
2699         * include/std/bitset (_M_copy_from_ptr): Cast min() operands to
2700         size_t to ensure a template match.
2702 2012-05-03  Benjamin Kosnik  <bkoz@redhat.com>
2704         * scripts/testsuite_flags.in (cxxflags): Remove
2705         -ftrack-macro-expansion=0.
2707 2012-05-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
2709         * doc/xml/faq.xml: Update outdated allocator documentation.
2710         * doc/xml/manual/allocator.xml: Likewise.
2711         * doc/xml/manual/debug.xml: Likewise.
2712         * doc/xml/manual/evolution.xml: Likewise.
2713         * doc/xml/manual/using.xml: Likewise.
2715 2012-05-02  Benjamin Kosnik  <bkoz@redhat.com>
2717         PR libstdc++/44015
2718         * include/bits/basic_ios.h: Add tparam markup for
2719         * doxygen.  include/bits/basic_string.h: Same.
2720         * include/bits/forward_list.h: Same.
2721         * include/bits/stl_bvector.h: Same.
2722         * include/bits/stl_deque.h: Same.
2723         * include/bits/stl_list.h: Same.  include/bits/stl_map.h:
2724         * Same.  include/bits/stl_multimap.h: Same.
2725         * include/bits/stl_multiset.h: Same.
2726         * include/bits/stl_pair.h: Same.
2727         * include/bits/stl_queue.h: Same.
2728         * include/bits/stl_set.h: Same.
2729         * include/bits/stl_stack.h: Same.
2730         * include/bits/stl_vector.h: Same.
2731         * include/bits/unordered_map.h: Same.
2732         * include/bits/unordered_set.h: Same.  include/std/array:
2733         * Same.  include/std/atomic: Same.  include/std/fstream:
2734         * Same.  include/std/istream: Same.  include/std/ostream:
2735         * Same.  include/std/sstream: Same.
2736         * include/std/streambuf: Same.
2737         * testsuite/23_containers/deque/requirements/dr438/*:
2738         Adjust line numbers.
2739         * testsuite/23_containers/list/requirements/dr438/*: Same.
2740         * testsuite/23_containers/vector/requirements/dr438/*: Same.
2742 2012-05-02  DJ Delorie  <dj@redhat.com>
2744         * crossconfig.m4: Since we know that all TPF builds are cross-
2745         builds and cannot run configuration-time link tests, do not
2746         allow it; just go with known supported linker options.
2747         * configure: Regenerate (called as GLIBCXX_CROSSCONFIG).
2749 2012-05-02  Benjamin Kosnik  <bkoz@redhat.com>
2751         * include/bits/hashtable_policy.h: Correct namepace nesting for
2752         _Hashtable forward declaration.
2754 2012-05-01  François Dumont  <fdumont@gcc.gnu.org>
2756         PR libstdc++/53115
2757         * include/bits/hashtable.h
2758         (_Hashtable<>::_M_rehash_aux(size_type, false_type)): Fix buckets
2759         after insertion of several equivalent elements.
2760         * testsuite/23_containers/unordered_multiset/insert/53115.cc: New.
2761         * testsuite/23_containers/unordered_multimap/insert/53115.cc: New.
2763 2012-04-29  Marc Glisse  <marc.glisse@inria.fr>
2764             Paolo Carlini  <paolo.carlini@oracle.com>
2766         PR libstdc++/51795
2767         * include/bits/stl_algobase.h (__lg<>(_Size)): Remove.
2768         (__lg(int), __lg(unsigned), __lg(long), __lg(unsigned long),
2769         __lg(long long), __lg(unsigned long long)): Define constexpr.
2770         * include/bits/random.h (_Mod<>): Overcome Schrage's algorithm
2771         limitations.
2772         (__mod): Adjust.
2773         (linear_congruential): Remove FIXME static_assert.
2774         * include/bits/random.tcc (_Mod<>): Adjust.
2775         * testsuite/26_numerics/random/linear_congruential_engine/operators/
2776         51795.cc: New.
2778 2012-04-29  Jonathan Wakely  <jwakely.gcc@gmail.com>
2780         * include/std/functional (function::function(F)): LWG 2132: Disable
2781         constructor if argument isn't callable.
2782         * testsuite/20_util/function/cons/callable.cc: New.
2784 2012-04-29  Marc Glisse  <marc.glisse@inria.fr>
2786         PR libstdc++/22200
2787         * include/std/limits (numeric_limits<>::is_modulo): False for
2788         signed types.
2790 2012-04-25  Benjamin Kosnik  <bkoz@redhat.com>
2792         * include/bits/hashtable.h: Adjust doxygen markup for base
2793         classes.
2794         * include/bits/hashtable_policy.h: Same.
2796 2012-04-25  Benjamin Kosnik  <bkoz@redhat.com>
2798         PR libstdc++/52689
2799         * testsuite/17_intro/static.cc: Fix.
2800         * testsuite/lib/dg-options.exp (dg-require-static-libstdcxx): New.
2801         * testsuite/lib/libstdc++.exp (check_v3_target_static_libstdcxx): New.
2803 2012-04-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
2805         * include/std/scoped_allocator (scoped_allocator::__outermost): Do
2806         not pass non-POD to varargs function.
2807         * testsuite/20_util/scoped_allocator/1.cc: Fix test.
2809 2012-04-24  Benjamin Kosnik  <bkoz@redhat.com>
2811         PR libstdc++/52689
2812         * testsuite/17_intro/static.cc: New.
2814 2012-04-23  Daniel Krugler  <daniel.kruegler@gmail.com>
2816         * include/std/type_traits (is_nothrow_destructible): Implement.
2817         (is_destructible): Implement LWG 2049.
2818         * testsuite/util/testsuite_tr1.h: Add tests.
2819         * testsuite/20_util/is_nothrow_destructible/value.cc: New.
2820         * testsuite/20_util/is_nothrow_destructible/requirements/typedefs.cc:
2821         * testsuite/20_util/is_nothrow_destructible/requirements/
2822         explicit_instantiation.cc: Likewise.
2823         * testsuite/20_util/is_destructible/value.cc: Adjust and extend.
2824         * testsuite/20_util/is_default_constructible/value.cc: Tweak.
2825         * testsuite/20_util/is_constructible/value-2.cc: Likewise.
2826         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
2827         dg-error line numbers.
2828         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2829         Likewise.
2830         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
2832 2012-04-23  Paolo Carlini  <paolo.carlini@oracle.com>
2834         PR libstdc++/53080
2835         * include/std/array (tuple_element, get): static_assert I < N.
2836         * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
2837         New.
2838         * testsuite/23_containers/array/tuple_interface/get_neg.cc: Likewise.
2839         * testsuite/23_containers/array/tuple_interface/tuple_element.cc: Fix.
2841 2012-04-23  Chris Jefferson  <chris@bubblescope.net>
2843         PR testsuite/53046
2844         * testsuite/25_algorithms/stable_partition/mem_check.cc: Fix size
2845         of array A.
2846         * testsuite/25_algorithms/stable_sort/mem_check.cc: Likewise.
2848 2012-04-22  Paolo Carlini  <paolo.carlini@oracle.com>
2850         PR libstdc++/53067
2851         * include/bits/hashtable_policy.h: Change inheritances to public.
2852         * testsuite/23_containers/unordered_map/requirements/53067.cc: New.
2853         * testsuite/23_containers/unordered_set/requirements/53067.cc: Likewise.
2855 2012-04-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
2857         * include/ext/alloc_traits.h (__alloc_traits::difference_type):
2858         Define.
2860 2012-04-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
2862         PR libstdc++/53027
2863         * include/bits/ptr_traits.h (pointer_traits::rebind): Make public.
2864         * testsuite/20_util/pointer_traits/requirements/typedefs.cc: Check
2865         rebind works.
2867 2012-04-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
2869         * include/debug/forward_list (forward_list::splice_after): Check
2870         allocators are equal.
2871         * src/c++11/debug.cc: Fix spelling.
2872         * testsuite/23_containers/forward_list/debug/splice_after5_neg.cc:
2873         New.
2874         * testsuite/23_containers/forward_list/debug/splice_after6_neg.cc:
2875         Likewise.
2876         * testsuite/23_containers/forward_list/debug/splice_after7_neg.cc:
2877         Likewise.
2879 2012-04-20  Paolo Carlini  <paolo.carlini@oracle.com>
2881         PR libstdc++/53052
2882         * include/std/type_traits (is_explicitly_convertible): Remove.
2883         * testsuite/20_util/is_explicitly_convertible: Likewise.
2884         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
2885         Adjust dg-error line numbers.
2886         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2887         Likewise.
2888         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
2890 2012-04-17  Benjamin Kosnik  <bkoz@redhat.com>
2892         * testsuite/20_util/specialized_algorithms/uninitialized_copy/
2893         808590.cc: New.
2895 2012-04-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2897         * testsuite/util/testsuite_abi.cc (compare_symbols): Change
2898         summary header to avoid confusion with DejaGnu header.
2900 2012-04-15  Paolo Carlini  <paolo.carlini@oracle.com>
2902         PR libstdc++/52702
2903         * include/std/type_traits (is_trivially_destructible): Add.
2904         (has_trivial_destructor): Remove.
2905         * testsuite/util/testsuite_common_types.h: Adjust.
2906         * testsuite/20_util/tuple/requirements/dr801.cc: Likewise.
2907         * testsuite/20_util/pair/requirements/dr801.cc: Likewise.
2908         * testsuite/20_util/is_trivially_destructible/value.cc: New.
2909         * testsuite/20_util/is_trivially_destructible/requirements/
2910         typedefs.cc: Likewise.
2911         * testsuite/20_util/is_trivially_destructible/requirements/
2912         explicit_instantiation.cc: Likewise.
2913         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
2914         Adjust dg-error line numbers.
2915         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2916         Likewise.
2917         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
2919 2012-04-14  Paolo Carlini  <paolo.carlini@oracle.com>
2921         PR libstdc++/52699
2922         * include/bits/random.tcc (independent_bits_engine<>::operator()())
2923         Avoid various overflows; use common_type on result_type and
2924         _RandomNumberEngine::result_type; avoid floating point computations;
2925         other smaller tweaks.
2927         * include/bits/random.tcc (uniform_int_distribution<>::operator())
2928         Use common_type; assume _UniformRandomNumberGenerator::result_type
2929         unsigned; tidy.
2931         * include/bits/stl_algobase.h (__lg(unsigned), __lg(unsigned long),
2932         __lg(unsigned long long)): Add.
2934 2012-04-14  Alan Modra  <amodra@gmail.com>
2936         PR libstdc++/52839
2937         * acinclude.m4 (_GLIBCXX_ATOMIC_BUILTINS): Do not depend on
2938         glibcxx_cv_atomic_long_long.
2939         * configure: Regenerate.
2941 2012-04-13  Paolo Carlini  <paolo.carlini@oracle.com>
2943         * testsuite/26_numerics/cmath/51083.cc: Move...
2944         * testsuite/26_numerics/headers/cmath/51083.cc: ... here.
2946 2012-04-13  Laurent Alfonsi  <laurent.alfonsi@st.com>
2948         PR libstdc++/52604
2949         * src/c++98/mt_allocator.cc: (__freelist::~__freelist): Reset pointer.
2951 2012-04-13  Paolo Carlini  <paolo.carlini@oracle.com>
2953         * include/debug/safe_iterator.h (_BeforeBeginHelper<>::
2954         _S_Is_Beginnest): Add.
2955         * include/debug/forward_list (_BeforeBeginHelper<>::
2956         _S_Is_Beginnest): Likewise.
2957         (_Safe_iterator<>::_M_is_beginnest): Add.
2958         * include/debug/safe_iterator.tcc (_Safe_iterator<>::_M_valid_range):
2959         Use the latter.
2960         * testsuite/23_containers/forward_list/debug/splice_after.cc:
2961         Add test.
2963 2012-04-12  Benjamin Kosnik  <bkoz@redhat.com>
2965         * include/bits/unordered_map.h (__unordered_map): Remove.
2966         (__unordered_multimap): Remove.
2967         Add aliases for __umap_traits, __umap_hashtable, __ummap_traits,
2968         __ummap_hashtable.
2969         (unordered_map): Derive from __umap_hashtable.
2970         (unordered_multimap): Derive from __ummap_hashtable.
2971         * include/bits/unordered_set.h (__unordered_set): Remove.
2972         (__unordered_multiset): Remove.
2973         Add aliases for __uset_traits, __uset_hashtable, __umset_traits,
2974         __umset_hashtable.
2975         (unordered_set): Derive from __uset_hashtable.
2976         (unordered_multiset): Derive from __umset_hashtable.
2977         * include/bits/hashtable.h (__cache_default): New, consolidated
2978         cache defaults for _Hashtable. Adjust comments for doxygen.
2979         (_Hashtable): Consolidate bool template parameters into new,
2980         _Traits class. Inherited base classes synthesize _Hashtable in
2981         CRTP via original 10 parameters. Prefer using declarations to
2982         typedefs, add __node_type, __bucket_type, etc. Push many nested
2983         types down hierarchy to _Hashtable_base. Add constructors
2984         necessary for top-level unordered_containers. Consolidate insert
2985         member functions and logic in new base class, __detail::_Insert
2986         and __detail::_Insert_base.
2987         (_Hashtable::operator=(initializer_list)): Add.
2988         * include/bits/hashtable_policy.h: Convert to doxygen markup.
2989         (_Hashtable_traits) New. Consolidate bool template parameters here.
2990         (_Insert, _Insert_base): New, consolidated insert member functions.
2991         (_Map_base, _Equality, _Rehash_base): Adjust template parameters,
2992         use base types.
2993         (_Hashtable_base): Move type declarations useful to other base
2994         classes into this class.
2995         * python/libstdcxx/v6/printers.py (Tr1HashtableIterator): Update.
2996         * testsuite/23_containers/unordered_set/instantiation_neg.cc:
2997         Adjust traits, line numbers.
2999 2012-04-12   Jeffrey Yasskin  <jyasskin@google.com>
3001         PR libstdc++/52822
3002         * include/bits/stl_algo.h (__find_if_not): Expose in C++98 mode.
3003         (__find_if_not_n): Like __find_if_not, but works on and updates a
3004         counted range instead of a bounded range.
3005         (stable_partition): Guarantee !__pred(*__first) in call to
3006         __stable_partition_adaptive() or __inplace_stable_partition().
3007         (__stable_partition_adaptive): Use new precondition to avoid
3008         moving/copying objects onto themselves.  Guarantee new
3009         precondition to recursive calls.
3010         (__inplace_stable_partition): Use new precondition to simplify
3011         base case, remove __last parameter.  Guarantee new precondition to
3012         recursive calls.
3013         * testsuite/25_algorithms/stable_partition/moveable.cc (test02):
3014         Test a sequence that starts with a value matching the predicate.
3015         * testsuite/25_algorithms/stable_partition/pr52822.cc: Test
3016         vectors, which have a destructive self-move-assignment.
3018 2012-04-12  Andreas Schwab  <schwab@linux-m68k.org>
3020         * testsuite/Makefile.am (check_DEJAGNUnormal0): Run
3021         prettyprinters.exp.
3022         * testsuite/Makefile.in: Regenerated.
3024 2012-04-12  Paolo Carlini  <paolo.carlini@oracle.com>
3026         PR libstdc++/52942
3027         * include/bits/stl_function.h (_Identity, _Select1st, _Select2nd):
3028         In C++11 mode do not derive from std::unary_function.
3029         * include/ext/functional (identity, select1st, select2nd): Adjust.
3030         * testsuite/23_containers/unordered_map/requirements/52942.cc: New.
3031         * testsuite/23_containers/unordered_set/requirements/52942.cc: Likewise.
3033 2012-04-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
3035         PR libstdc++/52924
3036         * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Add
3037         user-defined destructor.
3038         (_Sp_counted_inplace): Likewise.
3039         * testsuite/20_util/shared_ptr/cons/52924.cc: New.
3040         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error
3041         line numbers.
3043 2012-04-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
3045         * doc/xml/manual/debug.xml (Debug Versions of Library Binary Files):
3046         Re-arrange text slightly.
3048 2012-04-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
3050         * testsuite/performance/30_threads/future/polling.cc: Adjust.
3052 2012-04-11  Paolo Carlini  <paolo.carlini@oracle.com>
3054         * include/bits/forward_list.h (splice_after(const_iterator,
3055         forward_list&), splice_after(const_iterator, forward_list&,
3056         const_iterator), splice_after(const_iterator, forward_list&,
3057         const_iterator, const_iterator), merge(forward_list&),
3058         merge(forward_list&, _Comp)): Add per C++11 as published (and
3059         LWG 1310).
3060         * include/debug/forward_list: Adjust.
3062         * include/bits/forward_list.h (splice_after(const_iterator,
3063         forward_list&&, const_iterator)): Only declare.
3064         (_M_transfer_after): Remove.
3065         (_M_splice_after(const_iterator, forward_list&&)): Change signature.
3066         (splice_after(const_iterator, forward_list&&, const_iterator,
3067         const_iterator)): Use the latter.
3068         * include/bits/forward_list.tcc (splice_after(const_iterator,
3069         forward_list&&, const_iterator)): Define here.
3070         (_M_splice_after): Define, use throughout.
3072         * include/bits/forward_list.h (insert_after(const_iterator,
3073         std::initializer_list<_Tp>)): Forward to insert_after(const_iterator,
3074         _InputIterator, _InputIterator).
3075         * include/bits/forward_list.tcc: Remove definition.
3077         * testsuite/23_containers/forward_list/modifiers/6.cc: New.
3078         * testsuite/23_containers/forward_list/operations/1.cc: Adjust.
3080 2012-04-11  Paolo Carlini  <paolo.carlini@oracle.com>
3082         PR libstdc++/52931
3083         * include/bits/functional_hash.h (struct hash): Remove definition.
3084         * testsuite/20_util/hash/52931.cc: New.
3086 2012-04-11  Manuel López-Ibáñez  <manu@gcc.gnu.org>
3088         PR 24985
3089         * testsuite/lib/prune.exp: Handle caret.
3091 2012-04-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3093         Partially revert:
3094         2012-03-28  Benjamin Kosnik  <bkoz@redhat.com>
3096         PR libstdc++/52689
3097         * src/c++98/compatibility-list.cc: Same.
3099 2012-04-05  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>
3101         PR bootstrap/52840
3102         * src/Makefile.am (build-debug): Do not adjust vpath dir, remove
3103         Makefile.tmp
3104         * src/Makefile.in: Adjust as per above.
3106 2012-04-04  Uros Bizjak  <ubizjak@gmail.com>
3108         Partially revert:
3109         2012-03-28  Benjamin Kosnik  <bkoz@redhat.com>
3111         PR libstdc++/52689
3112         * src/c++98/compatibility-ldbl.cc: Guard with PIC
3114 2012-04-02  Tristan Gingold  <gingold@adacore.com>
3116         * crossconfig.m4 (*-*-*vms*): Add.
3117         * configure: Regenerate.
3119 2012-04-01  Jonathan Wakely  <jwakely.gcc@gmail.com>
3121         PR libstdc++/52591
3122         * include/bits/stl_vector.h (vector::operator=(vector&&)): Dispatch
3123         to _M_move_assign depending on whether allocator is moved.
3124         (vector::_M_move_assign): Add overloaded functions.
3125         * testsuite/23_containers/vector/52591.cc: New.
3126         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
3127         Adjust dg-error line number.
3128         * testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc:
3129         Likewise.
3130         * testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc:
3131         Likewise.
3132         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
3133         Likewise.
3135 2012-04-01  Jonathan Wakely  <jwakely.gcc@gmail.com>
3137         * include/std/functional (__callable_functor): Overload for
3138         volatile-qualified pointers.
3139         * testsuite/20_util/function/10.cc: New.
3141 2012-03-30  Jeffrey Yasskin  <jyasskin@gcc.gnu.org>
3142             Paolo Carlini  <paolo.carlini@oracle.com>
3144         PR libstdc++/52799
3145         * include/bits/deque.tcc (emplace): Fix thinko, replace push_front
3146         -> emplace_front, and likewise for *_back.
3147         * testsuite/23_containers/deque/modifiers/emplace/52799.cc: New.
3148         * testsuite/23_containers/list/modifiers/emplace/52799.cc: Likewise.
3149         * testsuite/23_containers/vector/modifiers/emplace/52799.cc: Likewise.
3151 2012-03-28  Benjamin Kosnik  <bkoz@redhat.com>
3153         PR libstdc++/52689
3154         * libsupc++/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
3155         * libsupc++/Makefile.in: Regenerated.
3156         * src/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
3157         (libstdc___la_SOURCES): Add in compatiblity files, with content
3158         that varies with -DPIC.
3159         * src/Makefile.in: Regenerated.
3160         * src/c++11/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
3161         * src/c++11/Makefile.in: Regenerated.
3162         * src/c++11/compatibility-atomic-c++0x.cc: Guard with PIC.
3163         * src/c++11/compatibility-c++0x.cc: Same.
3164         * src/c++11/future.cc: Consolidate compatibility bits into..
3165         * src/c++11/mutex.cc: Consolidate compatibility bits into..
3166         * src/c++11/compatibility-thread-cxx0x.cc: ...here. New.
3167         * src/c++98/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
3168         * src/c++98/Makefile.in: Regenerated.
3169         * src/c++98/compatibility-ldbl.cc: Guard with PIC
3170         * src/c++98/compatibility-list-2.cc: Same.
3171         * src/c++98/compatibility-list.cc: Same.
3172         * src/c++98/compatibility.cc: Tweak comments.
3174 2012-03-28  Terry Guo  <terry.guo@arm.com>
3176         * testsuite/Makefile.am (TEST_GCC_EXEC_PREFIX): New.
3177         * testsuite/Makefile.in: Regenerated.
3179 2012-03-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
3181         * include/std/functional (mem_fn): Qualify to prevent ADL.
3182         * testsuite/20_util/function_objects/mem_fn/adl.cc: New.
3184 2012-03-27  Jonathan Wakely  <jwakely.gcc@gmail.com>
3186         * include/std/type_traits (result_of): Fix handling of cv-quals.
3187         * testsuite/20_util/result_of/1.cc: New.
3188         * testsuite/20_util/result_of/2.cc: New.
3189         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
3190         line numbers.
3191         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
3192         Likewise.
3193         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
3194         Likewise.
3196 2012-03-23  David S. Miller  <davem@davemloft.net>
3198         * config/abi/post/sparc-linux-gnu/baseline_symbols.txt: Update.
3200 2012-03-23  Benjamin Kosnik  <bkoz@redhat.com>
3202         * scripts/testsuite_flags.in (--cxxflags): Let CXXFLAGS set -g -O2.
3203         * testsuite/lib/libstdc++.exp: Same.
3205 2012-03-23  Paolo Carlini  <paolo.carlini@oracle.com>
3207         * include/bits/forward_list.h: Slightly tweak two comments.
3209 2012-03-22  Benjamin Kosnik  <bkoz@redhat.com>
3211         * doc/Makefile.am: XML output names have only .xml suffix.
3212         * doc/Makefile.in: Regenerate.
3214 2012-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
3216         * include/std/array (array<>::at(size_type) const): Fix version
3217         for undefined __EXCEPTIONS.
3219 2013-03-21  Andreas Tobler  <andreast@fgznet.ch>
3221         * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
3222         Skip this test on powerpc64-*-freebsd*.
3224 2012-03-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
3226         * include/bits/stl_list.h (list::_M_size): Use NSDMI.
3227         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
3228         Adjust line numbers.
3229         * testsuite/23_containers/list/requirements/dr438/
3230         constructor_1_neg.cc: Likewise.
3231         * testsuite/23_containers/list/requirements/dr438/
3232         constructor_2_neg.cc: Likewise.
3233         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
3234         Likewise.
3236 2012-03-19  Paweł Sikora  <pawel.sikora@agmk.net>
3238         PR libstdc++/52540
3239         * include/Makefile.am (c++config.h): Fix sed rule to not break
3240         the _GLIBCXX_EXTERN_TEMPLATE redefinition.
3241         * include/Makefile.in: Regenerate.
3243 2012-03-19  Paolo Carlini  <paolo.carlini@oracle.com>
3245         * testsuite/Makefile.in: Regenerate.
3247 2012-03-19  Benjamin Kosnik  <bkoz@redhat.com>
3249         * include/bits/allocator.h (std::allocator): Base class is
3250         __allocator_base.
3251         (uses_allocator): Add to sub-grouping.
3252         * include/ext/new_allocator.h: Doxygen markup for tparm.
3254         * config/allocator/bitmap_allocator_base.h: Use __allocator_base
3255         template alias in C++11.
3256         * config/allocator/malloc_allocator_base.h: Same.
3257         * config/allocator/mt_allocator_base.h: Same.
3258         * config/allocator/new_allocator_base.h: Same.
3259         * config/allocator/pool_allocator_base.h: Same.
3261 2012-03-19  Benjamin Kosnik  <bkoz@redhat.com>
3263         * include/ext/pb_ds/detail/pat_trie_/
3264         constructors_destructor_fn_imps.hpp: Increment after recursion.
3265         * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: Convert
3266         node_type markup from brief.
3268 2012-03-16  François Dumont  <fdumont@gcc.gnu.org>
3270         PR libstdc++/52476
3271         * include/bits/hashtable.h (_Hashtable<>::_M_rehash_aux): Add.
3272         (_Hashtable<>::_M_rehash): Use the latter.
3273         * testsuite/23_containers/unordered_multimap/insert/52476.cc: New.
3274         * testsuite/23_containers/unordered_multiset/insert/52476.cc: New.
3276 2012-03-14  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3278         * config/os/solaris/solaris2.8: Rename to ...
3279         * config/os/solaris/solaris2.9: ... this.
3280         * config/abi/post/solaris2.8: Rename to ...
3281         * config/abi/post/solaris2.9: ... this.
3282         * configure.host (os_include_dir): Remove solaris2.8.
3283         Reflect renaming.
3284         (abi_baseline_pair): Remove *-*-solaris2.8.
3285         Reflect renaming.
3287         * configure.ac (GLIBCXX_CHECK_MATH_PROTO): Remove
3288         (GLIBCXX_CHECK_STDLIB_PROTO): Remove.
3289         * acinclude.m4 (GLIBCXX_CHECK_MATH_PROTO): Remove
3290         (GLIBCXX_CHECK_STDLIB_PROTO): Remove.
3291         (GLIBCXX_CHECK_GTHREADS): Remove Solaris 8 handling.
3292         * crossconfig.m4 (GLIBCXX_CROSSCONFIG): Remove *-solaris2.8
3293         handling.
3294         * configure: Regenerate.
3295         * config.h.in: Regenerate.
3297         * config/os/solaris/solaris2.9/os_defines.h
3298         (__CORRECT_ISO_CPP_MATH_H_PROTO): Define.
3299         (__CORRECT_ISO_CPP_STDLIB_H_PROTO): Define.
3300         * include/c_global/cmath: Rename __CORRECT_ISO_CPP_MATH_H_PROTO1
3301         to __CORRECT_ISO_CPP_MATH_H_PROTO.
3302         [!__CORRECT_ISO_CPP_MATH_H_PROTO2]: Remove.
3303         * include/tr1/cmath: Rename __CORRECT_ISO_CPP_MATH_H_PROTO1 to
3304         __CORRECT_ISO_CPP_MATH_H_PROTO.
3306         * doc/xml/manual/configure.xml (Configure, --enable-libstdcxx-threads):
3307         Remove Solaris 8 reference.
3309         * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
3310         Don't xfail on *-*-solaris2.8.
3311         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
3312         Likewise.
3313         * testsuite/ext/enc_filebuf/char/13598.cc: Don't xfail on
3314         *-*-solaris2.8.
3316 2012-03-14  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3318         * configure.host (irix6.5*): Remove.
3319         * config/os/irix: Remove.
3320         * config/io/basic_file_stdio.cc (__basic_file<char>::showmanyc())
3321         [_GLIBCXX_FIONREAD_TAKES_OFF_T]: Remove.
3323         * doc/xml/faq.xml: Remove IRIX reference.
3324         * doc/xml/manual/using.xml (Finding Dynamic or Shared Libraries):
3325         Remove IRIX example.
3327         * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
3328         Remove mips-sgi-irix6* handling.
3329         * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
3330         * testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
3331         * testsuite/21_strings/basic_string/pthread4.cc: Likewise.
3332         * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
3333         * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
3334         * testsuite/23_containers/list/pthread1.cc: Likewise.
3335         * testsuite/23_containers/list/pthread5.cc: Likewise.
3336         * testsuite/23_containers/map/pthread6.cc: Likewise.
3337         * testsuite/23_containers/vector/debug/multithreaded_swap.cc: Likewise.
3338         * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
3339         * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
3340         * testsuite/30_threads/async/42819.cc: Likewise.
3341         * testsuite/30_threads/async/49668.cc: Likewise.
3342         * testsuite/30_threads/async/any.cc: Likewise.
3343         * testsuite/30_threads/async/async.cc: Likewise.
3344         * testsuite/30_threads/async/launch.cc: Likewise.
3345         * testsuite/30_threads/async/sync.cc: Likewise.
3346         * testsuite/30_threads/call_once/39909.cc: Likewise.
3347         * testsuite/30_threads/call_once/49668.cc: Likewise.
3348         * testsuite/30_threads/call_once/call_once1.cc: Likewise.
3349         * testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
3350         * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
3351         * testsuite/30_threads/condition_variable/members/2.cc: Likewise.
3352         * testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
3353         Likewise.
3354         * testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
3355         * testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
3356         * testsuite/30_threads/condition_variable_any/members/1.cc: Likewise.
3357         * testsuite/30_threads/condition_variable_any/members/2.cc: Likewise.
3358         * testsuite/30_threads/future/cons/move.cc: Likewise.
3359         * testsuite/30_threads/future/members/45133.cc: Likewise.
3360         * testsuite/30_threads/future/members/get.cc: Likewise.
3361         * testsuite/30_threads/future/members/get2.cc: Likewise.
3362         * testsuite/30_threads/future/members/share.cc: Likewise.
3363         * testsuite/30_threads/future/members/valid.cc: Likewise.
3364         * testsuite/30_threads/future/members/wait.cc: Likewise.
3365         * testsuite/30_threads/future/members/wait_for.cc: Likewise.
3366         * testsuite/30_threads/future/members/wait_until.cc: Likewise.
3367         * testsuite/30_threads/lock/1.cc: Likewise.
3368         * testsuite/30_threads/lock/2.cc: Likewise.
3369         * testsuite/30_threads/lock/3.cc: Likewise.
3370         * testsuite/30_threads/lock/4.cc: Likewise.
3371         * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
3372         * testsuite/30_threads/mutex/cons/1.cc: Likewise.
3373         * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
3374         * testsuite/30_threads/mutex/lock/1.cc: Likewise.
3375         * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
3376         * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
3377         * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
3378         * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
3379         * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
3380         * testsuite/30_threads/packaged_task/49668.cc: Likewise.
3381         * testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
3382         * testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
3383         * testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
3384         * testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
3385         * testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
3386         * testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise.
3387         * testsuite/30_threads/packaged_task/members/get_future.cc: Likewise.
3388         * testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise.
3389         * testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
3390         * testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
3391         * testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
3392         * testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
3393         * testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
3394         * testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
3395         * testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
3396         * testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
3397         * testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
3398         * testsuite/30_threads/promise/cons/1.cc: Likewise.
3399         * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
3400         * testsuite/30_threads/promise/cons/move.cc: Likewise.
3401         * testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
3402         * testsuite/30_threads/promise/members/get_future.cc: Likewise.
3403         * testsuite/30_threads/promise/members/get_future2.cc: Likewise.
3404         * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
3405         * testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
3406         * testsuite/30_threads/promise/members/set_value.cc: Likewise.
3407         * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
3408         * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
3409         * testsuite/30_threads/promise/members/swap.cc: Likewise.
3410         * testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
3411         * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
3412         Likewise.
3413         * testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
3414         * testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
3415         * testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
3416         Likewise.
3417         * testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
3418         * testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
3419         * testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
3420         * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
3421         * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
3422         Likewise.
3423         * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
3424         * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
3425         * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
3426         Likewise.
3427         * testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
3428         Likewise.
3429         * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
3430         * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
3431         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
3432         Likewise.
3433         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
3434         Likewise.
3435         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
3436         Likewise.
3437         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
3438         Likewise.
3439         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
3440         Likewise.
3441         * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
3442         * testsuite/30_threads/shared_future/cons/move.cc: Likewise.
3443         * testsuite/30_threads/shared_future/members/45133.cc: Likewise.
3444         * testsuite/30_threads/shared_future/members/get.cc: Likewise.
3445         * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
3446         * testsuite/30_threads/shared_future/members/valid.cc: Likewise.
3447         * testsuite/30_threads/shared_future/members/wait.cc: Likewise.
3448         * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
3449         * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
3450         * testsuite/30_threads/this_thread/1.cc: Likewise.
3451         * testsuite/30_threads/this_thread/2.cc: Likewise.
3452         * testsuite/30_threads/this_thread/3.cc: Likewise.
3453         * testsuite/30_threads/this_thread/4.cc: Likewise.
3454         * testsuite/30_threads/thread/cons/1.cc: Likewise.
3455         * testsuite/30_threads/thread/cons/2.cc: Likewise.
3456         * testsuite/30_threads/thread/cons/3.cc: Likewise.
3457         * testsuite/30_threads/thread/cons/4.cc: Likewise.
3458         * testsuite/30_threads/thread/cons/49668.cc: Likewise.
3459         * testsuite/30_threads/thread/cons/5.cc: Likewise.
3460         * testsuite/30_threads/thread/cons/6.cc: Likewise.
3461         * testsuite/30_threads/thread/cons/7.cc: Likewise.
3462         * testsuite/30_threads/thread/cons/8.cc: Likewise.
3463         * testsuite/30_threads/thread/cons/9.cc: Likewise.
3464         * testsuite/30_threads/thread/cons/moveable.cc: Likewise.
3465         * testsuite/30_threads/thread/members/1.cc: Likewise.
3466         * testsuite/30_threads/thread/members/2.cc: Likewise.
3467         * testsuite/30_threads/thread/members/3.cc: Likewise.
3468         * testsuite/30_threads/thread/members/4.cc: Likewise.
3469         * testsuite/30_threads/thread/members/5.cc: Likewise.
3470         * testsuite/30_threads/thread/members/hardware_concurrency.cc: Likewise.
3471         * testsuite/30_threads/thread/native_handle/typesizes.cc: Likewise.
3472         * testsuite/30_threads/thread/swap/1.cc: Likewise.
3473         * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
3474         * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
3475         * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
3476         * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
3477         * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc: Likewise.
3478         * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
3479         * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
3480         * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
3481         * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
3482         * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
3483         * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
3484         * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
3485         * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
3486         * testsuite/30_threads/try_lock/1.cc: Likewise.
3487         * testsuite/30_threads/try_lock/2.cc: Likewise.
3488         * testsuite/30_threads/try_lock/3.cc: Likewise.
3489         * testsuite/30_threads/try_lock/4.cc: Likewise.
3490         * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
3491         * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
3492         * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
3493         * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
3494         * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
3495         * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
3496         * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
3497         * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
3498         * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
3499         * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
3500         * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
3501         * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
3502         * testsuite/ext/rope/pthread7-rope.cc: Likewise.
3503         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
3504         default_weaktoshared.cc: Likewise.
3505         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
3506         mutex_weaktoshared.cc: Likewise.
3508         * testsuite/23_containers/vector/capacity/resize/1.cc: Remove
3509         dg-options for mips*-*-irix6*.
3511         * testsuite/27_io/ios_base/storage/1.cc: Likewise.
3512         * testsuite/27_io/ios_base/storage/2.cc: Likewise.
3513         * testsuite/27_io/ios_base/storage/3.cc: Likewise.
3515         * testsuite/lib/libstdc++.exp (v3-build_support): Remove IRIX 6
3516         workaround.
3518 2012-03-14  Paolo Carlini  <paolo.carlini@oracle.com>
3520         * include/bits/forward_list.h: Fix comments.
3522 2012-03-13  Terry Guo  <terry.guo@arm.com>
3524         * testsuite/Makefile.in (TEST_GCC_EXEC_PREFIX): New.
3526 2012-03-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3528         * configure.host: Remove osf* handling.
3529         * config/os/osf: Remove.
3530         * doc/xml/manual/using.xml: Remove OSF reference.
3532         * testsuite/18_support/pthread_guard.cc: Remove alpha*-*-osf* handling.
3533         * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Likewise.
3534         * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
3535         * testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
3536         * testsuite/21_strings/basic_string/pthread4.cc: Likewise.
3537         * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
3538         * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
3539         * testsuite/23_containers/list/pthread1.cc: Likewise.
3540         * testsuite/23_containers/list/pthread5.cc: Likewise.
3541         * testsuite/23_containers/map/pthread6.cc: Likewise.
3542         * testsuite/23_containers/vector/debug/multithreaded_swap.cc: Likewise.
3543         * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
3544         * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
3545         * testsuite/30_threads/async/42819.cc: Likewise.
3546         * testsuite/30_threads/async/49668.cc: Likewise.
3547         * testsuite/30_threads/async/any.cc: Likewise.
3548         * testsuite/30_threads/async/async.cc: Likewise.
3549         * testsuite/30_threads/async/launch.cc: Likewise.
3550         * testsuite/30_threads/async/sync.cc: Likewise.
3551         * testsuite/30_threads/call_once/39909.cc: Likewise.
3552         * testsuite/30_threads/call_once/49668.cc: Likewise.
3553         * testsuite/30_threads/call_once/call_once1.cc: Likewise.
3554         * testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
3555         * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
3556         * testsuite/30_threads/condition_variable/members/2.cc: Likewise.
3557         * testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
3558         Likewise.
3559         * testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
3560         * testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
3561         * testsuite/30_threads/condition_variable_any/members/1.cc: Likewise.
3562         * testsuite/30_threads/condition_variable_any/members/2.cc: Likewise.
3563         * testsuite/30_threads/future/cons/move.cc: Likewise.
3564         * testsuite/30_threads/future/members/45133.cc: Likewise.
3565         * testsuite/30_threads/future/members/get.cc: Likewise.
3566         * testsuite/30_threads/future/members/get2.cc: Likewise.
3567         * testsuite/30_threads/future/members/share.cc: Likewise.
3568         * testsuite/30_threads/future/members/valid.cc: Likewise.
3569         * testsuite/30_threads/future/members/wait.cc: Likewise.
3570         * testsuite/30_threads/future/members/wait_for.cc: Likewise.
3571         * testsuite/30_threads/future/members/wait_until.cc: Likewise.
3572         * testsuite/30_threads/lock/1.cc: Likewise.
3573         * testsuite/30_threads/lock/2.cc: Likewise.
3574         * testsuite/30_threads/lock/3.cc: Likewise.
3575         * testsuite/30_threads/lock/4.cc: Likewise.
3576         * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
3577         * testsuite/30_threads/mutex/cons/1.cc: Likewise.
3578         * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
3579         * testsuite/30_threads/mutex/lock/1.cc: Likewise.
3580         * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
3581         * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
3582         * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
3583         * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
3584         * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
3585         * testsuite/30_threads/packaged_task/49668.cc: Likewise.
3586         * testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
3587         * testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
3588         * testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
3589         * testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
3590         * testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
3591         * testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise.
3592         * testsuite/30_threads/packaged_task/members/get_future.cc: Likewise.
3593         * testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise.
3594         * testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
3595         * testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
3596         * testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
3597         * testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
3598         * testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
3599         * testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
3600         * testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
3601         * testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
3602         * testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
3603         * testsuite/30_threads/promise/cons/1.cc: Likewise.
3604         * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
3605         * testsuite/30_threads/promise/cons/move.cc: Likewise.
3606         * testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
3607         * testsuite/30_threads/promise/members/get_future.cc: Likewise.
3608         * testsuite/30_threads/promise/members/get_future2.cc: Likewise.
3609         * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
3610         * testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
3611         * testsuite/30_threads/promise/members/set_value.cc: Likewise.
3612         * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
3613         * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
3614         * testsuite/30_threads/promise/members/swap.cc: Likewise.
3615         * testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
3616         * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
3617         Likewise.
3618         * testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
3619         * testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
3620         * testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
3621         Likewise.
3622         * testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
3623         * testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
3624         * testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
3625         * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
3626         * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
3627         Likewise.
3628         * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
3629         * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
3630         * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
3631         Likewise.
3632         * testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
3633         Likewise.
3634         * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
3635         * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
3636         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
3637         Likewise.
3638         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
3639         Likewise.
3640         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
3641         Likewise.
3642         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
3643         Likewise.
3644         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
3645         Likewise.
3646         * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
3647         * testsuite/30_threads/shared_future/cons/move.cc: Likewise.
3648         * testsuite/30_threads/shared_future/members/45133.cc: Likewise.
3649         * testsuite/30_threads/shared_future/members/get.cc: Likewise.
3650         * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
3651         * testsuite/30_threads/shared_future/members/valid.cc: Likewise.
3652         * testsuite/30_threads/shared_future/members/wait.cc: Likewise.
3653         * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
3654         * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
3655         * testsuite/30_threads/this_thread/1.cc: Likewise.
3656         * testsuite/30_threads/this_thread/2.cc: Likewise.
3657         * testsuite/30_threads/this_thread/3.cc: Likewise.
3658         * testsuite/30_threads/this_thread/4.cc: Likewise.
3659         * testsuite/30_threads/thread/cons/1.cc: Likewise.
3660         * testsuite/30_threads/thread/cons/2.cc: Likewise.
3661         * testsuite/30_threads/thread/cons/3.cc: Likewise.
3662         * testsuite/30_threads/thread/cons/4.cc: Likewise.
3663         * testsuite/30_threads/thread/cons/49668.cc: Likewise.
3664         * testsuite/30_threads/thread/cons/5.cc: Likewise.
3665         * testsuite/30_threads/thread/cons/6.cc: Likewise.
3666         * testsuite/30_threads/thread/cons/7.cc: Likewise.
3667         * testsuite/30_threads/thread/cons/8.cc: Likewise.
3668         * testsuite/30_threads/thread/cons/9.cc: Likewise.
3669         * testsuite/30_threads/thread/cons/moveable.cc: Likewise.
3670         * testsuite/30_threads/thread/members/1.cc: Likewise.
3671         * testsuite/30_threads/thread/members/2.cc: Likewise.
3672         * testsuite/30_threads/thread/members/3.cc: Likewise.
3673         * testsuite/30_threads/thread/members/4.cc: Likewise.
3674         * testsuite/30_threads/thread/members/5.cc: Likewise.
3675         * testsuite/30_threads/thread/members/hardware_concurrency.cc: Likewise.
3676         * testsuite/30_threads/thread/swap/1.cc: Likewise.
3677         * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
3678         * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
3679         * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
3680         * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
3681         * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc: Likewise.
3682         * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
3683         * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
3684         * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
3685         * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
3686         * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
3687         * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
3688         * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
3689         * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
3690         * testsuite/30_threads/try_lock/1.cc: Likewise.
3691         * testsuite/30_threads/try_lock/2.cc: Likewise.
3692         * testsuite/30_threads/try_lock/3.cc: Likewise.
3693         * testsuite/30_threads/try_lock/4.cc: Likewise.
3694         * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
3695         * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
3696         * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
3697         * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
3698         * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
3699         * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
3700         * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
3701         * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
3702         * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
3703         * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
3704         * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
3705         * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
3706         * testsuite/ext/rope/pthread7-rope.cc: Likewise.
3707         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
3708         default_weaktoshared.cc: Likewise.
3709         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
3710         mutex_weaktoshared.cc: Likewise.
3712 2012-03-12  Paolo Carlini  <paolo.carlini@oracle.com>
3714         PR libstdc++/52562
3715         * libsupc++/typeinfo (type_info::name, before, operator==,
3716         operator!=): Mark noexcept in C++11 mode.
3717         * libsupc++/tinfo.cc (type_info::operator==): Adjust.
3718         * libsupc++/tinfo2.cc (type_info::before): Likewise.
3719         * testsuite/18_support/type_info/52562.cc: New.
3721 2012-03-10  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
3723         * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS
3724         symbols added in last change.
3726         PR libstdc++/52456
3727         * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
3729 2012-03-09  Andreas Schwab  <schwab@linux-m68k.org>
3731         * config/locale/gnu/monetary_members.cc
3732         (moneypunct<char,true>::_M_initialize_moneypunct): Throw caught
3733         exception again.
3734         (moneypunct<char,false>::_M_initialize_moneypunct): Likewise.
3735         * testsuite/22_locale/locale/cons/12352.cc: Also test en_US
3736         locale.
3738 2012-03-09  Paolo Carlini  <paolo.carlini@oracle.com>
3740         * include/debug/formatter.h (enum _Debug_msg_id): Add
3741         __msg_self_move_assign.
3742         * include/debug/macros.h (__glibcxx_check_self_move_assign): Add.
3743         * src/c++11/debug.cc (_S_debug_messages): Update.
3744         * include/debug/safe_iterator.h (_Safe_iterator<>::operator=
3745         (_Safe_iterator&&)): Add check for self move assignment.
3746         * include/debug/set.h: Likewise.
3747         * include/debug/unordered_map: Likewise.
3748         * include/debug/multiset.h: Likewise.
3749         * include/debug/forward_list: Likewise.
3750         * include/debug/unordered_set: Likewise.
3751         * include/debug/vector: Likewise.
3752         * include/debug/map.h: Likewise.
3753         * include/debug/deque: Likewise.
3754         * include/debug/string: Likewise.
3755         * include/debug/list: Likewise.
3756         * include/debug/multimap.h: Likewise.
3757         * testsuite/21_strings/debug/self_move_assign_neg.cc: New.
3758         * testsuite/21_strings/debug/iterator_self_move_assign_neg.cc: Likewise.
3759         * testsuite/23_containers/unordered_map/debug/self_move_assign_neg.cc:
3760         Likewise.
3761         * testsuite/23_containers/unordered_map/debug/
3762         iterator_self_move_assign_neg.cc: Likewise.
3763         * testsuite/23_containers/multimap/debug/self_move_assign_neg.cc:
3764         Likewise.
3765         * testsuite/23_containers/multimap/debug/
3766         iterator_self_move_assign_neg.cc: Likewise.
3767         * testsuite/23_containers/set/debug/self_move_assign_neg.cc: Likewise.
3768         * testsuite/23_containers/set/debug/iterator_self_move_assign_neg.cc:
3769         Likewise.
3770         * testsuite/23_containers/unordered_multimap/debug/
3771         self_move_assign_neg.cc: Likewise.
3772         * testsuite/23_containers/unordered_multimap/debug/
3773         iterator_self_move_assign_neg.cc: Likewise.
3774         * testsuite/23_containers/forward_list/debug/self_move_assign_neg.cc:
3775         Likewise.
3776         * testsuite/23_containers/forward_list/debug/
3777         iterator_self_move_assign_neg.cc: Likewise.
3778         * testsuite/23_containers/unordered_set/debug/self_move_assign_neg.cc:
3779         Likewise.
3780         * testsuite/23_containers/unordered_set/debug/
3781         iterator_self_move_assign_neg.cc: Likewise.
3782         * testsuite/23_containers/vector/debug/self_move_assign_neg.cc:
3783         Likewise.
3784         * testsuite/23_containers/vector/debug/
3785         iterator_self_move_assign_neg.cc: Likewise.
3786         * testsuite/23_containers/deque/debug/self_move_assign_neg.cc: Likewise.
3787         * testsuite/23_containers/deque/debug/iterator_self_move_assign_neg.cc:
3788         Likewise.
3789         * testsuite/23_containers/multiset/debug/self_move_assign_neg.cc:
3790         Likewise.
3791         * testsuite/23_containers/multiset/debug/
3792         iterator_self_move_assign_neg.cc: Likewise.
3793         * testsuite/23_containers/list/debug/self_move_assign_neg.cc:
3794         Likewise.
3795         * testsuite/23_containers/list/debug/iterator_self_move_assign_neg.cc:
3796         Likewise.
3797         * testsuite/23_containers/unordered_multiset/debug/
3798         self_move_assign_neg.cc: Likewise.
3799         * testsuite/23_containers/unordered_multiset/debug/
3800         iterator_self_move_assign_neg.cc: Likewise.
3801         * testsuite/23_containers/map/debug/self_move_assign_neg.cc:
3802         Likewise.
3803         * testsuite/23_containers/map/debug/iterator_self_move_assign_neg.cc:
3804         Likewise.
3806 2012-03-08  Benjamin Kosnik  <bkoz@redhat.com>
3808         * doc/doxygen/user.cfg.in: Update to Doxygen 1.8.0.
3809         * include/bits/locale_facets.h: Adjust markup to avoid warnings.
3810         * include/ext/pb_ds/assoc_container.hpp: Same.
3811         * include/ext/pb_ds/priority_queue.hpp: Same.
3812         * include/std/fstream: Same.
3813         * include/std/ratio: Same.
3814         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust line
3815         numbers.
3816         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Same.
3818 2012-03-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
3820         PR libstdc++/52433
3821         * include/debug/safe_iterator.h (_Safe_iterator): Add debug checks
3822         to move constructor and move assignment operator.
3824 2012-03-05  Paolo Carlini  <paolo.carlini@oracle.com>
3826         * include/bits/stl_algobase.h (iter_swap): In C++11 mode simply
3827         call swap.
3828         * include/bits/stl_bvector.h (swap(_Bit_reference,
3829         _Bit_reference), swap(_Bit_reference, bool&),
3830         swap(bool&, _Bit_reference)): Add.
3831         * testsuite/23_containers/vector/bool/swap.cc: New.
3833 2012-03-04  Paolo Carlini  <paolo.carlini@oracle.com>
3834             Jonathan Wakely  <jwakely.gcc@gmail.com>
3836         PR libstdc++/43813
3837         * include/bits/stl_iterator_base_types.h (_RequireInputIter): New.
3838         * include/ext/vstring.h (__versa_string<>::__versa_string
3839         (_InputIterator, _InputIterator, const _Alloc&),
3840         __versa_string<>::append(_InputIterator, _InputIterator),
3841         __versa_string<>::assign(_InputIterator, _InputIterator),
3842         __versa_string<>::insert(iterator, _InputIterator,
3843         _InputIterator), __versa_string<>::replace(iterator, iterator,
3844         _InputIterator, _InputIterator)): Use it.
3845         * include/bits/stl_list.h (list<>::list(_InputIterator,
3846         _InputIterator, const allocator_type&), list<>::assign(_InputIterator,
3847         _InputIterator), list<>::insert(iterator, _InputIterator,
3848         _InputIterator)): Likewise.
3849         * include/bits/stl_vector.h (vector<>::vector(_InputIterator,
3850         _InputIterator, const allocator_type&), vector<>::assign(_InputIterator,
3851         _InputIterator), vectort<>::insert(iterator, _InputIterator,
3852         _InputIterator)): Likewise.
3853         * include/bits/stl_deque.h (deque<>::deque(_InputIterator,
3854         _InputIterator, const allocator_type&), deque<>::deque(_InputIterator,
3855         _InputIterator), deque<>::insert(iterator, _InputIterator,
3856         _InputIterator)): Likewise.
3857         * include/bits/stl_bvector.h (vector<>::vector(_InputIterator,
3858         _InputIterator, const allocator_type&), vector<>::deque(_InputIterator,
3859         _InputIterator), vector<>::insert(iterator, _InputIterator,
3860         _InputIterator)): Likewise.
3861         * include/bits/forward_list.h (forward_list<>::forward_list
3862         (_InputIterator, _InputIterator, const allocator_type&),
3863         forward_list<>::assign(_InputIterator, _InputIterator),
3864         forward_list<>::insert_after(const_iterator, _InputIterator,
3865         _InputIterator)): Likewise.
3866         (forward_list<>::_M_initialize_dispatch(,, __true_type): Remove.
3867         (forward_list<>::_M_range_initialize): Add, adjust everywhere.
3868         * include/bits/forward_list.tcc: Adjust.
3869         * include/debug/forward_list: Adjust.
3870         * include/debug/vector: Likewise.
3871         * include/debug/deque: Likewise.
3872         * include/debug/list: Likewise.
3873         * testsuite/ext/vstring/requirements/do_the_right_thing.cc: New.
3874         * testsuite/23_containers/forward_list/requirements/
3875         do_the_right_thing.cc: Likewise.
3876         * testsuite/23_containers/vector/requirements/
3877         do_the_right_thing.cc: Likewise.
3878         * testsuite/23_containers/deque/requirements/
3879         do_the_right_thing.cc: Likewise.
3880         * testsuite/23_containers/list/requirements/
3881         do_the_right_thing.cc: Likewise.
3882         * testsuite/23_containers/forward_list/requirements/dr438/
3883         assign_neg.cc: Adjust dg-error line number.
3884         * testsuite/23_containers/forward_list/requirements/dr438/
3885         insert_neg.cc: Likewise.
3886         * testsuite/23_containers/forward_list/requirements/dr438/
3887         constructor_1_neg.cc: Likewise.
3888         * testsuite/23_containers/forward_list/requirements/dr438/
3889         constructor_2_neg.cc: Likewise.
3890         * testsuite/23_containers/vector/requirements/dr438/
3891         assign_neg.cc: Likewise.
3892         * testsuite/23_containers/vector/requirements/dr438/
3893         insert_neg.cc: Likewise.
3894         * testsuite/23_containers/vector/requirements/dr438/
3895         constructor_1_neg.cc: Likewise.
3896         * testsuite/23_containers/vector/requirements/dr438/
3897         constructor_2_neg.cc: Likewise.
3898         * testsuite/23_containers/deque/requirements/dr438/
3899         assign_neg.cc: Likewise.
3900         * testsuite/23_containers/deque/requirements/dr438/
3901         insert_neg.cc: Likewise.
3902         * testsuite/23_containers/deque/requirements/dr438/
3903         constructor_1_neg.cc: Likewise.
3904         * testsuite/23_containers/deque/requirements/dr438/
3905         constructor_2_neg.cc: Likewise.
3906         * testsuite/23_containers/list/requirements/dr438/
3907         assign_neg.cc: Likewise.
3908         * testsuite/23_containers/list/requirements/dr438/
3909         insert_neg.cc: Likewise.
3910         * testsuite/23_containers/list/requirements/dr438/
3911         constructor_1_neg.cc: Likewise.
3912         * testsuite/23_containers/list/requirements/dr438/
3913         constructor_2_neg.cc: Likewise.
3915 2012-03-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
3917         PR libstdc++/52433
3918         * include/debug/safe_iterator.h (_Safe_iterator): Add move
3919         constructor and move assignment operator.
3920         * testsuite/23_containers/vector/debug/52433.cc: New.
3922 2012-03-02  Paolo Carlini  <paolo.carlini@oracle.com>
3924         * include/std/limits (numeric_limits): Fix returns per C++11.
3925         * testsuite/18_support/numeric_limits/primary.cc: New.
3927 2012-03-02  Benjamin Kosnik  <bkoz@redhat.com>
3929         * include/c_global/cstdio: Remove extraneous extern.
3930         * include/c_std/cstdio: Same.
3932 2012-03-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3934         * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerate.
3935         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
3936         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
3937         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
3938         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
3940 2012-03-01  Benjamin Kosnik  <bkoz@redhat.com>
3941             Ramana Radhakrishnan <ramana@gcc.gnu.org>
3943         PR libstdc++/51785
3944         * acinclude.m4 (GLIBCXX_CHECK_STDIO_PROTO): New.
3945         * configure.ac: Call it.
3946         * configure: Regenerate.
3947         * config.h.in: Same.
3948         * config/os/gnu-linux/os_defines.h: Conditionally undefine
3949         _GLIBCXX_HAVE_GETS.
3950         * include/c_global/cstdio: Conditionally declare deprecated gets.
3951         * include/c_std/cstdio: Same.
3953 2012-03-01  Michael Spertus  <mike_spertus@symantec.com>
3955         * include/tr2/type_traits (typelist): To __reflection_typelist.
3956         (first, rest, empty): Remove.
3958 2012-03-01  Benjamin Kosnik  <bkoz@redhat.com>
3960         * testsuite/Makefile.am (CLEANFILES): Add *.gdb.
3961         * testsuite/Makefile.in: Regenerate.
3963 2012-02-29  H.J. Lu  <hongjiu.lu@intel.com>
3965         * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
3967 2012-02-28  Benjamin Kosnik  <bkoz@redhat.com>
3969         PR libstdc++/52191
3970         * testsuite/util/testsuite_abi.cc (compare_symbols): Check new
3971         symbols added into the latest version. Mark tls entities as
3972         undesignated.
3974 2012-02-28  Jakub Jelinek  <jakub@redhat.com>
3976         PR bootstrap/52414
3977         * src/Makefile.am (libstdc++-symbols.ver): Only remove comment lines
3978         if they are at the beginning of lines (with optional whitespace before
3979         #).
3980         * src/Makefile.in: Regenerated.
3982 2012-02-27  Jakub Jelinek  <jakub@redhat.com>
3984         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
3985         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
3986         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
3987         Likewise.
3988         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
3989         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
3990         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
3991         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
3992         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
3993         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
3995 2012-02-27  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3997         PR libstdc++/52188
3998         * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Remove symvers_renaming.
3999         Remove ENABLE_SYMVERS_SOL2.
4000         * configure: Regenerate.
4001         * src/Makefile.am [ENABLE_SYMVERS] (libstdc++-symbols.ver):
4002         Postprocess mapfile.
4003         [ENABLE_SYMVERS_GNU]: Remove ENABLE_SYMVERS_SOL2 handling.
4004         * src/Makefile.in: Regenerate.
4006         * config/abi/pre/gnu.ver (GLIBCXX_3.4.5) [!__sun__ && !__svr4__]:
4007         Don't export
4008         _ZNSt19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEppEv.
4010 2012-02-25  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
4012         PR testsuite/52201
4013         * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
4014         Require atomic builtins.
4015         * testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
4017 2012-02-23  Jason Merrill  <jason@redhat.com>
4019         * include/bits/locale_facets.h (class num_get): Undo reordering of
4020         do_get virtual functions.
4022 2012-02-14  Edward Smith-Rowland  <3dw4rd@verizon.net>
4024         * testsuite/26_numerics/random/
4025         uniform_real_distribution/requirements/typedefs.cc: Check param_type.
4026         * testsuite/26_numerics/random/
4027         piecewise_constant_distribution/requirements/typedefs.cc: Ditto.
4028         * testsuite/26_numerics/random/
4029         chi_squared_distribution/requirements/typedefs.cc: Ditto.
4030         * testsuite/26_numerics/random/
4031         normal_distribution/requirements/typedefs.cc: Ditto.
4032         * testsuite/26_numerics/random/
4033         uniform_int_distribution/requirements/typedefs.cc: Ditto.
4034         * testsuite/26_numerics/random/
4035         poisson_distribution/requirements/typedefs.cc: Ditto.
4036         * testsuite/26_numerics/random/
4037         bernoulli_distribution/requirements/typedefs.cc: Ditto.
4038         * testsuite/26_numerics/random/
4039         discrete_distribution/requirements/typedefs.cc: Ditto.
4040         * testsuite/26_numerics/random/
4041         weibull_distribution/requirements/typedefs.cc: Ditto.
4042         * testsuite/26_numerics/random/
4043         cauchy_distribution/requirements/typedefs.cc: Ditto.
4044         * testsuite/26_numerics/random/
4045         negative_binomial_distribution/requirements/typedefs.cc: Ditto.
4046         * testsuite/26_numerics/random/
4047         gamma_distribution/requirements/typedefs.cc: Ditto.
4048         * testsuite/26_numerics/random/
4049         fisher_f_distribution/requirements/typedefs.cc: Ditto.
4050         * testsuite/26_numerics/random/
4051         exponential_distribution/requirements/typedefs.cc: Ditto.
4052         * testsuite/26_numerics/random/
4053         binomial_distribution/requirements/typedefs.cc: Ditto.
4054         * testsuite/26_numerics/random/
4055         lognormal_distribution/requirements/typedefs.cc: Ditto.
4056         * testsuite/26_numerics/random/
4057         extreme_value_distribution/requirements/typedefs.cc: Ditto.
4058         * testsuite/26_numerics/random/
4059         piecewise_linear_distribution/requirements/typedefs.cc: Ditto.
4060         * testsuite/26_numerics/random/
4061         student_t_distribution/requirements/typedefs.cc: Ditto.
4062         * testsuite/26_numerics/random/
4063         geometric_distribution/requirements/typedefs.cc: Ditto.
4065 2012-02-21  Benjamin Kosnik  <bkoz@redhat.com>
4067         PR libstdc++/50349
4068         * config/abi/pre/gnu.ver: Only one local.
4069         * config/abi/pre/gnu-versioned-namespace.ver: Same.
4071 2012-02-21  Paolo Carlini  <paolo.carlini@oracle.com>
4073         PR libstdc++/52317 (cont)
4074         * include/profile/unordered_map: Ad Library Exception comment.
4075         * include/profile/set: Likewise.
4076         * include/profile/base.h: Likewise.
4077         * include/profile/impl/profiler_list_to_slist.h: Likewise.
4078         * include/profile/impl/profiler_container_size.h: Likewise.
4079         * include/profile/impl/profiler_vector_size.h: Likewise.
4080         * include/profile/impl/profiler_hash_func.h: Likewise.
4081         * include/profile/impl/profiler_trace.h: Likewise.
4082         * include/profile/impl/profiler_list_to_vector.h: Likewise.
4083         * include/profile/impl/profiler_vector_to_list.h: Likewise.
4084         * include/profile/impl/profiler.h: Likewise.
4085         * include/profile/impl/profiler_state.h: Likewise.
4086         * include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
4087         * include/profile/impl/profiler_algos.h: Likewise.
4088         * include/profile/impl/profiler_hashtable_size.h: Likewise.
4089         * include/profile/impl/profiler_node.h: Likewise.
4090         * include/profile/vector: Likewise.
4091         * include/profile/unordered_set: Likewise.
4092         * include/profile/map.h: Likewise.
4093         * include/profile/map: Likewise.
4095 2012-02-21  Paolo Carlini  <paolo.carlini@oracle.com>
4097         PR libstdc++/52317
4098         * python/Makefile.am: Update boilerplate license text to GPLv3.
4099         * include/profile/unordered_map: Likewise.
4100         * include/profile/set: Likewise.
4101         * include/profile/base.h: Likewise.
4102         * include/profile/impl/profiler_list_to_slist.h: Likewise.
4103         * include/profile/impl/profiler_container_size.h: Likewise.
4104         * include/profile/impl/profiler_vector_size.h: Likewise.
4105         * include/profile/impl/profiler_hash_func.h: Likewise.
4106         * include/profile/impl/profiler_trace.h: Likewise.
4107         * include/profile/impl/profiler_list_to_vector.h: Likewise.
4108         * include/profile/impl/profiler_vector_to_list.h: Likewise.
4109         * include/profile/impl/profiler.h: Likewise.
4110         * include/profile/impl/profiler_state.h: Likewise.
4111         * include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
4112         * include/profile/impl/profiler_algos.h: Likewise.
4113         * include/profile/impl/profiler_hashtable_size.h: Likewise.
4114         * include/profile/impl/profiler_node.h: Likewise.
4115         * include/profile/vector: Likewise.
4116         * include/profile/unordered_set: Likewise.
4117         * include/profile/map.h: Likewise.
4118         * include/profile/map: Likewise.
4119         * testsuite/21_strings/basic_string/numeric_conversions/
4120         wchar_t/dr1261.cc: Likewise.
4121         * testsuite/21_strings/basic_string/numeric_conversions/
4122         char/dr1261.cc: Likewise.
4123         * testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise.
4125 2012-02-20  Paolo Carlini  <paolo.carlini@oracle.com>
4127         PR libstdc++/52241
4128         * src/c++98/tree.cc (local_Rb_tree_increment,
4129         local_Rb_tree_decrement): Add.
4130         (_Rb_tree_increment(const _Rb_tree_node_base*),
4131         _Rb_tree_decrement(const _Rb_tree_node_base*)): Use the latter.
4132         (_Rb_tree_increment(_Rb_tree_node_base*),
4133         _Rb_tree_decrement(_Rb_tree_node_base*)): New.
4135 2012-02-20  Paolo Carlini  <paolo.carlini@oracle.com>
4137         PR libstdc++/52309
4138         * include/bits/hashtable_policy.h (_Equality_base<, true,>::
4139         _M_equal(const _Hashtable&)): Compare values with operator==.
4140         * testsuite/23_containers/unordered_set/operators/52309.cc: New.
4142 2012-02-17  Benjamin Kosnik  <bkoz@redhat.com>
4144         PR libstdc++/51798 continued.
4145         * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Grep for
4146         __atomic_, not __sync.
4147         * configure: Regenerated.
4149 2012-02-17  Benjamin Kosnik  <bkoz@redhat.com>
4151         PR libstdc++/47058
4152         * acinclude.m4 (GLIBCXX_ENABLE_WERROR): New.
4153         (GLIBCXX_EXPORT_FLAGS): Add -Wabi to WARN_FLAGS
4154         * configure.ac: Use it.
4155         * fragment.am: Set WERROR_FLAG conditionally on --disable-werror.
4156         * configure: Regenerate.
4157         * python/Makefile.in: Same.
4158         * Makefile.in: Same.
4159         * doc/Makefile.in: Same.
4160         * include/Makefile.in: Same.
4161         * po/Makefile.in: Same.
4162         * python/Makefile.in: Same.
4163         * src/Makefile.in: Same.
4164         * src/c++11/Makefile.in: Same.
4165         * src/c++98/Makefile.in: Same.
4166         * testsuite/Makefile.in: Same.
4168 2012-02-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4170         PR libstdc++/52189
4171         * acinclude.m4 (GLIBCXX_CHECK_GTHREADS): Handle
4172         --enable-libstdcxx-threads.
4173         Disable on Solaris 8/9 with symbol versioning.
4174         * configure.ac (GLIBCXX_CHECK_GTHREADS): Move after
4175         GLIBCXX_ENABLE_SYMVERS.
4176         * configure: Regenerate.
4177         * doc/xml/manual/configure.xml (--enable-libstdcxx-threads): Explain.
4179 2012-02-15  DJ Delorie  <dj@redhat.com>
4181         * src/c++98/locale.cc (locale::facet::_S_get_c_locale): Fix typo.
4183 2012-02-15  Benjamin Kosnik  <bkoz@redhat.com>
4185         PR libstdc++/51368
4186         * acinclude.m4 (GLIBCXX_ENABLE_PYTHON): New.
4187         * configure.ac: Use it.
4188         * python/Makefile.am: Same.
4189         * configure: Regenerate.
4190         * python/Makefile.in: Regenerate.
4191         * Makefile.in: Same.
4192         * doc/Makefile.in: Same.
4193         * include/Makefile.in: Same.
4194         * po/Makefile.in: Same.
4195         * src/Makefile.in: Same.
4196         * src/c++11/Makefile.in: Same.
4197         * src/c++98/Makefile.in: Same.
4198         * testsuite/Makefile.in: Same.
4200 2012-02-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
4202         * 30_threads/thread/native_handle/typesizes.cc: Do not run on cygwin.
4204 2012-02-14  Tom Tromey  <tromey@redhat.com>
4206         * testsuite/libstdc++-prettyprinters/cxx11.cc (main): Add new
4207         tests.
4208         * python/libstdcxx/v6/printers.py (Tr1HashtableIterator.__init__):
4209         Rewrite.
4210         (Tr1HashtableIterator.update): Remove.
4211         (Tr1HashtableIterator.next): Rewrite.
4213 2012-02-13  Benjamin Kosnik  <bkoz@redhat.com>
4215         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
4216         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
4218 2012-02-13  Richard Henderson  <rth@redhat.com>
4220         PR libstdc++/51798 continued.
4221         * include/bits/shared_ptr_base.h
4222         (_Sp_counted_base<_S_atomic>::_M_add_ref_lock): Hoist initial load
4223         outside compare_exchange loop.
4224         * include/tr1/shared_ptr.h: Same.
4225         * include/parallel/compatibility.h (__compare_and_swap_32): Use strong
4226         version of compare_exchange.
4227         (__compare_and_swap_64): Same.
4228         * include/profile/impl/profiler_state.h (__gnu_profile::__turn): Same.
4229         * libsupc++/guard.cc (__cxa_guard_acquire): Same.
4231 2012-02-10  Benjamin Kosnik  <bkoz@redhat.com>
4232             Jonathan Wakely  <jwakely.gcc@gmail.com>
4234         PR libstdc++/51798 continued.
4235         * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Use __atomic_*
4236         builtins instead of __sync_* builtins for atomic functionality.
4237         * include/bits/shared_ptr_base.h: Same.
4238         * include/parallel/compatibility.h: Same.
4239         * include/profile/impl/profiler_state.h: Same.
4240         * include/tr1/shared_ptr.h: Same.
4241         * libsupc++/eh_ptr.cc: Same.
4242         * libsupc++/eh_throw.cc: Same.
4243         * libsupc++/eh_tm.cc: Same.
4244         * libsupc++/guard.cc: Same.
4245         * configure: Regenerated.
4246         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
4247         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
4249 2012-02-10  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4251         PR libstdc++/51296
4252         * config/os/osf/ctype_base.h,
4253         config/os/osf/ctype_configure_char.cc,
4254         config/os/osf/ctype_inline.h, config/os/osf/error_constants.h:
4255         Copy from config/os/generic.
4256         * config/os/osf/os_defines.h: Likewise.
4257         (_GTHREAD_USE_MUTEX_INIT_FUNC, _GTHREAD_USE_COND_INIT_FUNC):
4258         Define.
4259         * configure.host <osf*>: Use os/osf for os_include_dir.
4261 2012-02-10  Uros Bizjak  <ubizjak@gmail.com>
4263         * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Regenerated.
4265 2012-02-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
4267         * doc/xml/manual/documentation_hacking.xml: Fix invalid attribute.
4269 2012-02-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
4271         * doc/xml/manual/status_cxx2011.xml: Update C++11 status table.
4273 2012-02-07  Benjamin Kosnik  <bkoz@redhat.com>
4275         * doc/doxygen/user.cfg.in: Update to doxygen 1.7.6.1.
4276         * doc/xml/manual/documentation_hacking.xml: Update.
4278 2012-02-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
4280         * testsuite/30_threads/call_once/39909.cc: Remove duplicate target
4281         selector.
4282         * testsuite/30_threads/call_once/49668.cc: Likewise.
4283         * testsuite/30_threads/call_once/call_once1.cc: Likewise.
4284         * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
4285         * testsuite/30_threads/mutex/cons/1.cc: Likewise.
4286         * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
4287         * testsuite/30_threads/mutex/lock/1.cc: Likewise.
4288         * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
4289         * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
4290         * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
4291         * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
4292         * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
4293         * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
4294         * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
4295         * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
4296         * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
4297         * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
4298         * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
4299         * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
4300         * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
4301         * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
4302         * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
4303         * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
4304         * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
4306 2012-02-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
4308         PR libstdc++/51296
4309         * include/std/mutex (__mutex_base::~__mutex_base): Declare noexcept.
4310         * src/c++11/condition_variable.cc (condition_variable): Use macro for
4311         initializer function.
4313         PR libstdc++/51906
4314         * config/os/bsd/darwin/os_defines.h: Disable static initializer for
4315         recursive mutexes.
4317 2012-02-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
4319         PR libstdc++/52128
4320         * src/c++11/future.cc: Add explicit instantiation.
4322 2012-02-06  François Dumont  <fdumont@gcc.gnu.org>
4324         * include/debug/safe_iterator.h
4325         (_Safe_iterator::_M_before_dereferenceable): Avoid the expensive
4326         creation of a _Safe_iterator instance to do the check.
4328 2012-02-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
4330         PR libstdc++/52104
4331         * include/std/future (__future_base::_Async_state_common): Define
4332         destructor inline for targets without TLS.
4333         * src/c++11/future.cc (__future_base::_Async_state_common): Only
4334         define destructor for TLS targets.
4336 2012-02-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
4338         PR libstdc++/51956
4339         * python/libstdcxx/v6/printers.py (StdPointerPrinter): Rename to...
4340         (SharedPointerPrinter): This. Also show weak count.
4341         * testsuite/libstdc++-prettyprinters/shared_ptr.cc: New.
4343 2012-02-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
4345         * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Modify to
4346         PASS instead of XFAIL.
4348 2012-02-05  Jeffrey Yasskin  <jyasskin@gcc.gnu.org>
4349             Paolo Carlini  <paolo.carlini@oracle.com>
4351         PR libstdc++/52119
4352         * include/std/limits (__glibcxx_min): Fix to avoid undefined behavior.
4354 2012-02-03  Benjamin Kosnik  <bkoz@redhat.com>
4356         PR libstdc++/49445
4357         * testsuite/29_atomics/atomic/cons/49445.cc: Add.
4359 2012-02-03  Benjamin Kosnik  <bkoz@redhat.com>
4361         PR libstdc++/51811
4362         * include/bits/atomic_base.h (atomic<_Tp*>): Fix offsets.
4363         * testsuite/29_atomics/atomic/operators/51811.cc: New.
4364         * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc: New.
4366 2012-02-03  Jakub Jelinek  <jakub@redhat.com>
4368         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
4369         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
4370         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
4371         Likewise.
4372         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
4373         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
4374         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
4375         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
4376         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
4377         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
4379 2012-02-02  Benjamin Kosnik  <bkoz@redhat.com>
4381         PR libstdc++/52068
4382         * src/c++11/Makefile.am (toolexeclib_LTLIBRARIES,
4383         libc__11_la_SOURCES): Remove.
4384         * src/c++11/Makefile.in: Regenerate.
4385         * src/c++98/Makefile.am (toolexeclib_LTLIBRARIES,
4386         libc__98_la_SOURCES): Remove.
4387         * src/c++98/Makefile.in: Regenerate.
4389 2012-02-01  Jonathan Wakely  <jwakely.gcc@gmail.com>
4391         PR libstdc++/49204
4392         * include/std/future (__future_base::_State_base::wait()): Use lambda
4393         expression for predicate and remove redundant test.
4394         (__future_base::_State_base::wait_for()): Return future_status and
4395         use lambda expression for predicate.
4396         (__future_base::_State_base::wait_until()): Likewise.
4397         (__basic_future::wait_for(), __basic_future::wait_until()): Likewise.
4398         (__future_base::_Async_state): Replace with _Async_state_common
4399         class for non-dependent functionality and _Async_state_impl class
4400         template for dependent functionality.
4401         (__future_base::_Async_state_common::_M_join): Serialize attempts to
4402         join thread.
4403         (__future_base::_Async_state_common::_M_run_deferred): Join.
4404         (__future_base::_Async_state::_M_do_run): Replace with lambda.
4405         * src/c++11/future.cc (__future_base::_Async_state_common): Define
4406         destructor, so key function is in the library.
4407         * config/abi/pre/gnu.ver: Add exports for ~_Async_state_common.
4408         * testsuite/30_threads/packaged_task/members/get_future.cc: Expect
4409         future_status return instead of bool.
4410         * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
4411         * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
4412         * testsuite/30_threads/future/members/wait_until.cc: Likewise.
4413         * testsuite/30_threads/future/members/wait_for.cc: Likewise.
4414         * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
4415         * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
4416         * testsuite/30_threads/promise/members/swap.cc: Likewise.
4418 2012-01-30  Tom Tromey  <tromey@redhat.com>
4420         PR libstdc++/51649:
4421         * testsuite/libstdc++-prettyprinters/debug.cc: New file.
4422         * testsuite/lib/gdb-test.exp (regexp-test): New proc.
4423         (note-test): Update.
4424         (gdb-test): Handle regexp tests.  Add some logging.
4425         * testsuite/libstdc++-prettyprinters/simple.cc: Compile with -O0.
4426         (placeholder, use): Remove.
4427         (main): Add tests for deque, list, map, and set iterators.  Add
4428         tests for slist and slist iterator.
4429         * testsuite/libstdc++-prettyprinters/48362.cc (main): Handle __7
4430         namespace.
4431         * python/libstdcxx/v6/printers.py (StdListPrinter.children): Use
4432         the type's _Node typedef.
4433         (StdListIteratorPrinter.to_string): Change how node type is
4434         computed.
4435         (StdSlistPrinter.children): Use the type's _Node typedef.
4436         (StdSlistIteratorPrinter.to_string): Likewise.
4437         (StdRbtreeIteratorPrinter.to_string): Use the type's _Link_type
4438         typedef.
4439         (StdMapPrinter.children): Change how the node's type is computed.
4440         (StdSetPrinter.children): Likewise.
4441         (StdForwardListPrinter.children): Use the type's _Node typedef.
4442         (Printer.add_version): New method.
4443         (Printer.add_container): New method.
4444         (build_libstdcxx_dictionary): Handle __7 and __cxx1998
4445         namespaces.
4446         (find_type): New function.
4448 2012-01-27  Paolo Carlini  <paolo.carlini@oracle.com>
4450         PR libstdc++/51795
4451         * include/bits/random.h (linear_congruential_generator): Add
4452         static_assert preventing instantiation for values of 'a' and 'm'
4453         currently handled incorrectly by _Mod::__calc.
4454         * include/bits/random.tcc (seed_seq::generate): Avoid unsafe
4455         uses of _Mod::__calc.
4457 2012-01-27  Jakub Jelinek  <jakub@redhat.com>
4459         PR libstdc++/51798
4460         * config/cpu/generic/atomicity_builtins/atomicity.h
4461         (__exchange_and_add, __atomic_add): Use __atomic_fetch_add
4462         with __ATOMIC_ACQ_REL semantics instead of __sync_fetch_and_add.
4463         * include/ext/atomicity.h (__exchange_and_add, __atomic_add):
4464         Likewise.
4466 2011-01-27  Rafael Avila de Espindola  <rafael.espindola@gmail.com>
4468         * libsupc++/typeinfo: Correctly match #pragma GCC visibility
4469         pop with #pragma GCC visibility push.
4471 2012-01-27  Benjamin Kosnik  <bkoz@redhat.com>
4472             Matthias Klose  <doko@ubuntu.com>
4474         * configure.ac (GLIBCXX_ENABLE_DEBUG_FLAGS): Use -gdwarf-4 -g3 -O0.
4475         * configure.in: Regenerated.
4476         * src/Makefile.am (all-once, install-data-once): New rules.
4477         (all-local, install-data-local): Use them.
4478         (build-debug, install-debug): Tweak.
4479         * src/Makefile.in: Regenerate.
4481 2012-01-27  Richard Henderson  <rth@redhat.com>
4483         * include/bits/atomic_base.h (__atomic_flag_base): Define _M_i
4484         based on the value of __GCC_ATOMIC_TEST_AND_SET_TRUEVAL.
4485         (ATOMIC_FLAG_INIT): Initialize with 0, not false.
4486         (atomic_flag::atomic_flag): Use __GCC_ATOMIC_TEST_AND_SET_TRUEVAL.
4488 2012-01-26  Jakub Jelinek  <jakub@redhat.com>
4490         PR bootstrap/51985
4491         * src/c++98/Makefile.am (libc__98_la_SOURCES,
4492         libc__98convenience_la_SOURCES): Remove $(inst_sources).
4493         * src/c++98/Makefile.in: Regenerated.
4495 2012-01-25  Richard Sandiford  <rdsandiford@googlemail.com>
4497         * testsuite/20_util/system_clock/1.cc: Add dg-require-time.
4498         * testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: Likewise.
4499         * testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: Likewise.
4500         * testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: Likewise.
4501         * testsuite/27_io/basic_istream/readsome/wchar_t/6746-2.cc: Add
4502         dg-require-fileio.
4503         * testsuite/27_io/basic_istream/seekg/wchar_t/fstream.cc: Likewise.
4504         * testsuite/27_io/basic_istream/tellg/wchar_t/1.cc: Likewise.
4505         * testsuite/27_io/basic_istream/tellg/wchar_t/fstream.cc: Likewise.
4506         * testsuite/27_io/basic_ostream/seekp/wchar_t/2346-fstream.cc:
4507         Likewise.
4508         * testsuite/27_io/basic_ostream/tellp/wchar_t/1.cc: Likewise.
4510 2012-01-25  Matthias Klose  <doko@ubuntu.com>
4512         * testsuite/30_threads/condition_variable_any/requirements: Remove
4513         empty directory.
4515 2012-01-23  Benjamin Kosnik  <bkoz@redhat.com>
4517         * src/Makefile.am (libstdc++convenience.la): Correct stamp rule, copy.
4518         * src/Makefile.in: Regenerate.
4520 2012-01-23  Benjamin Kosnik  <bkoz@redhat.com>
4522         PR libstdc++/49829
4523         Add libc++98convenience.la, libc++11convenience.la.
4524         * src/c++98: New directory.
4525         * src/c++11: New directory.
4526         * acinclude.m4: (GLIBCXX_CONFIGURE): Add src-c++98, src-c++11.
4527         * configure: Regenerated.
4528         * Makefile.am (hosted_source): Add src-c++98, src-c++11 to SUBDIRS.
4529         * Makefile.in: Regenerate.
4530         * libsupc++/Makefile.am (AM_CXXFLAGS): USe XTEMPLATE_FLAGS for
4531         -fno-implicit-templates.
4532         * libsupc++/Makefile.in: Regenerate.
4533         * src/Makefile.am (inst_sources): Move... C++11 files into
4534         separate directory for libstdc++11convenience.la. Files are:
4535         fstream-inst.cc, string-inst.cc, wlocale-inst.cc, wstring-inst.cc).
4536         (sources): Move C++11 files. Files are: compatibility-c++0x.cc,
4537         compatibility-atomic-c++0x.cc, debug.cc, functexcept.cc,
4538         functional.cc, hash_c++0x.cc, hashtable_c++0x.cc, limits.cc,
4539         system_error.cc, placeholders.cc, regex.cc, shared_ptr.cc,
4540         mutex.cc, condition_variable.cc, chrono.cc, thread.cc, future.cc.
4541         (libstdc++convenience.la): Add new target.
4542         (SUBDIRS): Add c++11, c++98.
4543         * src/Makefile.in: Regenerate.
4544         * src/c++11/Makefile.am: New.
4545         * src/c++11/Makefile.in: Generate.
4546         * src/c++98/Makefile.am: New, C++98 files.
4547         * src/c++98/Makefile.in: Generate.
4549 2012-01-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4551         libstdc++-v3:
4552         * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail on
4553         32-bit Solaris 10/x86.
4554         * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
4556 2012-01-21  Jonathan Wakely  <jwakely.gcc@gmail.com>
4558         PR libstdc++/50982
4559         * testsuite/30_threads/*: Add powerpc-ibm-aix* to target selectors.
4561 2012-01-19  Jakub Jelinek  <jakub@redhat.com>
4563         PR libstdc++/51845
4564         * include/bits/hashtable.h
4565         (_Hashtable<>::erase(const_iterator, const_iterator)): Also update
4566         _M_buckets[__n_bkt] if __is_bucket_begin.
4567         * testsuite/23_containers/unordered_multimap/erase/51845-multimap.cc:
4568         New test.
4570 2012-01-18  Benjamin Kosnik  <bkoz@redhat.com>
4572         * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): Fix quoting.
4574 2012-01-18  Benjamin Kosnik  <bkoz@redhat.com>
4576         * configure.ac: Move epub checks...
4577         * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): ...here, use
4578         test -f instead of AC_CHECK_FILES.
4580 2012-01-18  François Dumont  <fdumont@gcc.gnu.org>
4581             Roman Kononov  <roman@binarylife.net>
4583         PR libstdc++/51866
4584         * include/bits/hashtable.h (_Hashtable<>::_M_insert(_Arg, false_type)):
4585         Do not keep a reference to a potentially moved instance.
4586         * testsuite/23_containers/unordered_multiset/insert/51866.cc: New.
4587         * testsuite/23_containers/unordered_multimap/insert/51866.cc: New.
4589 2012-01-17  Benjamin Kosnik  <bkoz@redhat.com>
4591         * doc/html/*: Regenerate.
4593 2012-01-17  Benjamin Kosnik  <bkoz@redhat.com>
4595         * configure.ac (BUILD_EPUB): Adjust for epub3.
4596         * configure: Regenerate.
4597         * Makefile.in: Same.
4598         * doc/Makefile.am (stamp-epub-docbook): Update for epub3.
4599         * doc/Makefile.in: Regenerate.
4600         * include/Makefile.in: Same.
4601         * libsupc++/Makefile.in: Same.
4602         * po/Makefile.in: Same.
4603         * python/Makefile.in: Same.
4604         * src/Makefile.in: Same.
4605         * testsuite/Makefile.in: Same.
4607         * doc/xml/manual/documentation_hacking.xml: Update.
4609 2012-01-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4611         PR target/47852
4612         * configure.host (irix6.5*): Add -lpthread to OPT_LDFLAGS.
4614 2012-01-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
4616         * include/bits/stl_iterator.h (reverse_iterator): Doxygen comments.
4618 2012-01-13  François Dumont  <fdumont@gcc.gnu.org>
4620         * include/bits/hashtable_policy.h (_Hash_node_base): New, use it as
4621         base class of ...
4622         (_Hash_node<Value, true>, _Hash_node<Value, false>): ... those.
4623         * include/bits/hashtable.h (_Hashtable): Replace _M_begin_bucket_index
4624         by _M_before_begin. Review implementation so that we do not need to
4625         look for previous non-empty bucket when inserting nodes.
4627 2012-01-09  Kai Tietz  <ktietz@redhat.com>
4629         PR libstc++/51673 part 2
4630         * config/abi/pre/gnu-versioned-namespace.ver: Adjusted new/delete
4631         operators signature for LLP64 size_t, and adjusted signatures for
4632         mt-allocator using size_t.
4634 2012-01-09  Benjamin Kosnik  <bkoz@redhat.com>
4636         PR libstc++/51673 part 1
4637         * config/abi/pre/gnu-versioned-namespace.ver: Sync cxxabi symbols
4638         with gnu.ver.
4640 2012-01-09  Benjamin Kosnik  <bkoz@redhat.com>
4642         * fragment.am (WARN_CXXFLAGS): Add -Wabi.
4643         * Makefile.in: Regenerate.
4644         * doc/Makefile.in: Same.
4645         * include/Makefile.in: Same.
4646         * libsupc++/Makefile.in: Same.
4647         * src/Makefile.in: Same.
4648         * testsuite/Makefile.in: Same.
4649         * po/Makefile.in: Same.
4650         * python/Makefile.in: Same.
4652 2012-01-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
4654         * python/libstdcxx/v6/printers.py (StdForwardListPrinter): Add.
4655         * testsuite/libstdc++-prettyprinters/cxx11.cc: New.
4657 2012-01-06  Jason Merrill  <jason@redhat.com>
4659         * testsuite/abi/demangle/regression/cw-16.cc (main): Adjust
4660         expected demangling.
4662 2012-01-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
4664         PR libstdc++/51504
4665         * doc/xml/manual/debug.xml: Suggest using symbol interposition
4666         to override symbols using annotation macros.
4668 2012-01-05  François Dumont  <fdumont@gcc.gnu.org>
4670         * include/bits/hashtable_policy.h (_Hashtable_base<>::_M_eq()):
4671         protected rather than private, use it...
4672         * include/bits/hashtable.h (_Hashtable<>::key_eq()): ... here.
4673         * testsuite/23_containers/unordered_set/observers.cc: New.
4674         * testsuite/23_containers/unordered_multiset/observers.cc: New.
4675         * testsuite/23_containers/unordered_map/observers.cc: New.
4676         * testsuite/23_containers/unordered_multimap/observers.cc: New.
4678 2012-01-03  François Dumont  <fdumont@gcc.gnu.org>
4680         * include/bits/hashtable_policy.h (_Ebo_helper<>): Rename to the more
4681         specific _Hashtable_ebo_helper. Hide this implementation detail thanks
4682         to private inheritance.
4684 2012-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
4686         PR c++/51738
4687         * testsuite/23_containers/map/element_access/39901.cc: New.
4689 Copyright (C) 2012 Free Software Foundation, Inc.
4691 Copying and distribution of this file, with or without modification,
4692 are permitted in any medium without royalty provided the copyright
4693 notice and this notice are preserved.