OSDN Git Service

2010-02-03 Jonathan Wakely <jwakely.gcc@gmail.com>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
1 2010-02-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
2
3         * include/std/condition_variable (condition_variable_any): Provide
4         definitions for all members.
5         * src/condition_variable.cc (condition_variable_any): Adjust
6         definitions.
7         * config/abi/pre/gnu.ver: Adjust exports for condition_variable_any.
8         * testsuite/30_threads/condition_variable_any/cons/assign_neg.cc:
9         Adjust dg-error line number.
10         * testsuite/30_threads/condition_variable_any/cons/copy_neg.cc:
11         Likewise.
12         * testsuite/30_threads/condition_variable_any/members/1.cc: New.
13         * testsuite/30_threads/condition_variable_any/members/2.cc: New.
14         * testsuite/30_threads/condition_variable_any/requirements/
15         standard_layout.cc: Remove.
16         * testsuite/30_threads/condition_variable_any/native_handle/
17         typesizes.cc: Remove.
18
19 2010-02-02  Paolo Carlini  <paolo.carlini@oracle.com>
20
21         * include/ext/vstring.h (__versa_string::shrink_to_fit): Fix
22         for -fno-exceptions.
23
24 2010-02-02  Benjamin Kosnik  <bkoz@redhat.com>
25
26         * include/bits/allocator.h: Fix for -fno-exceptions.
27         * include/bits/basic_string.h (basic_string::shrink_to_fit): Same.
28
29 2010-02-02  Paolo Carlini  <paolo.carlini@oracle.com>
30
31         * testsuite/30_threads/unique_future: Rename to /future.
32
33 2010-02-01  Paolo Carlini  <paolo.carlini@oracle.com>
34
35         PR libstdc++/42408
36         * include/bits/random.h (linear_congruential_engine<>::
37         linear_congruential_engine(seed_seq&),
38         linear_congruential_engine<>::seed(seed_seq&),
39         mersenne_twister<>::mersenne_twister(seed_seq&),
40         mersenne_twister<>::seed(seed_seq&),
41         subtract_with_carry_engine<>::subtract_with_carry_engine(seed_seq&),
42         subtract_with_carry_engine<>::seed(seed_seq&),
43         discard_block_engine<>::discard_block_engine(seed_seq&),
44         discard_block_engine<>::seed(seed_seq&),
45         independent_bits_engine<>::independent_bits_engine(seed_seq&),
46         independent_bits_engine<>::seed(seed_seq&),
47         shuffle_order_engine<>::shuffle_order_engine(seed_seq&),
48         shuffle_order_engine<>::seed(seed_seq&)): Templatize.
49         * include/bits/random.tcc: Adjust.
50         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
51         seed_seq.cc: New.
52         * testsuite/26_numerics/random/mersenne_twister_engine/cons/
53         seed_seq.cc: Likewise.
54         * testsuite/26_numerics/random/linear_congruential_engine/
55         cons/seed_seq.cc: Likewise.
56
57 2010-02-01  Paolo Carlini  <paolo.carlini@oracle.com>
58
59         * include/bits/forward_list.h (forward_list<>::resize(size_type),
60         forward_list(size_type)): Only declare.
61         * include/bits/forward_list.tcc (forward_list<>::resize(size_type),
62         forward_list(size_type)): Define, don't assume CopyConstructible.
63         * testsuite/23_containers/forward_list/cons/10.cc: New.
64         * testsuite/23_containers/forward_list/modifiers/6.cc: Likewis.
65         * testsuite/23_containers/forward_list/requirements/dr438/
66         assign_neg.cc: Adjust dg-error line numbers.
67         * testsuite/23_containers/forward_list/requirements/dr438/
68         insert_neg.cc: Likewise.
69         * testsuite/23_containers/forward_list/requirements/dr438/
70         constructor_1_neg.cc: Likewise.
71         * testsuite/23_containers/forward_list/requirements/dr438/
72         constructor_2_neg.cc: Likewise.
73
74         * include/bits/forward_list.h: Use _M_get_Node_allocator throughout.
75
76 2010-01-31  Paolo Carlini  <paolo.carlini@oracle.com>
77
78         * testsuite/23_containers/array/requirements/exception/
79         generation_prohibited.c: Remove, swap can indeed throw (DR 774).
80
81         * testsuite/util/exception/safety.h (insert_base<__versa_string>): Fix.
82         * testsuite/util/testsuite_container_traits.h
83         (traits<__versa_string>): Enable insert tests.
84
85 2010-01-31  Paolo Carlini  <paolo.carlini@oracle.com>
86
87         * include/bits/forward_list.h (forward_list<>::insert_after
88         (const_iterator, size_type, const _Tp&), insert_after(const_iterator,
89         _InputIterator, _InputIterator), insert_after(const_iterator,
90         std::initializer_list<>)): Fix return type per N3000.
91         * testsuite/23_containers/forward_list/ext_pointer/modifiers/2.cc:
92         Adjust.
93         * testsuite/23_containers/forward_list/modifiers/2.cc: Likewise.
94         * testsuite/23_containers/forward_list/requirements/dr438/
95         assign_neg.cc: Adjust dg-error line numbers.
96         * testsuite/23_containers/forward_list/requirements/dr438/
97         insert_neg.cc: Likewise.
98         * testsuite/23_containers/forward_list/requirements/dr438/
99         constructor_1_neg.cc: Likewise.
100         * testsuite/23_containers/forward_list/requirements/dr438/
101         constructor_2_neg.cc: Likewise.
102
103 2010-01-31  Paolo Carlini  <paolo.carlini@oracle.com>
104
105         Revert last changes. Also revert, among the previous changes:
106         * include/std/condition_variable (condition_variable_any::
107         wait<>(_Lock&)): Provide definition.
108
109 2010-01-29  Paolo Carlini  <paolo.carlini@oracle.com>
110
111         * include/std/condition_variable (condition_variable_any::
112         __wait_until_impl): Add.
113         (condition_variable_any::wait_until): Provide definitions.
114         * testsuite/30_threads/condition_variable_any/members/2.cc: New.
115         * testsuite/30_threads/condition_variable_any/cons/assign_neg.cc:
116         Adjust dg-error line number.
117         * testsuite/30_threads/condition_variable_any/cons/copy_neg.cc:
118         Likewise.
119
120         * testsuite/30_threads/condition_variable/members/1.cc: Minor
121         stylistic changes.
122         * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
123
124 2010-01-29  Paolo Carlini  <paolo.carlini@oracle.com>
125
126         * include/std/condition_variable (enum class cv_status): Add and
127         use it throughout, per N3000.
128         (condition_variable_any::wait<>(_Lock&), wait<>(_Lock&, _Predicate),
129         wait_until<>(_Lock&, const chrono::time_point<>&, _Predicate)):
130         Provide definitions.
131         * src/condition_variable.cc (condition_variable_any::notify_one,
132         condition_variable_any::notify_all): Likewise.
133         * config/abi/pre/gnu.ver: Export.
134         * testsuite/30_threads/condition_variable_any/requirements/
135         typedefs.cc: New.
136         * testsuite/30_threads/condition_variable_any/requirements/
137         standard_layout.cc: Likewise.
138         * testsuite/30_threads/condition_variable/members/1.cc: Adjust.
139         * testsuite/30_threads/condition_variable/members/2.cc: Likewise.
140         * testsuite/30_threads/condition_variable/cons/assign_neg.cc: Adjust
141         dg-error line numbers.
142         * testsuite/30_threads/condition_variable/cons/copy_neg.cc: Likewise.
143         * testsuite/30_threads/condition_variable_any/cons/assign_neg.cc:
144         Likewise.
145         * testsuite/30_threads/condition_variable_any/cons/copy_neg.cc:
146         Likewise.
147
148 2010-01-28  François Dumont  <francois.cppdevs@free.fr>
149
150         * include/bits/stl_algobase.h (struct __iter_base): Add.
151         (__niter_base, __miter_base): Adjust, use the latter.
152
153 2010-01-28  Paolo Carlini  <paolo.carlini@oracle.com>
154
155         * testsuite/21_strings/basic_string/element_access/char/21674.cc:
156         Extend xfail to all systems.
157         * testsuite/21_strings/basic_string/element_access/wchar_T/21674.cc:
158         Likewise.
159         * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
160         Extend xfail to darwin10 systems.
161
162 2010-01-27  Benjamin Kosnik  <bkoz@redhat.com>
163
164         PR c++/42346
165         * testsuite/23_containers/unordered_map/requirements/exception/: Remove
166         -O1 workaround.
167         * testsuite/23_containers/multimap/requirements/exception/: Same.
168         * testsuite/23_containers/map/requirements/exception: Same.
169
170 2010-01-27  Richard Guenther  <rguenther@suse.de>
171
172         PR libstdc++/42832
173         * include/std/functional (function<>::swap): Perform bytewise
174         swap of _M_functor.
175         * include/tr1/functional (function<>::swap): Likewise.
176
177 2010-01-27  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
178
179         * config/abi/pre/gnu.ver: Avoid time_get pattern conflicts.
180
181 2010-01-26  François Dumont  <francois.cppdevs@free.fr>
182
183         * doc/xml/manual/allocator.xml: Minor updates and fixes.
184         * doc/xml/manual/containers.xml: Likewise.
185         * doc/xml/manual/using.xml: Likewise.
186         * doc/xml/manual/locale.xml: Likewise.
187         * doc/xml/manual/appendix_contributing.xml: Likewise.
188
189 2010-01-26  Daniel Frey  <d.frey@gmx.de>
190
191         * include/std/functional: Use enable_if instead of __enable_if
192         throughout, do not include ext/type_traits.h.
193         (is_placeholder, is_bind_expression): Use integral_constant.
194
195 2010-01-25  Paolo Carlini  <paolo.carlini@oracle.com>
196
197         * testsuite/util/testsuite_common_types.h (has_bitwise_operators):
198         Avoid -Wall warnings.
199
200 2010-01-25  Paolo Carlini  <paolo.carlini@oracle.com>
201
202         * testsuite/22_locale/time_get/get_monthname/char/6.cc: Use an int
203         as loop variable, to avoid -Wall warnings.
204         * testsuite/22_locale/time_get/get_monthname/wchar_t/6.cc: Likewise.
205         * testsuite/22_locale/time_get/get_weekday/char/6.cc: Likewise.
206         * testsuite/22_locale/time_get/get_weekday/wchar_t/6.cc: Likewise.
207         * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.
208
209         * testsuite/20_util/reference_wrapper/24803.cc: Remove unused vars.
210         * testsuite/20_util/reference_wrapper/invoke.cc: Likewise.
211
212 2010-01-22  Daniel Frey  <d.frey@gmx.de>
213
214         * include/std/functional (_Index_tuple, _Build_index_tuple):
215         Simplify and speed-up.
216
217 2010-01-22  Joern Rennecke  <amylaar@spamcop.net>
218
219         PR libstdc++/36101, PR libstdc++/42813
220         * acinclude.m4 (enable_parallel): Test ${TARGET_CONFIGDIRS} instead of
221         looking for omp.h.
222         * configure: Regenerate.
223
224 2010-01-21  Jonathan Wakely  <jwakely.gcc@gmail.com>
225
226         PR libstdc++/42201
227         * include/std/future: Update to latest WP.
228         * src/functexcept.cc (__throw_future_error): Use make_error_code.
229         * testsuite/30_threads/async/any.cc: New.
230         * testsuite/30_threads/async/async.cc: New.
231         * testsuite/30_threads/async/sync.cc: New.
232         * testsuite/30_threads/packaged_task/cons/alloc.cc: New.
233         * testsuite/30_threads/packaged_task/cons/assign_neg.cc: Adjust.
234         * testsuite/30_threads/packaged_task/cons/copy_neg.cc: Adjust.
235         * testsuite/30_threads/packaged_task/members/get_future.cc: Adjust.
236         * testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise.
237         * testsuite/30_threads/packaged_task/members/invoke.cc: Adjust.
238         * testsuite/30_threads/packaged_task/members/invoke2.cc: Adjust.
239         * testsuite/30_threads/packaged_task/members/invoke3.cc: Adjust.
240         * testsuite/30_threads/packaged_task/members/invoke4.cc: Adjust.
241         * testsuite/30_threads/packaged_task/members/reset.cc: Adjust.
242         * testsuite/30_threads/packaged_task/members/reset2.cc: Adjust.
243         * testsuite/30_threads/shared_future/cons/assign_neg.cc: Remove.
244         * testsuite/30_threads/shared_future/cons/default_neg.cc: Remove.
245         * testsuite/30_threads/shared_future/cons/default.cc: New.
246         * testsuite/30_threads/shared_future/cons/assign.cc: New.
247         * testsuite/30_threads/shared_future/cons/copy.cc: Adjust.
248         * testsuite/30_threads/shared_future/cons/move.cc: Adjust.
249         * testsuite/30_threads/shared_future/cons/move_assign.cc: New.
250         * testsuite/30_threads/shared_future/members/is_ready.cc: Remove.
251         * testsuite/30_threads/shared_future/members/has_value.cc: Remove.
252         * testsuite/30_threads/shared_future/members/has_exception.cc: Remove.
253         * testsuite/30_threads/shared_future/members/valid.cc: New.
254         * testsuite/30_threads/unique_future/cons/default_neg.cc: Remove.
255         * testsuite/30_threads/unique_future/cons/default.cc: New.
256         * testsuite/30_threads/unique_future/cons/move_assign.cc: New.
257         * testsuite/30_threads/unique_future/cons/assign_neg.cc: Adjust.
258         * testsuite/30_threads/unique_future/cons/copy_neg.cc: Adjust.
259         * testsuite/30_threads/unique_future/cons/move.cc: Adjust.
260         * testsuite/30_threads/unique_future/requirements/
261         explicit_instantiation.cc: Adjust.
262         * testsuite/30_threads/unique_future/members/is_ready.cc: Remove.
263         * testsuite/30_threads/unique_future/members/has_value.cc: Remove.
264         * testsuite/30_threads/unique_future/members/has_exception.cc: Remove.
265         * testsuite/30_threads/unique_future/members/valid.cc: New.
266         * testsuite/30_threads/unique_future/members/get.cc: Adjust.
267         * testsuite/30_threads/unique_future/members/get2.cc: Adjust.
268         * testsuite/30_threads/unique_future/members/wait.cc: Adjust.
269         * testsuite/30_threads/unique_future/members/wait_for.cc: Adjust.
270         * testsuite/30_threads/unique_future/members/wait_until.cc: Adjust.
271         * testsuite/30_threads/headers/future/types_std_c++0x.cc: Adjust.
272         * testsuite/30_threads/promise/cons/alloc.cc: New.
273         * testsuite/30_threads/promise/cons/assign_neg.cc: Adjust.
274         * testsuite/30_threads/promise/cons/copy_neg.cc: Adjust.
275         * testsuite/30_threads/promise/cons/move.cc: Adjust.
276         * testsuite/30_threads/promise/cons/move_assign.cc: Adjust.
277         * testsuite/30_threads/promise/members/get_future.cc: Adjust.
278         * testsuite/30_threads/promise/members/set_value.cc: Adjust.
279         * testsuite/30_threads/promise/members/set_exception.cc: Adjust.
280         * testsuite/30_threads/promise/members/set_exception2.cc: Adjust.
281         * testsuite/30_threads/promise/members/set_value2.cc: Adjust.
282         * testsuite/30_threads/promise/members/set_value3.cc: Adjust.
283         * testsuite/30_threads/promise/members/swap.cc: Adjust.
284
285 2010-01-20  Janis Johnson  <janis187@us.ibm.com>
286             Paolo Carlini  <paolo.carlini@oracle.com>
287
288         PR libstdc++/21769
289         * testsuite/lib/dg-options.exp (add_options_for_no_pch): Add.
290         * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
291         Use it.
292
293 2010-01-19  Johannes Singler  <singler@kit.edu>
294
295         PR libstdc++/42712
296         * include/parallel/settings.h (_Settings): Add search_minimal_n.
297         * include/parallel/algo.h (__search_switch):
298         Add serial fallback for too small inputs.
299         (__search_n_switch): Likewise.  Call serial fallback on higher level
300         to gain special treatment for __count 0 or 1.
301         * testsuite/25_algorithms/search_n/iterator.cc:
302         Reenable full test depth for parallel mode.
303
304 2010-01-18  Daniel Frey  <d.frey@gmx.de>
305
306         * include/std/functional (_Bind<_Functor(_Bound_args...)>::
307         operator()): "Pass" _Result to __call*.
308         (_Bind<_Functor(_Bound_args...)>::__call*): Adjust, simplify.
309
310 2010-01-18  Johannes Singler  <singler@kit.edu>
311
312         * include/parallel/base.h (__unary_negate): Correct comment.
313
314 2010-01-16  Paolo Carlini  <paolo.carlini@oracle.com>
315
316         * include/std/functional (_Bind<_Functor(_Bound_args...)>::__call):
317         Rename const version to __call_c and remove _Sfinae template
318         parameter.
319         (_Bind<_Functor(_Bound_args...)>::operator()): Adjust.
320
321         * include/std/functional: Pass everywhere temporary tuple<_Args...>
322         arguments by rvalue reference.
323
324         * testsuite/20_util/bind/cv_quals.cc: New.
325
326         * testsuite/20_util/bind/ref2.cc: Add missing test variables.
327
328 2010-01-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
329
330         PR libstdc++/35942
331         * configure.ac: Remove -lstdc++ from libtool's postdeps_CXX.
332         * configure: Regenerate.
333
334 2010-01-15  Phil Muldoon  <pmuldoon@redhat.com>
335
336         * python/libstdcxx/v6/printers.py (StdStringPrinter.__init__):
337         Remove encoding argument.
338         (StdStringPrinter.to_string): Do not compute or pass encoding.
339         Use lazy_string over string function.
340
341 2010-01-14  Paolo Carlini  <paolo.carlini@oracle.com>
342
343         * include/c_std/cstring (memchr): Forward to the builtin.
344         * include/c_std/cstring: Remove redundant casts; use names consistent
345         with the letter of the Standard.
346         * include/c_global/cstring: Likewise.
347
348 2010-01-13  Benjamin Kosnik  <bkoz@redhat.com>
349
350         * include/profile/iterator_tracker.h: Add copyright.
351
352 2010-01-13  Paolo Carlini  <paolo.carlini@oracle.com>
353
354         * testsuite/Makefile.am (check-debug): Add.
355         * testsuite/Makefile.in: Regenerate.
356         * config.h.in: Likewise.
357
358 2010-01-12  Paolo Carlini  <paolo.carlini@oracle.com>
359
360         * testsuite/17_intro/using_namespace_std_tr1_neg.cc: Do not run
361         in parallel-mode.
362         * testsuite/25_algorithms/inplace_merge/moveable.cc: Likewiwse.
363         * testsuite/25_algorithms/rotate/moveable.cc: Likewiwse.
364         * testsuite/25_algorithms/stable_partition/moveable.cc: Likewiwse.
365         * testsuite/25_algorithms/remove/moveable.c: Likewiwse.
366         * testsuite/25_algorithms/random_shuffle/moveable.cc: Likewiwse.
367         * testsuite/25_algorithms/nth_element/moveable.cc: Likewiwse.
368         * testsuite/25_algorithms/partial_sort/moveable.cc: Likewiwse.
369         * testsuite/25_algorithms/next_permutation/moveable.cc: Likewiwse.
370         * testsuite/25_algorithms/partition/moveable.cc: Likewiwse.
371         * testsuite/25_algorithms/stable_sort/moveable.cc: Likewiwse.
372         * testsuite/25_algorithms/stable_sort/moveable2.cc: Likewiwse.
373         * testsuite/25_algorithms/sort/moveable.cc: Likewiwse.
374         * testsuite/25_algorithms/prev_permutation/moveable.cc: Likewiwse.
375         * testsuite/25_algorithms/unique/moveable.cc: Likewiwse.
376         * testsuite/25_algorithms/remove_if/moveable.cc: Likewiwse.
377         * testsuite/25_algorithms/heap/moveable.cc: Likewiwse.
378
379         * testsuite/25_algorithms/search_n/iterator.cc: Reduce iteration #
380         in parallel-mode.
381
382 2010-01-12  Hans-Peter Nilsson  <hp@axis.com>
383
384         * testsuite/ext/profile/all.cc: Pass -D_GLIBCXX_PROFILE_NO_THREADS
385         for non-tls_native targets.
386
387 2010-01-12  Benjamin Kosnik  <bkoz@redhat.com>
388
389         * scripts/run_doxygen: Correct nested scope on the man pages.
390         * doc/xml/faq.xml: Edits, linkcheck, doxygen link reassociate.
391         * doc/xml/manual/mt_allocator.xml: Same.
392         * doc/xml/manual/allocator.xml: Same.
393         * doc/xml/manual/codecvt.xml: Same.
394         * doc/xml/manual/backwards_compatibility.xml: Same.
395         * doc/xml/manual/concurrency.xml: Same.
396         * doc/xml/manual/parallel_mode.xml: Same.
397         * doc/xml/manual/io.xml: Same.
398         * doc/xml/manual/support.xml: Same.
399         * doc/xml/manual/evolution.xml: Same.
400         * doc/xml/manual/using.xml: Same.
401         * doc/xml/manual/extensions.xml: Same.
402         * doc/xml/manual/appendix_contributing.xml: Same.
403         * doc/xml/manual/prerequisites.xml: Same.
404         * doc/xml/manual/diagnostics.xml: Same.
405         * doc/xml/manual/spine.xml: Same.
406         * doc/xml/manual/status_cxx200x.xml: Same.
407         * doc/xml/manual/test.xml: Same.
408         * doc/xml/spine.xml: Same.
409         * doc/html/*: Regenerate.
410
411         * include/profile/impl/profiler.h: Remove duplicate markup.
412
413 2010-01-12  Jonathan Wakely  <jwakely.gcc@gmail.com>
414
415         PR libstdc++/24803
416         PR libstdc++/35569
417         PR libstdc++/42593
418         * include/std/functional (bind): Forward rvalues and detect correct
419         result type of bound function object.
420         * include/std/mutex (call_once): Specify bind result type.
421         * testsuite/20_util/reference_wrapper/invoke.cc: Remove invalid tests.
422         * testsuite/20_util/reference_wrapper/24803.cc: Remove invalid tests
423         and enable FIXME tests.
424         * testsuite/20_util/bind/35569.cc: New.
425         * testsuite/20_util/bind/ref2.cc: New.
426         * testsuite/20_util/bind/38889.cc: New.
427         * testsuite/20_util/bind/ref_neg.cc: New.
428         * testsuite/20_util/bind/42593.cc: New.
429
430 2010-01-11  Paolo Carlini  <paolo.carlini@oracle.com>
431
432         * include/parallel/base.h (decode2): Rename to __decode2.
433         (binder2nd): Likewise to __binder2nd.
434         * include/parallel/quicksort.h: Adjust callers.
435         * include/parallel/balanced_quicksort.h: Likewise.
436         * include/parallel/partition.h: Likewise.
437         * include/parallel/queue.h: Likewise.
438
439         * include/parallel/algo.h: Qualify with std:: binder2nd use.
440
441 2010-01-10  Paolo Carlini  <paolo.carlini@oracle.com>
442
443         * include/debug/string (basic_string<>::basic_string(basic_string&&),
444         operator=(basic_string&&), assign(basic_string&&)): Add.
445
446         * include/debug/string: Fully qualify initializer_list with std; fix
447         _Allocator misspellings as _Alloc.
448
449 2010-01-10  Paolo Carlini  <paolo.carlini@oracle.com>
450
451         * include/bits/basic_string.h (basic_string<>::
452         basic_string(basic_string&&), operator=(basic_string&&),
453         assign(basic_string&&)): Add.
454         * config/abi/pre/gnu.ver: Export new symbols.
455         * include/ext/vstring.h (__versa_string<>::assign(__versa_string&&)):
456         Add.
457         (operator=(__versa_string&&)): Don't call clear unnecessarily.
458         * include/ext/rc_string_base.h (__rc_string_base<>::
459         __rc_string_base(__rc_string_base&&)): Simplify a tad.
460         * testsuite/21_strings/basic_string/cons/char/moveable.cc: New.
461         * testsuite/21_strings/basic_string/cons/wchar_t/moveable.cc: Likewise.
462         * testsuite/ext/vstring/assign/move_assign.cc: Likewise.
463         * testsuite/21_strings/basic_string/assign/char/move_assign.cc:
464         Likewise.
465         * testsuite/21_strings/basic_string/assign/wchar_t/move_assign.cc:
466         Likewise.
467
468         * testsuite/ext/vstring/cons/moveable.cc: Fix comment nit.
469
470 2010-01-10  Silvius Rus  <rus@google.com>
471
472         * configure.ac: Add detection of execinfo.h.
473         * configure: Regenerate.
474         * config.h.in: Likewise.
475         * doc/xml/manual/profile_mode.xml: Add list_to_slist manual.
476         Also, correct user interface mistakes.
477         * include/Makefile.am: Add references to new include files.
478         * include/Makefile.in: Regenerate.
479         * include/backward/hash_map: Remove profile include.
480         * include/backward/hash_set: Likewise.
481         * include/profile/hashtable.h: Delete file.
482         * include/profile/iterator_tracker.h: New file.
483         * include/profile/vector: Add instrumentation for tracked iterator.
484         * include/profile/list: Same.
485         * include/profile/impl/profiler_list_to_slist.h: New file.
486         * include/profile/impl/profiler_list_to_vector.h: Same.
487         * include/profile/impl/profiler.h: Add list_to_slist and
488         list_to_vector instrumentation hook interfaces.  Fixed broken
489         diagnostic disabling mechanism.
490         (_GLIBCXX_PROFILE_DEFINE_DATA,_GLIBCXX_PROFILE_DATA) New macros.
491         (__reentrance_guard) Fix bug.
492         * include/profile/impl/profiler_trace.h: Replace dummy templates
493         with _GLIBCXX_PROFILE_DEFINE_DATA.
494         * include/profile/impl/profiler_container_size.h: Same.
495         * include/profile/impl/profiler_vector_size.h: Same.
496         * include/profile/impl/profiler_hash_func.h: Same.
497         * include/profile/impl/profiler_vector_to_list.h: Same.
498         * include/profile/impl/profiler_map_to_unordered_map.h: Same.
499         * include/profile/impl/profiler_hashtable_size.h: Same.
500         * include/profile/impl/profiler_node.h: Same.
501         * include/profile/impl/profiler_state.h: Same.  Also, remove
502         class __state. Also, use __sync_val_compare_and_swap to set state.
503
504 2010-01-09  H.J. Lu  <hongjiu.lu@intel.com>
505
506         PR other/42230
507         * testsuite/abi/pr42230.cc: New.
508
509 2010-01-09  Paolo Carlini  <paolo.carlini@oracle.com>
510
511         * include/debug/set.h: Revert last change, per DR 1204 [Ready];
512         mention the latter in comment.
513         * include/debug/unordered_map: Likewise.
514         * include/debug/multiset.h: Likewise.
515         * include/debug/vector: Likewise.
516         * include/debug/unordered_set: Likewise.
517         * include/debug/deque: Likewise.
518         * include/debug/map.h: Likewise.
519         * include/debug/list: Likewise.
520         * include/debug/multimap.h: Likewise.
521         * include/tr1_impl/unordered_map: Likewise.
522         * include/tr1_impl/unordered_set: Likewise.
523         * include/profile/set.h: Likewise.
524         * include/profile/unordered_map: Likewise.
525         * include/profile/multiset.h: Likewise.
526         * include/profile/unordered_set: Likewise.
527         * include/profile/vector: Likewise.
528         * include/profile/deque: Likewise.
529         * include/profile/map.h: Likewise.
530         * include/profile/list: Likewise.
531         * include/profile/multimap.h: Likewise.
532         * include/ext/vstring.h: Likewise.
533         * include/bits/stl_list.h: Likewise.
534         * include/bits/stl_map.h: Likewise.
535         * include/bits/stl_set.h: Likewise.
536         * include/bits/stl_multimap.h: Likewise.
537         * include/bits/stl_vector.h: Likewise.
538         * include/bits/stl_deque.h: Likewise.
539         * include/bits/stl_multiset.h: Likewise.
540
541         * include/bits/forward_list.h: Remove pre-existing check.
542         * include/ext/vstring.h: Likewise.
543
544         * testsuite/ext/vstring/cons/self_move_assign.cc: Remove.
545         * testsuite/23_containers/unordered_map/cons/self_move_assign.cc:
546         Likewise.
547         * testsuite/23_containers/multimap/cons/self_move_assign.cc: Likewise.
548         * testsuite/23_containers/set/cons/self_move_assign.cc: Likewise.
549         * testsuite/23_containers/unordered_multimap/cons/
550         self_move_assign.cc: Likewise.
551         * testsuite/23_containers/forward_list/cons/self_move_assign.cc:
552         Likewise.
553         * testsuite/23_containers/unordered_set/cons/self_move_assign.cc:
554         Likewise.
555         * testsuite/23_containers/vector/cons/self_move_assign.cc: Likewise.
556         * testsuite/23_containers/deque/cons/self_move_assign.cc: Likewise.
557         * testsuite/23_containers/multiset/cons/self_move_assign.cc: Likewise.
558         * testsuite/23_containers/list/cons/self_move_assign.cc: Likewise.
559         * testsuite/23_containers/unordered_multiset/cons/
560         self_move_assign.cc: Likewise.
561         * testsuite/23_containers/map/cons/self_move_assign.cc: Likewise.
562
563         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
564         Adjust dg-error line numbers.
565         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
566         Likewise.
567         * testsuite/23_containers/vector/requirements/dr438/
568         constructor_1_neg.cc: Likewise.
569         * testsuite/23_containers/vector/requirements/dr438/
570         constructor_2_neg.cc: Likewise.
571         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
572         Likewise.
573         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
574         Likewise.
575         * testsuite/23_containers/deque/requirements/dr438/
576         constructor_1_neg.cc: Likewise.
577         * testsuite/23_containers/forward_list/requirements/dr438/
578         assign_neg.cc: Likewise.
579         * testsuite/23_containers/forward_list/requirements/dr438/
580         insert_neg.cc: Likewise.
581         * testsuite/23_containers/forward_list/requirements/dr438/
582         constructor_1_neg.cc: Likewise.
583         * testsuite/23_containers/forward_list/requirements/dr438/
584         constructor_2_neg.cc: Likewise.
585         * testsuite/23_containers/deque/requirements/dr438/
586         constructor_2_neg.cc: Likewise.
587         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
588         Likewise.
589         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
590         Likewise.
591         * testsuite/23_containers/list/requirements/dr438/
592         constructor_1_neg.cc: Likewise.
593         * testsuite/23_containers/list/requirements/dr438/
594         constructor_2_neg.cc: Likewise.
595
596 2010-01-08  Paolo Carlini  <paolo.carlini@oracle.com>
597
598         * include/debug/set.h: Protect move assignment operator vs self
599         assignment.
600         * include/debug/unordered_map: Likewise.
601         * include/debug/multiset.h: Likewise.
602         * include/debug/vector: Likewise.
603         * include/debug/unordered_set: Likewise.
604         * include/debug/deque: Likewise.
605         * include/debug/map.h: Likewise.
606         * include/debug/list: Likewise.
607         * include/debug/multimap.h: Likewise.
608         * include/tr1_impl/unordered_map: Likewise.
609         * include/tr1_impl/unordered_set: Likewise.
610         * include/profile/set.h: Likewise.
611         * include/profile/unordered_map: Likewise.
612         * include/profile/multiset.h: Likewise.
613         * include/profile/unordered_set: Likewise.
614         * include/profile/vector: Likewise.
615         * include/profile/deque: Likewise.
616         * include/profile/map.h: Likewise.
617         * include/profile/list: Likewise.
618         * include/profile/multimap.h: Likewise.
619         * include/ext/vstring.h: Likewise.
620         * include/bits/stl_list.h: Likewise.
621         * include/bits/stl_map.h: Likewise.
622         * include/bits/stl_set.h: Likewise.
623         * include/bits/stl_multimap.h: Likewise.
624         * include/bits/stl_vector.h: Likewise.
625         * include/bits/stl_deque.h: Likewise.
626         * include/bits/stl_multiset.h: Likewise.
627         * include/ext/vstring.h: Use clear().
628         * testsuite/ext/vstring/cons/self_move_assign.cc: New.
629         * testsuite/23_containers/unordered_map/cons/self_move_assign.cc:
630         Likewise.
631         * testsuite/23_containers/multimap/cons/self_move_assign.cc: Likewise.
632         * testsuite/23_containers/set/cons/self_move_assign.cc: Likewise.
633         * testsuite/23_containers/unordered_multimap/cons/
634         self_move_assign.cc: Likewise.
635         * testsuite/23_containers/forward_list/cons/self_move_assign.cc:
636         Likewise.
637         * testsuite/23_containers/unordered_set/cons/self_move_assign.cc:
638         Likewise.
639         * testsuite/23_containers/vector/cons/self_move_assign.cc: Likewise.
640         * testsuite/23_containers/deque/cons/self_move_assign.cc: Likewise.
641         * testsuite/23_containers/multiset/cons/self_move_assign.cc: Likewise.
642         * testsuite/23_containers/list/cons/self_move_assign.cc: Likewise.
643         * testsuite/23_containers/unordered_multiset/cons/
644         self_move_assign.cc: Likewise.
645         * testsuite/23_containers/map/cons/self_move_assign.cc: Likewise.
646
647         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
648         Adjust dg-error line numbers.
649         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
650         Likewise.
651         * testsuite/23_containers/vector/requirements/dr438/
652         constructor_1_neg.cc: Likewise.
653         * testsuite/23_containers/vector/requirements/dr438/
654         constructor_2_neg.cc: Likewise.
655         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
656         Likewise.
657         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
658         Likewise.
659         * testsuite/23_containers/deque/requirements/dr438/
660         constructor_1_neg.cc: Likewise.
661         * testsuite/23_containers/deque/requirements/dr438/
662         constructor_2_neg.cc: Likewise.
663         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
664         Likewise.
665         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
666         Likewise.
667         * testsuite/23_containers/list/requirements/dr438/
668         constructor_1_neg.cc: Likewise.
669         * testsuite/23_containers/list/requirements/dr438/
670         constructor_2_neg.cc: Likewise.
671
672         * testsuite/ext/vstring/moveable.cc: Move to...
673         * testsuite/ext/vstring/cons/moveable.cc: ... here.
674         * testsuite/23_containers/unordered_map/moveable.cc: Move to...
675         * testsuite/23_containers/unordered_map/cons/moveable.cc ... here.
676         * testsuite/23_containers/multimap/moveable.cc: Move to...
677         * testsuite/23_containers/multimap/cons/moveable.cc: ... here.
678         * testsuite/23_containers/set/moveable.cc: Move to...
679         * testsuite/23_containers/set/cons/moveable.cc: ... here.
680         * testsuite/23_containers/unordered_multimap/moveable.cc: Move to...
681         * testsuite/23_containers/unordered_multimap/cons/moveable.cc:
682         ... here.
683         * testsuite/23_containers/forward_list/moveable.cc: Move to...
684         * testsuite/23_containers/forward_list/cons/moveable.cc: ... here.
685         * testsuite/23_containers/unordered_set/moveable.cc Move to...
686         * testsuite/23_containers/unordered_set/moveable.cc: ... here.
687         * testsuite/23_containers/vector/cons/moveable.cc Move to...
688         * testsuite/23_containers/vector/cons/moveable2.cc: ... this.
689         * testsuite/23_containers/deque/cons/moveable.cc Move to...
690         * testsuite/23_containers/deque/cons/moveable2.cc: ... this.
691         * testsuite/23_containers/multiset/moveable.cc Move to...
692         * testsuite/23_containers/multiset/cons/moveable.cc: ... here.
693         * testsuite/23_containers/list/moveable.h Move to...
694         * testsuite/23_containers/list/cons/moveable.h: ... here.
695         * testsuite/23_containers/list/moveable.cc Move to...
696         * testsuite/23_containers/list/cons/moveable.cc: ... here.
697         * testsuite/23_containers/unordered_multiset/moveable.cc Move to...
698         * testsuite/23_containers/unordered_multiset/cons/moveable.cc:
699         ... here.
700         * testsuite/23_containers/map/moveable.cc Move to...
701         * testsuite/23_containers/map/cons/moveable.cc: ... here.
702         * testsuite/23_containers/vector/moveable.cc: Move to...
703         * testsuite/23_containers/vector/cons/moveable.cc: ... here.
704         * testsuite/23_containers/deque/moveable.cc: Move to...
705         * testsuite/23_containers/deque/cons/moveable.cc: ... here.
706
707 2010-01-08  Paolo Carlini  <paolo.carlini@oracle.com>
708
709         PR libstdc++/42573
710         * include/bits/allocator.h (struct __shrink_to_fit): Add.
711         * include/bits/stl_deque.h (deque<>::shrink_to_fit): Add.
712         * include/bits/stl_vector.h (vector<>::shrink_to_fit): Likewise.
713         * include/bits/stl_bvector.h (vector<bool>::shrink_to_fit): Likewise.
714         * include/bits/basic_string.h (basic_string<>::shrink_to_fit):
715         Likewise.
716         * include/ext/vstring.h (__versa_string<>::shrink_to_fit): Likewise.
717         * include/debug/deque: Add corresponding using declaration.
718         * include/debug/vector: Likewise.
719         * include/debug/string: Likewise.
720         * include/profile/deque: Likewise.
721         * include/profile/vector: Likewise.
722         * config/abi/pre/gnu.ver: Export new symbols.
723         * testsuite/23_containers/deque/capacity/shrink_to_fit.cc: New.
724         * testsuite/23_containers/vector/capacity/shrink_to_fit.cc: Likewise.
725         * testsuite/21_strings/basic_string/capacity/char/shrink_to_fit.cc:
726         Likewise.
727         * testsuite/21_strings/basic_string/capacity/wchar_t/shrink_to_fit.cc:
728         Likewise.
729         * testsuite/ext/vstring/capacity/shrink_to_fit.cc: Likewise.
730         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
731         Adjust dg-error line number.
732         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
733         Likewise.
734         * testsuite/23_containers/deque/requirements/dr438/
735         constructor_1_neg.cc: Likewise.
736         * testsuite/23_containers/deque/requirements/dr438/
737         constructor_2_neg.cc: Likewise.
738         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
739         Adjust dg-error line number.
740         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
741         Likewise.
742         * testsuite/23_containers/vector/requirements/dr438/
743         constructor_1_neg.cc: Likewise.
744         * testsuite/23_containers/vector/requirements/dr438/
745         constructor_2_neg.cc: Likewise.
746
747 2010-01-07  Benjamin Kosnik  <bkoz@redhat.com>
748
749         * doc/xml/manual/evolution.xml: Fix typos, update.
750
751 2010-01-07  Paolo Carlini  <paolo.carlini@oracle.com>
752
753         * include/bits/locale_facets_nonio.tcc (time_put<>::do_put): Avoid
754         pointless __builtin_alloca use.
755
756 2010-01-06  Paolo Carlini  <paolo.carlini@oracle.com>
757
758         PR libstdc++/26701
759         * include/bits/locale_facets_nonio.tcc (time_get<>::_M_extract_num):
760         Encode short two digits over four parsings to negative numbers.
761         (time_get<>::_M_extract_via_format): Adjust, accept both two digits
762         and four digits for both 'y' and 'Y'.
763         (time_get<>::do_get_year): Call time_get<>::_M_extract_num.
764         * doc/xml/manual/prerequisites.xml: Add en_GB.
765         * testsuite/lib/libstdc++.exp: Adjust
766         * testsuite/22_locale/time_get/get_date/char/26701.cc: New.
767         * testsuite/22_locale/time_get/get_date/wchar_t/26701.cc: Likewise.
768
769 2010-01-06  Benjamin Kosnik  <bkoz@redhat.com>
770
771         PR libstdc++/42491
772         * scripts/check_performance (CXX): Add -std=gnu++0x.
773         * testsuite/performance/30_threads/future/polling.cc: Mark up as
774         using threads.
775
776 2010-01-06  Paolo Carlini  <paolo.carlini@oracle.com>
777
778         * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc:
779         Add dg-require-namedlocale.
780
781 2010-01-05  Benjamin Kosnik  <bkoz@redhat.com>
782
783         * doc/xml/manual/evolution.xml: Update for 4.4 and 4.5 releases.
784         * doc/html: Regenerate.
785
786 2010-01-05  Paolo Carlini  <paolo.carlini@oracle.com>
787
788         PR libstdc++/38081
789         * include/bits/locale_facets_nonio.h (time_get<>::
790         _M_extract_wday_or_month): New, declare.
791         * include/bits/locale_facets_nonio.tcc (time_get<>::
792         _M_extract_wday_or_month): Define.
793         (time_get<>::do_get_weekday, time_get<>::do_get_monthname): Use it.
794         * config/abi/pre/gnu.ver: Export new symbols.
795         * doc/xml/manual/prerequisites.xml: Add ru_RU.UTF-8 and
796         ru_RU.ISO-8859-5.
797         * testsuite/lib/libstdc++.exp: Adjust.
798         * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc: New.
799         * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.
800
801 2010-01-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
802
803         * configure: Regenerate.
804
805 2010-01-05  Paolo Carlini  <paolo.carlini@oracle.com>
806
807         * testsuite/22_locale/time_get/get_monthname/char/6.cc: New.
808         * testsuite/22_locale/time_get/get_monthname/wchar_t/6.cc: Likewise.
809         * testsuite/22_locale/time_get/get_weekday/char/6.cc: Likewise.
810         * testsuite/22_locale/time_get/get_weekday/wchar_t/6.cc: Likewise.
811
812 2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
813
814         * include/profile/list: Implement DR 1133 here too.
815
816         * testsuite/25_algorithms/set_intersection/34730.cc: Do not force
817         debug-mode, leads to spurious failures in profile-mode.
818         * testsuite/25_algorithms/upper_bound/33613.cc: Likewise.
819         * testsuite/25_algorithms/lower_bound/33613.cc: Likewise.
820         * testsuite/25_algorithms/set_difference/35541.cc: Likewise.
821         * testsuite/21_strings/basic_string/40160.cc: Likewise.
822         * testsuite/26_numerics/random/uniform_real_distribution/
823         cons/parms_neg.cc: Likewise.
824         * testsuite/26_numerics/random/uniform_int_distribution/
825         cons/parms_neg.cc: Likewise.
826         * testsuite/23_containers/unordered_map/requirements/debug_mode.cc:
827         Likewise.
828         * testsuite/23_containers/multimap/14340.cc: Likewise.
829         * testsuite/23_containers/bitset/18604.cc: Likewise.
830         * testsuite/23_containers/set/14340.cc: Likewise.
831         * testsuite/23_containers/set/18604.cc: Likewise.
832         * testsuite/23_containers/unordered_set/requirements/
833         debug_mode.cc: Likewise.
834         * testsuite/23_containers/vector/
835         debug_mode_requires_reallocation-1.cc: Likewise.
836         * testsuite/23_containers/vector/
837         debug_mode_requires_reallocation-2.cc: Likewise.
838         * testsuite/23_containers/vector/14340.cc: Likewise.
839         * testsuite/23_containers/vector/15523.cc: Likewise.
840         * testsuite/23_containers/vector/18604.cc: Likewise.
841         * testsuite/23_containers/deque/14340.cc: Likewise.
842         * testsuite/23_containers/deque/18604.cc: Likewise.
843         * testsuite/23_containers/multiset/14340.cc: Likewise.
844         * testsuite/23_containers/list/operations/35969.cc: Likewise.
845         * testsuite/23_containers/list/14340.cc: Likewise.
846         * testsuite/23_containers/list/18604.cc: Likewise.
847         * testsuite/23_containers/map/14340.cc: Likewise.
848         * testsuite/23_containers/map/18604.cc: Likewise.
849         * testsuite/tr1/5_numerical_facilities/random/uniform_int/
850         cons/range_neg.cc: Likewise.
851
852         * testsuite/23_containers/unordered_map/requirements/
853         explicit_instantiation/2.cc: Do not instantiate for
854         non-defaultconstructible mapped_type.
855
856 2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
857
858         * include/debug/set.h: Implement DR 130 here too.
859         * include/debug/multiset.h: Likewise.
860         * include/debug/map.h: Likewise.
861         * include/debug/multimap.h: Likewise.
862         * include/profile/set.h: Implement DR 130 fully.
863         * include/profile/multiset.h: Likewise.
864         * include/profile/map.h: Likewise.
865         * include/profile/multimap.h: Likewise.
866         * include/debug/list: Implement DR 1133 here too.
867         * include/ext/pb_ds/detail/debug_map_base.hpp: Comment out for
868         now uses of __gnu_cxx::throw_allocator.
869         * testsuite/21_strings/basic_string/40160.cc: Don't pass
870         explicitly -D_GLIBCXX_DEBUG, doesn't play well with profile-mode
871         testing.
872
873 2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
874
875         * include/profile/bitset (bitset<>::bitset(unsigned long long)): Add
876         in C++0x mode.
877         * include/debug/bitset (bitset<>::bitset(unsigned long long)):
878         Likewise.
879
880 2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
881
882         * include/tr1_impl/hashtable (_Hashtable<>): Remove insert_return_type
883         typedef.
884         * include/profile/unordered_map (unordered_map<>::insert(const
885         value_type&), unordered_multimap<>::insert(const value_type&)): Adjust.
886         * include/profile/unordered_set (unordered_set<>::insert(const
887         value_type&), unordered_multimap<>::insert(const value_type&)):
888         Likewise.
889
890 2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
891
892         * include/bits/stl_pair.h (pair<>::pair(_U1&&, const _T2&),
893         pair<>::pair(const _T1&, _U2&&), pair<>::pair(_U1&&, _U2&&)):
894         Use std::is_constructible instead of std::is_convertible.
895
896 2010-01-01  Paolo Carlini  <paolo.carlini@oracle.com>
897
898         Revert last change, reinstantiate basic_string and vstring tests.
899
900 2010-01-01  Paolo Carlini  <paolo.carlini@oracle.com>
901
902         * testsuite/21_strings/basic_string/requirements/exception/
903         propagation_consistent.cc: Remove, cannot instantiate basic_string
904         for non-PODs (21/1).
905         * testsuite/21_strings/basic_string/requirements/exception/
906         basic.cc: Likewise.
907         * testsuite/21_strings/basic_string/requirements/exception/
908         generation_prohibited.cc: Likewise.
909         * testsuite/ext/vstring/requirements/exception/
910         propagation_consistent.cc: Likewise.
911         * testsuite/ext/vstring/requirements/exception/basic.cc:
912         Likewise.
913         * testsuite/ext/vstring/requirements/exception/
914         generation_prohibited.cc: Likewise.