OSDN Git Service

c02ac6ff9b637cf897bdb739695d8b514aeb8b83
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
1 2006-02-21  Benjamin Kosnik  <bkoz@redhat.com>
2
3         * include/bits/c++config: Simplify debug namespaces.
4         * include/ext/hash_set: Specialize insert_iterator after norm,
5         debug containers have been (optionally) declared. Use nested
6         namespaces.     
7         * include/ext/hash_map: Same.
8         * include/debug/hash_map.h (insert): Add specialization for value
9         pointer types.
10         * include/debug/hash_set.h (insert): Same.
11         * include/debug/hash_multimap.h: Change __gnu_debug_def to __debug.
12         * include/debug/set.h: Same.
13         * include/debug/bitset: Same.
14         * include/debug/multiset.h: Same.
15         * include/debug/hash_multiset.h: Same.
16         * include/debug/vector: Same.
17         * include/debug/map.h: Same.
18         * include/debug/deque: Same.
19         * include/debug/list: Same.
20         * include/debug/multimap.h. Same.
21         * include/debug/macros.h: Use __gnu_debug.
22         * include/debug/debug.h: Same.
23         * include/debug/formatter.h: Same.
24         * include/debug/safe_sequence.h: Same.
25         * include/debug/functions.h: Same.
26         * include/debug/safe_base.h: Same.
27         * include/debug/safe_iterator.h: Same.
28         * include/debug/safe_iterator.tcc: Same.
29         (_M_invalidate): Adjust compare order.
30         * include/debug/string: Change std::__gnu_debug to __gnu_debug.
31         * include/ext/hashtable.h: Formatting fixes.
32         * include/bits/stl_map.h: Formatting fixes.             
33         * src/compatibility.cc: Adjust compatibility symbols for old debug
34         mode model.     
35         * src/debug_list.cc: Tweak.
36         * src/debug.cc: Adjust namespaces.
37         * docs/html/debug_mode.html: Adjust namespace names.
38         * testsuite/25_algorithms/heap/heap.cc: Restore _GLIBCXX_DEBUG
39         macro guards, as count values differ when in debug mode.        
40         * testsuite/23_containers/vector/26412.cc: Move to...
41         * testsuite/23_containers/vector/26412-1.cc: ... here.
42         * testsuite/23_containers/vector/26412-2.cc: Add.
43
44         * include/ext/pb_assoc/detail/standard_policies.hpp
45         (PB_ASSOC_HASH_NAMESPACE): Remove, use __gnu_cxx::hash_map and
46         std::equal_to.
47
48         * configure.ac (libtool_VERSION): To 6:8:0.
49         * configure: Regenerate.
50         * config/abi/pre/gnu.ver: Revert to exporting __gnu_debug symbols.
51         (GLIBCXX_3.4.8): New.
52         * testsuite/testsuite_abi.cc: Add GLIBCXX_3.4.8 to known versions.
53         
54 2006-02-21  Paolo Carlini  <pcarlini@suse.de>
55
56         * include/tr1/hashtable: Trivial formatting fixes.
57
58 2006-02-20  Paolo Carlini  <pcarlini@suse.de>
59
60         Revert recent commit for libstdc++/26211, now suspended waiting for
61         DR 342 (reopened) to reach a new resolution.
62         * include/bits/istream.tcc (basic_istream<>::tellg, seekg(pos_type),
63         seekg(off_type, ios_base::seekdir)): Remove sentry.
64         * testsuite/27_io/basic_istream/seekg/char/26211.cc: Remove.
65         * testsuite/27_io/basic_istream/seekg/wchar_t/26211.cc: Likewise.
66         * testsuite/27_io/basic_istream/tellg/char/26211.cc: Likewise.
67         * testsuite/27_io/basic_istream/tellg/wchar_t/26211.cc: Likewise.
68         * testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Revert changes.
69         * testsuite/27_io/basic_istream/seekg/wchar_t/8348-1.cc: Likewise.
70         * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
71         * testsuite/27_io/basic_istream/seekg/wchar_t/8348-1.cc: Likewise.
72         * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
73         * testsuite/27_io/basic_istream/tellg/wchar_t/8348.cc: Likewise.
74
75 2006-02-19  Paolo Carlini  <pcarlini@suse.de>
76
77         * include/std/std_sstream.h (basic_stringbuf<>::setbuf): Simply
78         clear the internal _M_string, adjust _M_sync call.
79         * include/bits/sstream.tcc (basic_stringbuf<>::_M_sync): Adjust
80         consistently for calls from setbuf.
81
82 2006-02-17  Paolo Carlini  <pcarlini@suse.de>
83             Howard Hinnant  <hhinnant@apple.com>
84
85         PR libstdc++/26250
86         * include/bits/sstream.tcc (basic_stringbuf<>::overflow): Tweak
87         to leave epgtr() just past the new write position, as per the
88         relevant bits of 27.7.1.3/8 (not changed by DR 432).
89         * testsuite/27_io/basic_stringbuf/overflow/char/26250.cc: New.
90         * testsuite/27_io/basic_stringbuf/overflow/wchar_t/26250.cc: Same.
91
92         * docs/html/ext/howto.html: Add entries for DR 169 and DR 432.
93
94         * include/std/std_sstream.h (basic_stringbuf<>::_M_sync): Move out
95         of line...
96         * include/bits/sstream.tcc: ... here.
97
98 2006-02-16  Joseph S. Myers  <joseph@codesourcery.com>
99
100         PR libstdc++/14939
101         * config/os/uclibc/ctype_base.h, config/os/uclibc/ctype_inline.h,
102         config/os/uclibc/ctype_noninline.h, config/os/uclibc/os_defines.h:
103         New.
104         * acinclude.m4 (GLIBCXX_CONFIGURE): Test whether using uClibc.
105         * configure.host: Use os/uclibc for uClibc.
106         * crossconfig.m4 (*-linux*): Use link tests.  Don't hardcode
107         presence of math functions.
108         * configure: Regenerate.
109
110 2006-02-12  Paolo Carlini  <pcarlini@suse.de>
111
112         PR libstdc++/26211
113         * include/bits/istream.tcc (basic_istream<>::tellg, seekg(pos_type),
114         seekg(off_type, ios_base::seekdir)): Construct a sentry, as per
115         27.6.1.3/1.
116         * testsuite/27_io/basic_istream/seekg/char/26211.cc: New.
117         * testsuite/27_io/basic_istream/seekg/wchar_t/26211.cc: Likewise.
118         * testsuite/27_io/basic_istream/tellg/char/26211.cc: Likewise.
119         * testsuite/27_io/basic_istream/tellg/wchar_t/26211.cc: Likewise.
120         * testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Adjust.
121         * testsuite/27_io/basic_istream/seekg/wchar_t/8348-1.cc: Likewise.
122         * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
123         * testsuite/27_io/basic_istream/seekg/wchar_t/8348-1.cc: Likewise.
124         * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
125         * testsuite/27_io/basic_istream/tellg/wchar_t/8348.cc: Likewise.
126
127 2006-02-10  Paolo Carlini  <pcarlini@suse.de>
128
129         PR libstdc++/26181
130         * include/bits/streambuf.tcc (__copy_streambufs_eof): New, like
131         the existing __copy_streambufs but reporting eof in input.
132         (__copy_streambufs): Just use the latter.
133         * src/streambuf.cc (__copy_streambufs_eof): Adjust specializations
134         of __copy_streambufs.
135         * include/bits/istream.tcc (operator>>(__streambuf_type*)): Use
136         __copy_streambufs_eof instead.
137         * include/std/std_streambuf.h: Adjust.
138         * src/streambuf-inst.cc: Adjust.
139         * config/abi/pre/gnu.ver: Export the new symbols.
140         * testsuite/27_io/basic_istream/extractors_other/char/26181.cc: New.
141         * testsuite/27_io/basic_istream/extractors_other/wchar_t/26181.cc:
142         Likewise.
143         * testsuite/27_io/basic_istream/extractors_other/char/1.cc: Adjust.
144         * testsuite/27_io/basic_istream/extractors_other/wchar_t/1.cc:
145         Likewise.
146
147 2006-02-08  Benjamin Kosnik  <bkoz@redhat.com>
148
149         PR libstdc++/26142
150         * include/debug/debug.h: Move debug alias inside namespace std,
151         same with namespace __gnu_cxx. Add top-level __gnu_debug
152         namespace.      
153         * include/debug/hash_multimap.h: Nest within __gnu_cxx, not
154         std. Also, change nesting namespace name from __gnu_debug_def to
155         __gnu_debug.    
156         * include/debug/hash_map.h: Same.
157         * include/debug/hash_multiset.h: Same.
158         * include/debug/hash_set.h: Same.
159         * docs/html/debug.html: Same.
160         * testsuite/23_containers/vector/26412.cc: New.
161         * testsuite/23_containers/vector/invalidation/1.cc:  Correct
162         qualifications for debug namespace change.
163         * testsuite/23_containers/vector/invalidation/2.cc: Same.
164         * testsuite/23_containers/vector/invalidation/3.cc: Same.
165         * testsuite/23_containers/vector/invalidation/4.cc: Same.
166         * testsuite/23_containers/deque/invalidation/1.cc: Same.
167         * testsuite/23_containers/deque/invalidation/2.cc: Same.
168         * testsuite/23_containers/deque/invalidation/3.cc: Same.
169         * testsuite/23_containers/deque/invalidation/4.cc: Same.
170         * testsuite/23_containers/multiset/invalidation/1.cc: Same.
171         * testsuite/23_containers/multiset/invalidation/2.cc: Same.
172         * testsuite/23_containers/multimap/invalidation/1.cc: Same.
173         * testsuite/23_containers/multimap/invalidation/2.cc: Same.
174         * testsuite/23_containers/bitset/invalidation/1.cc: Same.
175         * testsuite/23_containers/bitset/cons/16020.cc: Same.
176         * testsuite/23_containers/bitset/operations/13838.cc: Same.
177         * testsuite/23_containers/list/invalidation/1.cc: Same.
178         * testsuite/23_containers/list/invalidation/2.cc: Same.
179         * testsuite/23_containers/list/invalidation/3.cc: Same.
180         * testsuite/23_containers/list/invalidation/4.cc: Same.
181         * testsuite/23_containers/set/invalidation/1.cc: Same.
182         * testsuite/23_containers/set/invalidation/2.cc: Same.
183         * testsuite/23_containers/map/invalidation/1.cc: Same.
184         * testsuite/23_containers/map/invalidation/2.cc: Same.
185         * testsuite/23_containers/map/modifiers/insert/16813.cc: Same.
186         * testsuite/21_strings/basic_string/2.cc: Same.
187
188 2006-02-08  Paolo Carlini  <pcarlini@suse.de>
189
190         PR libstdc++/26133  (DR 241, [WP])
191         * include/bits/stl_algo.h (__unique_copy(,,, forward_iterator_tag,
192         output_iterator_tag), __unique_copy(,,, input_iterator_tag,
193         output_iterator_tag), __unique_copy(,,, input_iterator_tag,
194         forward_iterator_tag), and predicated counterparts): Add.
195         (__unique_copy(,,, output_iterator_tag), __unique_copy(,,,
196         forward_iterator_tag), and predicated counterparts): Remove.
197         (unique_copy): Adjust, dispatch to the three helpers above.
198         * testsuite/25_algorithms/unique_copy/2.cc: New.
199         * testsuite/25_algorithms/unique_copy/26133.cc: Likewise.
200         * testsuite/25_algorithms/unique_copy/3.cc: Likewise.   
201         * docs/html/ext/howto.html: Add an entry for DR 241.
202
203         * testsuite/25_algorithms/unique_copy/1.cc: Minor cosmetic changes.
204
205 2006-02-07  Jakub Jelinek  <jakub@redhat.com>
206             Benjamin Kosnik  <bkoz@redhat.com>
207
208         * configure.ac (_GLIBCXX_LONG_DOUBLE_COMPAT): New check.
209         If true, set also port_specific_symbol_files and create
210         as_symver_specs.
211         (GLIBCXX_LDBL_COMPAT): New GLIBCXX_CONDITIONAL.
212         * configure: Rebuilt.
213         * config.h.in: Rebuilt.
214         * config/os/gnu-linux/ldbl-extra.ver: New file.
215         * config/abi/pre/gnu.ver: Make sure no __float128 symbols are
216         exported.
217         * include/bits/c++config (_GLIBCXX_LONG_DOUBLE_COMPAT,
218         _GLIBCXX_LDBL_NAMESPACE, _GLIBCXX_BEGIN_LDBL_NAMESPACE,
219         _GLIBCXX_END_LDBL_NAMESPACE): Define.
220         * include/bits/localefwd.h: Use them to conditionally scope facets.
221         * include/bits/locale_facets.h: Surround std::{money,num}_{get,put}
222         with _GLIBCXX_BEGIN_LDBL_NAMESPACE and _GLIBCXX_END_LDBL_NAMESPACE.
223         Surround std::{money,num}_{get,put}
224         with _GLIBCXX_BEGIN_LDBL_NAMESPACE and _GLIBCXX_END_LDBL_NAMESPACE.
225         [_GLIBCXX_LONG_DOUBLE_COMPAT] (std::money_get): Add __do_get method.
226         [_GLIBCXX_LONG_DOUBLE_COMPAT] (std::money_put): Add __do_put method.
227         [_GLIBCXX_LONG_DOUBLE_COMPAT] (std::num_get): Add __do_get method.
228         [_GLIBCXX_LONG_DOUBLE_COMPAT] (std::num_put): Add __do_put method.
229         * include/bits/locale_facets.tcc: Surround std::{money,num}_{get,put}
230         with _GLIBCXX_BEGIN_LDBL_NAMESPACE and _GLIBCXX_END_LDBL_NAMESPACE.
231         (std::money_get::__do_get, std::money_put::__do_put,
232         std::num_get::__do_get, std::num_put::__do_put): New
233         specializations.
234         * include/Makefile.am: Conditionally define
235         _GLIBCXX_LONG_DOUBLE_COMPAT in c++config.
236         * include/Makefile.in: Regenerate.
237         * src/locale.cc [_GLIBCXX_LONG_DOUBLE_COMPAT] (_GLIBCXX_LOC_ID,
238         _GLIBCXX_SYNC_ID): Define, use them.
239         * src/compatibility-ldbl.cc: New file.
240         * src/complex_io.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Add compatibility
241         symbols.
242         * src/limits.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
243         * src/locale.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
244         * src/locale-inst.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.   
245         * src/locale-misc-inst.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
246         * src/istream-inst.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
247         * src/ostream-inst.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
248         * src/locale.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
249         * src/wlocale-inst.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
250         * src/compatibility.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
251         * config/locale/generic/c_locale.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]:
252         Likewise.
253         * config/locale/gnu/c_locale.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]:
254         Likewise.
255         * src/Makefile.am (libstdc++-symbol.ver): Append instead of
256         insert in the middle if port specific symbol file requests it.
257         (ldbl_compat_sources): New variable.
258         (sources): Use it.
259         (compatibility-ldbl.lo, compatibility-ldbl.o): New rules.
260         * src/Makefile.in: Rebuilt.
261         * testsuite/testsuite_abi.cc: Recognize GLIBCXX_LDBL_3.4,
262         GLIBCXX_LDBL_3.4.7, CXXABI_LDBL_1.3.    
263
264 2006-02-07  Paolo Carlini  <pcarlini@suse.de>   
265
266         * include/tr1/hashtable: Trivial formatting fixes.
267
268 2006-02-07  Paolo Carlini  <pcarlini@suse.de>
269             Zak Kipling  <zak@transversal.com>
270
271         PR libstdc++/26127
272         * include/tr1/hashtable (hashtable<>::key_equal): Define.
273         (hashtable<>::bucket, rehash_base<>::max_load_factor): Fix.
274         * testsuite/tr1/6_containers/unordered/hashtable/26127.cc: New.
275
276 2006-02-07  Paolo Carlini  <pcarlini@suse.de>
277
278         * include/tr1/cmath: New.
279         * include/tr1/cstdlib: Likewise.
280         * include/tr1/ctime: Likewise.
281         * include/tr1/math.h: Likewise. 
282         * include/tr1/stdlib.h: Likewise.
283         * include/Makefile.am: Add.
284         * acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Add <math.h> checks.
285         * testsuite/tr1/8_c_compatibility/cmath/functions.cc: New.
286         * testsuite/tr1/8_c_compatibility/cstdlib/functions.cc: Likewise.
287         * testsuite/tr1/8_c_compatibility/cstdlib/types.cc: Likewise.
288         * testsuite/tr1/headers.cc: Update.     
289
290         * include/tr1/cinttypes: Do not provide abs and div, conflicting
291         with the above overloads for _Longlong types.
292         * include/tr1/inttypes.h: Adjust.
293         * testsuite/tr1/8_c_compatibility/cinttypes/functions.cc: Adjust.
294
295         * docs/html/ext/tr1.html: Update.
296         
297         * testsuite/tr1/8_c_compatibility/cwchar/functions.cc: Tweak.
298
299         * include/Makefile.in: Regenerate.
300         * config.h.in: Likewise.
301         * configure: Likewise.
302
303 2006-02-07  Mark Mitchell  <mark@codesourcery.com>
304
305         * testsuite/testsuite_tr1.h (test_property): New function.
306         * testsuite/tr1/4_metaprogramming/type_properties/extent/extent.cc 
307         (test01) 
308
309 2006-02-05  Paolo Carlini  <pcarlini@suse.de>
310
311         * include/tr1/cstdio: New.
312         * include/tr1/stdio.h: Likewise.
313         * include/Makefile.am: Add.
314         * testsuite/tr1/8_c_compatibility/cstdio/functions.cc: New.
315         * testsuite/tr1/headers.cc: Update.     
316         * docs/html/ext/tr1.html: Update.
317
318         * include/tr1/cwchar: Simplify, use _GLIBCXX_USE_C99, consistently
319         with the facilities in std::.
320         * include/tr1/cwctype: Likewise.
321         * testsuite/tr1/8_c_compatibility/cwchar/functions.cc: Tweak.
322         * testsuite/tr1/8_c_compatibility/cwctype/functions.cc: Likewise.
323         * acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Remove <wchar.h> and
324         <wctype.h> checks.
325
326         * include/Makefile.in: Regenerate.
327         * config.h.in: Likewise.
328         * configure: Likewise.
329
330 2006-02-04  Paolo Carlini  <pcarlini@suse.de>
331
332         * testsuite/tr1/8_c_compatibility/cwchar/functions.cc: Fix.
333
334 2006-02-04  Paolo Carlini  <pcarlini@suse.de>
335
336         * testsuite/27_io/basic_stringbuf/in_avail/char/21955.cc: Avoid
337         warning on string constant.
338
339 2006-02-03  Paolo Carlini  <pcarlini@suse.de>
340
341         * include/tr1/cwchar: New.
342         * include/tr1/cwctype: Likewise.
343         * include/tr1/wchar.h: Likewise.
344         * include/tr1/wctype.h: Likewise.
345         * include/Makefile.am: Add.
346         * testsuite/tr1/8_c_compatibility/cwchar/functions.cc: New.
347         * testsuite/tr1/8_c_compatibility/cwctype/functions.cc: Likewise.
348         * testsuite/tr1/headers.cc: Update.
349         * acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Add <wchar.h> and
350         <wctype.h> checks.
351         * docs/html/ext/tr1.html: Update.
352         * include/Makefile.in: Regenerate.
353         * config.h.in: Likewise.
354         * configure: Likewise.
355
356         * testsuite/tr1/8_c_compatibility/cctype/functions.cc: Cosmetic tweak.
357
358 2006-02-02  Paolo Carlini  <pcarlini@suse.de>
359
360         * include/tr1/cfloat: New.
361         * include/tr1/climits: Likewise.                
362         * include/tr1/cstdarg: Likewise.
363         * include/tr1/ctype.h: Likewise.
364         * include/tr1/fenv.h: Likewise.
365         * include/tr1/float.h: Likewise.
366         * include/tr1/inttypes.h: Likewise.
367         * include/tr1/limits.h: Likewise.
368         * include/tr1/stdint.h: Likewise.
369         * include/tr1/stdarg.h: Likewise.
370         * include/Makefile.am: Add.
371         * include/Makefile.in: Regenerate.
372         * docs/html/ext/tr1.html: Update.
373         * testsuite/tr1/headers.cc: New.
374
375         * include/tr1/cctype: Include <cctype> instead.
376
377 2006-01-31  Paolo Carlini  <pcarlini@suse.de>
378
379         PR libstdc++/21554
380         * include/tr1/array (array<>::_M_instance): Maximally align.
381         * testsuite/ext/array_allocator/2.cc: Do not xfail for powerpc.
382
383 2006-01-31  Ed Smith-Rowland  <3dw4rd@verizon.net>
384
385         * docs/html/faq/index.html ([1.0]): Replace references to CVS
386         with appropriate references to SVN.
387         ([1.3]): Likewise.
388         ([1.4]): Likewise.
389         ([2.3]): Likewise.
390         * docs/html/faq/index.txt: Regenerated.
391
392 2006-01-30  Gabriel Dos Reis  <gdr@integrable-solutions.net>
393
394         * include/bits/valarray_array.h (__valarray_default_construct):
395         Replace use __is_fundamental with __is_pod.
396         (__valarray_fill_construct): Likewise.
397         (__valarray_copy_construct): Likewise.
398         (__valarray_destroy_elements): Likewise.
399         (__valarray_copy): Likewise.
400
401 2006-01-30  Paolo Carlini  <pcarlini@suse.de>
402
403         * acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Do the <inttypes.h>
404         checks only if the <stdint.h> checks are successful.
405         * configure: Regenerate.
406
407 2006-01-30  Paolo Carlini  <pcarlini@suse.de>
408
409         * include/tr1/cinttypes: New.
410         * include/Makefile.am: Add.
411         * testsuite/tr1/8_c_compatibility/cinttypes/functions: New.     
412         * testsuite/tr1/8_c_compatibility/cinttypes/types: Likewise.
413         * acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Add <inttypes.h> checks.
414         * docs/html/ext/tr1.html: Update.
415         * include/Makefile.in: Regenerate.
416         * config.h.in: Likewise.
417         * configure: Likewise.
418
419         * testsuite/tr1/8_c_compatibility/cfenv/functions.cc: Cosmetic tweak.
420         * testsuite/tr1/8_c_compatibility/cfenv/types.cc: Likewise.
421
422         * testsuite/tr1/8_c_compatibility/cstdint/types.cc: Fix, check in
423         std::tr1.
424
425 2006-01-29  Paolo Carlini  <pcarlini@suse.de>
426
427         * include/tr1/cstdint: New.
428         * include/Makefile.am: Add.
429         * testsuite/tr1/8_c_compatibility/cstdint/types: New.
430         * acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Add <stdint.h> checks.
431         * docs/html/ext/tr1.html: Update.
432         * include/Makefile.in: Regenerate.
433         * config.h.in: Likewise.
434         * configure: Likewise.
435
436         * testsuite/tr1/8_c_compatibility/cfenv/types.cc: Cosmetic tweak.
437
438 2006-01-29  Paolo Carlini  <pcarlini@suse.de>
439
440         PR libstdc++/26006
441         * acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Tighten <ctype.h> and
442         <fenv.h> checks.
443         * configure: Regenerate.
444
445 2006-01-26  Paolo Carlini  <pcarlini@suse.de>
446
447         * include/std/std_bitset.h (bitset<>::_M_copy_to_string):
448         Call the internal _Unchecked_set(size_t) instead of set.
449
450 2006-01-26  Paolo Carlini  <pcarlini@suse.de>
451
452         * docs/html/install.html ([Tools you will need beforehand]):
453         Clarify that the de_DE locale is used by configure; clarify
454         that missing localedata leads to skipped tests, not fails.
455
456 2006-01-26  Paolo Carlini  <pcarlini@suse.de>
457
458         * include/tr1/cfenv: New.
459         * include/Makefile.am: Add.
460         * testsuite/tr1/8_c_compatibility/cfenv/functions.cc: New.
461         * testsuite/tr1/8_c_compatibility/cfenv/types.cc: Likewise.
462         * acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Add <fenv.h> checks.
463         * docs/html/ext/tr1.html: Update; add note.
464         * include/Makefile.in: Regenerate.
465         * config.h.in: Likewise.
466         * configure: Likewise.  
467
468         * testsuite/tr1/8_c_compatibility/complex/functions.cc: Tweak.
469         * testsuite/tr1/8_c_compatibility/cctype/functions.cc: Likewise.
470
471         * docs/html/faq/index.html: Fix link to tr1.html text; fix
472         formatting.
473
474 2006-01-25  Paolo Carlini  <pcarlini@suse.de>
475
476         * include/tr1/cctype: New.
477         * include/Makefile.am: Add.
478         * testsuite/tr1/8_c_compatibility/cctype/functions.cc: New.
479         * include/Makefile.in: Regenerate.
480
481         * acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): New, check for C99
482         support to TR1, Chapter 8.
483         * configure.ac: Use it.
484         * include/tr1/complex: Adjust.
485         * config.h.in: Regenerate.
486         * configure: Likewise.
487
488 2006-01-25  Benjamin Kosnik  <bkoz@redhat.com>
489
490         * docs/html/configopts.html: Tweak docs.
491
492         * libsupc++/eh_personality.cc: Fix typos.
493
494 2006-01-24  Paolo Carlini  <pcarlini@suse.de>
495
496         PR libstdc++/25649
497         * include/std/std_istream.h (operator>>(short&), operator>>(int&)):
498         Move out of line...
499         * include/bits/istream.tcc: ... here.
500         * include/std/std_ostream.h (operator<<(short), operator<<(int)):
501         Move out of line...
502         * include/bits/ostream.tcc: ... here.
503
504 2006-01-24  Ed Smith-Rowland  <3dw4rd@verizon.net>
505
506         * docs/html/faq/index.html ([5.2]): Mention TR1 and point to
507         paragraph [5.5], describing it.
508         ([5.5]): New.
509         * docs/html/ext/tr1.html: New.
510
511 2006-01-20  Benjamin Kosnik  <bkoz@redhat.com>
512
513         * acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Verbose ld version
514         reporting.  Disable --gc-sections for old binutils, by version.
515         * configure: Regenerate.
516
517 2006-01-20  Joseph S. Myers  <joseph@codesourcery.com>
518
519         PR libstdc++/25524
520         * include/Makefile.am: Install host-specific headers in multilib
521         subdirectory.
522         * include/Makefile.in: Regenerate.
523
524 2006-01-19  Paolo Carlini  <pcarlini@suse.de>
525
526         Implement list::splice (and merge) bits of N1599
527         * include/bits/stl_list.h (list<>::_M_check_equal_allocators): New.
528         (list<>::splice(iterator, list&), splice(iterator, list&, iterator),
529         splice(iterator, list&, iterator, iterator)): Use it.
530         * include/bits/list.tcc (list<>::merge(list&), merge(list&,
531         _StrictWeakOrdering)): Likewise.
532         * testsuite/23_containers/list/operators/5.cc: New.
533
534 2006-01-19  H.J. Lu  <hongjiu.lu@intel.com>
535
536         PR libstdc++/25797
537         * acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Remove -Werror
538         from CFLAGS.  Check if linker really supports --gc-sections.
539         * configure: Regenerated.
540
541 2006-01-18  Paul Brook  <paul@codesourcery.com>
542
543         * libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Use std::abort.
544
545 2006-01-18  Paolo Carlini  <pcarlini@suse.de>
546
547         * include/bits/allocator.h: Include <bits/cpp_type_traits.h>.
548
549 2006-01-18  Perry Smith  <pedz@easesoftware.net>
550
551         PR libstdc++/25823
552         PR libstdc++/25824
553         * libsupc++/eh_alloc.cc: Fix return type of memset declaration.
554         * libsupc++/eh_globals.cc: If !_GLIBCXX_HOSTED declare malloc and free.
555
556 2006-01-18  Paolo Carlini  <pcarlini@suse.de>
557
558         * include/ext/pb_assoc/detail/value_type_adapter/
559         value_type_adapter.hpp: Include <tr1/type_traits>.
560         * include/ext/pb_assoc/detail/value_type_adapter/
561         it_value_type_traits.hpp (it_value_type_traits_<>::value_type_holder):
562         Use tr1::aligned_storage and tr1::alignment_of.
563         (it_value_type_traits_<>::buf_t): Remove.
564         (it_value_type_traits_<>::make_valid, recast): Adjust.
565
566 2006-01-16  Benjamin Kosnik  <bkoz@redhat.com>
567
568         PR libstdc++/25797
569         * acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Add -Werror to
570         CFLAGS for --gc-sections test.  Correct compile test.
571         * configure: Regenerated.
572         
573 2006-01-15  Paolo Carlini  <pcarlini@suse.de>
574             Gabriel Dos Reis  <gdr@integrable-solutions.net>
575
576         PR libstdc++/25626
577         * include/std/std_valarray.h (valarray(const slice_array<>&),
578         valarray(const gslice_array<>&), valarray(const mask_array<>&),
579         valarray(const indirect_array<>&), valarray(const _Expr<>&)):
580         Forward to __valarray_copy_construct, not __valarray_copy.
581         * include/bits/valarray_array.h
582         (__valarray_copy_construct(_Array<>, _Array<>, _Array<>, size_t),
583         __valarray_copy_construct(_Array<>, size_t, size_t, _Array<>)):
584         New.
585
586 2006-01-15  Paolo Carlini  <pcarlini@suse.de>
587
588         * testsuite/tr1/8_c_compatibility/complex/overloads_int.cc:
589         Fix norm test, use casts everywhere.
590
591 2006-01-14  Paolo Carlini  <pcarlini@suse.de>
592
593         * testsuite/testsuite_tr1.h: Add missing include; use std::__are_same.
594
595 2006-01-14  Paolo Carlini  <pcarlini@suse.de>
596
597         * testsuite/tr1/8_c_compatibility/complex/overloads_int.cc:
598         Fix wrong test (don't pick by mistake the (const complex<>&, int)
599         overload); add some.
600
601 2006-01-13  Paolo Carlini  <pcarlini@suse.de>
602             Howard Hinnant  <hhinnant@apple.com>
603
604         * include/tr1/complex (arg, conj, imag, norm, polar, pow, real):
605         Add, implementing TR1, 8.1.9.
606         (__promote_2): New.
607         * include/tr1/common.h: New, provides __promote, __promote_2.
608         * include/Makefile.am: Add.
609         * include/Makefile.in: Regenerate.
610         * testsuite/testsuite_tr1.h (check_ret_type): New.
611         * testsuite/tr1/8_c_compatibility/complex/overloads_int.cc: New.
612         * testsuite/tr1/8_c_compatibility/complex/overloads_float.cc: New.
613
614 2006-01-12  Benjamin Kosnik  <bkoz@redhat.com>
615
616         * acinclude.m4(GLIBCXX_CHECK_LINKER_FEATURES): Enable
617         --gc-sections in more cases.    
618         * configure: Regenerate.
619         * scripts/testsuite_flags.in: Remove SECTION_LDFLAGS.
620         * scripts/testsuite_flags.in (cxxldflags): New.
621         * testsuite/lib/libstdc++.exp (v3_target_compile): Add cxxldflags.
622         (libstdc++_init ): Same.
623                 
624 2006-01-12  Jan Beulich  <jbeulich@novell.com>
625
626         * crossconfig.m4: Add AC_DEFINE-s for HAVE_HYPOT, HAVE_ISINF, and
627         HAVE_ISNAN for *-*-netware*.
628         * configure: Refresh.
629
630 2006-01-11  Benjamin Kosnik  <bkoz@redhat.com>
631
632         * acinclude.m4(GLIBCXX_CHECK_LINKER_FEATURES): Use -Wl,-z,relro if
633         possible.  
634         * configure: Regenerate.
635
636 2006-01-10  Paolo Carlini  <pcarlini@suse.de>
637
638         * include/tr1/complex: New file, hosts the additions to header
639         <complex> described in TR1, Chapter 8 [tr.c99].
640         * include/Makefile.am: Add.
641         * include/Makefile.in: Regenerate.
642         * testsuite/tr1/8_c_compatibility/complex/functions.cc: New.
643
644 2006-01-09  Paolo Carlini  <pcarlini@suse.de>
645
646         PR libstdc++/25658
647         * testsuite/23_containers/deque/cons/assign/1.cc: Divide
648         sizes by 10.
649
650 2006-01-08  Paolo Carlini  <pcarlini@suse.de>
651
652         PR libstdc++/22102 (insert as close to hint as possible)
653         * include/bits/stl_tree.h (_Rb_tree<>::_M_insert_lower,
654         _M_insert_equal_lower): New.
655         (_M_insert_equal(iterator, const _Val&),
656         _M_insert_equal(const_iterator, const _Val&)): Use the above.
657         * docs/html/ext/howto.html: Add an entry for DR 233.
658         * testsuite/23_containers/multiset/modifiers/insert/22102.cc: New.
659         * testsuite/23_containers/multimap/modifiers/insert/22102.cc: New.
660
661         * testsuite/23_containers/set/insert/: Move...
662         * testsuite/23_containers/set/modifiers/insert/: ...here.
663         * testsuite/23_containers/map/insert/: Move...
664         * testsuite/23_containers/map/modifiers/insert/: ...here.
665         * testsuite/23_containers/multiset/insert/: Move...
666         * testsuite/23_containers/multiset/modifiers/insert/: ...here.
667
668 2006-01-06  Paolo Carlini  <pcarlini@suse.de>
669
670         * include/bits/stl_tree.h (_Rb_tree<>::insert_unique): Rename
671         to _M_insert_unique.
672         (_Rb_tree<>::insert_equal): Rename to _M_insert_equal.
673         * include/bits/stl_map.h (class map<>): Update callers.
674         * include/bits/stl_set.h (class set<>): Likewise.
675         * include/bits/stl_multimap.h (class multimap<>): Likewise.
676         * include/bits/stl_multiset.h (class multiset<>): Likewise.
677
678 2006-01-06  Paolo Carlini  <pcarlini@suse.de>
679
680         * include/bits/stl_bvector.h (vector<bool>::erase(iterator,
681         iterator)): Just use _M_erase_at_end.
682
683 2006-01-06  Paolo Carlini  <pcarlini@suse.de>
684
685         * include/bits/stl_bvector.h (class vector<bool>): Move all the
686         helpers under protected access mode, consistently with the primary
687         vector template.
688         (vector<bool>::_M_erase_at_end): Add.
689         (erase(iterator, iterator), clear, resize, _M_fill_assign,
690         _M_assign_aux): Use it.
691         * testsuite/23_containers/vector/bool/modifiers/erase/1.cc: New.
692
693 2006-01-06  Paolo Carlini  <pcarlini@suse.de>
694
695         Implement Option 3 of DR 431 for vector<bool>.
696         * include/bits/stl_bvector.h (class _Bvector_base): Change to
697         a struct, consistently with the primary vector template.
698         (class vector<bool>): Adjust to protected inheritance, tidy
699         typedefs.
700         (_Bvector_base<>::_M_get_Bit_allocator): Add.
701         (vector<bool>::vector(const vector&)): Use it.
702         (_Bvector_base<>::get_allocator): Tidy.
703         (vector<bool>::swap): Use __alloc_swap.
704         * testsuite/23_containers/vector/bool/modifiers/swap/1.cc: New.
705         * testsuite/23_containers/vector/bool/modifiers/swap/2.cc: New.
706
707 2006-01-05  Paolo Carlini  <pcarlini@suse.de>
708         
709         * testsuite/testsuite_hooks.h (test_tm(unsigned)): Change to
710         take all the tm members.
711         * testsuite/testsuite_hooks.cc (test_tm): Adjust.
712         * testsuite/22_locale/time_put/put/wchar_t/10.cc: Update.
713         * testsuite/22_locale/time_put/put/wchar_t/1.cc: Likewise.
714         * testsuite/22_locale/time_put/put/wchar_t/2.cc: Likewise.
715         * testsuite/22_locale/time_put/put/wchar_t/3.cc: Likewise.
716         * testsuite/22_locale/time_put/put/wchar_t/4.cc: Likewise.
717         * testsuite/22_locale/time_put/put/wchar_t/5.cc: Likewise.
718         * testsuite/22_locale/time_put/put/wchar_t/6.cc: Likewise.
719         * testsuite/22_locale/time_put/put/wchar_t/7.cc: Likewise.
720         * testsuite/22_locale/time_put/put/wchar_t/8.cc: Likewise.
721         * testsuite/22_locale/time_put/put/wchar_t/9.cc: Likewise.
722         * testsuite/22_locale/time_put/put/wchar_t/17038.cc: Likewise.
723         * testsuite/22_locale/time_put/put/char/10.cc: Likewise.
724         * testsuite/22_locale/time_put/put/char/1.cc: Likewise.
725         * testsuite/22_locale/time_put/put/char/2.cc: Likewise.
726         * testsuite/22_locale/time_put/put/char/3.cc: Likewise.
727         * testsuite/22_locale/time_put/put/char/4.cc: Likewise.
728         * testsuite/22_locale/time_put/put/char/5.cc: Likewise.
729         * testsuite/22_locale/time_put/put/char/6.cc: Likewise.
730         * testsuite/22_locale/time_put/put/char/7.cc: Likewise.
731         * testsuite/22_locale/time_put/put/char/8.cc: Likewise.
732         * testsuite/22_locale/time_put/put/char/9.cc: Likewise.
733         * testsuite/22_locale/time_put/put/char/17038.cc: Likewise.
734         * testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Likewise.
735         * testsuite/22_locale/time_get/get_year/wchar_t/3.cc: Likewise.
736         * testsuite/22_locale/time_get/get_year/char/1.cc: Likewise.
737         * testsuite/22_locale/time_get/get_year/char/3.cc: Likewise.
738         * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Likewise.
739         * testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Likewise.
740         * testsuite/22_locale/time_get/get_monthname/char/1.cc: Likewise.
741         * testsuite/22_locale/time_get/get_monthname/char/2.cc: Likewise.
742         * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Likewise.
743         * testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Likewise.
744         * testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
745         * testsuite/22_locale/time_get/get_weekday/char/1.cc: Likewise.
746         * testsuite/22_locale/time_get/get_weekday/char/2.cc: Likewise.
747         * testsuite/22_locale/time_get/get_weekday/char/3.cc: Likewise.
748         * testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Likewise.
749         * testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Likewise.
750         * testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Likewise.
751         * testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Likewise.
752         * testsuite/22_locale/time_get/get_date/wchar_t/3.cc: Likewise.
753         * testsuite/22_locale/time_get/get_date/char/12750.cc: Likewise.
754         * testsuite/22_locale/time_get/get_date/char/12750.cc: Likewise.
755         * testsuite/22_locale/time_get/get_date/char/1.cc: Likewise.
756         * testsuite/22_locale/time_get/get_date/char/2.cc: Likewise.
757         * testsuite/22_locale/time_get/get_date/char/3.cc: Likewise.
758         * testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Likewise.
759         * testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Likewise.
760         * testsuite/22_locale/time_get/get_time/wchar_t/3.cc: Likewise.
761         * testsuite/22_locale/time_get/get_time/wchar_t/4.cc: Likewise.
762         * testsuite/22_locale/time_get/get_time/char/1.cc: Likewise.
763         * testsuite/22_locale/time_get/get_time/char/2.cc: Likewise.
764         * testsuite/22_locale/time_get/get_time/char/3.cc: Likewise.
765         * testsuite/22_locale/time_get/get_time/char/4.cc: Likewise.
766
767 2006-01-05  Paolo Carlini  <pcarlini@suse.de>
768         
769         * testsuite/testsuite_hooks.h (test_tm(unsigned)): New.
770         * testsuite/testsuite_hooks.cc (test_tm(unsigned)): Define.
771         * testsuite/22_locale/time_put/put/wchar_t/10.cc: Use it.
772         * testsuite/22_locale/time_put/put/wchar_t/1.cc: Likewise.
773         * testsuite/22_locale/time_put/put/wchar_t/2.cc: Likewise.
774         * testsuite/22_locale/time_put/put/wchar_t/3.cc: Likewise.
775         * testsuite/22_locale/time_put/put/wchar_t/4.cc: Likewise.
776         * testsuite/22_locale/time_put/put/wchar_t/5.cc: Likewise.
777         * testsuite/22_locale/time_put/put/wchar_t/6.cc: Likewise.
778         * testsuite/22_locale/time_put/put/wchar_t/7.cc: Likewise.
779         * testsuite/22_locale/time_put/put/wchar_t/8.cc: Likewise.
780         * testsuite/22_locale/time_put/put/wchar_t/9.cc: Likewise.
781         * testsuite/22_locale/time_put/put/wchar_t/17038.cc: Likewise.
782         * testsuite/22_locale/time_put/put/char/10.cc: Likewise.
783         * testsuite/22_locale/time_put/put/char/1.cc: Likewise.
784         * testsuite/22_locale/time_put/put/char/2.cc: Likewise.
785         * testsuite/22_locale/time_put/put/char/3.cc: Likewise.
786         * testsuite/22_locale/time_put/put/char/4.cc: Likewise.
787         * testsuite/22_locale/time_put/put/char/5.cc: Likewise.
788         * testsuite/22_locale/time_put/put/char/6.cc: Likewise.
789         * testsuite/22_locale/time_put/put/char/7.cc: Likewise.
790         * testsuite/22_locale/time_put/put/char/8.cc: Likewise.
791         * testsuite/22_locale/time_put/put/char/9.cc: Likewise.
792         * testsuite/22_locale/time_put/put/char/17038.cc: Likewise.
793         * testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Likewise.
794         * testsuite/22_locale/time_get/get_year/wchar_t/3.cc: Likewise.
795         * testsuite/22_locale/time_get/get_year/char/1.cc: Likewise.
796         * testsuite/22_locale/time_get/get_year/char/3.cc: Likewise.
797         * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Likewise.
798         * testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Likewise.
799         * testsuite/22_locale/time_get/get_monthname/char/1.cc: Likewise.
800         * testsuite/22_locale/time_get/get_monthname/char/2.cc: Likewise.
801         * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Likewise.
802         * testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Likewise.
803         * testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
804         * testsuite/22_locale/time_get/get_weekday/char/1.cc: Likewise.
805         * testsuite/22_locale/time_get/get_weekday/char/2.cc: Likewise.
806         * testsuite/22_locale/time_get/get_weekday/char/3.cc: Likewise.
807         * testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Likewise.
808         * testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Likewise.
809         * testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Likewise.
810         * testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Likewise.
811         * testsuite/22_locale/time_get/get_date/wchar_t/3.cc: Likewise.
812         * testsuite/22_locale/time_get/get_date/char/12750.cc: Likewise.
813         * testsuite/22_locale/time_get/get_date/char/12750.cc: Likewise.
814         * testsuite/22_locale/time_get/get_date/char/1.cc: Likewise.
815         * testsuite/22_locale/time_get/get_date/char/2.cc: Likewise.
816         * testsuite/22_locale/time_get/get_date/char/3.cc: Likewise.
817         * testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Likewise.
818         * testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Likewise.
819         * testsuite/22_locale/time_get/get_time/wchar_t/3.cc: Likewise.
820         * testsuite/22_locale/time_get/get_time/wchar_t/4.cc: Likewise.
821         * testsuite/22_locale/time_get/get_time/char/1.cc: Likewise.
822         * testsuite/22_locale/time_get/get_time/char/2.cc: Likewise.
823         * testsuite/22_locale/time_get/get_time/char/3.cc: Likewise.
824         * testsuite/22_locale/time_get/get_time/char/4.cc: Likewise.
825
826 2006-01-04  Paolo Carlini  <pcarlini@suse.de>
827
828         * include/ext/sso_string_base.h (__sso_string_base<>::_M_dataplus):
829         Use _CharT_alloc_type as base class.
830         (_M_get_allocator, _M_swap, _M_create, _M_destroy): Adjust.
831         * include/ext/vstring.h (get_allocator): Tidy.
832
833 2006-01-04  Paolo Carlini  <pcarlini@suse.de>
834
835         Implement Option 3 of DR 431 for all the containers.
836         * include/bits/allocator.h (struct __alloc_swap): Add, swaps
837         allocators, optimized to nothing in case they are empty.
838         * include/bits/stl_deque.h (deque<>::swap): Use it.
839         * include/bits/stl_list.h (list<>::swap): Likewise.
840         * include/bits/stl_tree.h (_Rb_tree<>::swap): Likewise.
841         * include/bits/stl_vector.h (vector<>::swap): Likewise.
842         * include/tr1/hashtable (hashtable<>::swap): Likewise.
843         * include/ext/rc_string_base.h (__rc_string_base<>::_M_swap):
844         Likewise.
845         * include/ext/sso_string_base.h (__sso_string_base<>::_M_swap):
846         Likewise.
847         * include/ext/vstring_util.h (__vstring_utility<>::_Alloc_hider):
848         Clean-up (now vstring uses the generic __alloc_swap facility).
849         * include/tr1/unordered_map: Adjust includes.
850         * include/tr1/unordered_set: Likewise.
851         * docs/html/ext/howto.html: Add an entry for DR 431.
852         * testsuite/23_containers/deque/modifiers/swap.cc: Move to...
853         * testsuite/23_containers/deque/modifiers/swap/1.cc: ... here.          
854         * testsuite/23_containers/deque/modifiers/swap/2.cc: New.
855         * testsuite/23_containers/deque/modifiers/swap/3.cc: New.
856         * testsuite/23_containers/list/modifiers/swap.cc: Move to...
857         * testsuite/23_containers/list/modifiers/swap/1.cc: ... here.           
858         * testsuite/23_containers/list/modifiers/swap/2.cc: New.
859         * testsuite/23_containers/list/modifiers/swap/3.cc: New.
860         * testsuite/23_containers/vector/modifiers/swap.cc: Move to...
861         * testsuite/23_containers/vector/modifiers/swap/1.cc: ... here.         
862         * testsuite/23_containers/vector/modifiers/swap/2.cc: New.
863         * testsuite/23_containers/vector/modifiers/swap/3.cc: New.
864         * testsuite/23_containers/set/modifiers/swap.cc: Move to...
865         * testsuite/23_containers/set/modifiers/swap/1.cc: ... here.            
866         * testsuite/23_containers/set/modifiers/swap/2.cc: New.
867         * testsuite/23_containers/set/modifiers/swap/3.cc: New.
868         * testsuite/23_containers/map/modifiers/swap.cc: Move to...
869         * testsuite/23_containers/map/modifiers/swap/1.cc: ... here.            
870         * testsuite/23_containers/map/modifiers/swap/2.cc: New.
871         * testsuite/23_containers/map/modifiers/swap/3.cc: New.
872         * testsuite/23_containers/multiset/modifiers/swap.cc: Move to...
873         * testsuite/23_containers/multiset/modifiers/swap/1.cc: ... here.               
874         * testsuite/23_containers/multiset/modifiers/swap/2.cc: New.
875         * testsuite/23_containers/multiset/modifiers/swap/3.cc: New.
876         * testsuite/23_containers/multimap/modifiers/swap.cc: Move to...
877         * testsuite/23_containers/multimap/modifiers/swap/1.cc: ... here.               
878         * testsuite/23_containers/multimap/modifiers/swap/2.cc: New.
879         * testsuite/23_containers/multimap/modifiers/swap/3.cc: New.
880         * testsuite/tr1/6_containers/unordered/swap/unordered_set/1.cc: New.    
881         * testsuite/tr1/6_containers/unordered/swap/unordered_set/2.cc: New.
882         * testsuite/tr1/6_containers/unordered/swap/unordered_map/1.cc: New.    
883         * testsuite/tr1/6_containers/unordered/swap/unordered_map/2.cc: New.
884         * testsuite/tr1/6_containers/unordered/swap/unordered_multiset/1.cc: New.       
885         * testsuite/tr1/6_containers/unordered/swap/unordered_multiset/2.cc: New.
886         * testsuite/tr1/6_containers/unordered/swap/unordered_multimap/1.cc: New.       
887         * testsuite/tr1/6_containers/unordered/swap/unordered_multimap/2.cc: New.
888
889 2006-01-03  Paolo Carlini  <pcarlini@suse.de>
890
891         * include/bits/stl_list.h (_List_base<>::_M_get_Node_allocator): Add.
892         (_M_get_Tp_allocator, get_allocator): Tidy.
893         (list<>::list(const list&), insert(iterator, size_type, const
894         value_type&), insert(iterator, _InputIterator, _InputIterator)):
895         Use _M_get_Node_allocator.
896         * include/bits/stl_tree.h (_Rb_tree<>::_M_get_Node_allocator()): Add.
897         (_Rb_tree(const _Rb_tree<>&): Use it.
898         * include/bits/stl_deque.h (_Deque_base<>::_M_get_map_allocator,
899         get_allocator): Tidy.
900         * include/bits/stl_vector.h (_Vector_base<>::get_allocator): Tidy.
901         * testsuite/23_containers/map/operators/1_neg.cc: Adjust dg-error
902         line numbers.
903         * testsuite/23_containers/set/operators/1_neg.cc: Likewise.
904         
905         * testsuite/testsuite_allocator.h (uneq_allocator<>::swap): Fix.
906
907         * testsuite/testsuite_allocator.h (class uneq_allocator): A simple
908         non-empty testing allocator which can be endowed of a "personality"
909         at construction time.
910
911 2006-01-03  Paolo Carlini  <pcarlini@suse.de>
912
913         * testsuite/27_io/basic_stringstream/str/char/1.cc: Initialize vars.
914         * testsuite/27_io/basic_stringstream/str/wchar_t/1.cc: Likewise.
915         * testsuite/27_io/basic_istringstream/str/char/1.cc: Likewise, tidy.
916         * testsuite/27_io/basic_istringstream/str/wchar_t/1.cc: Likewise.
917
918 2006-01-02  Mark Mitchell  <mark@codesourcery.com>
919
920         * src/Makefile.am (LTLDFLAGS): New variable. 
921         (CXXLINK): Use LTLDFLAGS.
922         * src/Makefile.in: Regenerated.
923         * libsupc++/Makefile.am (LTLDFLAGS): New variable. 
924         (CXXLINK): Use LTLDFLAGS.
925         * libsupc++/Makefile.in: Regenerated.
926
927 2006-01-02  Paolo Carlini  <pcarlini@suse.de>
928
929         PR libstdc++/24645
930         * include/std/std_istream.h (basic_istream<>::_M_extract): New.
931         (operator>>(bool&), operator>>(short&), operator>>(unsigned short&),
932         operator>>(int&), operator>>(unsigned int&), operator>>(long&),
933         operator>>(unsigned long&), operator>>(long long&), operator>>
934         (unsigned long long&), operator>>(float&), operator>>(double&),
935         operator>>(long double&), operator>>(void*&)): Use it.
936         * include/bits/istream.tcc (basic_istream<>::_M_extract): Define.
937         * include/std/std_ostream.h (basic_ostream<>::_M_insert): New.
938         (operator<<(long), operator<<(unsigned long), operator<<(bool),
939         operator<<(short), operator<<(unsigned short), operator<<(int),
940         operator<<(unsigned int), operator<<(long long), operator<<
941         (unsigned long long), operator<<(double), operator<<(float),
942         operator<<(long double), operator<<(const void*): Use it.
943         * include/bits/ostream.tcc (basic_ostream<>::_M_insert): Define.
944         * src/istream-inst.cc: Add _M_extract instantiations.
945         * src/ostream-inst.cc: Add _M_insert instantiations.
946         * config/abi/pre/gnu.ver: Export the new symbols @GLIBCXX_3.4.7;
947         detail existing @GLIBCXX_3.4 exports of basic_ostream, num_put,
948         money_put, etc., symbols to avoid exporting _M_insert symbols
949         @GLIBCXX_3.4.