OSDN Git Service

2006-01-25 Paolo Carlini <pcarlini@suse.de>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
1 2006-01-25  Paolo Carlini  <pcarlini@suse.de>
2
3         * include/tr1/cctype: New.
4         * include/Makefile.am: Add.
5         * testsuite/tr1/8_c_compatibility/cctype/functions.cc: New.
6         * include/Makefile.in: Regenerate.
7
8         * acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): New, check for C99
9         support to TR1, Chapter 8.
10         * configure.ac: Use it.
11         * include/tr1/complex: Adjust.
12         * config.h.in: Regenerate.
13         * configure: Likewise.
14
15 2006-01-25  Benjamin Kosnik  <bkoz@redhat.com>
16
17         * docs/html/configopts.html: Tweak docs.
18
19         * libsupc++/eh_personality.cc: Fix typos.
20
21 2006-01-24  Paolo Carlini  <pcarlini@suse.de>
22
23         PR libstdc++/25649
24         * include/std/std_istream.h (operator>>(short&), operator>>(int&)):
25         Move out of line...
26         * include/bits/istream.tcc: ... here.
27         * include/std/std_ostream.h (operator<<(short), operator<<(int)):
28         Move out of line...
29         * include/bits/ostream.tcc: ... here.
30
31 2006-01-24  Ed Smith-Rowland  <3dw4rd@verizon.net>
32
33         * docs/html/faq/index.html ([5.2]): Mention TR1 and point to
34         paragraph [5.5], describing it.
35         ([5.5]): New.
36         * docs/html/ext/tr1.html: New.
37
38 2006-01-20  Benjamin Kosnik  <bkoz@redhat.com>
39
40         * acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Verbose ld version
41         reporting.  Disable --gc-sections for old binutils, by version.
42         * configure: Regenerate.
43
44 2006-01-20  Joseph S. Myers  <joseph@codesourcery.com>
45
46         PR libstdc++/25524
47         * include/Makefile.am: Install host-specific headers in multilib
48         subdirectory.
49         * include/Makefile.in: Regenerate.
50
51 2006-01-19  Paolo Carlini  <pcarlini@suse.de>
52
53         Implement list::splice (and merge) bits of N1599
54         * include/bits/stl_list.h (list<>::_M_check_equal_allocators): New.
55         (list<>::splice(iterator, list&), splice(iterator, list&, iterator),
56         splice(iterator, list&, iterator, iterator)): Use it.
57         * include/bits/list.tcc (list<>::merge(list&), merge(list&,
58         _StrictWeakOrdering)): Likewise.
59         * testsuite/23_containers/list/operators/5.cc: New.
60
61 2006-01-19  H.J. Lu  <hongjiu.lu@intel.com>
62
63         PR libstdc++/25797
64         * acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Remove -Werror
65         from CFLAGS.  Check if linker really supports --gc-sections.
66         * configure: Regenerated.
67
68 2006-01-18  Paul Brook  <paul@codesourcery.com>
69
70         * libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Use std::abort.
71
72 2006-01-18  Paolo Carlini  <pcarlini@suse.de>
73
74         * include/bits/allocator.h: Include <bits/cpp_type_traits.h>.
75
76 2006-01-18  Perry Smith  <pedz@easesoftware.net>
77
78         PR libstdc++/25823
79         PR libstdc++/25824
80         * libsupc++/eh_alloc.cc: Fix return type of memset declaration.
81         * libsupc++/eh_globals.cc: If !_GLIBCXX_HOSTED declare malloc and free.
82
83 2006-01-18  Paolo Carlini  <pcarlini@suse.de>
84
85         * include/ext/pb_assoc/detail/value_type_adapter/
86         value_type_adapter.hpp: Include <tr1/type_traits>.
87         * include/ext/pb_assoc/detail/value_type_adapter/
88         it_value_type_traits.hpp (it_value_type_traits_<>::value_type_holder):
89         Use tr1::aligned_storage and tr1::alignment_of.
90         (it_value_type_traits_<>::buf_t): Remove.
91         (it_value_type_traits_<>::make_valid, recast): Adjust.
92
93 2006-01-16  Benjamin Kosnik  <bkoz@redhat.com>
94
95         PR libstdc++/25797
96         * acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Add -Werror to
97         CFLAGS for --gc-sections test.  Correct compile test.
98         * configure: Regenerated.
99         
100 2006-01-15  Paolo Carlini  <pcarlini@suse.de>
101             Gabriel Dos Reis  <gdr@integrable-solutions.net>
102
103         PR libstdc++/25626
104         * include/std/std_valarray.h (valarray(const slice_array<>&),
105         valarray(const gslice_array<>&), valarray(const mask_array<>&),
106         valarray(const indirect_array<>&), valarray(const _Expr<>&)):
107         Forward to __valarray_copy_construct, not __valarray_copy.
108         * include/bits/valarray_array.h
109         (__valarray_copy_construct(_Array<>, _Array<>, _Array<>, size_t),
110         __valarray_copy_construct(_Array<>, size_t, size_t, _Array<>)):
111         New.
112
113 2006-01-15  Paolo Carlini  <pcarlini@suse.de>
114
115         * testsuite/tr1/8_c_compatibility/complex/overloads_int.cc:
116         Fix norm test, use casts everywhere.
117
118 2006-01-14  Paolo Carlini  <pcarlini@suse.de>
119
120         * testsuite/testsuite_tr1.h: Add missing include; use std::__are_same.
121
122 2006-01-14  Paolo Carlini  <pcarlini@suse.de>
123
124         * testsuite/tr1/8_c_compatibility/complex/overloads_int.cc:
125         Fix wrong test (don't pick by mistake the (const complex<>&, int)
126         overload); add some.
127
128 2006-01-13  Paolo Carlini  <pcarlini@suse.de>
129             Howard Hinnant  <hhinnant@apple.com>
130
131         * include/tr1/complex (arg, conj, imag, norm, polar, pow, real):
132         Add, implementing TR1, 8.1.9.
133         (__promote_2): New.
134         * include/tr1/common.h: New, provides __promote, __promote_2.
135         * include/Makefile.am: Add.
136         * include/Makefile.in: Regenerate.
137         * testsuite/testsuite_tr1.h (check_ret_type): New.
138         * testsuite/tr1/8_c_compatibility/complex/overloads_int.cc: New.
139         * testsuite/tr1/8_c_compatibility/complex/overloads_float.cc: New.
140
141 2006-01-12  Benjamin Kosnik  <bkoz@redhat.com>
142
143         * acinclude.m4(GLIBCXX_CHECK_LINKER_FEATURES): Enable
144         --gc-sections in more cases.    
145         * configure: Regenerate.
146         * scripts/testsuite_flags.in: Remove SECTION_LDFLAGS.
147         * scripts/testsuite_flags.in (cxxldflags): New.
148         * testsuite/lib/libstdc++.exp (v3_target_compile): Add cxxldflags.
149         (libstdc++_init ): Same.
150                 
151 2006-01-12  Jan Beulich  <jbeulich@novell.com>
152
153         * crossconfig.m4: Add AC_DEFINE-s for HAVE_HYPOT, HAVE_ISINF, and
154         HAVE_ISNAN for *-*-netware*.
155         * configure: Refresh.
156
157 2006-01-11  Benjamin Kosnik  <bkoz@redhat.com>
158
159         * acinclude.m4(GLIBCXX_CHECK_LINKER_FEATURES): Use -Wl,-z,relro if
160         possible.  
161         * configure: Regenerate.
162
163 2006-01-10  Paolo Carlini  <pcarlini@suse.de>
164
165         * include/tr1/complex: New file, hosts the additions to header
166         <complex> described in TR1, Chapter 8 [tr.c99].
167         * include/Makefile.am: Add.
168         * include/Makefile.in: Regenerate.
169         * testsuite/tr1/8_c_compatibility/complex/functions.cc: New.
170
171 2006-01-09  Paolo Carlini  <pcarlini@suse.de>
172
173         PR libstdc++/25658
174         * testsuite/23_containers/deque/cons/assign/1.cc: Divide
175         sizes by 10.
176
177 2006-01-08  Paolo Carlini  <pcarlini@suse.de>
178
179         PR libstdc++/22102 (insert as close to hint as possible)
180         * include/bits/stl_tree.h (_Rb_tree<>::_M_insert_lower,
181         _M_insert_equal_lower): New.
182         (_M_insert_equal(iterator, const _Val&),
183         _M_insert_equal(const_iterator, const _Val&)): Use the above.
184         * docs/html/ext/howto.html: Add an entry for DR 233.
185         * testsuite/23_containers/multiset/modifiers/insert/22102.cc: New.
186         * testsuite/23_containers/multimap/modifiers/insert/22102.cc: New.
187
188         * testsuite/23_containers/set/insert/: Move...
189         * testsuite/23_containers/set/modifiers/insert/: ...here.
190         * testsuite/23_containers/map/insert/: Move...
191         * testsuite/23_containers/map/modifiers/insert/: ...here.
192         * testsuite/23_containers/multiset/insert/: Move...
193         * testsuite/23_containers/multiset/modifiers/insert/: ...here.
194
195 2006-01-06  Paolo Carlini  <pcarlini@suse.de>
196
197         * include/bits/stl_tree.h (_Rb_tree<>::insert_unique): Rename
198         to _M_insert_unique.
199         (_Rb_tree<>::insert_equal): Rename to _M_insert_equal.
200         * include/bits/stl_map.h (class map<>): Update callers.
201         * include/bits/stl_set.h (class set<>): Likewise.
202         * include/bits/stl_multimap.h (class multimap<>): Likewise.
203         * include/bits/stl_multiset.h (class multiset<>): Likewise.
204
205 2006-01-06  Paolo Carlini  <pcarlini@suse.de>
206
207         * include/bits/stl_bvector.h (vector<bool>::erase(iterator,
208         iterator)): Just use _M_erase_at_end.
209
210 2006-01-06  Paolo Carlini  <pcarlini@suse.de>
211
212         * include/bits/stl_bvector.h (class vector<bool>): Move all the
213         helpers under protected access mode, consistently with the primary
214         vector template.
215         (vector<bool>::_M_erase_at_end): Add.
216         (erase(iterator, iterator), clear, resize, _M_fill_assign,
217         _M_assign_aux): Use it.
218         * testsuite/23_containers/vector/bool/modifiers/erase/1.cc: New.
219
220 2006-01-06  Paolo Carlini  <pcarlini@suse.de>
221
222         Implement Option 3 of DR 431 for vector<bool>.
223         * include/bits/stl_bvector.h (class _Bvector_base): Change to
224         a struct, consistently with the primary vector template.
225         (class vector<bool>): Adjust to protected inheritance, tidy
226         typedefs.
227         (_Bvector_base<>::_M_get_Bit_allocator): Add.
228         (vector<bool>::vector(const vector&)): Use it.
229         (_Bvector_base<>::get_allocator): Tidy.
230         (vector<bool>::swap): Use __alloc_swap.
231         * testsuite/23_containers/vector/bool/modifiers/swap/1.cc: New.
232         * testsuite/23_containers/vector/bool/modifiers/swap/2.cc: New.
233
234 2006-01-05  Paolo Carlini  <pcarlini@suse.de>
235         
236         * testsuite/testsuite_hooks.h (test_tm(unsigned)): Change to
237         take all the tm members.
238         * testsuite/testsuite_hooks.cc (test_tm): Adjust.
239         * testsuite/22_locale/time_put/put/wchar_t/10.cc: Update.
240         * testsuite/22_locale/time_put/put/wchar_t/1.cc: Likewise.
241         * testsuite/22_locale/time_put/put/wchar_t/2.cc: Likewise.
242         * testsuite/22_locale/time_put/put/wchar_t/3.cc: Likewise.
243         * testsuite/22_locale/time_put/put/wchar_t/4.cc: Likewise.
244         * testsuite/22_locale/time_put/put/wchar_t/5.cc: Likewise.
245         * testsuite/22_locale/time_put/put/wchar_t/6.cc: Likewise.
246         * testsuite/22_locale/time_put/put/wchar_t/7.cc: Likewise.
247         * testsuite/22_locale/time_put/put/wchar_t/8.cc: Likewise.
248         * testsuite/22_locale/time_put/put/wchar_t/9.cc: Likewise.
249         * testsuite/22_locale/time_put/put/wchar_t/17038.cc: Likewise.
250         * testsuite/22_locale/time_put/put/char/10.cc: Likewise.
251         * testsuite/22_locale/time_put/put/char/1.cc: Likewise.
252         * testsuite/22_locale/time_put/put/char/2.cc: Likewise.
253         * testsuite/22_locale/time_put/put/char/3.cc: Likewise.
254         * testsuite/22_locale/time_put/put/char/4.cc: Likewise.
255         * testsuite/22_locale/time_put/put/char/5.cc: Likewise.
256         * testsuite/22_locale/time_put/put/char/6.cc: Likewise.
257         * testsuite/22_locale/time_put/put/char/7.cc: Likewise.
258         * testsuite/22_locale/time_put/put/char/8.cc: Likewise.
259         * testsuite/22_locale/time_put/put/char/9.cc: Likewise.
260         * testsuite/22_locale/time_put/put/char/17038.cc: Likewise.
261         * testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Likewise.
262         * testsuite/22_locale/time_get/get_year/wchar_t/3.cc: Likewise.
263         * testsuite/22_locale/time_get/get_year/char/1.cc: Likewise.
264         * testsuite/22_locale/time_get/get_year/char/3.cc: Likewise.
265         * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Likewise.
266         * testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Likewise.
267         * testsuite/22_locale/time_get/get_monthname/char/1.cc: Likewise.
268         * testsuite/22_locale/time_get/get_monthname/char/2.cc: Likewise.
269         * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Likewise.
270         * testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Likewise.
271         * testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
272         * testsuite/22_locale/time_get/get_weekday/char/1.cc: Likewise.
273         * testsuite/22_locale/time_get/get_weekday/char/2.cc: Likewise.
274         * testsuite/22_locale/time_get/get_weekday/char/3.cc: Likewise.
275         * testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Likewise.
276         * testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Likewise.
277         * testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Likewise.
278         * testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Likewise.
279         * testsuite/22_locale/time_get/get_date/wchar_t/3.cc: Likewise.
280         * testsuite/22_locale/time_get/get_date/char/12750.cc: Likewise.
281         * testsuite/22_locale/time_get/get_date/char/12750.cc: Likewise.
282         * testsuite/22_locale/time_get/get_date/char/1.cc: Likewise.
283         * testsuite/22_locale/time_get/get_date/char/2.cc: Likewise.
284         * testsuite/22_locale/time_get/get_date/char/3.cc: Likewise.
285         * testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Likewise.
286         * testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Likewise.
287         * testsuite/22_locale/time_get/get_time/wchar_t/3.cc: Likewise.
288         * testsuite/22_locale/time_get/get_time/wchar_t/4.cc: Likewise.
289         * testsuite/22_locale/time_get/get_time/char/1.cc: Likewise.
290         * testsuite/22_locale/time_get/get_time/char/2.cc: Likewise.
291         * testsuite/22_locale/time_get/get_time/char/3.cc: Likewise.
292         * testsuite/22_locale/time_get/get_time/char/4.cc: Likewise.
293
294 2006-01-05  Paolo Carlini  <pcarlini@suse.de>
295         
296         * testsuite/testsuite_hooks.h (test_tm(unsigned)): New.
297         * testsuite/testsuite_hooks.cc (test_tm(unsigned)): Define.
298         * testsuite/22_locale/time_put/put/wchar_t/10.cc: Use it.
299         * testsuite/22_locale/time_put/put/wchar_t/1.cc: Likewise.
300         * testsuite/22_locale/time_put/put/wchar_t/2.cc: Likewise.
301         * testsuite/22_locale/time_put/put/wchar_t/3.cc: Likewise.
302         * testsuite/22_locale/time_put/put/wchar_t/4.cc: Likewise.
303         * testsuite/22_locale/time_put/put/wchar_t/5.cc: Likewise.
304         * testsuite/22_locale/time_put/put/wchar_t/6.cc: Likewise.
305         * testsuite/22_locale/time_put/put/wchar_t/7.cc: Likewise.
306         * testsuite/22_locale/time_put/put/wchar_t/8.cc: Likewise.
307         * testsuite/22_locale/time_put/put/wchar_t/9.cc: Likewise.
308         * testsuite/22_locale/time_put/put/wchar_t/17038.cc: Likewise.
309         * testsuite/22_locale/time_put/put/char/10.cc: Likewise.
310         * testsuite/22_locale/time_put/put/char/1.cc: Likewise.
311         * testsuite/22_locale/time_put/put/char/2.cc: Likewise.
312         * testsuite/22_locale/time_put/put/char/3.cc: Likewise.
313         * testsuite/22_locale/time_put/put/char/4.cc: Likewise.
314         * testsuite/22_locale/time_put/put/char/5.cc: Likewise.
315         * testsuite/22_locale/time_put/put/char/6.cc: Likewise.
316         * testsuite/22_locale/time_put/put/char/7.cc: Likewise.
317         * testsuite/22_locale/time_put/put/char/8.cc: Likewise.
318         * testsuite/22_locale/time_put/put/char/9.cc: Likewise.
319         * testsuite/22_locale/time_put/put/char/17038.cc: Likewise.
320         * testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Likewise.
321         * testsuite/22_locale/time_get/get_year/wchar_t/3.cc: Likewise.
322         * testsuite/22_locale/time_get/get_year/char/1.cc: Likewise.
323         * testsuite/22_locale/time_get/get_year/char/3.cc: Likewise.
324         * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Likewise.
325         * testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Likewise.
326         * testsuite/22_locale/time_get/get_monthname/char/1.cc: Likewise.
327         * testsuite/22_locale/time_get/get_monthname/char/2.cc: Likewise.
328         * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Likewise.
329         * testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Likewise.
330         * testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
331         * testsuite/22_locale/time_get/get_weekday/char/1.cc: Likewise.
332         * testsuite/22_locale/time_get/get_weekday/char/2.cc: Likewise.
333         * testsuite/22_locale/time_get/get_weekday/char/3.cc: Likewise.
334         * testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Likewise.
335         * testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Likewise.
336         * testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Likewise.
337         * testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Likewise.
338         * testsuite/22_locale/time_get/get_date/wchar_t/3.cc: Likewise.
339         * testsuite/22_locale/time_get/get_date/char/12750.cc: Likewise.
340         * testsuite/22_locale/time_get/get_date/char/12750.cc: Likewise.
341         * testsuite/22_locale/time_get/get_date/char/1.cc: Likewise.
342         * testsuite/22_locale/time_get/get_date/char/2.cc: Likewise.
343         * testsuite/22_locale/time_get/get_date/char/3.cc: Likewise.
344         * testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Likewise.
345         * testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Likewise.
346         * testsuite/22_locale/time_get/get_time/wchar_t/3.cc: Likewise.
347         * testsuite/22_locale/time_get/get_time/wchar_t/4.cc: Likewise.
348         * testsuite/22_locale/time_get/get_time/char/1.cc: Likewise.
349         * testsuite/22_locale/time_get/get_time/char/2.cc: Likewise.
350         * testsuite/22_locale/time_get/get_time/char/3.cc: Likewise.
351         * testsuite/22_locale/time_get/get_time/char/4.cc: Likewise.
352
353 2006-01-04  Paolo Carlini  <pcarlini@suse.de>
354
355         * include/ext/sso_string_base.h (__sso_string_base<>::_M_dataplus):
356         Use _CharT_alloc_type as base class.
357         (_M_get_allocator, _M_swap, _M_create, _M_destroy): Adjust.
358         * include/ext/vstring.h (get_allocator): Tidy.
359
360 2006-01-04  Paolo Carlini  <pcarlini@suse.de>
361
362         Implement Option 3 of DR 431 for all the containers.
363         * include/bits/allocator.h (struct __alloc_swap): Add, swaps
364         allocators, optimized to nothing in case they are empty.
365         * include/bits/stl_deque.h (deque<>::swap): Use it.
366         * include/bits/stl_list.h (list<>::swap): Likewise.
367         * include/bits/stl_tree.h (_Rb_tree<>::swap): Likewise.
368         * include/bits/stl_vector.h (vector<>::swap): Likewise.
369         * include/tr1/hashtable (hashtable<>::swap): Likewise.
370         * include/ext/rc_string_base.h (__rc_string_base<>::_M_swap):
371         Likewise.
372         * include/ext/sso_string_base.h (__sso_string_base<>::_M_swap):
373         Likewise.
374         * include/ext/vstring_util.h (__vstring_utility<>::_Alloc_hider):
375         Clean-up (now vstring uses the generic __alloc_swap facility).
376         * include/tr1/unordered_map: Adjust includes.
377         * include/tr1/unordered_set: Likewise.
378         * docs/html/ext/howto.html: Add an entry for DR 431.
379         * testsuite/23_containers/deque/modifiers/swap.cc: Move to...
380         * testsuite/23_containers/deque/modifiers/swap/1.cc: ... here.          
381         * testsuite/23_containers/deque/modifiers/swap/2.cc: New.
382         * testsuite/23_containers/deque/modifiers/swap/3.cc: New.
383         * testsuite/23_containers/list/modifiers/swap.cc: Move to...
384         * testsuite/23_containers/list/modifiers/swap/1.cc: ... here.           
385         * testsuite/23_containers/list/modifiers/swap/2.cc: New.
386         * testsuite/23_containers/list/modifiers/swap/3.cc: New.
387         * testsuite/23_containers/vector/modifiers/swap.cc: Move to...
388         * testsuite/23_containers/vector/modifiers/swap/1.cc: ... here.         
389         * testsuite/23_containers/vector/modifiers/swap/2.cc: New.
390         * testsuite/23_containers/vector/modifiers/swap/3.cc: New.
391         * testsuite/23_containers/set/modifiers/swap.cc: Move to...
392         * testsuite/23_containers/set/modifiers/swap/1.cc: ... here.            
393         * testsuite/23_containers/set/modifiers/swap/2.cc: New.
394         * testsuite/23_containers/set/modifiers/swap/3.cc: New.
395         * testsuite/23_containers/map/modifiers/swap.cc: Move to...
396         * testsuite/23_containers/map/modifiers/swap/1.cc: ... here.            
397         * testsuite/23_containers/map/modifiers/swap/2.cc: New.
398         * testsuite/23_containers/map/modifiers/swap/3.cc: New.
399         * testsuite/23_containers/multiset/modifiers/swap.cc: Move to...
400         * testsuite/23_containers/multiset/modifiers/swap/1.cc: ... here.               
401         * testsuite/23_containers/multiset/modifiers/swap/2.cc: New.
402         * testsuite/23_containers/multiset/modifiers/swap/3.cc: New.
403         * testsuite/23_containers/multimap/modifiers/swap.cc: Move to...
404         * testsuite/23_containers/multimap/modifiers/swap/1.cc: ... here.               
405         * testsuite/23_containers/multimap/modifiers/swap/2.cc: New.
406         * testsuite/23_containers/multimap/modifiers/swap/3.cc: New.
407         * testsuite/tr1/6_containers/unordered/swap/unordered_set/1.cc: New.    
408         * testsuite/tr1/6_containers/unordered/swap/unordered_set/2.cc: New.
409         * testsuite/tr1/6_containers/unordered/swap/unordered_map/1.cc: New.    
410         * testsuite/tr1/6_containers/unordered/swap/unordered_map/2.cc: New.
411         * testsuite/tr1/6_containers/unordered/swap/unordered_multiset/1.cc: New.       
412         * testsuite/tr1/6_containers/unordered/swap/unordered_multiset/2.cc: New.
413         * testsuite/tr1/6_containers/unordered/swap/unordered_multimap/1.cc: New.       
414         * testsuite/tr1/6_containers/unordered/swap/unordered_multimap/2.cc: New.
415
416 2006-01-03  Paolo Carlini  <pcarlini@suse.de>
417
418         * include/bits/stl_list.h (_List_base<>::_M_get_Node_allocator): Add.
419         (_M_get_Tp_allocator, get_allocator): Tidy.
420         (list<>::list(const list&), insert(iterator, size_type, const
421         value_type&), insert(iterator, _InputIterator, _InputIterator)):
422         Use _M_get_Node_allocator.
423         * include/bits/stl_tree.h (_Rb_tree<>::_M_get_Node_allocator()): Add.
424         (_Rb_tree(const _Rb_tree<>&): Use it.
425         * include/bits/stl_deque.h (_Deque_base<>::_M_get_map_allocator,
426         get_allocator): Tidy.
427         * include/bits/stl_vector.h (_Vector_base<>::get_allocator): Tidy.
428         * testsuite/23_containers/map/operators/1_neg.cc: Adjust dg-error
429         line numbers.
430         * testsuite/23_containers/set/operators/1_neg.cc: Likewise.
431         
432         * testsuite/testsuite_allocator.h (uneq_allocator<>::swap): Fix.
433
434         * testsuite/testsuite_allocator.h (class uneq_allocator): A simple
435         non-empty testing allocator which can be endowed of a "personality"
436         at construction time.
437
438 2006-01-03  Paolo Carlini  <pcarlini@suse.de>
439
440         * testsuite/27_io/basic_stringstream/str/char/1.cc: Initialize vars.
441         * testsuite/27_io/basic_stringstream/str/wchar_t/1.cc: Likewise.
442         * testsuite/27_io/basic_istringstream/str/char/1.cc: Likewise, tidy.
443         * testsuite/27_io/basic_istringstream/str/wchar_t/1.cc: Likewise.
444
445 2006-01-02  Mark Mitchell  <mark@codesourcery.com>
446
447         * src/Makefile.am (LTLDFLAGS): New variable. 
448         (CXXLINK): Use LTLDFLAGS.
449         * src/Makefile.in: Regenerated.
450         * libsupc++/Makefile.am (LTLDFLAGS): New variable. 
451         (CXXLINK): Use LTLDFLAGS.
452         * libsupc++/Makefile.in: Regenerated.
453
454 2006-01-02  Paolo Carlini  <pcarlini@suse.de>
455
456         PR libstdc++/24645
457         * include/std/std_istream.h (basic_istream<>::_M_extract): New.
458         (operator>>(bool&), operator>>(short&), operator>>(unsigned short&),
459         operator>>(int&), operator>>(unsigned int&), operator>>(long&),
460         operator>>(unsigned long&), operator>>(long long&), operator>>
461         (unsigned long long&), operator>>(float&), operator>>(double&),
462         operator>>(long double&), operator>>(void*&)): Use it.
463         * include/bits/istream.tcc (basic_istream<>::_M_extract): Define.
464         * include/std/std_ostream.h (basic_ostream<>::_M_insert): New.
465         (operator<<(long), operator<<(unsigned long), operator<<(bool),
466         operator<<(short), operator<<(unsigned short), operator<<(int),
467         operator<<(unsigned int), operator<<(long long), operator<<
468         (unsigned long long), operator<<(double), operator<<(float),
469         operator<<(long double), operator<<(const void*): Use it.
470         * include/bits/ostream.tcc (basic_ostream<>::_M_insert): Define.
471         * src/istream-inst.cc: Add _M_extract instantiations.
472         * src/ostream-inst.cc: Add _M_insert instantiations.
473         * config/abi/pre/gnu.ver: Export the new symbols @GLIBCXX_3.4.7;
474         detail existing @GLIBCXX_3.4 exports of basic_ostream, num_put,
475         money_put, etc., symbols to avoid exporting _M_insert symbols
476         @GLIBCXX_3.4.