OSDN Git Service

2005-01-31 Paolo Carlini <pcarlini@suse.de>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
1 2005-01-31  Paolo Carlini  <pcarlini@suse.de>
2             Gabriel Dos Reis  <gdr@integrable-solutions.net>
3
4         * include/bits/cpp_type_traits.h: Add types to the structs thus
5         making type_traits.h redundant; exploit new __truth_type and
6         __traitor helpers.
7         * include/bits/type_traits.h: Remove.
8         * include/Makefile.am: Update.
9         * include/Makefile.in: Regenerate.
10         * include/backward/tempbuf.h: Include cpp_type_traits.h instead.
11         * include/bits/basic_string.h (replace(iterator, iterator,
12         _InputIterator, _InputIterator), _S_construct(_InIterator,
13         _InIterator, const _Alloc&)): Use __is_integer instead.
14         * include/bits/stl_bvector.h (vector(_InputIterator,
15         _InputIterator, const allocator_type&), assign(_InputIterator,
16         _InputIterator), insert(iterator, _InputIterator, _InputIterator)):
17         Likewise.
18         * include/bits/stl_construct.h (_Destroy(_ForwardIterator,
19         _ForwardIterator)): Use __is_scalar.
20         * include/bits/stl_deque.h (deque(_InputIterator, _InputIterator,
21         const allocator_type&), assign(_InputIterator, _InputIterator),
22         insert(iterator, _InputIterator, _InputIterator)): Use __is_integer.
23         * include/bits/stl_list.h (assign(_InputIterator, _InputIterator),
24         insert(iterator, _InputIterator, _InputIterator)): Likewise.
25         * include/bits/stl_tempbuf.h (_Temporary_buffer(_ForwardIterator,
26         _ForwardIterator)): Use __is_scalar.
27         * include/bits/stl_uninitialized.h (uninitialized_copy(_InputIterator,
28         _InputIterator, _ForwardIterator), uninitialized_fill(_ForwardIterator,
29         _ForwardIterator, const _Tp&), uninitialized_fill_n(_ForwardIterator,
30         _Size, const _Tp&)): Likewise.
31         * include/bits/stl_vector.h (vector(_InputIterator, _InputIterator,
32         const allocator_type&), assign(_InputIterator, _InputIterator),
33         insert(iterator, _InputIterator, _InputIterator)): Use __is_integer.
34         * include/debug/debug.h (__valid_range(const _InputIterator&,
35         const _InputIterator&)): Use __is_integer.
36         * include/ext/slist (assign(_InputIterator, _InputIterator)): Likewise.
37         * include/std/std_string.h: Include cpp_type_traits.h instead.
38
39 2005-01-30  Paolo Carlini  <pcarlini@suse.de>
40
41         PR libstdc++/19642
42         * config/locale/generic/c_locale.h (__convert_from_v): Switch only
43         LC_NUMERIC, and only when actually != "C".
44
45 2005-01-28  Paolo Carlini  <pcarlini@suse.de>
46
47         * include/tr1/type_traits (is_function): Minor consistency tweaks.
48
49 2005-01-28  Geoffrey Keating  <geoffk@apple.com>
50
51         * testsuite/lib/libstdc++.exp (libstdc++_init): Search the path
52         for the compiler.  Don't set cxxflags.
53         (v3_target_compile): Search for libv3test.a relative to $objdir.
54         (lsearch_all_inline): New.
55         (lsearch_all_inline_not): New.
56         (v3-list-tests): Rewrite to not need generated files.
57         * testsuite/Makefile.am (IGNORE_WCHAR_T): New.
58         (IGNORE_THREAD): New.
59         (TESTS_TO_IGNORE): New.
60         (site.exp): Set tests_to_ignore, cxxflags.
61         * aclocal.m4: Regenerate.
62         * Makefile.in: Regenerate.
63         * libmath/Makefile.in: Likewise.
64         * libsupc++/Makefile.in: Likewise.
65         * po/Makefile.in: Likewise.
66         * src/Makefile.in: Likewise.
67         * testsuite/Makefile.in: Likewise.
68
69 2005-01-28  Paolo Carlini  <pcarlini@suse.de>
70
71         * include/tr1/type_traits: Implement is_empty.
72         * testsuite/tr1/4_metaprogramming/type_properties/is_empty/
73         is_empty.cc: New.
74         * testsuite/tr1/4_metaprogramming/type_properties/is_empty/
75         typedefs.cc: Likewise.
76
77         * include/tr1/type_traits (__is_abstract_helper): Simplify a bit.
78
79 2005-01-28  Paolo Carlini  <pcarlini@suse.de>
80
81         * include/tr1/type_traits: Implement is_abstract, by exploiting the
82         resolution of DR core/337.
83         * testsuite/testsuite_tr1.h: Add AbstractClass.
84         * testsuite/tr1/4_metaprogramming/type_properties/is_abstract/
85         is_abstract.cc: New.
86         * testsuite/tr1/4_metaprogramming/type_properties/is_abstract/
87         typedefs.cc: Likewise.
88         
89         * include/tr1/type_traits (is_function): Rewrite, use the conversion
90         F& -> F* instead, thus avoiding problems with abstract classes.
91         * testsuite/tr1/4_metaprogramming/primary_type_categories/
92         is_function/is_function.cc: Add a test for tricky AbstractClass.
93
94 2005-01-26  Paolo Carlini  <pcarlini@suse.de>
95
96         * include/ext/mt_allocator.h
97         (struct __per_type_pool_policy<,, false>::_S_get_pool,
98         struct __per_type_pool_policy<,, true>::_S_get_pool): Scale
99         _M_chunk_size too with sizeof(_Tp), otherwise the allocator
100         breaks down as soon as sizeof(_Tp) >~ _S_chunk_size / 128;
101         reduce to 64 the multiplier for _M_max_bytes (safer wrt
102         _Binmap_type being a short); trivial reformattings.
103         * testsuite/ext/mt_allocator/check_allocate_big_per_type.cc: New.
104
105 2005-01-26  Paolo Carlini  <pcarlini@suse.de>
106
107         * acinclude.m4 ([GLIBCXX_ENABLE_C99]): Add ac_c99_complex
108         to the final test for enable_c99, thus robustifying it; remove
109         duplicate final test on ac_99_math.
110         * configure: Regenerate.
111
112         * include/std/std_complex.h: Remove usages of the dead
113         _GLIBCXX_BUGGY_COMPLEX macro.
114
115         * testsuite/26_numerics/cmath/19322.cc: Protect with
116         _GLIBCXX_USE_C99_MATH instead of the stronger _GLIBCXX_USE_C99,
117         since only C99 math facilities are involved.
118         * testsuite/26_numerics/cmath/c99_classification_macros_c++.cc:
119         Likewise.
120
121 2005-01-25  Loren J. Rittle  <ljrittle@acm.org>
122
123         * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Map FreeBSD to darwin
124         instead of generic.  Change autoconf report to "darwin or freebsd".
125         * configure: Regenerate.
126         * config/os/bsd/freebsd/ctype_inline.h (ctype<wchar_t>::do_is): Add.
127         (ctype<wchar_t>::do_scan_is): Likewise.
128         (ctype<wchar_t>::do_scan_not): Likewise.
129
130 2005-01-25  Benjamin Kosnik  <bkoz@redhat.com>
131
132         * acinclude.m4 (GLIBCXX_ENABLE_C99): Test for complex math
133         functions, and enable _GLIBCXX_USE_C99_COMPLEX_MATH if they exist.
134         * acconfig.h: Add _GLIBCXX_USE_C99_COMPLEX_MATH.
135         * config.h.in: Regenerate.
136         * configure: Regenerate.
137         * include/std/std_complex.h: Protect complex builtins with
138         _GLIBCXX_USE_C99_COMPLEX_MATH.
139
140 2005-01-24  Paolo Carlini  <pcarlini@suse.de>
141
142         * include/tr1/type_traits: Implement is_signed and is_unsigned.
143         * testsuite/tr1/4_metaprogramming/type_properties/
144         is_signed/is_signed.cc: New.
145         * testsuite/tr1/4_metaprogramming/type_properties/
146         is_signed/typedefs.cc: Likewise.
147         * testsuite/tr1/4_metaprogramming/type_properties/
148         is_unsigned/is_unsigned.cc: Likewise.
149         * testsuite/tr1/4_metaprogramming/type_properties/
150         is_unsigned/typedefs.cc: Likewise.
151
152 2005-01-23  Paolo Carlini  <pcarlini@suse.de>
153
154         * docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 34.
155
156 2005-01-23  Paolo Carlini  <pcarlini@suse.de>
157
158         * testsuite/27_io/basic_ostream/cons/wchar_t/9827.cc: New.
159         * testsuite/27_io/basic_ostream/endl/wchar_t/1.cc: Likewise.
160         * testsuite/27_io/basic_ostream/ends/wchar_t/1.cc: Likewise.
161         * testsuite/27_io/basic_ostream/ends/wchar_t/2.cc: Likewise.
162         * testsuite/27_io/basic_ostream/exceptions/wchar_t/9561.cc: Likewise.
163         * testsuite/27_io/basic_ostream/flush/wchar_t/1.cc: Likewise.
164         * testsuite/27_io/basic_ostream/flush/wchar_t/2.cc: Likewise.
165         * testsuite/27_io/basic_ostream/flush/wchar_t/
166         exceptions_badbit_throw.cc: Likewise.
167         * testsuite/27_io/basic_ostream/inserters_arithmetic/
168         wchar_t/2.cc: Likewise.
169         * testsuite/27_io/basic_ostream/inserters_arithmetic/
170         wchar_t/3.cc: Likewise.
171         * testsuite/27_io/basic_ostream/inserters_arithmetic/
172         wchar_t/4.cc: Likewise.
173         * testsuite/27_io/basic_ostream/inserters_arithmetic/
174         wchar_t/4402.cc: Likewise.
175         * testsuite/27_io/basic_ostream/inserters_arithmetic/
176         wchar_t/5.cc: Likewise.
177         * testsuite/27_io/basic_ostream/inserters_arithmetic/
178         wchar_t/6.cc: Likewise.
179         * testsuite/27_io/basic_ostream/inserters_arithmetic/
180         wchar_t/9555-oa.cc: Likewise.
181         * testsuite/27_io/basic_ostream/inserters_arithmetic/
182         wchar_t/exceptions_badbit_throw.cc: Likewise.
183         * testsuite/27_io/basic_ostream/inserters_arithmetic/
184         wchar_t/exceptions_failbit_throw.cc: Likewise.
185         * testsuite/27_io/basic_ostream/inserters_character/
186         wchar_t/1.cc: Likewise.
187         * testsuite/27_io/basic_ostream/inserters_character/
188         wchar_t/2.cc: Likewise.
189         * testsuite/27_io/basic_ostream/inserters_character/
190         wchar_t/3.cc: Likewise.
191         * testsuite/27_io/basic_ostream/inserters_character/
192         wchar_t/4.cc: Likewise.
193         * testsuite/27_io/basic_ostream/inserters_character/
194         wchar_t/5.cc: Likewise.
195         * testsuite/27_io/basic_ostream/inserters_character/
196         wchar_t/6.cc: Likewise.
197         * testsuite/27_io/basic_ostream/inserters_character/
198         wchar_t/9555-oc.cc: Likewise.
199         * testsuite/27_io/basic_ostream/inserters_other/
200         wchar_t/1.cc: Likewise.
201         * testsuite/27_io/basic_ostream/inserters_other/
202         wchar_t/2.cc: Likewise.
203         * testsuite/27_io/basic_ostream/inserters_other/
204         wchar_t/3.cc: Likewise.
205         * testsuite/27_io/basic_ostream/inserters_other/
206         wchar_t/4.cc: Likewise.
207         * testsuite/27_io/basic_ostream/inserters_other/
208         wchar_t/5.cc: Likewise.
209         * testsuite/27_io/basic_ostream/inserters_other/
210         wchar_t/9318-out.cc: Likewise.
211         * testsuite/27_io/basic_ostream/inserters_other/
212         wchar_t/9424-out.cc: Likewise.
213         * testsuite/27_io/basic_ostream/inserters_other/
214         wchar_t/9555-oo.cc: Likewise.
215         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
216         error_failbit.cc: Likewise.
217         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
218         exceptions_badbit_throw.cc: Likewise.
219         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
220         exceptions_failbit_throw.cc: Likewise.
221         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
222         exceptions_null.cc: Likewise.
223         * testsuite/27_io/basic_ostream/put/char/1.cc: Likewise.
224         * testsuite/27_io/basic_ostream/put/wchar_t/1.cc: Likewise.
225         * testsuite/27_io/basic_ostream/seekp/char/
226         exceptions_badbit_throw.cc: Likewise.
227         * testsuite/27_io/basic_ostream/seekp/wchar_t/
228         2346-fstream.cc: Likewise.
229         * testsuite/27_io/basic_ostream/seekp/wchar_t/
230         2346-sstream.cc: Likewise.
231         * testsuite/27_io/basic_ostream/seekp/wchar_t/
232         exceptions_badbit_throw.cc: Likewise.
233         * testsuite/27_io/basic_ostream/sentry/wchar_t/1.cc: Likewise.
234         * testsuite/27_io/basic_ostream/sentry/wchar_t/2.cc: Likewise.
235         * testsuite/27_io/basic_ostream/tellp/wchar_t/1.cc: Likewise.
236         * testsuite/27_io/basic_ostream/tellp/wchar_t/2.cc: Likewise.
237         * testsuite/27_io/basic_ostream/tellp/wchar_t/
238         exceptions_badbit_throw.cc: Likewise.
239         * testsuite/27_io/basic_ostream/write/wchar_t/1.cc: Likewise.
240
241         * testsuite/data/wostream_inserter_char-1.tst: Likewise.
242         * testsuite/data/wostream_inserter_char-1.txt: Likewise.
243         * testsuite/data/wostream_inserter_other-1.tst: Likewise.
244         * testsuite/data/wostream_inserter_other-2.tst: Likewise.
245         * testsuite/data/wostream_seeks-1.tst: Likewise.
246
247         * testsuite/27_io/basic_ostream/endl/char/1.cc: Minor tweaks.
248         * testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise.
249         * testsuite/27_io/basic_ostream/exceptions/char/9561.cc: Likewise. 
250         * testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise.
251         * testsuite/27_io/basic_ostream/flush/char/2.cc: Likewise.
252         * testsuite/27_io/basic_ostream/flush/char/
253         exceptions_badbit_throw.cc: Likewise.
254         * testsuite/27_io/basic_ostream/inserters_arithmetic/
255         char/2.cc: Likewise.
256         * testsuite/27_io/basic_ostream/inserters_arithmetic/
257         char/3.cc: Likewise.
258         * testsuite/27_io/basic_ostream/inserters_arithmetic/
259         char/4.cc: Likewise.
260         * testsuite/27_io/basic_ostream/inserters_arithmetic/
261         char/4402.cc: Likewise.
262         * testsuite/27_io/basic_ostream/inserters_arithmetic/
263         char/5.cc: Likewise.
264         * testsuite/27_io/basic_ostream/inserters_arithmetic/
265         char/6.cc: Likewise.
266         * testsuite/27_io/basic_ostream/inserters_character/
267         char/4.cc: Likewise.
268         * testsuite/27_io/basic_ostream/inserters_other/char/
269         2.cc: Likewise.
270         * testsuite/27_io/basic_ostream/inserters_other/char/
271         5.cc: Likewise.
272         * testsuite/27_io/basic_ostream/inserters_other/char/
273         error_failbit.cc: Likewise.
274         * testsuite/27_io/basic_ostream/inserters_other/char/
275         exceptions_badbit_throw.cc: Likewise.
276         * testsuite/27_io/basic_ostream/inserters_other/char/
277         exceptions_failbit_throw.cc: Likewise.
278         * testsuite/27_io/basic_ostream/inserters_other/char/
279         exceptions_null.cc: Likewise.
280         * testsuite/27_io/basic_ostream/put/char/1.cc: Likewise.
281         * testsuite/27_io/basic_ostream/seekp/char/
282         exceptions_badbit_throw.cc: Likewise.
283         * testsuite/27_io/basic_ostream/sentry/char/2.cc: Likewise.
284         * testsuite/27_io/basic_ostream/write/char/1.cc: Likewise.
285
286 2005-01-23  Paolo Carlini  <pcarlini@suse.de>
287
288         * include/tr1/type_traits (aligned_storage): Use __aligned__ instead
289         of aligned.
290
291 2005-01-23  Paolo Carlini  <pcarlini@suse.de>
292             Andreas Jaeger  <aj@suse.de>
293
294         PR libstdc++/19343
295         * include/bits/functexcept.h: Mark the helpers as 'noreturn'.
296
297 2005-01-21  Loren J. Rittle  <ljrittle@acm.org>
298
299         * testsuite/27_io/basic_filebuf/open/char/9507.cc: Allow
300         lseek on fifo to succeed.  Thus, check for consistent report.
301
302 2005-01-21  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
303
304         PR libstdc++/19510
305         * include/bits/stl_list.h (_List_iterator): Initialize _M_node
306         in constructor.
307         (_List_const_iterator): Likewise.
308         * include/bits/stl_tree.h (_Rb_tree_iterator): Likewise.
309         (_Rb_tree_const_iterator): Likewise.
310
311         * testsuite/23_containers/map/operators/1_neg.cc: Adjust line numbers.
312         * testsuite/23_containers/set/operators/1_neg.cc: Likewise.
313
314 2005-01-20  Benjamin Kosnik  <bkoz@redhat.com>
315
316         * testsuite/Makefile.am (check-compile): New.
317         * testsuite/Makefile.in: Regenerate.    
318         * scripts/check_compile_time: New.
319         * scripts/check_performance: Tweaks.
320
321 2005-01-19  Paolo Carlini  <pcarlini@suse.de>
322
323         PR libstdc++/19535
324         * include/tr1/utility (struct __pair_get<1>::__get, __const_get):
325         Fix typo in the return type.
326         * testsuite/tr1/6_containers/utility/19535.cc: New.
327
328 2005-01-19  Loren J. Rittle  <ljrittle@acm.org>
329
330         * include/ext/array_allocator.h (array_allocator<>::allocate):
331         Avoid __used.  Use __array_used instead.
332         * docs/html/17_intro/BADNAMES: Add list for FreeBSD.
333
334 2005-01-18  David Edelsohn  <edelsohn@gnu.org>
335
336         * config/os/aix/os_defines.h (_XOPEN_SOURCE): Delete.
337         (_XOPEN_SOURCE_EXTENDED): Delete.
338
339 2005-01-18  Benjamin Kosnik  <bkoz@redhat.com>
340
341         * testsuite/testsuite_performance.h (time_counter::start):
342         Clear. Tweaks.
343         (clear_counters): Inline.
344         (start_counters): Inline.
345         (stop_counters): Inline.
346         * testsuite/performance/20_util/allocator/map_thread.cc: Return.
347         * testsuite/performance/20_util/allocator/insert.cc: Remove bogus
348         return, add return.
349         * testsuite/performance/20_util/allocator/map_thread.cc: Same.
350         
351 2005-01-17  Paolo Carlini  <pcarlini@suse.de>
352
353         PR libstdc++/19433
354         * include/bits/stl_tree.h (_Rb_tree<>::insert_unique(iterator,
355         const _Val&), _Rb_tree<>::insert_equal(iterator, const _Val&)):
356         Obtain amortized constant complexity if t is inserted right after
357         p - not before p - as per Table 69.
358         * testsuite/performance/23_containers/set_insert_from_sorted.cc: New.
359         
360         * testsuite/23_containers/multiset/insert/2.cc: New.
361         * testsuite/23_containers/set/insert/1.cc: Likewise.
362         
363         * testsuite/performance/23_containers/set_create_from_sorted.cc:
364         Simplify.
365
366         * include/bits/stl_tree.h: Add a few missing std:: qualifications.
367
368 2005-01-16  Jonathan Wakely  <redi@gcc.gnu.org>
369
370         * include/ext/rope: Qualify calls to std::copy() by sequence_buffer.
371         * testsuite/ext/rope/4.cc: Add.
372
373 2005-01-16  Lorenz Minder  <lminder@gmx.net>
374             Paolo Carlini  <pcarlini@suse.de>
375
376         PR libstdc++/19322
377         * include/c_std/std_cmath.h: Define the C99 classification facilities
378         directly inside namespace std:.
379         * testsuite/26_numerics/cmath/19322.cc: New.
380
381 2005-01-15  David Edelsohn  <edelsohn@gnu.org>
382
383         * config/os/aix/os_defines.h (_G_USING_THUNKS): Delete.
384
385 2005-01-14  Paolo Carlini  <pcarlini@suse.de>
386
387         PR libstdc++/19422
388         * include/bits/stl_tree.h (_Rb_tree<>::insert_equal(_II, _II),
389         _Rb_tree<>::insert_unique(_II, _II)): Use insert_equal (insert_unique,
390         respectively) with hint (end()).
391         * testsuite/performance/23_containers/set_create_from_sorted.cc: New.
392
393 2005-01-13  Geoffrey Keating  <geoffk@apple.com>
394
395         * configure.host (darwin): On darwin8 or later, no need to build
396         libstdc++ with -flat_namespace.
397
398 2005-01-13  Jonathan Wakely  <redi@gcc.gnu.org>
399
400         * docs/doxygen/user.cfg.in: Set HAVE_DOT back to YES.
401
402 2005-01-13  Paolo Carlini  <pcarlini@suse.de>
403
404         * testsuite/26_numerics/cmath/c99_classification_macros_c++.cc:
405         Re-enable commented-out test for double type.
406
407 2005-01-11  Paolo Carlini  <pcarlini@suse.de>
408             Benjamin Kosnik  <bkoz@redhat.com>
409
410         * src/istream.cc (basic_istream<char>::ignore(streamsize),
411         basic_istream<char>::ignore(streamsize, int_type),
412         basic_istream<wchar_t>::ignore(streamsize),
413         basic_istream<wchar_t>::ignore(streamsize, int_type)): In case
414         more than numeric_limits<streamsize>::max() chars are skipped,
415         set _M_gcount = max().
416         * include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
417         int_type)): Likewise; keep simple, don't forward.
418
419 2005-01-11  Paolo Carlini  <pcarlini@suse.de>
420
421         * src/istream.cc (basic_istream<char>::ignore(streamsize),
422         basic_istream<char>::ignore(streamsize, int_type),
423         basic_istream<wchar_t>::ignore(streamsize),
424         basic_istream<wchar_t>::ignore(streamsize, int_type)): Revert
425         2005-01-05 change: actually, the previous behavior is conforming
426         and consistent with that of get(char_type*, streamsize, char_type),
427         albeit slightly different from that of 3.3/3.4 in a corner case
428         due to the use of snextc.
429         * include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
430         int_type)): Likewise.
431         * testsuite/27_io/basic_istream/ignore/char/4.cc: Remove.
432         * testsuite/27_io/basic_istream/ignore/wchar_t/4.cc: Likewise.
433
434 2005-01-11  Paolo Carlini  <pcarlini@suse.de>
435
436         * include/tr1/type_traits: Implement alignment_of and aligned_storage.
437         * testsuite/tr1/4_metaprogramming/other_transformations/
438         aligned_storage/aligned_storage.cc: New.
439         * testsuite/tr1/4_metaprogramming/other_transformations/
440         aligned_storage/typedefs.cc: Likewise.
441         * testsuite/tr1/4_metaprogramming/type_properties/
442         alignment_of/alignment_of.cc: Likewise.
443         * testsuite/tr1/4_metaprogramming/type_properties/
444         alignment_of/typedefs.cc: Likewise.
445
446 2005-01-10  Paolo Carlini  <pcarlini@suse.de>
447
448         * Makefile.in: Regenerate.
449         * libmath/Makefile.in: Likewise.
450         * libsupc++/Makefile.in: Likewise.
451         * po/Makefile.in: Likewise.
452         * src/Makefile.in: Likewise.
453         * testsuite/Makefile.in: Likewise.
454
455 2005-01-10  Paolo Carlini  <pcarlini@suse.de>
456
457         * include/bits/stl_algobase.h (lexicographical_compare):
458         Fix concept check.
459
460 2005-01-07  Benjamin Kosnik  <bkoz@redhat.com>
461
462         * acinclude.m4: Remove CCODECVT_H.
463         * configure: Regenerate.
464         * include/Makefile.am (host_headers_extra): Move to...
465         (ext_headers): ...here.
466         * include/Makefile.in: Regenerate.
467         * include/ext/enc_filebuf: Remove enc_filebuf, consolidate
468         enc_traits to...
469         * config/locale/ieee_1003.1-2001/codecvt_specializations.h: Move...
470         * include/ext/codecvt_specializations.h: ...here. Remove
471         _GLIBCXX_USE___ENC_TRAITS. 
472         (__enc_traits): To __encoding_state, put in __gnu_cxx namespace.
473         (enc_char_traits): To __encoding_char_traits, put in __gnu_cxx
474         namespace.
475         * config/locale/generic/codecvt_specializations.h: Remove.
476         * include/bits/codecvt.h: Remove codecvt_specializations.h include.
477         * src/codecvt.cc: Remove __enc_traits::_S_max_size.
478
479 2005-01-06  Benjamin Kosnik  <bkoz@redhat.com>
480
481         * include/bits/fstream.tcc: Remove unnecessary qualifications for
482         uglified data members of basic_filebuf, including _M_buf,
483         _M_buf_size, _M_mode, _M_pback_init.
484         * include/std/std_fstream.h: Same.
485         
486 2005-01-05  Benjamin Kosnik  <bkoz@redhat.com>
487
488         * testsuite/testsuite_hooks.h: 
489         (copy_constructor::mark_call):  Use __throw_runtime_error.
490         (assignment_operator::mark_call): Same.
491         * testsuite/testsuite_hooks.cc (verify_demangle): Same.
492         (locale_data): Remove, just use runtime_error directly.
493         (environment_variable): Same.
494         (not_found): Same.
495         (run_tests_wrapped_locale): Use __throw_runtime_error.
496         (run_tests_wrapped_env): Same.
497         (semaphore::semaphore): Same.
498         (semaphore::signal): Same.
499         (semaphore::wait): Same.
500         * testsuite/testsuite_abi.h (symbol_error): Remove, use logic_error.
501         * testsuite/testsuite_abi.cc (get_symbol): Use __throw_logic_error.
502         (create_symbols): Use __throw_runtime_error.
503         * src/bitmap_allocator.cc: Use __throw_bad_alloc.
504
505 2005-01-05  Mark Mitchell  <mark@codesourcery.com>
506
507         * testsuite/27_io/basic_filebuf/open/char/9507.cc: Remove child
508         process.
509         
510 2005-01-05  Paolo Carlini  <pcarlini@suse.de>
511
512         * src/istream.cc (basic_istream<char>::ignore(streamsize),
513         basic_istream<char>::ignore(streamsize, int_type),
514         basic_istream<wchar_t>::ignore(streamsize),
515         basic_istream<wchar_t>::ignore(streamsize, int_type)): At the end,
516         first check _M_gcount vs __n.   
517         * include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
518         int_type)): Likewise.
519         * testsuite/27_io/basic_istream/ignore/char/4.cc: New.
520         * testsuite/27_io/basic_istream/ignore/wchar_t/4.cc: Likewise.
521
522 2005-01-03  Mark Mitchell  <mark@codesourcery.com>
523
524         * testsuite/testsuite_hooks.cc: Use __throw_exception_again
525         instead of just throw.
526
527         * testsuite/testsuite_hooks.cc: Update coypright and follow style
528         guidelines.
529         * testsuite/testsuite_hooks.h: Likewise.
530         * testsuite/27_io/basic_filebuf/close/char/4879.cc: Use
531         semaphores, not sleep.
532         * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
533         * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
534         * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: Likewise.
535         * testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc:
536         Likewise.
537         * testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
538         * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
539         * testsuite/27_io/objects/char/7.cc: Likewise.
540         * testsuite/27_io/objects/char/9661-1.cc: Likewise.
541         * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
542         * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
543
544         * configure.ac: Check for sys/ipc.h and sys/sem.h. 
545         * config.h.in: Regenerated.
546         * configure: Likewise.
547         * testsuite/testsuite_hooks.cc (_GLIBCXX_SYSV_SEM): Conditionally
548         define.
549         (sys/types.h): Include.
550         (sys/ipc.h): Likewise.
551         (sys/sem.h): Likewise.
552         (__gnu_test::semun): New type.
553         (__gnu_test::semaphore::sempaphore): New function.
554         (__gnu_test::semaphore::~semaphore): Likewise.
555         (__gnu_test::semaphore::wait): Likewise.
556         (__gnu_test::semaphore::signal): Likewise.
557         * testsuite/testsuite_hooks.h (__gnu_test::semaphore): New class.
558         * testsuite/27_io/basic_filebuf/close/char/4879.cc: Use
559         semaphores, not sleep.
560         * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
561         * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
562         * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: Likewise.
563         * testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc:
564         Likewise.
565         * testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
566         * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
567         * testsuite/27_io/objects/char/7.cc: Likewise.
568         * testsuite/27_io/objects/char/9661-1.cc: Likewise.
569         * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
570         * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
571
572 2005-01-03  Paolo Carlini  <pcarlini@suse.de>
573
574         * include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
575         int_type)): Reset _M_gcount to numeric_limits<streamsize>::min().
576         * src/istream.cc (basic_istream<char>::ignore(streamsize, int_type),
577         basic_istream<wchar_t>::ignore(streamsize, int_type)): Likewise.
578         * src/istream.cc (basic_istream<char>::ignore(streamsize),
579         basic_istream<wchar_t>::ignore(streamsize)): Likewise; fix a typo.
580
581 2005-01-02  Paolo Carlini  <pcarlini@suse.de>
582
583         * src/istream.cc (basic_istream<char>::ignore(streamsize),
584         basic_istream<char>::ignore(streamsize, int_type),
585         basic_istream<wchar_t>::ignore(streamsize),
586         basic_istream<wchar_t>::ignore(streamsize, int_type)): Avoid
587         _M_gcount overflows.    
588         * include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
589         int_type)): Likewise; use snextc in the main loop, consistently
590         with the specializations above.
591
592 2005-01-02  Chris Jefferson  <chris@bubblescope.net>
593
594         * include/bits/stl_algobase.h (mismatch): Correct concept check.
595
596 2005-01-01  Paolo Carlini  <pcarlini@suse.de>
597
598         * testsuite/ext/enc_filebuf/char/13189.cc: Fix, first include
599         testsuite_hooks.h, to know whether including ext/enc_filebuf.h.
600         * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Likewise.
601
602 2005-01-01  Paolo Carlini  <pcarlini@suse.de>
603
604         * testsuite/27_io/basic_istream/extractors_character/char/1.cc: Fix,
605         null-terminate array1 at the outset.
606         * testsuite/27_io/basic_istream/extractors_character/wchar_t/1.cc:
607         Likewise.