OSDN Git Service

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