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