OSDN Git Service

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