OSDN Git Service

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