OSDN Git Service

2014-04-04 Richard Biener <rguenther@suse.de>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
1 2014-04-01  Jason Merrill  <jason@redhat.com>
2
3         Core DR 475
4         PR c++/41174
5         PR c++/59224
6         * libsupc++/eh_throw.cc (__cxa_throw): Set uncaughtExceptions.
7         * libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception)
8         (__cxa_allocate_exception): Don't set it here.
9
10 2014-03-25  Jonathan Wakely  <jwakely@redhat.com>
11
12         PR libstdc++/60658
13         * include/bits/atomic_base.h (__atomic_base<_PTp*>::is_lock_free()):
14         Use sizeof pointer type not the element type.
15         * testsuite/29_atomics/atomic/60658.cc: New.
16
17 2013-11-05 Jonathan Wakely  <jwakely.gcc@gmail.com>
18
19         * doc/xml/manual/status_cxx2011.xml: Document aligned_union as
20         missing.
21         * doc/xml/manual/spine.xml: Update copyright years.
22         * doc/html/*: Regenerate.
23
24 2013-10-30  Chris Studholme  <cvs@cs.utoronto.ca>
25
26         PR libstdc++/58912
27         * include/bits/shared_ptr_base.h (_Sp_counted_ptr_inplace): Remove
28         unnecessary initialization of storage buffer.
29
30 2013-10-20  Chris Jefferson  <chris@bubblescope.net>
31             Paolo Carlini  <paolo.carlini@oracle.com>
32
33         PR libstdc++/58800
34         * include/bits/stl_algo.h (__unguarded_partition_pivot): Change
35         __last - 2 to __last - 1.
36         * testsuite/25_algorithms/nth_element/58800.cc: New
37
38 2013-09-30  Chris Jefferson  <chris@bubblescope.net>
39
40         PR libstdc++/58437
41         * include/bits/stl_algo.h (__move_median_first): Rename to
42         __move_median_to_first, change to take an addition argument.
43         (__unguarded_partition_pivot): Adjust.
44         * testsuite/performance/25_algorithms/sort.cc: New.
45         * testsuite/performance/25_algorithms/sort_heap.cc: Likewise.
46         * testsuite/performance/25_algorithms/stable_sort.cc: Likewise.
47
48 2013-09-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
49
50         Backport from mainline
51
52         2013-01-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
53
54         PR libstdc++/55861
55         * include/std/future (_State_base::_S_check(const shared_ptr<T>&)):
56         Fix return type.
57
58 2013-09-03  Paolo Carlini  <paolo.carlini@oracle.com>
59
60         PR libstdc++/58302
61         * include/bits/random.tcc (negative_binomial_distribution<>::
62         operator()(_UniformRandomNumberGenerator&, const param_type&):
63         Fix typo in template argument.
64         * testsuite/26_numerics/random/negative_binomial_distribution/
65         operators/58302.cc: New.
66
67 2013-08-17  Uros Bizjak  <ubizjak@gmail.com>
68
69         * src/c++98/compatibility.cc (_ZTIe): Use
70         reinterpret_cast<const cast *> to avoid -Wcast-qual warnings.
71         (_ZTIPe): Ditto.
72         (ZTIPKe): Ditto.
73
74 2013-05-15  Jonathan Wakely  <jwakely.gcc@gmail.com>
75
76         * include/bits/basic_string.h (getline): Fix doxygen comments.
77
78 2013-05-14  Evgeniy Stepanov  <eugenis@google.com>
79
80         * src/c++11/system_error.cc (generic_category_instance): Add
81         initializer.
82         (system_category_instance): Likewise.
83         * src/c++11/future.cc (__fec): Likewise.
84
85 2013-04-15  Jack Howarth  <howarth@bromo.med.uc.edu>
86
87         Backport from mainline
88
89         2012-10-10  Jack Howarth  <howarth@bromo.med.uc.edu>
90                     Jonathan Wakely  <jwakely.gcc@gmail.com>
91
92         PR libstdc++/54847
93         * config/os/bsd/darwin/os_defines.h: Define _GLIBCXX_USE_NANOSLEEP
94         and _GLIBCXX_USE_SCHED_YIELD.
95         * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Add comment.
96
97 2013-04-15  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
98
99         * testsuite/30_threads/condition_variable/members/53841.cc: Add
100         -std=gnu++0x -pthread on alpha*-*-osf*, mips-sgi-irix6*.
101
102 2013-04-11  Release Manager
103
104         * GCC 4.7.3 released.
105
106 2013-03-30  Gerald Pfeifer  <gerald@pfeifer.com>
107
108         * doc/xml/manual/allocator.xml: Adjust link to Dr.Dobb's article.q
109
110         * doc/xml/manual/appendix_contributing.xml: Adjust link to GNU
111         Coding Standards.
112
113         * doc/xml/manual/debug.xml: Adjust link for ThreadSanitizer.
114
115         * doc/xml/manual/debug_mode.xml: Adjust link for SafeSTL.
116
117         * doc/xml/manual/documentation_hacking.xml: Adjust Doxygen link.
118
119         * doc/xml/manual/messages.xml: Adjust link to Java API specs.
120
121         * doc/xml/manual/policy_data_structures: Remove direct link to
122         IBM Haifa Research Labs.
123
124         * doc/xml/manual/policy_data_structures_biblio.xml: Adjust links
125         for biblio.maverik_lowerbounds and biblio.nelson96stlpq.
126
127         * doc/xml/manual/profile_mode.xml: Adjust two links to acm.org
128         papers.
129
130         * doc/xml/manual/shared_ptr.xml: Use canonical address for
131         www.boost.org.
132
133 2013-03-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
134
135         PR libstdc++/56468
136         * libsupc++/exception_ptr.h (type_info): Declare.
137
138 2013-03-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
139
140         PR libstdc++/56002
141         * include/std/mutex (lock_guard, unique_lock, lock): Define without
142         depending on _GLIBCXX_HAS_GTHREADS.
143         * testsuite/30_threads/lock_guard/cons/1.cc: Run on all targets.
144
145 2013-03-09  François Dumont  <fdumont@gcc.gnu.org>
146
147         * include/bits/vector.tcc (vector<>operator=(const vector<>&):
148         Reset pointers after deallocation when memory can be reused.
149         * testsuite/23_containers/vector/allocator/minimal.cc: Insert
150         elements to really challenge C++11 allocator integration.
151         * testsuite/23_containers/vector/allocator/copy.cc: Likewise.
152         * testsuite/23_containers/vector/allocator/copy_assign.cc:
153         Likewise.
154         * testsuite/23_containers/vector/allocator/move_assign.cc:
155         Likewise.
156         * testsuite/23_containers/vector/allocator/swap.cc: Likewise and
157         swap vector back before checks on memory/personality mapping are
158         performed.
159
160 2013-02-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
161
162         PR libstdc++/56012
163         * include/bits/atomic_base.h (atomic_flag): Fix narrowing conversion.
164         * testsuite/29_atomics/atomic/operators/56012.cc: New.
165
166         PR libstdc++/56011
167         * include/std/atomic (atomic<bool>::operator=(bool) volatile): Add
168         missing overload.
169         * testsuite/29_atomics/atomic/operators/56011.cc: New.
170
171 2013-02-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
172
173         * include/std/streambuf (basic_streambuf): Fix unclosed Doxygen group.
174
175 2013-02-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
176
177         PR libstdc++/55043
178         * include/bits/alloc_traits.h (allocator_traits::construct): Disable
179         unless construction would be well-formed.
180         (__allow_copy_cons, __check_copy_constructible): Define.
181         * include/bits/unordered_map.h (__check_copy_constructible): Use as
182         base class so copy constructor will be deleted if appropriate.
183         * include/bits/unordered_set.h: Likewise.
184         * include/std/unordered_set: Include alloc_traits.h.
185         * include/std/unordered_set: Likewise.
186         * include/debug/unordered_map.h: Default copy and move constructors.
187         * include/debug/unordered_set.h: Likewise.
188         * testsuite/23_containers/unordered_map/55043.cc: Fix test.
189         * testsuite/23_containers/unordered_multimap/55043.cc: Likewise.
190         * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
191         * testsuite/23_containers/unordered_set/55043.cc: Likewise.
192         * testsuite/23_containers/unordered_map/requirements/53339.cc: XFAIL,
193         cannot support incomplete types.
194         * testsuite/23_containers/unordered_multimap/requirements/53339.cc:
195         Likewise.
196         * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
197         dg-error line number.
198
199 2013-02-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
200
201         * include/std/functional (mem_fn): Qualify to prevent ADL.
202         * testsuite/20_util/function_objects/mem_fn/adl.cc: New.
203
204 2013-02-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
205
206         * include/bits/hashtable.h: Improve comments.
207         * include/bits/hashtable_policy.h: Likewise.
208
209 2013-01-24  Paolo Carlini  <paolo.carlini@oracle.com>
210
211         PR libstdc++/56085
212         * include/std/complex (pow(const complex<>&, int)): Avoid __n
213         signed overflow.
214
215 2013-01-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
216
217         PR libstdc++/52887
218         * src/c++11/regex.cc: Add instantiations for AIX.
219
220 2013-01-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
221
222         * doc/xml/manual/status_cxx2011.xml: Document that N3189 is missing.
223
224 2013-01-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
225
226         * doc/xml/manual/abi.xml: Update library and symbol versions.
227
228 2012-12-18  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>
229
230         Backport from mainline
231         2012-10-15  Matthias Klose  <doko@ubuntu.com>
232
233         * configure.host: Match arm*-*-linux-* for ARM Linux/GNU.
234         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
235         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise.
236
237 2012-12-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
238
239         * doc/xml/manual/abi.xml: Update URLs for C++ ABI.
240         * doc/xml/manual/policy_data_structures_biblio.xml: Add xmlns
241         * doc/xml/manual/policy_data_structures.xml: Set filename for chunk.
242         * doc/xml/manual/spine.xml: Update copyright years.
243         * doc/html/*: Regenerate.
244
245 2012-12-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
246
247         * src/c++11/thread.cc: Update copyright years.
248
249 2012-12-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
250
251         * src/c++11/thread.cc (execute_native_thread_routine): Do not swallow
252         __forced_unwind exceptions.
253         * testsuite/30_threads/thread/native_handle/cancel.cc: New.
254
255 2012-12-12  Jonathan Wakely  <jwakely.gcc@gmail.com>
256
257         PR libstdc++/55631
258         * include/ext/alloc_traits.h: Include missing header.
259         * include/ext/pointer.h: Likewise.
260         * include/ext/string_conversions.h: Require C++11.
261         * libsupc++/initializer_list: Reindent.
262
263 2012-12-12  Benjamin Kosnik  <bkoz@redhat.com>
264
265         * doc/xml/manual/documentation_hacking.xml: Fix validation issue.
266
267 2012-12-10  Benjamin Kosnik  <bkoz@redhat.com>
268
269         * doc/Makefile.am (xml_sources_manual): Add
270         policy_data_structures_biblio.xml.
271         (${docbook_outdir}/latex): Add.
272         (doc-xml-validate-docbook): Split into..
273         (doc-xml-validate-dtd-db):... this for DTD.
274         (doc-xml-validate-rng-db):... this for Relax NG.
275         (doc-pdf-docbook-dirs): Add.
276         (doc-pdf-docbook-pre): Add.
277         * doc/xml/manual/build_hacking.xml: Add literal markup.
278         * doc/xml/manual/documentation_hacking.xml: Clean whitespace in
279         <filename> markup. Add notes about debugging the generation process.
280         * doc/xml/manual/policy_data_structures.xml: Split biblio into...
281         * doc/xml/manual/policy_data_structures_biblio.xml: ... this. New.
282         * doc/xml/manual/test_policy_data_structures.xml: Fixup <filename>
283         markup.
284
285 2012-12-10  Matthias Klose  <doko@ubuntu.com>
286
287         * src/Makefile.am (libstdc++-symbols.ver): Use CONFIG_HEADER.
288         * src/Makefile.in: Regenerate.
289
290 2012-12-01  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
291
292         PR libstdc++/55503
293         * testsuite/30_threads/condition_variable/members/53841.cc: Add
294         hppa*-hp-hpux11* to -pthread dg-options.
295
296 2012-11-20  Paolo Carlini  <paolo.carlini@oracle.com>
297
298         PR libstdc++/55413
299         * include/bits/hashtable.h (_Hashtable<>::_M_rehash_aux): Initialize
300         __bbegin_bkt and __prev_bkt to avoid uninitialized warnings.
301         * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
302         dg-error line number.
303
304 2012-11-15  Jonathan Wakely  <jwakely.gcc@gmail.com>
305
306         PR libstdc++/53841
307         * include/std/condition_variable (condition_variable::wait_until):
308         Handle clocks with higher resolution than __clock_t.
309         * testsuite/30_threads/condition_variable/members/53841.cc: New.
310
311 2012-11-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
312
313         PR libstdc++/55320
314         * include/std/functional (function::function(F)): Set _M_manager after
315         operations that could throw.
316         (_Function_base::_Ref_manager::_M_init_functor): Use addressof.
317         * include/tr1/functional
318         (_Function_base::_Ref_manager::_M_init_functor): Use addressof.
319         (_Function_base::_Base_manager::_M_get_pointer): Likewise.
320         * testsuite/20_util/function/cons/55320.cc: New.
321         * testsuite/20_util/function/cons/addressof.cc: New.
322         * testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line numbers.
323         * testsuite/tr1/3_function_objects/function/10.cc: New.
324
325 2012-11-12  Jonathan Wakely  <jwakely.gcc@gmail.com>
326
327         * include/std/future (atomic_future): Remove declaration of
328         non-standard name.
329
330 2012-11-08  François Dumont  <fdumont@gcc.gnu.org>
331
332         PR libstdc++/54075
333         * include/bits/hashtable.h (_Hashtable<>::rehash): Reset hash
334         policy state if no rehash.
335         * testsuite/23_containers/unordered_set/modifiers/reserve.cc
336         (test02): New.
337
338 2012-11-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
339
340         * include/profile/iterator_tracker.h (operator++): Fix returning
341         dangling reference.
342         (operator--): Likewise.
343
344 2012-11-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
345
346         * testsuite/20_util/shared_ptr/cons/55123.cc: Remove duplicate
347         include.
348
349 2012-11-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
350
351         * testsuite/*: Fix copying permission statements.
352
353 2012-11-05  Benjamin Kosnik  <bkoz@redhat.com>
354
355         PR libstdc++/28811
356         PR libstdc++/54482
357         * configure.ac (glibcxx_lt_pic_flag,
358           glibcxx_compiler_pic_flag,
359           glibcxx_compiler_shared_flag): New. Use them.
360         (lt_prog_compiler_pic_CXX): Set via glibcxx_*_flag(s) above.
361         (pic_mode): Set to default.
362         (PIC_CXXFLAGS): Remove.
363         * Makefile.am (PICFLAG, PICFLAG_FOR_TARGET): Remove. Comment.
364         * libsupc++/Makefile.am: Use glibcxx_ld_pic_flag and
365           glibcxx_compiler_shared_flag. Comment.
366         * src/c++11/Makefile.am: Same.
367         * src/c++98/Makefile.am: Same.
368         * src/Makefile.am: Use glibcxx_compiler_pic_flag.
369
370         * Makefile.in: Regenerated.
371         * aclocal.m4: Same.
372         * configure: Same.
373         * doc/Makefile.in: Same.
374         * include/Makefile.in: Same.
375         * libsupc++/Makefile.in: Same.
376         * po/Makefile.in: Same.
377         * python/Makefile.in: Same.
378         * src/Makefile.in: Same.
379         * src/c++11/Makefile.in: Same.
380         * src/c++98/Makefile.in: Same.
381         * testsuite/Makefile.in: Same.
382
383         * src/c++11/compatibility-atomic-c++0x.cc: Use
384           _GLIBCXX_SHARED instead of PIC to designate shared-only
385           code blocks.
386         * src/c++11/compatibility-c++0x.cc: Same.
387         * src/c++11/compatibility-thread-c++0x.cc: Same.
388         * src/c++98/compatibility-list-2.cc: Same.
389         * src/c++98/compatibility.cc: : Same.
390
391         * testsuite/17_intro/shared_with_static_deps.cc: New.
392
393         * doc/xml/manual/build_hacking.xml: Separate configure from
394         make/build issues, add build details.
395
396 2012-11-05  Benjamin Kosnik  <bkoz@redhat.com>
397             Oleg Smolsky  <oleg@smolsky.net>
398
399         PR libstdc++/55028
400         *  config/abi/pre/gnu-versioned-namespace.ver: Add symbols.
401         * testsuite/23_containers/unordered_multimap/insert/55028-debug.cc: New.
402
403 2012-11-05  Paolo Carlini  <paolo.carlini@oracle.com>
404
405         PR libstdc++/55215
406         * include/bits/random.tcc (mersenne_twister_engine<>::seed(_Sseq&)):
407         Assign state_size to _M_p.
408         * testsuite/26_numerics/random/mersenne_twister_engine/cons/55215.cc:
409         New.
410         * testsuite/26_numerics/random/independent_bits_engine/cons/55215.cc:
411         Likewise.
412         * testsuite/26_numerics/random/shuffle_order_engine/cons/55215.cc:
413         Likewise.
414         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
415         55215.cc: Likewise.
416         * testsuite/26_numerics/random/discard_block_engine/cons/55215.cc:
417         Likewise.
418         * testsuite/26_numerics/random/linear_congruential_engine/cons/
419         55215.cc: Likewise.
420
421 2012-11-02  Paolo Carlini  <paolo.carlini@oracle.com>
422
423         PR libstdc++/55169
424         * include/bits/random.h: Remove all uses of param().
425
426 2012-11-01   Haakan Younes  <hyounes@google.com>
427              Paolo Carlini  <paolo.carlini@oracle.com>
428
429         PR libstdc++/55047
430         * include/bits/random.h (exponential_distribution<>::operator):
431         Fix formula to std::log(result_type(1) - __aurng()).
432         * include/bits/random.tcc: Likewise, everywhere.
433
434 2012-10-29  Jonathan Wakely  <jwakely.gcc@gmail.com>
435
436         PR libstdc++/55123
437         * include/bits/shared_ptr_base.h (__shared_count::_S_create_from_up):
438         Do not instantiate allocator with element_type.
439         * testsuite/20_util/shared_ptr/cons/55123.cc: New.
440
441 2012-10-10  Andrew MacLeod  <amacleod@redhat.com>
442
443         PR libstdc++/54861
444         * include/bits/atomic_base.h (atomic_signal_fence): Call
445         __atomic_signal_fence instead of __atomic_thread_fence.
446
447 2012-09-20  Benjamin Kosnik  <bkoz@redhat.com>
448
449         PR libstdc++/54102, part 2
450         * doc/Makefile.am (XSL_HTML_STYLE): use xhtml, not html.
451         * doc/Makefile.in: Regenerate.
452         * doc/html/*: Same.
453
454 2012-09-20  Benjamin Kosnik  <bkoz@redhat.com>
455
456         * doc/html/*: Regenerate.
457
458 2012-09-20  Benjamin Kosnik  <bkoz@redhat.com>
459
460         PR libstdc++/54102
461         * doc/xsl/customization.xsl.in: New.
462         * configure.ac: Output local copy of customization xsl.
463         * doc/Makefile.am (stamp-html-single-docbook): Use XSL_LOCAL_STYLE.
464         (stamp-html-docbook): Set stringparam to UTF-8.
465         * Makefile.in: Regenerated.
466         * configure: Same.
467         * doc/Makefile.in: Same.
468
469 2012-09-20  Release Manager
470
471         * GCC 4.7.2 released.
472
473 2012-09-11  Jakub Jelinek  <jakub@redhat.com>
474
475         PR libstdc++/54172
476         * libsupc++/guard.cc (__cxa_guard_acquire): Fix up the last
477         argument of the first __atomic_compare_exchange_n.
478
479 2012-09-09  Thiago Macieira  <thiago.macieira@intel.com>
480
481         PR libstdc++/54172
482         * libsupc++/guard.cc (__cxa_guard_acquire): Exit the loop earlier if
483         we detect that another thread has had success. Don't compare_exchange
484         from a finished state back to a waiting state. Comment.
485
486 2012-09-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
487
488         PR libstdc++/54388
489         * include/std/array (array::at() const): Ensure lvalue result.
490         * testsuite/23_containers/array/element_access/54388.cc: New.
491
492 2012-09-06  Marc Glisse  <marc.glisse@inria.fr>
493             Paolo Carlini  <paolo.carlini@oracle.com>
494
495         PR libstdc++/54376
496         * include/bits/random.h (lognormal_distribution<>::operator==,
497         gamma_distribution<>::operator==,
498         chi_squared_distribution<>::operator==,
499         fisher_f_distribution<>::operator==,
500         student_t_distribution<>::operator==,
501         binomial_distribution<>::operator==,
502         negative_binomial_distribution<>::operator==,
503         poisson_distribution<>::operator==): Change inline friend definition
504         to non-template.
505         * testsuite/26_numerics/random/binomial_distribution/requirements/
506         explicit_instantiation/1.cc: New.
507         * testsuite/26_numerics/random/cauchy_distribution/requirements/
508         explicit_instantiation/1.cc: Likewise.
509         * testsuite/26_numerics/random/chi_squared_distribution/
510         requirements/explicit_instantiation/1.cc: Likewise.
511         * testsuite/26_numerics/random/discrete_distribution/requirements/
512         explicit_instantiation/1.cc: Likewise.
513         * testsuite/26_numerics/random/exponential_distribution/
514         requirements/explicit_instantiation/1.cc: Likewise.
515         * testsuite/26_numerics/random/extreme_value_distribution/
516         requirements/explicit_instantiation/1.cc: Likewise.
517         * testsuite/26_numerics/random/fisher_f_distribution/requirements/
518         explicit_instantiation/1.cc: Likewise.
519         * testsuite/26_numerics/random/gamma_distribution/requirements/
520         explicit_instantiation/1.cc: Likewise.
521         * testsuite/26_numerics/random/geometric_distribution/requirements/
522         explicit_instantiation/1.cc: Likewise.
523         * testsuite/26_numerics/random/lognormal_distribution/requirements/
524         explicit_instantiation/1.cc: Likewise.
525         * testsuite/26_numerics/random/negative_binomial_distribution/
526         requirements/explicit_instantiation/1.cc: Likewise.
527         * testsuite/26_numerics/random/normal_distribution/requirements/
528         explicit_instantiation/1.cc: Likewise.
529         * testsuite/26_numerics/random/piecewise_constant_distribution/
530         requirements/explicit_instantiation/1.cc: Likewise.
531         * testsuite/26_numerics/random/piecewise_linear_distribution/
532         requirements/explicit_instantiation/1.cc: Likewise.
533         * testsuite/26_numerics/random/poisson_distribution/requirements/
534         explicit_instantiation/1.cc: Likewise.
535         * testsuite/26_numerics/random/student_t_distribution/requirements/
536         explicit_instantiation/1.cc: Likewise.
537         * testsuite/26_numerics/random/uniform_int_distribution/
538         requirements/explicit_instantiation/1.cc: Likewise.
539         * testsuite/26_numerics/random/uniform_real_distribution/
540         requirements/explicit_instantiation/1.cc: Likewise.
541         * testsuite/26_numerics/random/weibull_distribution/requirements/
542         explicit_instantiation/1.cc: Likewise.
543
544 2012-08-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
545
546         * testsuite/30_threads/async/54297.cc: Add dg-require-nanosleep.
547
548 2012-08-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
549
550         PR libstdc++/54297
551         * src/c++11/future.cc (~_Async_state_common): Move to...
552         * src/c++11/compatibility-thread-c++0x.cc (~_Async_state_common):
553         Here.
554         (_GLIBCXX_ABI_COMPAT_ASYNC): Rename to _GLIBCXX_ASYNC_ABI_COMPAT.
555         * include/std/future (_GLIBCXX_ABI_COMPAT_ASYNC): Likewise.
556
557 2012-08-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
558             Geoff Romer  <gromer@google.com>
559
560         PR libstdc++/54351
561         * include/bits/unique_ptr.h (unique_ptr<T>::~unique_ptr): Do not use
562         reset().
563         (unique_ptr<T[]>::~unique_ptr()): Likewise.
564         * testsuite/20_util/unique_ptr/54351.cc: New.
565         * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust dg-error
566         line numbers.
567
568 2012-08-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
569
570         PR libstdc++/54297
571         * include/std/future (~_Async_state_impl): Join thread before
572         derived class members are destroyed.
573         (~_Async_state_common): Only define non-trivial destructor when
574         included from future.cc for ABI compatibility reasons.
575         * src/c++11/future.cc (_GLIBCXX_ABI_COMPAT_ASYNC): Define.
576         * testsuite/30_threads/async/54297.cc: New.
577
578 2012-08-13  David Adler  <d.adler.s@gmail.com>
579
580         PR libstdc++/54185
581         * src/c++11/condition_variable.cc (condition_variable): Always
582         destroy native type in destructor.
583         * testsuite/30_threads/condition_variable/54185.cc: New.
584
585 2012-08-06  Peter Bergner  <bergner@vnet.ibm.com>
586
587         PR libstdc++/54036
588         * include/decimal/decimal.h (_DEFINE_DECIMAL_UNARY_OP): Use _Op as
589         a unary operator.
590         * testsuite/decimal/pr54036-1.cc: New test.
591         * testsuite/decimal/pr54036-2.cc: Likewise.
592         * testsuite/decimal/pr54036-3.cc: Likewise.
593
594 2012-08-02  Michael Hope  <michael.hope@linaro.org>
595
596         Backport from mainline r186389:
597         2012-04-12  Andreas Schwab  <schwab@linux-m68k.org>
598
599         * testsuite/Makefile.am (check_DEJAGNUnormal0): Run
600         prettyprinters.exp.
601         * testsuite/Makefile.in: Regenerated.
602
603 2012-07-29  François Dumont  <fdumont@gcc.gnu.org>
604
605         PR libstdc++/54075
606         * include/bits/hashtable_policy.h
607         (_Prime_rehash_policy::_M_next_bkt): Add a growth factor set to 2
608         to boost growth in the number of buckets.
609         * testsuite/performance/23_containers/insert/unordered_set.cc: New.
610
611 2012-07-26  François Dumont  <fdumont@gcc.gnu.org>
612
613         PR libstdc++/54075
614         * include/bits/hashtable.h
615         (_Hashtable<>::_Hashtable(_InputIterator, _InputIterator,
616         size_type, ...): Remove std::max usage to guarantee that hashtable
617         state is consistent with hash policy state.
618         (_Hashtable<>::rehash): Likewise. Set _M_prev_resize to 0 to avoid
619         the hashtable shrinking on next insertion.
620         * testsuite/23_containers/unordered_set/modifiers/reserve.cc: New.
621         * testsuite/23_containers/unordered_multiset/modifiers/reserve.cc: New.
622         * testsuite/23_containers/unordered_map/modifiers/reserve.cc: New.
623         * testsuite/23_containers/unordered_multimap/modifiers/reserve.cc: New.
624
625 2012-07-20  Paolo Carlini  <paolo.carlini@oracle.com>
626
627         * testsuite/30_threads/thread/adl.cc: Add missing dg-requires.
628
629 2012-07-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
630
631         PR libstdc++/53270
632         * include/ext/concurrence.h: Use NSDMI for gthreads types.
633         * include/ext/rope: Likewise. Destroy mutexes in destructors. Add
634         system_header pragma.
635
636         Revert:
637         2012-06-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
638
639         PR libstdc++/53270
640         * config/os/gnu-linux/os_defines.h: Disable static initializer macros
641         for gthreads types in C++11 mode.
642
643 2012-07-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
644
645         PR libstdc++/53978
646         * include/bits/alloc_traits.h (allocator_traits): Define static
647         constants.
648         * include/bits/ptr_traits.h (pointer_traits): Likewise.
649         * include/ext/alloc_traits.h (__allocator_always_compares_equal):
650         Likewise.
651
652 2012-07-13  Paolo Carlini  <paolo.carlini@oracle.com>
653
654         PR libstdc++/53657
655         * include/bits/stl_pair.h (pair<>::pair(pair&&)): Declare defaulted,
656         per C++11.
657         * include/bits/stl_map.h (map<>::insert(_Pair&&), map<>::insert
658         (const_iterator, _Pair&&)): Constrain with std::is_constructible,
659         per LWG2005.
660         * include/bits/stl_multimap.h (multimap<>::insert(_Pair&&),
661         multimap<>::insert(const_iterator, _Pair&&)): Likewise.
662         * include/bits/hashtable_policy.h (_Insert<>::insert(_Pair&&),
663         _Insert<>::insert(const_iterator, _Pair&&)): Likewise.
664         * include/debug/unordered_map: Adjust.
665         * include/debug/map.h: Likewise.
666         * include/debug/multimap.h: Likewise.
667         * include/profile/unordered_map: Likewise.
668         * include/profile/map.h: Likewise.
669         * include/profile/multimap.h: Likewise.
670
671 2012-07-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
672
673         PR libstdc++/53578
674         * include/ext/concurrence.h (__recursive_mutex::_S_destroy): Fix
675         narrowing conversion.
676         * include/std/mutex (__recursive_mutex_base::_S_destroy): Likewise.
677
678 2012-07-06  Paolo Carlini  <paolo.carlini@oracle.com>
679
680         PR libstdc++/53872
681         * include/std/thread (thread::_M_make_routine): Qualify make_shared
682         to prevent ADL.
683         * testsuite/30_threads/thread/adl.cc: New.
684
685 2012-07-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
686
687         * include/std/condition_variable: Update copyright years.
688
689 2012-07-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
690
691         PR libstdc++/53830
692         * include/std/condition_variable (condition_variable_any::wait):
693         Move _Unlock type to class scope.
694         (condition_variable_any::wait_until): Reuse it.
695         * testsuite/30_threads/condition_variable_any/53830.cc: New.
696
697 2012-07-02  Paolo Carlini  <paolo.carlini@oracle.com>
698
699         Revert:
700         2011-10-04  Paolo Carlini  <paolo.carlini@oracle.com>
701
702         PR libstdc++/49561
703         * include/bits/stl_list.h (_List_base<>::_List_impl::_M_size):
704         Add in C++0x mode.
705         (_List_base<>::_List_impl, _List_base<>::_M_get_node,
706         _List_base<>::_M_put_node, _List_base<>::_List_base(_List_base&&),
707         list<>::size, list<>::swap, list<>::splice): Use it.
708         (operator==(const list<>&, const list<>&)): Rewrite in C++0x mode.
709         * include/bits/list.tcc (list<>::erase): Likewise.
710         (list<>::merge): Adjust in C++0x mode.
711         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
712         Adjust dg-error line number.
713         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
714         Likewise.
715         * testsuite/23_containers/list/requirements/dr438/
716         constructor_1_neg.cc: Likewise.
717         * testsuite/23_containers/list/requirements/dr438/
718         constructor_2_neg.cc: Likewise.
719
720 2012-06-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
721
722         PR libstdc++/53270
723         * config/os/gnu-linux/os_defines.h: Disable static initializer macros
724         for gthreads types in C++11 mode.
725
726 2012-06-19  Jörg Sonnenberger <joerg@britannica.bec.de>
727             Jonathan Wakely  <jwakely.gcc@gmail.com>
728
729         PR libstdc++/53678
730         * config/os/bsd/netbsd/ctype_base.h: Check for _CTYPE_U.
731         * testsuite/22_locale/ctype_base/53678.cc: New.
732
733 2012-06-14  Release Manager
734
735         * GCC 4.7.1 released.
736
737 2012-05-28  Paolo Carlini  <paolo.carlini@oracle.com>
738
739         PR c++/53503
740         * testsuite/26_numerics/headers/cmath/53503.cc: New.
741
742 2012-05-10  DJ Delorie  <dj@redhat.com>
743
744         * include/bits/random.tcc (seed_seq::generate): Cast max()
745         operands to size_t to ensure a template match.
746         * include/std/bitset (_M_copy_from_ptr): Cast min() operands to
747         size_t to ensure a template match.
748
749 2012-05-02  Paolo Carlini  <paolo.carlini@oracle.com>
750
751         PR libstdc++/53193
752         * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
753         dg-error line number.
754
755 2012-05-01  François Dumont  <fdumont@gcc.gnu.org>
756
757         PR libstdc++/53115
758         * include/bits/hashtable.h
759         (_Hashtable<>::_M_rehash_aux(size_type, false_type)): Fix buckets
760         after insertion of several equivalent elements.
761         * testsuite/23_containers/unordered_multiset/insert/53115.cc: New.
762         * testsuite/23_containers/unordered_multimap/insert/53115.cc: New.
763
764 2012-04-30  Andreas Tobler  <andreast@fgznet.ch>
765
766         Backport from mainline
767         2012-03-21  Andreas Tobler  <andreast@fgznet.ch>
768
769         * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
770         Skip this test on powerpc64-*-freebsd*.
771
772 2012-04-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
773
774         * include/std/scoped_allocator (scoped_allocator::__outermost): Do
775         not pass non-POD to varargs function.
776         * testsuite/20_util/scoped_allocator/1.cc: Fix test.
777
778 2012-04-23  Chris Jefferson  <chris@bubblescope.net>
779
780         PR testsuite/53046
781         * testsuite/25_algorithms/stable_partition/mem_check.cc: Fix size
782         of array A.
783         * testsuite/25_algorithms/stable_sort/mem_check.cc: Likewise.
784
785 2012-04-22  Paolo Carlini  <paolo.carlini@oracle.com>
786
787         PR libstdc++/53067
788         * include/bits/hashtable_policy.h: Change inheritances to public.
789         * testsuite/23_containers/unordered_map/requirements/53067.cc: New.
790         * testsuite/23_containers/unordered_set/requirements/53067.cc: Likewise.
791
792 2012-04-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
793
794         PR libstdc++/53027
795         * include/bits/ptr_traits.h (pointer_traits::rebind): Make public.
796         * testsuite/20_util/pointer_traits/requirements/typedefs.cc: Check
797         rebind works.
798
799 2012-04-21  Alan Modra  <amodra@gmail.com>
800
801         PR libstdc++/52839
802         * acinclude.m4 (_GLIBCXX_ATOMIC_BUILTINS): Do not depend on
803         glibcxx_cv_atomic_long_long.
804         * configure: Regenerate.
805
806 2012-04-16  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>
807
808         PR bootstrap/52840
809         * src/Makefile.am (build-debug): Do not adjust vpath dir, remove
810         Makefile.tmp
811         * src/Makefile.in: Adjust as per above.
812
813 2012-04-16  Benjamin Kosnik  <bkoz@redhat.com>
814
815         PR libstdc++/52689
816         * libsupc++/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
817         * libsupc++/Makefile.in: Regenerated.
818         * src/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
819         (libstdc___la_SOURCES): Add in compatiblity files, with content
820         that varies with -DPIC.
821         * src/Makefile.in: Regenerated.
822         * src/c++11/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
823         * src/c++11/Makefile.in: Regenerated.
824         * src/c++11/compatibility-atomic-c++0x.cc: Guard with PIC.
825         * src/c++11/compatibility-c++0x.cc: Same.
826         * src/c++11/future.cc: Consolidate compatibility bits into..
827         * src/c++11/mutex.cc: Consolidate compatibility bits into..
828         * src/c++11/compatibility-thread-cxx0x.cc: ...here. New.
829         * src/c++98/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
830         * src/c++98/Makefile.in: Regenerated.
831         * src/c++98/compatibility-list-2.cc: Guard with PIC.
832         * src/c++98/compatibility.cc: Tweak comments.
833
834 2012-04-16  Benjamin Kosnik  <bkoz@redhat.com>
835
836             * include/ext/pb_ds/detail/pat_trie_/
837             constructors_destructor_fn_imps.hpp: Increment after recursion.
838             * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: Convert
839             node_type markup from brief.
840
841 2012-04-14  Paolo Carlini  <paolo.carlini@oracle.com>
842
843         PR libstdc++/52699
844         * include/bits/random.tcc (independent_bits_engine<>::operator()())
845         Avoid various overflows; use common_type on result_type and
846         _RandomNumberEngine::result_type; avoid floating point computations;
847         other smaller tweaks.
848
849         * include/bits/random.tcc (uniform_int_distribution<>::operator())
850         Use common_type; assume _UniformRandomNumberGenerator::result_type
851         unsigned; tidy.
852
853         * include/bits/stl_algobase.h (__lg(unsigned), __lg(unsigned long),
854         __lg(unsigned long long)): Add.
855
856 2012-04-13  Paolo Carlini  <paolo.carlini@oracle.com>
857
858         * include/debug/safe_iterator.h (_BeforeBeginHelper<>::
859         _S_Is_Beginnest): Add.
860         * include/debug/forward_list (_BeforeBeginHelper<>::
861         _S_Is_Beginnest): Likewise.
862         (_Safe_iterator<>::_M_is_beginnest): Add.
863         * include/debug/safe_iterator.tcc (_Safe_iterator<>::_M_valid_range):
864         Use the latter.
865         * testsuite/23_containers/forward_list/debug/splice_after.cc:
866         Add test.
867
868 2012-04-12  Paolo Carlini  <paolo.carlini@oracle.com>
869
870         * include/bits/forward_list.h (splice_after(const_iterator,
871         forward_list&), splice_after(const_iterator, forward_list&,
872         consst_iterator), splice_after(const_iterator, forward_list&,
873         const_iterator, const_iterator), merge(forward_list&),
874         merge(forward_list&, _Comp)): Add per C++11 as published (and
875         LWG 1310).
876         * include/debug/forward_list: Adjust.
877
878         * include/bits/forward_list.h (splice_after(const_iterator,
879         forward_list&&, const_iterator)): Only declare.
880         (_M_transfer_after): Remove.
881         (_M_splice_after(const_iterator, forward_list&&)): Change signature.
882         (splice_after(const_iterator, forward_list&&, const_iterator,
883         const_iterator)): Use the latter.
884         * include/bits/forward_list.tcc (splice_after(const_iterator,
885         forward_list&&, const_iterator)): Define here.
886         (_M_splice_after): Define, use throughout.
887
888         * include/bits/forward_list.h (insert_after(const_iterator,
889         std::initializer_list<_Tp>)): Forward to insert_after(const_iterator,
890         _InputIterator, _InputIterator).
891         * include/bits/forward_list.tcc: Remove definition.
892
893         * testsuite/23_containers/forward_list/modifiers/6.cc: New.
894         * testsuite/23_containers/forward_list/operations/1.cc: Adjust.
895
896         * testsuite/23_containers/forward_list/requirements/dr438/
897         assign_neg.cc: Adjust dg-error line number.
898         * testsuite/23_containers/forward_list/requirements/dr438/
899         insert_neg.cc: Likewise.
900         * testsuite/23_containers/forward_list/requirements/dr438/
901         constructor_1_neg.cc: Likewise.
902         * testsuite/23_containers/forward_list/requirements/dr438/
903         constructor_2_neg.cc: Likewise.
904
905 2012-04-12   Jeffrey Yasskin  <jyasskin@google.com>
906
907         PR libstdc++/52822
908         * include/bits/stl_algo.h (__find_if_not): Expose in C++98 mode.
909         (__find_if_not_n): Like __find_if_not, but works on and updates a
910         counted range instead of a bounded range.
911         (stable_partition): Guarantee !__pred(*__first) in call to
912         __stable_partition_adaptive() or __inplace_stable_partition().
913         (__stable_partition_adaptive): Use new precondition to avoid
914         moving/copying objects onto themselves.  Guarantee new
915         precondition to recursive calls.
916         (__inplace_stable_partition): Use new precondition to simplify
917         base case, remove __last parameter.  Guarantee new precondition to
918         recursive calls.
919         * testsuite/25_algorithms/stable_partition/moveable.cc (test02):
920         Test a sequence that starts with a value matching the predicate.
921         * testsuite/25_algorithms/stable_partition/pr52822.cc: Test
922         vectors, which have a destructive self-move-assignment.
923
924 2012-04-12  Paolo Carlini  <paolo.carlini@oracle.com>
925
926         PR libstdc++/52942
927         * include/bits/stl_function.h (_Identity, _Select1st, _Select2nd):
928         In C++11 mode do not derive from std::unary_function.
929         * include/ext/functional (identity, select1st, select2nd): Adjust.
930         * testsuite/23_containers/unordered_map/requirements/52942.cc: New.
931         * testsuite/23_containers/unordered_set/requirements/52942.cc: Likewise.
932
933 2012-04-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
934
935         PR libstdc++/52924
936         * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Add
937         user-defined destructor.
938         (_Sp_counted_inplace): Likewise.
939         * testsuite/20_util/shared_ptr/cons/52924.cc: New.
940         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error
941         line numbers.
942
943 2012-04-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
944
945         * testsuite/performance/30_threads/future/polling.cc: Adjust.
946
947 2012-04-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
948
949         PR libstdc++/52591
950         * include/bits/stl_vector.h (vector::operator=(vector&&)): Dispatch
951         to _M_move_assign depending on whether allocator is moved.
952         (vector::_M_move_assign): Add overloaded functions.
953         * testsuite/23_containers/vector/52591.cc: New.
954         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
955         Adjust dg-error line number.
956         * testsuite/23_containers/vector/requirements/dr438/
957         constructor_1_neg.cc:
958         Likewise.
959         * testsuite/23_containers/vector/requirements/dr438/
960         constructor_2_neg.cc:
961         Likewise.
962         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
963         Likewise.
964
965 2012-04-09  François Dumont  <fdumont@gcc.gnu.org>
966
967         PR libstdc++/52476
968         * include/bits/hashtable.h (_Hashtable<>::_M_rehash_aux): Add.
969         (_Hashtable<>::_M_rehash): Use the latter.
970         * testsuite/23_containers/unordered_multimap/insert/52476.cc: New.
971         * testsuite/23_containers/unordered_multiset/insert/52476.cc: New.
972
973 2012-04-09  Terry Guo  <terry.guo@arm.com>
974
975         Backport from mainline
976         2012-03-28  Terry Guo  <terry.guo@arm.com>
977
978         * testsuite/Makefile.am (TEST_GCC_EXEC_PREFIX): New.
979         * testsuite/Makefile.in: Regenerated.
980
981 2012-03-30  Jeffrey Yasskin  <jyasskin@gcc.gnu.org>
982             Paolo Carlini  <paolo.carlini@oracle.com>
983
984         PR libstdc++/52799
985         * include/bits/deque.tcc (emplace): Fix thinko, replace push_front
986         -> emplace_front, and likewise for *_back.
987         * testsuite/23_containers/deque/modifiers/emplace/52799.cc: New.
988         * testsuite/23_containers/list/modifiers/emplace/52799.cc: Likewise.
989         * testsuite/23_containers/vector/modifiers/emplace/52799.cc: Likewise.
990
991 2012-03-23  David S. Miller  <davem@davemloft.net>
992
993         * config/abi/post/sparc-linux-gnu/baseline_symbols.txt: Update.
994
995 2012-03-23  Paolo Carlini  <paolo.carlini@oracle.com>
996
997         * include/bits/forward_list.h: Fix comments.
998
999 2012-03-23  Paweł Sikora  <pawel.sikora@agmk.net>
1000
1001         PR libstdc++/52540
1002         * include/Makefile.am (c++config.h): Fix sed rule to not break
1003         the _GLIBCXX_EXTERN_TEMPLATE redefinition.
1004         * include/Makefile.in: Regenerate.
1005
1006 2012-03-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
1007
1008         PR libstdc++/52433
1009         * include/debug/safe_iterator.h (_Safe_iterator): Add move
1010         constructor and move assignment operator.
1011         * testsuite/23_containers/vector/debug/52433.cc: New.
1012
1013 2012-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
1014
1015         * include/std/array (array<>::at(size_type) const): Fix version
1016         for undefined __EXCEPTIONS.
1017
1018 2012-03-22  Release Manager
1019
1020         * GCC 4.7.0 released.
1021
1022 2012-03-10  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1023
1024         PR libstdc++/52456
1025         * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
1026
1027 2012-03-09  Andreas Schwab  <schwab@linux-m68k.org>
1028
1029         * config/locale/gnu/monetary_members.cc
1030         (moneypunct<char,true>::_M_initialize_moneypunct): Throw caught
1031         exception again.
1032         (moneypunct<char,false>::_M_initialize_moneypunct): Likewise.
1033         * testsuite/22_locale/locale/cons/12352.cc: Also test en_US
1034         locale.
1035
1036 2012-03-02  Benjamin Kosnik  <bkoz@redhat.com>
1037
1038         * include/c_global/cstdio: Remove extraneous extern.
1039         * include/c_std/cstdio: Same.
1040
1041 2012-03-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1042
1043         * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerate.
1044         * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
1045         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
1046         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
1047         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
1048
1049 2012-03-01  Benjamin Kosnik  <bkoz@redhat.com>
1050             Ramana Radhakrishnan <ramana@gcc.gnu.org>
1051
1052         PR libstdc++/51785
1053         * acinclude.m4 (GLIBCXX_CHECK_STDIO_PROTO): New.
1054         * configure.ac: Call it.
1055         * configure: Regenerate.
1056         * config.h.in: Same.
1057         * config/os/gnu-linux/os_defines.h: Conditionally undefine
1058         _GLIBCXX_HAVE_GETS.
1059         * include/c_global/cstdio: Conditionally declare deprecated gets.
1060         * include/c_std/cstdio: Same.
1061
1062 2012-03-01  Michael Spertus  <mike_spertus@symantec.com>
1063
1064         * include/tr2/type_traits (typelist): To __reflection_typelist.
1065         (first, rest, empty): Remove.
1066
1067 2012-03-01  Benjamin Kosnik  <bkoz@redhat.com>
1068
1069         * testsuite/Makefile.am (CLEANFILES): Add *.gdb.
1070         * testsuite/Makefile.in: Regenerate.
1071
1072 2012-02-29  H.J. Lu  <hongjiu.lu@intel.com>
1073
1074         * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
1075
1076 2012-02-28  Benjamin Kosnik  <bkoz@redhat.com>
1077
1078         PR libstdc++/52191
1079         * testsuite/util/testsuite_abi.cc (compare_symbols): Check new
1080         symbols added into the latest version. Mark tls entities as
1081         undesignated.
1082
1083 2012-02-28  Jakub Jelinek  <jakub@redhat.com>
1084
1085         PR bootstrap/52414
1086         * src/Makefile.am (libstdc++-symbols.ver): Only remove comment lines
1087         if they are at the beginning of lines (with optional whitespace before
1088         #).
1089         * src/Makefile.in: Regenerated.
1090
1091 2012-02-27  Jakub Jelinek  <jakub@redhat.com>
1092
1093         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
1094         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
1095         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
1096         Likewise.
1097         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
1098         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
1099         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
1100         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
1101         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
1102         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1103
1104 2012-02-27  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1105
1106         PR libstdc++/52188
1107         * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Remove symvers_renaming.
1108         Remove ENABLE_SYMVERS_SOL2.
1109         * configure: Regenerate.
1110         * src/Makefile.am [ENABLE_SYMVERS] (libstdc++-symbols.ver):
1111         Postprocess mapfile.
1112         [ENABLE_SYMVERS_GNU]: Remove ENABLE_SYMVERS_SOL2 handling.
1113         * src/Makefile.in: Regenerate.
1114
1115         * config/abi/pre/gnu.ver (GLIBCXX_3.4.5) [!__sun__ && !__svr4__]:
1116         Don't export
1117         _ZNSt19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEppEv.
1118
1119 2012-02-25  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1120
1121         PR testsuite/52201
1122         * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
1123         Require atomic builtins.
1124         * testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
1125
1126 2012-02-23  Jason Merrill  <jason@redhat.com>
1127
1128         * include/bits/locale_facets.h (class num_get): Undo reordering of
1129         do_get virtual functions.
1130
1131 2012-02-14  Edward Smith-Rowland  <3dw4rd@verizon.net>
1132
1133         * testsuite/26_numerics/random/
1134         uniform_real_distribution/requirements/typedefs.cc: Check param_type.
1135         * testsuite/26_numerics/random/
1136         piecewise_constant_distribution/requirements/typedefs.cc: Ditto.
1137         * testsuite/26_numerics/random/
1138         chi_squared_distribution/requirements/typedefs.cc: Ditto.
1139         * testsuite/26_numerics/random/
1140         normal_distribution/requirements/typedefs.cc: Ditto.
1141         * testsuite/26_numerics/random/
1142         uniform_int_distribution/requirements/typedefs.cc: Ditto.
1143         * testsuite/26_numerics/random/
1144         poisson_distribution/requirements/typedefs.cc: Ditto.
1145         * testsuite/26_numerics/random/
1146         bernoulli_distribution/requirements/typedefs.cc: Ditto.
1147         * testsuite/26_numerics/random/
1148         discrete_distribution/requirements/typedefs.cc: Ditto.
1149         * testsuite/26_numerics/random/
1150         weibull_distribution/requirements/typedefs.cc: Ditto.
1151         * testsuite/26_numerics/random/
1152         cauchy_distribution/requirements/typedefs.cc: Ditto.
1153         * testsuite/26_numerics/random/
1154         negative_binomial_distribution/requirements/typedefs.cc: Ditto.
1155         * testsuite/26_numerics/random/
1156         gamma_distribution/requirements/typedefs.cc: Ditto.
1157         * testsuite/26_numerics/random/
1158         fisher_f_distribution/requirements/typedefs.cc: Ditto.
1159         * testsuite/26_numerics/random/
1160         exponential_distribution/requirements/typedefs.cc: Ditto.
1161         * testsuite/26_numerics/random/
1162         binomial_distribution/requirements/typedefs.cc: Ditto.
1163         * testsuite/26_numerics/random/
1164         lognormal_distribution/requirements/typedefs.cc: Ditto.
1165         * testsuite/26_numerics/random/
1166         extreme_value_distribution/requirements/typedefs.cc: Ditto.
1167         * testsuite/26_numerics/random/
1168         piecewise_linear_distribution/requirements/typedefs.cc: Ditto.
1169         * testsuite/26_numerics/random/
1170         student_t_distribution/requirements/typedefs.cc: Ditto.
1171         * testsuite/26_numerics/random/
1172         geometric_distribution/requirements/typedefs.cc: Ditto.
1173
1174 2012-02-21  Benjamin Kosnik  <bkoz@redhat.com>
1175
1176         PR libstdc++/50349
1177         * config/abi/pre/gnu.ver: Only one local.
1178         * config/abi/pre/gnu-versioned-namespace.ver: Same.
1179
1180 2012-02-21  Paolo Carlini  <paolo.carlini@oracle.com>
1181
1182         PR libstdc++/52317 (cont)
1183         * include/profile/unordered_map: Ad Library Exception comment.
1184         * include/profile/set: Likewise.
1185         * include/profile/base.h: Likewise.
1186         * include/profile/impl/profiler_list_to_slist.h: Likewise.
1187         * include/profile/impl/profiler_container_size.h: Likewise.
1188         * include/profile/impl/profiler_vector_size.h: Likewise.
1189         * include/profile/impl/profiler_hash_func.h: Likewise.
1190         * include/profile/impl/profiler_trace.h: Likewise.
1191         * include/profile/impl/profiler_list_to_vector.h: Likewise.
1192         * include/profile/impl/profiler_vector_to_list.h: Likewise.
1193         * include/profile/impl/profiler.h: Likewise.
1194         * include/profile/impl/profiler_state.h: Likewise.
1195         * include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
1196         * include/profile/impl/profiler_algos.h: Likewise.
1197         * include/profile/impl/profiler_hashtable_size.h: Likewise.
1198         * include/profile/impl/profiler_node.h: Likewise.
1199         * include/profile/vector: Likewise.
1200         * include/profile/unordered_set: Likewise.
1201         * include/profile/map.h: Likewise.
1202         * include/profile/map: Likewise.
1203
1204 2012-02-21  Paolo Carlini  <paolo.carlini@oracle.com>
1205
1206         PR libstdc++/52317
1207         * python/Makefile.am: Update boilerplate license text to GPLv3.
1208         * include/profile/unordered_map: Likewise.
1209         * include/profile/set: Likewise.
1210         * include/profile/base.h: Likewise.
1211         * include/profile/impl/profiler_list_to_slist.h: Likewise.
1212         * include/profile/impl/profiler_container_size.h: Likewise.
1213         * include/profile/impl/profiler_vector_size.h: Likewise.
1214         * include/profile/impl/profiler_hash_func.h: Likewise.
1215         * include/profile/impl/profiler_trace.h: Likewise.
1216         * include/profile/impl/profiler_list_to_vector.h: Likewise.
1217         * include/profile/impl/profiler_vector_to_list.h: Likewise.
1218         * include/profile/impl/profiler.h: Likewise.
1219         * include/profile/impl/profiler_state.h: Likewise.
1220         * include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
1221         * include/profile/impl/profiler_algos.h: Likewise.
1222         * include/profile/impl/profiler_hashtable_size.h: Likewise.
1223         * include/profile/impl/profiler_node.h: Likewise.
1224         * include/profile/vector: Likewise.
1225         * include/profile/unordered_set: Likewise.
1226         * include/profile/map.h: Likewise.
1227         * include/profile/map: Likewise.
1228         * testsuite/21_strings/basic_string/numeric_conversions/
1229         wchar_t/dr1261.cc: Likewise.
1230         * testsuite/21_strings/basic_string/numeric_conversions/
1231         char/dr1261.cc: Likewise.
1232         * testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise.
1233
1234 2012-02-20  Paolo Carlini  <paolo.carlini@oracle.com>
1235
1236         PR libstdc++/52241
1237         * src/c++98/tree.cc (local_Rb_tree_increment,
1238         local_Rb_tree_decrement): Add.
1239         (_Rb_tree_increment(const _Rb_tree_node_base*),
1240         _Rb_tree_decrement(const _Rb_tree_node_base*)): Use the latter.
1241         (_Rb_tree_increment(_Rb_tree_node_base*),
1242         _Rb_tree_decrement(_Rb_tree_node_base*)): New.
1243
1244 2012-02-20  Paolo Carlini  <paolo.carlini@oracle.com>
1245
1246         PR libstdc++/52309
1247         * include/bits/hashtable_policy.h (_Equality_base<, true,>::
1248         _M_equal(const _Hashtable&)): Compare values with operator==.
1249         * testsuite/23_containers/unordered_set/operators/52309.cc: New.
1250
1251 2012-02-17  Benjamin Kosnik  <bkoz@redhat.com>
1252
1253         PR libstdc++/51798 continued.
1254         * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Grep for
1255         __atomic_, not __sync.
1256         * configure: Regenerated.
1257
1258 2012-02-17  Benjamin Kosnik  <bkoz@redhat.com>
1259
1260         PR libstdc++/47058
1261         * acinclude.m4 (GLIBCXX_ENABLE_WERROR): New.
1262         (GLIBCXX_EXPORT_FLAGS): Add -Wabi to WARN_FLAGS
1263         * configure.ac: Use it.
1264         * fragment.am: Set WERROR_FLAG conditionally on --disable-werror.
1265         * configure: Regenerate.
1266         * python/Makefile.in: Same.
1267         * Makefile.in: Same.
1268         * doc/Makefile.in: Same.
1269         * include/Makefile.in: Same.
1270         * po/Makefile.in: Same.
1271         * python/Makefile.in: Same.
1272         * src/Makefile.in: Same.
1273         * src/c++11/Makefile.in: Same.
1274         * src/c++98/Makefile.in: Same.
1275         * testsuite/Makefile.in: Same.
1276
1277 2012-02-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1278
1279         PR libstdc++/52189
1280         * acinclude.m4 (GLIBCXX_CHECK_GTHREADS): Handle
1281         --enable-libstdcxx-threads.
1282         Disable on Solaris 8/9 with symbol versioning.
1283         * configure.ac (GLIBCXX_CHECK_GTHREADS): Move after
1284         GLIBCXX_ENABLE_SYMVERS.
1285         * configure: Regenerate.
1286         * doc/xml/manual/configure.xml (--enable-libstdcxx-threads): Explain.
1287
1288 2012-02-15  DJ Delorie  <dj@redhat.com>
1289
1290         * src/c++98/locale.cc (locale::facet::_S_get_c_locale): Fix typo.
1291
1292 2012-02-15  Benjamin Kosnik  <bkoz@redhat.com>
1293
1294         PR libstdc++/51368
1295         * acinclude.m4 (GLIBCXX_ENABLE_PYTHON): New.
1296         * configure.ac: Use it.
1297         * python/Makefile.am: Same.
1298         * configure: Regenerate.
1299         * python/Makefile.in: Regenerate.
1300         * Makefile.in: Same.
1301         * doc/Makefile.in: Same.
1302         * include/Makefile.in: Same.
1303         * po/Makefile.in: Same.
1304         * src/Makefile.in: Same.
1305         * src/c++11/Makefile.in: Same.
1306         * src/c++98/Makefile.in: Same.
1307         * testsuite/Makefile.in: Same.
1308
1309 2012-02-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
1310
1311         * 30_threads/thread/native_handle/typesizes.cc: Do not run on cygwin.
1312
1313 2012-02-14  Tom Tromey  <tromey@redhat.com>
1314
1315         * testsuite/libstdc++-prettyprinters/cxx11.cc (main): Add new
1316         tests.
1317         * python/libstdcxx/v6/printers.py (Tr1HashtableIterator.__init__):
1318         Rewrite.
1319         (Tr1HashtableIterator.update): Remove.
1320         (Tr1HashtableIterator.next): Rewrite.
1321
1322 2012-02-13  Benjamin Kosnik  <bkoz@redhat.com>
1323
1324         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
1325         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
1326
1327 2012-02-13  Richard Henderson  <rth@redhat.com>
1328
1329         PR libstdc++/51798 continued.
1330         * include/bits/shared_ptr_base.h
1331         (_Sp_counted_base<_S_atomic>::_M_add_ref_lock): Hoist initial load
1332         outside compare_exchange loop.
1333         * include/tr1/shared_ptr.h: Same.
1334         * include/parallel/compatibility.h (__compare_and_swap_32): Use strong
1335         version of compare_exchange.
1336         (__compare_and_swap_64): Same.
1337         * include/profile/impl/profiler_state.h (__gnu_profile::__turn): Same.
1338         * libsupc++/guard.cc (__cxa_guard_acquire): Same.
1339
1340 2012-02-10  Benjamin Kosnik  <bkoz@redhat.com>
1341             Jonathan Wakely  <jwakely.gcc@gmail.com>
1342
1343         PR libstdc++/51798 continued.
1344         * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Use __atomic_*
1345         builtins instead of __sync_* builtins for atomic functionality.
1346         * include/bits/shared_ptr_base.h: Same.
1347         * include/parallel/compatibility.h: Same.
1348         * include/profile/impl/profiler_state.h: Same.
1349         * include/tr1/shared_ptr.h: Same.
1350         * libsupc++/eh_ptr.cc: Same.
1351         * libsupc++/eh_throw.cc: Same.
1352         * libsupc++/eh_tm.cc: Same.
1353         * libsupc++/guard.cc: Same.
1354         * configure: Regenerated.
1355         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
1356         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
1357
1358 2012-02-10  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1359
1360         PR libstdc++/51296
1361         * config/os/osf/ctype_base.h,
1362         config/os/osf/ctype_configure_char.cc,
1363         config/os/osf/ctype_inline.h, config/os/osf/error_constants.h:
1364         Copy from config/os/generic.
1365         * config/os/osf/os_defines.h: Likewise.
1366         (_GTHREAD_USE_MUTEX_INIT_FUNC, _GTHREAD_USE_COND_INIT_FUNC):
1367         Define.
1368         * configure.host <osf*>: Use os/osf for os_include_dir.
1369
1370 2012-02-10  Uros Bizjak  <ubizjak@gmail.com>
1371
1372         * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Regenerated.
1373
1374 2012-02-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
1375
1376         * doc/xml/manual/documentation_hacking.xml: Fix invalid attribute.
1377
1378 2012-02-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
1379
1380         * doc/xml/manual/status_cxx2011.xml: Update C++11 status table.
1381
1382 2012-02-07  Benjamin Kosnik  <bkoz@redhat.com>
1383
1384         * doc/doxygen/user.cfg.in: Update to doxygen 1.7.6.1.
1385         * doc/xml/manual/documentation_hacking.xml: Update.
1386
1387 2012-02-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
1388
1389         * testsuite/30_threads/call_once/39909.cc: Remove duplicate target
1390         selector.
1391         * testsuite/30_threads/call_once/49668.cc: Likewise.
1392         * testsuite/30_threads/call_once/call_once1.cc: Likewise.
1393         * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
1394         * testsuite/30_threads/mutex/cons/1.cc: Likewise.
1395         * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
1396         * testsuite/30_threads/mutex/lock/1.cc: Likewise.
1397         * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
1398         * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
1399         * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
1400         * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
1401         * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
1402         * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
1403         * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
1404         * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
1405         * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
1406         * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
1407         * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
1408         * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
1409         * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
1410         * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
1411         * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
1412         * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
1413         * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
1414
1415 2012-02-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
1416
1417         PR libstdc++/51296
1418         * include/std/mutex (__mutex_base::~__mutex_base): Declare noexcept.
1419         * src/c++11/condition_variable.cc (condition_variable): Use macro for
1420         initializer function.
1421
1422         PR libstdc++/51906
1423         * config/os/bsd/darwin/os_defines.h: Disable static initializer for
1424         recursive mutexes.
1425
1426 2012-02-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
1427
1428         PR libstdc++/52128
1429         * src/c++11/future.cc: Add explicit instantiation.
1430
1431 2012-02-06  François Dumont  <fdumont@gcc.gnu.org>
1432
1433         * include/debug/safe_iterator.h
1434         (_Safe_iterator::_M_before_dereferenceable): Avoid the expensive
1435         creation of a _Safe_iterator instance to do the check.
1436
1437 2012-02-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
1438
1439         PR libstdc++/52104
1440         * include/std/future (__future_base::_Async_state_common): Define
1441         destructor inline for targets without TLS.
1442         * src/c++11/future.cc (__future_base::_Async_state_common): Only
1443         define destructor for TLS targets.
1444
1445 2012-02-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
1446
1447         PR libstdc++/51956
1448         * python/libstdcxx/v6/printers.py (StdPointerPrinter): Rename to...
1449         (SharedPointerPrinter): This. Also show weak count.
1450         * testsuite/libstdc++-prettyprinters/shared_ptr.cc: New.
1451
1452 2012-02-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
1453
1454         * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Modify to
1455         PASS instead of XFAIL.
1456
1457 2012-02-05  Jeffrey Yasskin  <jyasskin@gcc.gnu.org>
1458             Paolo Carlini  <paolo.carlini@oracle.com>
1459
1460         PR libstdc++/52119
1461         * include/std/limits (__glibcxx_min): Fix to avoid undefined behavior.
1462
1463 2012-02-03  Benjamin Kosnik  <bkoz@redhat.com>
1464
1465         PR libstdc++/49445
1466         * testsuite/29_atomics/atomic/cons/49445.cc: Add.
1467
1468 2012-02-03  Benjamin Kosnik  <bkoz@redhat.com>
1469
1470         PR libstdc++/51811
1471         * include/bits/atomic_base.h (atomic<_Tp*>): Fix offsets.
1472         * testsuite/29_atomics/atomic/operators/51811.cc: New.
1473         * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc: New.
1474
1475 2012-02-03  Jakub Jelinek  <jakub@redhat.com>
1476
1477         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
1478         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
1479         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
1480         Likewise.
1481         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
1482         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
1483         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
1484         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
1485         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
1486         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1487
1488 2012-02-02  Benjamin Kosnik  <bkoz@redhat.com>
1489
1490         PR libstdc++/52068
1491         * src/c++11/Makefile.am (toolexeclib_LTLIBRARIES,
1492         libc__11_la_SOURCES): Remove.
1493         * src/c++11/Makefile.in: Regenerate.
1494         * src/c++98/Makefile.am (toolexeclib_LTLIBRARIES,
1495         libc__98_la_SOURCES): Remove.
1496         * src/c++98/Makefile.in: Regenerate.
1497
1498 2012-02-01  Jonathan Wakely  <jwakely.gcc@gmail.com>
1499
1500         PR libstdc++/49204
1501         * include/std/future (__future_base::_State_base::wait()): Use lambda
1502         expression for predicate and remove redundant test.
1503         (__future_base::_State_base::wait_for()): Return future_status and
1504         use lambda expression for predicate.
1505         (__future_base::_State_base::wait_until()): Likewise.
1506         (__basic_future::wait_for(), __basic_future::wait_until()): Likewise.
1507         (__future_base::_Async_state): Replace with _Async_state_common
1508         class for non-dependent functionality and _Async_state_impl class
1509         template for dependent functionality.
1510         (__future_base::_Async_state_common::_M_join): Serialize attempts to
1511         join thread.
1512         (__future_base::_Async_state_common::_M_run_deferred): Join.
1513         (__future_base::_Async_state::_M_do_run): Replace with lambda.
1514         * src/c++11/future.cc (__future_base::_Async_state_common): Define
1515         destructor, so key function is in the library.
1516         * config/abi/pre/gnu.ver: Add exports for ~_Async_state_common.
1517         * testsuite/30_threads/packaged_task/members/get_future.cc: Expect
1518         future_status return instead of bool.
1519         * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
1520         * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
1521         * testsuite/30_threads/future/members/wait_until.cc: Likewise.
1522         * testsuite/30_threads/future/members/wait_for.cc: Likewise.
1523         * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
1524         * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
1525         * testsuite/30_threads/promise/members/swap.cc: Likewise.
1526
1527 2012-01-30  Tom Tromey  <tromey@redhat.com>
1528
1529         PR libstdc++/51649:
1530         * testsuite/libstdc++-prettyprinters/debug.cc: New file.
1531         * testsuite/lib/gdb-test.exp (regexp-test): New proc.
1532         (note-test): Update.
1533         (gdb-test): Handle regexp tests.  Add some logging.
1534         * testsuite/libstdc++-prettyprinters/simple.cc: Compile with -O0.
1535         (placeholder, use): Remove.
1536         (main): Add tests for deque, list, map, and set iterators.  Add
1537         tests for slist and slist iterator.
1538         * testsuite/libstdc++-prettyprinters/48362.cc (main): Handle __7
1539         namespace.
1540         * python/libstdcxx/v6/printers.py (StdListPrinter.children): Use
1541         the type's _Node typedef.
1542         (StdListIteratorPrinter.to_string): Change how node type is
1543         computed.
1544         (StdSlistPrinter.children): Use the type's _Node typedef.
1545         (StdSlistIteratorPrinter.to_string): Likewise.
1546         (StdRbtreeIteratorPrinter.to_string): Use the type's _Link_type
1547         typedef.
1548         (StdMapPrinter.children): Change how the node's type is computed.
1549         (StdSetPrinter.children): Likewise.
1550         (StdForwardListPrinter.children): Use the type's _Node typedef.
1551         (Printer.add_version): New method.
1552         (Printer.add_container): New method.
1553         (build_libstdcxx_dictionary): Handle __7 and __cxx1998
1554         namespaces.
1555         (find_type): New function.
1556
1557 2012-01-27  Paolo Carlini  <paolo.carlini@oracle.com>
1558
1559         PR libstdc++/51795
1560         * include/bits/random.h (linear_congruential_generator): Add
1561         static_assert preventing instantiation for values of 'a' and 'm'
1562         currently handled incorrectly by _Mod::__calc.
1563         * include/bits/random.tcc (seed_seq::generate): Avoid unsafe
1564         uses of _Mod::__calc.
1565
1566 2012-01-27  Jakub Jelinek  <jakub@redhat.com>
1567
1568         PR libstdc++/51798
1569         * config/cpu/generic/atomicity_builtins/atomicity.h
1570         (__exchange_and_add, __atomic_add): Use __atomic_fetch_add
1571         with __ATOMIC_ACQ_REL semantics instead of __sync_fetch_and_add.
1572         * include/ext/atomicity.h (__exchange_and_add, __atomic_add):
1573         Likewise.
1574
1575 2011-01-27  Rafael Avila de Espindola  <rafael.espindola@gmail.com>
1576
1577         * libsupc++/typeinfo: Correctly match #pragma GCC visibility
1578         pop with #pragma GCC visibility push.
1579
1580 2012-01-27  Benjamin Kosnik  <bkoz@redhat.com>
1581             Matthias Klose  <doko@ubuntu.com>
1582
1583         * configure.ac (GLIBCXX_ENABLE_DEBUG_FLAGS): Use -gdwarf-4 -g3 -O0.
1584         * configure.in: Regenerated.
1585         * src/Makefile.am (all-once, install-data-once): New rules.
1586         (all-local, install-data-local): Use them.
1587         (build-debug, install-debug): Tweak.
1588         * src/Makefile.in: Regenerate.
1589
1590 2012-01-27  Richard Henderson  <rth@redhat.com>
1591
1592         * include/bits/atomic_base.h (__atomic_flag_base): Define _M_i
1593         based on the value of __GCC_ATOMIC_TEST_AND_SET_TRUEVAL.
1594         (ATOMIC_FLAG_INIT): Initialize with 0, not false.
1595         (atomic_flag::atomic_flag): Use __GCC_ATOMIC_TEST_AND_SET_TRUEVAL.
1596
1597 2012-01-26  Jakub Jelinek  <jakub@redhat.com>
1598
1599         PR bootstrap/51985
1600         * src/c++98/Makefile.am (libc__98_la_SOURCES,
1601         libc__98convenience_la_SOURCES): Remove $(inst_sources).
1602         * src/c++98/Makefile.in: Regenerated.
1603
1604 2012-01-25  Richard Sandiford  <rdsandiford@googlemail.com>
1605
1606         * testsuite/20_util/system_clock/1.cc: Add dg-require-time.
1607         * testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: Likewise.
1608         * testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: Likewise.
1609         * testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: Likewise.
1610         * testsuite/27_io/basic_istream/readsome/wchar_t/6746-2.cc: Add
1611         dg-require-fileio.
1612         * testsuite/27_io/basic_istream/seekg/wchar_t/fstream.cc: Likewise.
1613         * testsuite/27_io/basic_istream/tellg/wchar_t/1.cc: Likewise.
1614         * testsuite/27_io/basic_istream/tellg/wchar_t/fstream.cc: Likewise.
1615         * testsuite/27_io/basic_ostream/seekp/wchar_t/2346-fstream.cc:
1616         Likewise.
1617         * testsuite/27_io/basic_ostream/tellp/wchar_t/1.cc: Likewise.
1618
1619 2012-01-25  Matthias Klose  <doko@ubuntu.com>
1620
1621         * testsuite/30_threads/condition_variable_any/requirements: Remove
1622         empty directory.
1623
1624 2012-01-23  Benjamin Kosnik  <bkoz@redhat.com>
1625
1626         * src/Makefile.am (libstdc++convenience.la): Correct stamp rule, copy.
1627         * src/Makefile.in: Regenerate.
1628
1629 2012-01-23  Benjamin Kosnik  <bkoz@redhat.com>
1630
1631         PR libstdc++/49829
1632         Add libc++98convenience.la, libc++11convenience.la.
1633         * src/c++98: New directory.
1634         * src/c++11: New directory.
1635         * acinclude.m4: (GLIBCXX_CONFIGURE): Add src-c++98, src-c++11.
1636         * configure: Regenerated.
1637         * Makefile.am (hosted_source): Add src-c++98, src-c++11 to SUBDIRS.
1638         * Makefile.in: Regenerate.
1639         * libsupc++/Makefile.am (AM_CXXFLAGS): USe XTEMPLATE_FLAGS for
1640         -fno-implicit-templates.
1641         * libsupc++/Makefile.in: Regenerate.
1642         * src/Makefile.am (inst_sources): Move... C++11 files into
1643         separate directory for libstdc++11convenience.la. Files are:
1644         fstream-inst.cc, string-inst.cc, wlocale-inst.cc, wstring-inst.cc).
1645         (sources): Move C++11 files. Files are: compatibility-c++0x.cc,
1646         compatibility-atomic-c++0x.cc, debug.cc, functexcept.cc,
1647         functional.cc, hash_c++0x.cc, hashtable_c++0x.cc, limits.cc,
1648         system_error.cc, placeholders.cc, regex.cc, shared_ptr.cc,
1649         mutex.cc, condition_variable.cc, chrono.cc, thread.cc, future.cc.
1650         (libstdc++convenience.la): Add new target.
1651         (SUBDIRS): Add c++11, c++98.
1652         * src/Makefile.in: Regenerate.
1653         * src/c++11/Makefile.am: New.
1654         * src/c++11/Makefile.in: Generate.
1655         * src/c++98/Makefile.am: New, C++98 files.
1656         * src/c++98/Makefile.in: Generate.
1657
1658 2012-01-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1659
1660         libstdc++-v3:
1661         * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail on
1662         32-bit Solaris 10/x86.
1663         * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
1664
1665 2012-01-21  Jonathan Wakely  <jwakely.gcc@gmail.com>
1666
1667         PR libstdc++/50982
1668         * testsuite/30_threads/*: Add powerpc-ibm-aix* to target selectors.
1669
1670 2012-01-19  Jakub Jelinek  <jakub@redhat.com>
1671
1672         PR libstdc++/51845
1673         * include/bits/hashtable.h
1674         (_Hashtable<>::erase(const_iterator, const_iterator)): Also update
1675         _M_buckets[__n_bkt] if __is_bucket_begin.
1676         * testsuite/23_containers/unordered_multimap/erase/51845-multimap.cc:
1677         New test.
1678
1679 2012-01-18  Benjamin Kosnik  <bkoz@redhat.com>
1680
1681         * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): Fix quoting.
1682
1683 2012-01-18  Benjamin Kosnik  <bkoz@redhat.com>
1684
1685         * configure.ac: Move epub checks...
1686         * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): ...here, use
1687         test -f instead of AC_CHECK_FILES.
1688
1689 2012-01-18  François Dumont  <fdumont@gcc.gnu.org>
1690             Roman Kononov  <roman@binarylife.net>
1691
1692         PR libstdc++/51866
1693         * include/bits/hashtable.h (_Hashtable<>::_M_insert(_Arg, false_type)):
1694         Do not keep a reference to a potentially moved instance.
1695         * testsuite/23_containers/unordered_multiset/insert/51866.cc: New.
1696         * testsuite/23_containers/unordered_multimap/insert/51866.cc: New.
1697
1698 2012-01-17  Benjamin Kosnik  <bkoz@redhat.com>
1699
1700         * doc/html/*: Regenerate.
1701
1702 2012-01-17  Benjamin Kosnik  <bkoz@redhat.com>
1703
1704         * configure.ac (BUILD_EPUB): Adjust for epub3.
1705         * configure: Regenerate.
1706         * Makefile.in: Same.
1707         * doc/Makefile.am (stamp-epub-docbook): Update for epub3.
1708         * doc/Makefile.in: Regenerate.
1709         * include/Makefile.in: Same.
1710         * libsupc++/Makefile.in: Same.
1711         * po/Makefile.in: Same.
1712         * python/Makefile.in: Same.
1713         * src/Makefile.in: Same.
1714         * testsuite/Makefile.in: Same.
1715
1716         * doc/xml/manual/documentation_hacking.xml: Update.
1717
1718 2012-01-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1719
1720         PR target/47852
1721         * configure.host (irix6.5*): Add -lpthread to OPT_LDFLAGS.
1722
1723 2012-01-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
1724
1725         * include/bits/stl_iterator.h (reverse_iterator): Doxygen comments.
1726
1727 2012-01-13  François Dumont  <fdumont@gcc.gnu.org>
1728
1729         * include/bits/hashtable_policy.h (_Hash_node_base): New, use it as
1730         base class of ...
1731         (_Hash_node<Value, true>, _Hash_node<Value, false>): ... those.
1732         * include/bits/hashtable.h (_Hashtable): Replace _M_begin_bucket_index
1733         by _M_before_begin. Review implementation so that we do not need to
1734         look for previous non-empty bucket when inserting nodes.
1735
1736 2012-01-09  Kai Tietz  <ktietz@redhat.com>
1737
1738         PR libstc++/51673 part 2
1739         * config/abi/pre/gnu-versioned-namespace.ver: Adjusted new/delete
1740         operators signature for LLP64 size_t, and adjusted signatures for
1741         mt-allocator using size_t.
1742
1743 2012-01-09  Benjamin Kosnik  <bkoz@redhat.com>
1744
1745         PR libstc++/51673 part 1
1746         * config/abi/pre/gnu-versioned-namespace.ver: Sync cxxabi symbols
1747         with gnu.ver.
1748
1749 2012-01-09  Benjamin Kosnik  <bkoz@redhat.com>
1750
1751         * fragment.am (WARN_CXXFLAGS): Add -Wabi.
1752         * Makefile.in: Regenerate.
1753         * doc/Makefile.in: Same.
1754         * include/Makefile.in: Same.
1755         * libsupc++/Makefile.in: Same.
1756         * src/Makefile.in: Same.
1757         * testsuite/Makefile.in: Same.
1758         * po/Makefile.in: Same.
1759         * python/Makefile.in: Same.
1760
1761 2012-01-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
1762
1763         * python/libstdcxx/v6/printers.py (StdForwardListPrinter): Add.
1764         * testsuite/libstdc++-prettyprinters/cxx11.cc: New.
1765
1766 2012-01-06  Jason Merrill  <jason@redhat.com>
1767
1768         * testsuite/abi/demangle/regression/cw-16.cc (main): Adjust
1769         expected demangling.
1770
1771 2012-01-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
1772
1773         PR libstdc++/51504
1774         * doc/xml/manual/debug.xml: Suggest using symbol interposition
1775         to override symbols using annotation macros.
1776
1777 2012-01-05  François Dumont  <fdumont@gcc.gnu.org>
1778
1779         * include/bits/hashtable_policy.h (_Hashtable_base<>::_M_eq()):
1780         protected rather than private, use it...
1781         * include/bits/hashtable.h (_Hashtable<>::key_eq()): ... here.
1782         * testsuite/23_containers/unordered_set/observers.cc: New.
1783         * testsuite/23_containers/unordered_multiset/observers.cc: New.
1784         * testsuite/23_containers/unordered_map/observers.cc: New.
1785         * testsuite/23_containers/unordered_multimap/observers.cc: New.
1786
1787 2012-01-03  François Dumont  <fdumont@gcc.gnu.org>
1788
1789         * include/bits/hashtable_policy.h (_Ebo_helper<>): Rename to the more
1790         specific _Hashtable_ebo_helper. Hide this implementation detail thanks
1791         to private inheritance.
1792
1793 2012-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
1794
1795         PR c++/51738
1796         * testsuite/23_containers/map/element_access/39901.cc: New.