OSDN Git Service

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