OSDN Git Service

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