OSDN Git Service

2007-12-17 Jonathan Wakely <jwakely.gcc@gmail.com>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
1 2007-12-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
2
3         * include/bits/locale_classes.h: Simplify RTTI checks.
4
5 2007-12-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
6
7         * docs/html/test.html: Fix paths and notes on running subset of tests.
8         * docs/html/ext/parallel_mode.html: Fix markup typos.
9         * docs/html/ext/pb_ds/index.html: Likewise.
10
11 2007-12-17  Benjamin Kosnik  <bkoz@redhat.com>
12
13         * testsuite/22_locale/global_templates/
14         standard_facet_hierarchies.cc: Fix for generic locale model.
15
16 2007-12-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
17
18         * ChangeLog: Fix my email address in previous two entries.
19
20 2007-12-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
21
22         * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Add
23         required dg-option for cygwin and darwin targets.
24         * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
25
26 2007-12-15  Jonathan Wakely  <jwakely.gcc@gmail.com>
27
28         * include/tr1_impl/boost_shared_ptr.h: Add support for allocators,
29         aliasing, make_shared and rvalue-references. Move __shared_count
30         and _Sp_counted_* classes to new headers.
31         * include/tr1_impl/boost_sp_counted_base.h: New.
32         * include/bits/boost_sp_shared_count.h: New.
33         * include/tr1/boost_sp_shared_count.h: New.
34         * include/std/memory, include/tr1/memory: Include new headers.
35         * include/Makefile.am: Adjust.
36         * include/Makefile.in: Regenerate.
37         * docs/html/documentation.html: Link to shared_ptr notes.
38         * docs/html/20_util/shared_ptr.html: New.
39         * docs/html/17_intro/c++0x_status.html: Update shared_ptr status.
40         * testsuite/20_util/shared_ptr/cons/alias.cc: New.
41         * testsuite/20_util/shared_ptr/cons/alloc.cc: Likewise.
42         * testsuite/20_util/shared_ptr/cons/move.cc: Likewise.
43         * testsuite/20_util/shared_ptr/assign/move.cc: Likewise.
44         * testsuite/20_util/shared_ptr/creation/alloc.cc: Likewise.
45         * testsuite/20_util/shared_ptr/creation/make.cc: Likewise.
46         * testsuite/20_util/shared_ptr/creation/dr402.cc: Likewise.
47         * testsuite/20_util/shared_ptr/modifiers/reset_alloc.cc: Likewise.
48         * testsuite/20_util/shared_ptr/assign/assign.cc: Duplicate tr1 test.
49         * testsuite/20_util/shared_ptr/assign/auto_ptr.cc: Likewise.
50         * testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Likewise.
51         * testsuite/20_util/shared_ptr/assign/auto_ptr_rvalue_neg.cc: Likewise.
52         * testsuite/20_util/shared_ptr/assign/dr541.cc: Likewise.
53         * testsuite/20_util/shared_ptr/assign/shared_ptr.cc: Likewise.
54         * testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc: Likewise.
55         * testsuite/20_util/shared_ptr/casts/1.cc: Likewise.
56         * testsuite/20_util/shared_ptr/comparison/cmp.cc: Likewise.
57         * testsuite/20_util/shared_ptr/cons/auto_ptr.cc: Likewise.
58         * testsuite/20_util/shared_ptr/cons/auto_ptr_neg.cc: Likewise.
59         * testsuite/20_util/shared_ptr/cons/copy.cc: Likewise.
60         * testsuite/20_util/shared_ptr/cons/default.cc: Likewise.
61         * testsuite/20_util/shared_ptr/cons/pointer.cc: Likewise.
62         * testsuite/20_util/shared_ptr/cons/weak_ptr.cc: Likewise.
63         * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Likewise.
64         * testsuite/20_util/shared_ptr/dest/dest.cc: Likewise.
65         * testsuite/20_util/shared_ptr/misc/24595.cc: Likewise.
66         * testsuite/20_util/shared_ptr/misc/io.cc: Likewise.
67         * testsuite/20_util/shared_ptr/misc/swap.cc: Likewise.
68         * testsuite/20_util/shared_ptr/modifiers/24805.cc: Likewise.
69         * testsuite/20_util/shared_ptr/modifiers/reset.cc: Likewise.
70         * testsuite/20_util/shared_ptr/modifiers/reset_neg.cc: Likewise.
71         * testsuite/20_util/shared_ptr/modifiers/swap.cc: Likewise.
72         * testsuite/20_util/shared_ptr/modifiers/swap_neg.cc: Likewise.
73         * testsuite/20_util/shared_ptr/observers/bool_conv.cc: Likewise.
74         * testsuite/20_util/shared_ptr/observers/get.cc: Likewise.
75         * testsuite/20_util/shared_ptr/observers/unique.cc: Likewise.
76         * testsuite/20_util/shared_ptr/observers/use_count.cc: Likewise.
77         * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
78         Likewise.
79         * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
80         * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
81         1.cc: Likewise.
82         * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
83         2.cc: Likewise.
84         * testsuite/20_util/shared_ptr/requirements/explicit_instantiation.cc:
85         Remove.
86         * testsuite/20_util/weak_ptr/lock/1.cc: Duplicate tr1 test.
87         * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/1.cc:
88         Likewise.
89         * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/2.cc:
90         Likewise.
91         * testsuite/20_util/weak_ptr/requirements/explicit_instantiation.cc:
92         Remove.
93
94 2007-12-15  Hans-Peter Nilsson  <hp@axis.com>
95
96         * configure.host (try_cpu settings): Set try_cpu=cris for crisv32.
97         * config/cpu/cris/atomicity.h (__exchange_and_add)
98         [__CRIS_arch_version >= 32]: Add support for CRIS v32.
99
100 2007-12-15  Benjamin Kosnik  <bkoz@redhat.com>
101             Paolo Carlini  <pcarlini@suse.de>
102         
103         * include/parallel/partial_sum.h: Include new. Fix for DR 402.  
104         * include/parallel/multiway_merge.h:Fix for DR 402.
105         * include/parallel/losertree.h: Same.
106         * include/parallel/quicksort.h: Same.
107         * include/parallel/random_shuffle.h: Same.
108         * include/parallel/multiway_mergesort.h: Same.
109         
110 2007-12-14  Benjamin Kosnik  <bkoz@redhat.com>
111
112         PR libstdc++/30127
113         PR libstdc++/34449
114         * include/bits/locale_classes.h (use_facet): Check facet hierarchy.
115         (has_facet): Same.
116         * testsuite/22_locale/global_templates/user_facet_hierarchies.cc: New.
117         * testsuite/22_locale/global_templates/
118         standard_facet_hierarchies.cc: New.
119         
120 2007-12-11  Benjamin Kosnik  <bkoz@redhat.com>
121
122         PR libstdc++/34015
123         * include/backward/backward_warning.h: Adjust warning message.
124
125 2007-12-11  Paolo Carlini  <pcarlini@suse.de>
126
127         * include/bits/stl_bvector.h (vector<bool>::reserve): Move out of
128         line...
129         * include/bits/vector.tcc: ... here.
130
131 2007-12-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
132
133         * docs/html/21_strings/howto.html: Add links to referenced articles.
134
135 2007-12-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
136
137         * docs/html/17_intro/backwards_compatibility.html: Fix markup.
138         * docs/html/17_intro/howto.html: Likewise.
139         * docs/html/18_support/howto.html: Likewise.
140         * docs/html/ext/concurrence.html: Likewise.
141         * docs/html/documentation.html: Likewise.
142
143 2007-12-10  Paolo Carlini  <pcarlini@suse.de>
144
145         * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
146         requirements/non_uint_neg.cc: Avoid -Wall warnings.
147         * testsuite/tr1/5_numerical_facilities/special_functions/
148         01_assoc_laguerre/compile.cc: Likewise.
149         * testsuite/util/testsuite_api.h: Likewise.
150
151 2007-12-10  Paolo Carlini  <pcarlini@suse.de>
152
153         * testsuite/25_algorithms/nth_element/2.cc: Avoid -Wall warnings.
154         * testsuite/27_io/basic_streambuf/sgetc/wchar_t/1.cc: Likewise.
155         * testsuite/27_io/basic_streambuf/sgetc/char/1.cc: Likewise.
156         * testsuite/27_io/basic_stringbuf/sgetn/wchar_t/1.cc: Likewise.
157         * testsuite/27_io/basic_stringbuf/sgetn/char/1.cc: Likewise.
158         * testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc: Likewise.
159         * testsuite/27_io/basic_stringbuf/sbumpc/char/1.cc: Likewise.
160         * testsuite/27_io/basic_stringbuf/snextc/wchar_t/1.cc: Likewise.
161         * testsuite/27_io/basic_stringbuf/snextc/char/1.cc: Likewise.
162         * testsuite/27_io/basic_istream/peek/wchar_t/12296.cc: Likewise.
163         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
164         28277-2.cc: Likewise.
165         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
166         28277-3.cc: Likewise.
167         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
168         28277-4.cc: Likewise.
169         * testsuite/27_io/basic_ostream/inserters_character/char/
170         28277-3.cc: Likewise.
171         * testsuite/27_io/basic_ostream/inserters_character/char/
172         28277-4.cc: Likewise.
173         * testsuite/19_diagnostics/error_code/operators/bool.cc: Likewise.
174         * testsuite/19_diagnostics/error_code/operators/bool_neg.cc: Likewise.
175         * testsuite/18_support/headers/cstddef/macros.cc: Likewise.
176         * testsuite/21_strings/basic_string/inserters_extractors/
177         wchar_t/28277.cc: Likewise.
178         * testsuite/21_strings/basic_string/inserters_extractors/
179         char/28277.cc: Likewise.
180         * testsuite/26_numerics/headers/cmath/25913.cc: Likewise.
181         * testsuite/ext/pb_ds/example/priority_queue_xref.cc: Likewise.
182         * testsuite/ext/vstring/inserters_extractors/wchar_t/28277.cc: Likewise.
183         * testsuite/ext/vstring/inserters_extractors/char/28277.cc: Likewise.
184         * testsuite/ext/enc_filebuf/char/13598.cc: Likewise.
185         * testsuite/22_locale/collate/compare/char/2.cc: Likewise.
186         * testsuite/22_locale/time_put/put/wchar_t/5.cc: Likewise.
187         * testsuite/22_locale/time_put/put/char/5.cc: Likewise.
188         * testsuite/22_locale/time_put/put/char/6.cc: Likewise.
189         * testsuite/22_locale/time_put/put/char/7.cc: Likewise.
190         * testsuite/22_locale/time_put/put/char/8.cc: Likewise.
191         * testsuite/22_locale/codecvt/unshift/char/1.cc: Likewise.
192         * testsuite/22_locale/codecvt/length/char/1.cc: Likewise.
193         * testsuite/22_locale/codecvt/length/char/2.cc: Likewise.
194         * testsuite/22_locale/codecvt/in/wchar_t/9.cc: Likewise.
195         * testsuite/22_locale/codecvt/in/char/1.cc: Likewise.
196         * testsuite/22_locale/codecvt/out/char/1.cc: Likewise.
197         * testsuite/22_locale/num_get/get/wchar_t/1.cc: Likewise.
198         * testsuite/22_locale/num_get/get/char/1.cc: Likewise.
199         * testsuite/tr1/5_numerical_facilities/random/uniform_int/
200         33128.cc: Likewise.
201         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
202         mutex_weaktoshared.cc: Likewise.
203         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
204         default_weaktoshared.cc: Likewise.
205         * testsuite/tr1/7_regular_expressions/basic_regex/assign/wchar_t/
206         range.cc: Likewise.
207         * testsuite/tr1/7_regular_expressions/basic_regex/assign/char/
208         range.cc: Likewise.
209         * testsuite/tr1/7_regular_expressions/basic_regex/ctors/wchar_t/
210         range.cc: Likewise.
211         * testsuite/tr1/7_regular_expressions/basic_regex/ctors/char/
212         range.cc: Likewise.
213         * testsuite/23_containers/multimap/operations/1.cc: Likewise.
214         * testsuite/23_containers/set/operations/1.cc: Likewise.
215         * testsuite/23_containers/vector/bool/capacity/29134.cc: Likewise.
216         * testsuite/23_containers/deque/modifiers/erase/1.cc: Likewise.
217         * testsuite/23_containers/deque/modifiers/erase/2.cc: Likewise.
218         * testsuite/23_containers/multiset/operations/1.cc: Likewise.
219         * testsuite/23_containers/map/operations/1.cc: Likewise.
220         * testsuite/util/testsuite_hooks.cc: Likewise.
221         * testsuite/util/testsuite_rvalref.h: Likewise.
222
223 2007-12-10  Jakub Jelinek  <jakub@redhat.com>
224
225         * include/ext/throw_allocator.h (print_to_string): Change sprintf
226         format to %lu and cast ref.second.{first,second} to long.
227         * include/debug/safe_iterator.tcc (_M_can_advance): Add parens to
228         avoid warnings.
229
230 2007-12-09  Benjamin Kosnik  <bkoz@redhat.com>
231
232         * docs/html/ext/howto.html: Update.
233         * docs/html/ext/sgiexts.html: Same.
234         * docs/html/ext/concurrence.html: New. Document extensions.
235         * docs/html/17_intro/api.html: Move some bits...
236         * docs/html/17_intro/backwards_compatibility.html: here. New. Add
237         compatibility suggestions, move existing ones.
238         * docs/html/17_intro/howto.html: Update info.
239         * docs/html/18_support/howto.html: Tweak.
240         * docs/html/faq/index.html: Update thread info.
241         * docs/html/documentation.html: Add links.
242         * docs/html/20_util/allocator.html: Update info.
243         * include/precompiled/stdc++.h: Add C++0x includes if appropriate.
244         * testsuite/17_intro/headers/c++200x/all.cc: Same.
245
246 2007-12-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
247
248         * testsuite/util/testsuite_allocator.h,
249         testsuite/util/testsuite_hooks.cc,
250         testsuite/util/testsuite_character.h,
251         testsuite/util/testsuite_performance.h,
252         testsuite/util/testsuite_rvalref.h, testsuite/util/testsuite_io.h,
253         testsuite/util/testsuite_allocator.cc: Remove semi-colons after
254         namespace declarations.
255
256 2007-12-05  Paolo Carlini  <pcarlini@suse.de>
257
258         * include/tr1_impl/hashtable_policy.h (_Prime_rehash_policy::
259         _S_n_primes): Add.
260         (_Prime_rehash_policy::_M_next_bkt, _M_bkt_for_elements,
261         _M_need_rehash): Adjust.
262
263 2007-12-03  Paolo Carlini  <pcarlini@suse.de>
264
265         * src/hashtable.cc (__prime_list): Use __SIZEOF_LONG__.
266
267 2007-12-03  Paolo Carlini  <pcarlini@suse.de>
268
269         * src/hashtable.cc: New.
270         * src/hashtable_c++0x.cc: Likewise.
271         * src/Makefile.am: Add.
272         * src/Makefile.in: Regenerate.
273         * include/tr1_impl/hashtable_policy.h (struct _Primes): Remove.
274         (_Prime_rehash_policy::_M_next_bkt, _M_bkt_for_elements,
275         _M_need_rehash): Adjust.
276         * config/abi/pre/gnu.ver: Update exports.
277
278         * src/hash.cc: Minor tweak.
279
280 2007-12-03  Paolo Carlini  <pcarlini@suse.de>
281
282         * include/debug/unordered_map (operator==(const unordered_map&,
283         const unordered_map&), operator!=(const unordered_map&,
284         const unordered_map&), operator==(const unordered_multimap&,
285         const unordered_multimap&), operator!=(const unordered_multimap&,
286         const unordered_multimap&)): Remove.
287         (unordered_map<>::unordered_map(unordered_map&&),
288         operator=(unordered_map&&), clear, _M_invalidate_all,
289         unordered_multimap<>::unordered_multimap(unordered_multimap&&),
290         operator=(unordered_map&&), clear, _M_invalidate_all,   
291         swap(unordered_map<>&&, unordered_map<>&), swap(unordered_map<>&,
292         unordered_map<>&&), swap(unordered_multimap<>&&,
293         unordered_multimap<>&), swap(unordered_multimap<>&,
294         unordered_multimap<>&&)): Add.
295         * include/debug/unordered_set (operator==(const unordered_set&,
296         const unordered_set&), operator!=(const unordered_set&,
297         const unordered_set&), operator==(const unordered_multiset&,
298         const unordered_multiset&), operator!=(const unordered_multiset&,
299         const unordered_multiset&)): Remove.
300         (unordered_set<>::unordered_set(unordered_set&&),
301         operator=(unordered_set&&), clear, _M_invalidate_all,
302         unordered_multiset<>::unordered_multiset(unordered_multiset&&),
303         operator=(unordered_set&&), clear, _M_invalidate_all,   
304         swap(unordered_set<>&&, unordered_set<>&), swap(unordered_set<>&,
305         unordered_set<>&&), swap(unordered_multiset<>&&,
306         unordered_multiset<>&), swap(unordered_multiset<>&,
307         unordered_multiset<>&&)): Add.
308         * include/debug/safe_association.h (_Safe_association<>::
309         _Safe_association(_Safe_association&&)): Add.
310         (_Safe_association<>::clear, _M_invalidate_all): Remove.
311
312 2007-12-01  Paolo Carlini  <pcarlini@suse.de>
313
314         * include/tr1_impl/hashtable_policy.h (struct _LessThan): Remove.
315         (_Prime_rehash_policy::_M_bkt_for_elements, _Prime_rehash_policy::
316         _M_need_rehash): Adjust.
317
318 2007-12-01  Paolo Carlini  <pcarlini@suse.de>
319
320         * include/bits/stl_tempbuf.h (__get_temporary_buffer): Fold
321         in get_temporary_buffer.
322
323 2007-11-29  Andris Pavenis <andris.pavenis@iki.fi>
324
325         * src/Makefile.am: Use separate vpath lines for each path.
326
327 2007-11-28  Johannes Singler  <singler@ira.uka.de>
328
329         * include/parallel/multiway_merge.h: Destruct only elements that 
330         were have been constructed before. Code beautifying and formatting.
331         * include/parallel/losertree.h: (Copy) construct all loser tree 
332         item keys, so they can be deconstructed all at once.
333         * include/parallel/quicksort.h: Fix memory leak.
334         * include/parallel/random_shuffle.h: Use copy constructor instead 
335         of assignment. Code beautifying and formatting.
336         * include/parallel/unique_copy.h: Use assignment instead of copy 
337         constructor.
338         * include/parallel/multiway_mergesort.h: Use copy constructor 
339         instead of assignment. Code beautifying and formatting.
340         * include/parallel/random_shuffle.h: Use copy constructor instead 
341         of assignment. Code beautifying.
342
343 2007-11-27  Kaz Kojima  <kkojima@gcc.gnu.org>
344
345         * testsuite/tr1/5_numerical_facilities/special_functions/
346         01_assoc_laguerre/check_nan.cc: Add -mieee for sh.
347         * testsuite/tr1/5_numerical_facilities/special_functions/
348         02_assoc_legendre/check_nan.cc: Likewise.
349         * testsuite/tr1/5_numerical_facilities/special_functions/
350         03_beta/check_nan.cc: Likewise.
351         * testsuite/tr1/5_numerical_facilities/special_functions/
352         04_comp_ellint_1/check_nan.cc: Likewise.
353         * testsuite/tr1/5_numerical_facilities/special_functions/
354         06_comp_ellint_3/check_nan.cc: Likewise.
355         * testsuite/tr1/5_numerical_facilities/special_functions/
356         07_conf_hyperg/check_nan.cc: Likewise.
357         * testsuite/tr1/5_numerical_facilities/special_functions/
358         08_cyl_bessel_i/check_nan.cc: Likewise.
359         * testsuite/tr1/5_numerical_facilities/special_functions/
360         09_cyl_bessel_j/check_nan.cc: Likewise.
361         * testsuite/tr1/5_numerical_facilities/special_functions/
362         10_cyl_bessel_k/check_nan.cc: Likewise.
363         * testsuite/tr1/5_numerical_facilities/special_functions/
364         11_cyl_neumann/check_nan.cc: Likewise.
365         * testsuite/tr1/5_numerical_facilities/special_functions/
366         12_ellint_1/check_nan.cc: Likewise.
367         * testsuite/tr1/5_numerical_facilities/special_functions/
368         13_ellint_2/check_nan.cc: Likewise.
369         * testsuite/tr1/5_numerical_facilities/special_functions/
370         14_ellint_3/check_nan.cc: Likewise.
371         * testsuite/tr1/5_numerical_facilities/special_functions/
372         15_expint/check_nan.cc: Likewise.
373         * testsuite/tr1/5_numerical_facilities/special_functions/
374         16_hermite/check_nan.cc: Likewise.
375         * testsuite/tr1/5_numerical_facilities/special_functions/
376         18_laguerre/check_nan.cc: Likewise.
377         * testsuite/tr1/5_numerical_facilities/special_functions/
378         19_legendre/check_nan.cc: Likewise.
379         * testsuite/tr1/5_numerical_facilities/special_functions/
380         20_riemann_zeta/check_nan.cc: Likewise.
381         * testsuite/tr1/5_numerical_facilities/special_functions/
382         21_sph_bessel/check_nan.cc: Likewise.
383         * testsuite/tr1/5_numerical_facilities/special_functions/
384         22_sph_legendre/check_nan.cc: Likewise.
385         * testsuite/tr1/5_numerical_facilities/special_functions/
386         23_sph_neumann/check_nan.cc: Likewise.
387
388 2007-11-26  Paolo Carlini  <pcarlini@suse.de>
389
390         * include/bits/locale_facets.tcc (num_put<>::_M_insert_int): When
391         ios_base::showpos and the type is signed and the value is zero,
392         prepend +.
393         * testsuite/22_locale/num_put/put/char/12.cc: New.
394         * testsuite/22_locale/num_put/put/wchar_t/12.cc: Likewise.
395
396 2007-11-26  Paolo Carlini  <pcarlini@suse.de>
397
398         PR libstdc++/25913
399         * include/c_std/cmath (std::fpclassify, isfinite, isinf, isnan,
400         isnormal, signbit, isgreater, isgreaterequal, isless, islessequal,
401         islessgreater, isunordered): Guard with __enable_if and forward
402         with __promote.
403         * include/c_global/cmath: Likewise.
404         * testsuite/26_numerics/headers/cmath/25913.cc: New.
405
406         * include/c_std/cmath (__gnu_cxx::__capture_isfinite,
407         __capture_isinf, __capture_isnan, __capture_isnormal,
408         __capture_signbit, __capture_isgreater, __capture_isgreaterequal,
409         __capture_isless, __capture_islessequal, __capture_islessgreater,
410         __capture_isunordered): Remove.
411         (std::isfinite, isinf, isnan, isnormal, signbit, isgreater,
412         isgreaterequal, isless, islessequal, islessgreater, isunordered):
413         Forward to the corresponding builtin.
414         * include/c_global/cmath: Likewise.
415
416         * include/c_global/cmath (std::atan2, pow): Guard with __enable_if.
417
418 2007-11-25  Paolo Carlini  <pcarlini@suse.de>
419
420         * include/tr1_impl/unordered_map
421         (__unordered_map<>::__unordered_map(__unordered_map&&),
422         __unordered_multimap<>::__unordered_multimap(__unordered_multimap&&),
423         unordered_map<>::unordered_map(unordered_map&&),
424         unordered_multimap<>::unordered_multimap(unordered_multimap&&),
425         unordered_map<>::operator=(unordered_map&&),
426         unordered_multimap<>::operator=(unordered_multimap&&),
427         swap(unordered_map<>&&, unordered_map<>&),
428         swap(unordered_map<>&, unordered_map<>&&),
429         swap(unordered_multimap<>&&, unordered_multimap<>&),
430         swap(unordered_multimap<>&, unordered_multimap<>&&)): Add in C++0x.
431         (swap(unordered_multimap<>&, unordered_multimap<>&),
432         swap(unordered_multimap<>&, unordered_multimap<>&)): Add.
433         * include/tr1_impl/unordered_set
434         (__unordered_set<>::__unordered_set(__unordered_set&&),
435         __unordered_multiset<>::__unordered_multiset(__unordered_multiset&&),
436         unordered_set<>::unordered_set(unordered_setp&&),
437         unordered_multiset<>::unordered_multiset(unordered_multiset&&),
438         unordered_set<>::operator=(unordered_set&&),
439         unordered_multiset<>::operator=(unordered_multiset&&),
440         swap(unordered_set<>&&, unordered_set<>&),
441         swap(unordered_set<>&, unordered_set<>&&),
442         swap(unordered_multiset<>&&, unordered_multiset<>&),
443         swap(unordered_multiset<>&, unordered_multiset<>&&)): Likewise.
444         (swap(unordered_set<>&, unordered_set<>&),
445         swap(unordered_multiset<>&, unordered_multiset<>&)): Add.
446         * include/tr1_impl/hashtable (_Hashtable<>::_Hashtable(_Hashtable&&),
447         swap(_Hashtable&&)): Add in C++0x.
448         * testsuite/23_containers/unordered_map/moveable.cc: New.
449         * testsuite/23_containers/unordered_set/moveable.cc: Likewise.
450         * testsuite/23_containers/unordered_multimap/moveable.cc: Likewise.
451         * testsuite/23_containers/unordered_multiset/moveable.cc: Likewise.
452
453 2007-11-25  Paolo Carlini  <pcarlini@suse.de>
454
455         * include/tr1_impl/array (array<>::_M_check): Remove, not necessary
456         anymore.
457         (array<>::at): Adjust.
458
459         * docs/html/17_intro/c++0x_status.html: Fix array::data entry.
460
461 2007-11-25  Paolo Carlini  <pcarlini@suse.de>
462
463         * include/bits/stl_algobase.h (__lexicographical_compare<>::__lc):
464         Move out of line.
465
466         * include/bits/stl_algobase.h (swap_ranges): Remove redundant
467         simulated concept checks.
468
469 2007-11-23  Paolo Carlini  <pcarlini@suse.de>
470
471         * include/std/bitset (bitset<>::all): Add, per DR 693 [Ready].
472         (_Base_bitset<>::_M_are_all_aux()): Add.
473         * include/debug/bitset (bitset<>::all): Add.
474         * testsuite/23_containers/bitset/all/1.cc: New.
475         * docs/html/ext/howto.html: Add an entry for DR 693.
476         
477         * include/std/bitset (bitset<0>::set, reset, flip, test): Remove,
478         not necessary anymore.
479
480 2007-11-23  Paolo Carlini  <pcarlini@suse.de>
481
482         * include/bits/stl_list.h (insert(iterator, value_type&&)): Just
483         forward to emplace.
484         * include/bits/stl_vector.h (insert(iterator, value_type&&)): Likewise.
485         * include/bits/stl_deque.h (insert(iterator, value_type&&)): Likewise.
486         * include/debug/list (insert(iterator, value_type&&)): Likewise.
487         * include/debug/vector (insert(iterator, value_type&&)): Likewise.
488         * include/debug/deque (insert(iterator, value_type&&)): Likewise.
489         * include/bits/list.tcc (insert(iterator, value_type&&)): Remove.
490         * include/bits/vector.tcc (insert(iterator, value_type&&)): Likewise.
491         * include/bits/deque.tcc (insert(iterator, value_type&&)): Likewise.
492         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
493         Adjust dg-error line number.
494         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
495         Likewise.
496         * testsuite/23_containers/vector/requirements/dr438/
497         constructor_1_neg.cc: Likewise.
498         * testsuite/23_containers/vector/requirements/dr438/
499         constructor_2_neg.cc: Likewise.
500         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
501         Adjust dg-error line number.
502         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
503         Likewise.
504         * testsuite/23_containers/deque/requirements/dr438/
505         constructor_1_neg.cc: Likewise.
506         * testsuite/23_containers/deque/requirements/dr438/
507         constructor_2_neg.cc: Likewise.
508         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
509         Adjust dg-error line number.
510         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
511         Likewise.
512         * testsuite/23_containers/list/requirements/dr438/
513         constructor_1_neg.cc: Likewise.
514         * testsuite/23_containers/list/requirements/dr438/
515         constructor_2_neg.cc: Likewise.
516
517 2007-11-22  Paolo Carlini  <pcarlini@suse.de>
518
519         * include/bits/stl_tree.h (_Rb_tree<>::_Rb_tree_impl<, true>): Remove,
520         identical in mainline to the primary template.
521
522 2007-11-22  Paolo Carlini  <pcarlini@suse.de>
523
524         * config/abi/pre/gnu.ver: Adjust new exports for 128-bit long double.
525
526 2007-11-22  Johannes Singler  <singler@ira.uka.de>
527
528         PR libstdc++/33893
529         * include/parallel/multiway_merge.h: made omp_dynamic-safe
530         * include/parallel/workstealing.h: made omp_dynamic-safe
531         * include/parallel/base.h: infrastructure, cleanup
532         * include/parallel/par_loop.h: made omp_dynamic-safe
533         * include/parallel/features.h: activate loser tree variant
534         * include/parallel/quicksort.h: made omp_dynamic-safe
535         * include/parallel/compiletime_settings.h: settings overridable
536         * include/parallel/equally_split.h: made omp_dynamic-safe
537         * include/parallel/omp_loop_static.h: made omp_dynamic-safe
538         * include/parallel/random_shuffle.h: made omp_dynamic-safe
539         * include/parallel/balanced_quicksort.h: made omp_dynamic-safe
540         * include/parallel/set_operations.h: made omp_dynamic-safe
541         * include/parallel/unique_copy.h: made omp_dynamic-safe
542         * include/parallel/multiway_mergesort.h: made omp_dynamic-safe
543         * include/parallel/search.h: made omp_dynamic-safe
544         * include/parallel/partition.h: made omp_dynamic-safe
545         * include/parallel/partial_sum.h: made omp_dynamic-safe
546         * include/parallel/find.h: made omp_dynamic-safe
547         * include/parallel/omp_loop.h: made omp_dynamic-safe
548         * include/parallel/losertree.h: avoid default constructor
549
550 2007-11-21  Jonathan Wakely  <jwakely.gcc@gmail.com>
551
552         * docs/html/17_intro/C++STYLE: Fix typos.
553
554 2007-11-20  Benjamin Kosnik  <bkoz@redhat.com>
555
556         * docs/html/documentation.html: Validate. Add links to index,
557         correct broken links.
558         * docs/html/17_intro/C++STYLE: Add bits.
559         * docs/html/17_intro/configury.html: Correct, update.
560         * docs/html/17_intro/api.html: Correct HTML.
561
562         * include/bits/stl_algobase.h: Adjust comment.
563         
564 2007-11-20  Richard Sandiford  <rsandifo@nildram.co.uk>
565
566         * testsuite/ext/throw_allocator/variadic_construct.cc: Add
567         dg-require-time.
568
569 2007-11-20  Paolo Carlini  <pcarlini@suse.de>
570
571         * include/bits/functional_hash.h: Do not include ext/numeric_traits.h.
572         * include/tr1/functional_hash.h: Likewise.
573         * include/std/functional: Include ext/type_traits.h.
574         * include/tr1/functional: Likewise.
575
576 2007-11-20  Paolo Carlini  <pcarlini@suse.de>
577
578         * include/tr1_impl/functional_hash.h
579         (hash<long double>::operator()(long double)): Only declare.
580         * src/hash.cc: Define here.
581         * config/abi/pre/gnu.ver: Adjust exports.
582         * include/tr1/functional: Do not include <cmath>.
583         * include/std/functional: Likewise.
584
585         * include/std/functional: Include <new>.
586
587 2007-11-18  Paolo Carlini  <pcarlini@suse.de>
588
589         * include/tr1/type_traits (_DEFINE_SPEC_BODY): Remove.
590         (_DEFINE_SPEC_0_HELPER): Rename to _DEFINE_SPEC_HELPER.
591         (_DEFINE_SPEC): Simplify; adjust uses.
592
593 2007-11-18  Paolo Carlini  <pcarlini@suse.de>
594
595         * include/tr1_impl/type_traits (is_reference, is_function,
596         remove_cv, is_member_pointer, remove_reference): Declare.
597         * include/tr1_impl/type_traitsfwd.h: Remove.
598         * include/Makefile.am: Adjust.
599         * include/Makefile.in: Regenerate.
600
601 2007-11-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
602
603         * docs/html/17_intro/howto.html, docs/html/21_strings/howto.html,
604         docs/html/22_locale/codecvt.html, docs/html/23_containers/howto.html,
605         docs/html/27_io/howto.html, docs/html/ext/howto.html,
606         docs/html/debug.html,  docs/html/install.html,
607         docs/html/faq/index.html: Fix typos and anachronisms.
608
609 2007-11-16  Paolo Carlini  <pcarlini@suse.de>
610
611         * include/bits/stl_algobase.h (struct __lexicographical_compare):
612         Move to namespace std.
613         (__lexicographical_compare_aux<>(_II1, _II1, _II2, _II2)): Add.
614         (lexicographical_compare<>(_II1, _II1, _II2, _II2)): Call the latter.
615
616 2007-11-16  Paolo Carlini  <pcarlini@suse.de>
617
618         * include/bits/stl_algobase.h (struct __lexicographical_compare): Add.
619         (lexicographical_compare<>(_II1, _II1, _II2, _II2)): Use it.
620         (lexicographical_compare(const unsigned char*, const unsigned char*,
621         const unsigned char*, const unsigned char*),
622         lexicographical_compare(const char*, const char*, const char*,
623         const char*)): Remove.
624         * include/ext/numeric_traits.h (__numeric_traits_floating<>::
625         __is_signed): Add.
626
627 2007-11-16  Paolo Carlini  <pcarlini@suse.de>
628
629         * src/locale_facets.cc: Fix typo in Copyright.
630
631 2007-11-16  Paolo Carlini  <pcarlini@suse.de>
632
633         * include/bits/locale_facets.tcc (__verify_grouping): Move...
634         * src/locale_facets.cc: ... here.
635         * config/abi/pre/gnu.ver: Update exports.
636
637 2007-11-15  Paolo Carlini  <pcarlini@suse.de>
638
639         * include/bits/istream.tcc (basic_istream<>::sentry::
640         sentry(basic_istream<>&, bool)): Explicitly convert to bool.
641         * include/bits/locale_facets.tcc (num_put<>::_M_insert_int(_OutIter,
642         ios_base&, _CharT, _ValueT)): Likewise.
643         * include/std/ostream (basic_ostream<>::sentry::~sentry): Likewise.
644
645 2007-11-15  Paolo Carlini  <pcarlini@suse.de>
646
647         PR libstdc++/34105
648         * include/bits/stl_algobase.h: Do not include <bits/algorithmfwd.h>.
649         (lexicographical_compare(const unsigned char*, const unsigned char*,
650         const unsigned char*, const unsigned char*),
651         lexicographical_compare(const char*, const char*, const char*,
652         const char*)): Move to namespace (std, _GLIBCXX_STD_P).
653         * include/parallel/algobase.h: Do not include <bits/algorithmfwd.h>.
654         (equal): Move after mismatch.
655         * include/bits/stl_heap.h (is_heap, is_heap_until): Reorder.
656         * include/bits/char_traits.h: Include <bits/stl_algobase.h> instead
657         of <bits/algorithmfwd.h>.
658         * include/bits/stl_algo.h: Include first <bits/algorithmfwd.h>.
659         * include/bits/algorithmfwd.h (lexicographical_compare): Do not
660         declare overloads.
661         * include/parallel/partition.h: Include <parallel/random_number.h>.
662         * testsuite/util/testsuite_abi.cc: Include <algorithm>.
663
664 2007-11-14  Johannes Singler  <singler@ira.uka.de>
665
666       * include/parallel/multiway_merge.h: More robust finding of an
667         arbitrary existing element inside the input sequences.
668       * include/bits/stl_algo.h: Fix typo to actually call appropriate
669         sequential version.
670
671 2007-11-13  Benjamin Kosnik  <bkoz@redhat.com>
672
673         * docs/html/documentation.html: First pass at unified table of contents.
674         * docs/html/abi.html: Move...
675         * docs/html/17_intro/abi.html: ...here.
676         * docs/html/17_intro/porting-howto.html: Update, edit, put
677         resulting pieces into...
678         * docs/html/17_intro/api.html: New.
679         * docs/html/17_intro/c++0x_status.html: New.
680         * docs/html/17_intro/CHECKLIST: Move to...
681         * docs/html/17_intro/c++1998_status.html: ...here.
682         * docs/html/ext/tr1.html: Move ...
683         * docs/html/17_intro/tr1_status.html: ...here.
684         * docs/html/debug_mode.html: Move...
685         * docs/html/ext/debug_mode.html: ...here.
686         * docs/html/parallel_mode.html: Move...
687         * docs/html/ext/parallel_mode.html: ...here
688         * docs/html/17_intro/BUGS: Remove.
689         * docs/html/17_intro/concept_check.diff: Remove.
690         * docs/html/17_intro/HEADER_POLICY: Remove.
691         * docs/html/17_intro/headers_cc.txt: Remove.
692         * docs/html/17_intro/PROBLEMS: Remove.
693         * docs/html/17_intro/RELEASE-NOTES: Remove.
694         * docs/html/explanations.html: Remove.
695         * docs/html/makedoc.awk: Remove.
696         * docs/html/faq/index.txt: Remove. HTML only.
697         * /docs/html/Makefile: Remove.
698         
699         * docs/html/17_intro/configury.html: Editing, updating,
700         consistency check with doxygen conventions. Change libstdc++-v3 to
701         libstdc++.      
702         * docs/html/17_intro/howto.html: Same.
703         * docs/html/17_intro/license.html: Same.
704         * docs/html/17_intro/porting.html: Same.
705         * docs/html/18_support/howto.html: Same.
706         * docs/html/19_diagnostics/howto.html: Same.
707         * docs/html/20_util/allocator.html: Same.
708         * docs/html/20_util/howto.html: Same.
709         * docs/html/21_strings/howto.html: Same.
710         * docs/html/22_locale/codecvt.html: Same.
711         * docs/html/22_locale/ctype.html: Same.
712         * docs/html/22_locale/howto.html: Same.
713         * docs/html/22_locale/messages.html: Same.
714         * docs/html/23_containers/howto.html: Same.
715         * docs/html/24_iterators/howto.html: Same.
716         * docs/html/25_algorithms/howto.html: Same.
717         * docs/html/26_numerics/howto.html: Same.
718         * docs/html/27_io/howto.html: Same.
719         * docs/html/configopts.html: Same.
720         * docs/html/debug.html: Same.
721         * docs/html/ext/ballocator_doc.html: Same.
722         * docs/html/ext/howto.html: Same.
723         * docs/html/ext/mt_allocator.html: Same.
724         * docs/html/ext/sgiexts.html: Same.
725         * docs/html/faq/index.html: Same.
726         * docs/html/install.html: Same.
727         * docs/html/test.html: Same.
728         
729         * include/bits/c++config: Change _GLIBCXX_DEPRECATED to
730         _GLIBCXX_DEPRECATED_ATTR, _GLIBCXX_VISIBILITY to
731         _GLIBCXX_VISIBILITY_ATTR.       
732         * include/backward/auto_ptr.h: Same.
733         * include/backward/binders.h: Same.
734         * include/bits/stl_function.h: Same.
735         * include/std/memory: Same.
736         * include/std/streambuf: Same.
737         * include/tr1_impl/boost_shared_ptr.h: Same.
738         * src/globals_io.cc: Same.
739         * src/ios_init.cc: Same.
740
741 2007-11-13  Paolo Carlini  <pcarlini@suse.de>
742
743         * include/bits/deque.tcc (deque<>::_M_push_back_aux,
744         _M_push_front_aux): Do not copy unnecessarily to __t_copy.
745
746 2007-11-12  Chris Jefferson  <chris@bubblescope.net>
747             Paolo Carlini  <pcarlini@suse.de>
748
749         * include/bits/stl_deque.h (deque<>::push_back<>(_Args...),
750         deque<>::push_front<>(_Args...), emplace<>(iterator, _Args...),
751         insert(iterator, _Tp&&), _M_push_back_aux<>(_Args&&...),
752         _M_push_front_aux<>(_Args&&...), _M_insert_aux<>(iterator,
753         _Args&&...)): Add.
754         * include/deque/deque.tcc (insert(iterator, value_type&&),
755         emplace<>(iterator, _Args...), _M_push_back_aux<>(_Args&&...),
756         _M_push_front_aux<>(_Args&&...), _M_insert_aux<>(iterator,
757         _Args&&...)): Define.
758         (_M_insert_aux(iterator, size_type, const value_type&),
759         _M_insert_aux<>(iterator, _ForwardIterator, _ForwardIterator,
760         size_type)): Use _GLIBCXX_MOVE3, _GLIBCXX_MOVE_BACKWARD3,
761         __uninitialized_move*, __uninitialized_fill_move,
762         __uninitialized_copy_move, when possible.
763         * include/bits/stl_uninitialized.h (__uninitialized_copy_copy,
764         __uninitialized_fill_copy, __uninitialized_copy_fill): Remove.
765         (__uninitialized_copy_move, __uninitialized_move_copy,
766         __uninitialized_move_fill, __uninitialized_fill_move): Add.
767         * include/debug/deque (deque<>::push_back<>(_Args...),
768         deque<>::push_front<>(_Args...), emplace<>(iterator, _Args...),
769         insert(iterator, _Tp&&)): Add.
770         * testsuite/23_containers/deque/modifiers/moveable.cc: Enable.
771         * testsuite/23_containers/deque/capacity/moveable.cc: Likewise.
772         * testsuite/23_containers/deque/cons/moveable.cc: Likewise.
773         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
774         Adjust dg-error line numbers.
775         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
776         Likewise.
777         * testsuite/23_containers/deque/requirements/dr438/
778         constructor_1_neg.cc: Likewise.
779         * testsuite/23_containers/deque/requirements/dr438/
780         constructor_2_neg.cc: Likewise.
781
782         * include/debug/vector (vector<>::insert(iterator, _Tp&&)): Minor
783         tweak, prefer std::move.
784
785 2007-11-11  Howard Hinnant  <hhinnant@apple.com>
786
787         * include/bits/stl_pair.h (pair<>::pair<>(_U1&&, _Arg0&&,
788         _Args&&...)): Add.
789
790 2007-11-11  Paolo Carlini  <pcarlini@suse.de>
791
792         * include/bits/stl_list.h (list<>::_M_create_node<>(_Args&&...),
793         _M_insert<>(iterator, _Args&&...), push_front<>(_Args&&...),
794         push_back<>(_Args&&...)): Add.
795         (list<>::emplace<>(iterator, _Args&&...), insert(iterator,
796         value_type&&)): Declare.
797         (splice(iterator, list&&), splice(iterator, list&&, iterator),
798         splice(iterator, list&&, iterator, iterator), merge(list&&),
799         merge(list&&, _StrictWeakOrdering)): Add C++0x signatures.
800         * include/bits/list.tcc (list<>::emplace<>(iterator, _Args&&...),
801         insert(iterator, value_type&&)): Define.
802         * include/debug/list (list<>::emplace<>(iterator, _Args&&...),
803         insert(iterator, value_type&&)): Add.
804         (splice(iterator, list&&), splice(iterator, list&&, iterator),
805         splice(iterator, list&&, iterator, iterator), merge(list&&),
806         merge(list&&, _StrictWeakOrdering)): Add C++0x signatures, use
807         _GLIBCXX_MOVE.
808         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
809         Likewise.
810         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
811         Likewise.
812         * testsuite/23_containers/list/requirements/dr438/
813         constructor_1_neg.cc: Likewise.
814         * testsuite/23_containers/list/requirements/dr438/
815         constructor_2_neg.cc: Likewise.
816
817 2007-11-09  Paolo Carlini  <pcarlini@suse.de>
818
819         * include/bits/stl_deque.h (deque<>::operator=(deque&&)): Implement
820         resolution of DR 675, call clear first.
821         * include/bits/stl_list.h (list<>::operator=(list&&)): Likewise.
822         * include/bits/stl_bvector.h (vector<bool>::operator=(vector&&)):
823         Likewise.
824         * include/bits/stl_vector.h (vector<>::operator=(vector&&)): Likewise.
825         * include/bits/stl_map.h (map<>::operator=(map&&)): Likewise.
826         * include/bits/stl_multimap.h (multimap<>::operator=(multimap&&)):
827         Likewise.
828         * include/bits/stl_multiset.h (multiset<>::operator=(multiset&&)):
829         Likewise.
830         * include/bits/stl_set.h (set<>::operator=(set&&)): Likewise.
831         * include/debug/map.h (map<>::operator=(map&&)): Likewise.
832         * include/debug/set.h (set<>::operator=(set&&)): Likewise.
833         * include/debug/multimap.h (multimap<>::operator=(multimap&&)):
834         Likewise.
835         * include/debug/multiset.h (multiset<>::operator=(multiset&&)):
836         Likewise.
837         * include/debug/deque (deque<>::operator=(deque&&)): Likewise.
838         * include/debug/list (list<>::operator=(list&&)): Likewise. 
839         * include/debug/vector (vector<>::operator=(vector&&)): Likewise.
840         * testsuite/23_containers/multimap/moveable.cc: Adjust.
841         * testsuite/23_containers/multiset/moveable.cc: Likewise.
842         * testsuite/23_containers/set/moveable.cc: Likewise.
843         * testsuite/23_containers/map/moveable.cc: Likewise.
844         * testsuite/20_util/pair/moveable.cc: Likewise.
845         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
846         Adjust dg-error line numbers.
847         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
848         Likewise.
849         * testsuite/23_containers/deque/requirements/dr438/
850         constructor_1_neg.cc: Likewise.
851         * testsuite/23_containers/deque/requirements/dr438/
852         constructor_2_neg.cc: Likewise.
853         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
854         Likewise.
855         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
856         Likewise.
857         * testsuite/23_containers/list/requirements/dr438/
858         constructor_1_neg.cc: Likewise.
859         * testsuite/23_containers/list/requirements/dr438/
860         constructor_2_neg.cc: Likewise.
861         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
862         Likewise.
863         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
864         Likewise.
865         * testsuite/23_containers/vector/requirements/dr438/
866         constructor_1_neg.cc: Likewise.
867         * testsuite/23_containers/vector/requirements/dr438/
868         constructor_2_neg.cc: Likewise.
869
870 2007-11-09  Paolo Carlini  <pcarlini@suse.de>
871
872         PR libstdc++/34032
873         * acinclude.m4 ([GLIBCXX_ENABLE_C99], [GLIBCXX_CHECK_C99_TR1]):
874         Use -std=c++98 instead of the default -std=gnu++98.
875         * configure: Regenerate.
876
877 2007-11-08  Paolo Carlini  <pcarlini@suse.de>
878
879         * config/io/basic_file_stdio.cc (fopen_mode): Add modes missing
880         per DR 596.
881         * testsuite/27_io/basic_filebuf/open/char/4.cc: Extend.
882         * include/std/fstream: Update comment preceding open.
883         * docs/html/ext/howto.html: Update.
884
885 2007-11-08  Paolo Carlini  <pcarlini@suse.de>
886
887         * include/std/type_traits (__decay_selector<_Up, false, false>):
888         Change according to DR 705.
889         * include/bits/stl_pair.h (make_pair(_T1&&, _T2&&)): Change
890         according to DR 706.
891         * include/tr1_impl/tuple: Tweak.
892
893 2007-11-08  Paolo Carlini  <pcarlini@suse.de>
894
895         * include/debug/vector (push_back, emplace): Fix signature typo.
896
897 2007-11-08  Paolo Carlini  <pcarlini@suse.de>
898
899         * include/bits/locale_facets.h (ctype<char>::taple, classic_table):
900         Implement trivial resolution of DR 695 [Ready].
901         * testsuite/22_locale/ctype/dr695.cc: New.
902         * docs/html/ext/howto.html: Update.
903
904 2007-11-08  Paolo Carlini  <pcarlini@suse.de>
905
906         * docs/html/ext/lwg-active.html: Update to Revision R52.
907         * docs/html/ext/lwg-closed.html: Likewise.
908         * docs/html/ext/lwg-defects.html: Likewise.
909         * docs/html/ext/howto.html: Adjust.
910
911 2007-11-07  Paolo Carlini  <pcarlini@suse.de>
912
913         * include/tr1_impl/complex (fabs): In C++0x mode adjust
914         return type per DR 595 [Ready].
915
916 2007-11-07  Paolo Carlini  <pcarlini@suse.de>
917
918         * include/bits/stl_iterator.h (move_iterator<>::pointer): Adjust
919         typedef per DR 680 [Ready].
920
921 2007-11-06  Paolo Carlini  <pcarlini@suse.de>
922
923         * include/bits/vector.tcc (vector<>::_M_insert_aux<>(iterator,
924         _Args&&...)): In C++0x mode do not use temporary copies.
925         (insert(iterator, const value_type&)): Copy to a temporary
926         when not reallocating.
927
928         * include/bits/vector.tcc (insert(iterator, value_type&&)):
929         Minor tweaks in C++0x mode.
930
931 2007-11-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
932
933         * include/tr1_impl/boost_shared_ptr.h: Avoid unnecessary memory
934         barriers in _S_atomic case.
935
936 2007-11-05  Chris Jefferson  <chris@bubblescope.net>
937             Paolo Carlini  <pcarlini@suse.de>
938
939         * include/bits/stl_vector.h (vector<>::push_back<>(_Args...),
940         emplace<>(iterator, _Args...), insert(iterator, _Tp&&),
941         _M_insert_aux<>(iterator, _Args&&...)): Add.
942         * include/bits/vector.tcc (insert(iterator, value_type&&),
943         emplace<>(iterator, _Args...), _M_insert_aux<>(iterator, _Args&&...)):
944         Define.
945         (_M_fill_insert(iterator, size_type, const value_type&),
946         _M_range_insert(iterator, _ForwardIterator, _ForwardIterator,
947         std::forward_iterator_tag)): Use __uninitialized_move_a,
948         _GLIBCXX_MOVE_BACKWARD3 when possible.
949         * include/bits/stl_uninitialized.h (__uninitialized_move_a): Add.
950         * include/debug/vector (vector<>::push_back<>(_Args...),
951         emplace<>(iterator, _Args...), insert(iterator, _Tp&&)): Add.
952         * testsuite/23_containers/vector/modifiers/moveable.cc: Enable.
953         * testsuite/23_containers/vector/resize/moveable.cc: Likewise.
954         * testsuite/23_containers/vector/cons/moveable.cc: Likewise.
955         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
956         Adjust dg-error line numbers.
957         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
958         Likewise.
959         * testsuite/23_containers/vector/requirements/dr438/
960         constructor_1_neg.cc: Likewise.
961         * testsuite/23_containers/vector/requirements/dr438/
962         constructor_2_neg.cc: Likewise.
963
964 2007-11-03  Paolo Carlini  <pcarlini@suse.de>
965             Kai-Uwe Bux  <bux@kubux.net>
966
967         * include/tr1_impl/random (variate_generator<>::min, max,
968         operator()()): Return non-trivial values when _Engine_result_type
969         is a floating point type and result_type is an integer type.
970
971 2007-11-02  Paolo Carlini  <pcarlini@suse.de>
972
973         * include/bits/stl_algo.h (minmax, minmax_element): Add.
974         * include/bits/algorithmfwd.h: Update.
975         * testsuite/25_algorithms/minmax/requirements/
976         explicit_instantiation/2.cc: New.
977         * testsuite/25_algorithms/minmax/requirements/
978         explicit_instantiation/pod.cc: Likewise.
979         * testsuite/25_algorithms/minmax/1.cc: Likewise.
980         * testsuite/25_algorithms/minmax_element/check_type.cc: Likewise.
981         * testsuite/25_algorithms/minmax_element/requirements/
982         explicit_instantiation/2.cc: Likewise.
983         * testsuite/25_algorithms/minmax_element/requirements/
984         explicit_instantiation/pod.cc: Likewise.
985         * testsuite/25_algorithms/minmax_element/1.cc: Likewise.
986         * testsuite/25_algorithms/headers/algorithm/synopsis.cc: Update.
987
988 2007-11-02  Johannes Singler  <singler@ira.uka.de>
989
990         * include/parallel/workstealing.h: Replaced pragma by function
991           call lock.
992         * include/parallel/search.h: Same
993         * include/parallel/partition.h: Same
994         * include/parallel/find.h: Same
995
996 2007-11-01  Janis Johnson  <janis187@us.ibm.com>
997
998         PR testsuite/25352
999         * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
1000         Remove xfail from dg-do and add dg-skip-if.
1001
1002 2007-10-31  Paolo Carlini  <pcarlini@suse.de>
1003
1004         * include/bits/stl_queue.h (queue<>::push(value_type&&)): Replace
1005         with "emplace" version per DR 756.
1006         (priority_queue<>::push(value_type&&)): Likewise.
1007         * include/bits/stl_stack.h (stack<>::push(value_type&&)): Likewise.
1008
1009 2007-10-30  Paolo Carlini  <pcarlini@suse.de>
1010
1011         * include/tr1_impl/random (uniform_int<>::
1012         _M_call(_UniformRandomNumberGenerator&, result_type, result_type,
1013         true_type)): Only declare.
1014         * include/tr1_impl/random.tcc (uniform_int<>::
1015         _M_call(_UniformRandomNumberGenerator&, result_type, result_type,
1016         true_type)): Re-do, unbiased for the currently supported ranges;
1017         add comment.
1018
1019 2007-10-30  Benjamin Kosnik  <bkoz@redhat.com>
1020
1021         * docs/html/ext/pb_ds/multimap_text_insert_timing_test_small.html:
1022         Correct filename.       
1023         * docs/html/ext/pb_ds/multimap_text_find_timing_test_large.html: Same.
1024         * docs/html/ext/pb_ds/
1025         multimap_text_insert_mem_usage_test_small.html: Same.
1026         * docs/html/ext/pb_ds/multimap_text_insert_timing_test_large.html: Same.
1027         * docs/html/ext/pb_ds/
1028         multimap_text_insert_mem_usage_test_large.html: Same.
1029         * docs/html/ext/pb_ds/multimap_text_find_timing_test_small.html: Same.
1030
1031 2007-10-30  Benjamin Kosnik  <bkoz@redhat.com>
1032         
1033         * include/Makefile.am (PCHFLAGS): Remove -Wno-deprecated.
1034         * include/Makefile.in: Regenerate.
1035
1036         * include/std/memory: Remove extraneous include.        
1037
1038 2007-10-29  Benjamin Kosnik  <bkoz@redhat.com>
1039  
1040         * include/bits/c++config (_GLIBCXX_DEPRECATED,
1041         _GLIBCXX_USE_DEPRECATED): New. Adjust comments.
1042         * include/bits/stl_auto_ptr.h: Move...
1043         * includse/backward/auto_ptr.h: ...here.
1044         * include/bits/stl_function.h (binder1st, binder2nd, bind1st,
1045         bind2nd): Move...
1046         * include/backward/binders.h: ...here. Deprecate in C++0x.
1047
1048         * include/tr1_impl/boost_shared_ptr.h: Guard auto_ptr usage.
1049         * include/std/memory: Same.
1050         * include/std/streambuf: Consistent use of _GLIBCXX_USE_DEPRECATED.
1051
1052         * include/backward/strstream: Fix guard macros.
1053         * include/backward/backward_warning.h: Adjust for all new items.
1054
1055         * config/abi/pre/gnu.ver: Export basic_streambuf::stossc.
1056         
1057         * include/Makefile.am (backward_headers): Adjust.
1058         * include/Makefile.in: Regenerate.
1059         * configure: Regenerate.
1060
1061 2007-10-29  Benjamin Kosnik  <bkoz@redhat.com>
1062
1063         * include/Makefile.am (ext_compat_headers): New.
1064         * include/Makefile.in: Regenerate.
1065         * configure: Regenerate.
1066
1067 2007-10-28  Paolo Carlini  <pcarlini@suse.de>
1068
1069         * include/bits/stl_algobase.h (_GLIBCXX_MOVE3,
1070         _GLIBCXX_MOVE_BACKWARD3): Add.
1071         * include/bits/stl_iterator.h (_GLIBCXX_MAKE_MOVE_ITERATOR): Add.
1072         * include/bits/vector.tcc (vector<>::reserve): Use the latter.
1073         (vector<>::erase): Use _GLIBCXX_MOVE3.
1074         * include/bits/deque.tcc (deque<>::erase): Use _GLIBCXX_MOVE3
1075         and _GLIBCXX_MOVE_BACKWARD3.
1076         * testsuite/23_containers/vector/modifiers/erase/moveable.cc: New.
1077         * testsuite/23_containers/vector/capacity/reserve/moveable.cc: New.
1078         * testsuite/23_containers/deque/modifiers/erase/moveable.cc: New.
1079
1080 2007-10-28  Paolo Carlini  <pcarlini@suse.de>
1081
1082         * include/bits/stl_uninitialized.h (uninitialized_copy): Use
1083         ::new and value_type per the letter of the standard.
1084         * testsuite/20_util/specialized_algorithms/uninitialized_copy/
1085         move_iterators/1.cc: New.
1086
1087         * testsuite/20_util/specialized_algorithms/16505.cc: Move to...
1088         * testsuite/20_util/specialized_algorithms/uninitialized_fill_n/
1089         16505.cc: ... here.
1090         * testsuite/20_util/specialized_algorithms/32158.cc: Move to...
1091         * testsuite/20_util/specialized_algorithms/uninitialized_fill/
1092         32158.cc: ... here.
1093
1094         * include/bits/stl_construct.h (_Construct(_T1*)): Remove, unused.
1095
1096 2007-10-27  Paolo Carlini  <pcarlini@suse.de>
1097
1098         * include/bits/stl_algobase.h (struct __miter_base): Add.
1099         (__copy_move_a2, __copy_move_backward_a2): Add.
1100         (copy, copy_backward, move, move_backward): Adjust, call *a2 helpers.
1101         * include/bits/cpp_type_traits.h (struct __is_move_iterator): Add.
1102         * include/bits/streambuf_iterator.h (__copy_move_a<>): Rename
1103         to __copy_move_a2.
1104         * include/std/streambuf (friend __copy_move_a<>): Likewise.
1105         * testsuite/25_algorithms/copy/move_iterators/1.cc: New.
1106         * testsuite/25_algorithms/copy_backward/move_iterators/1.cc: Likewise.
1107
1108         * include/bits/stl_iterator.h (__normal_iterator<>::_Iterator_type):
1109         Rename to iterator_type.
1110
1111 2007-10-26  Paolo Carlini  <pcarlini@suse.de>
1112
1113         * include/ext/throw_allocator.h (throw_allocator<>::
1114         construct<>(pointer, _Args&&...)): Add.
1115         * include/ext/pool_allocator.h (__pool_alloc<>::
1116         construct<>(pointer, _Args&&...)): Likewise.
1117         (construct(pointer, const _Tp&)): Cast pointer to void*. 
1118         * include/ext/bitmap_allocator.h (bitmap_allocator<>::
1119         construct<>(pointer, _Args&&...)): Add.
1120         (construct(pointer, const _Tp&)): Cast pointer to void*.
1121         * include/ext/new_allocator.h (new_allocator<>::
1122         construct<>(pointer, _Args&&...)): Add.
1123         (construct(pointer, const _Tp&)): Cast pointer to void*.
1124         * include/ext/malloc_allocator.h (malloc_allocator<>::
1125         construct<>(pointer, _Args&&...)): Add.
1126         (construct(pointer, const _Tp&)): Cast pointer to void*.
1127         * include/ext/array_allocator.h (array_allocator<>::
1128         construct<>(pointer, _Args&&...)): Add.
1129         (construct(pointer, const _Tp&)): Cast pointer to void*.
1130         * include/ext/mt_allocator.h (__mt_alloc<>::
1131         construct<>(pointer, _Args&&...)): Add.
1132         (construct(pointer, const _Tp&)): Cast pointer to void*.
1133         * testsuite/util/testsuite_allocator.h (tracker_allocator<>::
1134         construct<>(pointer, _Args&&...)): Add.
1135         (construct(pointer, const _Tp&)): Cast pointer to void*.
1136         (uneq_allocator<>::construct<>(pointer, _Args&&...)): Add.
1137         (construct(pointer, const _Tp&)): Cast pointer to void*.
1138         * testsuite/ext/mt_allocator/variadic_construct.cc: New.
1139         * testsuite/ext/new_allocator/variadic_construct.cc: Likewise.
1140         * testsuite/ext/throw_allocator/variadic_construct.cc: Likewise.
1141         * testsuite/ext/malloc_allocator/variadic_construct.cc: Likewise.
1142         * testsuite/ext/pool_allocator/variadic_construct.cc: Likewise.
1143         * testsuite/ext/bitmap_allocator/variadic_construct.cc: Likewise.
1144         * testsuite/ext/array_allocator/variadic_construct.cc: Likewise.
1145
1146 2007-10-26  Benjamin Kosnik  <bkoz@redhat.com>
1147
1148         * include/std/unordered_map: Fix for parallel mode.
1149         * include/std/unordered_set: Same.      
1150
1151 2007-10-25  Andreas Tobler  <a.tobler@schweiz.org>
1152
1153         * include/Makefile.am (parallel_headers): Remove timing.h.
1154         * include/Makefile.in: Regenerate.
1155
1156 2007-10-25  Johannes Singler  <singler@ira.uka.de>
1157
1158       * include/parallel/multiway_merge.h: Removed Timing<inactive_tag>
1159       * include/parallel/random_shuffle.h: Same
1160       * include/parallel/set_operations.h: Same
1161       * include/parallel/tree.h: Same
1162       * include/parallel/multiway_mergesort.h: Same
1163       * include/parallel/timing.h: Removed completely
1164
1165 2007-10-25  Paolo Carlini  <pcarlini@suse.de>
1166
1167         * include/bits/stl_algo.h (__lg<>(_Size)): Slightly tweak.
1168         (__lg(int), __lg(long), __lg(long long)): Add, overloads
1169         exploiting __builtin_clz*.
1170
1171 2007-10-24  Paolo Carlini  <pcarlini@suse.de>
1172
1173         * include/tr1_impl/array (_M_instance): Align naturally.
1174         * testsuite/ext/array_allocator/1.cc: Use ext/vstring,
1175         more solid than our current basic_string vs alignment.
1176         * testsuite/ext/array_allocator/2.cc: Likewise.
1177         * testsuite/ext/array_allocator/3.cc: Likewise.
1178
1179 2007-10-20  Paolo Carlini  <pcarlini@suse.de>
1180
1181         * include/bits/stl_move.h (_GLIBCXX_MOVE): Wrap in parentheses.
1182         * include/bits/stl_algobase.h (__niter_base<>): Pass iterators
1183         by value, as everywhere else.
1184
1185 2007-10-20  Paolo Carlini  <pcarlini@suse.de>
1186
1187         * include/tr1_impl/random
1188         (uniform_int<>::_M_call(_UniformRandomNumberGenerator&, result_type,
1189         result_type, true_type)): Fix small thinko.
1190
1191 2007-10-19  Paolo Carlini  <pcarlini@suse.de>
1192
1193         PR libstdc++/33815
1194         * include/tr1_impl/random
1195         (uniform_int<>::_M_call(_UniformRandomNumberGenerator&, result_type,
1196         result_type, true_type)): Avoid the modulo (which uses the low-order
1197         bits).
1198
1199 2007-10-19  Paolo Carlini  <pcarlini@suse.de>
1200
1201         * include/bits/stl_algobase.h (struct __cm_assign,
1202         struct __copy_move, struct __copy_move_backward, move,
1203         move_backward): Add.
1204         (struct __copy, struct __copy_backward): Remove.
1205         (__copy_aux, __copy_backward_aux): Rename to...
1206         (__copy_move_a, __copy_move_backward_a): ... this, and
1207         adjust calls.
1208         (copy, copy_backward): Adjust calls.
1209         * include/bits/streambuf_iterator.h (__copy_aux): Rename
1210         to ...
1211         (__copy_move_a): ... this; add bool template parameter.
1212         * include/std/streambuf: Adjust friend declarations.
1213         * testsuite/util/testsuite_iterators.h
1214         (WritableObject<>::operator=(U&&)): Add.
1215         * testsuite/25_algorithms/move/1.cc: New.
1216         * testsuite/25_algorithms/move/requirements/
1217         explicit_instantiation/2.cc: Likewise.
1218         * testsuite/25_algorithms/move/requirements/
1219         explicit_instantiation/pod.cc: Likewise.
1220         * testsuite/25_algorithms/move_backward/1.cc: Likewise.
1221         * testsuite/25_algorithms/move_backward/requirements/
1222         explicit_instantiation/2.cc: Likewise.
1223         * testsuite/25_algorithms/move_backward/requirements/
1224         explicit_instantiation/pod.cc: Likewise.
1225
1226 2007-10-18  Kaz Kojima  <kkojima@gcc.gnu.org>
1227
1228         * testsuite/tr1/5_numerical_facilities/special_functions/
1229         05_comp_ellint_2/check_nan.cc: Add -mieee for sh.
1230
1231 2007-10-18  Paolo Carlini  <pcarlini@suse.de>
1232
1233         * include/bits/allocator.h (struct __alloc_neq): Add.
1234         * include/bits/stl_list.h (list<>::_M_check_equal_allocators): Use it.
1235
1236 2007-10-18  Benjamin Kosnik  <bkoz@redhat.com>
1237
1238         * include/ext/hash_map: To...
1239         * include/backward/hash_map: ...here. Remove debug mode.
1240         * include/ext/hash_set: To...
1241         * include/backward/hash_set: ...here. Remove debug mode.
1242         * include/ext/hash_fun.h: To...
1243         * include/backward/hash_fun.h: ...here.
1244         * include/ext/hashtable.h: To...
1245         * include/backward/hashtable.h: ...here.
1246         
1247         * include/bits/c++config: Remove __gnu_cxx namespace from debug mode.
1248         * include/debug/debug.h: Same.
1249                 
1250         * include/debug/hash_map: Remove.
1251         * include/debug/hash_multimap.h: Remove.
1252         * include/debug/hash_set.h: Remove.
1253         * include/debug/hash_set: Remove.
1254         * include/debug/hash_multiset.h: Remove.
1255         * include/debug/hash_map.h: Remove.
1256         
1257         * include/Makefile.am (ext_headers): Move hash_set, hash_map to
1258         backward.
1259         (debug_headers): Remove hash_map, hash_set, hash_map.h,
1260         hash_map.h, hash_multiset.h, hash_multimap.h.   
1261         * include/Makefile.in: Regenerate.
1262
1263         * docs/html/debug.html: Update.
1264         * docs/html/ext/howto.html: Same.
1265         * docs/html/faq/index.html: Same.
1266         * docs/doxygen/Intro.3: Same.
1267         * docs/doxygen/user.cfg.in: Adjust includes.
1268         * testsuite/ext/hash_map: Move to...
1269         * testsuite/backward/hash_map: ...here.
1270         * testsuite/ext/hash_set: Move to...
1271         * testsuite/backward/hash_set: ...here.
1272         
1273 2007-10-18  Benjamin Kosnik  <bkoz@redhat.com>
1274         
1275         Removal of pre-ISO C++ items from include/backwards.
1276         * include/Makefile.am (backward_headers): Remove all but strstream,
1277         backward_warning.h.
1278         * include/Makefile.in: Regenerate.
1279         * include/backward/new.h: Remove.
1280         * include/backward/iterator.h: Same.
1281         * include/backward/alloc.h: Same.
1282         * include/backward/set.h: Same.
1283         * include/backward/hashtable.h: Same.
1284         * include/backward/hash_set.h: Same.
1285         * include/backward/fstream.h: Same.
1286         * include/backward/tempbuf.h: Same.
1287         * include/backward/istream.h: Same.
1288         * include/backward/bvector.h: Same.
1289         * include/backward/stack.h: Same.
1290         * include/backward/rope.h: Same.
1291         * include/backward/complex.h: Same.
1292         * include/backward/ostream.h: Same.
1293         * include/backward/heap.h: Same.
1294         * include/backward/iostream.h: Same.
1295         * include/backward/function.h: Same.
1296         * include/backward/multimap.h: Same.
1297         * include/backward/pair.h: Same.
1298         * include/backward/stream.h: Same.
1299         * include/backward/iomanip.h: Same.
1300         * include/backward/slist.h: Same.
1301         * include/backward/tree.h: Same.
1302         * include/backward/vector.h: Same.
1303         * include/backward/deque.h: Same.
1304         * include/backward/multiset.h: Same.
1305         * include/backward/defalloc.h: Same.
1306         * include/backward/list.h: Same.
1307         * include/backward/map.h: Same.
1308         * include/backward/algobase.h: Same.
1309         * include/backward/hash_map.h: Same.
1310         * include/backward/algo.h: Same.
1311         * include/backward/queue.h: Same.
1312         * include/backward/streambuf.h: Same.
1313         * testsuite/backward/header_hash_set_h.cc: Same.
1314         * testsuite/backward/header_slist_h.cc: Same.
1315         * testsuite/backward/header_hash_map_h.cc: Same.
1316         * testsuite/backward/header_tempbuf_h.cc: Same.
1317         * testsuite/backward/header_deque_h.cc: Same.
1318         * testsuite/backward/header_rope_h.cc: Same.
1319         * testsuite/backward/header_iterator_h.cc: Same.
1320         * testsuite/backward/header_hashtable_h.cc: Same.
1321
1322 2007-10-18  Benjamin Kosnik  <bkoz@redhat.com>
1323
1324         PR libstdc++/30085
1325         * include/debug/unordered_map: New.
1326         * include/debug/unordered_set: New.
1327         * include/debug/safe_association.h: New.        
1328         * include/std/unordered_map: Include debug header if _GLIBCXX_DEBUG.
1329         * include/std/unordered_set: Same.
1330         * include/Makefile.am (debug_headers): Add unordered_map,
1331         unordered_set, safe_association.h.
1332         * include/Makefile.in: Regenerate.
1333         * testsuite/23_containers/unordered_map/requirements/debug.cc: New.
1334         * testsuite/23_containers/unordered_multimap/requirements/
1335         debug.cc: New.
1336         * testsuite/23_containers/unordered_set/requirements/debug.cc: New.
1337         * testsuite/23_containers/unordered_multiset/requirements/
1338         debug.cc: New.
1339
1340 2007-10-18  Benjamin Kosnik  <bkoz@redhat.com>
1341         
1342         * testsuite/util/native_type/assoc/native_hash_multimap.hpp: Remove
1343         hash_map include.
1344
1345 2007-10-18  Paolo Carlini  <pcarlini@suse.de>
1346
1347         PR libstdc++/33807
1348         * include/bits/allocator.h (operator==(const allocator<_Tp>&,
1349         const allocator<_Tp>&), operator!=(const allocator<_Tp>&,
1350         const allocator<_Tp>&)): Add.
1351         * testsuite/20_util/allocator/33807.cc: New.
1352
1353 2007-10-17  Paolo Carlini  <pcarlini@suse.de>
1354
1355         * include/bits/cpp_type_traits.h (__is_byte): Add.
1356         * include/bits/stl_algobase.h (struct __fill, struct __fill_n,
1357         __fill_aux, __fill_n_aux): Remove.
1358         (__fill_a, __fill_n_a): Add.
1359         (fill, fill_n): Adjust.
1360
1361 2007-10-17  Paolo Carlini  <pcarlini@suse.de>
1362
1363         * include/bits/stl_iterator.h (back_insert_iterator<>::operator=
1364         (typename _Container::value_type&&), front_insert_iterator<>::
1365         operator=(typename _Container::value_type&&), insert_iterator<>::
1366         operator=(typename _Container::value_type&&)): Add.
1367
1368         * include/bits/stl_iterator.h (insert_iterator<>::operator=
1369         (typename _Container::const_reference)): Fix typo in signature.
1370
1371 2007-10-17  Paolo Carlini  <pcarlini@suse.de>
1372
1373         * include/tr1_impl/array: Correct macro guarding cbegin, cend,
1374         crbegin, crend.
1375         * include/tr1_impl/hashtable: Likewise.
1376
1377 2007-10-16  Paolo Carlini  <pcarlini@suse.de>
1378
1379         * include/ext/vstring.h (__versa_string<>::front, 
1380         __versa_string<>::back): Add.
1381         * testsuite/ext/vstring/element_access/char/front_back.cc: New.
1382         * testsuite/ext/vstring/element_access/wchar_t/front_back.cc: Likewise.
1383
1384 2007-10-16  Paolo Carlini  <pcarlini@suse.de>
1385
1386         * include/bits/stl_queue.h (queue<>::queue(_Sequence&&),
1387         queue<>::queue(queue&&), queue<>::operator=(queue&&),
1388         queue<>::push(value_type&&), queue<>::swap(queue&&),
1389         swap(queue<>&, queue<>&), swap(queue<>&&, queue<>&),
1390         swap(queue<>&, queue<>&&), priority_queue<>::
1391         priority_queue(const _Compare&, _Sequence&&),
1392         priority_queue<>::priority_queue(_InputIterator, _InputIterator,
1393         const _Compare&, _Sequence&&),
1394         priority_queue<>::priority_queue(priority_queue&&),
1395         priority_queue<>::operator=(priority_queue&&),
1396         priority_queue<>::push(value_type&&),
1397         priority_queue<>::swap(priority_queue&&),
1398         swap(priority_queue<>&, priority_queue<>&),
1399         swap(priority_queue<>&&, priority_queue<>&),
1400         swap(priority_queue<>&, priority_queue<>&&)): Add.
1401         * include/bits/stl_stack.h (stack<>::stack(_Sequence&&),
1402         stack<>::push(value_type&&), stack<>::swap(stack&&),
1403         swap(stack<>&, stack<>&), swap(stack<>&&, stack<>&),
1404         swap(stack<>&, stack<>&&)): Add.
1405         * testsuite/23_containers/queue/moveable.cc: New.
1406         * testsuite/23_containers/priority_queue/moveable.cc: Likewise.
1407
1408 2007-10-16  Paolo Carlini  <pcarlini@suse.de>
1409
1410         * include/ext/vstring.h (__versa_string<>::
1411         __versa_string(__versa_string&&),
1412         __versa_string<>::operator=(__versa_string&&,
1413         swap(__versa_string<>&&, __versa_string<>&),
1414         swap(__versa_string<>(&, __versa_string<>&&)): Add.
1415         (__versa_string<>::swap(__versa_string&&)): Adjust for C++0x.
1416         * include/ext/sso_string_base.h
1417         (__sso_string_base(__sso_string_base&&)): Add.
1418         (__sso_string_base()): Use _Alloc_hider(_CharT*).
1419         * include/ext/rc_string_base.h (__rc_string_base(__rc_string_base&&)):
1420         Add.
1421         (__rc_string_base()): Use _Alloc_hider(_CharT*).
1422         * include/ext/vstring_util.h (_Alloc_hider::_Alloc_hider(_CharT*)):
1423         Add.
1424         * testsuite/ext/vstring/moveable.cc: Add.
1425
1426         * include/bits/stl_tree.h (_Rb_tree(_Rb_tree&&)): Add.
1427         * include/bits/stl_map.h (map<>::map(map&&)): Forward to the latter.
1428         * include/bits/stl_set.h (set<>::set(set&&)): Likewise.
1429         * include/bits/stl_multimap.h (multimap<>::multimap(multimap&&)):
1430         Likewise.
1431         * include/bits/stl_multiset.h (multiset<>::multiset(multiset&&)):
1432         Likewise.
1433         * include/bits/stl_deque.h (_Deque_base<>::_Deque_base(_Deque_base&&)):
1434         Add.
1435         (deque<>::deque(deque&&)): Forward to the latter.
1436         * include/bits/stl_list.h (_List_base<>::_List_base(_List_base&&)):
1437         Add.
1438         (list<>::list(list&&)): Forward to the latter.
1439         * include/bits/stl_vector.h
1440         (_Vector_base<>::_Vector_base(_Vector_base&&)): Add.
1441         (vector<>::vector(vector&&)): Forward to the latter.
1442         * include/bits/stl_bvector.h
1443         (_Bvector_base<>::_Bvector_base(_Bvector_base&&)): Add.
1444         (vector<bool>::vector(vector&&)): Forward to the latter.
1445
1446         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1447         Adjust dg-error lines.
1448         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1449         Likewise.
1450         * testsuite/23_containers/vector/requirements/dr438/
1451         constructor_1_neg.cc: Likewise.
1452         * testsuite/23_containers/vector/requirements/dr438/
1453         constructor_2_neg.cc: Likewise.
1454         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
1455         Likewise.
1456         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
1457         Likewise.
1458         * testsuite/23_containers/deque/requirements/dr438/
1459         constructor_1_neg.cc: Likewise.
1460         * testsuite/23_containers/deque/requirements/dr438/
1461         constructor_2_neg.cc: Likewise.
1462         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1463         Likewise.
1464         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1465         Likewise.
1466         * testsuite/23_containers/list/requirements/dr438/
1467         constructor_1_neg.cc: Likewise.
1468         * testsuite/23_containers/list/requirements/dr438/
1469         constructor_2_neg.cc: Likewise.
1470
1471 2007-10-15  Paolo Carlini  <pcarlini@suse.de>
1472
1473         * include/debug/set.h (set<>::cbegin, cend, crbegin, crend): Add.
1474         * include/debug/multiset.h (set<>::cbegin, cend, crbegin, crend):
1475         Likewise.
1476         * include/debug/vector (vector<>::cbegin, cend, crbegin, crend):
1477         Likewise.
1478         * include/debug/map.h (map<>::cbegin, cend, crbegin, crend):
1479         Likewise.
1480         * include/debug/deque (deque<>::cbegin, cend, crbegin, crend): 
1481         Likewise.
1482         * include/debug/list (list<>::cbegin, cend, crbegin, crend):
1483         Likewise.
1484         * include/debug/multimap.h (multimap<>::cbegin, cend, crbegin,
1485         crend): Likewise.
1486         * include/tr1_impl/array (array<>::cbegin, cend, crbegin, crend):
1487         Likewise.
1488         * include/ext/vstring.h (__versa_string<>::cbegin, cend, crbegin,
1489         crend): Likewise.
1490         * include/bits/stl_list.h (list<>::cbegin, cend, crbegin, crend):
1491         Likewise.
1492         * include/bits/stl_map.h (map<>::cbegin, cend, crbegin, crend):
1493         Likewise.
1494         * include/bits/stl_set.h (set<>::cbegin, cend, crbegin, crend):
1495         Likewise.
1496         * include/bits/stl_multimap.h (multimap<>::cbegin, cend, crbegin,
1497         crend): Likewise.
1498         * include/bits/stl_vector.h (vector<>::cbegin, cend, crbegin, crend):
1499         Likewise.
1500         * include/bits/stl_deque.h (deque<>::cbegin, cend, crbegin, crend):
1501         Likewise.
1502         * include/bits/stl_multiset.h (multiset<>::cbegin, cend, crbegin,
1503         crend): Likewise.
1504         * include/bits/stl_bvector.h (vector<bool>::cbegin, cend, crbegin,
1505         crend): Likewise.
1506         * include/tr1_impl/hashtable (_Hashtable<>::cbegin, cend): Add. 
1507
1508         * testsuite/ext/vstring/requirements/citerators.cc: Add.
1509         * testsuite/23_containers/unordered_map/requirements/citerators.cc:
1510         Likewise.
1511         * testsuite/23_containers/multimap/requirements/citerators.cc:
1512         Likewise.
1513         * testsuite/23_containers/set/requirements/citerators.cc: Likewise.
1514         * testsuite/23_containers/unordered_multimap/requirements/
1515         citerators.cc: Likewise.
1516         * testsuite/23_containers/unordered_set/requirements/citerators.cc:
1517         Likewise.
1518         * testsuite/23_containers/vector/requirements/citerators.cc: Likewise.
1519         * testsuite/23_containers/vector/bool/requirements/citerators.cc:
1520         Likewise.
1521         * testsuite/23_containers/deque/requirements/citerators.cc: Likewise.
1522         * testsuite/23_containers/multiset/requirements/citerators.cc:
1523         Likewise.
1524         * testsuite/23_containers/list/requirements/citerators.cc: Likewise.
1525         * testsuite/23_containers/unordered_multiset/requirements/
1526         citerators.cc: Likewise.
1527         * testsuite/23_containers/map/requirements/citerators.cc: Likewise.
1528         * testsuite/23_containers/array/requirements/citerators.cc: Likewise.
1529
1530         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1531         Adjust dg-error lines.
1532         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1533         Likewise.
1534         * testsuite/23_containers/vector/requirements/dr438/
1535         constructor_1_neg.cc: Likewise.
1536         * testsuite/23_containers/vector/requirements/dr438/
1537         constructor_2_neg.cc: Likewise.
1538         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
1539         Likewise.
1540         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
1541         Likewise.
1542         * testsuite/23_containers/deque/requirements/dr438/
1543         constructor_1_neg.cc: Likewise.
1544         * testsuite/23_containers/deque/requirements/dr438/
1545         constructor_2_neg.cc: Likewise.
1546         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1547         Likewise.
1548         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1549         Likewise.
1550         * testsuite/23_containers/list/requirements/dr438/
1551         constructor_1_neg.cc: Likewise.
1552         * testsuite/23_containers/list/requirements/dr438/
1553         constructor_2_neg.cc: Likewise.
1554
1555 2007-10-15  Paolo Carlini  <pcarlini@suse.de>
1556
1557         PR libstdc++/33773 (cont)
1558         * testsuite/21_strings/headers/cwchar/macros.cc: Guard with
1559         _GLIBCXX_USE_WCHAR_T, instead.
1560
1561 2007-10-15  Paolo Carlini  <pcarlini@suse.de>
1562
1563         PR libstdc++/33771
1564         PR libstdc++/33773
1565         * testsuite/21_strings/headers/cwchar/macros.cc: Guard test with
1566         _GLIBCXX_HAVE_WCHAR_H.
1567         * testsuite/21_strings/headers/cwctype/macros.cc: Likewise with
1568         _GLIBCXX_HAVE_WCTYPE_H.
1569         * testsuite/17_intro/headers/c++200x/all.cc: Guard inclusions
1570         of <wchar.h> and <wctype.h>.
1571         * testsuite/17_intro/headers/c++200x/all_multiple_inclusion.cc:
1572         Likewise.
1573         * testsuite/17_intro/headers/c++1998/all.cc: Likewise.
1574         * testsuite/17_intro/headers/c++1998/all_multiple_inclusion.cc:
1575         Likewise.
1576
1577 2007-10-14  Paolo Carlini  <pcarlini@suse.de>
1578
1579         * include/bits/stl_algo.h (is_sorted, is_sorted_until): Add.
1580         * include/bits/algorithmfwd.h: Add.
1581         * include/ext/algorithm: Adjust.
1582         * testsuite/25_algorithms/is_sorted/requirements/
1583         explicit_instantiation/2.cc: New.
1584         * testsuite/25_algorithms/is_sorted/requirements/
1585         explicit_instantiation/pod.cc: Likewise.
1586         * testsuite/25_algorithms/is_sorted/1.cc: Likewise.
1587         * testsuite/25_algorithms/is_sorted_until/requirements/
1588         explicit_instantiation/2.cc: Likewise.
1589         * testsuite/25_algorithms/is_sorted_until/requirements/
1590         explicit_instantiation/pod.cc: Likewise.
1591         * testsuite/25_algorithms/is_sorted_until/1.cc: Likewise.
1592         * testsuite/25_algorithms/headers/algorithm/synopsis.cc:
1593         Add is_sorted and is_sorted_until.
1594
1595         * include/bits/stl_heap.h (is_heap_until): Add concept and
1596         debug-mode checks.
1597
1598 2007-10-12  Paolo Carlini  <pcarlini@suse.de>
1599
1600         * include/bits/stl_heap.h (__is_heap_until): Add.
1601         (__is_heap(_RandomAccessIterator, _Distance),
1602         __is_heap(_RandomAccessIterator, _Compare, _Distance)):
1603         Adjust, call the latter.
1604         (is_heap, is_heap_until): Add, call the above.
1605         * include/bits/algorithmfwd.h: Add.
1606         * testsuite/25_algorithms/is_heap/requirements/
1607         explicit_instantiation/2.cc: New.
1608         * testsuite/25_algorithms/is_heap/requirements/
1609         explicit_instantiation/pod.cc: Likewise.
1610         * testsuite/25_algorithms/is_heap/1.cc: Likewise.
1611         * testsuite/25_algorithms/is_heap_until/requirements/
1612         explicit_instantiation/2.cc: Likewise.
1613         * testsuite/25_algorithms/is_heap_until/requirements/
1614         explicit_instantiation/pod.cc: Likewise.
1615         * testsuite/25_algorithms/is_heap_until/1.cc: Likewise.
1616         * testsuite/25_algorithms/headers/algorithm/synopsis.cc:
1617         Add is_heap and is_heap_until.
1618
1619 2007-10-12  Benjamin Kosnik  <bkoz@redhat.com>
1620
1621         * docs/doxygen/user.cfg.in: Scan tr1_impl/hashtable.
1622         * include/tr1_impl/hashtable: Correct comment.
1623
1624         * include/ext/hash_map: Remove extraneous public markers.
1625         * include/ext/hash_set: Same.
1626
1627         * testsuite/25_algorithms/headers/parallel_algorithm.cc: Move
1628         inside algorithm directory.     
1629         * testsuite/25_algorithms/headers/algorithm_parallel_mode.cc: Same.
1630         * testsuite/25_algorithms/headers/parallel_algorithm_mixed1.cc: Same.
1631         * testsuite/25_algorithms/headers/parallel_algorithm_mixed2.cc: Same.
1632         * testsuite/25_algorithms/headers/algorithm/parallel_algorithm.cc:
1633         To this.        
1634         * testsuite/25_algorithms/headers/algorithm/
1635         algorithm_parallel_mode.cc: Same.
1636         * testsuite/25_algorithms/headers/algorithm/
1637         parallel_algorithm_mixed1.cc: Same.
1638         * testsuite/25_algorithms/headers/algorithm/
1639         parallel_algorithm_mixed2.cc: Same.
1640
1641         * testsuite/21_strings/basic_string/requirements/
1642         explicit_instantiation/debug.cc: Remove exception text.
1643         
1644         * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
1645         Fix for debug mode testing.     
1646         * testsuite/23_containers/vector/bool/capacity/29134.cc: Same.
1647         
1648 2007-10-12  Jesper Nilsson  <jesper.nilsson@axis.com>
1649
1650        * testsuite/tr1/5_numerical_facilities/special_functions/
1651        20_riemann_zeta/check_value_neg.c (MAX_ITERATIONS): Add limit
1652        when target is simulator.
1653        * testsuite/tr1/5_numerical_facilities/special_functions/
1654        20_riemann_zeta/check_value_pos.c (MAX_ITERATIONS): Likewise.
1655
1656 2007-10-11  Roger Sayle  <roger@eyesopen.com>
1657
1658         * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add EOVERFLOW for Tru64.
1659         * configure: Regenerate.
1660         * config/os/generic/error_constants.h: Guard.
1661         * testsuite/19_diagnostics/headers/system_error/
1662         types_std_c++0x.cc: Same.
1663
1664 2007-10-11  Benjamin Kosnik  <bkoz@redhat.com>
1665
1666         Convert ext/hash_map, set to tr1/functional, tr1/unordered_map, set.
1667         * include/ext/rope: Use tr1/functional hash instead of ext/hash_fun.h.
1668         * include/ext/pb_ds/detail/standard_policies.hpp: Same.
1669         * include/precompiled/extc++.h: Remove hash_map, hash_set.
1670         * testsuite/util/testsuite_abi.h (__gnu_cxx): Use unordered_map
1671         instead of hash_map. Remove hash specialization for string.
1672         * testsuite/util/testsuite_abi.cc: Include <vector>.
1673         * testsuite/util/native_type/assoc/native_hash_set.hpp: Remove
1674         hash_set code.
1675         * testsuite/util/native_type/assoc/native_hash_map.hpp: Remove
1676         hash_map code.
1677         * testsuite/util/native_type/assoc/native_hash_multimap.hpp:
1678         Change hash_multimap to unordered_multimap.
1679         * testsuite/util/testsuite_common_types.h: Remove hash_map, hash_set.
1680         * testsuite/ext/headers.cc: Same.
1681         * testsuite/17_intro/headers/all_c++200x_compatibility.cc: Remove
1682         hash_map.h, hash_set.h.
1683         * testsuite/17_intro/headers/all.cc: Same.
1684         * testsuite/17_intro/headers/all_pedantic_errors.cc: Same.
1685
1686         * include/ext/pb_ds/detail/standard_policies.hpp: Format.
1687         * testsuite/util/native_type/assoc/native_set.hpp: Same, 
1688         update comment.
1689         * testsuite/util/native_type/assoc/native_map.hpp: Same.
1690         * testsuite/util/native_type/assoc/native_multimap.hpp: Same.
1691         * testsuite/util/performance/assoc/timing/
1692         multimap_insert_test.hpp: Same.
1693         * testsuite/util/performance/assoc/timing/multimap_find_test.hpp: Same.
1694
1695 2007-10-11  Chris Jefferson  <chris@bubblescope.net>
1696             Paolo Carlini  <pcarlini@suse.de>
1697
1698         * include/bits/stl_heap.h (__push_heap, push_heap, __adjust_heap,
1699         make_heap): Use _GLIBCXX_MOVE.
1700         (__pop_heap): Likewise, adjust signature.
1701         (pop_heap): Adjust __pop_heap call.
1702         * include/bits/stl_algo.h (__heap_select): Likewise.
1703         * testsuite/25_algorithms/heap/moveable.cc: Remove dg-require-rvalref.
1704         * testsuite/25_algorithms/partial_sort/moveable.cc: Likewise.
1705
1706 2007-10-11  Paolo Carlini  <pcarlini@suse.de>
1707
1708         PR libstdc++/33734
1709         * include/ext/codecvt_specializations.h (encoding_state::good,
1710         init, destroy): Use cast notation instead of reinterpret_cast.
1711
1712 2007-10-11  Paolo Carlini  <pcarlini@suse.de>
1713
1714         * testsuite/25_algorithms/heap/moveable.cc: Fix and extend.
1715
1716 2007-10-11  Danny Smith  <dannysmith@users.sourceforge.net>
1717
1718         PR libstdc++/33578
1719         * include/parallel/compatibility.h.  Use POSIX sched_yield on
1720         __CYGWIN__ 
1721         (Sleep): Add prototype for __MINGW32__.
1722
1723 2007-10-10  Jason Merrill  <jason@redhat.com>
1724
1725         * libsupc++/guard.cc (struct mutex_wrapper): Move into
1726         anonymous namespace.
1727
1728 2007-10-10  Paolo Carlini  <pcarlini@suse.de>
1729
1730         * include/debug/list (list<>::list(list&&)): Fix.
1731         * include/debug/vector (vector<>::vector(vector&&)): Likewise.
1732         * include/debug/deque (deque<>::deque(deque&&)): Likewise.
1733         * include/debug/set.h (set<>::set(set&&)): Likewise.
1734         * include/debug/map.h (map<>::map(map&&)): Likewise.
1735         * include/debug/multiset.h (multiset<>::multiset(multiset&&)):Likewise.
1736         * include/debug/multimap.h (multimap<>::multimap(multimap&&)):Likewise.
1737
1738 2007-10-10  Benjamin Kosnik  <bkoz@redhat.com>
1739
1740         PR libstdc++/33633
1741         * include/debug/hash_multimap.h: Change _GLIBCXX_EXT to _GLIBCXX_EXT_D.
1742         * include/debug/hash_set.h: Same.
1743         * include/debug/hash_multiset.h: Same.
1744         * include/debug/hash_map.h: Same.
1745
1746 2007-10-10  Benjamin Kosnik  <bkoz@redhat.com>
1747
1748         * include/parallel/losertree.h (loser_tree_traits_unguarded): To 
1749         loser_tree_unguarded_traits.
1750         * include/parallel/multiway_merge.h (__gnu_parallel): Same.
1751
1752 2007-10-10  Paolo Carlini  <pcarlini@suse.de>
1753             Chris Fairles  <chris.fairles@gmail.com>
1754
1755         * include/bits/stl_algobase.h (swap): Move...
1756         * include/bits/stl_move.h: ... here.
1757         * include/bits/stl_pair.h (pair<>::pair(_U1&&, _U2&&),
1758         pair<>::pair(pair<>&&), pair<>::operator=(pair<>&&),
1759         pair<>::swap(pair&&), swap(&, &), swap(&&, &), swap(&, &&),
1760         make_pair(_T1&&, _T2&&)): Add.
1761         * testsuite/20_util/pair/swap.cc: Add.
1762
1763 2007-10-09  Wolfgang Bangerth  <bangerth@dealii.org>
1764
1765         PR libstdc++/33485 continued.
1766         * include/parallel/multiway_mergesort.h: Use __builtin_alloca.
1767         
1768 2007-10-09  Zhou Drangon  <drangon.mail@gmail.com>
1769
1770         PR libstdc++/33682
1771         * libsupc++/guard.cc: Make single conditional variable
1772         implementation dependent to __GTHREAD_HAS_COND.
1773
1774 2007-10-09  Benjamin Kosnik  <bkoz@redhat.com>
1775
1776         PR libstdc++/33489 continued.           
1777         * include/parallel/features.h (_GLIBCXX_LOSER_TREE): Set to zero.
1778         (_GLIBCXX_LOSER_TREE_POINTER): Set to one.
1779         (_GLIBCXX_LOSER_TREE_UNGUARDED): Set to zero.
1780         (_GLIBCXX_LOSER_TREE_POINTER_UNGUARDED): Set to one.
1781         * include/parallel/multiway_merge.h (parallel_multiway_merge):
1782         Change array of value_type to array of value_type pointers.
1783         (multiway_merge_bubble): Same.
1784         (multiway_merge_loser_tree): Same.
1785         * include/parallel/merge.h (merge_advance_movc): Change to avoid
1786         default construction.
1787         * include/parallel/multiseq_selection.h (multiseq_partition):
1788         Replace value_type, bool pair with value_type*, null-initialized.
1789         * include/parallel/multiway_mergesort.h (parallel_sort_mwms):
1790         Don't use array form of operator new for value_types.
1791         (parallel_sort_mwms_pu): Same.
1792         * include/parallel/quicksort.h (parallel_sort_qs_divide): Don't
1793         use array form to construct pointer to value_type on stack,
1794         instead use __builtin_alloca.   
1795         * include/parallel/random_shuffle.h (sequential_random_shuffle): Same,
1796         but use operator new.
1797         (parallel_random_shuffle_drs_pu): Same.
1798         * include/parallel/partial_sum.h ( parallel_partial_sum_linear): Same.
1799
1800         * include/parallel/losertree.h: Format.
1801         * include/parallel/settings.h: Format.
1802
1803         * include/parallel/multiway_merge.h: Move traits to....
1804         * include/parallel/losertree.h: ... here.       
1805         
1806 2007-10-09  Paolo Carlini  <pcarlini@suse.de>
1807
1808         * include/tr1_impl/type_traitsfwd.h (add_reference): Remove.
1809         * include/tr1/type_traits (add_reference): Add forward declaration.
1810         * include/tr1_impl/functional (class _Mu<>): Fix.
1811
1812 2007-10-09  Paolo Carlini  <pcarlini@suse.de>
1813
1814         * include/bits/boost_concept_check.h (*AssociativeContainerConcept):
1815         Remove, unused.
1816
1817 2007-10-08  Johannes Singler  <singler@ira.uka.de>
1818
1819         * include/parallel/base.h: Added plus and multiplies functor
1820        for differently typed objects.
1821         * include/parallel/numeric: Use it.
1822         * include/parallel/for_each_selectors.h: Allowed different types.
1823         * include/parallel/partial_sum.h: Fixed return value.
1824         * testsuite/26_numerics/accumulate/1.cc: Tests for accumulate.
1825         * testsuite/26_numerics/inner_product/1.cc: Tests for inner_product.
1826
1827 2007-10-08  Paolo Carlini  <pcarlini@suse.de>
1828
1829         * include/bits/stl_move.h (_GLIBCXX_MOVE): Add.
1830         * include/bits/stl_algobase.h: Adjust.
1831         * include/bits/stl_pair.h: Likewise.
1832
1833         * include/bits/stl_algo.h: Minor formatting fixes.
1834
1835 2007-10-08  Benjamin Kosnik  <bkoz@redhat.com>
1836
1837         PR libstdc++/33489      
1838         * include/parallel/multiseq_selection.h: Remove default constructed
1839         value_type.
1840         * include/parallel/partition.h: 
1841         * include/parallel/partial_sum.h: Format.
1842
1843 2007-10-08  Johannes Singler  <singler@ira.uka.de>
1844
1845         * include/parallel/multiway_merge.h: Added reference to paper.
1846         * include/parallel/multiseq_selection.h: Added reference to paper.
1847         * include/parallel/workstealing.h: Added reference to paper.
1848         * include/parallel/balanced_quicksort.h: Added reference to paper.
1849         * include/parallel/tree.h: Added reference to paper.
1850         * docs/html/parallel_mode.html: Added reference to MCSTL.
1851         More documentation on compile-time settings and tuning.
1852
1853 2007-10-08  Paolo Carlini  <pcarlini@suse.de>
1854
1855         * include/std/utility (identity, move, forward): Move to...
1856         * include/bits/stl_move.h: ... here.
1857         * include/Makefile.am: Add.
1858         * include/bits/stl_algobase.h: Include the latter.
1859         * include/Makefile.in: Regenerate.
1860         * testsuite/20_util/pair/moveable.cc: Remove dg-require-rvalref.
1861
1862 2007-10-08  Chris Jefferson  <chris@bubblescope.net>
1863             Paolo Carlini  <pcarlini@suse.de>
1864
1865         * include/bits/stl_pair.h (pair<>:pair(pair&&),
1866         pair<>::operator=(pair&&)): Add.
1867
1868 2007-10-07  Chris Jefferson  <chris@bubblescope.net>
1869             Paolo Carlini  <pcarlini@suse.de>
1870
1871         * include/debug/list (list<>::list(list&&),
1872         list<>::operator=(list&&)): Add.
1873         (list<>::swap): Adjust.
1874         (swap(list&&, list& __y), swap(list&, list&& __y)): Add.
1875         * include/debug/vector (vector<>::vector(vector&&),
1876         vector<>::operator=(vector&&)): Add.
1877         (vector<>::swap): Adjust.
1878         (swap(vector&&, vector& __y), swap(vector&, vector&& __y)): Add.
1879         * include/debug/deque (deque<>::deque(deque&&),
1880         deque<>::operator=(deque&&)): Add.
1881         (deque<>::swap): Adjust.
1882         (swap(deque&&, deque& __y), swap(deque&, deque&& __y)): Add.
1883         * include/debug/set.h (set<>::set(set&&),
1884         set<>::operator=(set&&)): Add.
1885         (set<>::swap): Adjust.
1886         (swap(set&&, set& __y), swap(set&, set&& __y)): Add.
1887         * include/debug/map.h (map<>::map(map&&),
1888         map<>::operator=(map&&)): Add.
1889         (map<>::swap): Adjust.
1890         (swap(map&&, map& __y), swap(map&, map&& __y)): Add.
1891         * include/debug/multiset.h (multiset<>::multiset(multiset&&),
1892         multiset<>::operator=(multiset&&)): Add.
1893         (smultiet<>::swap): Adjust.
1894         (swap(multiset&&, multiset& __y),
1895         swap(multiset&, multiset&& __y)): Add.
1896         * include/debug/multimap.h (multimap<>::multimap(multimap&&),
1897         multimap<>::operator=(multimap&&)): Add.
1898         (multimap<>::swap): Adjust.
1899         (swap(multimap&&, multimap& __y),
1900         swap(multimap&, multimap&& __y)): Add.
1901
1902 2007-10-07  Paolo Carlini  <pcarlini@suse.de>
1903
1904         * include/bits/stl_algobase.h (_GLIBCXX_MOVE): Add.
1905         (swap, __iter_swap): Use it.
1906         * testsuite/25_algorithms/rotate/moveable.cc: Remove 
1907         dg-require-rvalref.
1908         * testsuite/25_algorithms/remove/moveable.cc: Likewise.
1909         * testsuite/25_algorithms/partition/moveable.cc: Likewise. 
1910         * testsuite/25_algorithms/swap_ranges/moveable.cc: Likewise.
1911         * testsuite/25_algorithms/reverse/moveable.cc: Likewise. 
1912         * testsuite/25_algorithms/unique/moveable.cc: Likewise. 
1913         * testsuite/25_algorithms/remove_if/moveable.cc: Likewise. 
1914
1915         * include/bits/stl_algobase.h (lexicographical_compare):
1916         Clean up.
1917
1918 2007-10-07  Chris Jefferson  <chris@bubblescope.net>
1919             Paolo Carlini  <pcarlini@suse.de>
1920
1921         * include/bits/stl_algo.h (remove, remove_if, unique,
1922         __rotate(_RandomAccessIterator, _RandomAccessIterator,
1923         _RandomAccessIterator, random_access_iterator_tag)): Use _GLIBCXX_MOVE.
1924         (__rotate(_ForwardIterator, _ForwardIterator, _ForwardIterator,
1925         forward_iterator_tag), __rotate(_BidirectionalIterator,
1926         _BidirectionalIterator, _BidirectionalIterator,
1927         bidirectional_iterator_tag), __partition(_ForwardIterator,
1928         _ForwardIterator, _Predicate, forward_iterator_tag)): Use iter_swap.
1929
1930 2007-10-06  Benjamin Kosnik  <bkoz@redhat.com>
1931
1932         PR libstdc++/33678      
1933         * libsupc++/typeinfo (typeinfo): Revert ordering of virtual components.
1934
1935 2007-10-06  Benjamin Kosnik  <bkoz@redhat.com>
1936
1937         PR libstdc++/33487
1938         * include/parallel/algorithmfwd.h (for_each, generate, generate_n,
1939         transform, replace, replace_if, max_element, min_element, count,
1940         count_if): Consistently construct overloads.
1941         * include/parallel/numericfwd.h (accumulate, adjacent_difference,
1942         inner_product): Same.
1943         * include/parallel/algobase.h: Same.
1944         * include/parallel/algo.h: Same.
1945         * include/parallel/numeric: Same.
1946
1947         * include/bits/algorithmfwd.h: Correct find_end placement.
1948
1949         * docs/html/parallel_mode.html: Document some of the interface
1950         conventions.
1951
1952         * include/parallel/search.h (calc_borders): Only use operator ==.
1953         
1954         * include/parallel/algorithmfwd.h: Move __gnu_sequential bits to...
1955         * include/parallel/tags.h: ...here, and use a using directive.
1956
1957         * include/parallel/random_shuffle.h: Include stl_numeric. Qualify
1958         uses of partial_num with __gnu_sequential.
1959
1960         * include/parallel/tree.h: Formatting.
1961         
1962 2007-10-05  Benjamin Kosnik  <bkoz@redhat.com>
1963
1964         Fixes for --disable-libstdcxx-pch.
1965         * include/ext/rc_string_base.h: Include stl_iterator_base_funcs.h.
1966         * include/ext/vstring_util.h: Include stl_iterator.h and
1967         numeric_traits.h.
1968         * include/tr1/functional: Include new.
1969         * testsuite/util/testsuite_api.h: Include exception.
1970         * testsuite/lib/libstdc++.exp (libstdc++_init): Set
1971         PCH_CXXFLAGS via cxxpchflags.
1972
1973         * testsuite/25_algorithms/binary_search/requirements/
1974         explicit_instantiation/2.cc: Same.: Fix includes.
1975         * testsuite/25_algorithms/count_if/requirements/
1976         explicit_instantiation/2.cc: Same.
1977         * testsuite/25_algorithms/equal_range/requirements/
1978         explicit_instantiation/2.cc: Same.
1979         * testsuite/25_algorithms/find_end/requirements/
1980         explicit_instantiation/2.cc: Same.
1981         * testsuite/25_algorithms/find_first_of/requirements/
1982         explicit_instantiation/2.cc: Same.
1983         * testsuite/25_algorithms/find_if/requirements/
1984         explicit_instantiation/2.cc: Same.
1985         * testsuite/25_algorithms/for_each/requirements/
1986         explicit_instantiation/2.cc: Same.
1987         * testsuite/25_algorithms/includes/requirements/
1988         explicit_instantiation/2.cc: Same.
1989         * testsuite/25_algorithms/inplace_merge/requirements/
1990         explicit_instantiation/2.cc: Same.
1991         * testsuite/25_algorithms/lexicographical_compare/
1992         requirements/explicit_instantiation/2.cc: Same.
1993         * testsuite/25_algorithms/lower_bound/requirements/
1994         explicit_instantiation/2.cc: Same.
1995         * testsuite/25_algorithms/make_heap/requirements/
1996         explicit_instantiation/2.cc: Same.
1997         * testsuite/25_algorithms/max_element/requirements/
1998         explicit_instantiation/2.cc: Same.
1999         * testsuite/25_algorithms/max/requirements/
2000         explicit_instantiation/2.cc: Same.
2001         * testsuite/25_algorithms/merge/requirements/
2002         explicit_instantiation/2.cc: Same.
2003         * testsuite/25_algorithms/min_element/requirements/
2004         explicit_instantiation/2.cc: Same.
2005         * testsuite/25_algorithms/min/requirements/
2006         explicit_instantiation/2.cc: Same.
2007         * testsuite/25_algorithms/next_permutation/
2008         requirements/explicit_instantiation/2.cc: Same.
2009         * testsuite/25_algorithms/nth_element/requirements/
2010         explicit_instantiation/2.cc: Same.
2011         * testsuite/25_algorithms/partial_sort_copy/
2012         requirements/explicit_instantiation/2.cc: Same.
2013         * testsuite/25_algorithms/partial_sort/requirements/
2014         explicit_instantiation/2.cc: Same.
2015         * testsuite/25_algorithms/partition/requirements/
2016         explicit_instantiation/2.cc: Same.
2017         * testsuite/25_algorithms/pop_heap/requirements/
2018         explicit_instantiation/2.cc: Same.
2019         * testsuite/25_algorithms/prev_permutation/requirements/
2020         explicit_instantiation/2.cc: Same.
2021         * testsuite/25_algorithms/push_heap/requirements/
2022         explicit_instantiation/2.cc: Same.
2023         * testsuite/25_algorithms/random_shuffle/requirements/
2024         explicit_instantiation/2.cc: Same.
2025         * testsuite/25_algorithms/remove_copy_if/requirements/
2026         explicit_instantiation/2.cc: Same.
2027         * testsuite/25_algorithms/remove_if/requirements/
2028         explicit_instantiation/2.cc: Same.
2029         * testsuite/25_algorithms/replace_copy_if/requirements/
2030         explicit_instantiation/2.cc: Same.
2031         * testsuite/25_algorithms/replace_if/requirements/
2032         explicit_instantiation/2.cc: Same.
2033         * testsuite/25_algorithms/search_n/requirements/
2034         explicit_instantiation/2.cc: Same.
2035         * testsuite/25_algorithms/search/requirements/
2036         explicit_instantiation/2.cc: Same.
2037         * testsuite/25_algorithms/set_difference/requirements/
2038         explicit_instantiation/2.cc: Same.
2039         * testsuite/25_algorithms/set_intersection/requirements/
2040         explicit_instantiation/2.cc: Same.
2041         * testsuite/25_algorithms/set_symmetric_difference/requirements/
2042         explicit_instantiation/2.cc: Same.
2043         * testsuite/25_algorithms/set_union/requirements/
2044         explicit_instantiation/2.cc: Same.
2045         * testsuite/25_algorithms/sort_heap/requirements/
2046         explicit_instantiation/2.cc: Same.
2047         * testsuite/25_algorithms/sort/requirements/
2048         explicit_instantiation/2.cc: Same.
2049         * testsuite/25_algorithms/stable_partition/requirements/
2050         explicit_instantiation/2.cc: Same.
2051         * testsuite/25_algorithms/stable_sort/requirements/
2052         explicit_instantiation/2.cc: Same.
2053         * testsuite/25_algorithms/transform/requirements/
2054         explicit_instantiation/2.cc: Same.
2055         * testsuite/25_algorithms/unique_copy/requirements/
2056         explicit_instantiation/2.cc: Same.
2057         * testsuite/25_algorithms/unique/requirements/
2058         explicit_instantiation/2.cc: Same.
2059         * testsuite/25_algorithms/upper_bound/requirements/
2060         explicit_instantiation/2.cc: Same.
2061
2062         * testsuite/25_algorithms/remove/requirements/
2063         explicit_instantiation/pod.cc: Provide a hint to the compiler.
2064
2065 2007-10-05  Paolo Carlini  <pcarlini@suse.de>
2066
2067         * testsuite/23_containers/map/moveable.cc: Remove dg-require-rvalref.
2068         * testsuite/23_containers/multimap/moveable.cc: Likewise.
2069         * testsuite/23_containers/set/moveable.cc: Likewise. 
2070         * testsuite/23_containers/multiset/moveable.cc: Likewise.
2071         * testsuite/23_containers/deque/moveable.cc: Likewise. 
2072         * testsuite/23_containers/list/moveable.cc: Likewise. 
2073         * testsuite/23_containers/vector/moveable.cc: Likewise. 
2074         * include/std/utility: Use _GLIBCXX_BEGIN_NAMESPACE.
2075
2076 2007-10-05  Paolo Carlini  <pcarlini@suse.de>
2077             Chris Jefferson  <chris@bubblescope.net>
2078
2079         * include/bits/stl_iterator.h (class move_iterator,
2080         make_move_iterator): Add.
2081
2082 2007-10-04  Doug Kwan  <dougkwan@google.com>
2083
2084         * include/ext/concurrent.h (class __mutex,
2085         class __recursive_mutex): Add new method gthread_mutex to access
2086         inner gthread mutex.
2087         [__GTHREAD_HAS_COND] (class __concurrence_broadcast_error,
2088         class __concurrence_wait_error, class __cond): Add.
2089         * libsupc++/guard.cc (recursive_push, recursive_pop): Delete.
2090         (init_in_progress_flag, set_init_in_progress_flag): Add to
2091         replace recursive_push and recursive_pop.
2092         (throw_recursive_init_exception): Add.
2093         (acquire, __cxa_guard_acquire, __cxa_guard_abort and
2094         __cxa_guard_release): [__GTHREAD_HAS_COND] Use a conditional
2095         for synchronization of static variable initialization.
2096         The global mutex is only held briefly when guards are
2097         accessed. [!__GTHREAD_HAS_COND] Fall back to the old code,
2098         which deadlocks.
2099         * testsuite/thread/guard.cc: Add new test. It deadlocks with the
2100         old locking code in libstdc++-v3/libsup++/guard.cc.
2101
2102 2007-10-04  Paolo Carlini  <pcarlini@suse.de>
2103
2104         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2105         Adjust dg-error line number.
2106         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2107         Likewise.
2108         * testsuite/23_containers/vector/requirements/dr438/
2109         constructor_1_neg.cc: Likewise.
2110         * testsuite/23_containers/vector/requirements/dr438/
2111         constructor_2_neg.cc: Likewise.
2112         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
2113         Adjust dg-error line number.
2114         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
2115         Likewise.
2116         * testsuite/23_containers/deque/requirements/dr438/
2117         constructor_1_neg.cc: Likewise.
2118         * testsuite/23_containers/deque/requirements/dr438/
2119         constructor_2_neg.cc: Likewise.
2120         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2121         Adjust dg-error line number.
2122         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
2123         Likewise.
2124         * testsuite/23_containers/list/requirements/dr438/
2125         constructor_1_neg.cc: Likewise.
2126         * testsuite/23_containers/list/requirements/dr438/
2127         constructor_2_neg.cc: Likewise.
2128
2129 2007-10-04  Chris Jefferson  <chris@bubblescope.net>
2130             Paolo Carlini  <pcarlini@suse.de>
2131
2132         * include/bits/stl_list.h (list<>::list(list&&),
2133         list<>::operator=(list&&)): Add.
2134         (list<>::swap): Adjust.
2135         (swap(list&&, list& __y), swap(list&, list&& __y)): Add.
2136         * include/bits/stl_vector.h (vector<>::vector(vector&&),
2137         vector<>::operator=(vector&&)): Add.
2138         (vector<>::swap): Adjust.
2139         (swap(vector&&, vector& __y), swap(vector&, vector&& __y)): Add.
2140         * include/bits/stl_bvector.h (vector<>::vector(vector&&),
2141         vector<>::operator=(vector&&)): Add.
2142         (vector<>::swap): Adjust.
2143         * include/bits/stl_deque.h (deque<>::deque(deque&&),
2144         deque<>::operator=(deque&&)): Add.
2145         (deque<>::swap): Adjust.
2146         (swap(deque&&, deque& __y), swap(deque&, deque&& __y)): Add.
2147         * include/bits/stl_set.h (set<>::set(set&&),
2148         set<>::operator=(set&&)): Add.
2149         (set<>::swap): Adjust.
2150         (swap(set&&, set& __y), swap(set&, set&& __y)): Add.
2151         * include/bits/stl_map.h (map<>::map(map&&),
2152         map<>::operator=(map&&)): Add.
2153         (map<>::swap): Adjust.
2154         (swap(map&&, map& __y), swap(map&, map&& __y)): Add.
2155         * include/bits/stl_multiset.h (multiset<>::multiset(multiset&&),
2156         multiset<>::operator=(multiset&&)): Add.
2157         (smultiet<>::swap): Adjust.
2158         (swap(multiset&&, multiset& __y),
2159         swap(multiset&, multiset&& __y)): Add.
2160         * include/bits/stl_multimap.h (multimap<>::multimap(multimap&&),
2161         multimap<>::operator=(multimap&&)): Add.
2162         (multimap<>::swap): Adjust.
2163         (swap(multimap&&, multimap& __y),
2164         swap(multimap&, multimap&& __y)): Add.
2165
2166 2007-10-04  Paolo Carlini  <pcarlini@suse.de>
2167
2168         Avoid copying some allocator objects.
2169         * include/bits/stl_list.h (_List_impl::_List_impl(),
2170         _List_base::_List_base(), list<>::list()): Add.
2171         * include/bits/stl_vector.h  (_Vector_impl::_Vector_impl(),
2172         _Vector_base::_Vector_base(), vector<>::vector()): Add.
2173         * include/bits/stl_bvector.h (_Bvector_impl::_Bvector_impl(),
2174         _Bvector_base::_Bvector_base(), vector<>::vector()): Add.
2175         * include/bits/stl_deque.h  (_Deque_impl::_Deque_impl(),
2176         _Deque_base::_Deque_base(), deque<>::deque()): Add.
2177         * include/bits/stl_tree.h (_Rb_tree_impl<>::_Rb_tree_impl(),
2178         _Rb_tree_impl<>::_M_initialize): Add.
2179         (_Rb_tree<>::_Rb_tree(const _Compare&, const allocator_type&),
2180         _Rb_tree(const _Rb_tree&)): Adjust.
2181         * include/bits/stl_set.h (set<>::set(),
2182         set(_InputIterator, _InputIterator)): Use _M_t default constructor. 
2183         * include/bits/stl_map.h (map<>::map(), set(_InputIterator,
2184         _InputIterator)): Use _M_t default constructor. 
2185         * include/bits/stl_multiset.h (multiset<>::multiset(),
2186         multiset(_InputIterator, _InputIterator)): Use _M_t default
2187         constructor. 
2188         * include/bits/stl_multimap.h (multimap<>::multimap(),
2189         multimap(_InputIterator, _InputIterator)): Use _M_t default
2190         constructor.
2191
2192 2007-10-03  Chris Jefferson  <chris@bubblescope.net>
2193             Benjamin Kosnik  <bkoz@redhat.com>
2194
2195         * testsuite/20_util/pair/moveable.cc: New. Merge from 
2196         libstdcxx_so_7-branch.
2197         * testsuite/23_containers/deque/capacity/moveable.cc: Same.
2198         * testsuite/23_containers/deque/cons/moveable.cc: Same.
2199         * testsuite/23_containers/deque/modifiers/moveable.cc: Same.
2200         * testsuite/23_containers/deque/moveable.cc: Same.
2201         * testsuite/23_containers/list/moveable.cc: Same.
2202         * testsuite/23_containers/map/moveable.cc: Same.
2203         * testsuite/23_containers/multimap/moveable.cc: Same.
2204         * testsuite/23_containers/multiset/moveable.cc: Same.
2205         * testsuite/23_containers/set/moveable.cc: Same.
2206         * testsuite/23_containers/vector/cons/moveable.cc: Same.
2207         * testsuite/23_containers/vector/modifiers/moveable.cc: Same.
2208         * testsuite/23_containers/vector/moveable.cc: Same.
2209         * testsuite/23_containers/vector/resize/moveable.cc: Same.
2210         * testsuite/25_algorithms/heap/moveable.cc: Same.
2211         * testsuite/25_algorithms/nth_element/moveable.cc: Same.
2212         * testsuite/25_algorithms/partial_sort/moveable.cc: Same.
2213         * testsuite/25_algorithms/partition/moveable.cc: Same.
2214         * testsuite/25_algorithms/remove_if/moveable.cc: Same.
2215         * testsuite/25_algorithms/remove/moveable.cc: Same.
2216         * testsuite/25_algorithms/reverse/moveable.cc: Same.
2217         * testsuite/25_algorithms/rotate/moveable.cc: Same.
2218         * testsuite/25_algorithms/sort/moveable.cc: Same.
2219         * testsuite/25_algorithms/swap_ranges/moveable.cc: Same.
2220         * testsuite/25_algorithms/unique/moveable.cc: Same.
2221         * testsuite/util/testsuite_rvalref.h: New.
2222
2223         * testsuite/25_algorithms/equal/equal.cc: Move to...
2224         * testsuite/25_algorithms/equal/no_operator_ne.cc: ...this.
2225         * testsuite/25_algorithms/heap/heap.cc: Move to...
2226         * testsuite/25_algorithms/heap/1.cc: ...this.
2227         * testsuite/25_algorithms/lower_bound/lower_bound.cc: Move to...
2228         * testsuite/25_algorithms/lower_bound/no_operator_ne.cc: ...this.
2229         * testsuite/25_algorithms/partition/partition.cc: Move to...
2230         * testsuite/25_algorithms/partition/1.cc: ...this.
2231         * testsuite/25_algorithms/stable_partition/1.cc: ... and this.
2232         
2233         * testsuite/25_algorithms/search/1.cc: Update from merge.
2234         * testsuite/25_algorithms/search/check_type.cc: Same.
2235
2236         * testsuite/lib/dg-options.exp (dg-require-rvalref): New.
2237         * testsuite/lib/libstdc++.exp (check_v3_target_rvalref): New.
2238         
2239 2007-10-03  Richard Sandiford  <richard@codesourcery.com>
2240
2241         * acinclude.m4 (GLIBCXX_ENABLE_C99): Temporarily add
2242         -fno-exceptions to CXXFLAGS.  Use GCC_TRY_COMPILE_OR_LINK.
2243         Make the tests assign results to volatile variables.  Use -lm
2244         for link tests in GCC_TRY_COMPILE_OR_LINK.  Fall back to
2245         compile-only tests if -lm is not available.
2246         * configure: Regenerate.
2247
2248 2007-10-03  Paolo Carlini  <pcarlini@suse.de>
2249
2250         PR libstdc++/33613
2251         * include/debug/functions.h (__check_partitioned): Rename to...
2252         (__check_partioned_lower): ... this.
2253         (__check_partioned_upper): Add.
2254         * include/debug/macros.h (__glibcxx_check_partitioned): Rename to...
2255         (__glibcxx_check_partitioned_lower): ... this, adjust.
2256         (__glibcxx_check_partitioned_upper): Add.
2257         * include/debug/debug.h (__glibcxx_requires_partitioned): Rename to...
2258         (__glibcxx_requires_partitioned_lower): ... this, adjust.
2259         (__glibcxx_requires_partitioned_upper): Add.
2260         * include/bits/stl_algo.h (lower_bound, upper_bound, equal_range,
2261         binary search): Use the above.
2262         * testsuite/25_algorithms/lower_bound/33613.cc: New.
2263         * testsuite/25_algorithms/upper_bound/33613.cc: Likewise.
2264
2265 2007-10-03  Kazu Hirata  <kazu@codesourcery.com>
2266
2267         Revert:
2268         2007-10-02  Richard Sandiford  <richard@codesourcery.com>
2269         * acinclude.m4 (GLIBCXX_ENABLE_C99): Temporarily add
2270         -fno-exceptions to CXXFLAGS.  Use GCC_TRY_COMPILE_OR_LINK.
2271         Make the tests assign results to volatile variables.
2272         * configure: Regenerate.
2273
2274 2007-10-02  Richard Sandiford  <richard@codesourcery.com>
2275
2276         * acinclude.m4 (GLIBCXX_ENABLE_C99): Temporarily add
2277         -fno-exceptions to CXXFLAGS.  Use GCC_TRY_COMPILE_OR_LINK.
2278         Make the tests assign results to volatile variables.
2279         * configure: Regenerate.
2280
2281 2007-10-02  Benjamin Kosnik  <bkoz@redhat.com>
2282
2283         * testsuite/25_algorithms/binary_search/2.cc: Split into...
2284         * testsuite/25_algorithms/upper_bound/2.cc: ... this.
2285         * testsuite/25_algorithms/lower_bound/2.cc: ... this.
2286         * testsuite/25_algorithms/equal_range/2.cc: ... and this.
2287
2288 2007-10-02  Chris Jefferson  <chris@bubblescope.net>
2289
2290         * testsuite/25_algorithms/search/1.cc: Merge from 
2291         libstdcxx_so_7-branch.
2292         * testsuite/25_algorithms/search/check_type.cc: Same.
2293         * testsuite/25_algorithms/sort/vectorbool.cc: Same.
2294
2295 2007-09-30  Jonathan Wakely  <jwakely.gcc@gmail.com>
2296
2297         * src/valarray-inst.cc, include/ext/atomicity.h,
2298         include/ext/concurrence.h, include/bits/basic_string.h,
2299         include/bits/fstream.tcc, include/ext/vstring.h: Fix comment typos.
2300
2301 2007-09-29  Jonathan Wakely  <jwakely.gcc@gmail.com>
2302
2303         * docs/html/test.html, docs/html/ext/mt_allocator.html,
2304         docs/html/ext/tr1.html, docs/html/17_intro/contribute.html,
2305         docs/html/documentation.html, docs/html/20_util/allocator.html:
2306         Update docs to refer to Subversion not CVS. Fix markup.
2307
2308 2007-09-29  Jonathan Wakely  <jwakely.gcc@gmail.com>
2309
2310         * docs/html/Makefile: Follow up to libstdc++/14991, remove target.
2311
2312 2007-09-28  Benjamin Kosnik  <bkoz@redhat.com>
2313
2314         * include/parallel/algorithmfwd.h: Spacing.
2315         * include/parallel/tags.h: Correct comment.
2316         
2317         * testsuite/Makefile.am (AM_MAKEFLAGS, AM_RUNTESTFLAGS): Remove.
2318         * testsuite/Makefile.in: Regenerate.
2319         
2320 2007-09-27  Benjamin Kosnik  <bkoz@redhat.com>
2321
2322         * testsuite/util/testsuite_hooks.cc (set_memory_limits): Adjust
2323         x86_64 virtual memory setting for libgomp.
2324         
2325 2007-09-26  Benjamin Kosnik  <bkoz@redhat.com>
2326
2327         * include/bits/stl_algo.h: Add return type information to comments.
2328         * include/bits/algorithmfwd.h: Formatting.
2329         * testsuite/util/testsuite_hooks.h (NonDefaultConstructible): Move..
2330         * testsuite/util/testsuite_api.h: ...here. Add necessary operators
2331         for use in testing chapters 25 and 26.
2332         * testsuite/util/testsuite_character.h: Same.
2333
2334         * testsuite/25_algorithms/*/requirements/explicit_instantiation/
2335         2.cc, pod.cc: New.
2336
2337         * testsuite/26_numerics/accumulate, adjacent_difference, inner_product,
2338         partial_sum/requirements/explicit_instantiation/2.cc, pod.cc: New.
2339         
2340         * testsuite/26_numerics/numeric_arrays/*: Move contents into
2341         testsuite/26_numerics.
2342
2343         * testsuite/26_numerics/numeric_operations: Same.
2344         
2345         * testsuite/23_containers/*/requirements/explicit_instantiation/2.cc:
2346         Adjust includes from testsuite_eh.h to testsuite_api.h.
2347
2348 2007-09-25  Richard Sandiford  <rsandifo@nildram.co.uk>
2349
2350         * testsuite/lib/libstdc++.exp (check_v3_target_fileio): Test lseek.
2351
2352 2007-09-18  Benjamin Kosnik  <bkoz@redhat.com>
2353             Chalathip Thumkanon  <chalathip@gmail.com>
2354
2355         PR libstdc++/32819
2356         PR libstdc++/32822
2357         * docs/html/ext/pb_ds/hash_based_containers.html: Correct.
2358         
2359 2007-09-17  Benjamin Kosnik  <bkoz@redhat.com>
2360
2361         * configure.host: Set atomic_flags on i486.
2362
2363         * include/Makefile.am: Remove parallel-mode pch.        
2364         * include/Makefile.in: Regenerate.
2365
2366         * testsuite/lib/libstdc++.exp: Set ld_library_flags for libgomp if
2367         present.
2368
2369         * acinclude.m4 (GLIBCXX_ENABLE_PARALLEL): Comment.
2370         * configure: Regenerate.
2371
2372 2007-09-17  Johannes Singler  <singler@ira.uka.de>
2373
2374         * include/parallel/for_each.h: Fixed comment/doxygen markup typos.
2375         * include/parallel/base.h: Same.
2376         * include/parallel/numeric: Same.
2377         * include/parallel/quicksort.h: Same.
2378         * include/parallel/compiletime_settings.h: Same.
2379         * include/parallel/random_shuffle.h: Same.
2380         * include/parallel/balanced_quicksort.h: Same.
2381         * include/parallel/tree.h: Same.
2382         * include/parallel/settings.h: Same.
2383         * include/parallel/search.h: Same.
2384         * include/parallel/partition.h: Same.
2385         * include/parallel/partial_sum.h: Same.
2386
2387 2007-09-17  Paolo Carlini  <pcarlini@suse.de>
2388
2389         * include/tr1_impl/type_traitsfwd.h (aligned_storage): Remove
2390         declaration.
2391         * include/tr1_impl/type_traits (aligned_storage): Remove.
2392         * include/std/type_traits (aligned_storage, __aligned_storage_msa):
2393         Add.
2394         * include/tr1/type_traits (aligned_storage): Add.
2395         * testsuite/20_util/aligned_storage/value.cc: New.
2396         * testsuite/20_util/aligned_storage/requirements/
2397         explicit_instantiation.cc: Likewise.
2398         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
2399         dg-error lines.
2400         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2401         Likewise.
2402
2403 2007-09-16  Paolo Carlini  <pcarlini@suse.de>
2404             Douglas Gregor  <doug.gregor@gmail.com>
2405
2406         * include/tr1_impl/type_traits (aligned_storage): Implement
2407         in the neat and general way.
2408
2409 2007-09-14  Benjamin Kosnik  <bkoz@redhat.com>
2410         
2411         * include/parallel/base.h (__gnu_parallel::less<Tp>): Add partial
2412         specialization for one argument. 
2413         (__gnu_parallel::less): Add operator.
2414
2415         * include/parallel/multiway_merge.h: Use __builtin_alloca. 
2416         * include/parallel/partial_sum.h: Same.
2417         * include/parallel/find.h: Same.        
2418         
2419 2007-09-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
2420
2421         * include/tr1_impl/boost_shared_ptr.h: (__weak_ptr::lock()): Add
2422         missing template argument.
2423         * testsuite/tr1/2_general_utilities/shared_ptr/requirements/
2424         explicit_instantiation/2.cc: New.
2425         * testsuite/tr1/2_general_utilities/weak_ptr/requirements/
2426         explicit_instantiation/2.cc: New.
2427
2428 2007-09-14  Benjamin Kosnik  <bkoz@redhat.com>
2429
2430         * testsuite/17_intro/headers/all_pedantic_errors.cc: New.
2431         * include/tr1_impl/cinttypes: Add pragma GCC system_header.
2432         * include/tr1_impl/cfenv: Same.
2433         * include/tr1_impl/cstdint: Same.
2434         * include/tr1/cstdbool: Same.
2435         * include/ext/pb_ds/detail/resize_policy/
2436         hash_prime_size_policy_imp.hpp: Same.
2437         * include/parallel/partial_sum.h: Avoid VLA error with
2438         __builtin_alloca.
2439
2440 2007-09-14  Thiemo Seufer  <ths@mips.com>
2441
2442         * crossconfig.m4 (mips*-sde-elf*): New stanza.
2443         * configure: Regenerate.
2444
2445 2007-09-12  Benjamin Kosnik  <bkoz@redhat.com>
2446
2447         * include/ext/pb_ds/*: Change namespace pb_ds to __gnu_pbds.
2448         * docs/html/ext/pb_ds/*: Same.
2449         * testsuite/ext/pb_ds/*: Same.
2450         * testsuite/performance/ext/pb_ds/*: Same.
2451         * testsuite/util/*: Same.
2452         
2453 2007-09-12  Benjamin Kosnik  <bkoz@redhat.com>
2454
2455         * include/parallel/find.h: Doxygen fixups.
2456         * include/bits/hashtable.h: Same.
2457
2458 2007-09-11  Johannes Singler  <singler@ira.uka.de>
2459             Leonor Frias Moya  <lfrias@lsi.upc.edu>
2460             Felix Putze  <kontakt@felix-putze.de>
2461             Marius Elvert  <marius.elvert@ira.uka.de>
2462             Felix Bondarenko  <f.bondarenko@web.de>
2463             Robert Geisberger  <robert.geisberger@stud.uni-karlsruhe.de>
2464             Robin Dapp  <r.dapp@freenet.de>
2465             Benjamin Kosnik  <bkoz@redhat.com>
2466
2467         Add parallel mode.
2468         * include/parallel: New.
2469         * include/parallel/iterator.h: New.
2470         * include/parallel/multiway_merge.h: New.
2471         * include/parallel/parallel.h: New.
2472         * include/parallel/algorithm
2473         * include/parallel/find_selectors.h: New.
2474         * include/parallel/losertree.h: New.
2475         * include/parallel/list_partition.h: New.
2476         * include/parallel/types.h: New.
2477         * include/parallel/for_each.h: New.
2478         * include/parallel/multiseq_selection.h: New.
2479         * include/parallel/workstealing.h: New.
2480         * include/parallel/base.h: New.
2481         * include/parallel/par_loop.h: New.
2482         * include/parallel/numeric
2483         * include/parallel/features.h: New.
2484         * include/parallel/quicksort.h: New.
2485         * include/parallel/algorithmfwd.h: New.
2486         * include/parallel/equally_split.h: New.
2487         * include/parallel/compiletime_settings.h: New.
2488         * include/parallel/for_each_selectors.h: New.
2489         * include/parallel/basic_iterator.h: New.
2490         * include/parallel/omp_loop_static.h: New.
2491         * include/parallel/random_shuffle.h: New.
2492         * include/parallel/balanced_quicksort.h: New.
2493         * include/parallel/set_operations.h: New.
2494         * include/parallel/tags.h: New.
2495         * include/parallel/merge.h: New.
2496         * include/parallel/tree.h: New.
2497         * include/parallel/settings.h: New.
2498         * include/parallel/unique_copy.h: New.
2499         * include/parallel/multiway_mergesort.h: New.
2500         * include/parallel/numericfwd.h: New.
2501         * include/parallel/search.h: New.
2502         * include/parallel/partition.h: New.
2503         * include/parallel/compatibility.h: New.
2504         * include/parallel/algobase.h: New.
2505         * include/parallel/find.h: New.
2506         * include/parallel/partial_sum.h: New.
2507         * include/parallel/algo.h: New.
2508         * include/parallel/omp_loop.h: New.
2509         * include/parallel/queue.h: New.
2510         * include/parallel/timing.h: New.
2511         * include/parallel/sort.h: New.
2512         * include/parallel/checkers.h: New.
2513         * include/parallel/random_number.h: New.
2514         * include/bits/algorithmfwd.h: New.
2515
2516         * acinclude.m4 (GLIBCXX_ENABLE_PARALLEL): New.
2517         * configure.host: Add atomic_flags.
2518         * configure.ac: Export ATOMIC_FLAGS, call GLIBCXX_ENABLE_PARALLEL.
2519         * src/Makefile.am: Add parallel_list rules.
2520         * include/Makefile.am: Add parallel files.
2521         * testsuite/Makefile.am (check-parallel): Add.
2522         (check-performance-parallel): Add.
2523         * config.h.in: Regenerate.
2524         * configure: Same.
2525         * libsupc++/Makefile.in: Same.
2526         * testsuite/Makefile.in: Same.
2527         * Makefile.in: Same.
2528         * libmath/Makefile.in: Same.
2529         * include/Makefile.in: Same.
2530         * src/Makefile.in: Same.
2531         * po/Makefile.in: Same.
2532         
2533         * config/abi/pre/gnu.ver: Export parallel list bits.
2534
2535         * docs/html/parallel_mode.html: New.
2536         * docs/html/documentation.html: Add link.
2537         * docs/doxygen/user.cfg.in: Adjust for new files and directory.
2538         * docs/doxygen/doxygroups.cc: Adjust namespace markup.
2539
2540         * include/debug/set.h: Adjust for _GLIBCXX_STD_D or _P change.
2541         * include/debug/bitset: Same.
2542         * include/debug/multiset.h: Same.
2543         * include/debug/vector: Same.
2544         * include/debug/map.h: Same.
2545         * include/debug/deque: Same.
2546         * include/debug/list: Same.
2547         * include/debug/debug.h: Same.
2548         * include/debug/multimap.h: Same.
2549         * include/std/algorithm: Same.
2550         * include/std/numeric: Same.
2551         * include/std/bitset: Same.
2552         * include/std/string: Same.
2553         * include/ext/hash_map: Same.
2554         * include/ext/hash_set: Same.
2555         * include/bits/stl_list.h: Same.
2556         * include/bits/stl_map.h: Same.
2557         * include/bits/stl_algobase.h: Same.
2558         * include/bits/stl_set.h: Same.
2559         * include/bits/stl_multimap.h: Same.
2560         * include/bits/stl_vector.h: Same.
2561         * include/bits/stl_numeric.h: Same.
2562         * include/bits/stl_deque.h: Same.
2563         * include/bits/stl_multiset.h: Same.
2564         * include/bits/char_traits.h: Same.
2565         * include/bits/stl_algo.h: Same.
2566         * include/bits/c++config: Same.
2567         * include/bits/vector.tcc: Same.
2568         * include/bits/deque.tcc: Same.
2569         * include/bits/stl_bvector.h: Same.
2570         * include/bits/list.tcc: Same.
2571         * src/list.cc: Same.
2572         * src/parallel_list.cc: New.
2573
2574         * testsuite/lib/libstdc++.exp (check_v3_target_parallel_mode): New.
2575         * testsuite/lib/dg-options.exp (dg-require-parallel-mode): New.
2576         * scripts/testsuite_flags.in (--cxxparallelflags): New.
2577         * scripts/check_performance: Adjust.
2578         * testsuite/25_algorithms/headers/parallel_algorithm.cc: New.
2579         * testsuite/25_algorithms/headers/algorithm_parallel_mode.cc: New.
2580         * testsuite/25_algorithms/headers/parallel_algorithm_mixed1.cc: New.
2581         * testsuite/25_algorithms/headers/parallel_algorithm_mixed2.cc: New.
2582         * testsuite/26_numerics/headers/numeric/parallel_numeric.cc: New.
2583         * testsuite/26_numerics/headers/numeric/numeric_parallel_mode.cc: New.
2584         * testsuite/26_numerics/headers/numeric/
2585         parallel_numeric_mixed1.cc: New.
2586         * testsuite/26_numerics/headers/numeric/
2587         parallel_numeric_mixed2.cc: New.
2588         
2589 2007-09-11  Daniel Jacobowitz  <dan@codesourcery.com>
2590
2591         * testsuite/lib/libstdc++.exp (libstdc++_init): Revert part of
2592         2007-09-06 change.
2593
2594 2007-09-09  Roger Sayle  <roger@eyesopen.com>
2595
2596         * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add ECANCELED for cygwin.
2597         * configure: Regenerate.
2598         * config/os/generic/error_constants.h: Guard.
2599         * testsuite/19_diagnostics/headers/system_error/
2600         types_std_c++0x.cc: Same.
2601
2602 2007-09-09  Benjamin Kosnik  <bkoz@redhat.com>
2603         
2604         * testsuite/25_algorithms/binary_search.cc: Move...
2605         * testsuite/25_algorithms/binary_search/2.cc: ...here.
2606
2607         * testsuite/25_algorithms/sort.cc: Move...      
2608         * testsuite/25_algorithms/sort/1.cc: ...here.
2609         * testsuite/25_algorithms/partial_sort_copy/2.cc: ...here.
2610         * testsuite/25_algorithms/nth_element/3.cc: ...here.
2611         * testsuite/25_algorithms/partial_sort/2.cc: ...here.
2612         * testsuite/25_algorithms/stable_sort/2.cc: ...here.
2613
2614         * testsuite/25_algorithms/min_max.cc: Move...
2615         * testsuite/25_algorithms/min/1.cc: ...here.
2616         * testsuite/25_algorithms/min/2.cc: ...here.
2617         * testsuite/25_algorithms/max/1.cc: ...here.
2618         * testsuite/25_algorithms/max/2.cc: ...here.
2619
2620 2007-09-09  Joseph Myers  <joseph@codesourcery.com>
2621
2622         * testsuite/lib/libstdc++.exp (v3-build-support): Specify output
2623         file for preprocessing.  Use remote_exec to call ar and ranlib.
2624
2625 2007-09-08  Benjamin Kosnik  <bkoz@redhat.com>
2626
2627         * include/bits/functional_hash.h: Add ext/numeric_traits.h.
2628         * include/tr1/functional_hash.h Same.
2629         * include/tr1/functional: Remove string, ext/type_traits.h includes.
2630         * include/tr1_impl/functional_hash.h: Move string, wstring
2631         definitions for std::<hash>::operator into separate file.
2632         * include/std/functional
2633         * src/hash.cc: New, move definitions here.
2634         * src/hash_c++0x.cc: Same.
2635         * src/Makefile.am: Add new source files.
2636         * configure: Regenerate.
2637         * Makefile.in: Same.
2638         * src/Makefile.in: Same.
2639         * po/Makefile.in: Same.
2640         * libmath/Makefile.in: Same.
2641         * libsupc++/Makefile.in: Same.
2642         * testsuite/Makefile.in: Same.
2643         * config/abi/pre/gnu.ver: Add symbols.
2644         * config/abi/pre/gnu-versioned-namespace.ver: Same, fix.
2645         
2646 2007-09-07  Benjamin Kosnik  <bkoz@redhat.com>
2647
2648         * testsuite/19_diagnostics/error_category/cons/copy_neg.cc:
2649         Correct line number.
2650
2651 2007-09-07  Danny Smith  <dannysmith@users.sourceforge.net>
2652
2653         PR libstdc++/33203
2654         * configure.host (error_constants_dir):  New variable,
2655         defaulting to os/generic.
2656         ( mingw32*): Overide default.
2657         * configure.ac (ERROR_CONSTANTS_SRCDIR): New.
2658         * configure: Regenerate.
2659         * include/Makefile.am (host_headers): Add
2660         $(ERROR_CONSTANTS_SRCDIR)/error_constants.h .
2661         * include/Makefile.in: Regenerate.
2662         * include/std/system_error (enum posix_errno): Remove.
2663         Include <bits/error_constants.h> instead.
2664         * config/os/mingw32/error_constants.h: New.
2665         * config/os/generic/error_constants.h: New.
2666
2667 2007-09-06  Benjamin Kosnik  <bkoz@redhat.com>
2668
2669         * testsuite/lib/libstdc++.exp: Check CXXFLAGS.
2670         * scripts/testsuite_flags.in: CXXFLAGS_default, matching dejagnu.
2671
2672         * include/std/ostream: Spacing tweak.
2673         * include/ext/hashtable.h: Use <algorithm>.
2674         * include/ext/slist: Same.
2675         * include/ext/rope: Same.
2676         * include/bits/stl_function.h: Format.
2677         * include/tr1_impl/array: Remove section number in doxygen markup.
2678         * src/list.cc: Comment tweak.   
2679         
2680         * docs/doxygen/user.cfg.in: Update for include/tr1_impl.
2681         
2682         * testsuite/25_algorithms/search_n/iterator.cc: Add using declaration.
2683         * testsuite/25_algorithms/nth_element/1.cc:  Same.
2684         * testsuite/21_strings/char_traits/requirements/short/1.cc: Use
2685         char_type typedef to the underlying character type.     
2686         * testsuite/21_strings/char_traits/requirements/wchar_t/typedefs.cc:
2687         Remove -ansi -pedantic-errors.
2688         * testsuite/21_strings/char_traits/requirements/char/typedefs.cc: Same.
2689         * testsuite/tr1/6_containers/headers/functional/synopsis.cc:
2690         Remove specializations.
2691         
2692 2007-09-06  Paolo Carlini  <pcarlini@suse.de>
2693
2694         * include/bits/stl_vector.h (_Vector_base<>::_M_allocate):
2695         Do not call _M_impl.allocate when __n == 0.
2696         * testsuite/23_containers/vector/zero_sized_allocations.cc: New.
2697
2698 2007-09-06  Benjamin Kosnik  <bkoz@redhat.com>
2699         
2700         PR libstdc++/29367
2701         * include/ext/pb_ds/detail/map_debug_base.hpp: From this..
2702         * include/ext/pb_ds/detail/debug_map_base.hpp: ...to this.
2703         Rename map_debug_base to debug_map_base, add std::pair output
2704         extractors, change duplicate map_debug_base typedef in containers
2705         to debug_base. Use m_store_extra_indicator for m_store_hash_indicator.
2706         * include/ext/pb_ds/*: Likewise.
2707         * include/Makefile.am: Same.
2708         * include/Makefile.in: Regenerate.
2709         
2710 2007-09-06  Matthias Klose  <doko@debian.org>
2711
2712         * testsuite/27_io/headers/cstdlib: Remove empty directory.
2713
2714 2007-09-05  Roger Sayle  <roger@eyesopen.com>
2715
2716         * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add EBADMSG for darwin.
2717         * configure: Regenerate.
2718         * include/std/system_error: Guard.
2719         * testsuite/19_diagnostics/headers/system_error/
2720         types_std_c++0x.cc: Same.
2721         * testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Adjust
2722         line numbers.
2723
2724 2007-09-03  Paolo Carlini  <pcarlini@suse.de>
2725
2726         PR libstdc++/33293
2727         * include/bits/stl_numeric.h (accumulate, inner_product):
2728         Add inline function-specifier.
2729
2730 2007-08-31  Douglas Gregor  <doug.gregor@gmail.com>
2731
2732         * testsuite/abi/demangle/cxx0x/rref.cc: New.
2733
2734 2007-08-29  Benjamin Kosnik  <bkoz@redhat.com>
2735
2736         * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add ENODATA, ENOSR,
2737         ENOSTR, ETIME for freebsd.      
2738         * configure: Regenerate.
2739         * include/std/system_error: Guard.      
2740         * testsuite/19_diagnostics/headers/system_error/
2741         types_std_c++0x.cc: Same.
2742         * testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Adjust
2743         line numbers.
2744
2745 2007-08-28  Paolo Carlini  <pcarlini@suse.de>
2746
2747         PR libstdc++/33128
2748         * include/tr1_impl/random (uniform_int<>::_M_call): Deal with
2749         __urng() returning negative values.
2750         * testsuite/tr1/5_numerical_facilities/random/uniform_int/33128.cc:
2751         New.
2752
2753 2007-08-24  Benjamin Kosnik  <bkoz@redhat.com>
2754
2755         * acinclude.m4: Fix duplicate variable names.
2756         * configure: Regenerate.
2757
2758 2007-08-24  Benjamin Kosnik  <bkoz@redhat.com>
2759
2760         * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add ENOLINK, EPROTO
2761         for netbsd.
2762         * configure: Regenerate.
2763         * include/std/system_error: Guard.      
2764         * testsuite/19_diagnostics/headers/system_error/
2765         types_std_c++0x.cc: Same.
2766         * testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Adjust
2767         line numbers.
2768
2769 2007-08-23  Benjamin Kosnik  <bkoz@redhat.com>
2770
2771         * include/std/system_error: New file.
2772         * src/system_error.cc: New file.
2773         * src/Makefile.am (sources): Add.
2774         * src/Makefile.in: Regenerate.  
2775         * include/Makefile.am (std_headers): Add system_error.
2776         * include/Makefile.in: Regenerate.
2777         * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): New.
2778         * configure.ac: Call it.
2779         * config.h.in: Regenerate.
2780         * include/bits/functional_hash.h: Add hash<error_code>.
2781         * include/std/ostream: Add inserters for error_code.
2782         
2783         * docs/doxygen/user.cfg.in: Add system_error.
2784
2785         * config/abi/pre/gnu.ver(GLIBCXX_3.4.10): Add new symbols.
2786
2787         * testsuite/19_diagnostics/error_code: New.
2788         * testsuite/19_diagnostics/error_code/cons: Same.
2789         * testsuite/19_diagnostics/error_code/cons/1.cc: Same.
2790         * testsuite/19_diagnostics/error_code/operators: Same.
2791         * testsuite/19_diagnostics/error_code/operators/bool.cc: Same.
2792         * testsuite/19_diagnostics/error_code/operators/bool_neg.cc: Same.
2793         * testsuite/19_diagnostics/error_code/operators/equal.cc: Same.
2794         * testsuite/19_diagnostics/error_code/operators/not_equal.cc: Same.
2795         * testsuite/19_diagnostics/error_category: Same.
2796         * testsuite/19_diagnostics/error_category/cons: Same.
2797         * testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Same.
2798         * testsuite/19_diagnostics/error_category/cons/default.cc: Same.
2799         * testsuite/19_diagnostics/error_category/operators: Same.
2800         * testsuite/19_diagnostics/error_category/operators/equal.cc: Same.
2801         * testsuite/19_diagnostics/error_category/operators/not_equal.cc: Same.
2802         * testsuite/19_diagnostics/headers/system_error: Same.
2803         * testsuite/19_diagnostics/headers/system_error/
2804         types_std_c++0x.cc: Same.
2805         * testsuite/19_diagnostics/headers/system_error/std_c++0x_neg.cc: Same.
2806         * testsuite/19_diagnostics/system_error: Same.
2807         * testsuite/19_diagnostics/system_error/
2808         cons_virtual_derivation.cc: Same.
2809         * testsuite/19_diagnostics/system_error/cons-1.cc: Same.
2810         * testsuite/19_diagnostics/system_error/what-1.cc: Same.
2811         * testsuite/19_diagnostics/system_error/what-2.cc: Same.
2812         * testsuite/19_diagnostics/system_error/what-big.cc: Same.
2813         * testsuite/19_diagnostics/system_error/what-3.cc: Same.
2814         * testsuite/19_diagnostics/system_error/what-4.cc: Same.
2815         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
2816         error_code.cc: Same.
2817         * testsuite/27_io/basic_ostream/inserters_other/char/
2818         error_code.cc: Same.
2819         * testsuite/tr1/6_containers/hash/operators: New.
2820         * testsuite/tr1/6_containers/hash/operators/size_t.cc: Same.
2821         
2822         * testsuite/23_containers/hash: Move...
2823         * testsuite/20_util/hash: ... here.
2824         * testsuite/20_util/hash/operators: New.
2825         * testsuite/20_util/hash/operators/size_t.cc: New.
2826
2827         * testsuite/20_util/function_objects/bad_function_call: Move...
2828         * testsuite/20_util/bad_function_call: ...here.
2829         
2830 2007-08-21  Benjamin Kosnik  <bkoz@montsouris.artheist.org>
2831
2832         * include/Makefile.am (install-data-local): Remove pch-install rules.
2833         (host_headers): Add stdc++.h, stdtr1c++.h, extc++.h.
2834         * include/Makefile.in: Regenerate.
2835         * config.h.in: Same.
2836
2837         * scripts/check_compile: Remove space between outputs.  
2838         * include/ext/throw_allocator.h: Correct doxygen markup.        
2839         * include/bits/char_traits.h: Correct spacing.
2840         * include/bits/stl_function.h: Same, for 80 column.
2841         * include/std/valarray: Same.
2842         * testsuite/util/testsuite_iterators.h: Same.   
2843         * testsuite/25_algorithms/headers/algorithm/synopsis.cc: Format.
2844         
2845 2007-08-17  Daniel Jacobowitz  <dan@codesourcery.com>
2846
2847         PR testsuite/31884
2848         * testsuite/ext/pb_ds/example/priority_queue_dijkstra.cc (main): Do
2849         not access deleted nodes.
2850
2851         * testsuite/25_algorithms/copy/streambuf_iterators/char/4.cc,
2852         testsuite/25_algorithms/find/istreambuf_iterators/char/2.cc,
2853         testsuite/27_io/basic_filebuf/open/char/4.cc,
2854         testsuite/27_io/objects/char/9.cc: Use dg-require-fileio.
2855         * testsuite/ext/forced_exception_error/cons_virtual_derivation.cc,
2856         testsuite/ext/pb_ds/regression/hash_data_map_rand.cc,
2857         testsuite/ext/pb_ds/regression/trie_data_map_rand.cc,
2858         testsuite/ext/pb_ds/regression/list_update_no_data_map_rand.cc,
2859         testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc,
2860         testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc,
2861         testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc,
2862         testsuite/ext/pb_ds/regression/priority_queue_rand.cc,
2863         testsuite/ext/pb_ds/regression/tree_data_map_rand.cc,
2864         testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc,
2865         testsuite/ext/throw_allocator/deallocate_global.cc,
2866         testsuite/ext/throw_allocator/check_delete.cc,
2867         testsuite/ext/throw_allocator/check_allocate_max_size.cc,
2868         testsuite/ext/throw_allocator/check_deallocate_null.cc,
2869         testsuite/ext/throw_allocator/check_new.cc,
2870         testsuite/ext/throw_allocator/deallocate_local.cc,
2871         testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
2872         cons/gen1.cc,
2873         testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/cons/
2874         gen1.cc,
2875         testsuite/tr1/5_numerical_facilities/random/linear_congruential/cons/
2876         gen1.cc,
2877         testsuite/tr1/5_numerical_facilities/random/mersenne_twister/cons/
2878         gen1.cc,
2879         testsuite/23_containers/list/modifiers/insert/25288.cc: Use
2880         dg-require-time.
2881
2882 2007-08-17  Paolo Carlini  <pcarlini@suse.de>
2883
2884         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
2885         dg-error lines.
2886         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Ditto.
2887
2888 2007-08-17  Chris Fairles  <chris.fairles@gmail.com>
2889
2890         PR libstdc++/33098
2891         * include/std/type_traits (__is_convertible_helper):
2892         Use add_lvalue_reference.
2893
2894 2007-08-17  Johannes Willkomm  <willkomm@sc.rwth-aachen.de>
2895
2896         PR libstdc++/33084
2897         * include/std/valarray (operator _Op(const _Tp&,
2898         const valarray<>&)): Fix typo.
2899         * testsuite/26_numerics/numeric_arrays/valarray/33084.cc: New.
2900
2901 2007-08-07  Jim Blandy  <jimb@codesourcery.com>
2902
2903         * src/Makefile.am (libstdc++-symbol.ver): Make
2904         sure the build tree copy of libstdc++-symbol.ver is writeable.
2905         * src/Makefile.in: Regenerated.
2906
2907 2007-08-02  Paolo Carlini  <pcarlini@suse.de>
2908
2909         DR 660, [Ready] in Toronto.
2910         * include/bits/stl_function.h (bit_and, bit_or, bit_xor): Add.
2911         * testsuite/20_util/function_objects/dr660.cc: New.
2912         * docs/html/ext/howto.html: Add an entry for DR 660, update.
2913
2914         * docs/html/ext/lwg-closed.html, docs/html/ext/lwg-active.html,
2915         docs/html/ext/lwg-defects.html: Import Revision 49.
2916
2917 2007-07-30  Paolo Carlini  <pcarlini@suse.de>
2918
2919         PR libstdc++/32908
2920         * include/bits/stl_algobase.h (struct __lc_rai): New.
2921         (lexicographical_compare(_II1, _II1, _II2, _II2),
2922         lexicographical_compare(_II1, _II1, _II2, _II2, _Compare)): Use it.
2923         * testsuite/performance/25_algorithms/lexicographical_compare.cc: New.
2924
2925 2007-07-27  Paolo Carlini  <pcarlini@suse.de>
2926
2927         PR libstdc++/32907
2928         * include/bits/basic_string.h (operator==(const basic_string<_CharT>&,
2929         const basic_string<_CharT>&)): Add.
2930         (operator!=): Forward to operator==.
2931         * include/ext/vstring.h(operator==(const __versa_string<_CharT,
2932         std::char_traits<_CharT>, std::allocator<_CharT>, _Base>&,
2933         const __versa_string<_CharT, std::char_traits<_CharT>,
2934         std::allocator<_CharT>, _Base>&)): Add.
2935         (operator!=): Forward to operator==.
2936
2937         * include/ext/sso_string_base.h (_M_compare): Remove.
2938
2939 2007-07-25  Stephen M. Webb  <stephenw@xandros.com>
2940
2941         Fixed abi_check for missing symbol size changes.
2942         * testsuite/util/testsuite_abi.cc: Changed local variable name to
2943         prevent member variable hiding.
2944
2945 2007-07-25  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2946
2947         PR libstdc++/31836
2948         * config/locale/generic/c_locale.cc (__convert_to_v): Don't use
2949         strtold if _GLIBCXX_HAVE_BROKEN_STRTOLD is defined.
2950         * config/os/hpux/os_defines.h (_GLIBCXX_HAVE_BROKEN_STRTOLD): Define
2951         if __hppa__ is defined.
2952
2953 2007-07-16  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2954
2955         PR bootstrap/3456
2956         * testsuite/22_locale/locale/cons/12658_thread-1.cc: Enable on
2957         mips-sgi-irix6*.
2958         * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
2959         * testsuite/thread/18185.cc: Likewise.
2960         * testsuite/thread/pthread1.cc: Likewise.
2961         * testsuite/thread/pthread2.cc: Likewise.
2962         * testsuite/thread/pthread3.cc: Likewise.
2963         * testsuite/thread/pthread4.cc: Likewise.
2964         * testsuite/thread/pthread5.cc: Likewise.
2965         * testsuite/thread/pthread6.cc: Likewise.
2966         * testsuite/thread/pthread7-rope.cc: Likewise.
2967         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
2968         default_weaktoshared.cc: Likewise.
2969         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
2970         mutex_weaktoshared.cc: Likewise.
2971
2972 2007-07-16  Danny Smith  <dannysmith@users.sourceforge.net>
2973
2974         * config/os/mingw32/ctype_base.h: Use the generic libstdc++ masks
2975         rather than MSVCRT defines.
2976         * config/os/mingw32/ctype_noninline.h (classic_table): Construct
2977         and return a static classic table based on generic libstdc++ masks.
2978
2979 2007-07-12  Douglas Gregor  <doug.gregor@gmail.com>
2980
2981         * testsuite/tr1/3_function_objects/bind/all_bound.cc: Disambiguate
2982         uses of TR1/C++0x facilities.
2983         * testsuite/tr1/3_function_objects/bind/nested.cc: Ditto.
2984         * testsuite/tr1/3_function_objects/bind/placeholders.cc: Ditto.
2985         * testsuite/tr1/6_containers/unordered_multimap/requirements/
2986         explicit_instantiation.cc: Ditto. 
2987         * testsuite/tr1/6_containers/unordered_multimap/swap/1.cc: Ditto.
2988         * testsuite/tr1/6_containers/unordered_multimap/swap/2.cc: Ditto.
2989         * testsuite/tr1/6_containers/unordered_set/requirements/
2990         explicit_instantiation.cc: Ditto.
2991         * testsuite/tr1/6_containers/unordered_set/swap/1.cc: Ditto.
2992         * testsuite/tr1/6_containers/unordered_set/swap/2.cc: Ditto.
2993         * testsuite/tr1/6_containers/utility/pair.cc: Ditto.
2994         * testsuite/tr1/6_containers/unordered_map/requirements/
2995         explicit_instantiation.cc: Ditto. 
2996         * testsuite/tr1/6_containers/unordered_map/24064.cc: Ditto.
2997         * testsuite/tr1/6_containers/unordered_map/swap/1.cc: Ditto.
2998         * testsuite/tr1/6_containers/unordered_map/swap/2.cc: Ditto.
2999         * testsuite/tr1/6_containers/tuple/cons/big_tuples.cc: Ditto.
3000         * testsuite/tr1/6_containers/tuple/cons/constructor.cc: Ditto.
3001         * testsuite/tr1/6_containers/tuple/cons/assignment.cc: Ditto.
3002         * testsuite/tr1/6_containers/tuple/tuple_element.cc: Ditto.
3003         * testsuite/tr1/6_containers/tuple/tuple_size.cc: Ditto.
3004         * testsuite/tr1/6_containers/tuple/comparison_operators/
3005         comparisons.cc: Ditto. 
3006         * testsuite/tr1/6_containers/tuple/element_access/get.cc: Ditto.
3007         * testsuite/tr1/6_containers/tuple/creation_functions/23978.cc: Ditto.
3008         * testsuite/tr1/6_containers/tuple/creation_functions/tie.cc: Ditto.
3009         * testsuite/tr1/6_containers/tuple/creation_functions/make_tuple.cc:
3010         Ditto.
3011         * testsuite/tr1/6_containers/unordered_multiset/requirements/
3012         explicit_instantiation.cc: Ditto.
3013         * testsuite/tr1/6_containers/unordered_multiset/swap/1.cc: Ditto.
3014         * testsuite/tr1/6_containers/unordered_multiset/swap/2.cc: Ditto.
3015
3016 2007-07-10  Bob Wilson  <bob.wilson@acm.org>
3017         
3018         * configure.ac: Check if $atomicity_dir is cpu/generic/atomicity_mutex
3019         instead of the non-existent cpu/generic/atomic_mutex.
3020         * configure: Regenerate.
3021         
3022 2007-07-10  Paolo Carlini  <pcarlini@suse.de>
3023
3024         * include/std/utility (identity, move, forward): Add.
3025         * testsuite/20_util/move/requirements/explicit_instantiation.cc: New.
3026         * testsuite/20_util/move/1.cc: New.
3027         * testsuite/20_util/identity/value.cc: New.
3028         * testsuite/20_util/identity/requirements/typedefs.cc: New.
3029         * testsuite/20_util/identity/requirements/explicit_instantiation.cc:
3030         New.
3031         * testsuite/20_util/forward/requirements/explicit_instantiation.cc:
3032         New.
3033         * testsuite/20_util/forward/1.cc: New.
3034         * testsuite/20_util/forward/1_neg.cc: New.
3035         
3036 2007-07-09  Paolo Carlini  <pcarlini@suse.de>
3037
3038         * testsuite/27_io/ios_base/failure/what-1.cc: Include <stdexcept>.
3039
3040 2007-07-09  Jim Xochellis  <jimxoch@yahoo.gr>
3041             Paolo Carlini  <pcarlini@suse.de>
3042
3043         * include/bits/stl_algo.h (search(_ForwardIterator1,
3044         _ForwardIterator1, _ForwardIterator2, _ForwardIterator2)): Tidy.
3045         (search(_ForwardIterator1, _ForwardIterator1, _ForwardIterator2,
3046         _ForwardIterator2, _BinaryPredicate)): Likewise.
3047
3048 2007-07-06  Hans-Peter Nilsson  <hp@axis.com>
3049
3050         * testsuite/lib/libstdc++.exp (v3-build_support): Use env(AR)
3051         and env(RANLIB), not env(AR_FOR_TARGET) and env(RANLIB_FOR_TARGET).
3052
3053 2007-07-05  Joerg Richter  <joerg.richter@pdv-fs.de>
3054
3055         PR libstdc++/31957
3056         * include/Makefile.am: Work around an AIX sed oddity.
3057         * include/Makefile.in: Regenerate.
3058         
3059 2007-07-04  Jim Xochellis  <jimxoch@yahoo.gr>
3060
3061         * include/bits/stl_algo.h (search(_ForwardIterator1,
3062         _ForwardIterator1, _ForwardIterator2, _ForwardIterator2)): Simplify
3063         general case loop to a for(;;).
3064         (search(_ForwardIterator1, _ForwardIterator1, _ForwardIterator2,
3065         _ForwardIterator2, _BinaryPredicate)): Likewise; remove redundant
3066         inner loop.
3067         
3068 2007-07-03  Paolo Carlini  <pcarlini@suse.de>
3069
3070         PR libstdc++/31518
3071         * include/debug/formatter.h (_Error_formatter::_M_get_max_length): New.
3072         (_Error_formatter::_Error_formatter): Use it.
3073         * src/debug.cc: Define.
3074         (_Error_formatter::_M_error): Tweak.
3075         * configure.ac: Adjust version to 6:10:0.
3076         * config/abi/pre/gnu.ver: Export _Error_formatter::_M_get_max_length
3077         at GLIBCXX_3.4.10.
3078         * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.10.
3079         * docs/html/debug.html: Document.
3080         * configure: Regenerate.
3081
3082 2007-07-02  Douglas Gregor  <doug.gregor@gmail.com>
3083
3084         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
3085         Tweak line numbers.
3086         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
3087         Ditto.
3088         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc:
3089         Don't try to create an unsigned wchar_t.
3090         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
3091         Don't try to create an unsigned wchar_t.
3092         * testsuite/util/testsuite_hooks.h: Remove a stray semicolon.
3093
3094 2007-07-01  Douglas Gregor  <doug.gregor@gmail.com>
3095
3096         * include/std/type_traits (__make_unsigned): Remove invalid
3097         wchar_t specialization.
3098         (__make_signed): Remove invalid wchar_t specialization.
3099         
3100 2007-06-29  Douglas Gregor  <doug.gregor@gmail.com>
3101
3102         * testsuite/18_support/headers/cstdbool/std_c++0x_neg.cc: Force
3103         C++98 mode.  
3104         * testsuite/18_support/headers/cstdint/std_c++0x_neg.cc: Ditto.
3105         * testsuite/20_util/headers/type_traits/std_c++0x_neg.cc: Ditto.
3106         * testsuite/23_containers/headers/array/std_c++0x_neg.cc: Ditto.
3107         * testsuite/23_containers/headers/tuple/std_c++0x_neg.cc: Ditto.
3108         * testsuite/23_containers/headers/unordered_map/std_c++0x_neg.cc:
3109         Ditto. 
3110         * testsuite/23_containers/headers/unordered_set/std_c++0x_neg.cc:
3111         Ditto. 
3112         * testsuite/26_numerics/headers/ccomplex/std_c++0x_neg.cc: Ditto.
3113         * testsuite/26_numerics/headers/cfenv/std_c++0x_neg.cc: Ditto.
3114         * testsuite/26_numerics/headers/ctgmath/std_c++0x_neg.cc: Ditto.
3115         * testsuite/26_numerics/headers/random/std_c++0x_neg.cc: Ditto.
3116         * testsuite/27_io/headers/cinttypes/std_c++0x_neg.cc: Ditto.
3117         * testsuite/28_regex/headers/regex/std_c++0x_neg.cc: Ditto.
3118
3119 2007-06-28  Paolo Carlini  <pcarlini@suse.de>
3120
3121         PR libstdc++/32509
3122         * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Carry out the checks
3123         involving the de_DE locale only if an auto locale config is
3124         used for a target suitable for the gnu locale model.
3125         * docs/html/install.html: Update.
3126         * configure: Regenerated.
3127
3128 2007-06-26  Benjamin Kosnik  <bkoz@redhat.com>
3129
3130         * testsuite/util/testsuite_api.h: New.
3131         * testsuite/27_io/ios_base/failure: Add.
3132         * testsuite/27_io/ios_base/failure/cons_virtual_derivation.cc: New.
3133         * testsuite/27_io/ios_base/failure/what-1.cc: Same.
3134         * testsuite/27_io/ios_base/failure/what-2.cc: Same.
3135         * testsuite/27_io/ios_base/failure/what-big.cc: Same.
3136         * testsuite/27_io/ios_base/failure/what-3.cc: Same.
3137         * testsuite/19_diagnostics/logic_error/
3138         cons_virtual_derivation.cc: Same.
3139         * testsuite/19_diagnostics/runtime_error/
3140         cons_virtual_derivation.cc: Same.
3141         * testsuite/18_support/bad_alloc/cons_virtual_derivation.cc: Same.
3142         * testsuite/18_support/bad_cast/cons_virtual_derivation.cc: Same.
3143         * testsuite/18_support/bad_exception/cons_virtual_derivation.cc: Same.
3144         * testsuite/18_support/bad_typeid/cons_virtual_derivation.cc: Same.
3145         * testsuite/ext/concurrence_lock_error: New.
3146         * testsuite/ext/concurrence_lock_error/
3147         cons_virtual_derivation.cc: Same.
3148         * testsuite/ext/forced_exception_error: New.
3149         * testsuite/ext/forced_exception_error/
3150         cons_virtual_derivation.cc: Same.
3151         * testsuite/ext/concurrence_unlock_error: New.
3152         * testsuite/ext/concurrence_unlock_error/
3153         cons_virtual_derivation.cc: Same.
3154         * testsuite/20_util/function_objects/bad_function_call: New.
3155         * testsuite/20_util/function_objects/bad_function_call/
3156         cons_virtual_derivation.cc: Same.
3157         
3158 2007-06-26  Benjamin Kosnik  <bkoz@redhat.com>  
3159
3160         * include/ext/throw_allocator.h: Fixes for -fno-exceptions.
3161         * testsuite/util/testsuite_shared.cc: Same.
3162         * testsuite/util/io/illegal_input_error.hpp: Same.
3163         * testsuite/util/io/verified_cmd_line_input.cc: Same.
3164
3165         * libsupc++/typeinfo (type_info): Correct comment formatting,
3166         clarify member access and public interface.
3167         * libsupc++/exception: Less compressed comments.
3168         * libsupc++/new: Same.
3169         
3170 2007-06-18  Paolo Carlini  <pcarlini@suse.de>
3171
3172         * include/bits/stl_list.h: Rename guard macro consistently with
3173         file name.
3174         * include/bits/stl_algobase.h: Likewise.
3175         * include/bits/stl_map.h: Likewise.
3176         * include/bits/stl_queue.h: Likewise.
3177         * include/bits/stl_set.h: Likewise.
3178         * include/bits/stl_stack.h: Likewise.
3179         * include/bits/stl_iterator_base_types.h: Likewise.
3180         * include/bits/stl_multimap.h: Likewise.
3181         * include/bits/stl_pair.h: Likewise.
3182         * include/bits/stl_vector.h: Likewise.
3183         * include/bits/stl_deque.h: Likewise.
3184         * include/bits/stl_multiset.h: Likewise.
3185         * include/bits/stl_iterator_base_funcs.h: Likewise.
3186         * include/bits/stl_algo.h: Likewise.
3187         * include/bits/stl_iterator.h: Likewise.
3188         * include/bits/stl_tempbuf.h: Likewise.
3189         * include/bits/stl_bvector.h: Likewise.
3190         * include/bits/stl_function.h: Likewise.
3191         * include/bits/stl_tree.h: Likewise.
3192
3193 2007-06-17  Nathan Sidwell  <nathan@codesourcery.com>
3194
3195         * config/cpu/m68k/atomicity.h: Use __mcfisaa__, __mcfisaaplus__,
3196         __mcfisab__ & __mcfisac__ instead of obsolete cpu #defines.
3197
3198 2007-06-13  Richard Earnshaw  <rearnsha@arm.com>
3199
3200         * libsupc++/eh_arm.cc (__cxa_type_match): Handle foreign
3201         exceptions.
3202         * libsubpc++/eh_personality.cc: Don't try to set up foreign or
3203         forced unwind types here when using the ARM EABI unwinder.
3204
3205 2007-06-13  Paolo Carlini  <pcarlini@suse.de>
3206
3207         * include/c_global/cmath: Tweak includes.
3208         * include/std/memory: Likewise.
3209         * include/std/complex: Likewise.
3210         * include/tr1/memory: Likewise.
3211         * include/tr1/complex: Likewise.
3212         * include/tr1/cmath: Likewise; do not wrap special functions
3213         in #ifndef __GXX_EXPERIMENTAL_CXX0X__.
3214
3215 2007-06-10  Benjamin Kosnik  <bkoz@redhat.com>
3216
3217         * testsuite/util/testsuite_performance.h: Add cstring include for
3218         memset.
3219
3220 2007-06-08  Paolo Carlini  <pcarlini@suse.de>
3221
3222         * docs/html/install.html: Adjust consistently with libstdc++/31717.
3223
3224 2007-06-08  Francesco Palagi  <palagi@arcetri.astro.it>
3225
3226         * include/std/fstream: Add Table 92 in comment.
3227
3228 2007-06-06  Paolo Carlini  <pcarlini@suse.de>
3229
3230         PR libstdc++/32233
3231         * include/bits/stl_vector.h (_M_fill_initialize): Fix return type.
3232         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
3233         Adjust dg-error line.
3234         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
3235         Likewise.
3236
3237 2007-06-06  Benjamin Kosnik  <bkoz@redhat.com>
3238             Frank Mori Hess  <frank.hess@nist.gov>
3239         
3240         * docs/html/debug.html: Correct link.
3241
3242 2007-06-02  Paolo Carlini  <pcarlini@suse.de>
3243
3244         * include/tr1_impl/type_traits (is_reference, add_reference,
3245         remove_reference): Remove.
3246         * include/tr1/type_traits (is_reference, add_reference,
3247         remove_reference): Add.
3248         * include/std/type_traits (is_lvalue_reference, is_rvalue_reference,
3249         is_reference, remove_reference, add_lvalue_reference,
3250         add_rvalue_reference): Add.
3251         * include/tr1_impl/boost_shared_ptr.h (operator*): Adjust.
3252         * testsuite/20_util/add_lvalue_reference/requirements/
3253         explicit_instantiation.cc: New.
3254         * testsuite/20_util/add_lvalue_reference/value.cc: Likewise.
3255         * testsuite/20_util/add_rvalue_reference/requirements/
3256         explicit_instantiation.cc: Likewise.
3257         * testsuite/20_util/add_rvalue_reference/value.cc: Likewise.
3258         * testsuite/20_util/is_lvalue_reference/requirements/
3259         explicit_instantiation.cc: Likewise.
3260         * testsuite/20_util/is_lvalue_reference/requirements/
3261         typedefs.cc: Likewise.
3262         * testsuite/20_util/is_lvalue_reference/value.cc: Likewise.
3263         * testsuite/20_util/is_rvalue_reference/requirements/
3264         explicit_instantiation.cc: Likewise.
3265         * testsuite/20_util/is_rvalue_reference/requirements/
3266         typedefs.cc: Likewise.
3267         * testsuite/20_util/is_rvalue_reference/value.cc: Likewise.
3268         * testsuite/20_util/is_reference/requirements/
3269         explicit_instantiation.cc: Likewise.
3270         * testsuite/20_util/is_reference/requirements/typedefs.cc: Likewise.
3271         * testsuite/20_util/is_reference/value.cc: Likewise.
3272         * testsuite/20_util/remove_reference/requirements/
3273         explicit_instantiation.cc: New.
3274         * testsuite/20_util/remove_reference/value.cc: Likewise.
3275
3276         * testsuite/tr1/4_metaprogramming/add_const/requirements/
3277         typedefs.cc: Move...
3278         * testsuite/tr1/4_metaprogramming/add_const/value.cc: ... here.
3279         * testsuite/tr1/4_metaprogramming/add_cv/requirements/
3280         typedefs.cc: Move...
3281         * testsuite/tr1/4_metaprogramming/add_cv/value.cc: ... here.
3282         * testsuite/tr1/4_metaprogramming/add_pointer/requirements/
3283         typedefs.cc: Move...
3284         * testsuite/tr1/4_metaprogramming/add_pointer/value.cc: ... here.
3285         * testsuite/tr1/4_metaprogramming/add_reference/requirements/
3286         typedefs.cc: Move...
3287         * testsuite/tr1/4_metaprogramming/add_reference/value.cc: ... here.
3288         * testsuite/tr1/4_metaprogramming/add_volatile/requirements/
3289         typedefs.cc: Move...
3290         * testsuite/tr1/4_metaprogramming/add_volatile/value.cc: ... here.
3291         * testsuite/tr1/4_metaprogramming/aligned_storage/requirements/
3292         typedefs.cc: Move...
3293         * testsuite/tr1/4_metaprogramming/aligned_storage/value.cc: ... here.
3294
3295 2007-06-02  Paolo Bonzini  <bonzini@gnu.org>
3296
3297         * configure: Regenerate.
3298
3299 2007-06-01  Benjamin Kosnik  <bkoz@redhat.com>
3300         
3301         * testsuite/19_diagnostics/logic_error/what-big.cc: New.
3302         * testsuite/19_diagnostics/logic_error/what-3.cc: Same.
3303         * testsuite/19_diagnostics/runtime_error/what-big.cc: Same.
3304         * testsuite/19_diagnostics/runtime_error/what-3.cc: Same.
3305
3306         * testsuite/18_support/14493.cc: Break into...
3307         * testsuite/18_support/exception/what.cc: ...this.
3308         * testsuite/18_support/bad_cast/what.cc: ...this.
3309         * testsuite/18_support/bad_alloc/what.cc: ...this.
3310         * testsuite/18_support/bad_typeid/what.cc: ...this.
3311         * testsuite/18_support/bad_exception/what.cc: ...this.
3312
3313         * testsuite/19_diagnostics/bad_exception/23591_thread-1.c: Move...
3314         * testsuite/18_support/bad_exception/23591_thread-1.c: ...here.
3315
3316         * testsuite/18_support/14026.cc: Move...
3317         * testsuite/18_support/uncaught_exception/14026.cc: ...here.
3318
3319 2007-06-01  Benjamin Kosnik  <bkoz@redhat.com>
3320
3321         * include/ext/throw_allocator.h (__throw_allocator::allocate):
3322         Throw bad_alloc for out of memory conditions.   
3323         * testsuite/ext/throw_allocator/deallocate_global.cc: New.
3324         * testsuite/ext/throw_allocator/check_delete.cc: Same.
3325         * testsuite/ext/throw_allocator/check_allocate_max_size.cc: Same.
3326         * testsuite/ext/throw_allocator/check_deallocate_null.cc: Same.
3327         * testsuite/ext/throw_allocator/explicit_instantiation.cc: Same.
3328         * testsuite/ext/throw_allocator/check_new.cc: Same.
3329         * testsuite/ext/throw_allocator/deallocate_local.cc: Same.
3330
3331 2007-05-31  Paolo Carlini  <pcarlini@suse.de>
3332
3333         PR libstdc++/31426
3334         * include/bits/c++config: Remove namespace association bits
3335         from tr1 to std.
3336
3337         * include/ext/type_traits.h (__promote, __promote2,
3338         __promote3, __promote4): Add.
3339
3340         * include/bits/hashtable.h: New.
3341         * include/bits/functional_hash.h: Likewise.
3342         * include/tr1/hashtable.h: Likewise.
3343
3344         * include/tr1_impl/random: New.
3345         * include/tr1_impl/cinttypes: Likewise.
3346         * include/tr1_impl/cstdlib: Likewise.
3347         * include/tr1_impl/unordered_map: Likewise.
3348         * include/tr1_impl/cstdio: Likewise.
3349         * include/tr1_impl/boost_shared_ptr.h: Likewise.
3350         * include/tr1_impl/cctype: Likewise.
3351         * include/tr1_impl/random.tcc: Likewise.
3352         * include/tr1_impl/tuple: Likewise.
3353         * include/tr1_impl/functional_hash.h: Likewise.
3354         * include/tr1_impl/hashtable: Likewise.
3355         * include/tr1_impl/cmath: Likewise.
3356         * include/tr1_impl/type_traitsfwd.h: Likewise.
3357         * include/tr1_impl/hashtable_policy.h: Likewise.
3358         * include/tr1_impl/cfenv: Likewise.
3359         * include/tr1_impl/unordered_set: Likewise.
3360         * include/tr1_impl/functional: Likewise.
3361         * include/tr1_impl/utility: Likewise.
3362         * include/tr1_impl/complex: Likewise.
3363         * include/tr1_impl/type_traits: Likewise.
3364         * include/tr1_impl/cwchar: Likewise.
3365         * include/tr1_impl/cstdint: Likewise.
3366         * include/tr1_impl/regex: Likewise.
3367         * include/tr1_impl/array: Likewise.
3368         * include/tr1_impl/cwctype: Likewise.
3369
3370         * include/tr1/type_traitsfwd.h: Remove.
3371         * include/tr1/boost_shared_ptr.h: Likewise.
3372         * include/tr1/common.h: Likewise.
3373         * include/tr1/hashtable: Likewise.
3374         * include/tr1/hashtable_policy.h: Likewise.
3375         * include/tr1/random.tcc: Likewise.
3376
3377         * include/c_global/cinttypes: Include tr1_impl/cinttypes.
3378         * include/c_global/cstdlib: Likewise for cstdlib.
3379         * include/c_global/cstdio: Likewise for cstdio.
3380         * include/c_global/cctype: Likewise for cctype.
3381         * include/c_global/cmath: Likewise for cmath.
3382         * include/c_global/cfenv: Likewise for cfenv.
3383         * include/c_global/cwchar: Likewise for cwchar.
3384         * include/c_global/cstdint: Likewise for cstdint.
3385         * include/c_global/cwctype: Likewise for cwctype.
3386         * include/tr1/cinttypes: Likewise for cinttypes.
3387         * include/tr1/cstdlib: Likewise for cstdlib.
3388         * include/tr1/cstdio: Likewise for cstdio.
3389         * include/tr1/cctype: Likewise for cctype.
3390         * include/tr1/cmath: Likewise for cmath.
3391         * include/tr1/cfenv: Likewise for cfenv.
3392         * include/tr1/cwchar: Likewise for cwchar.
3393         * include/tr1/cstdint: Likewise for cstdint.
3394         * include/tr1/cwctype: Likewise for cwctype.
3395         * include/tr1/functional_hash.h: Likewise for functional_hash.
3396
3397         * include/std/tuple: Include tr1_impl/tuple.
3398         * include/std/utility: Likewise for utility.
3399         * include/std/type_traits: Likewise for type_traits.
3400         (is_pod): Just forward to __is_pod.
3401         (has_trivial_default_constructor): Just forward to
3402         __has_trivial_constructor.
3403         (has_trivial_copy_constructor): Just forward to __has_trivial_copy.
3404         (has_trivial_assign): Just forward to __has_trivial_assign.
3405         (has_trivial_destructor): Just forward to __has_trivial_destructor.
3406         (has_nothrow_default_constructor): Just forward to
3407         __has_nothrow_constructor.
3408         (has_nothrow_copy_constructor): Just forward to __has_nothrow_copy.
3409         (has_nothrow_assign): Just forward to __has_nothrow_assign.
3410         (is_base_of): Just forward to __is_base_of.
3411         (is_signed, is_unsigned): Implement according to the C++0x
3412         specifications.
3413         * include/std/memory: Likewise for memory.
3414         * include/std/regex: Likewise for regex.
3415         * include/std/random: Likewise for random.
3416         * include/std/unordered_map: Likewise for unordered_map.
3417         * include/std/unordered_set: Likewise for unordered_set.
3418         * include/std/functional: Likewise for functional.
3419         * include/std/complex: Likewise for complex.
3420         * include/std/array: Likewise for array.
3421         * include/tr1/tuple: Likewise for tuple.
3422         * include/tr1/utility: Likewise for utility.
3423         * include/tr1/type_traits: Likewise for type_traits
3424         * include/tr1/memory: Likewise for memory.
3425         * include/tr1/regex: Likewise for regex.
3426         * include/tr1/random: Likewise for random.
3427         * include/tr1/unordered_map: Likewise for unordered_map.
3428         * include/tr1/unordered_set: Likewise for unordered_set.
3429         * include/tr1/functional: Likewise for functional.
3430         * include/tr1/complex: Likewise for complex.
3431         * include/tr1/array: Likewise for array.
3432
3433         * include/c_global/ctgmath: Tweak.
3434         * include/c_global/cstdarg: Likewise.
3435         * include/c_global/ctime: Likewise.
3436         * include/c_global/climits: Likewise.
3437         * include/c_global/cfloat: Likewise.    
3438         * include/c_global/ccomplex: Likewise.
3439         * include/c_global/cstdbool: Likewise.
3440
3441         * include/tr1/poly_laguerre.tcc: Tweak, don't use _GLIBCXX_TR1.
3442         * include/tr1/riemann_zeta.tcc: Likewise.
3443         * include/tr1/beta_function.tcc: Likewise.
3444         * include/tr1/exp_integral.tcc: Likewise.
3445         * include/tr1/hypergeometric.tcc: Likewise.
3446         * include/tr1/modified_bessel_func.tcc: Likewise.
3447         * include/tr1/legendre_function.tcc: Likewise.
3448         * include/tr1/special_function_util.h: Likewise.
3449         * include/tr1/bessel_function.tcc: Likewise.
3450         * include/tr1/poly_hermite.tcc: Likewise.
3451         * include/tr1/ell_integral.tcc: Likewise.
3452         * include/tr1/gamma.tcc: Likewise.
3453         * include/tr1/stdlib.h: Likewise.
3454         * include/tr1/math.h: Likewise.
3455
3456         * include/tr1/complex.h: Minor tweaks.
3457         * include/tr1/wctype.h: Likewise.
3458         * include/tr1/wchar.h: Likewise.
3459         * include/tr1/inttypes.h: Likewise.
3460         * include/tr1/tgmath.h: Likewise.
3461         * include/tr1/cstdbool: Likewise.
3462         * include/tr1/cfloat: Likewise.
3463         * include/tr1/ccomplex: Likewise.
3464         * include/tr1/ctime: Likewise.
3465         * include/tr1/climits: Likewise.
3466         * include/tr1/ctgmath: Likewise.
3467         * include/tr1/cstdarg: Likewise.
3468
3469         * testsuite/tr1/headers.cc: Move...
3470         * testsuite/tr1/headers/all.cc: ... here.
3471         * testsuite/tr1/using_namespace_std_tr1.cc: Move...
3472         * testsuite/tr1/headers/c++200x/using_namespace_std_tr1.cc: ... here.
3473         * testsuite/tr1/headers/using_namespace_std_tr1.cc ... here.
3474         * testsuite/tr1/headers/c++200x/using_namespace_std_tr1.cc: New.
3475
3476         * testsuite/20_util/tuple/requirements/explicit_instantiation.cc:
3477         Adjust namespace.
3478         * testsuite/20_util/has_nothrow_copy_constructor/value.cc: Adjust to
3479         the C++0x requirements.
3480         * testsuite/20_util/has_nothrow_default_constructor/value.cc: Likewise.
3481         * testsuite/20_util/has_trivial_copy_constructor/value.cc: Likewise.
3482         * testsuite/20_util/has_trivial_default_constructor/value.cc: Likewise.
3483
3484         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
3485         dg-error lines.
3486         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
3487         Likewise.
3488         * testsuite/20_util/headers/type_traits/types_std_c++0x_neg.cc:
3489         Un-xfail.
3490
3491         * testsuite/20_util/is_signed/value.cc: New.
3492         * testsuite/20_util/is_signed/requirements/typedefs.cc: Likewise.
3493         * testsuite/20_util/is_signed/requirements/explicit_instantiation.cc:
3494         Likewise.
3495         * testsuite/20_util/is_unsigned/value.cc: Likewise..
3496         * testsuite/20_util/is_unsigned/requirements/typedefs.cc: Likewise.
3497         * testsuite/20_util/is_unsigned/requirements/explicit_instantiation.cc:
3498         Likewise.
3499
3500         * include/Makefile.am: Adjust.  
3501         * include/Makefile.in: Regenerate.
3502
3503 2007-05-31  Paolo Carlini  <pcarlini@suse.de>
3504
3505         PR c++/32158 (libstdc++ bits)
3506         * include/bits/stl_uninitialized.h (__uninitialized_copy_aux,
3507         __uninitialized_fill_aux, __uninitialized_fill_n_aux):
3508         Remove.
3509         (struct __uninitialized_copy, struct __uninitialized_fill,
3510         struct __uninitialized_fill_n): Add.
3511         (uninitialized_copy, uninitialized_fill, uninitialized_fill_n):
3512         Adjust.
3513         * testsuite/20_util/specialized_algorithms/32158.cc: New.
3514
3515         * include/bits/stl_uninitialized.h (uninitialized_copy(_InputIterator,
3516         _InputIterator, _ForwardIterator)): Robustify vs non-POD input.
3517
3518         * include/bits/stl_vector.h (_M_fill_initialize): New.
3519         (vector(size_type, const value_type&, const allocator_type&),
3520         _M_initialize_dispatch(_Integer, _Integer, __true_type)): Use it.
3521         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
3522         Adjust dg-error line.
3523         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
3524         Likewise.
3525         * testsuite/23_containers/vector/requirements/dr438/
3526         constructor_1_neg.cc: Likewise.
3527         * testsuite/23_containers/vector/requirements/dr438/
3528         constructor_2_neg.cc: Likewise.
3529
3530 2007-05-29  Paolo Carlini  <pcarlini@suse.de>
3531
3532         * aclocal.m4: Regenerate.
3533
3534         * testsuite/17_intro/headers/c++1998/c++_for_c.tar: Remove.
3535         * testsuite/17_intro/headers/c++1998/c++.tar: Likewise.
3536
3537 2007-05-28  Benjamin Kosnik  <bkoz@redhat.com>
3538
3539         PR libstdc++/31717 
3540         * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Re-organize. Sanity check
3541         gnu locale model requests to make sure it will work for the requested
3542         target. Add checks for strxfrm_l, strerror_l when in gnu locale,
3543         and strerror_r everywhere.
3544         * aclocal.m4: Regenerated.
3545         * configure: Regenerated.
3546         * config.h.in: Regenerated.
3547         
3548 2007-05-27  Paolo Carlini  <pcarlini@suse.de>
3549
3550         * include/tr1/boost_shared_ptr.h
3551         (_Sp_counted_base<_S_mutex>::_M_add_ref_lock()): Do not wrap in
3552         #ifdef __GTHREADS.
3553
3554 2007-05-27  Paolo Carlini  <pcarlini@suse.de>
3555
3556         * include/c_global/cwchar: Do not include <ctime>.
3557         * include/c_std/cwchar: Likewise.
3558         * include/ext/throw_allocator.h: Do it here.
3559         
3560 2007-05-25  Paolo Carlini  <pcarlini@suse.de>
3561
3562         * config/locale/gnu/c_locale.h (__convert_from_v): Fix typo.
3563
3564 2007-05-24  Paolo Carlini  <pcarlini@suse.de>
3565
3566         * include/ext/concurrence.h: Use __GCC_HAVE_SYNC_COMPARE_AND_SWAP_*.
3567
3568 2007-05-24  Steve Ellcey  <sje@cup.hp.com>
3569
3570         * Makefile.in: Regenerate.
3571         * configure: Regenerate.
3572         * aclocal.m4: Regenerate.
3573         * include/Makefile.in: Regenerate.
3574         * libmath/Makefile.in: Regenerate.
3575         * libsupc++/Makefile.in: Regenerate.
3576         * po/Makefile.in: Regenerate.
3577         * src/Makefile.in: Regenerate.
3578         * testsuite/Makefile.in: Regenerate.
3579
3580 2007-05-24  Paolo Carlini  <pcarlini@suse.de>
3581
3582         * config/locale/gnu/c_locale.h (__convert_from_v): Only switch to the
3583         "C" locale if the current one isn't already "C" (for old glibcs).
3584         * config/os/gnu-linux/ctype_noninline.h (ctype<char>::classic_table,
3585         ctype<char>::ctype(__c_locale, const mask*, bool, size_t),
3586         ctype<char>::ctype(const mask*, bool, size_t)): Likewise, for generic
3587         locale model.
3588         * config/locale/gnu/messages_members.h
3589         (messages<>::messages(__c_locale, const char*, size_t),
3590         messages_byname<_CharT>::messages_byname(const char*, size_t)):
3591         Only dynamically allocate memory if __s != "C".
3592         * config/locale/gnu/time_members.h
3593         (__timepunct<_CharT>::__timepunct(__c_locale, const char*, size_t)):
3594         Likewise.
3595         * config/locale/generic/time_members.h
3596         (__timepunct<_CharT>::__timepunct(__c_locale, const char*, size_t)):
3597         Likewise.
3598
3599         * testsuite/util/testsuite_allocator.h: Revert last change.
3600
3601 2007-05-22  Paolo Carlini  <pcarlini@suse.de>
3602
3603         * testsuite/util/testsuite_allocator.h (check_new): Assign false
3604         to new_called.
3605         (check_delete): Likewise for delete_called.
3606
3607 2007-05-21  Paolo Carlini  <pcarlini@suse.de>
3608
3609         * config/locale/gnu/c_locale.h: Do not include <cstdarg>, use builtins.
3610         * config/locale/generic/c_locale.h: Likewise.
3611
3612 2007-05-21  Paolo Carlini  <pcarlini@suse.de>
3613
3614         PR libstdc++/31621
3615         * acinclude.m4 ([GLIBCXX_CHECK_LINKER_FEATURES]): Use the C compiler.
3616         * configure: Regenerate.
3617
3618 2007-05-20  Paolo Carlini  <pcarlini@suse.de>
3619
3620         * include/bits/stl_algo.h: Shuffle the functions to better match the
3621         order in the standard.
3622
3623 2007-05-17  Paolo Carlini  <pcarlini@suse.de>
3624
3625         * config/locale/gnu/c_locale.h: Do not include <libintl.h>.
3626         * config/locale/gnu/messages_members.h: Do it here.
3627         
3628         * config/locale/gnu/c_locale.h: Do not include <cstdio>, use
3629         the builtins.
3630         * config/locale/generic/c_locale.h: Likewise.
3631
3632 2007-05-17  Benjamin Kosnik  <bkoz@redhat.com>
3633
3634         * acinclude.m4 (GLIBCXX_CHECK_COMPILER_FEATURES): Add -g to
3635         compile flags, move code to test to global scope.
3636         * configure: Regenerate.
3637         
3638 2007-05-17  Benjamin Kosnik  <bkoz@redhat.com>
3639
3640         * testsuite/21_strings/char_traits/requirements/wchar_t/typedefs.cc: 
3641         Fix dg bits.
3642         * testsuite/21_strings/char_traits/requirements/char/typedefs.cc: Same.
3643
3644 2007-05-17  Paolo Carlini  <pcarlini@suse.de>
3645
3646         * include/bits/stl_algobase.h (mismatch): Move...
3647         * include/bits/stl_algo.h: ... here.
3648
3649 2007-05-17  Benjamin Kosnik  <bkoz@redhat.com>
3650
3651         * include/tr1/cmath: Guard special math with
3652         __GXX_EXPERIMENTAL_CXX0X__.
3653         * testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc:
3654         Remove xfail.
3655
3656 2007-05-17  Paolo Carlini  <pcarlini@suse.de>
3657
3658         * include/bits/locale_facets.tcc (__pad<>::_S_pad): Minor tweaks, avoid
3659         unnecessary casts, do widenings just in time.
3660
3661 2007-05-16  Benjamin Kosnik  <bkoz@redhat.com>
3662
3663         * acinclude.m4 (GLIBCXX_CHECK_COMPILER_FEATURES): Add a function
3664         to the test code compiled with -ffunction-sections -fdata-sections.
3665         * configure: Regenerate.
3666
3667         * testsuite/22_locale/ctype/scan/wchar_t/1.cc: Remove
3668         _GLIBCXX_USE_WCHAR_T guards as superfluous.
3669         
3670         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Add
3671         _GLIBCXX_USE_WCHAR_T guards.    
3672         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Same.
3673         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Same.
3674         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Same.
3675
3676         * testsuite/21_strings/char_traits/requirements/wchar_t/typedefs.cc: 
3677         Add.
3678         * testsuite/21_strings/char_traits/typedefs/char/1.cc: Move...
3679         * testsuite/21_strings/char_traits/requirements/char/typedefs.cc: 
3680         ...here.
3681         * testsuite/21_strings/char_traits/typedefs: Remove.
3682         * testsuite/21_strings/char_traits/typedefs/char: Remove.
3683         
3684 2007-05-16  Benjamin Kosnik  <bkoz@redhat.com>  
3685
3686         * docs/html/abi.html: Update for gcc-4.1.2 and gcc-4.2.0.
3687         
3688 2007-05-14  Kaz Kojima  <kkojima@gcc.gnu.org>
3689
3690         * testsuite/tr1/5_numerical_facilities/special_functions/
3691         17_hyperg/check_nan.cc: Add -mieee for sh.
3692
3693 2007-05-14  Paolo Carlini  <pcarlini@suse.de>
3694
3695         * testsuite/util/testsuite_io.h: Only include <ios>.
3696
3697 2007-05-14  Paolo Carlini  <pcarlini@suse.de>
3698
3699         * include/bits/allocator.h: Do not include cpp_type_traits.h.
3700
3701 2007-05-14  Paolo Carlini  <pcarlini@suse.de>
3702
3703         * include/bits/postypes.h (class fpos<>): Remove redundant forward
3704         declaration.
3705
3706 2007-05-13  Paolo Carlini  <pcarlini@suse.de>
3707
3708         * include/bits/stl_tempbuf.h (return_temporary_buffer(_Tp*)): Inline.
3709
3710 2007-05-13  Paolo Carlini  <pcarlini@suse.de>
3711
3712         * include/tr1/type_traitsfwd.h: Fix include guard typo.
3713
3714 2007-05-11  Paolo Carlini  <pcarlini@suse.de>
3715
3716         * include/ext/pod_char_traits.h (char_traits<>::move):
3717         Use __builtin_memmove.
3718         * include/bits/locale_classes.h (locale::_Impl::_M_check_same_name,
3719         collate_byname(const char*, size_t)): Use __builtin_strcmp.
3720         * include/bits/locale_facets.h: Use __builtin_mem* and
3721         __builtin_str* everywhere.
3722         * include/bits/codecvt.h (codecvt_byname(const char*, size_t)):
3723         Use __builtin_strcmp.
3724         * include/bits/char_traits.h: Use __builtin_mem* everywhere.
3725         * include/bits/fstream.tcc (basic_filebuf<>::underflow, imbue):
3726         Use __builtin_memcpy and __builtin_memmove.
3727         * include/bits/locale_facets_nonio.h (moneypunct_byname(const char*,
3728         size_t __refs)): Use __builtin_strcmp.
3729         * include/std/bitset (bitset<>::_M_do_reset): Use __builtin_memset.
3730         * config/locale/gnu/c_locale.h: Use __builtin_strlen, __builtin_strcmp,
3731         and __builtin_memcpy.
3732         * config/locale/gnu/messages_members.h: Likewise.
3733         * config/locale/gnu/time_members.h: Likewise.
3734         * config/locale/generic/c_locale.h: Likewise.
3735         * config/locale/generic/messages_members.h: Likewise.
3736         * config/locale/generic/time_members.h: Likewise.
3737         * config/os/gnu-linux/ctype_noninline.h: Likewise, avoid strdup.
3738         * config/os/tpf/ctype_noninline.h: Likewise.
3739         * config/locale/generic/codecvt_members.cc: Include <cstring>. 
3740         * config/locale/generic/ctype_members.cc: Likewise.
3741         * config/locale/generic/collate_members.cc: Likewise.
3742         * config/locale/gnu/c++locale_internal.h: Likewise.
3743         * config/locale/darwin/ctype_members.cc: Likewise.
3744         * src/ctype.cc: Likewise.
3745         * testsuite/19_diagnostics/logic_error/what-1.cc: Likewise.
3746         * testsuite/19_diagnostics/logic_error/what-2.cc: Likewise.
3747         * testsuite/19_diagnostics/runtime_error/what-1.cc: Likewise.
3748         * testsuite/19_diagnostics/runtime_error/what-2.cc: Likewise.
3749         * testsuite/19_diagnostics/runtime_error/what-3.cc: Likewise.
3750         * config/locale/gnu/messages_members.cc: Avoid strdup.
3751         * config/locale/gnu/monetary_members.cc: Likewise.
3752         * config/locale/gnu/time_members.cc: Likewise.  
3753         * config/locale/gnu/time_members.cc: Likewise.
3754         * config/locale/generic/c_locale.cc: Likewise.
3755
3756 2007-05-11  Benjamin Kosnik  <bkoz@redhat.com>
3757
3758         * include/std/stdexcept: Remove extra spacing.
3759
3760         * testsuite/19_diagnostics/stdexceptions.cc: Break into...
3761         * testsuite/19_diagnostics/bad_exception: ...this. Populate.
3762         * testsuite/19_diagnostics/logic_error: ... this.
3763         * testsuite/19_diagnostics/logic_error/what-1.cc: ...this.
3764         * testsuite/19_diagnostics/logic_error/what-2.cc: ...this.
3765         * testsuite/19_diagnostics/runtime_error: ...this.
3766         * testsuite/19_diagnostics/runtime_error/what-1.cc: ...this.
3767         * testsuite/19_diagnostics/runtime_error/what-2.cc: ...this.
3768         * testsuite/19_diagnostics/runtime_error/what-3.cc: ...this.
3769         * testsuite/19_diagnostics/23591_thread-1.c: Move...
3770         * testsuite/19_diagnostics/bad_exception/23591_thread-1.c: ...here.
3771
3772 2007-05-10  Paolo Carlini  <pcarlini@suse.de>
3773
3774         * 27_io/objects/wchar_t/11.cc: Include <cstring>.
3775         * 27_io/objects/wchar_t/10.cc: Likewise.
3776         * 27_io/objects/wchar_t/12.cc: Likewise.
3777         * 27_io/basic_streambuf/sputbackc/char/9538.cc: Likewise.
3778         * 27_io/basic_streambuf/sgetn/char/1.cc: Likewise.
3779         * 27_io/basic_streambuf/overflow/char/1.cc: Likewise.
3780         * 27_io/basic_streambuf/sgetc/char/1.cc: Likewise.
3781         * 27_io/basic_streambuf/sputn/wchar_t/1.cc: Likewise.
3782         * 27_io/basic_streambuf/sputn/char/1.cc: Likewise.
3783         * 27_io/basic_ios/cons/char/3.cc: Likewise.
3784         * 27_io/basic_stringbuf/setbuf/char/2.cc: Likewise.
3785         * 27_io/basic_stringbuf/setbuf/char/3.cc: Likewise.
3786         * 27_io/basic_stringbuf/setbuf/char/4.cc: Likewise.
3787         * 27_io/basic_istream/extractors_character/char/4.cc: Likewise.
3788         * 27_io/fpos/mbstate_t/1.cc: Likewise.
3789         * 27_io/basic_filebuf/setbuf/char/2.cc: Likewise.
3790         * 27_io/basic_filebuf/setbuf/char/3.cc: Likewise.
3791         * 25_algorithms/copy/streambuf_iterators/char/2.cc: Likewise.
3792         * 25_algorithms/copy/streambuf_iterators/char/4.cc: Likewise.
3793         * 19_diagnostics/stdexceptions.cc: Likewise.
3794         * 21_strings/char_traits/requirements/short/1.cc: Likewise.
3795         * 21_strings/basic_string/compare/char/1.cc: Likewise.
3796         * 21_strings/basic_string/capacity/1.cc: Likewise.
3797         * ext/codecvt/char-1.cc: Likewise.
3798         * ext/codecvt/char-2.cc: Likewise.
3799         * ext/codecvt/1.cc: Likewise.
3800         * ext/stdio_sync_filebuf/wchar_t/1.cc: Likewise.
3801         * ext/stdio_sync_filebuf/char/1.cc: Likewise.
3802         * ext/stdio_filebuf/char/2.cc: Likewise.
3803         * ext/stdio_filebuf/char/10063-1.cc: Likewise.
3804         * 22_locale/ctype/narrow/char/19955.cc: Likewise.
3805         * 22_locale/codecvt/unshift/wchar_t/1.cc: Likewise.
3806         * 22_locale/codecvt/unshift/wchar_t/2.cc: Likewise.
3807         * 22_locale/codecvt/unshift/wchar_t/3.cc: Likewise.
3808         * 22_locale/codecvt/unshift/wchar_t/4.cc: Likewise.
3809         * 22_locale/codecvt/unshift/char/1.cc: Likewise.
3810         * 22_locale/codecvt/length/wchar_t/1.cc: Likewise.
3811         * 22_locale/codecvt/length/wchar_t/2.cc: Likewise.
3812         * 22_locale/codecvt/length/wchar_t/3.cc: Likewise.
3813         * 22_locale/codecvt/length/wchar_t/4.cc: Likewise.
3814         * 22_locale/codecvt/length/wchar_t/5.cc: Likewise.
3815         * 22_locale/codecvt/length/wchar_t/6.cc: Likewise.
3816         * 22_locale/codecvt/length/wchar_t/7.cc: Likewise.
3817         * 22_locale/codecvt/always_noconv/char/1.cc: Likewise.
3818         * 22_locale/codecvt/encoding/char/1.cc: Likewise.
3819         * 22_locale/codecvt/in/wchar_t/1.cc: Likewise.
3820         * 22_locale/codecvt/in/wchar_t/2.cc: Likewise.
3821         * 22_locale/codecvt/in/wchar_t/3.cc: Likewise.
3822         * 22_locale/codecvt/in/wchar_t/4.cc: Likewise.
3823         * 22_locale/codecvt/in/wchar_t/5.cc: Likewise.
3824         * 22_locale/codecvt/in/wchar_t/6.cc: Likewise.
3825         * 22_locale/codecvt/in/wchar_t/7.cc: Likewise.
3826         * 22_locale/codecvt/in/wchar_t/8.cc: Likewise.
3827         * 22_locale/codecvt/in/wchar_t/9.cc: Likewise.
3828         * 22_locale/codecvt/in/char/1.cc: Likewise.
3829         * 22_locale/codecvt/max_length/char/1.cc: Likewise.
3830         * 22_locale/codecvt/out/wchar_t/1.cc: Likewise.
3831         * 22_locale/codecvt/out/wchar_t/2.cc: Likewise.
3832         * 22_locale/codecvt/out/wchar_t/3.cc: Likewise.
3833         * 22_locale/codecvt/out/wchar_t/4.cc: Likewise.
3834         * 22_locale/codecvt/out/wchar_t/5.cc: Likewise.
3835         * 22_locale/codecvt/out/wchar_t/6.cc: Likewise.
3836         * 22_locale/codecvt/out/wchar_t/7.cc: Likewise.
3837         * 22_locale/codecvt/out/char/1.cc: Likewise.
3838         * 22_locale/locale/cons/5.cc: Likewise.
3839         * 22_locale/collate_byname/named_equivalence.cc: Likewise.
3840
3841 2007-05-07  Mark Mitchell  <mark@codesourcery.com>
3842
3843         * libstdc++-v3/libsupc++/cxxabi.h (_GLIBCXX_NOTHROW): New macro.
3844         (__cxa_atexit): Use it.
3845
3846         * testsuite/lib/libstdc++.exp (v3_target_compile_as_c): For
3847         installed-tree testing, search more include directories.
3848
3849 2007-05-08  Benjamin Kosnik  <bkoz@redhat.com>
3850
3851         * include/std/type_traits (make_signed): Remove specializations
3852         for floating point types.
3853         (make_unsigned): Same.
3854         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Fix.
3855         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Same.
3856         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Same.
3857         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
3858         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Same.
3859         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Same.
3860         
3861 2007-05-08  Benjamin Kosnik  <bkoz@redhat.com>
3862
3863         * testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc: New.
3864
3865 2007-05-08  Jason Merrill  <jason@redhat.com>
3866
3867         * libsupc++/cxxabi-internal.h: Remove, to be replaced by...
3868         * libsupc++/cxxabi-forced.h: ...this new file.
3869         * include/ext/vstring.tcc: Include cxxabi-forced.h instead.
3870         * include/bits/istream.tcc: Likewise.
3871         * include/bits/ostream.tcc: Likewise.
3872         * include/bits/basic_string.tcc: Likewise.
3873         * include/bits/ostream_insert.h: Likewise.
3874         * include/bits/fstream.tcc: Likewise.
3875         * include/std/bitset: Likewise.
3876         * libsupc++/cxxabi.h: Restore previous contents.
3877         * Makefile.am (headers): Add cxxabi-forced.h.
3878         * Makefile.in: Regenerate.
3879
3880 2007-05-08  Benjamin Kosnik  <bkoz@redhat.com>
3881
3882         * testsuite/util/testsuite_abi.cc: Add CXXABI_1.3.2.
3883
3884         * libsupc++/cxxabi-internal.h (__foreign_exception::__pure): To
3885         __pure_virtual.
3886
3887 2007-05-07  Jason Merrill  <jason@redhat.com>
3888
3889         * include/bits/ostream.tcc (operator<<(char*)): Add __s.
3890
3891         * config/abi/pre/gnu.ver: Fix symbol versions.
3892         * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
3893
3894 2007-05-07  Danny Smith  <dannysmith@users.sourceforge.net>
3895
3896         * config/os/mingw32/os_defines.h (NOMINMAX): Update comment.
3897
3898 2007-05-07  Jason Merrill  <jason@redhat.com>
3899
3900         PR c++/28145
3901         * libsupc++/cxxabi.h (__forced_unwind, __foreign_exception):
3902         New classes.
3903         * libsupc++/eh_exception.cc: Define their destructors.
3904         * config/abi/pre/gnu.ver: Export their type_infos.
3905         * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
3906         * libsupc++/eh_personality.cc: A handler for abi::__forced_unwind
3907         matches a forced unwind, and a handler for abi::__foreign_exception
3908         matches a foreign exception.
3909         
3910         * include/bits/istream.tcc: Rethrow forced unwind.
3911         * include/bits/ostream.tcc: Likewise.
3912         * include/bits/ostream_insert.h: Likewise.
3913         * include/bits/basic_string.tcc (operator>>, getline): Likewise.
3914         * include/bits/fstream.tcc (basic_filebuf::close): Likewise.
3915         * include/ext/vstring.cc (operator>>, getline): Likewise.
3916         * src/istream.cc: Likewise.
3917         * src/compatibility.cc (basic_istream::ignore): Likewise.
3918         * include/std/bitset (operator>>): Likewise.
3919         * include/std/fstream (basic_filebuf::close): Remove throw() spec.
3920         * libsupc++/cxxabi-internal.h: Split out from...
3921         * libsupc++/cxxabi.h: ...here.
3922
3923 2007-05-07  Paolo Carlini  <pcarlini@suse.de>
3924
3925         * include/bits/stl_algobase.h: Do not include <cstring>.
3926         (copy(const _Tp*, const _Tp*, _Tp*), __copy_b(const _Tp*, const _Tp*,
3927         _Tp*)): Use __builtin_memmove.
3928         (__fill_aux): Use __builtin_memset.
3929         (equal(const _Tp*, const _Tp*, const _Tp*),
3930         lexicographical_compare(const unsigned char*, const unsigned char*,
3931         const unsigned char*, const unsigned char*)): Use __builtin_memcmp.
3932         * include/bits/valarray_array.h: Do not include <cstring>.
3933         (_Array_default_ctor<, true>::_S_do_it): Use __builtin_memset.
3934         (_Array_copy_ctor<, true>::_S_do_it, _Array_copier<, true>::_S_do_it):
3935         Use __builtin_memcpy.
3936         * include/ext/algorithm
3937         (__lexicographical_compare_3way(const unsigned char*,
3938         const unsigned char*, const unsigned char*, const unsigned char*)):
3939         Use __builtin_memcmp.
3940         * testsuite/23_containers/vector/requirements/dr438/
3941         constructor_1_neg.cc: Adjust dg-error line number.
3942         * testsuite/23_containers/vector/requirements/dr438/
3943         constructor_2_neg.cc: Likewise.
3944
3945 2007-05-07  Mark Mitchell  <mark@codesourcery.com>
3946
3947         * testsuite/lib/libstdc++.exp (v3_target_compile_as_c): For
3948         installed-tree testing, search more include directories.
3949
3950         * testsuite/22_locale/num_put/put/char/14220.cc: XFAIL on Solaris
3951         2.10.
3952         * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
3953
3954         * testsuite/lib/libstdc++.exp (v3_target_compile_as_c): In
3955         installed-tree testing, use "remote_exec host", not "remote_exec
3956         exec".  Trip trailing newlines from output of -dumpversion and
3957         -dumpmachine.
3958
3959 2007-05-07  Benjamin Kosnik  <bkoz@redhat.com>
3960             Howard Hinnant  <hhinnant@apple.com>
3961
3962         * include/std/type_traits: (make_signed, make_unsigned): Adjust
3963         for enum sizes. 
3964         * testsuite/20_util/make_unsigned/requirements/typedefs.cc: Move to...
3965         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: ...here.
3966         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Add,
3967         compile with -funsigned-char -fshort-enums.
3968         * testsuite/20_util/make_signed/requirements/typedefs.cc: Move to...
3969         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: ...here.
3970         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Add,
3971         compile with -funsigned-char -fshort-enums.
3972
3973         * testsuite/20_util/headers/type_traits/types_std_c++0x_neg.cc:
3974         Add a temporary xfail to this test for all platforms.
3975         
3976 2007-05-06  Paolo Carlini  <pcarlini@suse.de>
3977
3978         * include/std/complex: Add missing extern template declarations.
3979         * testsuite/26_numerics/complex/complex_inserters_extractors.cc:
3980         Move...
3981         * testsuite/26_numerics/complex/inserters_extractors/char/1.cc:
3982         ... here.
3983         * testsuite/26_numerics/complex/inserters_extractors/wchar_t/1.cc:
3984         New.
3985
3986 2007-05-06  Paolo Carlini  <pcarlini@suse.de>
3987
3988         PR libstdc++/31834
3989         * testsuite/17_intro/headers/c++200x/all.cc: Protect inclusion
3990         of C99 headers.
3991         * testsuite/17_intro/headers/c++200x/all_multiple_inclusion.cc:
3992         Likewise.
3993
3994 2007-05-06  Paolo Carlini  <pcarlini@suse.de>
3995
3996         * config/locale/generic/c_locale.cc: Don't use __builtin_huge_val*
3997         when __*_HAS_INFINITY__ is false.
3998
3999 2007-05-04  Paolo Carlini  <pcarlini@suse.de>
4000
4001         * include/bits/stl_raw_storage_iter.h (class raw_storage_iterator):
4002         Adjust template parameter name.
4003
4004 2007-05-04  Mark Mitchell  <mark@codesourcery.com>
4005
4006         * libsupc++/cxxabi.h (__cxa_atexit): Conditionalize exception
4007         specification on #ifdef __cplusplus.
4008         
4009 2007-05-04  Paolo Carlini  <pcarlini@suse.de>
4010
4011         * include/bits/stl_memory.h: Rename to stl_auto_ptr.h.
4012         (__get_temporary_buffer, get_temporary_buffer,
4013         return_temporary_buffer): Move...
4014         * include/bits/stl_tempbuf.h: ... here.
4015         * include/std/memory: Adjust includes.
4016         * testsuite/20_util/auto_ptr/assign_neg.cc: Adjust dg-error line
4017         numbers.
4018         * include/Makefile.am: Adjust.
4019         * include/Makefile.in: Regenerate.
4020
4021         * testsuite/util/testsuite_iterators.h: Do not include the entire
4022         <iterator>.
4023         * include/bits/stl_iterator_base_types.h: Adjust includes.
4024         * testsuite/25_algorithms/unique_copy/2.cc: Include <functional>.
4025
4026 2007-05-04  Mark Mitchell  <mark@codesourcery.com>
4027
4028         * libsupc++/atexit_arm.cc: New file.
4029         * libsupc++/vec.cc (__aeabi_atexit): Remove.
4030         * libsupc++/cxxabi.h (__cxa_atexit): Add exception specification.
4031
4032         * libsupc++/Makefile.am: Add atexit_arm.cc.
4033         * libsupc++/Makefile.in: Regenerated.
4034
4035 2007-05-04  Paolo Carlini  <pcarlini@suse.de>
4036
4037         * include/bits/stl_construct.h (_Destroy(_ForwardIterator,
4038         _ForwardIterator __last, _Allocator)): Change the last parameter
4039         to _Allocator&.
4040         * include/bits/stl_uninitialized.h (__uninitialized_copy_a,
4041         __uninitialized_fill_a, __uninitialized_fill_n_a,
4042         __uninitialized_fill_copy, __uninitialized_copy_fill,
4043         __uninitialized_copy_copy): Likewise.
4044         * include/ext/rope: Adjust everywhere.
4045         * include/ext/ropeimpl.h: Likewise.
4046
4047 2007-05-03  Benjamin Kosnik  <bkoz@redhat.com>
4048
4049         * include/std/type_traits (enable_if): New.
4050         (conditional): New.
4051         (__decay_selector, decay): New.
4052         (__cv_selector, __match_cv_qualifiers): New.
4053         (__make_unsigned, __make_unsigned_selector, make_unsigned): New.
4054         (__make_signed, __make_signed_selector, make_signed): New.
4055         (has_trivial_constructor): ... to has_trivial_default_constructor.
4056         (has_nothrow_constructor): ... to has_nothrow_default_constructor.
4057         (has_trivial_copy): ... to has_trivial_copy_constructor.
4058         (has_nothrow_copy): ... to has_nothrow_copy_constructor.
4059
4060         * include/tr1/type_traits_fwd: Move to...
4061         * include/tr1/type_traitsfwd: ... this, consistency with
4062         ios/string/locale forward headers.
4063         * include/tr1/type_traits: Adjust include.      
4064         * include/Makefile.am (tr1_headers): Change type_traits_fwd.h to
4065         type_traitsfwd.h.
4066         * include/Makefile.in: Regenerate.
4067
4068         * testsuite/23_containers/tuple: Move...
4069         * testsuite/20_util/tuple:... here.
4070
4071         * testsuite/20_util/conditional: New.
4072         * testsuite/20_util/conditional/requirements: Same.
4073         * testsuite/20_util/conditional/requirements/
4074         explicit_instantiation.cc: Same.
4075         * testsuite/20_util/conditional/requirements/typedefs.cc: Same.
4076         * testsuite/20_util/decay: Same.
4077         * testsuite/20_util/decay/requirements: Same.
4078         * testsuite/20_util/decay/requirements/explicit_instantiation.cc: Same.
4079         * testsuite/20_util/decay/requirements/typedefs.cc: Same.
4080         * testsuite/20_util/enable_if: Same.
4081         * testsuite/20_util/enable_if/requirements: Same.
4082         * testsuite/20_util/enable_if/requirements/
4083         explicit_instantiation.cc: Same.
4084         * testsuite/20_util/enable_if/requirements/typedefs.cc: Same.
4085         * testsuite/20_util/enable_if/requirements/typedefs_neg.cc: Same.
4086         * testsuite/20_util/has_nothrow_copy_constructor: Same.
4087         * testsuite/20_util/has_nothrow_copy_constructor/requirements: Same.
4088         * testsuite/20_util/has_nothrow_copy_constructor/requirements/
4089         explicit_instantiation.cc: Same.
4090         * testsuite/20_util/has_nothrow_copy_constructor/requirements/
4091         typedefs.cc: Same.
4092         * testsuite/20_util/has_nothrow_copy_constructor/value.cc: Same.
4093         * testsuite/20_util/has_nothrow_default_constructor: Same.
4094         * testsuite/20_util/has_nothrow_default_constructor/requirements: Same.
4095         * testsuite/20_util/has_nothrow_default_constructor/requirements/
4096         explicit_instantiation.cc: Same.
4097         * testsuite/20_util/has_nothrow_default_constructor/requirements/
4098         typedefs.cc: Same.
4099         * testsuite/20_util/has_nothrow_default_constructor/value.cc: Same.
4100         * testsuite/20_util/has_trivial_copy_constructor: Same.
4101         * testsuite/20_util/has_trivial_copy_constructor/requirements: Same.
4102         * testsuite/20_util/has_trivial_copy_constructor/requirements/
4103         explicit_instantiation.cc: Same.
4104         * testsuite/20_util/has_trivial_copy_constructor/requirements/
4105         typedefs.cc: Same.
4106         * testsuite/20_util/has_trivial_copy_constructor/value.cc: Same.
4107         * testsuite/20_util/has_trivial_default_constructor: Same.
4108         * testsuite/20_util/has_trivial_default_constructor/requirements: Same.
4109         * testsuite/20_util/has_trivial_default_constructor/requirements/
4110         explicit_instantiation.cc: Same.
4111         * testsuite/20_util/has_trivial_default_constructor/requirements/
4112         typedefs.cc: Same.
4113         * testsuite/20_util/has_trivial_default_constructor/value.cc: Same.
4114         * testsuite/20_util/headers/type_traits/types_std_c++0x_neg.cc: Same.
4115         * testsuite/20_util/make_signed: Same.
4116         * testsuite/20_util/make_signed/requirements: Same.
4117         * testsuite/20_util/make_signed/requirements/
4118         explicit_instantiation.cc: Same.
4119         * testsuite/20_util/make_signed/requirements/typedefs.cc: Same.
4120         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Same.
4121         * testsuite/20_util/make_unsigned: Same.
4122         * testsuite/20_util/make_unsigned/requirements: Same.
4123         * testsuite/20_util/make_unsigned/requirements/
4124         explicit_instantiation.cc: Same.
4125         * testsuite/20_util/make_unsigned/requirements/typedefs.cc: Same.
4126         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
4127         
4128 2007-05-02  Paolo Carlini  <pcarlini@suse.de>
4129
4130         PR libstdc++/31777
4131         * include/ext/pool_allocator.h (__pool_alloc<>::allocate,
4132         __pool_alloc<>::deallocate): Fix _S_force_new check.
4133
4134 2007-05-01  Benjamin Kosnik  <bkoz@redhat.com>
4135         
4136         * 23_containers/requirements/sequences/dr438/deque/*: Move to...
4137         * 23_containers/deque/requirements/dr438: ...here.
4138         
4139         * 23_containers/requirements/sequences/dr438/list/*: Move to...
4140         * 23_containers/list/requirements/dr438: ...here.
4141         
4142         * 23_containers/requirements/sequences/dr438/vector/*: Move to...
4143         * 23_containers/vector/requirements/dr438: ...here.
4144
4145 2007-05-01  Benjamin Kosnik  <bkoz@redhat.com>
4146         
4147         * testsuite/*/explicit_instantiations.cc: Change to...
4148         * testsuite/*/explicit_instantiation.cc: ... this.
4149
4150 2007-05-01  Benjamin Kosnik  <bkoz@redhat.com>
4151         
4152         * testsuite/tr1/4_metaprogramming/*/explicit_instantiations.cc: Change
4153         "basic_ofstream" in comment to type_traits.
4154
4155 2007-04-30  Benjamin Kosnik  <bkoz@redhat.com>
4156
4157         Directory layout flattening.
4158
4159         Added in testsuite:
4160         * tr1/4_metaprogramming/add_const
4161         * tr1/4_metaprogramming/add_const/requirements
4162         * tr1/4_metaprogramming/add_const/requirements/
4163         explicit_instantiations.cc
4164         * tr1/4_metaprogramming/add_const/requirements/typedefs.cc
4165         * tr1/4_metaprogramming/add_cv
4166         * tr1/4_metaprogramming/add_cv/requirements
4167         * tr1/4_metaprogramming/add_cv/requirements/explicit_instantiations.cc
4168         * tr1/4_metaprogramming/add_cv/requirements/typedefs.cc
4169         * tr1/4_metaprogramming/add_pointer
4170         * tr1/4_metaprogramming/add_pointer/requirements
4171         * tr1/4_metaprogramming/add_pointer/requirements/
4172         explicit_instantiations.cc
4173         * tr1/4_metaprogramming/add_pointer/requirements/typedefs.cc
4174         * tr1/4_metaprogramming/add_reference
4175         * tr1/4_metaprogramming/add_reference/requirements
4176         * tr1/4_metaprogramming/add_reference/requirements/
4177         explicit_instantiations.cc
4178         * tr1/4_metaprogramming/add_reference/requirements/typedefs.cc
4179         * tr1/4_metaprogramming/add_volatile
4180         * tr1/4_metaprogramming/add_volatile/requirements
4181         * tr1/4_metaprogramming/add_volatile/requirements/
4182         explicit_instantiations.cc
4183         * tr1/4_metaprogramming/add_volatile/requirements/typedefs.cc
4184         * tr1/4_metaprogramming/aligned_storage
4185         * tr1/4_metaprogramming/aligned_storage/requirements
4186         * tr1/4_metaprogramming/aligned_storage/requirements/
4187         explicit_instantiations.cc
4188         * tr1/4_metaprogramming/aligned_storage/requirements/typedefs.cc
4189         * tr1/4_metaprogramming/alignment_of
4190         * tr1/4_metaprogramming/alignment_of/requirements
4191         * tr1/4_metaprogramming/alignment_of/requirements/
4192         explicit_instantiations.cc
4193         * tr1/4_metaprogramming/alignment_of/requirements/typedefs.cc
4194         * tr1/4_metaprogramming/alignment_of/value.cc
4195         * tr1/4_metaprogramming/extent
4196         * tr1/4_metaprogramming/extent/requirements
4197         * tr1/4_metaprogramming/extent/requirements/explicit_instantiations.cc
4198         * tr1/4_metaprogramming/extent/requirements/typedefs.cc
4199         * tr1/4_metaprogramming/extent/value.cc
4200         * tr1/4_metaprogramming/has_nothrow_assign
4201         * tr1/4_metaprogramming/has_nothrow_assign/requirements
4202         * tr1/4_metaprogramming/has_nothrow_assign/requirements/
4203         explicit_instantiations.cc
4204         * tr1/4_metaprogramming/has_nothrow_assign/requirements/typedefs.cc
4205         * tr1/4_metaprogramming/has_nothrow_assign/value.cc
4206         * tr1/4_metaprogramming/has_nothrow_constructor
4207         * tr1/4_metaprogramming/has_nothrow_constructor/requirements
4208         * tr1/4_metaprogramming/has_nothrow_constructor/
4209         requirements/explicit_instantiations.cc
4210         * tr1/4_metaprogramming/has_nothrow_constructor/
4211         requirements/typedefs.cc
4212         * tr1/4_metaprogramming/has_nothrow_constructor/value.cc
4213         * tr1/4_metaprogramming/has_nothrow_copy
4214         * tr1/4_metaprogramming/has_nothrow_copy/requirements
4215         * tr1/4_metaprogramming/has_nothrow_copy/requirements/
4216         explicit_instantiations.cc
4217         * tr1/4_metaprogramming/has_nothrow_copy/requirements/typedefs.cc
4218         * tr1/4_metaprogramming/has_nothrow_copy/value.cc
4219         * tr1/4_metaprogramming/has_trivial_assign
4220         * tr1/4_metaprogramming/has_trivial_assign/requirements
4221         * tr1/4_metaprogramming/has_trivial_assign/requirements/
4222         explicit_instantiations.cc
4223         * tr1/4_metaprogramming/has_trivial_assign/requirements/typedefs.cc
4224         * tr1/4_metaprogramming/has_trivial_assign/value.cc
4225         * tr1/4_metaprogramming/has_trivial_constructor
4226         * tr1/4_metaprogramming/has_trivial_constructor/requirements
4227         * tr1/4_metaprogramming/has_trivial_constructor/
4228         requirements/explicit_instantiations.cc
4229         * tr1/4_metaprogramming/has_trivial_constructor/
4230         requirements/typedefs.cc
4231         * tr1/4_metaprogramming/has_trivial_constructor/value.cc
4232         * tr1/4_metaprogramming/has_trivial_copy
4233         * tr1/4_metaprogramming/has_trivial_copy/requirements
4234         * tr1/4_metaprogramming/has_trivial_copy/
4235         requirements/explicit_instantiations.cc
4236         * tr1/4_metaprogramming/has_trivial_copy/requirements/typedefs.cc
4237         * tr1/4_metaprogramming/has_trivial_copy/value.cc
4238         * tr1/4_metaprogramming/has_trivial_destructor
4239         * tr1/4_metaprogramming/has_trivial_destructor/requirements
4240         * tr1/4_metaprogramming/has_trivial_destructor/
4241         requirements/explicit_instantiations.cc
4242         * tr1/4_metaprogramming/has_trivial_destructor/requirements/typedefs.cc
4243         * tr1/4_metaprogramming/has_trivial_destructor/value.cc
4244         * tr1/4_metaprogramming/has_virtual_destructor
4245         * tr1/4_metaprogramming/has_virtual_destructor/requirements
4246         * tr1/4_metaprogramming/has_virtual_destructor/
4247         requirements/explicit_instantiations.cc
4248         * tr1/4_metaprogramming/has_virtual_destructor/requirements/typedefs.cc
4249         * tr1/4_metaprogramming/has_virtual_destructor/value.cc
4250         * tr1/4_metaprogramming/integral_constant
4251         * tr1/4_metaprogramming/integral_constant/requirements
4252         * tr1/4_metaprogramming/integral_constant/
4253         requirements/explicit_instantiations.cc
4254         * tr1/4_metaprogramming/integral_constant/requirements/typedefs.cc
4255         * tr1/4_metaprogramming/integral_constant/true_false_value.cc
4256         * tr1/4_metaprogramming/is_abstract
4257         * tr1/4_metaprogramming/is_abstract/requirements
4258         * tr1/4_metaprogramming/is_abstract/
4259         requirements/explicit_instantiations.cc
4260         * tr1/4_metaprogramming/is_abstract/requirements/typedefs.cc
4261         * tr1/4_metaprogramming/is_abstract/value.cc
4262         * tr1/4_metaprogramming/is_arithmetic
4263         * tr1/4_metaprogramming/is_arithmetic/requirements
4264         * tr1/4_metaprogramming/is_arithmetic/
4265         requirements/explicit_instantiations.cc
4266         * tr1/4_metaprogramming/is_arithmetic/requirements/typedefs.cc
4267         * tr1/4_metaprogramming/is_arithmetic/value.cc
4268         * tr1/4_metaprogramming/is_array
4269         * tr1/4_metaprogramming/is_array/requirements
4270         * tr1/4_metaprogramming/is_array/
4271         requirements/explicit_instantiations.cc
4272         * tr1/4_metaprogramming/is_array/requirements/typedefs.cc
4273         * tr1/4_metaprogramming/is_array/value.cc
4274         * tr1/4_metaprogramming/is_base_of
4275         * tr1/4_metaprogramming/is_base_of/requirements
4276         * tr1/4_metaprogramming/is_base_of/
4277         requirements/explicit_instantiations.cc
4278         * tr1/4_metaprogramming/is_base_of/requirements/typedefs.cc
4279         * tr1/4_metaprogramming/is_base_of/value.cc
4280         * tr1/4_metaprogramming/is_class
4281         * tr1/4_metaprogramming/is_class/requirements
4282         * tr1/4_metaprogramming/is_class/
4283         requirements/explicit_instantiations.cc
4284         * tr1/4_metaprogramming/is_class/requirements/typedefs.cc
4285         * tr1/4_metaprogramming/is_class/value.cc
4286         * tr1/4_metaprogramming/is_compound
4287         * tr1/4_metaprogramming/is_compound/requirements
4288         * tr1/4_metaprogramming/is_compound/
4289         requirements/explicit_instantiations.cc
4290         * tr1/4_metaprogramming/is_compound/requirements/typedefs.cc
4291         * tr1/4_metaprogramming/is_compound/value.cc
4292         * tr1/4_metaprogramming/is_const
4293         * tr1/4_metaprogramming/is_const/requirements
4294         * tr1/4_metaprogramming/is_const/
4295         requirements/explicit_instantiations.cc
4296         * tr1/4_metaprogramming/is_const/requirements/typedefs.cc
4297         * tr1/4_metaprogramming/is_const/value.cc
4298         * tr1/4_metaprogramming/is_convertible
4299         * tr1/4_metaprogramming/is_convertible/requirements
4300         * tr1/4_metaprogramming/is_convertible/
4301         requirements/explicit_instantiations.cc
4302         * tr1/4_metaprogramming/is_convertible/requirements/typedefs.cc
4303         * tr1/4_metaprogramming/is_convertible/value.cc
4304         * tr1/4_metaprogramming/is_empty
4305         * tr1/4_metaprogramming/is_empty/requirements
4306         * tr1/4_metaprogramming/is_empty/requirements/
4307         explicit_instantiations.cc
4308         * tr1/4_metaprogramming/is_empty/requirements/typedefs.cc
4309         * tr1/4_metaprogramming/is_empty/value.cc
4310         * tr1/4_metaprogramming/is_enum
4311         * tr1/4_metaprogramming/is_enum/requirements
4312         * tr1/4_metaprogramming/is_enum/requirements/explicit_instantiations.cc
4313         * tr1/4_metaprogramming/is_enum/requirements/typedefs.cc
4314         * tr1/4_metaprogramming/is_enum/value.cc
4315         * tr1/4_metaprogramming/is_floating_point
4316         * tr1/4_metaprogramming/is_floating_point/requirements
4317         * tr1/4_metaprogramming/is_floating_point/requirements/
4318         explicit_instantiations.cc
4319         * tr1/4_metaprogramming/is_floating_point/requirements/typedefs.cc
4320         * tr1/4_metaprogramming/is_floating_point/value.cc
4321         * tr1/4_metaprogramming/is_function
4322         * tr1/4_metaprogramming/is_function/requirements
4323         * tr1/4_metaprogramming/is_function/requirements/
4324         explicit_instantiations.cc
4325         * tr1/4_metaprogramming/is_function/requirements/typedefs.cc
4326         * tr1/4_metaprogramming/is_function/value.cc
4327         * tr1/4_metaprogramming/is_fundamental
4328         * tr1/4_metaprogramming/is_fundamental/requirements
4329         * tr1/4_metaprogramming/is_fundamental/requirements/
4330         explicit_instantiations.cc
4331         * tr1/4_metaprogramming/is_fundamental/requirements/typedefs.cc
4332         * tr1/4_metaprogramming/is_fundamental/value.cc
4333         * tr1/4_metaprogramming/is_integral
4334         * tr1/4_metaprogramming/is_integral/requirements
4335         * tr1/4_metaprogramming/is_integral/requirements/
4336         explicit_instantiations.cc
4337         * tr1/4_metaprogramming/is_integral/requirements/typedefs.cc
4338         * tr1/4_metaprogramming/is_integral/value.cc
4339         * tr1/4_metaprogramming/is_member_function_pointer
4340         * tr1/4_metaprogramming/is_member_function_pointer/requirements
4341         * tr1/4_metaprogramming/is_member_function_pointer/
4342         requirements/explicit_instantiations.cc
4343         * tr1/4_metaprogramming/is_member_function_pointer/
4344         requirements/typedefs.cc
4345         * tr1/4_metaprogramming/is_member_function_pointer/value.cc
4346         * tr1/4_metaprogramming/is_member_object_pointer
4347         * tr1/4_metaprogramming/is_member_object_pointer/requirements
4348         * tr1/4_metaprogramming/is_member_object_pointer/
4349         requirements/explicit_instantiations.cc
4350         * tr1/4_metaprogramming/is_member_object_pointer/
4351         requirements/typedefs.cc
4352         * tr1/4_metaprogramming/is_member_object_pointer/value.cc
4353         * tr1/4_metaprogramming/is_member_pointer
4354         * tr1/4_metaprogramming/is_member_pointer/requirements
4355         * tr1/4_metaprogramming/is_member_pointer/requirements/
4356         explicit_instantiations.cc
4357         * tr1/4_metaprogramming/is_member_pointer/requirements/typedefs.cc
4358         * tr1/4_metaprogramming/is_member_pointer/value.cc
4359         * tr1/4_metaprogramming/is_object
4360         * tr1/4_metaprogramming/is_object/requirements
4361         * tr1/4_metaprogramming/is_object/requirements/
4362         explicit_instantiations.cc
4363         * tr1/4_metaprogramming/is_object/requirements/typedefs.cc
4364         * tr1/4_metaprogramming/is_object/value.cc
4365         * tr1/4_metaprogramming/is_pod
4366         * tr1/4_metaprogramming/is_pod/requirements
4367         * tr1/4_metaprogramming/is_pod/requirements/explicit_instantiations.cc
4368         * tr1/4_metaprogramming/is_pod/requirements/typedefs.cc
4369         * tr1/4_metaprogramming/is_pod/value.cc
4370         * tr1/4_metaprogramming/is_pointer
4371         * tr1/4_metaprogramming/is_pointer/requirements
4372         * tr1/4_metaprogramming/is_pointer/requirements/
4373         explicit_instantiations.cc
4374         * tr1/4_metaprogramming/is_pointer/requirements/typedefs.cc
4375         * tr1/4_metaprogramming/is_pointer/value.cc
4376         * tr1/4_metaprogramming/is_polymorphic
4377         * tr1/4_metaprogramming/is_polymorphic/requirements
4378         * tr1/4_metaprogramming/is_polymorphic/requirements/
4379         explicit_instantiations.cc
4380         * tr1/4_metaprogramming/is_polymorphic/requirements/typedefs.cc
4381         * tr1/4_metaprogramming/is_polymorphic/value.cc
4382         * tr1/4_metaprogramming/is_reference
4383         * tr1/4_metaprogramming/is_reference/requirements
4384         * tr1/4_metaprogramming/is_reference/requirements/
4385         explicit_instantiations.cc
4386         * tr1/4_metaprogramming/is_reference/requirements/typedefs.cc
4387         * tr1/4_metaprogramming/is_reference/value.cc
4388         * tr1/4_metaprogramming/is_same
4389         * tr1/4_metaprogramming/is_same/requirements
4390         * tr1/4_metaprogramming/is_same/requirements/explicit_instantiations.cc
4391         * tr1/4_metaprogramming/is_same/requirements/typedefs.cc
4392         * tr1/4_metaprogramming/is_same/value.cc
4393         * tr1/4_metaprogramming/is_scalar
4394         * tr1/4_metaprogramming/is_scalar/requirements
4395         * tr1/4_metaprogramming/is_scalar/requirements/
4396         explicit_instantiations.cc
4397         * tr1/4_metaprogramming/is_scalar/requirements/typedefs.cc
4398         * tr1/4_metaprogramming/is_scalar/value.cc
4399         * tr1/4_metaprogramming/is_signed
4400         * tr1/4_metaprogramming/is_signed/requirements
4401         * tr1/4_metaprogramming/is_signed/requirements/
4402         explicit_instantiations.cc
4403         * tr1/4_metaprogramming/is_signed/requirements/typedefs.cc
4404         * tr1/4_metaprogramming/is_signed/value.cc
4405         * tr1/4_metaprogramming/is_union
4406         * tr1/4_metaprogramming/is_union/requirements
4407         * tr1/4_metaprogramming/is_union/requirements/
4408         explicit_instantiations.cc
4409         * tr1/4_metaprogramming/is_union/requirements/typedefs.cc
4410         * tr1/4_metaprogramming/is_union/value.cc
4411         * tr1/4_metaprogramming/is_unsigned
4412         * tr1/4_metaprogramming/is_unsigned/requirements
4413         * tr1/4_metaprogramming/is_unsigned/requirements/
4414         explicit_instantiations.cc
4415         * tr1/4_metaprogramming/is_unsigned/requirements/typedefs.cc
4416         * tr1/4_metaprogramming/is_unsigned/value.cc
4417         * tr1/4_metaprogramming/is_void
4418         * tr1/4_metaprogramming/is_void/requirements
4419         * tr1/4_metaprogramming/is_void/requirements/explicit_instantiations.cc
4420         * tr1/4_metaprogramming/is_void/requirements/typedefs.cc
4421         * tr1/4_metaprogramming/is_void/value.cc
4422         * tr1/4_metaprogramming/is_volatile
4423         * tr1/4_metaprogramming/is_volatile/requirements
4424         * tr1/4_metaprogramming/is_volatile/requirements/
4425         explicit_instantiations.cc
4426         * tr1/4_metaprogramming/is_volatile/requirements/typedefs.cc
4427         * tr1/4_metaprogramming/is_volatile/value.cc
4428         * tr1/4_metaprogramming/rank
4429         * tr1/4_metaprogramming/rank/requirements
4430         * tr1/4_metaprogramming/rank/requirements/explicit_instantiations.cc
4431         * tr1/4_metaprogramming/rank/requirements/typedefs.cc
4432         * tr1/4_metaprogramming/rank/value.cc
4433         * tr1/4_metaprogramming/remove_all_extents
4434         * tr1/4_metaprogramming/remove_all_extents/requirements
4435         * tr1/4_metaprogramming/remove_all_extents/requirements/
4436         explicit_instantiations.cc
4437         * tr1/4_metaprogramming/remove_all_extents/value.cc
4438         * tr1/4_metaprogramming/remove_const
4439         * tr1/4_metaprogramming/remove_const/requirements
4440         * tr1/4_metaprogramming/remove_const/requirements/
4441         explicit_instantiations.cc
4442         * tr1/4_metaprogramming/remove_const/value.cc
4443         * tr1/4_metaprogramming/remove_cv
4444         * tr1/4_metaprogramming/remove_cv/requirements
4445         * tr1/4_metaprogramming/remove_cv/requirements/
4446         explicit_instantiations.cc
4447         * tr1/4_metaprogramming/remove_cv/value.cc
4448         * tr1/4_metaprogramming/remove_extent
4449         * tr1/4_metaprogramming/remove_extent/requirements
4450         * tr1/4_metaprogramming/remove_extent/requirements/
4451         explicit_instantiations.cc
4452         * tr1/4_metaprogramming/remove_extent/value.cc
4453         * tr1/4_metaprogramming/remove_pointer
4454         * tr1/4_metaprogramming/remove_pointer/requirements
4455         * tr1/4_metaprogramming/remove_pointer/requirements/
4456         explicit_instantiations.cc
4457         * tr1/4_metaprogramming/remove_pointer/value.cc
4458         * tr1/4_metaprogramming/remove_reference
4459         * tr1/4_metaprogramming/remove_reference/requirements
4460         * tr1/4_metaprogramming/remove_reference/requirements/
4461         explicit_instantiations.cc
4462         * tr1/4_metaprogramming/remove_reference/value.cc
4463         * tr1/4_metaprogramming/remove_volatile
4464         * tr1/4_metaprogramming/remove_volatile/requirements
4465         * tr1/4_metaprogramming/remove_volatile/requirements/
4466         explicit_instantiations.cc
4467         * tr1/4_metaprogramming/remove_volatile/value.cc
4468
4469         Deleted in testsuite:   
4470         * tr1/4_metaprogramming/alignment_of/alignment_of.cc
4471         * tr1/4_metaprogramming/alignment_of/typedefs.cc
4472         * tr1/4_metaprogramming/array_modifications
4473         * tr1/4_metaprogramming/array_modifications/remove_all_extents.cc
4474         * tr1/4_metaprogramming/array_modifications/remove_extent.cc
4475         * tr1/4_metaprogramming/composite_type_traits
4476         * tr1/4_metaprogramming/composite_type_traits/is_arithmetic
4477         * tr1/4_metaprogramming/composite_type_traits/is_arithmetic/
4478         is_arithmetic.cc
4479         * tr1/4_metaprogramming/composite_type_traits/is_arithmetic/typedefs.cc
4480         * tr1/4_metaprogramming/composite_type_traits/is_compound
4481         * tr1/4_metaprogramming/composite_type_traits/is_compound/
4482         is_compound.cc
4483         * tr1/4_metaprogramming/composite_type_traits/is_compound/typedefs.cc
4484         * tr1/4_metaprogramming/composite_type_traits/is_fundamental
4485         * tr1/4_metaprogramming/composite_type_traits/is_fundamental/
4486         is_fundamental.cc
4487         * tr1/4_metaprogramming/composite_type_traits/is_fundamental/
4488         typedefs.cc
4489         * tr1/4_metaprogramming/composite_type_traits/is_member_pointer
4490         * tr1/4_metaprogramming/composite_type_traits/is_member_pointer/
4491         is_member_pointer.cc
4492         * tr1/4_metaprogramming/composite_type_traits/is_member_pointer/
4493         typedefs.cc
4494         * tr1/4_metaprogramming/composite_type_traits/is_object
4495         * tr1/4_metaprogramming/composite_type_traits/is_object/24808.cc
4496         * tr1/4_metaprogramming/composite_type_traits/is_object/is_object.cc
4497         * tr1/4_metaprogramming/composite_type_traits/is_object/typedefs.cc
4498         * tr1/4_metaprogramming/composite_type_traits/is_scalar
4499         * tr1/4_metaprogramming/composite_type_traits/is_scalar/is_scalar.cc
4500         * tr1/4_metaprogramming/composite_type_traits/is_scalar/typedefs.cc
4501         * tr1/4_metaprogramming/const_volatile_modifications
4502         * tr1/4_metaprogramming/const_volatile_modifications/add_const.cc
4503         * tr1/4_metaprogramming/const_volatile_modifications/add_cv.cc
4504         * tr1/4_metaprogramming/const_volatile_modifications/add_volatile.cc
4505         * tr1/4_metaprogramming/const_volatile_modifications/remove_const.cc
4506         * tr1/4_metaprogramming/const_volatile_modifications/remove_cv.cc
4507         * tr1/4_metaprogramming/const_volatile_modifications/remove_volatile.cc
4508         * tr1/4_metaprogramming/extent/extent.cc
4509         * tr1/4_metaprogramming/extent/typedefs.cc
4510         * tr1/4_metaprogramming/has_nothrow_assign/has_nothrow_assign.cc
4511         * tr1/4_metaprogramming/has_nothrow_assign/typedefs.cc
4512         * tr1/4_metaprogramming/has_nothrow_constructor/
4513         has_nothrow_constructor.cc
4514         * tr1/4_metaprogramming/has_nothrow_constructor/typedefs.cc
4515         * tr1/4_metaprogramming/has_nothrow_copy/has_nothrow_copy.cc
4516         * tr1/4_metaprogramming/has_nothrow_copy/typedefs.cc
4517         * tr1/4_metaprogramming/has_trivial_assign/has_trivial_assign.cc
4518         * tr1/4_metaprogramming/has_trivial_assign/typedefs.cc
4519         * tr1/4_metaprogramming/has_trivial_constructor/
4520         has_trivial_constructor.cc
4521         * tr1/4_metaprogramming/has_trivial_constructor/typedefs.cc
4522         * tr1/4_metaprogramming/has_trivial_copy/has_trivial_copy.cc
4523         * tr1/4_metaprogramming/has_trivial_copy/typedefs.cc
4524         * tr1/4_metaprogramming/has_trivial_destructor/
4525         has_trivial_destructor.cc
4526         * tr1/4_metaprogramming/has_trivial_destructor/typedefs.cc
4527         * tr1/4_metaprogramming/has_virtual_destructor/
4528         has_virtual_destructor.cc
4529         * tr1/4_metaprogramming/has_virtual_destructor/typedefs.cc
4530         * tr1/4_metaprogramming/helper_classes
4531         * tr1/4_metaprogramming/helper_classes/static_definition.cc
4532         * tr1/4_metaprogramming/helper_classes/true_false_type.cc
4533         * tr1/4_metaprogramming/helper_classes/true_false_type_typedefs.cc
4534         * tr1/4_metaprogramming/helper_classes/typedefs.cc
4535         * tr1/4_metaprogramming/integral_constant/true_false_type.cc
4536         * tr1/4_metaprogramming/integral_constant/typedefs.cc
4537         * tr1/4_metaprogramming/is_abstract/is_abstract.cc
4538         * tr1/4_metaprogramming/is_abstract/typedefs.cc
4539         * tr1/4_metaprogramming/is_arithmetic/is_arithmetic.cc
4540         * tr1/4_metaprogramming/is_arithmetic/typedefs.cc
4541         * tr1/4_metaprogramming/is_array/is_array.cc
4542         * tr1/4_metaprogramming/is_array/typedefs.cc
4543         * tr1/4_metaprogramming/is_base_of/is_base_of.cc
4544         * tr1/4_metaprogramming/is_base_of/typedefs.cc
4545         * tr1/4_metaprogramming/is_class/is_class.cc
4546         * tr1/4_metaprogramming/is_class/typedefs.cc
4547         * tr1/4_metaprogramming/is_compound/is_compound.cc
4548         * tr1/4_metaprogramming/is_compound/typedefs.cc
4549         * tr1/4_metaprogramming/is_const/is_const.cc
4550         * tr1/4_metaprogramming/is_const/typedefs.cc
4551         * tr1/4_metaprogramming/is_convertible/is_convertible.cc
4552         * tr1/4_metaprogramming/is_convertible/typedefs.cc
4553         * tr1/4_metaprogramming/is_empty/is_empty.cc
4554         * tr1/4_metaprogramming/is_empty/typedefs.cc
4555         * tr1/4_metaprogramming/is_enum/is_enum.cc
4556         * tr1/4_metaprogramming/is_enum/typedefs.cc
4557         * tr1/4_metaprogramming/is_floating_point/is_floating_point.cc
4558         * tr1/4_metaprogramming/is_floating_point/typedefs.cc
4559         * tr1/4_metaprogramming/is_function/is_function.cc
4560         * tr1/4_metaprogramming/is_function/typedefs.cc
4561         * tr1/4_metaprogramming/is_fundamental/is_fundamental.cc
4562         * tr1/4_metaprogramming/is_fundamental/typedefs.cc
4563         * tr1/4_metaprogramming/is_integral/is_integral.cc
4564         * tr1/4_metaprogramming/is_integral/typedefs.cc
4565         * tr1/4_metaprogramming/is_member_function_pointer/
4566         is_member_function_pointer.cc
4567         * tr1/4_metaprogramming/is_member_function_pointer/typedefs.cc
4568         * tr1/4_metaprogramming/is_member_object_pointer/
4569         is_member_object_pointer.cc
4570         * tr1/4_metaprogramming/is_member_object_pointer/typedefs.cc
4571         * tr1/4_metaprogramming/is_member_pointer/is_member_pointer.cc
4572         * tr1/4_metaprogramming/is_member_pointer/typedefs.cc
4573         * tr1/4_metaprogramming/is_object/is_object.cc
4574         * tr1/4_metaprogramming/is_object/typedefs.cc
4575         * tr1/4_metaprogramming/is_pod/is_pod.cc
4576         * tr1/4_metaprogramming/is_pod/typedefs.cc
4577         * tr1/4_metaprogramming/is_pointer/is_pointer.cc
4578         * tr1/4_metaprogramming/is_pointer/typedefs.cc
4579         * tr1/4_metaprogramming/is_polymorphic/is_polymorphic.cc
4580         * tr1/4_metaprogramming/is_polymorphic/typedefs.cc
4581         * tr1/4_metaprogramming/is_reference/is_reference.cc
4582         * tr1/4_metaprogramming/is_reference/typedefs.cc
4583         * tr1/4_metaprogramming/is_same/is_same.cc
4584         * tr1/4_metaprogramming/is_same/typedefs.cc
4585         * tr1/4_metaprogramming/is_scalar/is_scalar.cc
4586         * tr1/4_metaprogramming/is_scalar/typedefs.cc
4587         * tr1/4_metaprogramming/is_signed/is_signed.cc
4588         * tr1/4_metaprogramming/is_signed/typedefs.cc
4589         * tr1/4_metaprogramming/is_union/is_union.cc
4590         * tr1/4_metaprogramming/is_union/typedefs.cc
4591         * tr1/4_metaprogramming/is_unsigned/is_unsigned.cc
4592         * tr1/4_metaprogramming/is_unsigned/typedefs.cc
4593         * tr1/4_metaprogramming/is_void/is_void.cc
4594         * tr1/4_metaprogramming/is_void/typedefs.cc
4595         * tr1/4_metaprogramming/is_volatile/is_volatile.cc
4596         * tr1/4_metaprogramming/is_volatile/typedefs.cc
4597         * tr1/4_metaprogramming/other_transformations
4598         * tr1/4_metaprogramming/other_transformations/aligned_storage
4599         * tr1/4_metaprogramming/other_transformations/aligned_storage/
4600         aligned_storage.cc
4601         * tr1/4_metaprogramming/other_transformations/aligned_storage/
4602         typedefs.cc
4603         * tr1/4_metaprogramming/pointer_modifications
4604         * tr1/4_metaprogramming/pointer_modifications/add_pointer.cc
4605         * tr1/4_metaprogramming/pointer_modifications/remove_pointer.cc
4606         * tr1/4_metaprogramming/primary_type_categories
4607         * tr1/4_metaprogramming/primary_type_categories/is_array
4608         * tr1/4_metaprogramming/primary_type_categories/is_array/is_array.cc
4609         * tr1/4_metaprogramming/primary_type_categories/is_array/typedefs.cc
4610         * tr1/4_metaprogramming/primary_type_categories/is_class
4611         * tr1/4_metaprogramming/primary_type_categories/is_class/is_class.cc
4612         * tr1/4_metaprogramming/primary_type_categories/is_class/typedefs.cc
4613         * tr1/4_metaprogramming/primary_type_categories/is_enum
4614         * tr1/4_metaprogramming/primary_type_categories/is_enum/24808.cc
4615         * tr1/4_metaprogramming/primary_type_categories/is_enum/is_enum.cc
4616         * tr1/4_metaprogramming/primary_type_categories/is_enum/typedefs.cc
4617         * tr1/4_metaprogramming/primary_type_categories/is_floating_point
4618         * tr1/4_metaprogramming/primary_type_categories/is_floating_point/
4619         is_floating_point.cc
4620         * tr1/4_metaprogramming/primary_type_categories/is_floating_point/
4621         typedefs.cc
4622         * tr1/4_metaprogramming/primary_type_categories/is_function
4623         * tr1/4_metaprogramming/primary_type_categories/is_function/24808.cc
4624         * tr1/4_metaprogramming/primary_type_categories/is_function/
4625         is_function.cc
4626         * tr1/4_metaprogramming/primary_type_categories/is_function/typedefs.cc
4627         * tr1/4_metaprogramming/primary_type_categories/is_integral
4628         * tr1/4_metaprogramming/primary_type_categories/is_integral/
4629         is_integral.cc
4630         * tr1/4_metaprogramming/primary_type_categories/is_integral/typedefs.cc
4631         * tr1/4_metaprogramming/primary_type_categories/
4632         is_member_function_pointer
4633         * tr1/4_metaprogramming/primary_type_categories/
4634         is_member_function_pointer/is_member_function_pointer.cc
4635         * tr1/4_metaprogramming/primary_type_categories/
4636         is_member_function_pointer/typedefs.cc
4637         * tr1/4_metaprogramming/primary_type_categories/
4638         is_member_object_pointer
4639         * tr1/4_metaprogramming/primary_type_categories/
4640         is_member_object_pointer/is_member_object_pointer.cc
4641         * tr1/4_metaprogramming/primary_type_categories/
4642         is_member_object_pointer/typedefs.cc
4643         * tr1/4_metaprogramming/primary_type_categories/is_pointer
4644         * tr1/4_metaprogramming/primary_type_categories/is_pointer/
4645         is_pointer.cc
4646         * tr1/4_metaprogramming/primary_type_categories/is_pointer/typedefs.cc
4647         * tr1/4_metaprogramming/primary_type_categories/is_reference
4648         * tr1/4_metaprogramming/primary_type_categories/is_reference/
4649         is_reference.cc
4650         * tr1/4_metaprogramming/primary_type_categories/is_reference/
4651         typedefs.cc
4652         * tr1/4_metaprogramming/primary_type_categories/is_union
4653         * tr1/4_metaprogramming/primary_type_categories/is_union/is_union.cc
4654         * tr1/4_metaprogramming/primary_type_categories/is_union/typedefs.cc
4655         * tr1/4_metaprogramming/primary_type_categories/is_void
4656         * tr1/4_metaprogramming/primary_type_categories/is_void/is_void.cc
4657         * tr1/4_metaprogramming/primary_type_categories/is_void/typedefs.cc
4658         * tr1/4_metaprogramming/rank/rank.cc
4659         * tr1/4_metaprogramming/rank/typedefs.cc
4660         * tr1/4_metaprogramming/reference_modifications/add_reference.cc
4661         * tr1/4_metaprogramming/reference_modifications/remove_reference.cc
4662         * tr1/4_metaprogramming/relationships_between_types
4663         * tr1/4_metaprogramming/relationships_between_types/is_base_of
4664         * tr1/4_metaprogramming/relationships_between_types/is_base_of/
4665         is_base_of.cc
4666         * tr1/4_metaprogramming/relationships_between_types/is_base_of/
4667         typedefs.cc
4668         * tr1/4_metaprogramming/relationships_between_types/is_convertible
4669         * tr1/4_metaprogramming/relationships_between_types/is_convertible/
4670         is_convertible.cc
4671         * tr1/4_metaprogramming/relationships_between_types/is_convertible/
4672         typedefs.cc
4673         * tr1/4_metaprogramming/relationships_between_types/is_same
4674         * tr1/4_metaprogramming/relationships_between_types/is_same/is_same.cc
4675         * tr1/4_metaprogramming/relationships_between_types/is_same/typedefs.cc
4676         * tr1/4_metaprogramming/type_properties
4677         * tr1/4_metaprogramming/type_properties/alignment_of
4678         * tr1/4_metaprogramming/type_properties/alignment_of/alignment_of.cc
4679         * tr1/4_metaprogramming/type_properties/alignment_of/typedefs.cc
4680         * tr1/4_metaprogramming/type_properties/extent
4681         * tr1/4_metaprogramming/type_properties/extent/extent.cc
4682         * tr1/4_metaprogramming/type_properties/extent/typedefs.cc
4683         * tr1/4_metaprogramming/type_properties/has_nothrow_assign
4684         * tr1/4_metaprogramming/type_properties/has_nothrow_assign/
4685         has_nothrow_assign.cc
4686         * tr1/4_metaprogramming/type_properties/has_nothrow_assign/typedefs.cc
4687         * tr1/4_metaprogramming/type_properties/has_nothrow_constructor
4688         * tr1/4_metaprogramming/type_properties/has_nothrow_constructor/
4689         has_nothrow_constructor.cc
4690         * tr1/4_metaprogramming/type_properties/has_nothrow_constructor/
4691         typedefs.cc
4692         * tr1/4_metaprogramming/type_properties/has_nothrow_copy
4693         * tr1/4_metaprogramming/type_properties/has_nothrow_copy/
4694         has_nothrow_copy.cc
4695         * tr1/4_metaprogramming/type_properties/has_nothrow_copy/typedefs.cc
4696         * tr1/4_metaprogramming/type_properties/has_trivial_assign
4697         * tr1/4_metaprogramming/type_properties/has_trivial_assign/
4698         has_trivial_assign.cc
4699         * tr1/4_metaprogramming/type_properties/has_trivial_assign/typedefs.cc
4700         * tr1/4_metaprogramming/type_properties/has_trivial_constructor
4701         * tr1/4_metaprogramming/type_properties/has_trivial_constructor/
4702         has_trivial_constructor.cc
4703         * tr1/4_metaprogramming/type_properties/has_trivial_constructor/
4704         typedefs.cc
4705         * tr1/4_metaprogramming/type_properties/has_trivial_copy
4706         * tr1/4_metaprogramming/type_properties/has_trivial_copy/
4707         has_trivial_copy.cc
4708         * tr1/4_metaprogramming/type_properties/has_trivial_copy/typedefs.cc
4709         * tr1/4_metaprogramming/type_properties/has_trivial_destructor
4710         * tr1/4_metaprogramming/type_properties/has_trivial_destructor/
4711         has_trivial_destructor.cc
4712         * tr1/4_metaprogramming/type_properties/has_trivial_destructor/
4713         typedefs.cc
4714         * tr1/4_metaprogramming/type_properties/has_virtual_destructor
4715         * tr1/4_metaprogramming/type_properties/has_virtual_destructor/
4716         has_virtual_destructor.cc
4717         * tr1/4_metaprogramming/type_properties/has_virtual_destructor/
4718         typedefs.cc
4719         * tr1/4_metaprogramming/type_properties/is_abstract
4720         * tr1/4_metaprogramming/type_properties/is_abstract/is_abstract.cc
4721         * tr1/4_metaprogramming/type_properties/is_abstract/typedefs.cc
4722         * tr1/4_metaprogramming/type_properties/is_const
4723         * tr1/4_metaprogramming/type_properties/is_const/is_const.cc
4724         * tr1/4_metaprogramming/type_properties/is_const/typedefs.cc
4725         * tr1/4_metaprogramming/type_properties/is_empty
4726         * tr1/4_metaprogramming/type_properties/is_empty/is_empty.cc
4727         * tr1/4_metaprogramming/type_properties/is_empty/typedefs.cc
4728         * tr1/4_metaprogramming/type_properties/is_pod
4729         * tr1/4_metaprogramming/type_properties/is_pod/is_pod.cc
4730         * tr1/4_metaprogramming/type_properties/is_pod/typedefs.cc
4731         * tr1/4_metaprogramming/type_properties/is_polymorphic
4732         * tr1/4_metaprogramming/type_properties/is_polymorphic/24809.cc
4733         * tr1/4_metaprogramming/type_properties/is_polymorphic/
4734         is_polymorphic.cc
4735         * tr1/4_metaprogramming/type_properties/is_polymorphic/typedefs.cc
4736         * tr1/4_metaprogramming/type_properties/is_signed
4737         * tr1/4_metaprogramming/type_properties/is_signed/is_signed.cc
4738         * tr1/4_metaprogramming/type_properties/is_signed/typedefs.cc
4739         * tr1/4_metaprogramming/type_properties/is_unsigned
4740         * tr1/4_metaprogramming/type_properties/is_unsigned/is_unsigned.cc
4741         * tr1/4_metaprogramming/type_properties/is_unsigned/typedefs.cc
4742         * tr1/4_metaprogramming/type_properties/is_volatile
4743         * tr1/4_metaprogramming/type_properties/is_volatile/is_volatile.cc
4744         * tr1/4_metaprogramming/type_properties/is_volatile/typedefs.cc
4745         * tr1/4_metaprogramming/type_properties/rank
4746         * tr1/4_metaprogramming/type_properties/rank/rank.cc
4747         * tr1/4_metaprogramming/type_properties/rank/typedefs.cc
4748
4749 2007-04-30  Hans-Peter Nilsson  <hp@axis.com>
4750
4751         * testsuite/lib/libstdc++.exp (v3_target_compile_as_c): Correct
4752         regexp to filter out -nostdinc++.
4753
4754 2007-04-30  Paolo Carlini  <pcarlini@suse.de>
4755
4756         PR libstdc++/30449 (equal)
4757         * include/bits/stl_algobase.h (struct __niter_base): Add.
4758         (copy(_II, _II, _OI), copy_backward(_BI1, _BI1, _BI2),
4759         fill(_ForwardIterator, _ForwardIterator, const _Tp&),
4760         fill_n(_OI, _Size, const _Tp&), equal(_II1, _II1, _II2)):
4761         Use it.
4762         (struct __copy_normal, __copy_backward_normal,
4763         struct __fill_normal, struct __fill_n_normal): Remove.
4764         (struct __equal, struct __equal_aux): Add.
4765         * include/bits/stl_iterator.h: Add _Iterator_type typedef.
4766
4767         * include/bits/stl_algobase.h (__fill_aux(wchar_t*,
4768         wchar_t*, wchar_t), __fill_n_aux(wchar_t*, _Size, wchar_t)):
4769         Remove.
4770
4771         * testsuite/23_containers/requirements/sequences/dr438/vector/
4772         constructor_1_neg.cc: Adjust dg-error line number.
4773         * testsuite/23_containers/requirements/sequences/dr438/vector/
4774         constructor_2_neg.cc: Likewise.
4775
4776 2007-04-30  Paolo Carlini  <pcarlini@suse.de>
4777
4778         * include/tr1/type_traits (is_pod): Use __is_pod.
4779         * testsuite/tr1/4_metaprogramming/type_properties/
4780         has_trivial_destructor/has_trivial_destructor.cc: Adjust.
4781         * testsuite/tr1/4_metaprogramming/type_properties/
4782         has_nothrow_constructor/has_nothrow_constructor.cc: Likewise.
4783         * testsuite/tr1/4_metaprogramming/type_properties/
4784         has_trivial_constructor/has_trivial_constructor.cc: Likewise.
4785         * testsuite/tr1/4_metaprogramming/type_properties/
4786         is_pod/is_pod.cc: Likewise.
4787
4788 2007-04-29  Paolo Carlini  <pcarlini@suse.de>
4789
4790         * include/bits/localefwd.h: Remove redundant inline qualifiers.
4791         (__check_facet): Move...
4792         * include/bits/basic_ios.h: ... here.
4793         (widen(char), narrow(char_type, char)): Define inline.
4794         * include/bits/basic_ios.tcc (widen(char), narrow(char_type, char)):
4795         Remove.
4796
4797 2007-04-27  Paolo Carlini  <pcarlini@suse.de>
4798
4799         DR 438, [DR].
4800         * include/bits/basic_string.h (_S_construct_aux(_InIterator,
4801         _InIterator, const _Alloc&, __true_type)): Do not cast the
4802         second argument.
4803         * include/ext/rc_string_base.h (_S_construct_aux(_Integer,
4804         _Integer, const _Alloc&, std::__true_type)): Likewise.
4805         * include/ext/sso_string_base.h (_M_construct_aux(_InIterator,
4806         _InIterator, std::__true_type)): Likewise.
4807         * include/bits/stl_deque.h (_M_initialize_dispatch(_Integer,
4808         _Integer, __true_type)): Cast the first argument.
4809         (_M_assign_dispatch(_Integer, _Integer, __true_type)): Do
4810         not cast the arguments.
4811         (_M_insert_dispatch(iterator, _Integer, _Integer, __true_type)):
4812         Likewise.
4813         * include/bits/stl_list.h (_M_initialize_dispatch(_Integer,
4814         _Integer, __true_type)): Likewise.
4815         (_M_assign_dispatch(_Integer, _Integer, __true_type)): Do
4816         not cast both arguments.
4817         * include/bits/stl_bvector.h (_M_initialize_dispatch(_Integer,
4818         _Integer, __true_type)): Cast the first argument.
4819         (_M_assign_dispatch(_Integer, _Integer, __true_type)): Do not
4820         cast the arguments.
4821         * include/bits/stl_vector.h (_M_initialize_dispatch(_Integer,
4822         _Integer, __true_type)): Cast the first argument.
4823         (_M_assign_dispatch(_Integer, _Integer, __true_type)): Do not
4824         cast the arguments.
4825         (_M_insert_dispatch(iterator, _Integer, _Integer, __true_type)):
4826         Likewise.
4827         * testsuite/21_strings/basic_string/requirements/dr438/
4828         constructor.cc: New.
4829         * testsuite/ext/vstring/requirements/dr438/constructor.cc: Likewise.
4830         * testsuite/23_containers/requirements/sequences/dr438/deque/
4831         assign_neg.cc: Likewise.
4832         * testsuite/23_containers/requirements/sequences/dr438/deque/
4833         constructor.cc: Likewise.
4834         * testsuite/23_containers/requirements/sequences/dr438/deque/
4835         constructor_1_neg.cc: Likewise.
4836         * testsuite/23_containers/requirements/sequences/dr438/deque/
4837         constructor_1_neg.cc: Likewise.
4838         * testsuite/23_containers/requirements/sequences/dr438/deque/
4839         insert_neg.cc: Likewise.
4840         * testsuite/23_containers/requirements/sequences/dr438/list/
4841         assign_neg.cc: Likewise.
4842         * testsuite/23_containers/requirements/sequences/dr438/list/
4843         constructor.cc: Likewise.
4844         * testsuite/23_containers/requirements/sequences/dr438/list/
4845         constructor_1_neg.cc: Likewise.
4846         * testsuite/23_containers/requirements/sequences/dr438/list/
4847         constructor_1_neg.cc: Likewise.
4848         * testsuite/23_containers/requirements/sequences/dr438/list/
4849         insert_neg.cc: Likewise.
4850         * testsuite/23_containers/requirements/sequences/dr438/vector/
4851         assign_neg.cc: Likewise.
4852         * testsuite/23_containers/requirements/sequences/dr438/vector/
4853         constructor.cc: Likewise.
4854         * testsuite/23_containers/requirements/sequences/dr438/vector/
4855         constructor_1_neg.cc: Likewise.
4856         * testsuite/23_containers/requirements/sequences/dr438/vector/
4857         constructor_1_neg.cc: Likewise.
4858         * testsuite/23_containers/requirements/sequences/dr438/vector/
4859         insert_neg.cc: Likewise.
4860         * testsuite/23_containers/requirements/sequences/dr438/vector/
4861         bool/constructor.cc: Likewise.
4862         * docs/html/ext/howto.html: Add an entry for DR 438.
4863
4864 2007-04-25  Paolo Carlini  <pcarlini@suse.de>
4865
4866         * include/bits/locale_classes.h: Remove redundant inline specifiers.
4867         * include/bits/ios_base.h: Likewise.
4868         * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust dg-error line
4869         numbers.
4870         * testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
4871
4872 2007-04-24  Paolo Carlini  <pcarlini@suse.de>
4873
4874         * include/bits/locale_facets.h (class collate, class collate_byname):
4875         Move...
4876         * include/bits/locale_classes.h: ... here.
4877         * include/bits/locale_facets.tcc (locale::combine, locale::operator(),
4878         has_facet, use_facet, collate::_M_compare, collate::_M_transform,
4879         collate::do_compare, collate::do_transform, collate::do_hash): Move...
4880         * include/bits/locale_classes.tcc: ... here, new.
4881         * include/Makefile.am: Add.
4882         * testsuite/util/testsuite_abi.h: Include <locale>.
4883         * include/std/locale: Tweak.
4884         * include/std/istream: Likewise.
4885         * include/std/ostream: Likewise.
4886         * include/bits/codecvt.h: Likewise.
4887         * include/Makefile.in: Regenerate.
4888
4889         * include/bits/codecvt.h: Adjust extern template declarations.
4890         * include/bits/ostream_insert.h: Likewise.
4891         * include/bits/ostream.tcc: Likewise.
4892
4893         * include/bits/locale_facets.h: Do not include <bits/codecvt.h>.
4894         * include/std/fstream: Do it here.
4895         * include/bits/locale_facets_nonio.h: Likewise.
4896
4897 2007-04-23  Paolo Carlini  <pcarlini@suse.de>
4898
4899         * include/bits/locale_facets.h (class time_base,
4900         struct __timepunct_cache, class __timepunct, class time_get,
4901         class time_get_byname, class time_put, class time_put_byname,
4902         class money_base, struct __moneypunct_cache, class moneypunct,
4903         class moneypunct_byname, class money_get, class money_put,
4904         struct messages_base, class messages, class messages_byname): Move...
4905         * include/bits/locale_facets_nonio.h: ... here.
4906         * include/bits/locale_facets.tcc
4907         (struct __use_cache<__moneypunct_cache<> >,
4908         __moneypunct_cache<>::_M_cache, money_get<>::_M_extract,
4909         money_get<>::__do_get, money_get<>::do_get, money_put<>::_M_insert,
4910         money_put<>::__do_put, money_put<>::do_put, time_get<>::do_date_order,
4911         time_get<>::_M_extract_via_format, time_get<>::_M_extract_num,
4912         time_get<>::_M_extract_name, time_get<>::do_get_time,
4913         time_get<>::do_get_date, time_get<>::do_get_weekday,
4914         time_get<>::do_get_monthname, time_get<>::do_get_year, time_put<>::put,
4915         time_put<>::do_put): Move...
4916         * include/bits/locale_facets_nonio.tcc: ... here.
4917         * include/Makefile.am: Add.
4918         * include/std/locale: Adjust includes.
4919         * include/std/fstream: Likewise.
4920         * include/std/istream: Likewise.
4921         * include/std/ostream: Likewise.
4922         * include/Makefile.in: Regenerate.
4923
4924 2007-04-23  Nathan Sidwell  <nathan@codesourcery.com>
4925
4926         * scripts/testsuite_flags.in: Add --build-cc option.
4927         * testsuite/lib/libstdc++.exp (libstdc++_init): Set cc.  Fix typo
4928         in previous change.
4929         (v3_target_compile_as_c): Use cc.
4930
4931 2007-04-22  Mark Mitchell  <mark@codesourcery.com>
4932
4933         * testsuite/lib/libstdc++.exp (libstdc++_init): Use the same flags
4934         for remote host testing we use for local host testing.  Copy all
4935         testsuite headers to the remote host
4936         (v3_target_compile_as_c): Use remote_exec, not just exec.
4937
4938 2007-04-22  Paolo Carlini  <pcarlini@suse.de>
4939
4940         * include/tr1/functional: Formatting fixes.
4941
4942 2007-04-22  Paolo Carlini  <pcarlini@suse.de>
4943
4944         * include/ext/concurrence.h: Do not include <cstdlib>, use
4945         __builtin_abort.
4946         * include/debug/debug.h: Likewise.
4947         * include/tr1/memory: Likewise.
4948         * include/tr1/boost_shared_ptr.h: Likewise.
4949         * include/tr1/functional: Likewise.
4950
4951 2007-04-22  Paolo Carlini  <pcarlini@suse.de>
4952
4953         * include/bits/locale_facets.tcc: Do not include <typeinfo>.
4954         * testsuite/27_io/basic_ios/imbue/14072.cc: Do it here.
4955         * testsuite/27_io/basic_ios/cons/char/3.cc: Likewise.
4956         * testsuite/27_io/basic_istream/sentry/pod/1.cc: Likewise.
4957         * testsuite/27_io/basic_ostream/sentry/pod/1.cc: Likewise.
4958         * testsuite/21_strings/basic_string/inserters_extractors/
4959         pod/10081-in.cc: Likewise.
4960         * testsuite/21_strings/basic_string/inserters_extractors/
4961         pod/10081-out.cc: Likewise.
4962         * testsuite/22_locale/locale/cons/2.cc: Likewise.
4963         * testsuite/22_locale/locale/cons/unicode.cc: Likewise.
4964         * testsuite/22_locale/numpunct/members/pod/2.cc: Likewise.
4965         * testsuite/22_locale/global_templates/1.cc: Likewise.
4966
4967 2007-04-19  Joseph Myers  <joseph@codesourcery.com>
4968
4969         * configure.ac: Allow both powerpc*-*-linux* and powerpc*-*-gnu*
4970         for long double compatibility.
4971         * configure: Regenerate.
4972         * src/complex_io.cc, src/istream-inst.cc, src/ostream-inst.cc:
4973         Condition some _GLIBCXX_LDBL_COMPAT calls on _GLIBCXX_USE_WCHAR_T.
4974
4975 2007-04-14  Steve Ellcey  <sje@cup.hp.com>
4976
4977         * configure.ac: Change how LIBSUPCXX_PICFLAGS is set.
4978         * configure: Regenerate.
4979
4980 2007-04-14  Paolo Carlini  <pcarlini@suse.de>
4981
4982         * config/locale/generic/c_locale.cc: Include <limits>.
4983
4984 2007-04-13  Paolo Carlini  <pcarlini@suse.de>
4985
4986         PR libstdc++/31556
4987         * include/bits/stl_algobase.h (equal(_InputIterator1, _InputIterator1,
4988         _InputIterator2, _BinaryPredicate), mismatch(_InputIterator1,
4989         _InputIterator1, _InputIterator2, _BinaryPredicate)): Convert
4990         predicate return to bool.
4991         * include/bits/stl_algo.h (__find_if(_InputIterator, _InputIterator,
4992         _Predicate, input_iterator_tag), search(_ForwardIterator1,
4993         _ForwardIterator1, _ForwardIterator2, _ForwardIterator2,
4994         _BinaryPredicate), __search_n(_ForwardIterator, _ForwardIterator,
4995         _Integer, const _Tp&, _BinaryPredicate, std::forward_iterator_tag),
4996         __search_n(_RandomAccessIter, _RandomAccessIter, _Integer, const _Tp&,
4997         _BinaryPredicate, std::random_access_iterator_tag),
4998         search_n(_ForwardIterator, _ForwardIterator, _Integer, const _Tp&,
4999         _BinaryPredicate), remove_copy_if(_InputIterator, _InputIterator,
5000         _OutputIterator, _Predicate), __unique_copy(_ForwardIterator,
5001         _ForwardIterator, _OutputIterator, _BinaryPredicate,
5002         forward_iterator_tag, output_iterator_tag),
5003         __unique_copy(_InputIterator, _InputIterator, _OutputIterator,
5004         _BinaryPredicate, input_iterator_tag, output_iterator_tag),
5005         __unique_copy(_InputIterator, _InputIterator, _OutputIterator,
5006         _BinaryPredicate, input_iterator_tag, output_iterator_tag),
5007         __unique_copy(_InputIterator, _InputIterator, _ForwardIterator,
5008         _BinaryPredicate, input_iterator_tag, forward_iterator_tag),
5009         unique(_ForwardIterator, _ForwardIterator, _BinaryPredicate),
5010         __partition(_BidirectionalIterator, _BidirectionalIterator, _Predicate,
5011         bidirectional_iterator_tag), binary_search(_ForwardIterator,
5012         _ForwardIterator, const _Tp&, _Compare),
5013         next_permutation(_BidirectionalIterator, _BidirectionalIterator,
5014         _Compare), prev_permutation(_BidirectionalIterator,
5015         _BidirectionalIterator, _Compare)): Likewise.
5016
5017 2007-04-13  Paolo Carlini  <pcarlini@suse.de>
5018
5019         PR libstdc++/31554
5020         * include/bits/stl_algo.h (stable_partition): Convert __buf.size()
5021         to _DistanceType.
5022
5023 2007-04-13  Paolo Carlini  <pcarlini@suse.de>
5024
5025         * include/ext/numeric_traits.h: Do not include <limits>.
5026         (__numeric_traits_integer::__is_signed, __digits): Add.
5027         (__numeric_traits_floating::__digits10, __max_exponent10): Add.
5028         * src/istream.cc (ignore<char>(streamsize, int_type), operator>>
5029         (basic_istream<char>&, char*), ignore<wchar_t>(streamsize,
5030         int_type)): Use the latter.
5031         * src/compatibility.cc (ignore<char>(streamsize),
5032         ignore<wchar_t>(streamsize)): Likewise.
5033         * include/ext/vstring_util.h (__vstring_utility<>::_S_compare):
5034         Likewise.
5035         * include/bits/stl_memory.h (__get_temporary_buffer): Likewise.
5036         * include/bits/stl_algobase.h (lexicographical_compare(const char*,
5037         const char*, const char*, const char*)): Likewise.
5038         * include/bits/locale_facets.tcc (num_get<>::_M_extract_int(_InIter,
5039         _InIter, ios_base&, ios_base::iostate&, _ValueT&),
5040         num_put<>::_M_insert_int(_OutIter, ios_base&, _CharT, _ValueT),
5041         num_put<>::_M_insert_float(_OutIter, ios_base&, _CharT, char,
5042         _ValueT), collate<>::do_hash(const _CharT*, const _CharT*)): Likewise.
5043         * include/bits/basic_string.h (basic_string<>::_S_compare): Likewise.
5044         * include/bits/istream.tcc (operator>>(short&), operator>>(int&),
5045         ignore(streamsize), ignore(streamsize, int_type), operator>>
5046         (basic_istream<>&, _CharT*)): Likewise.
5047         * include/bits/stl_bvector.h (vector<bool>::max_size): Likewise.
5048         * include/tr1/functional_hash.h (struct hash<long double>): Likewise.
5049         * include/std/istream: Do not include <limits>.
5050         * include/tr1/cmath: Include <limits>.
5051         * testsuite/23_containers/vector/bool/capacity/29134.cc: Likewise.
5052         * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
5053         Likewise.
5054         * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
5055         Likewise.
5056         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
5057         Likewise.
5058         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/13.cc:
5059         Likewise.
5060         * testsuite/27_io/ios_base/storage/2.cc: Likewise.
5061
5062         * include/tr1/hashtable: Do not include the whole <iterator>.
5063
5064 2007-04-11  Paolo Carlini  <pcarlini@suse.de>
5065
5066         * config/locale/gnu/c_locale.h: Do not include <langinfo.h>
5067         and <iconv.h>.
5068         * config/locale/gnu/c++locale_internal.h: Include <langinfo.h>.
5069
5070 2007-04-11  Paolo Carlini  <pcarlini@suse.de>
5071
5072         * include/std/istream (class basic_istream<>): Remove unneded friend
5073         declarations.
5074
5075 2007-04-11  Paolo Carlini  <pcarlini@suse.de>
5076
5077         * testsuite/22_locale/num_get/get/wchar_t/1.cc: Initialize v.
5078
5079 2007-04-11  Paolo Carlini  <pcarlini@suse.de>
5080
5081         * include/bits/locale_facets.tcc (num_get<>::do_get(iter_type,
5082         ios_base&, ios_base::iostate&, void*&)): Fix for sizeof(void*)
5083         > sizeof(unsigned long).
5084
5085         * testsuite/22_locale/num_get/get/char/1.cc: Fix void* test.
5086         * testsuite/22_locale/num_get/get/wchar_t/1.cc: Likewise.
5087
5088         * testsuite/22_locale/num_put/put/char/1.cc: Tweak comment.
5089         * testsuite/22_locale/num_put/put/wchar_t/1.cc: Likewise.
5090
5091 2007-04-11  Zack Weinberg  <zackw@panix.com>
5092
5093         * include/std/iosfwd: Do not include <bits/c++locale.h> and
5094         <bits/functexcept.h>.
5095
5096 2007-04-10  Benjamin Kosnik  <bkoz@redhat.com>
5097
5098         * include/ext/pb_ds/detail/resize_policy/
5099         cc_hash_max_collision_check_resize_trigger_imp.hpp: Qualify
5100         namespace std members.  
5101         * include/ext/pb_ds/detail/list_update_policy/
5102         counter_lu_metadata.hpp: Same.
5103         * include/ext/throw_allocator.h: Same.
5104         * include/ext/pod_char_traits.h: Same.
5105         * include/ext/malloc_allocator.h: Same.
5106         * libsupc++/del_op.cc: Same, simplify.
5107
5108         * include/bits/c++config: Adjust macro name.
5109         
5110         * include/c_global/cstring: Alphabetize.
5111         * include/c_global/cwctype: Same.
5112         
5113 2007-04-10  Paolo Carlini  <pcarlini@suse.de>
5114
5115         * include/tr1/cmath: Include <bits/stl_algobase.h> instead of
5116         the whole <algorithm>.
5117
5118 2007-04-10  Paolo Carlini  <pcarlini@suse.de>
5119
5120         * include/tr1/type_traits (__is_function_helper): New, uses
5121         variadic templates.
5122         (is_function): Forward to the latter.
5123         * testsuite/tr1/4_metaprogramming/primary_type_categories/
5124         is_function/is_function.cc: Add test.
5125
5126 2007-04-10  Paolo Carlini  <pcarlini@suse.de>
5127
5128         PR libstdc++/28277 (partial: vstring bits)
5129         * include/bits/ostream_insert.h: New.
5130         * include/Makefile.am: Add.
5131         * include/ext/vstring.h (operator<<(basic_ostream<>&,
5132         const __versa_string<>&): Forward to __ostream_insert.
5133         * include/bits/basic_string.h (operator<<(basic_ostream<>&,
5134         const string<>&)): Likewise.
5135         * include/std/ostream (operator<<(basic_ostream<>&, _CharT),
5136         operator<<(basic_ostream<char,>&, char), operator<<(basic_ostream<>&,
5137         const _CharT*), operator<<(basic_ostream<char,>&, const char*)):
5138         Likewise.
5139         * include/ext/vstring.tcc (operator<<(basic_ostream<>&,
5140         const __versa_string<>&)): Remove.
5141         (class basic_ostream): Remove friend declarations.
5142         (basic_ostream<>::_M_write(char_type, streamsize),
5143         _M_insert(const char_type*, streamsize)): Remove.
5144         * include/bits/ostream.tcc (_M_insert(const char_type*, streamsize)):
5145         Remove definition.
5146         (operator<<(basic_ostream<>&, const char*)): Use __ostream_insert.
5147         * config/abi/pre/gnu.ver: Adjust.
5148         * src/ostream-inst.cc: Add __ostream_insert instantiations.
5149         * include/bits/locale_facets.h (__pad<>::_S_pad): Remove __num
5150         parameter.
5151         * include/bits/locale_facets.tcc (__pad<>::_S_pad): Adjust.
5152         (num_put<>::_M_pad(_CharT, streamsize, ios_base&, _CharT*,
5153         const _CharT*, int&)): Likewise.
5154         * include/Makefile.in: Rebuild.
5155         * testsuite/ext/vstring/inserters_extractors/char/28277.cc: New.
5156         * testsuite/ext/vstring/inserters_extractors/wchar_t/28277.cc: New.
5157
5158         * include/ext/vstring_util.h: Do not include the whole <locale>.
5159         * include/ext/vstring.tcc (operator>>(basic_istream<>&,
5160         __versa_string<>&, getline(basic_istream<>&, __versa_string<>&,
5161         _CharT)): Tweak to refer to ios_base as a base of istream; do not
5162         refer to non-standard types of istream.
5163         * include/bits/istream.tcc (operator>>(basic_istream<>&, _CharT*),
5164         ws(basic_istream<>&)): Do not refer to non-standard types of istream.
5165         * include/std/bitset (operator>>(std::basic_istream<>&, bitset<>&)):
5166         Avoid using basic_streambuf<>*.
5167
5168         * include/bits/istream.tcc (operator>>(basic_istream<>&,
5169         basic_string<>&), getline(basic_istream<>&, basic_string<>&, _CharT)):
5170         Move...
5171         * include/bits/basic_string.tcc: ... here; tweak to refer to ios_base
5172         as a base of istream; do not refer to non-standard types of istream.
5173         * include/std/string: Tweak includes.
5174
5175         * include/ext/type_traits.h (__is_null_pointer): Add.
5176         * include/ext/rc_string_base.h: Use it.
5177         * include/ext/sso_string_base.h: Likewise.
5178         * include/bits/basic_string.tcc (__is_null_pointer): Remove, use
5179         the above.
5180         * include/ext/vstring_util.h (__vstring_utility<>::_S_is_null_pointer):
5181         Remove.
5182
5183 2007-04-09  Paolo Carlini  <pcarlini@suse.de>
5184
5185         * include/tr1/type_traits_fwd.h (__is_union_or_class): Remove.
5186         * include/tr1/type_traits (struct __in_array,
5187         struct __is_union_or_class, struct __is_union_or_class_helper,
5188         struct __is_empty_helper, struct __is_polymorphic_helper):
5189         Remove.
5190         (struct is_enum): Use __is_enum.
5191         (struct is_union): Use __is_union.
5192         (struct is_class): Use __is_class.
5193         (struct is_function): Adjust.
5194         (struct is_empty): Use __is_empty.
5195         (struct is_polymorphic): Use __is_polymorphic.
5196         (struct is_abstract): Use __is_abstract.
5197         (struct has_virtual_destructor): Use __has_virtual_destructor.
5198         (struct __is_base_of_helper): Use __is_base_of.
5199         * testsuite/tr1/4_metaprogramming/composite_type_traits/
5200         is_union_or_class/typedefs.cc: Remove.
5201         * testsuite/tr1/4_metaprogramming/composite_type_traits/
5202         is_union_or_class/is_union_or_class.cc: Likewise.
5203         * testsuite/tr1/4_metaprogramming/primary_type_categories/
5204         is_class/typedefs.cc: New.
5205         * testsuite/tr1/4_metaprogramming/primary_type_categories/
5206         is_class/is_class.cc: Likewise.
5207         * testsuite/tr1/4_metaprogramming/primary_type_categories/
5208         is_union/typedefs.cc: Likewise.
5209         * testsuite/tr1/4_metaprogramming/primary_type_categories/
5210         is_union/is_union.cc: Likewise.
5211         * testsuite/tr1/4_metaprogramming/type_properties/
5212         has_virtual_destructor/typedefs.cc: Likewise.
5213         * testsuite/tr1/4_metaprogramming/type_properties/
5214         has_virtual_destructor/has_virtual_destructor.cc: Likewise.
5215         * testsuite/util/testsuite_tr1.h (class VirtualDestructorClass): Add.
5216         * testsuite/tr1/4_metaprogramming/type_properties/is_polymorphic/
5217         is_polymorphic.cc: Add test.
5218
5219 2007-04-08  Alexey Beshenov  <bav.272304@gmail.com>
5220
5221         PR libstdc++/31511
5222         * include/c_global/cmath.tcc (__cmath_power): Use _Tp(1).
5223         * include/c_std/cmath.tcc (__cmath_power): Likewise.
5224
5225 2007-04-06  Paolo Carlini  <pcarlini@suse.de>
5226
5227         PR libstdc++/31117
5228         * config/locale/gnu/c_locale.cc (__convert_to_v): Do not use errno,
5229         just check that the value is finite.
5230         * config/locale/generic/c_locale.cc (__convert_to_v): Likewise.
5231
5232 2007-04-06  Paolo Carlini  <pcarlini@suse.de>
5233
5234         * include/ext/type_traits.h (__numeric_traits): Move...
5235         * include/ext/numeric_traits.h: ... here.
5236         * include/Makefile.am: Add.
5237         * include/ext/pb_ds/detail/type_utils.hpp: Include 
5238         <ext/numeric_traits.h> too.
5239         * include/tr1/random: Likewise.
5240         * testsuite/ext/type_traits/numeric_traits.cc: Move...
5241         * testsuite/ext/numeric_traits/numeric_traits.cc: ... here.
5242         * include/Makefile.in: Regenerate.
5243
5244 2007-04-04  Paolo Carlini  <pcarlini@suse.de>
5245
5246         * include/bits/valarray_array.h (__valarray_default_construct(_Tp*,
5247         _Tp*)): Use __is_scalar instead of __is_pod.
5248
5249 2007-04-03  Paolo Carlini  <pcarlini@suse.de>
5250
5251         * include/bits/stl_algobase.h (__copy_aux(_II, _II, _OI),
5252         __copy_backward_aux(_BI1, _BI1, _BI2)): Use __is_pod.
5253         * include/bits/stl_deque.h (deque<>::_M_destroy_data(iterator,
5254         iterator, const std::allocator<>&)): Use __has_trivial_constructor.
5255         (deque<>::_M_destroy_data_dispatch): Remove.
5256         * include/bits/stl_uninitialized.h (uninitialized_copy(_InputIterator,
5257         _InputIterator, _ForwardIterator), uninitialized_fill(_ForwardIterator,
5258         _ForwardIterator, const _Tp&), uninitialized_fill_n(_ForwardIterator,
5259         _Size, const _Tp&)): Use __is_pod.
5260         * include/bits/stl_tempbuf.h (_Temporary_buffer::
5261         _Temporary_buffer(_ForwardIterator, _ForwardIterator)): Use __is_pod.
5262         (_Temporary_buffer::_M_initialize_buffer): Remove.
5263         * include/bits/stl_construct.h (_Destroy(_ForwardIterator,
5264         _ForwardIterator)): Use __has_trivial_destructor.
5265         (__destroy_aux): Remove.
5266
5267 2007-04-03  Paolo Carlini  <pcarlini@suse.de>
5268
5269         * include/bits/stl_map.h (map<>::insert(iterator, const value_type&):
5270         Uglify parameter.
5271
5272 2007-04-03  Paolo Carlini  <pcarlini@suse.de>
5273
5274         PR libstdc++/31440
5275         * include/bits/stl_tree.h (_M_lower_bound(_Link_type, _Link_type,
5276         const _Key&), _M_upper_bound(_Link_type, _Link_type, const _Key&)):
5277         Add.
5278         (_M_equal_range(const _Key&) const): Remove.
5279         (lower_bound(const key_type&), lower_bound(const key_type&) const,
5280         upper_bound(const key_type&), upper_bound(const key_type&) const,
5281         equal_range(const key_type&), equal_range(const key_type&) const):
5282         Adjust.
5283         (find(const _Key&), find(const _Key&) const): Tweak.
5284         * testsuite/23_containers/map/operations/31440.cc: New.
5285
5286 2007-04-02  Matthew Levine  <gcc@severeweblint.org>
5287             Paolo Carlini  <pcarlini@suse.de>
5288
5289         PR libstdc++/31370
5290         * include/bits/stl_bvector.h (vector<bool>::max_size): Fix.
5291         (vector<bool>::_M_check_len): Add.
5292         * include/bits/vector.tcc (_M_fill_insert(iterator, size_type, bool),
5293         _M_insert_range(iterator, _ForwardIterator, _ForwardIterator,
5294         std::forward_iterator_tag), _M_insert_aux(iterator, bool)): Use it.
5295         * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc: New.
5296         * testsuite/23_containers/vector/bool/capacity/29134.cc: Adjust.
5297
5298         * include/bits/stl_vector.h (vector<>::_M_check_len): Add.
5299         * include/bits/vector.tcc (_M_insert_aux(iterator, const _Tp&),
5300         _M_fill_insert(iterator, size_type, const value_type&),
5301         _M_range_insert(iterator, _ForwardIterator, _ForwardIterator,
5302         std::forward_iterator_tag)): Use it.
5303
5304 2007-04-02  Paolo Carlini  <pcarlini@suse.de>
5305
5306         PR libstdc++/31401 (vstring bits)
5307         * include/ext/vstring.tcc (find(const _CharT*, size_type,
5308         size_type)): Avoid unsigned overflow.
5309
5310 2007-04-02  Paolo Carlini  <pcarlini@suse.de>
5311
5312         * include/bits/locale_facets.tcc (num_put<>::do_put(iter_type,
5313         ios_base&, char_type, const void*)): Fix for sizeof(const void*)
5314         > sizeof(unsigned long).
5315
5316 2007-04-01  Andreas Tobler  <a.tobler@schweiz.org>
5317
5318         * include/tr1/poly_laguerre.tcc: Missing s/__alpha/__alpha1, line 278.
5319
5320 2007-04-01  Richard Henderson  <rth@redhat.com>
5321
5322         * include/tr1/poly_laguerre.tcc: s/__alpha/__alpha1/g.
5323         * include/tr1/ell_integral.tcc: Likewise.
5324
5325 2007-03-31  Paolo Carlini  <pcarlini@suse.de>
5326
5327         * include/bits/stl_bvector.h (_M_fill_insert(iterator, size_type,
5328         bool), _M_insert_range(iterator, _ForwardIterator, _ForwardIterator,
5329         std::forward_iterator_tag), _M_insert_aux(iterator, bool)): Move
5330         out of line...
5331         * include/bits/vector.tcc: ... here.
5332
5333 2007-03-30  Paolo Carlini  <pcarlini@suse.de>
5334
5335         PR c++/26099
5336         * include/bits/cpp_type_traits.h (struct __is_pod, struct __is_empty):
5337         Remove.
5338         * include/bits/valarray_array.h: Adjust.
5339         * include/bits/allocator.h: Likewise.
5340         * include/bits/stl_tree.h: Likewise.
5341
5342 2007-03-30  Paolo Carlini  <pcarlini@suse.de>
5343
5344         PR libstdc++/31401
5345         * include/bits/basic_string.tcc (find(const _CharT*, size_type,
5346         size_type)): Avoid unsigned overflow.
5347         * testsuite/21_strings/basic_string/find/char/4.cc: New.
5348         * testsuite/21_strings/basic_string/find/wchar_t/4.cc: Likewise.
5349
5350 2007-03-27  Paolo Carlini  <pcarlini@suse.de>
5351
5352         * include/bits/fstream.tcc (basic_filebuf<>::underflow):
5353         Don't call codecvt::in at all if _M_ext_next >= _M_ext_end.
5354         * testsuite/27_io/basic_filebuf/underflow/char/3.cc: New.
5355
5356 2007-03-26  Benjamin Kosnik  <bkoz@redhat.com>
5357
5358         * include/c_compatibility/complex.h: Without
5359         __GXX_EXPERIMENTAL_CXX0X__ include_next complex.h.      
5360         * include/c_compatibility/fenv.h: Same.
5361         * include/c_compatibility/inttypes.h: Same.
5362         * include/c_compatibility/stdbool.h: Same.
5363         * include/c_compatibility/stdint.h: Same.
5364         * include/c_compatibility/tgmath.h: Same.
5365
5366         * include/tr1/cinttypes: Use include_next.
5367         * include/tr1/cstdint: Same.
5368         * include/tr1/cstdbool: Same.
5369
5370         * acinclude.m4 (GLIBCXX_ENABLE_C99): Add check for tgmath.h
5371         * configure: Regenerate.
5372         * config.h.in: Same.
5373         
5374 2007-03-25  Paolo Carlini  <pcarlini@suse.de>
5375
5376         * include/tr1/functional: Formatting fixes.
5377
5378 2007-03-23  Paolo Carlini  <pcarlini@suse.de>
5379
5380         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4402.cc:
5381         Likewise use std::numeric_limits<>::max().
5382         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/4402.cc:
5383         Minor tweaks.
5384
5385 2007-03-23  Hans-Peter Nilsson  <hp@axis.com>
5386
5387         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/4402.cc
5388         (test02): Use std::numeric_limits<>::max() to get suitable large
5389         values.
5390
5391 2007-03-22  Benjamin Kosnik  <bkoz@redhat.com>
5392
5393         * testsuite/21_strings/headers/cstdlib/functions_std.cc: Without
5394         C99 support, _GLIBCXX_USE_WCHAR_T not defined, so
5395         dg-require-c-std.
5396         * testsuite/tr1/6_containers/headers/functional/synopsis.cc: Same.
5397         * testsuite/27_io/headers/iostream/synopsis.cc: Same.
5398         * testsuite/27_io/headers/streambuf/types_std.cc: Same.
5399         * testsuite/27_io/headers/sstream/types_std.cc: Same.
5400         * testsuite/27_io/headers/ostream/types_std.cc: Same.
5401         * testsuite/27_io/headers/istream/types_std.cc: Same.
5402         * testsuite/27_io/headers/iostream/types_std.cc: Same.
5403         * testsuite/27_io/headers/fstream/types_std.cc: Same.
5404         * testsuite/21_strings/headers/string/types_std.cc: Same.
5405         * testsuite/21_strings/headers/cwctype/functions_std.cc: Same.
5406         * testsuite/21_strings/headers/cwctype/types_std.cc: Same.
5407         * testsuite/21_strings/headers/cwchar/functions_std.cc: Same.
5408         * testsuite/21_strings/headers/cwchar/types_std.cc: Same.
5409         
5410         * include/Makefile.am (c_compatibility_headers): Add fenv.h.
5411         * include/Makefile.in: Regenerate.
5412         * configure.host: Update comment.
5413
5414         * include/tr1/cfenv: Use include_next.
5415
5416 2007-03-19  Paolo Carlini  <pcarlini@suse.de>
5417
5418         * include/tr1/tuple (get(_Tuple_impl<>&, get(const _Tuple_impl<>&):
5419         Rename as __get_helper.
5420         (get(tuple<>&, get(const tuple<>&)): Forward to the latter.
5421
5422 2007-03-19  Benjamin Kosnik  <bkoz@redhat.com>
5423
5424         * docs/doxygen/user.cfg.in: Update for new includes, macros.
5425         
5426 2007-03-18  Mark Mitchell  <mark@codesourcery.com>
5427
5428         * libsupc++/array_type_info.cc: Likewise.
5429         * libsupc++/bad_cast.cc: Likewise.
5430         * libsupc++/bad_typeid.cc: Likewise.
5431         * libsupc++/class_type_info.cc: Likewise.
5432         * libsupc++/dyncast.cc: Likewise.
5433         * libsupc++/enum_type_info.cc: Likewise.
5434         * libsupc++/function_type_info.cc: Likewise.
5435         * libsupc++/fundamental_type_info.cc: Likewise.
5436         * libsupc++/pbase_type_info.cc: Likewise.
5437         * libsupc++/pmem_type_info.cc: Likewise.
5438         * libsupc++/pointer_type_info.cc: Likewise.
5439         * libsupc++/si_class_type_info.cc: Likewise.
5440         * libsupc++/vmi_class_type_info.cc: Likewise.
5441         * libsupc++/tinfo.h: Move inline type_info functions here.
5442         * libsupc++/tinfo.cc: Separate type_info classes into their own
5443         files.
5444         * libsupc++/tinfo2.cc: Likewise.
5445         * Makefile.am (sources): Mention new files.
5446         * Makefile.in: Regenerated.
5447
5448 2007-03-16  Benjamin Kosnik  <bkoz@redhat.com>
5449
5450         * testsuite/27_io/headers/cinttypes/types_std_c++0x.cc: Use
5451         -std=gnu++0x instead of -std=c++0x for testing.
5452         * testsuite/18_support/headers/cstdint/types_std_c++0x.cc: Same.
5453         * testsuite/26_numerics/headers/random/types_std_c++0x.cc: Same.
5454         * testsuite/26_numerics/headers/cfenv/types_std_c++0x.cc: Same.
5455         * testsuite/26_numerics/headers/cstdlib/types_std_c++0x.cc: Same.
5456         * testsuite/26_numerics/headers/cmath/types_std_c++0x.cc: Same.
5457         * testsuite/17_intro/headers/c++200x/all_multiple_inclusion.cc: Same.
5458         * testsuite/17_intro/headers/c++200x/all.cc: Same.
5459         * testsuite/17_intro/using_namespace_std_tr1_neg.cc: Same.
5460         * testsuite/23_containers/hash/requirements/
5461         explicit_instantiation.cc: Same.
5462         * testsuite/23_containers/unordered_map/requirements/
5463         explicit_instantiation.cc: Same.
5464         * testsuite/23_containers/tuple/requirements/
5465         explicit_instantiation.cc: Same.
5466         * testsuite/23_containers/unordered_multimap/requirements/
5467         explicit_instantiation.cc: Same.
5468         * testsuite/23_containers/unordered_set/requirements/
5469         explicit_instantiation.cc: Same.
5470         * testsuite/23_containers/headers/tuple/types_std_c++0x.cc: Same.
5471         * testsuite/23_containers/unordered_multiset/requirements/
5472         explicit_instantiation.cc: Same.
5473         * testsuite/23_containers/array/requirements/
5474         explicit_instantiation.cc: Same.
5475         * testsuite/20_util/enable_shared_from_this/requirements/
5476         explicit_instantiation.cc: Same.
5477         * testsuite/20_util/headers/functional/types_std_c++0x.cc: Same.
5478         * testsuite/20_util/headers/functional/
5479         using_namespace_std_placeholders.cc: Same.
5480         * testsuite/20_util/headers/type_traits/types_std_c++0x.cc: Same.
5481         * testsuite/20_util/headers/memory/types_std_c++0x.cc: Same.
5482         * testsuite/20_util/shared_ptr/requirements/
5483         explicit_instantiation.cc: Same.
5484         * testsuite/20_util/weak_ptr/requirements/
5485         explicit_instantiation.cc: Same.
5486         
5487 2007-03-16  Benjamin Kosnik  <bkoz@redhat.com>
5488         
5489         * testsuite/lib/dg-options.exp (dg-require-c-std): New.
5490         * testsuite/lib/libstdc++.exp (check_v3_target_c_std): New. Check to
5491         see if _GLIBCXX_USE_C99_MATH is active. 
5492         * testsuite/tr1/5_numerical_facilities/special_functions/
5493         08_cyl_bessel_i/check_nan.cc: Use dg-require-c-std.
5494         * testsuite/tr1/5_numerical_facilities/special_functions/
5495         17_hyperg/check_nan.cc: Same.
5496         * testsuite/tr1/5_numerical_facilities/special_functions/
5497         13_ellint_2/check_nan.cc: Same.
5498         * testsuite/tr1/5_numerical_facilities/special_functions/
5499         20_riemann_zeta/check_nan.cc: Same.
5500         * testsuite/tr1/5_numerical_facilities/special_functions/
5501         01_assoc_laguerre/check_nan.cc: Same.
5502         * testsuite/tr1/5_numerical_facilities/special_functions/
5503         02_assoc_legendre/check_nan.cc: Same.
5504         * testsuite/tr1/5_numerical_facilities/special_functions/
5505         22_sph_legendre/check_nan.cc: Same.
5506         * testsuite/tr1/5_numerical_facilities/special_functions/
5507         10_cyl_bessel_k/check_nan.cc: Same.
5508         * testsuite/tr1/5_numerical_facilities/special_functions/
5509         09_cyl_bessel_j/check_nan.cc: Same.
5510         * testsuite/tr1/5_numerical_facilities/special_functions/
5511         21_sph_bessel/check_nan.cc: Same.
5512         * testsuite/tr1/5_numerical_facilities/special_functions/
5513         07_conf_hyperg/check_nan.cc: Same.
5514         * testsuite/tr1/5_numerical_facilities/special_functions/
5515         16_hermite/check_nan.cc: Same.
5516         * testsuite/tr1/5_numerical_facilities/special_functions/
5517         12_ellint_1/check_nan.cc: Same.
5518         * testsuite/tr1/5_numerical_facilities/special_functions/
5519         05_comp_ellint_2/check_nan.cc: Same.
5520         * testsuite/tr1/5_numerical_facilities/special_functions/
5521         18_laguerre/check_nan.cc: Same.
5522         * testsuite/tr1/5_numerical_facilities/special_functions/
5523         14_ellint_3/check_nan.cc: Same.
5524         * testsuite/tr1/5_numerical_facilities/special_functions/
5525         04_comp_ellint_1/check_nan.cc: Same.
5526         * testsuite/tr1/5_numerical_facilities/special_functions/
5527         06_comp_ellint_3/check_nan.cc: Same.
5528         * testsuite/tr1/5_numerical_facilities/special_functions/
5529         19_legendre/check_nan.cc: Same.
5530         * testsuite/tr1/5_numerical_facilities/special_functions/
5531         03_beta/check_nan.cc: Same.
5532         * testsuite/tr1/5_numerical_facilities/special_functions/
5533         11_cyl_neumann/check_nan.cc: Same.
5534         * testsuite/tr1/5_numerical_facilities/special_functions/
5535         15_expint/check_nan.cc: Same.
5536         * testsuite/tr1/5_numerical_facilities/special_functions/
5537         23_sph_neumann/check_nan.cc: Same.
5538
5539         * include/tr1/poly_laguerre.tcc (__poly_laguerre): Don't check if
5540         unsigned int can be a NaN.
5541
5542 2007-03-16  Edward M. Smith-Rowland  <3dw4rd@verizon.net>
5543
5544         * docs/html/ext/tr1.html : Marked tr1 math special functions done.
5545         * docs/html/faq/index.html : Ditto.
5546         * include/Makefile.in : Added new special function header files.
5547         * include/Makefile.am : Ditto.  
5548         * include/tr1/common.h : Added type promotion routines for three
5549         and four args.
5550
5551         * include/tr1/special_function_util.h: New.
5552         * include/tr1/bessel_function.tcc: New.
5553         * include/tr1/beta_function.tcc: New.
5554         * include/tr1/ell_integral.tcc: New.
5555         * include/tr1/exp_integral.tcc: New.
5556         * include/tr1/gamma.tcc: New.
5557         * include/tr1/hypergeometric.tcc: New.
5558         * include/tr1/legendre_function.tcc: New.
5559         * include/tr1/modified_bessel_func.tcc: New.
5560         * include/tr1/poly_hermite.tcc: New.
5561         * include/tr1/poly_laguerre.tcc: New.
5562         * include/tr1/riemann_zeta.tcc: New.
5563         * include/tr1/cmath : Included tr1 math special functions.
5564         * include/tr1/math.h : Ditto.
5565         * testsuite/tr1/5_numerical_facilities/special_functions/
5566         testcase.h: New.
5567         * testsuite/tr1/5_numerical_facilities/special_functions/
5568         01_assoc_laguerre/compile.cc: New.
5569         * testsuite/tr1/5_numerical_facilities/special_functions/
5570         01_assoc_laguerre/check_nan.cc: New.
5571         * testsuite/tr1/5_numerical_facilities/special_functions/
5572         01_assoc_laguerre/check_value.cc: New.
5573         * testsuite/tr1/5_numerical_facilities/special_functions/
5574         01_assoc_laguerre/compile_2.cc: New.
5575         * testsuite/tr1/5_numerical_facilities/special_functions/
5576         02_assoc_legendre/compile.cc: New.
5577         * testsuite/tr1/5_numerical_facilities/special_functions/
5578         02_assoc_legendre/check_nan.cc: New.
5579         * testsuite/tr1/5_numerical_facilities/special_functions/
5580         02_assoc_legendre/check_value.cc: New.
5581         * testsuite/tr1/5_numerical_facilities/special_functions/
5582         02_assoc_legendre/compile_2.cc: New.
5583         * testsuite/tr1/5_numerical_facilities/special_functions/03_beta/
5584         compile.cc: New.
5585         * testsuite/tr1/5_numerical_facilities/special_functions/03_beta/
5586         check_nan.cc: New.
5587         * testsuite/tr1/5_numerical_facilities/special_functions/03_beta/
5588         check_value.cc: New.
5589         * testsuite/tr1/5_numerical_facilities/special_functions/03_beta/
5590         compile_2.cc: New.
5591         * testsuite/tr1/5_numerical_facilities/special_functions/
5592         04_comp_ellint_1/compile.cc: New.
5593         * testsuite/tr1/5_numerical_facilities/special_functions/
5594         04_comp_ellint_1/check_nan.cc: New.
5595         * testsuite/tr1/5_numerical_facilities/special_functions/
5596         04_comp_ellint_1/check_value.cc: New.
5597         * testsuite/tr1/5_numerical_facilities/special_functions/
5598         04_comp_ellint_1/compile_2.cc: New.
5599         * testsuite/tr1/5_numerical_facilities/special_functions/
5600         05_comp_ellint_2/compile.cc: New.
5601         * testsuite/tr1/5_numerical_facilities/special_functions/
5602         05_comp_ellint_2/check_nan.cc: New.
5603         * testsuite/tr1/5_numerical_facilities/special_functions/
5604         05_comp_ellint_2/check_value.cc: New.
5605         * testsuite/tr1/5_numerical_facilities/special_functions/
5606         05_comp_ellint_2/compile_2.cc: New.
5607         * testsuite/tr1/5_numerical_facilities/special_functions/
5608         06_comp_ellint_3/compile.cc: New.
5609         * testsuite/tr1/5_numerical_facilities/special_functions/
5610         06_comp_ellint_3/check_nan.cc: New.
5611         * testsuite/tr1/5_numerical_facilities/special_functions/
5612         06_comp_ellint_3/check_value.cc: New.
5613         * testsuite/tr1/5_numerical_facilities/special_functions/
5614         06_comp_ellint_3/compile_2.cc: New.
5615         * testsuite/tr1/5_numerical_facilities/special_functions/
5616         07_conf_hyperg/compile.cc: New.
5617         * testsuite/tr1/5_numerical_facilities/special_functions/
5618         07_conf_hyperg/check_nan.cc: New.
5619         * testsuite/tr1/5_numerical_facilities/special_functions/
5620         07_conf_hyperg/check_value.cc: New.
5621         * testsuite/tr1/5_numerical_facilities/special_functions/
5622         07_conf_hyperg/compile_2.cc: New.
5623         * testsuite/tr1/5_numerical_facilities/special_functions/
5624         08_cyl_bessel_i/compile.cc: New.
5625         * testsuite/tr1/5_numerical_facilities/special_functions/
5626         08_cyl_bessel_i/check_nan.cc: New.
5627         * testsuite/tr1/5_numerical_facilities/special_functions/
5628         08_cyl_bessel_i/check_value.cc: New.
5629         * testsuite/tr1/5_numerical_facilities/special_functions/
5630         08_cyl_bessel_i/compile_2.cc: New.
5631         * testsuite/tr1/5_numerical_facilities/special_functions/
5632         09_cyl_bessel_j/compile.cc: New.
5633         * testsuite/tr1/5_numerical_facilities/special_functions/
5634         09_cyl_bessel_j/check_nan.cc: New.
5635         * testsuite/tr1/5_numerical_facilities/special_functions/
5636         09_cyl_bessel_j/check_value.cc: New.
5637         * testsuite/tr1/5_numerical_facilities/special_functions/
5638         09_cyl_bessel_j/compile_2.cc: New.
5639         * testsuite/tr1/5_numerical_facilities/special_functions/
5640         10_cyl_bessel_k/compile.cc: New.
5641         * testsuite/tr1/5_numerical_facilities/special_functions/
5642         10_cyl_bessel_k/check_nan.cc: New.
5643         * testsuite/tr1/5_numerical_facilities/special_functions/
5644         10_cyl_bessel_k/check_value.cc: New.
5645         * testsuite/tr1/5_numerical_facilities/special_functions/
5646         10_cyl_bessel_k/compile_2.cc: New.
5647         * testsuite/tr1/5_numerical_facilities/special_functions/
5648         11_cyl_neumann/compile.cc: New.
5649         * testsuite/tr1/5_numerical_facilities/special_functions/
5650         11_cyl_neumann/check_nan.cc: New.
5651         * testsuite/tr1/5_numerical_facilities/special_functions/
5652         11_cyl_neumann/check_value.cc: New.
5653         * testsuite/tr1/5_numerical_facilities/special_functions/
5654         11_cyl_neumann/compile_2.cc: New.
5655         * testsuite/tr1/5_numerical_facilities/special_functions/12_ellint_1/
5656         compile.cc: New.
5657         * testsuite/tr1/5_numerical_facilities/special_functions/12_ellint_1/
5658         check_nan.cc: New.
5659         * testsuite/tr1/5_numerical_facilities/special_functions/12_ellint_1/
5660         check_value.cc: New.
5661         * testsuite/tr1/5_numerical_facilities/special_functions/12_ellint_1/
5662         compile_2.cc: New.
5663         * testsuite/tr1/5_numerical_facilities/special_functions/13_ellint_2/
5664         compile.cc: New.
5665         * testsuite/tr1/5_numerical_facilities/special_functions/13_ellint_2/
5666         check_nan.cc: New.
5667         * testsuite/tr1/5_numerical_facilities/special_functions/13_ellint_2/
5668         check_value.cc: New.
5669         * testsuite/tr1/5_numerical_facilities/special_functions/13_ellint_2/
5670         compile_2.cc: New.
5671         * testsuite/tr1/5_numerical_facilities/special_functions/14_ellint_3/
5672         compile.cc: New.
5673         * testsuite/tr1/5_numerical_facilities/special_functions/14_ellint_3/
5674         check_nan.cc: New.
5675         * testsuite/tr1/5_numerical_facilities/special_functions/14_ellint_3/
5676         check_value.cc: New.
5677         * testsuite/tr1/5_numerical_facilities/special_functions/14_ellint_3/
5678         compile_2.cc: New.
5679         * testsuite/tr1/5_numerical_facilities/special_functions/15_expint/
5680         check_value_neg.cc: New.
5681         * testsuite/tr1/5_numerical_facilities/special_functions/15_expint/
5682         compile.cc: New.
5683         * testsuite/tr1/5_numerical_facilities/special_functions/15_expint/
5684         check_nan.cc: New.
5685         * testsuite/tr1/5_numerical_facilities/special_functions/15_expint/
5686         compile_2.cc: New.
5687         * testsuite/tr1/5_numerical_facilities/special_functions/15_expint/
5688         check_value_pos.cc: New.
5689         * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/
5690         compile.cc: New.
5691         * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/
5692         check_nan.cc: New.
5693         * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/
5694         compile_2.cc: New.
5695         * testsuite/tr1/5_numerical_facilities/special_functions/17_hyperg/
5696         compile.cc: New.
5697         * testsuite/tr1/5_numerical_facilities/special_functions/17_hyperg/
5698         check_nan.cc: New.
5699         * testsuite/tr1/5_numerical_facilities/special_functions/17_hyperg/
5700         check_value.cc: New.
5701         * testsuite/tr1/5_numerical_facilities/special_functions/17_hyperg/
5702         compile_2.cc: New.
5703         * testsuite/tr1/5_numerical_facilities/special_functions/18_laguerre/
5704         compile.cc: New.
5705         * testsuite/tr1/5_numerical_facilities/special_functions/18_laguerre/
5706         check_nan.cc: New.
5707         * testsuite/tr1/5_numerical_facilities/special_functions/18_laguerre/
5708         check_value.cc: New.
5709         * testsuite/tr1/5_numerical_facilities/special_functions/18_laguerre/
5710         compile_2.cc: New.
5711         * testsuite/tr1/5_numerical_facilities/special_functions/19_legendre/
5712         compile.cc: New.
5713         * testsuite/tr1/5_numerical_facilities/special_functions/19_legendre/
5714         check_nan.cc: New.
5715         * testsuite/tr1/5_numerical_facilities/special_functions/19_legendre/
5716         check_value.cc: New.
5717         * testsuite/tr1/5_numerical_facilities/special_functions/19_legendre/
5718         compile_2.cc: New.
5719         * testsuite/tr1/5_numerical_facilities/special_functions/
5720         20_riemann_zeta/check_value_neg.cc: New.
5721         * testsuite/tr1/5_numerical_facilities/special_functions/
5722         20_riemann_zeta/compile.cc: New.
5723         * testsuite/tr1/5_numerical_facilities/special_functions/
5724         20_riemann_zeta/check_nan.cc: New.
5725         * testsuite/tr1/5_numerical_facilities/special_functions/
5726         20_riemann_zeta/compile_2.cc: New.
5727         * testsuite/tr1/5_numerical_facilities/special_functions/
5728         20_riemann_zeta/check_value_pos.cc: New.
5729         * testsuite/tr1/5_numerical_facilities/special_functions/
5730         21_sph_bessel/compile.cc: New.
5731         * testsuite/tr1/5_numerical_facilities/special_functions/
5732         21_sph_bessel/check_nan.cc: New.
5733         * testsuite/tr1/5_numerical_facilities/special_functions/
5734         21_sph_bessel/check_value.cc: New.
5735         * testsuite/tr1/5_numerical_facilities/special_functions/
5736         21_sph_bessel/compile_2.cc: New.
5737         * testsuite/tr1/5_numerical_facilities/special_functions/
5738         22_sph_legendre/compile.cc: New.
5739         * testsuite/tr1/5_numerical_facilities/special_functions/
5740         22_sph_legendre/check_nan.cc: New.
5741         * testsuite/tr1/5_numerical_facilities/special_functions/
5742         22_sph_legendre/check_value.cc: New.
5743         * testsuite/tr1/5_numerical_facilities/special_functions/
5744         22_sph_legendre/compile_2.cc: New.
5745         * testsuite/tr1/5_numerical_facilities/special_functions/
5746         23_sph_neumann/compile.cc: New.
5747         * testsuite/tr1/5_numerical_facilities/special_functions/
5748         23_sph_neumann/check_nan.cc: New.
5749         * testsuite/tr1/5_numerical_facilities/special_functions/
5750         23_sph_neumann/check_value.cc: New.
5751         * testsuite/tr1/5_numerical_facilities/special_functions/
5752         23_sph_neumann/ compile_2.cc: New.
5753         
5754 2007-03-15  Hans-Peter Nilsson  <hp@axis.com>
5755
5756         * testsuite/lib/libstdc++.exp (v3-build_support) <ar>: If it
5757         exists, use env(AR_FOR_TARGET).  Log the command.
5758         <ranlib>: Similar.
5759
5760 2007-03-14  Nathan Sidwell  <nathan@codesourcery.com>
5761             Joseph Myers  <joseph@codesourcery.com>::
5762
5763         * testsuite/lib/libstdc++.exp (check_v3_target_fileio,
5764         check_v3_target_time): New.
5765         * testsuite/lib/dg-options.exp (dg-require-fileio,
5766         dg-require-time): New.
5767         * testsuite/ext/stdio_sync_filebuf/char/12048-1.cc: Use it.
5768         * testsuite/ext/stdio_sync_filebuf/char/12048-2.cc: Use it.
5769         * testsuite/ext/stdio_sync_filebuf/char/12048-3.cc: Use it.
5770         * testsuite/ext/stdio_sync_filebuf/char/12048-4.cc: Use it.
5771         * testsuite/ext/stdio_sync_filebuf/char/1.cc: Use it.
5772         * testsuite/ext/stdio_filebuf/char/2.cc: Use it.
5773         * testsuite/ext/stdio_filebuf/char/10063-1.cc: Use it.
5774         * testsuite/ext/stdio_filebuf/char/10063-2.cc: Use it.
5775         * testsuite/ext/stdio_filebuf/char/10063-3.cc: Use it.
5776         * testsuite/22_locale/time_put/put/char/12439_1.cc: Use it.
5777         * testsuite/22_locale/time_put/put/char/12439_3.cc: Use it.
5778         * testsuite/27_io/basic_ofstream/open/char/1.cc: Use it.
5779         * testsuite/27_io/basic_ofstream/cons/char/2.cc: Use it.
5780         * testsuite/27_io/objects/char/12048-2.cc: Use it.
5781         * testsuite/27_io/objects/char/12048-4.cc: Use it.
5782         * testsuite/27_io/objects/char/12048-1.cc: Use it.
5783         * testsuite/27_io/objects/char/12048-3.cc: Use it.
5784         * testsuite/27_io/objects/char/10.cc: Use it.
5785         * testsuite/27_io/objects/char/12048-5.cc: Use it.
5786         * testsuite/27_io/basic_istream/get/char/2.cc: Use it.
5787         * testsuite/27_io/basic_istream/ignore/char/2.cc: Use it.
5788         * testsuite/27_io/basic_istream/ignore/char/3.cc: Use it.
5789         * testsuite/27_io/basic_istream/getline/char/5.cc: Use it.
5790         * testsuite/27_io/basic_istream/seekg/char/sstream.cc: Use it.
5791         * testsuite/27_io/basic_istream/seekg/char/fstream.cc: Use it.
5792         * testsuite/27_io/basic_istream/readsome/char/6746-2.cc: Use it.
5793         * testsuite/27_io/basic_istream/extractors_other/char/2.cc: Use it.
5794         * testsuite/27_io/basic_istream/tellg/char/sstream.cc: Use it.
5795         * testsuite/27_io/basic_istream/tellg/char/1.cc: Use it.
5796         * testsuite/27_io/basic_istream/tellg/char/fstream.cc: Use it.
5797         * testsuite/27_io/basic_istream/extractors_character/char/4.cc: Use it.
5798         * testsuite/27_io/basic_ostream/inserters_other/char/1.cc: Use it.
5799         * testsuite/27_io/basic_ostream/tellp/char/1.cc: Use it.
5800         * testsuite/27_io/basic_ostream/seekp/char/2346-fstream.cc: Use it.
5801         * testsuite/27_io/basic_ifstream/open/char/1.cc: Use it.
5802         * testsuite/27_io/basic_ifstream/cons/char/1.cc: Use it.
5803         * testsuite/27_io/basic_filebuf/sputbackc/char/1-in.cc: Use it.
5804         * testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: Use it.
5805         * testsuite/27_io/basic_filebuf/sputbackc/char/2-in.cc: Use it.
5806         * testsuite/27_io/basic_filebuf/sputbackc/char/2-io.cc: Use it.
5807         * testsuite/27_io/basic_filebuf/sgetn/char/3.cc: Use it.
5808         * testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: Use it.
5809         * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Use it.
5810         * testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: Use it.
5811         * testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: Use it.
5812         * testsuite/27_io/basic_filebuf/seekoff/12790-1.cc: Use it.
5813         * testsuite/27_io/basic_filebuf/seekoff/12790-2.cc: Use it.
5814         * testsuite/27_io/basic_filebuf/seekoff/12790-3.cc: Use it.
5815         * testsuite/27_io/basic_filebuf/seekoff/12790-4.cc: Use it.
5816         * testsuite/27_io/basic_filebuf/seekoff/char/1-in.cc: Use it.
5817         * testsuite/27_io/basic_filebuf/seekoff/char/1-io.cc: Use it.
5818         * testsuite/27_io/basic_filebuf/seekoff/char/1-out.cc: Use it.
5819         * testsuite/27_io/basic_filebuf/seekoff/char/2-in.cc: Use it.
5820         * testsuite/27_io/basic_filebuf/seekoff/char/2-io.cc: Use it.
5821         * testsuite/27_io/basic_filebuf/seekoff/char/2-out.cc: Use it.
5822         * testsuite/27_io/basic_filebuf/seekoff/char/3-in.cc: Use it.
5823         * testsuite/27_io/basic_filebuf/seekoff/char/3-io.cc: Use it.
5824         * testsuite/27_io/basic_filebuf/seekoff/char/3-out.cc: Use it.
5825         * testsuite/27_io/basic_filebuf/seekoff/char/11543.cc: Use it.
5826         * testsuite/27_io/basic_filebuf/seekoff/char/12790-1.cc: Use it.
5827         * testsuite/27_io/basic_filebuf/seekoff/char/12790-2.cc: Use it.
5828         * testsuite/27_io/basic_filebuf/seekoff/char/12790-3.cc: Use it.
5829         * testsuite/27_io/basic_filebuf/seekoff/char/12790-4.cc: Use it.
5830         * testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Use it.
5831         * testsuite/27_io/basic_filebuf/in_avail/char/9701-3.cc: Use it.
5832         * testsuite/27_io/basic_filebuf/setbuf/char/1.cc: Use it.
5833         * testsuite/27_io/basic_filebuf/setbuf/char/2.cc: Use it.
5834         * testsuite/27_io/basic_filebuf/setbuf/char/3.cc: Use it.
5835         * testsuite/27_io/basic_filebuf/setbuf/char/12875-1.cc: Use it.
5836         * testsuite/27_io/basic_filebuf/setbuf/char/12875-2.cc: Use it.
5837         * testsuite/27_io/basic_filebuf/sbumpc/char/1-in.cc: Use it.
5838         * testsuite/27_io/basic_filebuf/sbumpc/char/1-io.cc: Use it.
5839         * testsuite/27_io/basic_filebuf/sbumpc/char/2-in.cc: Use it.
5840         * testsuite/27_io/basic_filebuf/sbumpc/char/2-io.cc: Use it.
5841         * testsuite/27_io/basic_filebuf/sbumpc/char/9825.cc: Use it.
5842         * testsuite/27_io/basic_filebuf/is_open/char/1.cc: Use it.
5843         * testsuite/27_io/basic_filebuf/sputc/char/1-io.cc: Use it.
5844         * testsuite/27_io/basic_filebuf/sputc/char/1-out.cc: Use it.
5845         * testsuite/27_io/basic_filebuf/sputc/char/2-io.cc: Use it.
5846         * testsuite/27_io/basic_filebuf/sputc/char/2-out.cc: Use it.
5847         * testsuite/27_io/basic_filebuf/open/12790-1.cc: Use it.
5848         * testsuite/27_io/basic_filebuf/open/char/1.cc: Use it.
5849         * testsuite/27_io/basic_filebuf/open/char/2.cc: Use it.
5850         * testsuite/27_io/basic_filebuf/open/char/3.cc: Use it.
5851         * testsuite/27_io/basic_filebuf/overflow/char/2-unbuf.cc: Use it.
5852         * testsuite/27_io/basic_filebuf/overflow/char/2.cc: Use it.
5853         * testsuite/27_io/basic_filebuf/overflow/char/9988.cc: Use it.
5854         * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Use it.
5855         * testsuite/27_io/basic_filebuf/overflow/char/9169.cc: Use it.
5856         * testsuite/27_io/basic_filebuf/snextc/char/1-in.cc: Use it.
5857         * testsuite/27_io/basic_filebuf/snextc/char/1-io.cc: Use it.
5858         * testsuite/27_io/basic_filebuf/snextc/char/2-in.cc: Use it.
5859         * testsuite/27_io/basic_filebuf/snextc/char/2-io.cc: Use it.
5860         * testsuite/27_io/basic_filebuf/sgetc/char/1-in.cc: Use it.
5861         * testsuite/27_io/basic_filebuf/sgetc/char/1-io.cc: Use it.
5862         * testsuite/27_io/basic_filebuf/sgetc/char/1-out.cc: Use it.
5863         * testsuite/27_io/basic_filebuf/sgetc/char/2-in.cc: Use it.
5864         * testsuite/27_io/basic_filebuf/sgetc/char/2-io.cc: Use it.
5865         * testsuite/27_io/basic_filebuf/close/12790-1.cc: Use it.
5866         * testsuite/27_io/basic_filebuf/close/char/1.cc: Use it.
5867         * testsuite/27_io/basic_filebuf/close/char/12790-1.cc: Use it.
5868         * testsuite/27_io/basic_filebuf/close/char/12790-2.cc: Use it.
5869         * testsuite/27_io/basic_filebuf/close/char/2.cc: Use it.
5870         * testsuite/27_io/basic_filebuf/close/char/12790-3.cc: Use it.
5871         * testsuite/27_io/basic_filebuf/close/char/12790-4.cc: Use it.
5872         * testsuite/27_io/basic_filebuf/close/char/4.cc: Use it.
5873         * testsuite/27_io/basic_filebuf/underflow/10096.cc: Use it.
5874         * testsuite/27_io/basic_filebuf/underflow/char/2.cc: Use it.
5875         * testsuite/27_io/basic_filebuf/sungetc/char/1-in.cc: Use it.
5876         * testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc: Use it.
5877         * testsuite/27_io/basic_filebuf/sungetc/char/2-in.cc: Use it.
5878         * testsuite/27_io/basic_filebuf/sungetc/char/2-io.cc: Use it.
5879         * testsuite/27_io/basic_filebuf/seekpos/12790-1.cc: Use it.
5880         * testsuite/27_io/basic_filebuf/seekpos/12790-2.cc: Use it.
5881         * testsuite/27_io/basic_filebuf/seekpos/12790-3.cc: Use it.
5882         * testsuite/27_io/basic_filebuf/seekpos/char/12790-1.cc: Use it.
5883         * testsuite/27_io/basic_filebuf/seekpos/char/12790-2.cc: Use it.
5884         * testsuite/27_io/basic_filebuf/seekpos/char/12790-4.cc: Use it.
5885         * testsuite/27_io/basic_filebuf/seekpos/char/1-in.cc: Use it.
5886         * testsuite/27_io/basic_filebuf/seekpos/char/1-io.cc: Use it.
5887         * testsuite/27_io/basic_filebuf/seekpos/char/1-out.cc: Use it.
5888         * testsuite/27_io/basic_filebuf/seekpos/char/2-in.cc: Use it.
5889         * testsuite/27_io/basic_filebuf/seekpos/char/2-io.cc: Use it.
5890         * testsuite/27_io/basic_filebuf/seekpos/char/2-out.cc: Use it.
5891         * testsuite/27_io/basic_filebuf/seekpos/char/3-in.cc: Use it.
5892         * testsuite/27_io/basic_filebuf/seekpos/char/3-io.cc: Use it.
5893         * testsuite/27_io/basic_filebuf/seekpos/char/3-out.cc: Use it.
5894         * testsuite/27_io/basic_filebuf/sputn/char/1-io.cc: Use it.
5895         * testsuite/27_io/basic_filebuf/sputn/char/1-out.cc: Use it.
5896         * testsuite/27_io/basic_filebuf/sputn/char/2-io.cc: Use it.
5897         * testsuite/27_io/basic_filebuf/sputn/char/2-out.cc: Use it.
5898         * testsuite/27_io/basic_filebuf/sputn/char/9339.cc: Use it.
5899         * testsuite/27_io/basic_filebuf/pbackfail/char/9761.cc: Use it.
5900         * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Use it.
5901         * testsuite/21_strings/basic_string/inserters_extractors/
5902         char/10.cc: Use it.
5903         * testsuite/21_strings/basic_string/inserters_extractors/
5904         char/11.cc: Use it.
5905         * testsuite/21_strings/basic_string/inserters_extractors/
5906         char/5.cc: Use it.
5907
5908 2007-03-13  Paolo Carlini  <pcarlini@suse.de>
5909
5910         * include/tr1/tuple: Only include <utility> for std::pair, and
5911         forward declare reference_wrapper; formatting fixes.
5912         * include/tr1/ref_fwd.h: Remove.
5913         * include/tr1/tuple_defs.h: Remove, unused.
5914         * include/Makefile.am: Update.
5915         * include/Makefile.in: Regenerate.
5916         * testsuite/tr1/6_containers/tuple/creation_functions/make_tuple.cc:
5917         Include <tr1/functional> too.
5918
5919         * include/tr1/tuple: Define tuple_size<tuple<_Elements...> >::value.
5920
5921 2007-03-12  Stephen M. Webb  <stephen.webb@bregmasoft.com>
5922
5923         * include/tr1/regex: Add "boilerplate" implementations.
5924         * testsuite/tr1/7_regular_expressions/regex_traits/wchar_t/
5925         translate_nocase.cc: New.
5926         * testsuite/tr1/7_regular_expressions/regex_traits/wchar_t/
5927         ctor.cc: Likewise.
5928         * testsuite/tr1/7_regular_expressions/regex_traits/char/
5929         translate_nocase.cc: Likewise.
5930         * testsuite/tr1/7_regular_expressions/regex_traits/char/
5931         ctor.cc: Likewise.
5932         * testsuite/tr1/7_regular_expressions/regex/cons/char/
5933         c_string_ecma.cc: Likewise.
5934         * testsuite/tr1/7_regular_expressions/regex/cons/char/
5935         default.cc: Likewise.
5936         * testsuite/tr1/7_regular_expressions/regex/cons/char/
5937         c_string_grep.cc: Likewise.
5938         * testsuite/tr1/7_regular_expressions/regex/cons/char/
5939         c_string_extended.cc: Likewise.
5940         * testsuite/tr1/7_regular_expressions/regex/cons/char/
5941         c_string_basic.cc: Likewise.
5942         * testsuite/tr1/7_regular_expressions/regex/cons/char/
5943         c_string_awk.cc: Likewise.
5944         * testsuite/tr1/7_regular_expressions/regex/cons/char/
5945         c_string_egrep.cc: Likewise.
5946         * testsuite/tr1/7_regular_expressions/basic_regex/assign/wchar_t/
5947         range.cc: Likewise.
5948         * testsuite/tr1/7_regular_expressions/basic_regex/assign/wchar_t/
5949         string_op.cc: Likewise.
5950         * testsuite/tr1/7_regular_expressions/basic_regex/assign/wchar_t/
5951         string.cc: Likewise.
5952         * testsuite/tr1/7_regular_expressions/basic_regex/assign/wchar_t/
5953         pstring.cc: Likewise.
5954         * testsuite/tr1/7_regular_expressions/basic_regex/assign/wchar_t/
5955         cstring_op.cc: Likewise.
5956         * testsuite/tr1/7_regular_expressions/basic_regex/assign/wchar_t/
5957         cstring.cc: Likewise.
5958         * testsuite/tr1/7_regular_expressions/basic_regex/assign/char/
5959         range.cc: Likewise.
5960         * testsuite/tr1/7_regular_expressions/basic_regex/assign/char/
5961         string_op.cc: Likewise.
5962         * testsuite/tr1/7_regular_expressions/basic_regex/assign/char/
5963         string.cc: Likewise.
5964         * testsuite/tr1/7_regular_expressions/basic_regex/assign/char/
5965         pstring.cc: Likewise.
5966         * testsuite/tr1/7_regular_expressions/basic_regex/assign/char/
5967         cstring_op.cc: Likewise.
5968         * testsuite/tr1/7_regular_expressions/basic_regex/assign/char/
5969         cstring.cc: Likewise.
5970         * testsuite/tr1/7_regular_expressions/basic_regex/ctors/wchar_t/
5971         range.cc: Likewise.
5972         * testsuite/tr1/7_regular_expressions/basic_regex/ctors/wchar_t/
5973         default.cc: Likewise.
5974         * testsuite/tr1/7_regular_expressions/basic_regex/ctors/wchar_t/
5975         string.cc: Likewise.
5976         * testsuite/tr1/7_regular_expressions/basic_regex/ctors/wchar_t/
5977         pstring.cc: Likewise.
5978         * testsuite/tr1/7_regular_expressions/basic_regex/ctors/wchar_t/
5979         cstring.cc: Likewise.
5980         * testsuite/tr1/7_regular_expressions/basic_regex/ctors/char/
5981         range.cc: Likewise.
5982         * testsuite/tr1/7_regular_expressions/basic_regex/ctors/char/
5983         default.cc: Likewise.
5984         * testsuite/tr1/7_regular_expressions/basic_regex/ctors/char/
5985         string.cc: Likewise.
5986         * testsuite/tr1/7_regular_expressions/basic_regex/ctors/char/
5987         pstring.cc: Likewise.
5988         * testsuite/tr1/7_regular_expressions/basic_regex/ctors/char/
5989         cstring.cc: Likewise.
5990         * testsuite/tr1/7_regular_expressions/match_results/ctors/char/
5991         default.cc: Likewise.
5992
5993 2007-03-12  Paolo Carlini  <pcarlini@suse.de>
5994
5995         * include/bits/stl_algo.h (swap_ranges): Move...
5996         * include/bits/stl_algobase.h: ... here.
5997         * include/tr1/array: Trim includes, stl_algobase.h is enough.
5998
5999 2007-03-11  Paolo Carlini  <pcarlini@suse.de>
6000
6001         PR libstdc++/28080 (final)
6002         * include/std/iosfwd: Do not include <bits/c++io.h>.
6003         * config/io/basic_file_stdio.h: Do it here.
6004         * include/ext/stdio_sync_filebuf.h: Likewise.
6005         * include/ext/rope: Include <bits/gthr.h> unconditionally.
6006         * include/std/fstream: Do not include <bits/gthr.h>.
6007         
6008         * include/std/ios: Do not include <cstdio>.
6009         * include/bits/ios_base.h: Do it here.
6010         * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust dg-error
6011         line numbers.
6012         * testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
6013
6014 2007-03-10  Paolo Carlini  <pcarlini@suse.de>
6015
6016         PR libstdc++/28080 (partial)
6017         * include/std/memory: Move C++03 implementation...
6018         * include/bits/stl_memory.h: ... here, new.
6019         * include/Makefile.am: Add.
6020         * include/bits/stl_tempbuf.h: Include the latter instead.
6021         * include/tr1/hashtable: Include allocator.h instead of
6022         the whole <memory>.
6023         * include/tr1/hashtable_policy.h: Include stl_function.h
6024         instead of <functional>.
6025         * include/Makefile.in: Regenerate.
6026         * testsuite/20_util/auto_ptr/assign_neg.cc: Adjust dg-error
6027         line numbers.
6028
6029 2007-03-09  Douglas Gregor  <doug.gregor@gmail.com>
6030
6031         * include/Makefile.in: Regenerate.
6032         * include/tr1/mu_iterate.h: Remove.
6033         * include/tr1/tuple (_Tuple_impl): New.
6034         (tuple): Make variadic, re-implement as shell over _Tuple_impl.
6035         (0-element tuple): Basis case.
6036         (2-element tuple): Handle pair methods.
6037         (__get_helper): Remove.
6038         (tuple_element): Reimplement with variadic templates.
6039         (tuple_size): Ditto.
6040         (get): Ditto.
6041         (operator==): Use variadic templates in the signature.
6042         (operator<): Ditto.
6043         (operator!=): Ditto.
6044         (operator>): Ditto.
6045         (operator<=): Ditto.
6046         (operator>=): Ditto.
6047         (__stripped_tuple_type): Remove; we've inlined its behavior.
6048         (make_tuple): Reimplement with variadic templates.
6049         (tie): Ditto.
6050         * include/tr1/tuple_iterate.h: Remove.
6051         * include/tr1/bind_repeat.h: Remove.
6052         * include/tr1/ref_wrap_iterate.h: Remove.
6053         * include/tr1/bind_iterate.h: Remove.
6054         * include/tr1/functional (_Weak_result_type): Add variadic
6055         partial specializations.
6056         (result_of): Ditto.
6057         (__invoke): Reimplement using variadic templates.
6058         (reference_wrapper): Reimplement operator() with variadic
6059         templates.
6060         (_Maybe_unary_or_binary_function): New.
6061         (_Mem_fn): Implement for member function pointers using variadic
6062         templates.
6063         (placeholders): Define 30 placeholders.
6064         (_Index_tuple): New.
6065         (_Build_index_tuple): New.
6066         (_No_tuple_element): New.
6067         (_Safe_tuple_element_impl): New.
6068         (_Safe_tuple_element): New.
6069         (_Mu): Reimplement with variadic templates, use
6070         _Safe_tuple_element instead of tuple_element.
6071         (_Bind): Reimplement with variadic templates and tuples.
6072         (_Bind_result): Ditto.
6073         (bind): Reimplement with variadic templates.
6074         (_Function_handler): Ditto.
6075         (function): Ditto.
6076         * include/tr1/functional_iterate.h: Remove.
6077         * include/tr1/repeat.h: Remove.
6078         * include/Makefile.am: Don't install removed headers.
6079         
6080 2007-03-06  Paolo Carlini  <pcarlini@suse.de>
6081
6082         PR libstdc++/28080 (partial)
6083         * include/bits/stl_algobase.h: Do not include <cstdlib>.
6084         * src/localename.cc: Do it here.
6085         * src/ctype.cc: Likewise.
6086         * include/ext/pb_ds/detail/map_debug_base.hpp: Likewise.
6087         * include/ext/pb_ds/exception.hpp: Likewise.
6088         * include/ext/pb_ds/list_update_policy.hpp: Likewise.
6089         * include/bits/stl_algo.h: Likewise.
6090         * include/tr1/random: Likewise.
6091         * testsuite/util/testsuite_hooks.cc: Likewise.
6092         * testsuite/util/testsuite_abi_check.cc: Likewise.
6093         * testsuite/util/testsuite_abi.cc: Likewise.
6094         * testsuite/util/performance/assoc/timing/
6095         tree_order_statistics_test.hpp: Likewise.
6096         * config/locale/darwin/ctype_members.cc: Likewise.
6097         * config/locale/gnu/c++locale_internal.h: Likewise.
6098         * config/locale/generic/ctype_members.cc: Likewise.
6099         * config/locale/generic/time_members.cc: Likewise.
6100
6101         * include/ext/pb_ds/detail/resize_policy/
6102         hash_load_check_resize_trigger_imp.hpp: Qualify abort.
6103         * testsuite/util/performance/assoc/timing/
6104         multimap_find_test.hpp: Likewise.
6105         * include/std/valarray: Do include <cstdlib>.
6106         * include/tr1/hashtable: Likewise.
6107
6108 2007-03-05  Joseph Myers  <joseph@codesourcery.com>
6109
6110         PR libstdc++/30675
6111         * testsuite/lib/libstdc++.exp (v3-build_support): Use [transform
6112         "ar"] and [transform "ranlib"].
6113
6114 2007-03-04  Paolo Carlini  <pcarlini@suse.de>
6115
6116         * testsuite/27_io/basic_ostream/inserters_arithmetic/
6117         char/31031.cc: Include the right header.
6118
6119 2007-03-04  Benjamin Kosnik  <bkoz@redhat.com>
6120
6121         * acinclude.m4 (GLIBCXX_ENABLE_CHEADERS): Add c_global.
6122         * configure.host (c_model): Set default to c_global.
6123         * configure: Regenerate.
6124         * include/Makefile.am (c_compatibility_headers_extra): Make
6125         conditional on GLIBCXX_C_HEADERS_COMPATIBILITY.
6126         (c_base_headers_extra): Make conditional on GLIBCXX_C_HEADERS_EXTRA.
6127         (c_compatibility_headers): Make conditional on c/c_std/c_global.
6128         * include/Makefile.in: Regenerate.
6129         * docs/html/configopts.html: Add c_global information to
6130         --enable-cheaders. Eventually, "c_std" should mean "C" includes
6131         that are in namespace std, with optional C++ "C" compatibility
6132         includes to inject into global scope. And "c_global" should mean
6133         "C" includes that are in the global namespace, with C++ includes
6134         injecting into namespace std and no C++ "C" compatibility
6135         includes.
6136  
6137 2007-03-04  Benjamin Kosnik  <bkoz@redhat.com>
6138
6139         * include/bits/c++config: Add _GLIBCXX_NAMEPACE_C.
6140         Add _GLIBCXX_NAMESPACE_ASSOCIATION_CXX200x.
6141         Add _GLIBCXX_TR1 as namespace macro.
6142         Add namespace associations for std::__cxx200x conditionally.
6143
6144         * include/c_compatibility/assert.h: Correct doxygen markup,
6145         conditionalize the global injections on _GLIBCXX_NAMESPACE_C.
6146         * include/c_compatibility/ctype.h: Same.
6147         * include/c_compatibility/errno.h: Same.
6148         * include/c_compatibility/float.h: Same.
6149         * include/c_compatibility/iso646.h: Same.
6150         * include/c_compatibility/limits.h: Same.
6151         * include/c_compatibility/locale.h: Same.
6152         * include/c_compatibility/math.h: Same.
6153         * include/c_compatibility/setjmp.h: Same.
6154         * include/c_compatibility/signal.h: Same.
6155         * include/c_compatibility/stdarg.h: Same.
6156         * include/c_compatibility/stddef.h: Same.
6157         * include/c_compatibility/stdio.h: Same.
6158         * include/c_compatibility/stdlib.h: Same.
6159         * include/c_compatibility/string.h: Same.
6160         * include/c_compatibility/time.h: Same.
6161         * include/c_compatibility/wchar.h: Same.
6162         * include/c_compatibility/wctype.h: Same.
6163
6164         * include/c_compatibility/complex.h: Add.
6165         * include/c_compatibility/fenv.h: Same.
6166         * include/c_compatibility/inttypes.h: Same.
6167         * include/c_compatibility/stdbool.h: Same.
6168         * include/c_compatibility/stdint.h: Same.
6169         * include/c_compatibility/tgmath.h: Same.
6170
6171         * include/c_global/cassert: Add, use include_next, use C++0x features
6172         if -std=c++0x.
6173         * include/c_global/cctype: Same.
6174         * include/c_global/cerrno: Same.
6175         * include/c_global/cfloat: Same.
6176         * include/c_global/ciso646: Same.
6177         * include/c_global/climits: Same.
6178         * include/c_global/clocale: Same.
6179         * include/c_global/cmath: Same.
6180         * include/c_global/cmath.tcc: Same.
6181         * include/c_global/csetjmp: Same.
6182         * include/c_global/csignal: Same.
6183         * include/c_global/cstdarg: Same.
6184         * include/c_global/cstddef: Same.
6185         * include/c_global/cstdio: Same.
6186         * include/c_global/cstdlib: Same.
6187         * include/c_global/cstring: Same.
6188         * include/c_global/ctime: Same.
6189         * include/c_global/cwchar: Same.
6190         * include/c_global/cwctype: Same.
6191
6192         * include/c_global/ccomplex: Add.
6193         * include/c_global/cfenv: Add.
6194         * include/c_global/cinttypes: Add. 
6195         * include/c_global/cstdbool: Add.
6196         * include/c_global/cstdint: Add.
6197         * include/c_global/ctgmath: Add.
6198
6199         * include/std/algorithm: Use C++0x features if -std=c++0x.      
6200         * include/std/bitset: Same.
6201         * include/std/complex: Same.
6202         * include/std/deque: Same.
6203         * include/std/fstream: Same.
6204         * include/std/functional: Same.
6205         * include/std/iomanip: Same.
6206         * include/std/ios: Same.
6207         * include/std/iosfwd: Same.
6208         * include/std/iostream: Same.
6209         * include/std/istream: Same.
6210         * include/std/iterator: Same.
6211         * include/std/limits: Same.
6212         * include/std/list: Same.
6213         * include/std/locale: Same.
6214         * include/std/map: Same.
6215         * include/std/memory: Same.
6216         * include/std/numeric: Same.
6217         * include/std/ostream: Same.
6218         * include/std/queue: Same.
6219         * include/std/set: Same.
6220         * include/std/sstream: Same.
6221         * include/std/stack: Same.
6222         * include/std/stdexcept: Same.
6223         * include/std/streambuf: Same.
6224         * include/std/string: Same.
6225         * include/std/utility: Same.
6226         * include/std/valarray: Same.
6227         * include/std/vector: Same.
6228
6229         * include/std/array: Add.
6230         * include/std/random: Add.
6231         * include/std/regex: Add.
6232         * include/std/tuple: Add.
6233         * include/std/type_traits: Add.
6234         * include/std/unordered_map: Add.
6235         * include/std/unordered_set: Add.
6236         * include/std/c++0x_warning.h: Add.
6237         
6238         * include/tr1/array: Switch namespaces based on _GLIBCXX_TR1.
6239         * include/tr1/boost_shared_ptr.h: Same.
6240         * include/tr1/cctype: Same.
6241         * include/tr1/cfenv: Same.
6242         * include/tr1/cinttypes: Same.
6243         * include/tr1/cmath: Same.
6244         * include/tr1/common.h: Same.
6245         * include/tr1/complex: Same.
6246         * include/tr1/cstdint: Same.
6247         * include/tr1/cstdio: Same.
6248         * include/tr1/cstdlib: Same.
6249         * include/tr1/cwchar: Same.
6250         * include/tr1/cwctype: Same.
6251         * include/tr1/functional: Same.
6252         * include/tr1/functional_hash.h: Same.
6253         * include/tr1/functional_iterate.h: Same.
6254         * include/tr1/hashtable: Same.
6255         * include/tr1/hashtable_policy.h: Same.
6256         * include/tr1/math.h: Same.
6257         * include/tr1/memory: Same.
6258         * include/tr1/random: Same.
6259         * include/tr1/random.tcc: Same.
6260         * include/tr1/ref_fwd.h: Same.
6261         * include/tr1/repeat.h: Same.
6262         * include/tr1/stdlib.h: Same.
6263         * include/tr1/tuple: Same.
6264         * include/tr1/tuple_iterate.h: Same.
6265         * include/tr1/type_traits: Same.
6266         * include/tr1/type_traits_fwd.h: Same.
6267         * include/tr1/unordered_map: Same.
6268         * include/tr1/unordered_set: Same.
6269         * include/tr1/utility: Same.
6270
6271         * include/tr1/ccomplex: Add.
6272         * include/tr1/complex.h: Add.
6273         * include/tr1/regex: Add.
6274
6275         * include/Makefile.am: Add C++0x headers, "C" compatibility headers.
6276         * include/Makefile.in: Regenerate.
6277
6278         * testsuite/tr1/headers.cc: Add in regex/complex.
6279
6280         * testsuite/17_intro/headers/c++200x/all.cc: New.
6281         * testsuite/17_intro/headers/c++200x/all_multiple_inclusion.cc: Same.
6282         * testsuite/17_intro/using_namespace_std_tr1_neg.cc: Same.
6283         * testsuite/18_support/headers/cstdbool/std_c++0x_neg.cc: Same.
6284         * testsuite/18_support/headers/cstdint/std_c++0x_neg.cc: Same.
6285         * testsuite/18_support/headers/cstdint/types_std_c++0x.cc: Same.
6286         * testsuite/20_util/enable_shared_from_this/requirements/
6287         explicit_instantiation.cc: Same.
6288         * testsuite/20_util/headers/functional/types_std_c++0x.cc: Same.
6289         * testsuite/20_util/headers/functional/
6290         using_namespace_std_placeholders.cc: Same.
6291         * testsuite/20_util/headers/memory/types_std_c++0x.cc: Same.
6292         * testsuite/20_util/headers/type_traits/std_c++0x_neg.cc: Same.
6293         * testsuite/20_util/headers/type_traits/types_std_c++0x.cc: Same.
6294         * testsuite/20_util/shared_ptr/requirements/
6295         explicit_instantiation.cc: Same.
6296         * testsuite/20_util/weak_ptr/requirements/
6297         explicit_instantiation.cc: Same.
6298         * testsuite/23_containers/array/requirements/
6299         explicit_instantiation.cc: Same.
6300         * testsuite/23_containers/hash/requirements/
6301         explicit_instantiation.cc: Same.
6302         * testsuite/23_containers/headers/array/std_c++0x_neg.cc: Same.
6303         * testsuite/23_containers/headers/tuple/std_c++0x_neg.cc: Same.
6304         * testsuite/23_containers/headers/tuple/types_std_c++0x.cc: Same.
6305         * testsuite/23_containers/headers/unordered_map/std_c++0x_neg.cc: Same.
6306         * testsuite/23_containers/headers/unordered_set/std_c++0x_neg.cc: Same.
6307         * testsuite/23_containers/tuple/requirements/
6308         explicit_instantiation.cc: Same.
6309         * testsuite/23_containers/unordered_map/requirements/
6310         explicit_instantiation.cc: Same.
6311         * testsuite/23_containers/unordered_multimap/requirements/
6312         explicit_instantiation.cc: Same.
6313         * testsuite/23_containers/unordered_multiset/requirements/
6314         explicit_instantiation.cc: Same.
6315         * testsuite/23_containers/unordered_set/requirements/
6316         explicit_instantiation.cc: Same.
6317         * testsuite/26_numerics/headers/ccomplex/std_c++0x_neg.cc: Same.
6318         * testsuite/26_numerics/headers/cfenv/std_c++0x_neg.cc: Same.
6319         * testsuite/26_numerics/headers/cfenv/types_std_c++0x.cc: Same.
6320         * testsuite/26_numerics/headers/cmath/types_std_c++0x.cc: Same.
6321         * testsuite/26_numerics/headers/cstdlib/types_std_c++0x.cc: Same.
6322         * testsuite/26_numerics/headers/ctgmath/std_c++0x_neg.cc: Same.
6323         * testsuite/26_numerics/headers/random/std_c++0x_neg.cc: Same.
6324         * testsuite/26_numerics/headers/random/types_std_c++0x.cc: Same.
6325         * testsuite/27_io/headers/cinttypes/std_c++0x_neg.cc: Same.
6326         * testsuite/27_io/headers/cinttypes/types_std_c++0x.cc: Same.
6327         * testsuite/28_regex/headers/regex/std_c++0x_neg.cc: Same.
6328
6329         * testsuite/tr1/8_c_compatibility/cfenv/types.cc: Rename ...
6330         * testsuite/tr1/8_c_compatibility/cinttypes/types.cc: Same.
6331         * testsuite/tr1/8_c_compatibility/cmath/types.cc: Same.
6332         * testsuite/tr1/8_c_compatibility/cstdint/types.cc: Same.
6333         * testsuite/tr1/8_c_compatibility/cstdlib/types.cc: Same.
6334         * testsuite/tr1/8_c_compatibility/cfenv/types_std_tr1.cc: ...to this.
6335         * testsuite/tr1/8_c_compatibility/cinttypes/types_std_tr1.cc: Same.
6336         * testsuite/tr1/8_c_compatibility/cmath/types_std_tr1.cc: Same.
6337         * testsuite/tr1/8_c_compatibility/cstdint/types_std_tr1.cc: Same.
6338         * testsuite/tr1/8_c_compatibility/cstdlib/types_std_tr1.cc: Same.
6339
6340 2007-03-03  Paolo Carlini  <pcarlini@suse.de>
6341
6342         PR libstdc++/31031
6343         * include/bits/istream.tcc: Inhibit implicit instantiation of
6344         the _M_insert helpers.
6345         * include/bits/ostream.tcc: Likewise for _M_extract.
6346         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/
6347         31031.cc: New.
6348         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/
6349         31031.cc: Likewise.
6350
6351 2007-03-03  Benjamin Kosnik  <bkoz@redhat.com>
6352
6353         * include/debug/functions.h: Use cstddef.
6354         
6355         * testsuite/tr1/3_function_objects/headers/functional/
6356         using_namespace_std_tr1_placeholders.cc: Fix include.
6357         
6358 2007-03-03  Benjamin Kosnik  <bkoz@redhat.com>
6359
6360         * crossconfig.m4 (djgpp): Correct builtin defines to HAVE___,
6361         instead of HAVE____.
6362         * configure: Regenerate.
6363
6364 2007-03-03  Paolo Carlini  <pcarlini@suse.de>
6365
6366         PR libstdc++/28080 (partial)
6367         * include/bits/stl_algobase.h: Do not include <iosfwd>,
6368         <bits/functexcept.h> is enough; adjust __copy_aux declarations;
6369         remove declaration of copy overload for istreambuf_iterator /
6370         ostreambuf_iterator.
6371         * src/debug.cc: Include <cstdio>.
6372         * include/ext/rope: Include <iosfwd>.
6373         * include/bits/char_traits.h: Include <cstdio> and <cwchar>.
6374         * include/bits/stl_algo.h: Remove declaration of find overload
6375         for istreambuf_iterator.
6376         * include/std/queue: Clean up includes.
6377         * include/std/stack: Likewise.
6378         * include/std/memory: Likewise.
6379         * include/std/algorithm: Likewise.
6380         * include/std/vector: Likewise.
6381         * include/std/deque: Likewise.
6382         * include/std/list: Likewise.
6383         * include/bits/stl_tree.h: Likewise.
6384         * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Adjust
6385         dg-error markers.
6386         * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Likewise.
6387         * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
6388         * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
6389         * testsuite/23_containers/set/operators/1_neg.cc: Likewise.
6390         * testsuite/23_containers/map/operators/1_neg.cc: Likewise.
6391         * testsuite/20_util/auto_ptr/assign_neg.cc: Likewise.
6392
6393         * include/ext/type_traits.h: Fix type of __max_digits10; clean up
6394         includes.
6395
6396         * testsuite/util/testsuite_hooks.h: Do not include <cstddef>.
6397         * testsuite/util/testsuite_hooks.cc: Do it here.
6398
6399 2007-03-02  Paolo Carlini  <pcarlini@suse.de>
6400
6401         * testsuite/27_io/objects/wchar_t/9661-1.cc: Include <cstdlib>.
6402         * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
6403         * testsuite/27_io/objects/char/9661-1.cc: Likewise.
6404         * testsuite/27_io/objects/char/7.cc: Likewise.
6405         * testsuite/27_io/basic_istream/ignore/wchar_t/2.cc: Likewise.
6406         * testsuite/27_io/basic_istream/ignore/char/2.cc: Likewise.
6407         * testsuite/27_io/basic_istream/getline/wchar_t/5.cc: Likewise.
6408         * testsuite/27_io/basic_istream/getline/char/5.cc: Likewise.
6409         * testsuite/27_io/basic_istream/extractors_arithmetic/char/
6410         11.cc: Likewise.
6411         * testsuite/27_io/basic_istream/extractors_character/wchar_t/
6412         4.cc: Likewise.
6413         * testsuite/27_io/basic_istream/extractors_character/char/
6414         4.cc: Likewise.
6415         * testsuite/27_io/basic_ostream/seekp/wchar_t/
6416         2346-fstream.cc: Likewise.
6417         * testsuite/27_io/basic_ostream/seekp/char/
6418         2346-fstream.cc: Likewise.
6419         * testsuite/27_io/basic_filebuf/seekoff/char/26777.cc: Likewise.
6420         * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Likewise.
6421         * testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: Likewise.
6422         * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
6423         * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: Likewise.
6424         * testsuite/27_io/basic_filebuf/close/char/4879.cc: Likewise.
6425         * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
6426         * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
6427         * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: Likewise.
6428         * testsuite/21_strings/basic_string/inserters_extractors/
6429         wchar_t/10.cc: Likewise.
6430         * testsuite/21_strings/basic_string/inserters_extractors/
6431         wchar_t/11.cc: Likewise.
6432         * testsuite/21_strings/basic_string/inserters_extractors/
6433         char/10.cc: Likewise.
6434         * testsuite/21_strings/basic_string/inserters_extractors/
6435         char/11.cc: Likewise.
6436         * testsuite/ext/pb_ds/example/trie_dna.cc: Likewise.
6437         * testsuite/ext/new_allocator/deallocate_global.cc: Likewise.
6438         * testsuite/ext/new_allocator/deallocate_local.cc: Likewise.
6439         * testsuite/performance/27_io/filebuf_sgetn_unbuf.cc: Likewise.
6440         * testsuite/performance/27_io/ifstream_getline.cc: Likewise.
6441         * testsuite/22_locale/locale/cons/4.cc: Likewise.
6442         * testsuite/22_locale/locale/cons/5.cc: Likewise.
6443         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
6444         mutex_weaktoshared.cc: Likewise.
6445         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
6446         default_weaktoshared.cc: Likewise.
6447         * testsuite/thread/pthread5.cc: Likewise.
6448         * testsuite/thread/pthread1.cc: Likewise.
6449         * testsuite/23_containers/deque/cons/assign/1.cc: Likewise.
6450
6451 2007-03-02  Paolo Carlini  <pcarlini@suse.de>
6452
6453         * testsuite/thread/pthread1.cc: Include <pthread.h>.
6454         * testsuite/thread/pthread2.cc: Likewise.
6455         * testsuite/thread/pthread3.cc: Likewise.
6456         * testsuite/thread/pthread4.cc: Likewise.
6457         * testsuite/thread/pthread5.cc: Likewise.
6458         * testsuite/thread/pthread6.cc: Likewise.
6459         * testsuite/thread/pthread7-rope.cc: Likewise.
6460
6461 2007-03-02  Paolo Carlini  <pcarlini@suse.de>
6462
6463         PR libstdc++/28080 (partial)
6464         * include/tr1/random (class random_device): Rework to use simple
6465         <cstdio> input, do not include <fstream>.
6466         * include/tr1/random.tcc (all inserters and extractors): Refer
6467         to ios_base as base class of basic_istream or basic_ostream.
6468
6469 2007-03-01  Brooks Moses  <brooks.moses@codesourcery.com>
6470
6471         * Makefile.am: Add dummy install-pdf target.
6472         * Makefile.in: Regenerate
6473
6474 2007-03-01  Paolo Carlini  <pcarlini@suse.de>
6475
6476         PR libstdc++/31005
6477         * include/bits/localefwd.h: Include <cctype>.
6478
6479 2007-02-27  Paolo Carlini  <pcarlini@suse.de>
6480
6481         PR libstdc++/28080 (partial)
6482         * include/std/bitset: Do not include <ios>, <iosfwd> is enough.
6483         (operator>>(std::basic_istream<>&, bitset<>&)): Tweak, refer to
6484         ios_base as a base of basic_istream.
6485         * include/std/iomanip: Do not include <ios>, <iosfwd> + 
6486         <bits/ios_base.h> is enough.
6487         * include/std/iosfwd: Do not include <cctype> here...
6488         * include/bits/locale_facets.h: ... do it here, when needed.
6489         * include/bits/ostream.tcc: Clean up, do not include <locale> here...
6490         * include/std/ostream: ... here instead.
6491         * include/bits/istream.tcc: Likewise for <locale> and <ostream>...
6492         * include/std/istream: ... here.
6493         * include/bits/sstream.tcc: Do not include <sstream>.
6494
6495 2007-02-27  Richard Guenther  <rguenther@suse.de>
6496
6497         * acinclude.m4: Adjust regular expression for ld version extraction.
6498         * configure: Regenerate.
6499
6500 2007-02-26  DJ Delorie  <dj@redhat.com>
6501
6502         * crossconfig.m4 (djgpp): Pre-detect djgpp-specific results, to
6503         avoid needing to link during cross compiling.
6504         * configure: Regenerated.
6505
6506 2007-02-26  Paolo Carlini  <pcarlini@suse.de>
6507
6508         PR libstdc++/28080 (partial)
6509         * include/std/bitset: Do not include <istream> and <ostream>,
6510         <ios> is enough.
6511         * include/std/iomanip: Do not include the whole <istream>,
6512         <ios> is enough; do not include <functional>; reformat.
6513         * include/std/functional: Do not include <cstddef>.
6514         * include/std/list: Do not include <bits/stl_uninitialized.h>.
6515         * include/std/numeric: Do not include the whole <iterator> and
6516         <bits/stl_function.h>.
6517         * include/std/valarray: Do not include <numeric>.
6518         * include/bits/stl_numeric.h: Include <bits/concept_check.h>.
6519         * src/iostream-inst.cc: Include <istream>.
6520         * include/ext/functional: Include <cstddef>.
6521         * testsuite/util/testsuite_hooks.h: Do not include <locale>,
6522         <ctime> is enough; qualify tm.
6523         * testsuite/util/testsuite_hooks.cc: Qualify tm.
6524
6525 2007-02-26  Paolo Carlini  <pcarlini@suse.de>
6526
6527         * include/bits/locale_facets.h (class ctype_byname<char>,
6528         class ctype_byname<wchar_t>): Declare.
6529         * src/ctype.cc (ctype_byname<wchar_t>::ctype_byname(const char*,
6530         size_t), ctype_byname<wchar_t>::~ctype_byname): Define.
6531         * config/locale/generic/ctype_members.cc (ctype_byname<char>::
6532         ctype_byname(const char*, size_t), ctype_byname<char>::~ctype_byname):
6533         Likewise.
6534         * config/locale/gnu/ctype_members.cc (ctype_byname<char>::
6535         ctype_byname(const char*, size_t), ctype_byname<char>::~ctype_byname):
6536         Likewise.
6537         * config/locale/darwin/ctype_members.cc (ctype_byname<char>::
6538         ctype_byname(const char*, size_t), ctype_byname<char>::~ctype_byname):
6539         Likewise.
6540         * testsuite/22_locale/headers/locale/synopsis.cc: Remove xfail.
6541
6542 2007-02-25  Paolo Carlini  <pcarlini@suse.de>
6543
6544         * testsuite/19_diagnostics/headers/cerrno/macros.cc: Include
6545         the right header.
6546         * testsuite/18_support/headers/cstdlib/macros.cc: Likewise.
6547
6548 2007-02-23  Paolo Carlini  <pcarlini@suse.de>
6549         
6550         PR libstdc++/25896
6551         * include/tr1/hashtable (_Hashtable<>::erase(const key_type&)):
6552         Take care of &_M_extract((*__slot)->_M_v) == &__k.
6553
6554         * testsuite/tr1/6_containers/unordered_map/erase/1.cc: New.
6555         * testsuite/tr1/6_containers/unordered_multimap/erase/1.cc: Likewise.
6556         * testsuite/tr1/6_containers/unordered_multiset/erase/1.cc: Likewise.
6557         * testsuite/tr1/6_containers/unordered_set/erase/1.cc: Likewise.
6558
6559 2007-02-23  Mark Mitchell  <mark@codesourcery.com>
6560
6561         * testsuite/27_io/ios_base/sync_with_stdio/1.cc: XFAIL for wrapped
6562         targets.
6563
6564 2007-02-23  Mark Mitchell  <mark@codesourcery.com>
6565
6566         * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
6567         XFAIL for Newlib targets.
6568
6569 2007-02-22  Simon Martin  <simartin@users.sourceforge.net>
6570
6571         * testsuite/27_io/basic_ios/cons/char/3.cc: Fixed type mismatches in
6572         explicit instantiations.
6573         * testsuite/27_io/basic_istream/extractors_other/pod/
6574         3983-3.cc: Likewise.
6575         * testsuite/27_io/basic_istream/extractors_arithmetic/pod/3983-1.cc:
6576         Likewise.
6577         * testsuite/27_io/basic_istream/extractors_character/pod/3983-2.cc:
6578         Likewise.
6579         * testsuite/27_io/basic_istream/sentry/pod/1.cc: Likewise.
6580         * testsuite/27_io/basic_ostream/sentry/pod/1.cc: Likewise.
6581         * testsuite/21_strings/basic_string/inserters_extractors/
6582         pod/10081-in.cc: Likewise.
6583         * testsuite/21_strings/basic_string/inserters_extractors/pod/
6584         10081-out.cc: Likewise.
6585         * testsuite/21_strings/basic_string/capacity/1.cc: Likewise.
6586
6587 2007-02-22  Paolo Carlini  <pcarlini@suse.de>
6588
6589         * include/tr1/unordered_map (class __unordered_map,
6590         class __unordered_multimap): New.
6591         (class unordered_map, class unordered_multimap): Forward to
6592         the latter.
6593         * include/tr1/unordered_set: Likewise for unordered_set and
6594         unordered_multiset.
6595         * testsuite/tr1/6_containers/headers/unordered_set/synopsis.cc:
6596         Remove xfail.
6597         * testsuite/tr1/6_containers/headers/unordered_map/synopsis.cc:
6598         Likewise.
6599         * testsuite/tr1/6_containers/unordered_multimap/requirements/
6600         explicit_instantiation.cc: Adjust.
6601         * testsuite/tr1/6_containers/unordered_set/requirements/
6602         explicit_instantiation.cc: Likewise.
6603         * testsuite/tr1/6_containers/unordered_map/requirements/
6604         explicit_instantiation.cc: Likewise.
6605         * testsuite/tr1/6_containers/unordered_multiset/requirements/
6606         explicit_instantiation.cc: Likewise.
6607         * testsuite/tr1/6_containers/unordered_map/24064.cc: Likewise.
6608         * testsuite/util/native_type/assoc/native_hash_set.hpp: Likewise.
6609         * testsuite/util/native_type/assoc/native_hash_map.hpp: Likewise.
6610
6611 2007-02-20  Mark Mitchell  <mark@codesourcery.com>
6612
6613         * testsuite/lib/libstdc++.exp (libstdc++_init): Compile testglue
6614         with -fexceptions.
6615
6616 2007-02-20  Paolo Carlini  <pcarlini@suse.de>
6617
6618         PR libstdc++/28080 (partial)
6619         * include/tr1/functional: Split out hash bits to...
6620         * include/tr1/functional_hash.h: ...here.
6621         * include/Makefile.am: Add.
6622         * include/tr1/unordered_set: Include the latter instead.
6623         * include/tr1/unordered_map: Likewise.
6624         * include/tr1/random: Do not include the whole <algorithm>,
6625         stl_algobase.h is enough.
6626         * include/tr1/memory: Likewise.
6627         * include/Makefile.in: Regenerate.
6628
6629         * include/tr1/utility (get(std::pair<>&), get(const std::pair<>&)):
6630         Mark inline.
6631
6632 2007-02-20  Benjamin Kosnik  <bkoz@redhat.com>
6633
6634         Directory layout flattening.
6635
6636         Added in testsuite:
6637         * 20_util/allocator
6638         * 20_util/auto_ptr
6639         * 20_util/function_objects
6640         * 20_util/function_objects/binders
6641         * 20_util/function_objects/binders/1.cc
6642         * 20_util/function_objects/binders/3113.cc
6643         * 20_util/function_objects/comparisons.cc
6644         * 20_util/pair
6645         * 20_util/raw_storage_iterator
6646         * 20_util/rel_ops.cc
6647         * 20_util/specialized_algorithms
6648         * 20_util/specialized_algorithms/16505.cc
6649         * 20_util/temporary_buffer.cc
6650         * 26_numerics/numeric_arrays/slice_array
6651         * 26_numerics/numeric_arrays/slice_array/array_assignment.cc
6652         * 26_numerics/numeric_arrays/slice_array/requirements
6653         * 26_numerics/numeric_arrays/slice_array/requirements/
6654         explicit_instantiation.cc
6655         * 26_numerics/numeric_arrays/slice_array/requirements/typedefs.cc
6656         * 26_numerics/numeric_arrays/valarray
6657         * 26_numerics/numeric_arrays/valarray/27867.cc
6658         * 26_numerics/numeric_arrays/valarray/28277.cc
6659         * 26_numerics/numeric_arrays/valarray/30416.cc
6660         * 26_numerics/numeric_arrays/valarray/algo.cc
6661         * 26_numerics/numeric_arrays/valarray/binary_closure.cc
6662         * 26_numerics/numeric_arrays/valarray/const_bracket.cc
6663         * 26_numerics/numeric_arrays/valarray/dr543.cc
6664         * 26_numerics/numeric_arrays/valarray/name_lookup.cc
6665         * 26_numerics/numeric_arrays/valarray/operators.cc
6666         * 26_numerics/numeric_arrays/valarray/requirements
6667         * 26_numerics/numeric_arrays/valarray/requirements/
6668         explicit_instantiation.cc
6669         * 26_numerics/numeric_arrays/valarray/requirements/typedefs.cc
6670         * 26_numerics/numeric_arrays/valarray/subset_assignment.cc
6671         * tr1/2_general_utilities/enable_shared_from_this
6672         * tr1/2_general_utilities/shared_ptr
6673         * tr1/2_general_utilities/weak_ptr
6674         
6675         Deleted in testsuite:
6676         * 20_util/functional
6677         * 20_util/functional/binders
6678         * 20_util/functional/binders/1.cc
6679         * 20_util/functional/binders/3113.cc
6680         * 20_util/functional/comparisons.cc
6681         * 20_util/memory
6682         * 20_util/memory/16505.cc
6683         * 20_util/memory/allocator
6684         * 20_util/memory/allocator/10378.cc
6685         * 20_util/memory/allocator/14176.cc
6686         * 20_util/memory/allocator/1.cc
6687         * 20_util/memory/allocator/8230.cc
6688         * 20_util/memory/allocator/requirements
6689         * 20_util/memory/allocator/requirements/explicit_instantiation
6690         * 20_util/memory/allocator/requirements/explicit_instantiation/1.cc
6691         * 20_util/memory/auto_ptr
6692         * 20_util/memory/auto_ptr/1.cc
6693         * 20_util/memory/auto_ptr/2.cc
6694         * 20_util/memory/auto_ptr/3946.cc
6695         * 20_util/memory/auto_ptr/3.cc
6696         * 20_util/memory/auto_ptr/4.cc
6697         * 20_util/memory/auto_ptr/5.cc
6698         * 20_util/memory/auto_ptr/6.cc
6699         * 20_util/memory/auto_ptr/7.cc
6700         * 20_util/memory/auto_ptr/assign_neg.cc
6701         * 20_util/memory/auto_ptr/requirements
6702         * 20_util/memory/auto_ptr/requirements/explicit_instantiation
6703         * 20_util/memory/auto_ptr/requirements/explicit_instantiation/1.cc
6704         * 20_util/memory/raw_storage_iterator
6705         * 20_util/memory/raw_storage_iterator/requirements
6706         * 20_util/memory/raw_storage_iterator/requirements/base_classes.cc
6707         * 20_util/memory/raw_storage_iterator/requirements/
6708         explicit_instantiation
6709         * 20_util/memory/raw_storage_iterator/requirements/
6710         explicit_instantiation/1.cc
6711         * 20_util/memory/raw_storage_iterator/requirements/typedefs.cc
6712         * 20_util/memory/temporary_buffer.cc
6713         * 20_util/utility
6714         * 20_util/utility/pair
6715         * 20_util/utility/pair/1.cc
6716         * 20_util/utility/pair/2.cc
6717         * 20_util/utility/pair/3.cc
6718         * 20_util/utility/pair/4.cc
6719         * 20_util/utility/pair/requirements
6720         * 20_util/utility/pair/requirements/explicit_instantiation
6721         * 20_util/utility/pair/requirements/explicit_instantiation/1.cc
6722         * 20_util/utility/rel_ops.cc
6723         * 26_numerics/numeric_arrays/27867.cc
6724         * 26_numerics/numeric_arrays/28277.cc
6725         * 26_numerics/numeric_arrays/30416.cc
6726         * 26_numerics/numeric_arrays/binary_closure.cc
6727         * 26_numerics/numeric_arrays/dr543.cc
6728         * 26_numerics/numeric_arrays/slice_array_assignment.cc
6729         * 26_numerics/numeric_arrays/valarray.cc
6730         * 26_numerics/numeric_arrays/valarray_const_bracket.cc
6731         * 26_numerics/numeric_arrays/valarray_name_lookup.cc
6732         * 26_numerics/numeric_arrays/valarray_operators.cc
6733         * 26_numerics/numeric_arrays/valarray_subset_assignment.cc
6734         * tr1/2_general_utilities/memory
6735         * tr1/2_general_utilities/memory/enable_shared_from_this
6736         * tr1/2_general_utilities/memory/enable_shared_from_this/1.cc
6737         * tr1/2_general_utilities/memory/enable_shared_from_this/not_shared2.cc
6738         * tr1/2_general_utilities/memory/enable_shared_from_this/not_shared3.cc
6739         * tr1/2_general_utilities/memory/enable_shared_from_this/not_shared.cc
6740         * tr1/2_general_utilities/memory/enable_shared_from_this/requirements
6741         * tr1/2_general_utilities/memory/enable_shared_from_this/
6742         requirements/explicit_instantiation
6743         * tr1/2_general_utilities/memory/enable_shared_from_this/
6744         requirements/explicit_instantiation/1.cc
6745         * tr1/2_general_utilities/memory/enable_shared_from_this/shared.cc
6746         * tr1/2_general_utilities/memory/enable_shared_from_this/
6747         still_shared.cc
6748         * tr1/2_general_utilities/memory/shared_ptr
6749         * tr1/2_general_utilities/memory/shared_ptr/assign
6750         * tr1/2_general_utilities/memory/shared_ptr/assign/assign.cc
6751         * tr1/2_general_utilities/memory/shared_ptr/assign/auto_ptr.cc
6752         * tr1/2_general_utilities/memory/shared_ptr/assign/auto_ptr_neg.cc
6753         * tr1/2_general_utilities/memory/shared_ptr/assign/
6754         auto_ptr_rvalue_neg.cc
6755         * tr1/2_general_utilities/memory/shared_ptr/assign/dr541.cc
6756         * tr1/2_general_utilities/memory/shared_ptr/assign/shared_ptr.cc
6757         * tr1/2_general_utilities/memory/shared_ptr/assign/shared_ptr_neg.cc
6758         * tr1/2_general_utilities/memory/shared_ptr/casts
6759         * tr1/2_general_utilities/memory/shared_ptr/casts/1.cc
6760         * tr1/2_general_utilities/memory/shared_ptr/comparison
6761         * tr1/2_general_utilities/memory/shared_ptr/comparison/cmp.cc
6762         * tr1/2_general_utilities/memory/shared_ptr/cons
6763         * tr1/2_general_utilities/memory/shared_ptr/cons/auto_ptr.cc
6764         * tr1/2_general_utilities/memory/shared_ptr/cons/auto_ptr_neg.cc
6765         * tr1/2_general_utilities/memory/shared_ptr/cons/copy.cc
6766         * tr1/2_general_utilities/memory/shared_ptr/cons/default.cc
6767         * tr1/2_general_utilities/memory/shared_ptr/cons/pointer.cc
6768         * tr1/2_general_utilities/memory/shared_ptr/cons/weak_ptr.cc
6769         * tr1/2_general_utilities/memory/shared_ptr/cons/weak_ptr_expired.cc
6770         * tr1/2_general_utilities/memory/shared_ptr/dest
6771         * tr1/2_general_utilities/memory/shared_ptr/dest/dest.cc
6772         * tr1/2_general_utilities/memory/shared_ptr/misc
6773         * tr1/2_general_utilities/memory/shared_ptr/misc/24595.cc
6774         * tr1/2_general_utilities/memory/shared_ptr/misc/io.cc
6775         * tr1/2_general_utilities/memory/shared_ptr/misc/swap.cc
6776         * tr1/2_general_utilities/memory/shared_ptr/modifiers
6777         * tr1/2_general_utilities/memory/shared_ptr/modifiers/24805.cc
6778         * tr1/2_general_utilities/memory/shared_ptr/modifiers/reset.cc
6779         * tr1/2_general_utilities/memory/shared_ptr/modifiers/reset_neg.cc
6780         * tr1/2_general_utilities/memory/shared_ptr/modifiers/swap.cc
6781         * tr1/2_general_utilities/memory/shared_ptr/modifiers/swap_neg.cc
6782         * tr1/2_general_utilities/memory/shared_ptr/observers
6783         * tr1/2_general_utilities/memory/shared_ptr/observers/bool_conv.cc
6784         * tr1/2_general_utilities/memory/shared_ptr/observers/get.cc
6785         * tr1/2_general_utilities/memory/shared_ptr/observers/unique.cc
6786         * tr1/2_general_utilities/memory/shared_ptr/observers/use_count.cc
6787         * tr1/2_general_utilities/memory/shared_ptr/requirements
6788         * tr1/2_general_utilities/memory/shared_ptr/requirements/
6789         explicit_instantiation
6790         * tr1/2_general_utilities/memory/shared_ptr/requirements/
6791         explicit_instantiation/1.cc
6792         * tr1/2_general_utilities/memory/shared_ptr/thread
6793         * tr1/2_general_utilities/memory/shared_ptr/thread/
6794         default_weaktoshared.cc
6795         * tr1/2_general_utilities/memory/shared_ptr/thread/
6796         mutex_weaktoshared.cc
6797         * tr1/2_general_utilities/memory/weak_ptr
6798         * tr1/2_general_utilities/memory/weak_ptr/lock
6799         * tr1/2_general_utilities/memory/weak_ptr/lock/1.cc
6800         * tr1/2_general_utilities/memory/weak_ptr/requirements
6801         * tr1/2_general_utilities/memory/weak_ptr/requirements/
6802         explicit_instantiation
6803         * tr1/2_general_utilities/memory/weak_ptr/requirements/
6804         explicit_instantiation/1.cc
6805
6806 2007-02-20  Benjamin Kosnik  <bkoz@redhat.com>
6807
6808         Revamp library API testing.
6809         
6810         Added in testsuite:
6811         * 17_intro/headers
6812         * 17_intro/headers/all_assert_neg.cc
6813         * 17_intro/headers/all_c++200x_compatibility.cc
6814         * 17_intro/headers/all.cc
6815         * 17_intro/headers/c++1998
6816         * 17_intro/headers/c++1998/all.cc
6817         * 17_intro/headers/c++1998/all_multiple_inclusion.cc
6818         * 17_intro/headers/c++1998/c++_for_c.tar
6819         * 17_intro/headers/c++1998/c++.tar
6820         * 17_intro/using_namespace_std.cc
6821         * 18_support/headers
6822         * 18_support/headers/cfloat
6823         * 18_support/headers/cfloat/values.cc
6824         * 18_support/headers/climits
6825         * 18_support/headers/climits/values.cc
6826         * 18_support/headers/csetjmp
6827         * 18_support/headers/csetjmp/functions_std.cc
6828         * 18_support/headers/csetjmp/macros.cc
6829         * 18_support/headers/csetjmp/types_std.cc
6830         * 18_support/headers/csignal
6831         * 18_support/headers/csignal/functions_std.cc
6832         * 18_support/headers/csignal/macros.cc
6833         * 18_support/headers/csignal/types_std.cc
6834         * 18_support/headers/cstdarg
6835         * 18_support/headers/cstdarg/macros.cc
6836         * 18_support/headers/cstdarg/types_std.cc
6837         * 18_support/headers/cstddef
6838         * 18_support/headers/cstddef/macros.cc
6839         * 18_support/headers/cstddef/types_std.cc
6840         * 18_support/headers/cstdlib
6841         * 18_support/headers/cstdlib/functions_std.cc
6842         * 18_support/headers/cstdlib/macros.cc
6843         * 18_support/headers/ctime
6844         * 18_support/headers/ctime/functions_std.cc
6845         * 18_support/headers/ctime/macros.cc
6846         * 18_support/headers/ctime/types_std.cc
6847         * 18_support/headers/exception
6848         * 18_support/headers/exception/synopsis.cc
6849         * 18_support/headers/exception/types_std.cc
6850         * 18_support/headers/limits
6851         * 18_support/headers/limits/synopsis.cc
6852         * 18_support/headers/new
6853         * 18_support/headers/new/synopsis.cc
6854         * 18_support/headers/new/types_std.cc
6855         * 18_support/headers/typeinfo
6856         * 18_support/headers/typeinfo/synopsis.cc
6857         * 18_support/headers/typeinfo/types_std.cc
6858         * 18_support/numeric_limits/is_signed.cc
6859         * 18_support/numeric_limits/requirements
6860         * 18_support/numeric_limits/requirements/explicit_instantiation
6861         * 18_support/numeric_limits/requirements/explicit_instantiation/1.cc
6862         * 18_support/numeric_limits/specialization_default_values.cc
6863         * 19_diagnostics/headers
6864         * 19_diagnostics/headers/cassert
6865         * 19_diagnostics/headers/cassert/macros.cc
6866         * 19_diagnostics/headers/cerrno
6867         * 19_diagnostics/headers/cerrno/macros.cc
6868         * 19_diagnostics/headers/stdexcept
6869         * 19_diagnostics/headers/stdexcept/synopsis.cc
6870         * 19_diagnostics/headers/stdexcept/types_std.cc
6871         * 20_util/headers
6872         * 20_util/headers/cstdlib
6873         * 20_util/headers/cstdlib/functions_std.cc
6874         * 20_util/headers/cstring
6875         * 20_util/headers/cstring/functions_std.cc
6876         * 20_util/headers/cstring/macros.cc
6877         * 20_util/headers/cstring/types_std.cc
6878         * 20_util/headers/ctime
6879         * 20_util/headers/ctime/functions_std.cc
6880         * 20_util/headers/ctime/macros.cc
6881         * 20_util/headers/ctime/types_std.cc
6882         * 20_util/headers/functional
6883         * 20_util/headers/functional/synopsis.cc
6884         * 20_util/headers/memory
6885         * 20_util/headers/memory/synopsis.cc
6886         * 20_util/headers/utility
6887         * 20_util/headers/utility/synopsis.cc
6888         * 20_util/headers/utility/using_namespace_std_rel_ops.cc
6889         * 20_util/memory/allocator/requirements
6890         * 20_util/memory/allocator/requirements/explicit_instantiation
6891         * 20_util/memory/allocator/requirements/explicit_instantiation/1.cc
6892         * 20_util/memory/auto_ptr/requirements
6893         * 20_util/memory/auto_ptr/requirements/explicit_instantiation
6894         * 20_util/memory/auto_ptr/requirements/explicit_instantiation/1.cc
6895         * 20_util/memory/raw_storage_iterator
6896         * 20_util/memory/raw_storage_iterator/requirements
6897         * 20_util/memory/raw_storage_iterator/requirements/base_classes.cc
6898         * 20_util/memory/raw_storage_iterator/requirements/
6899         explicit_instantiation
6900         * 20_util/memory/raw_storage_iterator/requirements/
6901         explicit_instantiation/1.cc
6902         * 20_util/memory/raw_storage_iterator/requirements/typedefs.cc
6903         * 20_util/utility/pair/requirements
6904         * 20_util/utility/pair/requirements/explicit_instantiation
6905         * 20_util/utility/pair/requirements/explicit_instantiation/1.cc
6906         * 21_strings/basic_string/requirements
6907         * 21_strings/basic_string/requirements/explicit_instantiation
6908         * 21_strings/basic_string/requirements/explicit_instantiation/1.cc
6909         * 21_strings/basic_string/requirements/explicit_instantiation/debug.cc
6910         * 21_strings/headers
6911         * 21_strings/headers/cctype
6912         * 21_strings/headers/cctype/functions_std.cc
6913         * 21_strings/headers/cstdlib
6914         * 21_strings/headers/cstdlib/functions_std.cc
6915         * 21_strings/headers/cstdlib/macros.cc
6916         * 21_strings/headers/cstring
6917         * 21_strings/headers/cstring/functions_std.cc
6918         * 21_strings/headers/cstring/macros.cc
6919         * 21_strings/headers/cstring/types_std.cc
6920         * 21_strings/headers/cwchar
6921         * 21_strings/headers/cwchar/functions_std.cc
6922         * 21_strings/headers/cwchar/macros.cc
6923         * 21_strings/headers/cwchar/types_std.cc
6924         * 21_strings/headers/cwctype
6925         * 21_strings/headers/cwctype/functions_std.cc
6926         * 21_strings/headers/cwctype/macros.cc
6927         * 21_strings/headers/cwctype/types_std.cc
6928         * 21_strings/headers/string
6929         * 21_strings/headers/string/synopsis.cc
6930         * 21_strings/headers/string/types_std.cc
6931         * 22_locale/codecvt_byname/requirements
6932         * 22_locale/codecvt_byname/requirements/base_classes.cc
6933         * 22_locale/codecvt_byname/requirements/explicit_instantiation.cc
6934         * 22_locale/codecvt_byname/requirements/typedefs.cc
6935         * 22_locale/codecvt/requirements
6936         * 22_locale/codecvt/requirements/base_classes.cc
6937         * 22_locale/codecvt/requirements/explicit_instantiation.cc
6938         * 22_locale/codecvt/requirements/typedefs.cc
6939         * 22_locale/collate_byname/requirements
6940         * 22_locale/collate_byname/requirements/base_classes.cc
6941         * 22_locale/collate_byname/requirements/explicit_instantiation.cc
6942         * 22_locale/collate_byname/requirements/typedefs.cc
6943         * 22_locale/collate/requirements
6944         * 22_locale/collate/requirements/base_classes.cc
6945         * 22_locale/collate/requirements/explicit_instantiation.cc
6946         * 22_locale/collate/requirements/typedefs.cc
6947         * 22_locale/ctype_base/mask.cc
6948         * 22_locale/ctype/requirements
6949         * 22_locale/ctype/requirements/base_classes.cc
6950         * 22_locale/ctype/requirements/explicit_instantiation.cc
6951         * 22_locale/ctype/requirements/typedefs.cc
6952         * 22_locale/headers
6953         * 22_locale/headers/clocale
6954         * 22_locale/headers/clocale/functions_std.cc
6955         * 22_locale/headers/clocale/macros.cc
6956         * 22_locale/headers/clocale/types_std.cc
6957         * 22_locale/headers/locale
6958         * 22_locale/headers/locale/synopsis.cc
6959         * 22_locale/headers/locale/types_std.cc
6960         * 22_locale/messages_byname/requirements
6961         * 22_locale/messages_byname/requirements/base_classes.cc
6962         * 22_locale/messages_byname/requirements/explicit_instantiation.cc
6963         * 22_locale/messages_byname/requirements/typedefs.cc
6964         * 22_locale/messages/requirements
6965         * 22_locale/messages/requirements/base_classes.cc
6966         * 22_locale/messages/requirements/explicit_instantiation.cc
6967         * 22_locale/messages/requirements/typedefs.cc
6968         * 22_locale/money_get/cons
6969         * 22_locale/money_get/cons/3.cc
6970         * 22_locale/money_get/requirements
6971         * 22_locale/money_get/requirements/base_classes.cc
6972         * 22_locale/money_get/requirements/explicit_instantiations.cc
6973         * 22_locale/money_get/requirements/typedefs.cc
6974         * 22_locale/moneypunct_byname/requirements
6975         * 22_locale/moneypunct_byname/requirements/base_classes.cc
6976         * 22_locale/moneypunct_byname/requirements/explicit_instantiation.cc
6977         * 22_locale/moneypunct_byname/requirements/typedefs.cc
6978         * 22_locale/moneypunct/requirements
6979         * 22_locale/moneypunct/requirements/false
6980         * 22_locale/moneypunct/requirements/false/base_classes.cc
6981         * 22_locale/moneypunct/requirements/false/explicit_instantiation.cc
6982         * 22_locale/moneypunct/requirements/false/intl.cc
6983         * 22_locale/moneypunct/requirements/false/typedefs.cc
6984         * 22_locale/moneypunct/requirements/true
6985         * 22_locale/moneypunct/requirements/true/base_classes.cc
6986         * 22_locale/moneypunct/requirements/true/explicit_instantiation.cc
6987         * 22_locale/moneypunct/requirements/true/intl.cc
6988         * 22_locale/moneypunct/requirements/true/typedefs.cc
6989         * 22_locale/money_put/cons
6990         * 22_locale/money_put/cons/3.cc
6991         * 22_locale/money_put/requirements
6992         * 22_locale/money_put/requirements/base_classes.cc
6993         * 22_locale/money_put/requirements/explicit_instantiation.cc
6994         * 22_locale/money_put/requirements/typedefs.cc
6995         * 22_locale/num_get/cons
6996         * 22_locale/num_get/cons/3.cc
6997         * 22_locale/num_get/requirements
6998         * 22_locale/num_get/requirements/base_classes.cc
6999         * 22_locale/num_get/requirements/explicit_instantiation.cc
7000         * 22_locale/num_get/requirements/typedefs.cc
7001         * 22_locale/numpunct_byname/requirements
7002         * 22_locale/numpunct_byname/requirements/base_classes.cc
7003         * 22_locale/numpunct_byname/requirements/explicit_instantiations.cc
7004         * 22_locale/numpunct_byname/requirements/typedefs.cc
7005         * 22_locale/numpunct/requirements
7006         * 22_locale/numpunct/requirements/base_classes.cc
7007         * 22_locale/numpunct/requirements/explicit_instantiations.cc
7008         * 22_locale/numpunct/requirements/typedefs.cc
7009         * 22_locale/num_put/cons
7010         * 22_locale/num_put/cons/3.cc
7011         * 22_locale/num_put/requirements
7012         * 22_locale/num_put/requirements/base_classes.cc
7013         * 22_locale/num_put/requirements/explicit_instantiations.cc
7014         * 22_locale/num_put/requirements/typedefs.cc
7015         * 22_locale/time_get/requirements
7016         * 22_locale/time_get/requirements/base_classes.cc
7017         * 22_locale/time_get/requirements/explicit_instantiations.cc
7018         * 22_locale/time_get/requirements/typedefs.cc
7019         * 22_locale/time_put/requirements
7020         * 22_locale/time_put/requirements/base_classes.cc
7021         * 22_locale/time_put/requirements/explicit_instantiations.cc
7022         * 22_locale/time_put/requirements/typedefs.cc
7023         * 23_containers/bitset/requirements
7024         * 23_containers/bitset/requirements/explicit_instantiation
7025         * 23_containers/bitset/requirements/explicit_instantiation/1.cc
7026         * 23_containers/deque/requirements
7027         * 23_containers/deque/requirements/explicit_instantiation
7028         * 23_containers/deque/requirements/partial_specialization
7029         * 23_containers/deque/requirements/partial_specialization/1.cc
7030         * 23_containers/headers
7031         * 23_containers/headers/bitset
7032         * 23_containers/headers/bitset/synopsis.cc
7033         * 23_containers/headers/deque
7034         * 23_containers/headers/deque/synopsis.cc
7035         * 23_containers/headers/list
7036         * 23_containers/headers/list/synopsis.cc
7037         * 23_containers/headers/map
7038         * 23_containers/headers/map/synopsis.cc
7039         * 23_containers/headers/queue
7040         * 23_containers/headers/queue/synopsis.cc
7041         * 23_containers/headers/set
7042         * 23_containers/headers/set/synopsis.cc
7043         * 23_containers/headers/stack
7044         * 23_containers/headers/stack/synopsis.cc
7045         * 23_containers/headers/vector
7046         * 23_containers/headers/vector/synopsis.cc
7047         * 23_containers/list/requirements
7048         * 23_containers/list/requirements/explicit_instantiation
7049         * 23_containers/list/requirements/partial_specialization
7050         * 23_containers/list/requirements/partial_specialization/1.cc
7051         * 23_containers/map/requirements
7052         * 23_containers/map/requirements/explicit_instantiation
7053         * 23_containers/map/requirements/partial_specialization
7054         * 23_containers/map/requirements/partial_specialization/1.cc
7055         * 23_containers/multimap/requirements
7056         * 23_containers/multimap/requirements/explicit_instantiation
7057         * 23_containers/multimap/requirements/partial_specialization
7058         * 23_containers/multimap/requirements/partial_specialization/1.cc
7059         * 23_containers/multiset/requirements
7060         * 23_containers/multiset/requirements/explicit_instantiation
7061         * 23_containers/multiset/requirements/partial_specialization
7062         * 23_containers/multiset/requirements/partial_specialization/1.cc
7063         * 23_containers/priority_queue/requirements
7064         * 23_containers/priority_queue/requirements/explicit_instantiation
7065         * 23_containers/priority_queue/requirements/explicit_instantiation/1.cc
7066         * 23_containers/queue/requirements
7067         * 23_containers/queue/requirements/explicit_instantiation
7068         * 23_containers/queue/requirements/explicit_instantiation/1.cc
7069         * 23_containers/set/requirements
7070         * 23_containers/set/requirements/explicit_instantiation
7071         * 23_containers/set/requirements/partial_specialization
7072         * 23_containers/set/requirements/partial_specialization/1.cc
7073         * 23_containers/stack/requirements
7074         * 23_containers/stack/requirements/explicit_instantiation
7075         * 23_containers/stack/requirements/explicit_instantiation/1.cc
7076         * 23_containers/vector/requirements
7077         * 23_containers/vector/requirements/explicit_instantiation
7078         * 23_containers/vector/requirements/partial_specialization
7079         * 23_containers/vector/requirements/partial_specialization/1.cc
7080         * 24_iterators/back_insert_iterator
7081         * 24_iterators/back_insert_iterator/2.cc
7082         * 24_iterators/back_insert_iterator/requirements
7083         * 24_iterators/back_insert_iterator/requirements/base_classes.cc
7084         * 24_iterators/back_insert_iterator/requirements/container.cc
7085         * 24_iterators/back_insert_iterator/requirements/
7086         explicit_instantiation.cc
7087         * 24_iterators/back_insert_iterator/requirements/typedefs.cc
7088         * 24_iterators/front_insert_iterator
7089         * 24_iterators/front_insert_iterator/2.cc
7090         * 24_iterators/front_insert_iterator/requirements
7091         * 24_iterators/front_insert_iterator/requirements/base_classes.cc
7092         * 24_iterators/front_insert_iterator/requirements/container.cc
7093         * 24_iterators/front_insert_iterator/requirements/
7094         explicit_instantiation.cc
7095         * 24_iterators/front_insert_iterator/requirements/typedefs.cc
7096         * 24_iterators/headers
7097         * 24_iterators/headers/iterator
7098         * 24_iterators/headers/iterator/synopsis.cc
7099         * 24_iterators/headers/iterator/types_std.cc
7100         * 24_iterators/insert_iterator
7101         * 24_iterators/insert_iterator/2.cc
7102         * 24_iterators/insert_iterator/requirements
7103         * 24_iterators/insert_iterator/requirements/base_classes.cc
7104         * 24_iterators/insert_iterator/requirements/container.cc
7105         * 24_iterators/insert_iterator/requirements/explicit_instantiation.cc
7106         * 24_iterators/insert_iterator/requirements/typedefs.cc
7107         * 24_iterators/istreambuf_iterator/requirements
7108         * 24_iterators/istreambuf_iterator/requirements/base_classes.cc
7109         * 24_iterators/istreambuf_iterator/requirements/
7110         explicit_instantiation.cc
7111         * 24_iterators/istreambuf_iterator/requirements/typedefs.cc
7112         * 24_iterators/istream_iterator
7113         * 24_iterators/istream_iterator/2.cc
7114         * 24_iterators/istream_iterator/requirements
7115         * 24_iterators/istream_iterator/requirements/base_classes.cc
7116         * 24_iterators/istream_iterator/requirements/explicit_instantiation.cc
7117         * 24_iterators/istream_iterator/requirements/typedefs.cc
7118         * 24_iterators/ostreambuf_iterator/requirements
7119         * 24_iterators/ostreambuf_iterator/requirements/base_classes.cc
7120         * 24_iterators/ostreambuf_iterator/requirements/
7121         explicit_instantiation.cc
7122         * 24_iterators/ostreambuf_iterator/requirements/typedefs.cc
7123         * 24_iterators/ostream_iterator
7124         * 24_iterators/ostream_iterator/requirements
7125         * 24_iterators/ostream_iterator/requirements/base_classes.cc
7126         * 24_iterators/ostream_iterator/requirements/explicit_instantiation.cc
7127         * 24_iterators/ostream_iterator/requirements/typedefs.cc
7128         * 24_iterators/random_access_iterator
7129         * 24_iterators/random_access_iterator/26020.cc
7130         * 24_iterators/random_access_iterator/string_vector_iterators.cc
7131         * 24_iterators/reverse_iterator/requirements
7132         * 24_iterators/reverse_iterator/requirements/base_classes.cc
7133         * 24_iterators/reverse_iterator/requirements/current.cc
7134         * 24_iterators/reverse_iterator/requirements/explicit_instantiation.cc
7135         * 24_iterators/reverse_iterator/requirements/typedefs.cc
7136         * 25_algorithms/headers
7137         * 25_algorithms/headers/algorithm
7138         * 25_algorithms/headers/algorithm/synopsis.cc
7139         * 25_algorithms/headers/cstdlib
7140         * 25_algorithms/headers/cstdlib/functions_std.cc
7141         * 26_numerics/headers
7142         * 26_numerics/headers/cmath
7143         * 26_numerics/headers/cmath/19322.cc
7144         * 26_numerics/headers/cmath/c99_classification_macros_c.cc
7145         * 26_numerics/headers/cmath/c99_classification_macros_c++.cc
7146         * 26_numerics/headers/cmath/c_math.cc
7147         * 26_numerics/headers/cmath/c_math_dynamic.cc
7148         * 26_numerics/headers/cmath/fabs_inline.cc
7149         * 26_numerics/headers/cmath/functions_std.cc
7150         * 26_numerics/headers/cmath/macros.cc
7151         * 26_numerics/headers/cmath/overloads.cc
7152         * 26_numerics/headers/cmath/powi.cc
7153         * 26_numerics/headers/complex
7154         * 26_numerics/headers/complex/synopsis.cc
7155         * 26_numerics/headers/cstdlib
7156         * 26_numerics/headers/cstdlib/13943.cc
7157         * 26_numerics/headers/cstdlib/2190.cc
7158         * 26_numerics/headers/cstdlib/functions_std.cc
7159         * 26_numerics/headers/cstdlib/macros.cc
7160         * 26_numerics/headers/cstdlib/types_std.cc
7161         * 26_numerics/headers/numeric
7162         * 26_numerics/headers/numeric/synopsis.cc
7163         * 26_numerics/headers/valarray
7164         * 26_numerics/headers/valarray/synopsis.cc
7165         * 26_numerics/headers/valarray/types_std.cc
7166         * 26_numerics/numeric_arrays
7167         * 26_numerics/numeric_operations
7168         * 27_io/basic_filebuf/cons/2020.cc
7169         * 27_io/basic_filebuf/requirements
7170         * 27_io/basic_filebuf/requirements/base_classes.cc
7171         * 27_io/basic_filebuf/requirements/explicit_instantiation.cc
7172         * 27_io/basic_filebuf/requirements/typedefs.cc
7173         * 27_io/basic_fstream/cons
7174         * 27_io/basic_fstream/cons/3.cc
7175         * 27_io/basic_fstream/requirements
7176         * 27_io/basic_fstream/requirements/base_classes.cc
7177         * 27_io/basic_fstream/requirements/explicit_instantiation.cc
7178         * 27_io/basic_fstream/requirements/typedefs.cc
7179         * 27_io/basic_ifstream/cons/2020.cc
7180         * 27_io/basic_ifstream/requirements
7181         * 27_io/basic_ifstream/requirements/base_classes.cc
7182         * 27_io/basic_ifstream/requirements/explicit_instantiation.cc
7183         * 27_io/basic_ifstream/requirements/typedefs.cc
7184         * 27_io/basic_ios/cons/2020.cc
7185         * 27_io/basic_ios/requirements
7186         * 27_io/basic_ios/requirements/base_classes.cc
7187         * 27_io/basic_ios/requirements/explicit_instantiation.cc
7188         * 27_io/basic_ios/requirements/typedefs.cc
7189         * 27_io/basic_iostream/cons
7190         * 27_io/basic_iostream/cons/2020.cc
7191         * 27_io/basic_iostream/requirements
7192         * 27_io/basic_iostream/requirements/base_classes.cc
7193         * 27_io/basic_iostream/requirements/explicit_instantiation.cc
7194         * 27_io/basic_iostream/requirements/typedefs.cc
7195         * 27_io/basic_istream/cons
7196         * 27_io/basic_istream/cons/3.cc
7197         * 27_io/basic_istream/requirements
7198         * 27_io/basic_istream/requirements/base_classes.cc
7199         * 27_io/basic_istream/requirements/explicit_instantiation.cc
7200         * 27_io/basic_istream/requirements/typedefs.cc
7201         * 27_io/basic_istringstream/cons
7202         * 27_io/basic_istringstream/cons/2020.cc
7203         * 27_io/basic_istringstream/requirements
7204         * 27_io/basic_istringstream/requirements/base_classes.cc
7205         * 27_io/basic_istringstream/requirements/explicit_instantiation.cc
7206         * 27_io/basic_istringstream/requirements/typedefs.cc
7207         * 27_io/basic_ofstream/cons/2020.cc
7208         * 27_io/basic_ofstream/requirements
7209         * 27_io/basic_ofstream/requirements/base_classes.cc
7210         * 27_io/basic_ofstream/requirements/explicit_instantiations.cc
7211         * 27_io/basic_ofstream/requirements/typedefs.cc
7212         * 27_io/basic_ostream/cons/2020.cc
7213         * 27_io/basic_ostream/requirements
7214         * 27_io/basic_ostream/requirements/base_classes.cc
7215         * 27_io/basic_ostream/requirements/explicit_instantiation.cc
7216         * 27_io/basic_ostream/requirements/typedefs.cc
7217         * 27_io/basic_ostringstream/cons/2020.cc
7218         * 27_io/basic_ostringstream/requirements
7219         * 27_io/basic_ostringstream/requirements/base_classes.cc
7220         * 27_io/basic_ostringstream/requirements/explicit_instantiation.cc
7221         * 27_io/basic_ostringstream/requirements/typedefs.cc
7222         * 27_io/basic_streambuf/cons/2020.cc
7223         * 27_io/basic_streambuf/requirements
7224         * 27_io/basic_streambuf/requirements/base_classes.cc
7225         * 27_io/basic_streambuf/requirements/typedefs.cc
7226         * 27_io/basic_stringbuf/cons/2020.cc
7227         * 27_io/basic_stringbuf/requirements
7228         * 27_io/basic_stringbuf/requirements/base_classes.cc
7229         * 27_io/basic_stringbuf/requirements/explicit_instantiation
7230         * 27_io/basic_stringbuf/requirements/explicit_instantiation/2.cc
7231         * 27_io/basic_stringbuf/requirements/explicit_instantiation/4.cc
7232         * 27_io/basic_stringbuf/requirements/typedefs.cc
7233         * 27_io/basic_stringstream/cons
7234         * 27_io/basic_stringstream/cons/2020.cc
7235         * 27_io/basic_stringstream/requirements
7236         * 27_io/basic_stringstream/requirements/base_classes.cc
7237         * 27_io/basic_stringstream/requirements/explicit_instantiation.cc
7238         * 27_io/basic_stringstream/requirements/typedefs.cc
7239         * 27_io/fpos/requirements
7240         * 27_io/fpos/requirements/explicit_instantiation.cc
7241         * 27_io/headers
7242         * 27_io/headers/cstdio
7243         * 27_io/headers/cstdio/functions_std.cc
7244         * 27_io/headers/cstdio/macros.cc
7245         * 27_io/headers/cstdio/types_std.cc
7246         * 27_io/headers/cstdlib
7247         * 27_io/headers/fstream
7248         * 27_io/headers/fstream/synopsis.cc
7249         * 27_io/headers/fstream/types_std.cc
7250         * 27_io/headers/iomanip
7251         * 27_io/headers/iomanip/synopsis.cc
7252         * 27_io/headers/ios
7253         * 27_io/headers/ios/synopsis.cc
7254         * 27_io/headers/iostream
7255         * 27_io/headers/iostream/synopsis.cc
7256         * 27_io/headers/iostream/types_std.cc
7257         * 27_io/headers/ios/types_std.cc
7258         * 27_io/headers/istream
7259         * 27_io/headers/istream/synopsis.cc
7260         * 27_io/headers/istream/types_std.cc
7261         * 27_io/headers/ostream
7262         * 27_io/headers/ostream/synopsis.cc
7263         * 27_io/headers/ostream/types_std.cc
7264         * 27_io/headers/sstream
7265         * 27_io/headers/sstream/synopsis.cc
7266         * 27_io/headers/sstream/types_std.cc
7267         * 27_io/headers/streambuf
7268         * 27_io/headers/streambuf/synopsis.cc
7269         * 27_io/headers/streambuf/types_std.cc
7270         * ext/debug_allocator/explicit_instantiation.cc
7271         * ext/hash_map/requirements
7272         * ext/hash_map/requirements/explicit_instantiation.cc
7273         * ext/hash_set/requirements
7274         * ext/hash_set/requirements/explicit_instantiation.cc
7275         * ext/malloc_allocator/explicit_instantiation.cc
7276         * ext/mt_allocator/explicit_instantiation.cc
7277         * ext/pool_allocator/explicit_instantiation.cc
7278         * ext/slist/requirements
7279         * ext/slist/requirements/explicit_instantiation.cc
7280         * ext/stdio_filebuf/requirements
7281         * ext/stdio_filebuf/requirements/explicit_instantiation.cc
7282         * ext/vstring/requirements
7283         * ext/vstring/requirements/explicit_instantiation
7284         * tr1/2_general_utilities/headers
7285         * tr1/2_general_utilities/headers/functional
7286         * tr1/2_general_utilities/headers/functional/synopsis.cc
7287         * tr1/2_general_utilities/headers/memory
7288         * tr1/2_general_utilities/headers/memory/synopsis.cc
7289         * tr1/2_general_utilities/headers/memory/types_std_tr1.cc
7290         * tr1/2_general_utilities/memory/enable_shared_from_this/requirements
7291         * tr1/2_general_utilities/memory/enable_shared_from_this/
7292         requirements/explicit_instantiation
7293         * tr1/2_general_utilities/memory/shared_ptr/requirements
7294         * tr1/2_general_utilities/memory/shared_ptr/requirements/
7295         explicit_instantiation
7296         * tr1/2_general_utilities/memory/weak_ptr/requirements
7297         * tr1/2_general_utilities/memory/weak_ptr/requirements/
7298         explicit_instantiation
7299         * tr1/3_function_objects/headers
7300         * tr1/3_function_objects/headers/functional
7301         * tr1/3_function_objects/headers/functional/synopsis.cc
7302         * tr1/3_function_objects/headers/functional/types_std_tr1.cc
7303         * tr1/3_function_objects/headers/functional/
7304         using_namespace_std_tr1_placeholders.cc
7305         * tr1/4_metaprogramming/headers
7306         * tr1/4_metaprogramming/headers/type_traits
7307         * tr1/4_metaprogramming/headers/type_traits/synopsis.cc
7308         * tr1/4_metaprogramming/headers/type_traits/types_std_tr1.cc
7309         * tr1/5_numerical_facilities/headers
7310         * tr1/5_numerical_facilities/headers/random
7311         * tr1/5_numerical_facilities/headers/random/synopsis.cc
7312         * tr1/5_numerical_facilities/headers/random/types_std_tr1.cc
7313         * tr1/5_numerical_facilities/random/discard_block/
7314         requirements/typedefs.cc
7315         * tr1/6_containers/array/requirements/explicit_instantiation.cc
7316         * tr1/6_containers/hash
7317         * tr1/6_containers/hash/requirements
7318         * tr1/6_containers/hash/requirements/base_classes.cc
7319         * tr1/6_containers/hash/requirements/explicit_instantiation.cc
7320         * tr1/6_containers/headers
7321         * tr1/6_containers/headers/array
7322         * tr1/6_containers/headers/array/synopsis.cc
7323         * tr1/6_containers/headers/functional
7324         * tr1/6_containers/headers/functional/synopsis.cc
7325         * tr1/6_containers/headers/tuple
7326         * tr1/6_containers/headers/tuple/synopsis.cc
7327         * tr1/6_containers/headers/tuple/types_std_tr1.cc
7328         * tr1/6_containers/headers/unordered_map
7329         * tr1/6_containers/headers/unordered_map/synopsis.cc
7330         * tr1/6_containers/headers/unordered_set
7331         * tr1/6_containers/headers/unordered_set/synopsis.cc
7332         * tr1/6_containers/tuple/requirements
7333         * tr1/6_containers/tuple/requirements/explicit_instantiation.cc
7334         * tr1/6_containers/unordered_map
7335         * tr1/6_containers/unordered_map/24064.cc
7336         * tr1/6_containers/unordered_map/capacity
7337         * tr1/6_containers/unordered_map/capacity/29134-map.cc
7338         * tr1/6_containers/unordered_map/erase
7339         * tr1/6_containers/unordered_map/erase/24061-map.cc
7340         * tr1/6_containers/unordered_map/find
7341         * tr1/6_containers/unordered_map/find/map1.cc
7342         * tr1/6_containers/unordered_map/insert
7343         * tr1/6_containers/unordered_map/insert/24061-map.cc
7344         * tr1/6_containers/unordered_map/insert/array_syntax.cc
7345         * tr1/6_containers/unordered_map/insert/map_range.cc
7346         * tr1/6_containers/unordered_map/insert/map_single.cc
7347         * tr1/6_containers/unordered_map/requirements
7348         * tr1/6_containers/unordered_map/requirements/explicit_instantiation.cc
7349         * tr1/6_containers/unordered_map/requirements/iterator_neg.cc
7350         * tr1/6_containers/unordered_map/requirements/iterator_null_neg.cc
7351         * tr1/6_containers/unordered_map/swap
7352         * tr1/6_containers/unordered_map/swap/1.cc
7353         * tr1/6_containers/unordered_map/swap/2.cc
7354         * tr1/6_containers/unordered_multimap
7355         * tr1/6_containers/unordered_multimap/capacity
7356         * tr1/6_containers/unordered_multimap/capacity/29134-multimap.cc
7357         * tr1/6_containers/unordered_multimap/erase
7358         * tr1/6_containers/unordered_multimap/erase/24061-multimap.cc
7359         * tr1/6_containers/unordered_multimap/find
7360         * tr1/6_containers/unordered_multimap/find/multimap1.cc
7361         * tr1/6_containers/unordered_multimap/insert
7362         * tr1/6_containers/unordered_multimap/insert/24061-multimap.cc
7363         * tr1/6_containers/unordered_multimap/insert/multimap_range.cc
7364         * tr1/6_containers/unordered_multimap/insert/multimap_single.cc
7365         * tr1/6_containers/unordered_multimap/requirements
7366         * tr1/6_containers/unordered_multimap/requirements/
7367         explicit_instantiation.cc
7368         * tr1/6_containers/unordered_multimap/requirements/iterator_neg.cc
7369         * tr1/6_containers/unordered_multimap/requirements/iterator_null_neg.cc
7370         * tr1/6_containers/unordered_multimap/swap
7371         * tr1/6_containers/unordered_multimap/swap/1.cc
7372         * tr1/6_containers/unordered_multimap/swap/2.cc
7373         * tr1/6_containers/unordered_multiset
7374         * tr1/6_containers/unordered_multiset/24054.cc
7375         * tr1/6_containers/unordered_multiset/capacity
7376         * tr1/6_containers/unordered_multiset/capacity/29134-multiset.cc
7377         * tr1/6_containers/unordered_multiset/erase
7378         * tr1/6_containers/unordered_multiset/erase/24061-multiset.cc
7379         * tr1/6_containers/unordered_multiset/find
7380         * tr1/6_containers/unordered_multiset/find/multiset1.cc
7381         * tr1/6_containers/unordered_multiset/insert
7382         * tr1/6_containers/unordered_multiset/insert/24061-multiset.cc
7383         * tr1/6_containers/unordered_multiset/insert/multiset_range.cc
7384         * tr1/6_containers/unordered_multiset/insert/multiset_single.cc
7385         * tr1/6_containers/unordered_multiset/requirements
7386         * tr1/6_containers/unordered_multiset/requirements/
7387         explicit_instantiation.cc
7388         * tr1/6_containers/unordered_multiset/requirements/iterator_neg.cc
7389         * tr1/6_containers/unordered_multiset/requirements/iterator_null_neg.cc
7390         * tr1/6_containers/unordered_multiset/swap
7391         * tr1/6_containers/unordered_multiset/swap/1.cc
7392         * tr1/6_containers/unordered_multiset/swap/2.cc
7393         * tr1/6_containers/unordered_set
7394         * tr1/6_containers/unordered_set/23053.cc
7395         * tr1/6_containers/unordered_set/23465.cc
7396         * tr1/6_containers/unordered_set/26127.cc
7397         * tr1/6_containers/unordered_set/26132.cc
7398         * tr1/6_containers/unordered_set/capacity
7399         * tr1/6_containers/unordered_set/capacity/29134-set.cc
7400         * tr1/6_containers/unordered_set/erase
7401         * tr1/6_containers/unordered_set/erase/24061-set.cc
7402         * tr1/6_containers/unordered_set/find
7403         * tr1/6_containers/unordered_set/find/set1.cc
7404         * tr1/6_containers/unordered_set/insert
7405         * tr1/6_containers/unordered_set/insert/24061-set.cc
7406         * tr1/6_containers/unordered_set/insert/set_range.cc
7407         * tr1/6_containers/unordered_set/insert/set_single.cc
7408         * tr1/6_containers/unordered_set/requirements
7409         * tr1/6_containers/unordered_set/requirements/explicit_instantiation.cc
7410         * tr1/6_containers/unordered_set/requirements/iterator_neg.cc
7411         * tr1/6_containers/unordered_set/requirements/iterator_null_neg.cc
7412         * tr1/6_containers/unordered_set/requirements/
7413         iterators_default_constructor.cc
7414         * tr1/6_containers/unordered_set/swap
7415         * tr1/6_containers/unordered_set/swap/1.cc
7416         * tr1/6_containers/unordered_set/swap/2.cc
7417         * tr1/using_namespace_std_tr1.cc
7418
7419         Deleted in testsuite:
7420         * 17_intro/header_cassert.cc
7421         * 17_intro/header_cerrno.cc
7422         * 17_intro/header_csetjmp.cc
7423         * 17_intro/header_cstdarg.cc
7424         * 17_intro/header_cstddef.cc
7425         * 17_intro/header_cstdio.cc
7426         * 17_intro/header_cstdlib.cc
7427         * 17_intro/header_cstring.cc
7428         * 17_intro/header_ctime.cc
7429         * 17_intro/header_cwchar.cc
7430         * 17_intro/header_cwctype.cc
7431         * 17_intro/header_fstream.cc
7432         * 17_intro/header_iomanip.cc
7433         * 17_intro/header_ios.cc
7434         * 17_intro/header_iosfwd.cc
7435         * 17_intro/header_iostream.cc
7436         * 17_intro/header_istream.cc
7437         * 17_intro/header_ostream.cc
7438         * 17_intro/headers.cc
7439         * 17_intro/headers_c++_c++0x_compat.cc
7440         * 17_intro/headers_c.cc
7441         * 17_intro/headers_c++.cc
7442         * 17_intro/header_sstream.cc
7443         * 17_intro/header_streambuf.cc
7444         * 17_intro/no_assert_neg.cc
7445         * 18_support/numeric_limits/sign.cc
7446         * 18_support/numeric_limits/specialization.cc
7447         * 20_util/memory/raw_storage_iterator.cc
7448         * 21_strings/basic_string/1.cc
7449         * 21_strings/basic_string/2.cc
7450         * 22_locale/codecvt/1.cc
7451         * 22_locale/codecvt/2.cc
7452         * 22_locale/codecvt_byname/1.cc
7453         * 22_locale/collate/1.cc
7454         * 22_locale/collate/2.cc
7455         * 22_locale/collate_byname/1.cc
7456         * 22_locale/ctype/1.cc
7457         * 22_locale/ctype_base/1.cc
7458         * 22_locale/messages/1.cc
7459         * 22_locale/messages/2.cc
7460         * 22_locale/messages_byname/1.cc
7461         * 22_locale/money_get/1.cc
7462         * 22_locale/money_get/2.cc
7463         * 22_locale/money_get/3.cc
7464         * 22_locale/moneypunct/1.cc
7465         * 22_locale/moneypunct/2.cc
7466         * 22_locale/moneypunct/3.cc
7467         * 22_locale/moneypunct_byname/1.cc
7468         * 22_locale/money_put/1.cc
7469         * 22_locale/money_put/2.cc
7470         * 22_locale/money_put/3.cc
7471         * 22_locale/num_get/1.cc
7472         * 22_locale/num_get/2.cc
7473         * 22_locale/num_get/3.cc
7474         * 22_locale/numpunct/1.cc
7475         * 22_locale/numpunct/2.cc
7476         * 22_locale/numpunct_byname/1.cc
7477         * 22_locale/num_put/1.cc
7478         * 22_locale/num_put/2.cc
7479         * 22_locale/num_put/3.cc
7480         * 22_locale/time_get/1.cc
7481         * 22_locale/time_get/2.cc
7482         * 22_locale/time_put/1.cc
7483         * 22_locale/time_put/2.cc
7484         * 23_containers/deque/1.cc
7485         * 23_containers/deque/explicit_instantiation
7486         * 23_containers/deque/explicit_instantiation/1.cc
7487         * 23_containers/deque/explicit_instantiation/2.cc
7488         * 23_containers/deque/explicit_instantiation/3.cc
7489         * 23_containers/list/1.cc
7490         * 23_containers/list/explicit_instantiation
7491         * 23_containers/list/explicit_instantiation/1.cc
7492         * 23_containers/list/explicit_instantiation/2.cc
7493         * 23_containers/list/explicit_instantiation/3.cc
7494         * 23_containers/map/1.cc
7495         * 23_containers/map/explicit_instantiation
7496         * 23_containers/map/explicit_instantiation/1.cc
7497         * 23_containers/map/explicit_instantiation/2.cc
7498         * 23_containers/map/explicit_instantiation/3.cc
7499         * 23_containers/multimap/1.cc
7500         * 23_containers/multimap/explicit_instantiation
7501         * 23_containers/multimap/explicit_instantiation/1.cc
7502         * 23_containers/multimap/explicit_instantiation/2.cc
7503         * 23_containers/multimap/explicit_instantiation/3.cc
7504         * 23_containers/multiset/1.cc
7505         * 23_containers/multiset/explicit_instantiation
7506         * 23_containers/multiset/explicit_instantiation/1.cc
7507         * 23_containers/multiset/explicit_instantiation/2.cc
7508         * 23_containers/multiset/explicit_instantiation/3.cc
7509         * 23_containers/set/1.cc
7510         * 23_containers/set/explicit_instantiation
7511         * 23_containers/set/explicit_instantiation/1.cc
7512         * 23_containers/set/explicit_instantiation/2.cc
7513         * 23_containers/set/explicit_instantiation/3.cc
7514         * 23_containers/vector/1.cc
7515         * 23_containers/vector/explicit_instantiation
7516         * 23_containers/vector/explicit_instantiation/1.cc
7517         * 23_containers/vector/explicit_instantiation/2.cc
7518         * 23_containers/vector/explicit_instantiation/3.cc
7519         * 24_iterators/26020.cc
7520         * 24_iterators/back_insert_iterator.cc
7521         * 24_iterators/front_insert_iterator.cc
7522         * 24_iterators/insert_iterator.cc
7523         * 24_iterators/istreambuf_iterator/1.cc
7524         * 24_iterators/istream_iterator.cc
7525         * 24_iterators/iterator.cc
7526         * 24_iterators/ostreambuf_iterator/1.cc
7527         * 24_iterators/ostream_iterator.cc
7528         * 24_iterators/reverse_iterator/1.cc
7529         * 26_numerics/cmath
7530         * 26_numerics/cmath/19322.cc
7531         * 26_numerics/cmath/c99_classification_macros_c.cc
7532         * 26_numerics/cmath/c99_classification_macros_c++.cc
7533         * 26_numerics/cmath/c_math.cc
7534         * 26_numerics/cmath/c_math_dynamic.cc
7535         * 26_numerics/cmath/fabs_inline.cc
7536         * 26_numerics/cmath/overloads.cc
7537         * 26_numerics/cmath/powi.cc
7538         * 26_numerics/cstdlib
7539         * 26_numerics/cstdlib/13943.cc
7540         * 26_numerics/numeric
7541         * 26_numerics/numeric/sum_diff.cc
7542         * 26_numerics/valarray
7543         * 26_numerics/valarray/27867.cc
7544         * 26_numerics/valarray/28277.cc
7545         * 26_numerics/valarray/30416.cc
7546         * 26_numerics/valarray/binary_closure.cc
7547         * 26_numerics/valarray/dr543.cc
7548         * 26_numerics/valarray/slice_array_assignment.cc
7549         * 26_numerics/valarray/slice.cc
7550         * 26_numerics/valarray/valarray.cc
7551         * 26_numerics/valarray/valarray_const_bracket.cc
7552         * 26_numerics/valarray/valarray_name_lookup.cc
7553         * 26_numerics/valarray/valarray_operators.cc
7554         * 26_numerics/valarray/valarray_subset_assignment.cc
7555         * 27_io/basic_filebuf/1.cc
7556         * 27_io/basic_filebuf/2.cc
7557         * 27_io/basic_filebuf/3.cc
7558         * 27_io/basic_filebuf/4.cc
7559         * 27_io/basic_fstream/1.cc
7560         * 27_io/basic_fstream/2.cc
7561         * 27_io/basic_fstream/3.cc
7562         * 27_io/basic_fstream/4.cc
7563         * 27_io/basic_ifstream/1.cc
7564         * 27_io/basic_ifstream/2.cc
7565         * 27_io/basic_ifstream/3.cc
7566         * 27_io/basic_ifstream/4.cc
7567         * 27_io/basic_ios/1.cc
7568         * 27_io/basic_ios/2.cc
7569         * 27_io/basic_ios/3.cc
7570         * 27_io/basic_ios/4.cc
7571         * 27_io/basic_iostream/1.cc
7572         * 27_io/basic_iostream/2.cc
7573         * 27_io/basic_iostream/3.cc
7574         * 27_io/basic_iostream/4.cc
7575         * 27_io/basic_istream/1.cc
7576         * 27_io/basic_istream/2.cc
7577         * 27_io/basic_istream/3.cc
7578         * 27_io/basic_istream/4.cc
7579         * 27_io/basic_istringstream/1.cc
7580         * 27_io/basic_istringstream/2.cc
7581         * 27_io/basic_istringstream/3.cc
7582         * 27_io/basic_istringstream/4.cc
7583         * 27_io/basic_ofstream/1.cc
7584         * 27_io/basic_ofstream/2.cc
7585         * 27_io/basic_ofstream/3.cc
7586         * 27_io/basic_ofstream/4.cc
7587         * 27_io/basic_ostream/1.cc
7588         * 27_io/basic_ostream/2.cc
7589         * 27_io/basic_ostream/3.cc
7590         * 27_io/basic_ostream/4.cc
7591         * 27_io/basic_ostringstream/1.cc
7592         * 27_io/basic_ostringstream/2.cc
7593         * 27_io/basic_ostringstream/3.cc
7594         * 27_io/basic_ostringstream/4.cc
7595         * 27_io/basic_streambuf/1.cc
7596         * 27_io/basic_streambuf/2.cc
7597         * 27_io/basic_streambuf/3.cc
7598         * 27_io/basic_stringbuf/1.cc
7599         * 27_io/basic_stringbuf/2.cc
7600         * 27_io/basic_stringbuf/3.cc
7601         * 27_io/basic_stringbuf/4.cc
7602         * 27_io/basic_stringbuf/5.cc
7603         * 27_io/basic_stringstream/1.cc
7604         * 27_io/basic_stringstream/2.cc
7605         * 27_io/basic_stringstream/3.cc
7606         * 27_io/basic_stringstream/4.cc
7607         * 27_io/fpos/1.cc
7608         * ext/debug_allocator/instantiate.cc
7609         * ext/hash_map/instantiate.cc
7610         * ext/hash_set/instantiate.cc
7611         * ext/malloc_allocator/instantiate.cc
7612         * ext/mt_allocator/instantiate.cc
7613         * ext/pool_allocator/instantiate.cc
7614         * ext/slist/instantiate.cc
7615         * ext/stdio_filebuf/char/1.cc
7616         * ext/vstring/explicit_instantiation
7617         * ext/vstring/explicit_instantiation/1.cc
7618         * ext/vstring/explicit_instantiation/2.cc
7619         * ext/vstring/explicit_instantiation/char
7620         * ext/vstring/explicit_instantiation/char/1.cc
7621         * ext/vstring/explicit_instantiation/wchar_t
7622         * ext/vstring/explicit_instantiation/wchar_t/1.cc
7623         * tr1/2_general_utilities/memory/enable_shared_from_this/
7624         explicit_instantiation
7625         * tr1/2_general_utilities/memory/enable_shared_from_this/
7626         explicit_instantiation/1.cc
7627         * tr1/2_general_utilities/memory/shared_ptr/explicit_instantiation
7628         * tr1/2_general_utilities/memory/shared_ptr/explicit_instantiation/1.cc
7629         * tr1/2_general_utilities/memory/weak_ptr/explicit_instantiation
7630         * tr1/2_general_utilities/memory/weak_ptr/explicit_instantiation/1.cc
7631         * tr1/5_numerical_facilities/random/discard_block/requirements/
7632         requirements.cc
7633         * tr1/6_containers/array/requirements/instantiate.cc
7634         * tr1/6_containers/unordered
7635         * tr1/6_containers/unordered/23781.cc
7636         * tr1/6_containers/unordered/capacity
7637         * tr1/6_containers/unordered/capacity/29134-map.cc
7638         * tr1/6_containers/unordered/capacity/29134-multimap.cc
7639         * tr1/6_containers/unordered/capacity/29134-multiset.cc
7640         * tr1/6_containers/unordered/capacity/29134-set.cc
7641         * tr1/6_containers/unordered/erase
7642         * tr1/6_containers/unordered/erase/24061-map.cc
7643         * tr1/6_containers/unordered/erase/24061-multimap.cc
7644         * tr1/6_containers/unordered/erase/24061-multiset.cc
7645         * tr1/6_containers/unordered/erase/24061-set.cc
7646         * tr1/6_containers/unordered/find
7647         * tr1/6_containers/unordered/find/map1.cc
7648         * tr1/6_containers/unordered/find/multimap1.cc
7649         * tr1/6_containers/unordered/find/multiset1.cc
7650         * tr1/6_containers/unordered/find/set1.cc
7651         * tr1/6_containers/unordered/hash
7652         * tr1/6_containers/unordered/hash/24799.cc
7653         * tr1/6_containers/unordered/hashtable
7654         * tr1/6_containers/unordered/hashtable/23053.cc
7655         * tr1/6_containers/unordered/hashtable/23465.cc
7656         * tr1/6_containers/unordered/hashtable/24054.cc
7657         * tr1/6_containers/unordered/hashtable/24064.cc
7658         * tr1/6_containers/unordered/hashtable/26127.cc
7659         * tr1/6_containers/unordered/hashtable/26132.cc
7660         * tr1/6_containers/unordered/hashtable/iterators_default_constructor.cc
7661         * tr1/6_containers/unordered/insert
7662         * tr1/6_containers/unordered/insert/24061-map.cc
7663         * tr1/6_containers/unordered/insert/24061-multimap.cc
7664         * tr1/6_containers/unordered/insert/24061-multiset.cc
7665         * tr1/6_containers/unordered/insert/24061-set.cc
7666         * tr1/6_containers/unordered/insert/array_syntax.cc
7667         * tr1/6_containers/unordered/insert/map_range.cc
7668         * tr1/6_containers/unordered/insert/map_single.cc
7669         * tr1/6_containers/unordered/insert/multimap_range.cc
7670         * tr1/6_containers/unordered/insert/multimap_single.cc
7671         * tr1/6_containers/unordered/insert/multiset_range.cc
7672         * tr1/6_containers/unordered/insert/multiset_single.cc
7673         * tr1/6_containers/unordered/insert/set_range.cc
7674         * tr1/6_containers/unordered/insert/set_single.cc
7675         * tr1/6_containers/unordered/instantiate
7676         * tr1/6_containers/unordered/instantiate/hash.cc
7677         * tr1/6_containers/unordered/instantiate/map.cc
7678         * tr1/6_containers/unordered/instantiate/multimap.cc
7679         * tr1/6_containers/unordered/instantiate/multiset.cc
7680         * tr1/6_containers/unordered/instantiate/set.cc
7681         * tr1/6_containers/unordered/swap
7682         * tr1/6_containers/unordered/swap/unordered_map
7683         * tr1/6_containers/unordered/swap/unordered_map/1.cc
7684         * tr1/6_containers/unordered/swap/unordered_map/2.cc
7685         * tr1/6_containers/unordered/swap/unordered_multimap
7686         * tr1/6_containers/unordered/swap/unordered_multimap/1.cc
7687         * tr1/6_containers/unordered/swap/unordered_multimap/2.cc
7688         * tr1/6_containers/unordered/swap/unordered_multiset
7689         * tr1/6_containers/unordered/swap/unordered_multiset/1.cc
7690         * tr1/6_containers/unordered/swap/unordered_multiset/2.cc
7691         * tr1/6_containers/unordered/swap/unordered_set
7692         * tr1/6_containers/unordered/swap/unordered_set/1.cc
7693         * tr1/6_containers/unordered/swap/unordered_set/2.cc
7694         * tr1/6_containers/unordered/types
7695         * tr1/6_containers/unordered/types/map_iterator.cc
7696         * tr1/6_containers/unordered/types/multimap_iterator.cc
7697         * tr1/6_containers/unordered/types/multiset_iterator.cc
7698         * tr1/6_containers/unordered/types/set_iterator.cc
7699
7700         * testsuite/24_iterators/reverse_iterator/2.cc: To just one
7701         non-requirements test.
7702         * testsuite/ext/headers.cc: Add new includes.
7703         
7704 2007-02-18  Paolo Carlini  <pcarlini@suse.de>
7705
7706         PR libstdc++/28080 (partial)
7707         * include/bits/stl_algobase.h: Do not include <climits>, use
7708         std::numeric_limits.
7709         * include/bits/stl_bvector.h: Use __CHAR_BIT__.
7710         * config/locale/gnu/codecvt_members.cc: Include <climits>.
7711         * config/locale/generic/codecvt_members.cc: Likewise.
7712         * include/std/string: Do not include <algorithm>; do not include
7713         <memory>, include <bits/allocator.h> instead.
7714         * include/ext/vstring_fwd.h: Likewise.
7715         * include/ext/vstring_util.h: Do not include <algorithm>.
7716         * include/tr1/hashtable_policy.h: Include <algorithm>.
7717         * testsuite/21_strings/basic_string/replace/char/1.cc: Likewise.
7718         * testsuite/21_strings/basic_string/replace/wchar_t/1.cc: Likewise.
7719         * testsuite/23_containers/bitset/cons/1.cc: Likewise.
7720         * testsuite/util/testsuite_character.h: Likewise.
7721
7722         * config/locale/gnu/codecvt_members.cc: Also include <cstdlib>,
7723         for MB_CUR_MAX.
7724         * config/locale/generic/codecvt_members.cc: Likewise.
7725
7726 2007-02-16  Paolo Carlini  <pcarlini@suse.de>
7727
7728         Revert.
7729         2007-02-14  Hans-Peter Nilsson  <hp@axis.com>
7730
7731         PR middle-end/30768
7732         * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc:
7733         Xfail ICE for cris-*-*.
7734
7735 2007-02-14  Hans-Peter Nilsson  <hp@axis.com>
7736
7737         PR middle-end/30768
7738         * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc:
7739         Xfail ICE for cris-*-*.
7740
7741 2007-02-14  Benjamin Kosnik  <bkoz@redhat.com>
7742
7743         * configure.ac: Move AM_ICONV to native-only, add HAVE_ICONV for
7744         newlib.
7745         * configure: Regenerate.
7746
7747 2007-02-13  Dirk Mueller  <dmueller@suse.de>
7748
7749         * include/bits/locale_facets.tcc (num_get<>::do_get): Avoid
7750         warning about ambiguous else.
7751
7752 2007-02-12  Paolo Carlini  <pcarlini@suse.de>
7753
7754         PR libstdc++/21172
7755         * include/bits/stl_heap.h (__adjust_heap(_RandomAccessIterator,
7756         _Distance, _Distance, _Tp), __adjust_heap(_RandomAccessIterator,
7757         _Distance, _Distance, _Tp, _Compare)): Avoid potential integer
7758         overflow.
7759
7760         * include/bits/stl_heap.h (__is_heap(_RandomAccessIterator,
7761         _RandomAccessIterator), __is_heap(_RandomAccessIterator,
7762         _RandomAccessIterator, _StrictWeakOrdering): Mark inline.
7763         (make_heap(_RandomAccessIterator, _RandomAccessIterator,
7764         _Compare)): Do not mark inline.
7765
7766         * include/bits/stl_heap.h (push_heap(_RandomAccessIterator,
7767         _RandomAccessIterator), sort_heap(_RandomAccessIterator,
7768         _RandomAccessIterator)): Uncomment __glibcxx_requires_heap.
7769
7770 2007-02-09  Richard Sandiford  <richard@codesourcery.com>
7771
7772         * testsuite/22_locale/time_put/put/wchar_t/1.cc: XFAIL if
7773         dummy_wcsftime.
7774         * testsuite/22_locale/time_put/put/wchar_t/5.cc: Likewise.
7775         * testsuite/22_locale/time_put/put/wchar_t/9.cc: Likewise.
7776         * testsuite/22_locale/time_put/put/wchar_t/10.cc: Likewise.
7777         * testsuite/22_locale/num_get/get/wchar_t/2.cc: XFAIL if lax_strtofp.
7778         * testsuite/22_locale/num_get/get/char/2.cc: Likewise.
7779         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
7780         Likewise.
7781         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/09.cc:
7782         Likewise.
7783         * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
7784         Likewise.
7785         * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc:
7786         Likewise.
7787         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/6.cc:
7788         Likewise.
7789         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/6.cc:
7790         Likewise.
7791         * testsuite/26_numerics/cmath/c99_classification_macros_c++.cc: XFAIL
7792         for uClibc.
7793         * testsuite/26_numerics/cmath/c99_classification_macros_c.cc: Likewise.
7794
7795 2007-02-09  Paolo Carlini  <pcarlini@suse.de>
7796
7797         * scripts/testsuite_flags.in: Add back @LIBICONV@ to SECTIONLDFLAGS.
7798
7799 2007-02-08  Howard Hinnant  <hhinnant@apple.com>
7800
7801         PR libstdc++/17012
7802         * include/bits/list.tcc (list<>::remove): Take care of
7803         &*__first == &__value.
7804         * docs/html/ext/howto.html: Add an entry for DR 526.
7805
7806 2007-02-07  Jakub Jelinek  <jakub@redhat.com>
7807
7808         PR libgomp/28468
7809         * configure: Regenerate.
7810
7811 2007-02-07  Hans-Peter Nilsson  <hp@axis.com>
7812
7813         PR testsuite/28870
7814         * testsuite/27_io/basic_stringbuf/overflow/char/1.cc: Use only
7815         10000 iterations for simulator targets.
7816         * testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Use only 5
7817         iterations for simulator targets.
7818         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Ditto.
7819         * testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Ditto.
7820         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Ditto.
7821         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Ditto.
7822         * testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Ditto.
7823         * testsuite/ext/pb_ds/regression/priority_queue_rand.cc: Ditto.
7824         * testsuite/23_containers/set/modifiers/16728.cc: Use only 10
7825         iterations for simulator targets.
7826
7827 2007-02-06  Benjamin Kosnik  <bkoz@redhat.com>
7828             Marco Trudel  <mtrudel@gmx.ch>
7829
7830         * include/precompiled/extc++.h: Guard include files that assume
7831         iconv support is present from precompilation via
7832         _GLIBCXX_HAVE_ICONV.
7833
7834 2007-02-05  Paolo Carlini  <pcarlini@suse.de>
7835
7836         * include/bits/stl_deque.h (operator<): Qualify call.
7837
7838 2007-02-02  Benjamin Kosnik  <bkoz@redhat.com>
7839
7840         * include/bits/c++config: Consistent macro guards for config includes.
7841         * config/locale/gnu/c_locale.h: Same.
7842         * config/locale/generic/c_locale.h: Same.
7843         * config/allocator/mt_allocator_base.h: Same.
7844         * config/allocator/malloc_allocator_base.h: Same.
7845         * config/allocator/new_allocator_base.h: Same.
7846         * config/allocator/pool_allocator_base.h: Same.
7847         * config/allocator/bitmap_allocator_base.h: Same.
7848         * config/os/vxworks/os_defines.h: Same.
7849         * config/cpu/sh/atomicity.h: Same.
7850         * config/io/c_io_stdio.h: Same.
7851         * config/io/basic_file_stdio.h: Same.
7852
7853 2007-02-01  Paolo Carlini  <pcarlini@suse.de>
7854
7855         PR libstdc++/14493
7856         * libsupc++/typeinfo (bad_cast::what, bad_typeid::what): Declare.
7857         * libsupc++/tinfo.cc: Define.   
7858         * libsupc++/exception (bad_exception::what): Declare.
7859         * libsupc++/eh_exception.cc: Define.
7860         (exception::what): Adjust, don't use typeid.
7861         * libsupc++/new (bad_alloc::what): Declare.
7862         * libsupc++/new_handler.cc: Define.
7863         * config/abi/pre/gnu.ver: Export the new methods @3.4.9; adjust
7864         existing 3.4.10 exports to 3.4.9.
7865         * configure.ac: Adjust to 6.0.9.
7866         * configure: Regenerate.
7867         * testsuite/util/testsuite_abi.cc: Update.
7868         * testsuite/18_support/14493.cc: New.
7869
7870 2007-02-01  Ben Elliston  <bje@au.ibm.com>
7871
7872         * libsupc++/eh_alloc.cc (__cxa_free_exception): Don't refer to the
7873         emergency_buffer using `&array[0][0]' notation, use `array'.
7874
7875 2007-01-30  Benjamin Kosnik  <bkoz@redhat.com>
7876
7877         PR libstdc++/30571
7878         * include/ext/pb_ds/detail/type_utils.hpp: Use C++0x
7879         static_assert if available, if not, centralize PB_DS_STATIC_ASSERT
7880         definition here.
7881         * include/ext/pb_ds/detail/resize_policy/
7882         cc_hash_max_collision_check_resize_trigger_imp.hpp: Remove
7883         PB_DS_STATIC_ASSERT definition.
7884         * include/ext/pb_ds/detail/resize_policy/
7885         hash_load_check_resize_trigger_imp.hpp: Same.
7886         * include/ext/pb_ds/detail/resize_policy/
7887         hash_standard_resize_policy_imp.hpp: Same.
7888         * include/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp: Same.
7889         * include/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp: Same.
7890         * include/ext/pb_ds/detail/pat_trie_/internal_node.hpp: Same.
7891         * include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Same.
7892         * include/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp: Same.
7893         * include/ext/pb_ds/trie_policy.hpp: Same.
7894         * testsuite/util/performance/assoc/timing/
7895         tree_order_statistics_test.hpp: Same.
7896         * testsuite/ext/pb_ds/example/hash_resize_neg.cc: Adjust line numbers.
7897         * testsuite/17_intro/headers_c++_c++0x_compat.cc: New.
7898         
7899         * include/precompiled/extc++.h: Update to current list of ext files.
7900
7901 2007-01-29  Paolo Carlini  <pcarlini@suse.de>
7902
7903         * include/bits/stl_uninitialized.h (uninitialized_copy(const char*,
7904         const char*, char*), uninitialized_copy(const wchar_t*, const wchar_t*,
7905         wchar_t*)): Remove, just forward to std::copy.
7906
7907 2007-01-29  Benjamin Kosnik  <bkoz@redhat.com>
7908
7909         * include/ext/enc_filebuf.h: Resurrect, update.
7910         * include/ext/codecvt_specializations.h: Remove
7911         _GLIBCXX_USE_ICONV, _GLIBCXX_USE_ENCODING_STATE.
7912         * include/bits/localefwd.h: Remove declaration for __enc_traits.
7913         * docs/html/22_locale/codecvt.html: Change __enc_traits to
7914         encoding_state.
7915         * scripts/testsuite_flags.in: Remove ICONV.
7916
7917         * configure.ac: Remove GLIBCXX_CHECK_ICONV_SUPPORT.
7918         * acinclude.m4 (GLIBCXX_CHECK_ICONV_SUPPORT): Remove.
7919         * crossconfig.m4: Remove use of GLIBCXX_CHECK_ICONV_SUPPORT.
7920         * config.h.in: Remove HAVE_ICONV_CLOSE, HAVE_ICONV_OPEN,
7921         HAVE_NL_LANGINFO, _GLIBCXX_USE_ICONV.
7922         * include/Makefile.am: Uglify ICONV_CONST.
7923         * configure: Regenerate.
7924         * aclocal.m4: Regenerate.
7925         * Makefile.in: Regenerate.
7926         * src/Makefile.in: Regenerate.
7927         * po/Makefile.in: Regenerate.
7928         * libmath/Makefile.in: Regenerate.
7929         * include/Makefile.in: Regenerate.
7930         * libsupc++/Makefile.in: Regenerate.
7931         * testsuite/Makefile.in: Regenerate.
7932
7933         * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Use
7934         dg-require-iconv, fix up for encoding_state changes.
7935         * testsuite/ext/enc_filebuf/char/13189.cc: Same.
7936         * testsuite/ext/enc_filebuf/char/13598.cc: Same.
7937         * testsuite/22_locale/codecvt/unicode: Move...
7938         * testsuite/22_locale/codecvt/unicode/char.cc: Move...
7939         * testsuite/22_locale/codecvt/unicode/1.cc: Move...
7940         * testsuite/22_locale/codecvt/unicode/wchar_t.cc: Move...
7941         * testsuite/ext/codecvt: New.
7942         * testsuite/ext/codecvt/char-1.cc: ...here. Also, use dg-require-iconv.
7943         * testsuite/ext/codecvt/char-2.cc: ...here. Same.
7944         * testsuite/ext/codecvt/1.cc: ...here. Same.
7945         * testsuite/ext/codecvt/wchar_t.cc: ...here. Same.
7946         * testsuite/22_locale/locale/cons/unicode: Delete directory.
7947         * testsuite/22_locale/locale/cons/unicode/1.cc: Move...
7948         * testsuite/22_locale/locale/cons/unicode.cc: ...here.
7949
7950 2007-01-28  Paolo Carlini  <pcarlini@suse.de>
7951
7952         * include/bits/locale_facets.tcc (num_get<>::do_get(iter_type,
7953         iter_type, ios_base&, ios_base::iostate&, bool&),
7954         num_put<>::_M_insert_int(_OutIter, ios_base&, _CharT, _ValueT)):
7955         -Wconversion and -Woverflow fixes.
7956         * include/bits/istream.tcc (operator>>(int&), operator>>(short&)):
7957         Likewise.
7958         * include/std/valarray (valarray<>::shift, cshift): Likewise.
7959
7960 2007-01-26  Paolo Carlini  <pcarlini@suse.de>
7961
7962         PR libstdc++/30586
7963         * config/cpu/ia64/atomic_word.h: Just include <bits/cxxabi_tweaks.h>.
7964         * testsuite/abi/30586.cc: New.
7965
7966 2007-01-25  Nathan Myers  <ncm@cantrip.org>
7967
7968         * include/bits/streambuf_iterator.h (istreambuf_iterator<>::equal):
7969         Simplify.
7970
7971 2007-01-24   Steve LoBasso <slobasso@yahoo.com>
7972              Paolo Carlini  <pcarlini@suse.de>
7973
7974         * include/bits/deque.tcc (deque<>::erase(iterator, iterator)):
7975         Fix condition.
7976         * testsuite/23_containers/deque/modifiers/erase/3.cc: New.
7977
7978 2007-01-24  Andrew Pinski  <andrew_pinski@playstation.sony.com>
7979
7980         * libsupc++/eh_personality.cc  (PERSONALITY_FUNCTION): Replace
7981         _Unwind_Word with _uleb128_t in the SJLJ context.
7982
7983 2007-01-24  Benjamin Kosnik  <bkoz@redhat.com>
7984
7985         PR libstdc++/29722 continued
7986         * testsuite/lib/libstdc++.exp (v3_target_compile_as_c): Add
7987         libsupc++ library directory.
7988         * testsuite/abi/cxx_runtime_only_linkage.cc: Remove hard-coded
7989         path specification.
7990         
7991 2007-01-24  Andreas Krebbel  <krebbel1@de.ibm.com>
7992
7993         * libsupc++/eh_personality.cc (parse_lsda_header, check_exception_spec,
7994         get_ttype_entry, empty_exception_spec, PERSONALITY_FUNCTION): Replaced
7995         _Unwind_Word with _uleb128_t and _Unwind_SWord with _sleb128_t.
7996
7997 2007-01-22  Paolo Carlini  <pcarlini@suse.de>
7998
7999         * include/bits/stl_algobase.h (__fill_aux(unsigned char*,
8000         unsigned char*, const unsigned char&), __fill_aux(signed char*,
8001         signed char*, const signed char&), __fill_aux(char*, char*,
8002         const char&), __fill_aux(wchar_t*, wchar_t*, const wchar_t&)):
8003         Take the character by value.
8004         (__fill_n_aux): Likewise.
8005
8006 2007-01-21  Paolo Carlini  <pcarlini@suse.de>
8007
8008         PR libstdc++/30449 (fill, fill_n)
8009         * include/bits/stl_algobase.h (__fill_aux(wchar_t*, wchar_t*,
8010         const wchar_t&), __fill_n_aux(wchar_t*, _Size, const wchar_t&)): New.
8011         (fill(signed char*, signed char*, const signed char&),
8012         fill(unsigned char*, unsigned char*, const unsigned char&),
8013         fill(char*, char*, char&), fill_n(signed char*, _Size,
8014         const signed char&), fill_n(unsigned char*, _Size,
8015         const unsigned char&), fill_n(char*, _Size, char&)): Rename to
8016         __*_aux.
8017         (__fill_normal, __fill_n_normal): New, call the latter.
8018         (fill, fill_n): Adjust, call the latter.        
8019         * testsuite/25_algorithms/fill/4.cc: New.
8020         * testsuite/25_algorithms/fill/5.cc: New.
8021
8022 2007-01-18  Paolo Carlini  <pcarlini@suse.de>
8023
8024         * include/bits/basic_string.h (basic_string<>::_S_compare): Add.
8025         (compare(const basic_string&)): Use it.
8026         * include/bits/basic_string.tcc (compare(size_type, size_type,
8027         const basic_string&), compare(size_type, size_type,
8028         const basic_string&, size_type, size_type), compare(const _CharT*),
8029         compare(size_type, size_type, const _CharT*), compare(size_type,
8030         size_type, const _CharT*, size_type)): Likewise.
8031         * include/ext/vstring_util.h (__vstring_utility<>::_S_compare): Add.
8032         * include/ext/vstring.h (compare(const __versa_string&)): Use it.
8033         * include/ext/vstring.tcc (compare(size_type, size_type,
8034         const __versa_string&), compare(size_type, size_type,
8035         const __versa_string&, size_type, size_type), compare(const _CharT*),
8036         compare(size_type, size_type, const _CharT*), compare(size_type,
8037         size_type, const _CharT*, size_type)): Likewise.
8038
8039 2007-01-15  Ian Lance Taylor  <iant@google.com>
8040             Paolo Carlini  <pcarlini@suse.de>
8041
8042         * include/ext/type_traits.h: Fix __glibcxx_max macro.
8043         * include/std/limits: Likewise.
8044
8045 2007-01-15  Paolo Carlini  <pcarlini@suse.de>
8046
8047         * include/std/valarray (valarray<>::cshift): Fix typo.
8048
8049 2007-01-14  Paolo Carlini  <pcarlini@suse.de>
8050
8051         * include/bits/stl_algobase.h (fill_n(char*, _Size,
8052         const signed char&)): Fix signature.
8053         * testsuite/25_algorithms/fill/3.cc: New.
8054
8055 2007-01-13  John David Anglin  <dave.anglin@nrc-cnrc.gc>
8056
8057         * config/cpu/hppa/atomicity.h (__exchange_and_add): Don't use ordered
8058         store.
8059         (__atomic_add): Likewise.
8060
8061 2007-01-13  Paolo Carlini  <pcarlini@suse.de>
8062
8063         PR libstdc++/14991
8064         * docs/html/17_intro/porting-howto.html ([3]): Mention stdio_filebuf.
8065         * docs/html/17_intro/porting-howto.xml: Remove.
8066
8067         * docs/html/17_intro/porting-howto.html: Remove spurious end tags
8068         pointed out by validator.w3.org.
8069
8070 2007-01-12  Paolo Carlini  <pcarlini@suse.de>
8071
8072         PR libstdc++/30416 (continued)
8073         * include/std/valarray (valarray<>::shift, valarray<>::cshift):
8074         Allways return the same variable, thus facilitating NRVO.
8075
8076 2007-01-12  Paolo Carlini  <pcarlini@suse.de>
8077
8078         PR libstdc++/30416
8079         * include/std/valarray (valarray<>::shift, valarray<>::cshift):
8080         Do not segfault when |n| > size.
8081         * testsuite/26_numerics/valarray/30416.cc: New.
8082
8083 2007-01-06  Paolo Carlini  <pcarlini@suse.de>
8084
8085         PR libstdc++/30365
8086         * crossconfig.m4 (case *-linux*): Run GLIBCXX_CHECK_LFS.
8087         * configure: Regenerate.
8088
8089 2007-01-06  Matthias Klose  <doko@debian.org>
8090
8091         * include/tr1/random (gamma_distribution): Fix typo in formula.
8092         * docs/doxygen/user.cfg.in: Use package amsmath.