OSDN Git Service

98f8ea99e0fbac152bb4fddf9398fd3fc2964fde
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
1 2012-02-28  Benjamin Kosnik  <bkoz@redhat.com>
2
3         PR libstdc++/52191
4         * testsuite/util/testsuite_abi.cc (compare_symbols): Check new
5         symbols added into the latest version. Mark tls entities as
6         undesignated.
7
8 2012-02-28  Jakub Jelinek  <jakub@redhat.com>
9
10         PR bootstrap/52414
11         * src/Makefile.am (libstdc++-symbols.ver): Only remove comment lines
12         if they are at the beginning of lines (with optional whitespace before
13         #).
14         * src/Makefile.in: Regenerated.
15
16 2012-02-27  Jakub Jelinek  <jakub@redhat.com>
17
18         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
19         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
20         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
21         Likewise.
22         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
23         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
24         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
25         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
26         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
27         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
28
29 2012-02-27  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
30
31         PR libstdc++/52188
32         * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Remove symvers_renaming.
33         Remove ENABLE_SYMVERS_SOL2.
34         * configure: Regenerate.
35         * src/Makefile.am [ENABLE_SYMVERS] (libstdc++-symbols.ver):
36         Postprocess mapfile.
37         [ENABLE_SYMVERS_GNU]: Remove ENABLE_SYMVERS_SOL2 handling.
38         * src/Makefile.in: Regenerate.
39
40         * config/abi/pre/gnu.ver (GLIBCXX_3.4.5) [!__sun__ && !__svr4__]:
41         Don't export
42         _ZNSt19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEppEv.
43
44 2012-02-25  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
45
46         PR testsuite/52201
47         * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
48         Require atomic builtins.
49         * testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
50
51 2012-02-23  Jason Merrill  <jason@redhat.com>
52
53         * include/bits/locale_facets.h (class num_get): Undo reordering of
54         do_get virtual functions.
55
56 2012-02-14  Edward Smith-Rowland  <3dw4rd@verizon.net>
57
58         * testsuite/26_numerics/random/
59         uniform_real_distribution/requirements/typedefs.cc: Check param_type.
60         * testsuite/26_numerics/random/
61         piecewise_constant_distribution/requirements/typedefs.cc: Ditto.
62         * testsuite/26_numerics/random/
63         chi_squared_distribution/requirements/typedefs.cc: Ditto.
64         * testsuite/26_numerics/random/
65         normal_distribution/requirements/typedefs.cc: Ditto.
66         * testsuite/26_numerics/random/
67         uniform_int_distribution/requirements/typedefs.cc: Ditto.
68         * testsuite/26_numerics/random/
69         poisson_distribution/requirements/typedefs.cc: Ditto.
70         * testsuite/26_numerics/random/
71         bernoulli_distribution/requirements/typedefs.cc: Ditto.
72         * testsuite/26_numerics/random/
73         discrete_distribution/requirements/typedefs.cc: Ditto.
74         * testsuite/26_numerics/random/
75         weibull_distribution/requirements/typedefs.cc: Ditto.
76         * testsuite/26_numerics/random/
77         cauchy_distribution/requirements/typedefs.cc: Ditto.
78         * testsuite/26_numerics/random/
79         negative_binomial_distribution/requirements/typedefs.cc: Ditto.
80         * testsuite/26_numerics/random/
81         gamma_distribution/requirements/typedefs.cc: Ditto.
82         * testsuite/26_numerics/random/
83         fisher_f_distribution/requirements/typedefs.cc: Ditto.
84         * testsuite/26_numerics/random/
85         exponential_distribution/requirements/typedefs.cc: Ditto.
86         * testsuite/26_numerics/random/
87         binomial_distribution/requirements/typedefs.cc: Ditto.
88         * testsuite/26_numerics/random/
89         lognormal_distribution/requirements/typedefs.cc: Ditto.
90         * testsuite/26_numerics/random/
91         extreme_value_distribution/requirements/typedefs.cc: Ditto.
92         * testsuite/26_numerics/random/
93         piecewise_linear_distribution/requirements/typedefs.cc: Ditto.
94         * testsuite/26_numerics/random/
95         student_t_distribution/requirements/typedefs.cc: Ditto.
96         * testsuite/26_numerics/random/
97         geometric_distribution/requirements/typedefs.cc: Ditto.
98
99 2012-02-21  Benjamin Kosnik  <bkoz@redhat.com>
100
101         PR libstdc++/50349
102         * config/abi/pre/gnu.ver: Only one local.
103         * config/abi/pre/gnu-versioned-namespace.ver: Same.
104
105 2012-02-21  Paolo Carlini  <paolo.carlini@oracle.com>
106
107         PR libstdc++/52317 (cont)
108         * include/profile/unordered_map: Ad Library Exception comment.
109         * include/profile/set: Likewise.
110         * include/profile/base.h: Likewise.
111         * include/profile/impl/profiler_list_to_slist.h: Likewise.
112         * include/profile/impl/profiler_container_size.h: Likewise.
113         * include/profile/impl/profiler_vector_size.h: Likewise.
114         * include/profile/impl/profiler_hash_func.h: Likewise.
115         * include/profile/impl/profiler_trace.h: Likewise.
116         * include/profile/impl/profiler_list_to_vector.h: Likewise.
117         * include/profile/impl/profiler_vector_to_list.h: Likewise.
118         * include/profile/impl/profiler.h: Likewise.
119         * include/profile/impl/profiler_state.h: Likewise.
120         * include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
121         * include/profile/impl/profiler_algos.h: Likewise.
122         * include/profile/impl/profiler_hashtable_size.h: Likewise.
123         * include/profile/impl/profiler_node.h: Likewise.
124         * include/profile/vector: Likewise.
125         * include/profile/unordered_set: Likewise.
126         * include/profile/map.h: Likewise.
127         * include/profile/map: Likewise.
128
129 2012-02-21  Paolo Carlini  <paolo.carlini@oracle.com>
130
131         PR libstdc++/52317
132         * python/Makefile.am: Update boilerplate license text to GPLv3.
133         * include/profile/unordered_map: Likewise.
134         * include/profile/set: Likewise.
135         * include/profile/base.h: Likewise.
136         * include/profile/impl/profiler_list_to_slist.h: Likewise.
137         * include/profile/impl/profiler_container_size.h: Likewise.
138         * include/profile/impl/profiler_vector_size.h: Likewise.
139         * include/profile/impl/profiler_hash_func.h: Likewise.
140         * include/profile/impl/profiler_trace.h: Likewise.
141         * include/profile/impl/profiler_list_to_vector.h: Likewise.
142         * include/profile/impl/profiler_vector_to_list.h: Likewise.
143         * include/profile/impl/profiler.h: Likewise.
144         * include/profile/impl/profiler_state.h: Likewise.
145         * include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
146         * include/profile/impl/profiler_algos.h: Likewise.
147         * include/profile/impl/profiler_hashtable_size.h: Likewise.
148         * include/profile/impl/profiler_node.h: Likewise.
149         * include/profile/vector: Likewise.
150         * include/profile/unordered_set: Likewise.
151         * include/profile/map.h: Likewise.
152         * include/profile/map: Likewise.
153         * testsuite/21_strings/basic_string/numeric_conversions/
154         wchar_t/dr1261.cc: Likewise.
155         * testsuite/21_strings/basic_string/numeric_conversions/
156         char/dr1261.cc: Likewise.
157         * testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise.
158
159 2012-02-20  Paolo Carlini  <paolo.carlini@oracle.com>
160
161         PR libstdc++/52241
162         * src/c++98/tree.cc (local_Rb_tree_increment,
163         local_Rb_tree_decrement): Add.
164         (_Rb_tree_increment(const _Rb_tree_node_base*),
165         _Rb_tree_decrement(const _Rb_tree_node_base*)): Use the latter.
166         (_Rb_tree_increment(_Rb_tree_node_base*),
167         _Rb_tree_decrement(_Rb_tree_node_base*)): New.
168
169 2012-02-20  Paolo Carlini  <paolo.carlini@oracle.com>
170
171         PR libstdc++/52309
172         * include/bits/hashtable_policy.h (_Equality_base<, true,>::
173         _M_equal(const _Hashtable&)): Compare values with operator==.
174         * testsuite/23_containers/unordered_set/operators/52309.cc: New.
175
176 2012-02-17  Benjamin Kosnik  <bkoz@redhat.com>
177
178         PR libstdc++/51798 continued.
179         * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Grep for
180         __atomic_, not __sync.
181         * configure: Regenerated.
182
183 2012-02-17  Benjamin Kosnik  <bkoz@redhat.com>
184
185         PR libstdc++/47058
186         * acinclude.m4 (GLIBCXX_ENABLE_WERROR): New.
187         (GLIBCXX_EXPORT_FLAGS): Add -Wabi to WARN_FLAGS
188         * configure.ac: Use it.
189         * fragment.am: Set WERROR_FLAG conditionally on --disable-werror.
190         * configure: Regenerate.
191         * python/Makefile.in: Same.
192         * Makefile.in: Same.
193         * doc/Makefile.in: Same.
194         * include/Makefile.in: Same.
195         * po/Makefile.in: Same.
196         * python/Makefile.in: Same.
197         * src/Makefile.in: Same.
198         * src/c++11/Makefile.in: Same.
199         * src/c++98/Makefile.in: Same.
200         * testsuite/Makefile.in: Same.
201
202 2012-02-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
203
204         PR libstdc++/52189
205         * acinclude.m4 (GLIBCXX_CHECK_GTHREADS): Handle
206         --enable-libstdcxx-threads.
207         Disable on Solaris 8/9 with symbol versioning.
208         * configure.ac (GLIBCXX_CHECK_GTHREADS): Move after
209         GLIBCXX_ENABLE_SYMVERS.
210         * configure: Regenerate.
211         * doc/xml/manual/configure.xml (--enable-libstdcxx-threads): Explain.
212
213 2012-02-15  DJ Delorie  <dj@redhat.com>
214
215         * src/c++98/locale.cc (locale::facet::_S_get_c_locale): Fix typo.
216
217 2012-02-15  Benjamin Kosnik  <bkoz@redhat.com>
218
219         PR libstdc++/51368
220         * acinclude.m4 (GLIBCXX_ENABLE_PYTHON): New.
221         * configure.ac: Use it.
222         * python/Makefile.am: Same.
223         * configure: Regenerate.
224         * python/Makefile.in: Regenerate.
225         * Makefile.in: Same.
226         * doc/Makefile.in: Same.
227         * include/Makefile.in: Same.
228         * po/Makefile.in: Same.
229         * src/Makefile.in: Same.
230         * src/c++11/Makefile.in: Same.
231         * src/c++98/Makefile.in: Same.
232         * testsuite/Makefile.in: Same.
233
234 2012-02-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
235
236         * 30_threads/thread/native_handle/typesizes.cc: Do not run on cygwin.
237
238 2012-02-14  Tom Tromey  <tromey@redhat.com>
239
240         * testsuite/libstdc++-prettyprinters/cxx11.cc (main): Add new
241         tests.
242         * python/libstdcxx/v6/printers.py (Tr1HashtableIterator.__init__):
243         Rewrite.
244         (Tr1HashtableIterator.update): Remove.
245         (Tr1HashtableIterator.next): Rewrite.
246
247 2012-02-13  Benjamin Kosnik  <bkoz@redhat.com>
248
249         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
250         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
251
252 2012-02-13  Richard Henderson  <rth@redhat.com>
253
254         PR libstdc++/51798 continued.
255         * include/bits/shared_ptr_base.h
256         (_Sp_counted_base<_S_atomic>::_M_add_ref_lock): Hoist initial load
257         outside compare_exchange loop.
258         * include/tr1/shared_ptr.h: Same.
259         * include/parallel/compatibility.h (__compare_and_swap_32): Use strong
260         version of compare_exchange.
261         (__compare_and_swap_64): Same.
262         * include/profile/impl/profiler_state.h (__gnu_profile::__turn): Same.
263         * libsupc++/guard.cc (__cxa_guard_acquire): Same.
264
265 2012-02-10  Benjamin Kosnik  <bkoz@redhat.com>
266             Jonathan Wakely  <jwakely.gcc@gmail.com>
267
268         PR libstdc++/51798 continued.
269         * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Use __atomic_*
270         builtins instead of __sync_* builtins for atomic functionality.
271         * include/bits/shared_ptr_base.h: Same.
272         * include/parallel/compatibility.h: Same.
273         * include/profile/impl/profiler_state.h: Same.
274         * include/tr1/shared_ptr.h: Same.
275         * libsupc++/eh_ptr.cc: Same.
276         * libsupc++/eh_throw.cc: Same.
277         * libsupc++/eh_tm.cc: Same.
278         * libsupc++/guard.cc: Same.
279         * configure: Regenerated.
280         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
281         * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
282
283 2012-02-10  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
284
285         PR libstdc++/51296
286         * config/os/osf/ctype_base.h,
287         config/os/osf/ctype_configure_char.cc,
288         config/os/osf/ctype_inline.h, config/os/osf/error_constants.h:
289         Copy from config/os/generic.
290         * config/os/osf/os_defines.h: Likewise.
291         (_GTHREAD_USE_MUTEX_INIT_FUNC, _GTHREAD_USE_COND_INIT_FUNC):
292         Define.
293         * configure.host <osf*>: Use os/osf for os_include_dir.
294
295 2012-02-10  Uros Bizjak  <ubizjak@gmail.com>
296
297         * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Regenerated.
298
299 2012-02-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
300
301         * doc/xml/manual/documentation_hacking.xml: Fix invalid attribute.
302
303 2012-02-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
304
305         * doc/xml/manual/status_cxx2011.xml: Update C++11 status table.
306
307 2012-02-07  Benjamin Kosnik  <bkoz@redhat.com>
308
309         * doc/doxygen/user.cfg.in: Update to doxygen 1.7.6.1.
310         * doc/xml/manual/documentation_hacking.xml: Update.
311
312 2012-02-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
313
314         * testsuite/30_threads/call_once/39909.cc: Remove duplicate target
315         selector.
316         * testsuite/30_threads/call_once/49668.cc: Likewise.
317         * testsuite/30_threads/call_once/call_once1.cc: Likewise.
318         * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
319         * testsuite/30_threads/mutex/cons/1.cc: Likewise.
320         * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
321         * testsuite/30_threads/mutex/lock/1.cc: Likewise.
322         * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
323         * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
324         * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
325         * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
326         * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
327         * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
328         * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
329         * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
330         * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
331         * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
332         * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
333         * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
334         * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
335         * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
336         * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
337         * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
338         * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
339
340 2012-02-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
341
342         PR libstdc++/51296
343         * include/std/mutex (__mutex_base::~__mutex_base): Declare noexcept.
344         * src/c++11/condition_variable.cc (condition_variable): Use macro for
345         initializer function.
346
347         PR libstdc++/51906
348         * config/os/bsd/darwin/os_defines.h: Disable static initializer for
349         recursive mutexes.
350
351 2012-02-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
352
353         PR libstdc++/52128
354         * src/c++11/future.cc: Add explicit instantiation.
355
356 2012-02-06  François Dumont  <fdumont@gcc.gnu.org>
357
358         * include/debug/safe_iterator.h
359         (_Safe_iterator::_M_before_dereferenceable): Avoid the expensive
360         creation of a _Safe_iterator instance to do the check.
361
362 2012-02-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
363
364         PR libstdc++/52104
365         * include/std/future (__future_base::_Async_state_common): Define
366         destructor inline for targets without TLS.
367         * src/c++11/future.cc (__future_base::_Async_state_common): Only
368         define destructor for TLS targets.
369
370 2012-02-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
371
372         PR libstdc++/51956
373         * python/libstdcxx/v6/printers.py (StdPointerPrinter): Rename to...
374         (SharedPointerPrinter): This. Also show weak count.
375         * testsuite/libstdc++-prettyprinters/shared_ptr.cc: New.
376
377 2012-02-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
378
379         * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Modify to
380         PASS instead of XFAIL.
381
382 2012-02-05  Jeffrey Yasskin  <jyasskin@gcc.gnu.org>
383             Paolo Carlini  <paolo.carlini@oracle.com>
384
385         PR libstdc++/52119
386         * include/std/limits (__glibcxx_min): Fix to avoid undefined behavior.
387
388 2012-02-03  Benjamin Kosnik  <bkoz@redhat.com>
389
390         PR libstdc++/49445
391         * testsuite/29_atomics/atomic/cons/49445.cc: Add.
392
393 2012-02-03  Benjamin Kosnik  <bkoz@redhat.com>
394
395         PR libstdc++/51811
396         * include/bits/atomic_base.h (atomic<_Tp*>): Fix offsets.
397         * testsuite/29_atomics/atomic/operators/51811.cc: New.
398         * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc: New.
399
400 2012-02-03  Jakub Jelinek  <jakub@redhat.com>
401
402         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
403         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
404         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
405         Likewise.
406         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
407         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
408         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
409         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
410         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
411         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
412
413 2012-02-02  Benjamin Kosnik  <bkoz@redhat.com>
414
415         PR libstdc++/52068
416         * src/c++11/Makefile.am (toolexeclib_LTLIBRARIES,
417         libc__11_la_SOURCES): Remove.
418         * src/c++11/Makefile.in: Regenerate.
419         * src/c++98/Makefile.am (toolexeclib_LTLIBRARIES,
420         libc__98_la_SOURCES): Remove.
421         * src/c++98/Makefile.in: Regenerate.
422
423 2012-02-01  Jonathan Wakely  <jwakely.gcc@gmail.com>
424
425         PR libstdc++/49204
426         * include/std/future (__future_base::_State_base::wait()): Use lambda
427         expression for predicate and remove redundant test.
428         (__future_base::_State_base::wait_for()): Return future_status and
429         use lambda expression for predicate.
430         (__future_base::_State_base::wait_until()): Likewise.
431         (__basic_future::wait_for(), __basic_future::wait_until()): Likewise.
432         (__future_base::_Async_state): Replace with _Async_state_common
433         class for non-dependent functionality and _Async_state_impl class
434         template for dependent functionality.
435         (__future_base::_Async_state_common::_M_join): Serialize attempts to
436         join thread.
437         (__future_base::_Async_state_common::_M_run_deferred): Join.
438         (__future_base::_Async_state::_M_do_run): Replace with lambda.
439         * src/c++11/future.cc (__future_base::_Async_state_common): Define
440         destructor, so key function is in the library.
441         * config/abi/pre/gnu.ver: Add exports for ~_Async_state_common.
442         * testsuite/30_threads/packaged_task/members/get_future.cc: Expect
443         future_status return instead of bool.
444         * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
445         * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
446         * testsuite/30_threads/future/members/wait_until.cc: Likewise.
447         * testsuite/30_threads/future/members/wait_for.cc: Likewise.
448         * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
449         * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
450         * testsuite/30_threads/promise/members/swap.cc: Likewise.
451
452 2012-01-30  Tom Tromey  <tromey@redhat.com>
453
454         PR libstdc++/51649:
455         * testsuite/libstdc++-prettyprinters/debug.cc: New file.
456         * testsuite/lib/gdb-test.exp (regexp-test): New proc.
457         (note-test): Update.
458         (gdb-test): Handle regexp tests.  Add some logging.
459         * testsuite/libstdc++-prettyprinters/simple.cc: Compile with -O0.
460         (placeholder, use): Remove.
461         (main): Add tests for deque, list, map, and set iterators.  Add
462         tests for slist and slist iterator.
463         * testsuite/libstdc++-prettyprinters/48362.cc (main): Handle __7
464         namespace.
465         * python/libstdcxx/v6/printers.py (StdListPrinter.children): Use
466         the type's _Node typedef.
467         (StdListIteratorPrinter.to_string): Change how node type is
468         computed.
469         (StdSlistPrinter.children): Use the type's _Node typedef.
470         (StdSlistIteratorPrinter.to_string): Likewise.
471         (StdRbtreeIteratorPrinter.to_string): Use the type's _Link_type
472         typedef.
473         (StdMapPrinter.children): Change how the node's type is computed.
474         (StdSetPrinter.children): Likewise.
475         (StdForwardListPrinter.children): Use the type's _Node typedef.
476         (Printer.add_version): New method.
477         (Printer.add_container): New method.
478         (build_libstdcxx_dictionary): Handle __7 and __cxx1998
479         namespaces.
480         (find_type): New function.
481
482 2012-01-27  Paolo Carlini  <paolo.carlini@oracle.com>
483
484         PR libstdc++/51795
485         * include/bits/random.h (linear_congruential_generator): Add
486         static_assert preventing instantiation for values of 'a' and 'm'
487         currently handled incorrectly by _Mod::__calc.
488         * include/bits/random.tcc (seed_seq::generate): Avoid unsafe
489         uses of _Mod::__calc.
490
491 2012-01-27  Jakub Jelinek  <jakub@redhat.com>
492
493         PR libstdc++/51798
494         * config/cpu/generic/atomicity_builtins/atomicity.h
495         (__exchange_and_add, __atomic_add): Use __atomic_fetch_add
496         with __ATOMIC_ACQ_REL semantics instead of __sync_fetch_and_add.
497         * include/ext/atomicity.h (__exchange_and_add, __atomic_add):
498         Likewise.
499
500 2011-01-27  Rafael Avila de Espindola  <rafael.espindola@gmail.com>
501
502         * libsupc++/typeinfo: Correctly match #pragma GCC visibility
503         pop with #pragma GCC visibility push.
504
505 2012-01-27  Benjamin Kosnik  <bkoz@redhat.com>
506             Matthias Klose  <doko@ubuntu.com>
507
508         * configure.ac (GLIBCXX_ENABLE_DEBUG_FLAGS): Use -gdwarf-4 -g3 -O0.
509         * configure.in: Regenerated.
510         * src/Makefile.am (all-once, install-data-once): New rules.
511         (all-local, install-data-local): Use them.
512         (build-debug, install-debug): Tweak.
513         * src/Makefile.in: Regenerate.
514
515 2012-01-27  Richard Henderson  <rth@redhat.com>
516
517         * include/bits/atomic_base.h (__atomic_flag_base): Define _M_i
518         based on the value of __GCC_ATOMIC_TEST_AND_SET_TRUEVAL.
519         (ATOMIC_FLAG_INIT): Initialize with 0, not false.
520         (atomic_flag::atomic_flag): Use __GCC_ATOMIC_TEST_AND_SET_TRUEVAL.
521
522 2012-01-26  Jakub Jelinek  <jakub@redhat.com>
523
524         PR bootstrap/51985
525         * src/c++98/Makefile.am (libc__98_la_SOURCES,
526         libc__98convenience_la_SOURCES): Remove $(inst_sources).
527         * src/c++98/Makefile.in: Regenerated.
528
529 2012-01-25  Richard Sandiford  <rdsandiford@googlemail.com>
530
531         * testsuite/20_util/system_clock/1.cc: Add dg-require-time.
532         * testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: Likewise.
533         * testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: Likewise.
534         * testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: Likewise.
535         * testsuite/27_io/basic_istream/readsome/wchar_t/6746-2.cc: Add
536         dg-require-fileio.
537         * testsuite/27_io/basic_istream/seekg/wchar_t/fstream.cc: Likewise.
538         * testsuite/27_io/basic_istream/tellg/wchar_t/1.cc: Likewise.
539         * testsuite/27_io/basic_istream/tellg/wchar_t/fstream.cc: Likewise.
540         * testsuite/27_io/basic_ostream/seekp/wchar_t/2346-fstream.cc:
541         Likewise.
542         * testsuite/27_io/basic_ostream/tellp/wchar_t/1.cc: Likewise.
543
544 2012-01-25  Matthias Klose  <doko@ubuntu.com>
545
546         * testsuite/30_threads/condition_variable_any/requirements: Remove
547         empty directory.
548
549 2012-01-23  Benjamin Kosnik  <bkoz@redhat.com>
550
551         * src/Makefile.am (libstdc++convenience.la): Correct stamp rule, copy.
552         * src/Makefile.in: Regenerate.
553
554 2012-01-23  Benjamin Kosnik  <bkoz@redhat.com>
555
556         PR libstdc++/49829
557         Add libc++98convenience.la, libc++11convenience.la.
558         * src/c++98: New directory.
559         * src/c++11: New directory.
560         * acinclude.m4: (GLIBCXX_CONFIGURE): Add src-c++98, src-c++11.
561         * configure: Regenerated.
562         * Makefile.am (hosted_source): Add src-c++98, src-c++11 to SUBDIRS.
563         * Makefile.in: Regenerate.
564         * libsupc++/Makefile.am (AM_CXXFLAGS): USe XTEMPLATE_FLAGS for
565         -fno-implicit-templates.
566         * libsupc++/Makefile.in: Regenerate.
567         * src/Makefile.am (inst_sources): Move... C++11 files into
568         separate directory for libstdc++11convenience.la. Files are:
569         fstream-inst.cc, string-inst.cc, wlocale-inst.cc, wstring-inst.cc).
570         (sources): Move C++11 files. Files are: compatibility-c++0x.cc,
571         compatibility-atomic-c++0x.cc, debug.cc, functexcept.cc,
572         functional.cc, hash_c++0x.cc, hashtable_c++0x.cc, limits.cc,
573         system_error.cc, placeholders.cc, regex.cc, shared_ptr.cc,
574         mutex.cc, condition_variable.cc, chrono.cc, thread.cc, future.cc.
575         (libstdc++convenience.la): Add new target.
576         (SUBDIRS): Add c++11, c++98.
577         * src/Makefile.in: Regenerate.
578         * src/c++11/Makefile.am: New.
579         * src/c++11/Makefile.in: Generate.
580         * src/c++98/Makefile.am: New, C++98 files.
581         * src/c++98/Makefile.in: Generate.
582
583 2012-01-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
584
585         libstdc++-v3:
586         * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail on
587         32-bit Solaris 10/x86.
588         * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
589
590 2012-01-21  Jonathan Wakely  <jwakely.gcc@gmail.com>
591
592         PR libstdc++/50982
593         * testsuite/30_threads/*: Add powerpc-ibm-aix* to target selectors.
594
595 2012-01-19  Jakub Jelinek  <jakub@redhat.com>
596
597         PR libstdc++/51845
598         * include/bits/hashtable.h
599         (_Hashtable<>::erase(const_iterator, const_iterator)): Also update
600         _M_buckets[__n_bkt] if __is_bucket_begin.
601         * testsuite/23_containers/unordered_multimap/erase/51845-multimap.cc:
602         New test.
603
604 2012-01-18  Benjamin Kosnik  <bkoz@redhat.com>
605
606         * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): Fix quoting.
607
608 2012-01-18  Benjamin Kosnik  <bkoz@redhat.com>
609
610         * configure.ac: Move epub checks...
611         * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): ...here, use
612         test -f instead of AC_CHECK_FILES.
613
614 2012-01-18  François Dumont  <fdumont@gcc.gnu.org>
615             Roman Kononov  <roman@binarylife.net>
616
617         PR libstdc++/51866
618         * include/bits/hashtable.h (_Hashtable<>::_M_insert(_Arg, false_type)):
619         Do not keep a reference to a potentially moved instance.
620         * testsuite/23_containers/unordered_multiset/insert/51866.cc: New.
621         * testsuite/23_containers/unordered_multimap/insert/51866.cc: New.
622
623 2012-01-17  Benjamin Kosnik  <bkoz@redhat.com>
624
625         * doc/html/*: Regenerate.
626
627 2012-01-17  Benjamin Kosnik  <bkoz@redhat.com>
628
629         * configure.ac (BUILD_EPUB): Adjust for epub3.
630         * configure: Regenerate.
631         * Makefile.in: Same.
632         * doc/Makefile.am (stamp-epub-docbook): Update for epub3.
633         * doc/Makefile.in: Regenerate.
634         * include/Makefile.in: Same.
635         * libsupc++/Makefile.in: Same.
636         * po/Makefile.in: Same.
637         * python/Makefile.in: Same.
638         * src/Makefile.in: Same.
639         * testsuite/Makefile.in: Same.
640
641         * doc/xml/manual/documentation_hacking.xml: Update.
642
643 2012-01-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
644
645         PR target/47852
646         * configure.host (irix6.5*): Add -lpthread to OPT_LDFLAGS.
647
648 2012-01-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
649
650         * include/bits/stl_iterator.h (reverse_iterator): Doxygen comments.
651
652 2012-01-13  François Dumont  <fdumont@gcc.gnu.org>
653
654         * include/bits/hashtable_policy.h (_Hash_node_base): New, use it as
655         base class of ...
656         (_Hash_node<Value, true>, _Hash_node<Value, false>): ... those.
657         * include/bits/hashtable.h (_Hashtable): Replace _M_begin_bucket_index
658         by _M_before_begin. Review implementation so that we do not need to
659         look for previous non-empty bucket when inserting nodes.
660
661 2012-01-09  Kai Tietz  <ktietz@redhat.com>
662
663         PR libstc++/51673 part 2
664         * config/abi/pre/gnu-versioned-namespace.ver: Adjusted new/delete
665         operators signature for LLP64 size_t, and adjusted signatures for
666         mt-allocator using size_t.
667
668 2012-01-09  Benjamin Kosnik  <bkoz@redhat.com>
669
670         PR libstc++/51673 part 1
671         * config/abi/pre/gnu-versioned-namespace.ver: Sync cxxabi symbols
672         with gnu.ver.
673
674 2012-01-09  Benjamin Kosnik  <bkoz@redhat.com>
675
676         * fragment.am (WARN_CXXFLAGS): Add -Wabi.
677         * Makefile.in: Regenerate.
678         * doc/Makefile.in: Same.
679         * include/Makefile.in: Same.
680         * libsupc++/Makefile.in: Same.
681         * src/Makefile.in: Same.
682         * testsuite/Makefile.in: Same.
683         * po/Makefile.in: Same.
684         * python/Makefile.in: Same.
685
686 2012-01-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
687
688         * python/libstdcxx/v6/printers.py (StdForwardListPrinter): Add.
689         * testsuite/libstdc++-prettyprinters/cxx11.cc: New.
690
691 2012-01-06  Jason Merrill  <jason@redhat.com>
692
693         * testsuite/abi/demangle/regression/cw-16.cc (main): Adjust
694         expected demangling.
695
696 2012-01-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
697
698         PR libstdc++/51504
699         * doc/xml/manual/debug.xml: Suggest using symbol interposition
700         to override symbols using annotation macros.
701
702 2012-01-05  François Dumont  <fdumont@gcc.gnu.org>
703
704         * include/bits/hashtable_policy.h (_Hashtable_base<>::_M_eq()):
705         protected rather than private, use it...
706         * include/bits/hashtable.h (_Hashtable<>::key_eq()): ... here.
707         * testsuite/23_containers/unordered_set/observers.cc: New.
708         * testsuite/23_containers/unordered_multiset/observers.cc: New.
709         * testsuite/23_containers/unordered_map/observers.cc: New.
710         * testsuite/23_containers/unordered_multimap/observers.cc: New.
711
712 2012-01-03  François Dumont  <fdumont@gcc.gnu.org>
713
714         * include/bits/hashtable_policy.h (_Ebo_helper<>): Rename to the more
715         specific _Hashtable_ebo_helper. Hide this implementation detail thanks
716         to private inheritance.
717
718 2012-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
719
720         PR c++/51738
721         * testsuite/23_containers/map/element_access/39901.cc: New.