OSDN Git Service

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