OSDN Git Service

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