OSDN Git Service

2002-11-21 Phil Edwards <pme@gcc.gnu.org>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
1 2002-11-21  Phil Edwards  <pme@gcc.gnu.org>
2
3         * docs/doxygen/TODO:  Note change in clause 27 docs.
4         * include/bits/basic_ios.h, include/bits/fpos.h,
5         include/bits/ios_base.h, include/bits/stl_deque.h,
6         include/bits/stl_iterator_base_types.h, include/std/std_fstream.h,
7         include/std/std_iomanip.h, include/std/std_iosfwd.h,
8         include/std/std_iostream.h, include/std/std_istream.h,
9         include/std/std_ostream.h, include/std/std_sstream.h,
10         include/std/std_streambuf.h:  Doxygenate all I/O entities.
11
12 2002-11-20  Benjamin Kosnik  <bkoz@redhat.com>
13             Jonathan Lennox  <lennox@cs.columbia.edu>
14
15         * include/bits/streambuf.tcc (__copy_streambufs):
16         Revert previous fix for the interactive half of
17         libstdc++/6745, use _M_buf_size_opt to set dynamically
18         the correct buffer size.
19
20 2002-11-20  Jonathan Wakely  <redi@gcc.gnu.org>
21
22         * docs/html/21_strings/howto.html: Fix example code, cite Gaby's
23         explanation of "<unknown type>" error with toupper/tolower.
24         * docs/html/22_locale/howto.html: Be more consistent with
25         example in 21_strings.
26
27 2002-11-19  John Gustafsson  <forgoil@rsn.bth.se>
28
29         * docs/html/20_util/howto.html: Fix typo.
30
31 2002-11-18  Jonathan Lennox  <lennox@cs.columbia.edu>
32
33         * include/bits/streambuf.tcc (__copy_streambufs): verify
34         __sbin->gptr() + __bufsize < __sbin->egptr() before using.
35         * testsuite/27_io/ostream_inserter_other.cc (test_buffer_4): Add.
36         (test05): Use test_buffer_4.  Delete unused ostringstream
37         variables.
38
39 2002-11-18  Paolo Carlini  <pcarlini@unitus.it>
40
41         PR libstdc++/6745 (continued)
42         * include/bits/streambuf.tcc (__copy_streambufs):
43         Deal with interactive input by using isatty as in the
44         fix for libstdc++/8399.
45
46 2002-11-17  Jakub Jelinek  <jakub@redhat.com>
47
48         * config/linker-map.gnu: Export _S_construct even if size_t is
49         unsigned long.  Collapse std::codecvt<char>::codecvt(size_t)
50         and std::codecvt<wchar_t>::codecvt(size_t) into one export pattern.
51
52 2002-11-15  Benjamin Kosnik  <bkoz@redhat.com>
53             Gabriel Dos Reis  <gdr@integrable-solutions.net>
54
55         PR libstdc++/8230
56         * include/bits/stl_alloc.h: Use builtin_expect for the most
57         obvious limit checks.
58         (__default_alloc_template::allocate): Check for null, throw
59         bad_alloc.
60         * include/bits/vector.tcc: Formatting tweaks.
61         * include/bits/stl_vector.h: Same.      
62         * testsuite/20_util/allocator_members.cc (test02): Add.
63         * testsuite/23_containers/vector_capacity.cc (test03): Add.
64         
65 2002-11-15  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
66
67         * src/ios.cc [_GLIBCPP_HAVE_UNISTD_H]: Include unistd.h.
68
69 2002-11-15  Paolo Carlini  <pcarlini@unitus.it>
70             Loren J. Rittle  <ljrittle@acm.org>
71
72         PR libstdc++/8399
73         * acinclude.m4
74         (GLIBCPP_CHECK_UNISTD_DECL_AND_LINKAGE_1): New macro to
75         check for unistd.h functions.
76         (GLIBCPP_CHECK_UNISTD_SUPPORT): New macro, check for isatty
77         in unistd.h.
78         * configure.in: Call here.
79         * src/ios.cc (ios_base::Init::_S_ios_create(bool)):
80         Use _GLIBCPP_HAVE_ISATTY: ifdef, in case of interactive
81         input __in_size = 1 even when sync_with_stdio is false;
82         otherwise fall back to __in_size = 1.
83         * aclocal.m4: Regenerate.
84         * config.h.in: Regenerate.
85         * configure: Regenerate.
86
87 2002-11-13  Benjamin Kosnik  <bkoz@redhat.com>
88
89         * acconfig.h (HAVE_DRAND48): Add.
90         (HAVE_GETPAGESIZE): Add.
91         (HAVE_SETENV): Add.     
92         (HAVE_SIGSETJMP): Add.          
93         * config.h.in: Regenerate.
94         * configure: Regenerate.
95         
96 2002-11-13  John David Anglin  <dave@hiauly1.hia.nrc.ca>
97
98         * config/os/hpux/os_defines.h (_GLIBCPP_INST_ATOMICITY_LOCK): Define
99         on hppa when there is no weak support.
100
101 2002-11-13  Benjamin Kosnik  <bkoz@redhat.com>
102
103         PR libstdc++/8230
104         * include/bits/vector.tcc (vector::reserve): Throw length_error if
105         requested size is bigger than max_size().
106         * include/bits/stl_bvector.h (vector<bool>::reserve): Same.
107         * testsuite/23_containers/vector_capacity.cc (test02): Add.
108         
109 2002-11-13  Benjamin Kosnik  <bkoz@redhat.com>
110
111         * config/linker-map.gnu: Export all _S_construct.
112
113 2002-11-13  Loren J. Rittle  <ljrittle@acm.org>
114
115         PR libstdc++/7445
116         * src/locale.cc (std::locale::classic()): Weaken locking protocol.
117
118 2002-11-13  Jonathan Wakely  <redi@gcc.gnu.org>
119
120         * docs/html/install.html, docs/html/22_locale/locale.html: HTML fix.
121
122 2002-11-11  Benjamin Kosnik  <bkoz@redhat.com>
123  
124         PR libstdc++/6746
125         * include/bits/fstream.tcc (filebuf::open): Set input pointers.
126         * config/io/basic_file_stdio.cc (__basic_file::_M_open_mode): Set
127         __p_mode as well.
128         (__basic_file::open): Set to non-block for input.
129         * testsuite/27_io/istream_unformatted.cc (test12): Add.
130         (test13): Same.
131         
132 2002-11-11  Jonathan Wakely <redi@gcc.gnu.org>
133
134         * docs/html/17_intro/howto.html: Make "chapter 22 notes" a link.
135         * docs/html/faq/index.html: Mention that GCC ships with a newer
136         version of the library than the last snapshot. Make "see below" a
137         link. Add missing <html> tag.
138         * docs/html/faq/index.txt: Regenerate.
139         * docs/html/22_locale/locale.html, docs/html/22_locale/messages.html,
140         docs/html/23_containers/howto.html, docs/html/24_iterators/howto.html,
141         docs/html/25_algorithms/howto.html, docs/html/26_numerics/howto.html,
142         docs/html/27_io/howto.html, docs/html/ext/howto.html,
143         docs/html/ext/sgiexts.html: Add missing <html> tag.
144
145 2002-11-07  Phil Edwards  <pme@gcc.gnu.org>
146             Richard Earnshaw  <rearnsha@arm.com>
147
148         * config/cpu/generic/atomicity.h:  Provide atomic __exchange_and_add
149         and __atomic_add.
150
151 2002-11-08  Paolo Carlini  <pcarlini@unitus.it>
152
153         * config/locale/gnu/monetary_members.cc
154         (moneypunct<wchar_t, true>::_M_initialize_moneypunct(__c_locale,
155         const char*),
156         moneypunct<wchar_t, false>::_M_initialize_moneypunct(__c_locale,
157         const char*)): Tweak parameters for glibc2.3 systems, thus
158         avoiding unused parameter warnings.
159
160 2002-11-05  Jonathan Wakely  <cow@compsoc.man.ac.uk>
161
162         * include/std/std_sstream.h
163         (basic_stringbuf::str(const __string_type&)):
164         Prefer data() to c_str(), thus avoiding assigning the
165         unnecessary NULL-terminator.
166
167 2002-11-05  Benjamin Kosnik  <bkoz@redhat.com>
168
169         PR libstdc++/8258
170         * include/bits/istream.tcc (istream::readsome): Don't set eofbit
171         for null buffer.
172         (istream::operator>>(_CharT*)): Use traits_type.
173         (istream::ws): Same.
174         (istream::operator>>(string)): Same.    
175         * testsuite/27_io/istream_unformatted.cc (test11): Add.
176         
177 2002-11-05  Paolo Carlini  <pcarlini@unitus.it>
178
179         PR libstdc++/8466
180         * include/std/std_sstream.h
181         (basic_stringbuf::str(const __string_type&)):
182         Cannot use simple assignment since the COW-nature of v3
183         basic_string is not taken into account in basic_stringbuf.
184         * testsuite/27_io/stringstream_members.cc: Add test04 from PR.
185
186 2002-11-05  John David Anglin  <dave@hiauly1.hia.nrc.ca>
187
188         * configure.target (hppa*): Define cpu_include_dir.
189         * config/os/hpux/os_defines.h (_GLIBCPP_INST_ATOMICITY_LOCK): Define.
190         * src/misc-inst.cc: Instantiate atomicity lock when
191         _GLIBCPP_INST_ATOMICITY_LOCK is defined.
192         * config/cpu/hppa/atomicity.h: New file.
193
194 2002-11-05  Benjamin Kosnik  <bkoz@redhat.com>
195
196         PR libstdc++/8463
197         * include/bits/ios_base.h (~ios_base): Make virtual.
198
199 2002-11-04  Benjamin Kosnik  <bkoz@redhat.com>
200
201         * config/linker-map.gnu: Export string operator+.
202         Export __default_alloc_template::_S_force_new.
203         * testsuite/abi_check.cc: Output tweaks.
204         
205 2002-11-01  Benjamin Kosnik  <bkoz@redhat.com>
206
207         PR libstdc++/8172
208         * src/string-inst.cc: Add instantiation.
209
210 2002-11-01  Benjamin Kosnik  <bkoz@redhat.com>
211
212         PR libstdc++/7926
213         * configure.target: Simplify.
214         * config/cpu/i386/atomicity.h: Remove.
215         * config/cpu/i386: Remove.      
216         * config/cpu/arm/atomicity.h: Remove.
217         * config/cpu/arm: Remove.       
218         * config/cpu/x86-64/atomicity.h: Remove.
219         * config/cpu/x86-64: Remove.    
220         
221 2002-11-01  Christian Ehrhardt  <ehrhardt@mathematik.uni-ulm.de>
222
223         PR libstdc++/8197
224         * config/link-map.gnu: Export math stubbs.
225         
226 2002-11-01  Benjamin Kosnik  <bkoz@redhat.com>
227
228         PR libstdc++/8318
229         * include/std/std_iostream.h: Tweak.
230         * include/std/std_iosfwd.h: Add _GLIBCPP_USE_WCHAR_T.
231         * include/std/std_iomanip.h: Same.
232         * include/bits/stringfwd.h: Same.
233         * include/bits/basic_string.tcc: Same.
234         * include/bits/sstream.tcc: Same.
235         * include/bits/fstream.tcc: Same.
236         * include/bits/basic_ios.tcc: Same.
237         * include/bits/streambuf.tcc: Same.
238         * include/bits/locale_facets.tcc: Same.
239         
240 2002-11-01  John Carter  <john.carter@tait.co.nz>
241
242         PR libstdc++/7961
243         * include/bits/basic_string.tcc
244         (compare(const _CharT* __s)): Don't access __s past its length.
245
246 2002-10-31  Benjamin Kosnik  <bkoz@redhat.com>
247
248         PR libstdc++/8348
249         * include/bits/istream.tcc (istream::tellg): Remove sentry bits.
250         (istream::seekg): Same.
251         * testsuite/27_io/istream_seeks.cc (test06): New.
252         
253 2002-10-28  Jason Thorpe  <thorpej@wasabisystems.com>
254
255         * testsuite/thread/pthread5.cc: Include <unistd.h>
256         if _GLIBCPP_HAVE_UNISTD_H is defined.
257         (main): Only use pthread_attr_setscope if
258         _POSIX_THREAD_PRIORITY_SCHEDULING is defined.
259
260 2002-10-28  Jason Thorpe  <thorpej@wasabisystems.com>
261
262         * testsuite/thread/pthread1.cc: Enable on *-*-netbsd*.
263         * testsuite/thread/pthread2.cc: Likewise.
264         * testsuite/thread/pthread3.cc: Likewise.
265         * testsuite/thread/pthread4.cc: Likewise.
266         * testsuite/thread/pthread5.cc: Likewise.
267         * testsuite/thread/pthread6.cc: Likewise.
268
269 2002-10-27  Paolo Carlini  <pcarlini@unitus.it>
270
271         PR libstdc++/8347
272         * include/bits/basic_string.tcc
273         (string::_S_construct(_InIter, _InIter, const _Alloc&,
274         forward_iterator_tag)): Do not throw logic error if
275         __beg == NULL && __end == __beg.
276         (string::string(const _CharT*, const _Alloc&)): Tweak.
277         * testsuite/21_strings/ctor_copy_dtor.cc: Add test05 from PR.
278
279 2002-10-24  Hans-Peter Nilsson  <hp@bitrange.com>
280
281         PR other/3337
282         PR bootstrap/6763
283         PR bootstrap/8122
284         * testsuite/testsuite_hooks.cc (__set_testsuite_memlimit): Use
285         __typeof__ (r.rlim_cur), not rlim_t in declaration of limit.
286
287 2002-10-23  Jakub Jelinek  <jakub@redhat.com>
288
289         * testsuite/22_locale/num_put_members_char.cc (test01): Swap size
290         and decimal_point arguments of find.
291         * testsuite/22_locale/num_put_members_wchar_t.cc (test01): Likewise.
292
293 2002-10-22  Jakub Jelinek  <jakub@redhat.com>
294
295         * Makefile.am (check-abi, new-abi-baseline): Use @glibcpp_srcdir@
296         instead of ${top_srcdir}.
297         * Makefile.in: Rebuilt.
298
299 2002-10-22  Loren J. Rittle  <ljrittle@acm.org>
300
301         * testsuite/18_support/numeric_limits.cc (test_extrema<long double>):
302         Remove specialization for FreeBSD systems.
303
304 2002-10-18  Loren J. Rittle  <ljrittle@acm.org>
305
306         * configure.target (freebsd*): Use abi_baseline_triplet.
307         * config/abi/i386-unknown-freebsd4/baseline_symbols.txt: New file.
308         * config/abi/i386-unknown-freebsd4.7/baseline_symbols.txt: Remove.
309
310         * testsuite/thread/pthread1.cc: Remove needless workaround
311         for FreeBSD 5.
312
313 2002-10-18  Loren J. Rittle  <ljrittle@acm.org>
314             Brad Spencer  <spencer@infointeractive.com> (provided alternate
315                                                          patch and improvements)
316
317         * docs/html/23_containers/howto.html (GLIBCPP_FORCE_NEW): Document
318         new environment variable which replaces all uses of __USE_MALLOC
319         macro.
320         * docs/html/ext/howto.html (GLIBCPP_FORCE_NEW): Likewise.
321         (__mem_interface): Remove all references to old internal typedef.
322         * include/backward/alloc.h (__USE_MALLOC): Remove it and all
323         guarded code.
324         * include/bits/c++config (__USE_MALLOC): Update related error
325         message and comment.
326         * include/bits/stl_alloc.h (__USE_MALLOC): Remove it and all
327         guarded code.  Update all related comments.
328         (__mem_interface): Unconditionally replace it with __new_alloc.
329         However, leave the typedef around in case anyone used it.
330         (__default_alloc_template<>::_S_force_new): New class static.
331         (__default_alloc_template<>::allocate, deallocate): Add
332         run-time controlled feature similar to what __USE_MALLOC code
333         path had provided.
334         * src/stl-inst.cc (__USE_MALLOC): Remove it and all
335         guarded code.
336         * testsuite/21_strings/capacity.cc: Remove reference to __USE_MALLOC.
337         Add documentation on GLIBCPP_FORCE_NEW environment variable.
338         * testsuite/ext/allocators.cc: Likewise.
339
340 2002-10-18  Phil Edwards  <pme@gcc.gnu.org>
341
342         * configure.in:  Use target, not target_alias, when matching triplet
343         patterns.
344         * configure:  Regenerate.
345
346 2002-10-17  Momchil Velikov  <velco@fadata.bg>
347             Loren J. Rittle  <ljrittle@acm.org>
348
349         * configure.in: Add *-freebsd* to cross list.
350         * configure: Rebuilt.
351
352 2002-10-16  Benjamin Kosnik  <bkoz@redhat.com>
353
354         * include/bits/locale_facets.h (__timepunct::__timepunct): Allocate
355         _M_name_timepunct.
356         (__timepunct::~__timepunct): Deallocate, remove specialization
357         declarations.
358         (messages::messages): Allocate _M_name_messages.
359         (messages::~messages): Deallocate.
360         (messages_byname): Same.
361         * config/locale/gnu/time_members.cc (__timepunct::~__timepunct):
362         Remove.
363         * config/locale/generic/time_members.cc (__timepunct::~__timepunct):
364         Remove.
365
366         * docs/html/install.html: Add es_MX, en_PH to required locales list.
367
368 2002-10-16  Benjamin Kosnik  <bkoz@redhat.com>
369
370         * config/linker-map.gnu: Add exports for codecvt constructors
371         where size_t == unsigned long.
372
373 2002-10-14  Benjamin Kosnik  <bkoz@redhat.com>
374
375         * src/globals.cc (__gnu_cxx::c_locale_impl_compat): Add, alias to
376         c_locale_impl.
377         * testsuite/abi_check.cc (line_to_symbol_info): Collect size info.
378         * docs/html/abi.txt: Update.
379         
380 2002-10-14  Benjamin Kosnik  <bkoz@redhat.com>
381
382         * testsuite/22_locale/static_members.cc (test02): Less provincial.
383
384 2002-10-14  Benjamin Kosnik  <bkoz@redhat.com>
385
386         * testsuite/22_locale/static_members.cc (test02): Disable for 
387         systems without named locale support.
388         * testsuite/22_locale/ctor_copy_dtor.cc (test04): Don't assume
389         running the testsuites in "C" environment.
390         Add new tests.
391         * docs/html/22_locale/locale.html: Update.
392
393 2002-10-13  Danny Smith  <dannysmith@users.sourceforge.net> 
394
395         * include/bits/stl_threads.h (_GLIBCPP_mutex,
396         _GLIBCPP_mutex_init,_GLIBCPP_mutex_address,
397         _GLIBCPP_mutex_address_init, _GLIBCPP_once):
398         Declare in namespace __gnu_cxx.
399         (_STL_mutex_lock::_M_initialize): Qualify __gnu_cxx
400         names.
401         Adjust copyright.
402
403 2002-10-12  Benjamin Kosnik  <bkoz@redhat.com>
404
405         * testsuite/abi_check.cc (hash<string>): Specialize.
406         Simplify. Check compatible symbol versions.
407         * config/linker-map.gnu: Clarify, explicitly export
408         std::codecvt::c* symbols.
409
410         * testsuite/22_locale/static_members.cc (test02): Avoid null strings.
411
412 2002-10-12  Jonathan Wakely  <jw@kayari.org>
413             Gabriel Dos Reis  <gdr@integrable-solutions.net>
414
415         * docs/html/21_strings/howto.html#5:  Correct nasting of XHTML
416         elements.  Correct allocator-related text.
417
418 2002-10-11  Benjamin Kosnik  <bkoz@redhat.com>
419
420         * testsuite/22_locale/static_members.cc (test02): Fix.
421
422 2002-10-11  Benjamin Kosnik  <bkoz@redhat.com>
423
424         * acconfig.h (_GLIBCPP_SYMVER): Add.
425         (_GLIBCPP_ASM_SYMVER): Add.
426         * acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Define _GLIBCPP_SYMVER.
427         * aclocal.m4: Regenerate.
428         * config.h.in: Regenerate.
429         * configure: Regenerate.
430         * include/bits/c++config (_GLIBCPP_AT_AT): Define, as an expedient
431         hack around m4 issues with quoting '@'.
432         * src/locale.cc: Use _GLIBCPP_ASM_SYMVER.
433         * src/globals.cc: Same.
434         
435         * testsuite/22_locale/ctor_copy_dtor.cc (test04): Fix for
436         non-glibc systems.
437
438 2002-10-10  Benjamin Kosnik  <bkoz@redhat.com>
439
440         * config/linker-map.gnu (GLIBCPP_3.2.1): Add.
441         (GLIBCPP_3.2): Don't export locale::_S_*. 
442         * src/ios.cc: Move globals into __gnu_cxx. Make old exported
443         symbols match.
444         * src/locale.cc: Same.
445         * src/localename.cc: Same.      
446         * src/globals.cc: Same. 
447
448 2002-10-10  Phil Edwards  <pme@gcc.gnu.org>
449
450         * docs/html/21_strings/howto.html:  Write #5, char_traits.
451         * docs/html/17_intro/porting.texi:  Expand on os_include_dir.
452         * docs/html/17_intro/porting.html:  Regenerate.
453
454 2002-10-09  Benjamin Kosnik  <bkoz@redhat.com>  
455
456         * src/locale.cc: Fix comments, move ctors together.
457         * testsuite/22_locale/static_members.cc (test03): Add.
458
459 2002-10-08  Jonathan Lennox  <lennox@cs.columbia.edu>
460
461         PR libstdc++/8071, libstdc++/8127, libstdc++/6745
462         * streambuf.tcc (__copy_streambufs): Handle cases where
463         __sbin->in_avail() returns 0, or where __sbin doesn't set gptr().
464         * testsuite/27_io/ostream_inserter_other.cc (test05): Add.
465         
466 2002-10-08  Paolo Carlini  <pcarlini@unitus.it>
467             Benjamin Kosnik  <bkoz@redhat.com>  
468
469         * include/bits/localefwd.h (class locale): Add static member
470         _S_num_extra_categories, encoding the number of additional
471         categories.
472         Change _S_num_categories to _S_categories_size.
473         (class locale::_Impl): Add _M_c_cats.
474         (class locale::_Impl::_M_names): Change to array of chars.
475         (class locale::_Impl::_M_check_same_name): Use
476         _S_extra_categories_size, tweak.
477         (locale::locale(const locale&, _Facet*)): Ditto.
478         * src/locale.cc (locale::locale(const char* )): Rewrite to deal
479         with the environment in a POSIX-compliant way while being thread
480         safe.
481         (locale::name()): Update to output POSIX environment strings.
482         * src/localename.cc
483         (locale::_Impl::_Impl(const _Impl&, size_t): Use
484         _S_categories_size_*, tweak.
485         (locale::_Impl::_Impl(facet**, size_t, bool)): Ditto.
486         (locale::_Impl::_Impl(const char*, size_t)): Name each category
487         individually.
488         (locale::_Impl::_M_replace_categories): Use strcpy.
489
490         * include/bits/locale_facets.h (numpunct::_M_initialize_numpunct):
491         Change default argument to NULL from _S_c_locale.
492         (timepunct::_M_initialize_timepunct): Same.
493         _S_c_locale cleanups.
494         * src/codecvt.c: _S_c_locale simplification.
495         * src/ctype.c: Same.
496         * src/globals.cc: Add fake_name.
497         * src/locale-inst.cc: Remove extra includes.    
498         * src/locale.cc: Remove extra includes.
499         Add _S_extra_categories_size definition.
500         Correct "C" initialization.
501         (locale::facet::facet): Don't initialize _S_c_locale.
502         (locale::facet::_M_remove_reference): Adjust.
503         * src/localename: Use facet_vec, facet_name.
504         (locale::_Impl::_Impl(facet** __f, size_t __refs, bool)): Set
505         facet ref counts to one. Initialize _S_c_locale.
506         (locale::_Impl::_M_install_facet(id*, facet*)): Adjust facet ref
507         counts when installing unilaterally.
508
509         * config/locale/generic/c_locale.cc: Add _S_categories definition.
510         * config/locale/generic/c_locale.h: Add _GLIBCPP_NUM_CATEGORIES macro.
511         * config/locale/generic/time_members.cc: _S_c_locale cleanup.
512         
513         * config/locale/gnu/c_locale.cc: Add _S_categories definition.
514         (_S_destroy_c_locale): Move checks against _S_c_locale here.
515         * config/locale/gnu/c_locale.h: Add _GLIBCPP_NUM_CATEGORIES macro.
516         * config/locale/gnu/ctype_members.cc: Simplify _S_destroy_c_locale
517         calls, _S_c_locale usage.
518         * config/locale/gnu/monetary_members.cc: Same, tweaks.
519         * config/locale/gnu/monetary_members.cc: Same.
520         * config/locale/gnu/time_members.cc: Same.      
521         * config/os/gnu-linux/ctype_noninline.h: Use locale::classic().
522
523         * docs/html/22_locale/locale.html: Add bits about global locales
524         and "C" setlocale.
525
526         * testsuite/22_locale/facet.cc (test02): Add.
527         * testsuite/22_locale/static_members.cc (test02): Add.
528         * testsuite/22_locale/ctor_copy_dtor.cc (test04): Add.
529
530 2002-10-07  Jonathan Wakely  <jw@kayari.org>
531
532         * docs/html/configopts.html, docs/html/documentation.html,
533         docs/html/explanations.html, docs/html/install.html,
534         docs/html/17_intro/contribute.html, docs/html/17_intro/howto.html,
535         docs/html/17_intro/license.html, docs/html/18_support/howto.html,
536         docs/html/19_diagnostics/howto.html, docs/html/20_util/howto.html,
537         docs/html/21_strings/howto.html, docs/html/22_locale/codecvt.html,
538         docs/html/22_locale/ctype.html, docs/html/22_locale/howto.html,
539         docs/html/22_locale/locale.html, docs/html/22_locale/messages.html,
540         docs/html/23_containers/howto.html, docs/html/24_iterators/howto.html,
541         docs/html/25_algorithms/howto.html, docs/html/26_numerics/howto.html,
542         docs/html/27_io/howto.html, docs/html/ext/howto.html,
543         docs/html/ext/sgiexts.html, docs/html/faq/index.html:  Add DOCTYPEs.
544
545 2002-10-03  Richard Earnshaw  <rearnsha@arm.com>
546
547         PR libstdc++/3584
548         * config/cpu/arm/atomicity.h (__exchange_and_add): Don't try to use
549         ASM sequences that don't give us atomic addition operations.  Instead
550         just add a comment explaining why it doesn't work.
551         (__atomic_add): Just use __exchange_and_add.
552         (__test_and_set, __always_swap): Delete.
553
554 2002-10-02  Andreas Jaeger  <aj@suse.de>
555
556         * config/abi/x86_64-unknown-linux-gnu/baseline_symbols.txt:
557         New file.
558
559 2002-10-01  Phil Edwards  <pme@gcc.gnu.org>
560
561         * Makefile.am (check-abi):  Add @ to rule.
562         * Makefile.in:  Regenerated.
563
564 2002-09-27  Paolo Carlini  <pcarlini@unitus.it>
565
566         * include/bits/locale_facets.tcc (num_put::_M_widen_int):
567         Deal correctly with grouped, showbased (oct or hex) zero.
568         * testsuite/22_locale/num_put_members_char.cc: Add test05.
569         * testsuite/22_locale/num_put_members_wchar_t.cc: Ditto.
570
571 2002-09-27  Richard Henderson  <rth@redhat.com>
572
573         * config/os/hpux/cpu_limits.h: Remove.
574
575         * include/std/std_limits.h (numeric_limits<T>::is_iec559): False
576         if denormals are not supported.
577
578 2002-09-25  Benjamin Kosnik  <bkoz@redhat.com>
579
580         * include/Makefile.am (target_headers): Remove cpu_limits.h.
581         * include/Makefile.in: Regenerate.
582         * configure.in (CPU_LIMITS_INC_SRCDIR): Remove
583         * configure: Regenerate.
584         * configure.target (CPULIMITS): Remove.
585
586         * include/std/std_limits.h: Remove cpu_limits.h include.
587
588         * config/os/solaris/solaris2.7/os_defines.h (__glibcpp_long_bits):
589         Remove.
590         * config/os/irix/irix6.5/os_defines.h
591         (__glibcpp_long_double_bits): Remove.
592         (__glibcpp_wchar_t_bits): Remove.
593         (__glibcpp_long_bits): Remove.
594         * config/os/irix/irix5.2/os_defines.h
595         (__glibcpp_long_double_bits): Remove.
596         (__glibcpp_long_bits): Remove.
597         * config/os/hpux/os_defines.h (__glibcpp_wchar_t_is_signed): Remove.
598         * config/os/bsd/freebsd/os_defines.h: 
599         (__glibcpp_long_double_bits): Remove.
600         * config/os/aix/os_defines.h (__glibcpp_wchar_t_bits): Remove.
601         (__glibcpp_wchar_t_is_signed): Remove.
602         (__glibcpp_long_bits): Remove.
603         * config/os/gnu-linux/os_defines.h (__glibcpp_long_bits): Remove.
604         (__glibcpp_long_double_bits): Remove.
605
606         * config/os/osf/osf5.0/cpu_limits.h: Remove.
607         * config/cpu/alpha/cpu_limits.h: Remove.
608         * config/cpu/arm/cpu_limits.h: Remove.
609         * config/cpu/cris/cpu_limits.h: Remove.
610         * config/cpu/generic/cpu_limits.h: Remove.
611         * config/cpu/generic/limits.h: Remove.          
612         * config/cpu/ia64/cpu_limits.h: Remove.
613         * config/cpu/m68k/cpu_limits.h: Remove. 
614         * config/cpu/mmix/cpu_limits.h: Remove.         
615         * config/cpu/powerpc/cpu_limits.h: Remove.                      
616         * config/cpu/S390/cpu_limits.h: Remove.
617         
618 2002-09-25  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
619
620         * testsuite/18_support/numeric_limits.cc: Check the maximum and
621         minimum values of the wchar_t type.
622
623 2002-09-25  Mark Mitchell  <mark@codesourcery.com>
624
625         * include/std/std_limits.h (numeric_limits<unsigned char>::digits): 
626         Fix typo.
627         
628 2002-09-23  Richard Henderson  <rth@redhat.com>
629
630         * include/std/std_limits.h (__glibcpp_plain_char_is_signed,
631         __glibcpp_wchar_t_is_signed, __glibcpp_s8_max, __glibcpp_s8_min,
632         __glibcpp_s8_digits, __glibcpp_s8_digits10, __glibcpp_u8_min,
633         __glibcpp_u8_max, __glibcpp_u8_digits, __glibcpp_u8_digits10,
634         __glibcpp_s16_max, __glibcpp_s16_min, __glibcpp_s16_digits,
635         __glibcpp_s16_digits10, __glibcpp_u16_min, __glibcpp_u16_max,
636         __glibcpp_u16_digits, __glibcpp_u16_digits10, __glibcpp_s32_max,
637         __glibcpp_s32_min, __glibcpp_s32_digits, __glibcpp_s32_digits10,
638         __glibcpp_u32_min, __glibcpp_u32_max, __glibcpp_u32_digits,
639         __glibcpp_u32_digits10, __glibcpp_s64_max, __glibcpp_s64_min,
640         __glibcpp_s64_digits, __glibcpp_s64_digits10, __glibcpp_u64_min,
641         __glibcpp_u64_max, __glibcpp_u64_digits, __glibcpp_u64_digits10,
642         __glibcpp_bool_digits, __glibcpp_signed_char_min,
643         __glibcpp_signed_char_max, __glibcpp_signed_char_digits,
644         __glibcpp_signed_char_digits10, __glibcpp_unsigned_char_min,
645         __glibcpp_unsigned_char_max, __glibcpp_unsigned_char_digits,
646         __glibcpp_unsigned_char_digits10, __glibcpp_char_min,
647         __glibcpp_char_max, __glibcpp_char_digits, __glibcpp_char_digits10,
648         __glibcpp_signed_short_min, __glibcpp_signed_short_max,
649         __glibcpp_signed_short_digits, __glibcpp_signed_short_digits10,
650         __glibcpp_unsigned_short_min, __glibcpp_unsigned_short_max,
651         __glibcpp_unsigned_short_digits, __glibcpp_unsigned_short_digits10,
652         __glibcpp_signed_int_min, __glibcpp_signed_int_max,
653         __glibcpp_signed_int_digits, __glibcpp_signed_int_digits10,
654         __glibcpp_unsigned_int_min, __glibcpp_unsigned_int_max,
655         __glibcpp_unsigned_int_digits, __glibcpp_unsigned_int_digits10,
656         __glibcpp_signed_long_min, __glibcpp_signed_long_max,
657         __glibcpp_unsigned_long_digits, __glibcpp_unsigned_long_digits10,
658         __glibcpp_signed_long_long_min, __glibcpp_signed_long_long_max,
659         __glibcpp_signed_long_long_digits, __glibcpp_signed_long_long_digits10,
660         __glibcpp_wchar_t_min, __glibcpp_wchar_t_max, __glibcpp_wchar_t_digits,
661         __glibcpp_wchar_t_digits10): Remove.
662         (__glibcpp_byte, __glibcpp_word_bits, __glibcpp_word): Remove.
663         (__float_storage, __double_storage, __long_double_storage): Remove.
664         (__glibcpp_signed, __glibcpp_min, __glibcpp_max): New.
665         (__glibcpp_digits, __glibcpp_digits10): New.
666         (numeric_limits<T>::min): Use __glibcpp_min or limits.h builtins.
667         (numeric_limits<T>::max): Use __glibcpp_max or limits.h builtins.
668         (numeric_limits<T>::is_signed, T=char,wchar_t): Use __glibcpp_signed.
669         (numeric_limits<T>::digits): Use __glibcpp_digits.
670         (numeric_limits<T>::digits10): Use __glibcpp_digits10.
671         * testsuite/18_support/numeric_limits.cc (test03): Don't use
672         __glibcpp_s8_digits10 et al; check vs the installed versions
673         of digits10 for particular sizes.
674
675         * include/std/std_limits.h (__glibcpp_float_is_modulo,
676         __glibcpp_double_is_modulo, __glibcpp_long_double_is_modulo): Kill.
677         (numeric_limits<T>::is_modulo, T floating): Use false.
678
679 2002-09-22  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
680
681         * Makefile.am (all-multi): Fix multilib parallel build.
682
683 2002-09-22  Richard Henderson  <rth@redhat.com>
684
685         * include/std/std_limits.h (__glibcpp_f32_round_error,
686         __glibcpp_f64_round_error, __glibcpp_f80_round_error,
687         __glibcpp_f96_round_error, __glibcpp_f128_round_error,
688         __glibcpp_float_round_error, __glibcpp_double_round_error,
689         __glibcpp_long_double_round_error, __glibcpp_float_round_style,
690         __glibcpp_double_round_style, __glibcpp_long_double_round_style): Kill.
691         (numeric_limits<char>::epsilon, round_error): Use constant 0.
692         (numeric_limits<float>::round_error): Use constant 0.5.
693         (numeric_limits<float>::round_style): Use round_to_nearest.
694         (numeric_limits<double>, numeric_limits<long double>): Similarly.
695
696         * include/std/std_limits.h (__glibcpp_f32_is_iec559,
697         __glibcpp_f64_is_iec559, __glibcpp_f80_is_iec559,
698         __glibcpp_f96_is_iec559, __glibcpp_f128_is_iec559,
699         __glibcpp_float_is_iec559, __glibcpp_double_is_iec559,
700         __glibcpp_long_double_is_iec559): Remove.
701         (numeric_limits<float>::is_iec559): Use has_infinity & has_quiet_NaN.
702         (numeric_limits<double>, numeric_limits<long double>): Similarly.
703
704         * include/std/std_limits.h (__glibcpp_integral_traps): New.
705         (__glibcpp_char_traps, __glibcpp_short_traps, __glibcpp_int_traps,
706         __glibcpp_long_traps, __glibcpp_wchar_t_traps,
707         __glibcpp_long_long_traps, __glibcpp_plain_char_traps,
708         __glibcpp_signed_char_traps, __glibcpp_unsigned_char_traps,
709         __glibcpp_signed_short_traps, __glibcpp_unsigned_short_traps,
710         __glibcpp_signed_int_traps, __glibcpp_unsigned_int_traps,
711         __glibcpp_signed_long_traps, __glibcpp_unsigned_long_traps,
712         __glibcpp_signed_long_long_traps, __glibcpp_unsigned_long_long_traps,
713         __glibcpp_char_is_modulo, __glibcpp_signed_char_is_modulo,
714         __glibcpp_signed_short_is_modulo, __glibcpp_signed_int_is_modulo,
715         __glibcpp_signed_long_is_modulo, __glibcpp_signed_long_long_is_modulo,
716         __glibcpp_wchar_t_is_modulo, __glibcpp_float_is_bounded,
717         __glibcpp_double_is_bounded, __glibcpp_long_double_is_bounded): Kill.
718         (numeric_limits<T>::traps, T integral): Use __glibcpp_integral_traps.
719         (numeric_limits<T>::is_modulo, T integral): Use true.
720         (numeric_limits<T>::is_bounded, T floating): Use true.
721
722 2002-09-18  Loren J. Rittle  <ljrittle@acm.org>
723
724         * testsuite/18_support/numeric_limits.cc (test_epsilon): New.
725
726 2002-09-18  Richard Henderson  <rth@redhat.com>
727
728         * testsuite/18_support/numeric_limits.cc: Add -mieee for alpha.
729
730 2002-09-16  Benjamin Kosnik  <bkoz@redhat.com>
731
732         * include/c_shadow: Remove.
733         * include/bits/generic_shadow.h: Remove.
734         * include/Makefile.am: Remove generic_shadow.h.
735         * acinclude.m4: Remove c_shadow references.
736         * aclocal.m4: Regenerate.
737         * configure: Regenerate.
738         * mkcshadow: Remove.
739         * mkinclosure: Remove.
740
741 2002-09-16  Loren J. Rittle  <ljrittle@acm.org>
742
743         libstdc++/7922
744         * include/ext/stl_rope.h (rope<>): Qualify dependent names
745         with `typename'.
746
747 2002-09-16  Richard Henderson  <rth@redhat.com>
748
749         * include/std/std_limits.h (__glibcpp_f32_QNaN_bytes,
750         __glibcpp_f32_has_QNaN, __glibcpp_f32_SNaN_bytes,
751         __glibcpp_f32_has_SNaN, __glibcpp_f64_QNaN_bytes,
752         __glibcpp_f64_has_QNaN, __glibcpp_f64_SNaN_bytes,
753         __glibcpp_f64_has_SNaN, __glibcpp_f80_QNaN_bytes,
754         __glibcpp_f80_has_QNaN, __glibcpp_f80_SNaN_bytes,
755         __glibcpp_f80_has_SNaN, __glibcpp_f96_QNaN_bytes,
756         __glibcpp_f96_has_QNaN, __glibcpp_f96_SNaN_bytes,
757         __glibcpp_f96_has_SNaN, __glibcpp_f128_QNaN_bytes,
758         __glibcpp_f128_has_QNaN, __glibcpp_f128_SNaN_bytes,
759         __glibcpp_f128_has_SNaN, __glibcpp_float_QNaN_bytes,
760         __glibcpp_float_has_QNaN, __glibcpp_float_SNaN_bytes,
761         __glibcpp_float_has_SNaN, __glibcpp_double_QNaN_bytes,
762         __glibcpp_double_has_QNaN, __glibcpp_double_SNaN_bytes,
763         __glibcpp_double_has_SNaN, __glibcpp_long_double_QNaN_bytes,
764         __glibcpp_long_double_has_QNaN, __glibcpp_long_double_SNaN_bytes,
765         __glibcpp_long_double_has_SNaN): Remove.
766         (__glibcpp_f128_is_iec559): True if IEEE.
767         (__glibcpp_float_QNaN, __glibcpp_float_SNaN): Remove.
768         (__glibcpp_double_QNaN, __glibcpp_double_SNaN): Remove.
769         (__glibcpp_long_double_QNaN, __glibcpp_long_double_SNaN): Remove.
770         (std::numeric_limits<float>::has_quiet_NaN): Use __builtin_nanf.
771         (std::numeric_limits<float>::has_signaling_NaN): Mirror has_quiet_NaN.
772         (std::numeric_limits<float>::quiet_NaN): Use __builtin_nanf.
773         (std::numeric_limits<float>::signaling_NaN): Use __builtin_nansf.
774         (std::numeric_limits<double>): Similarly.
775         (std::numeric_limits<long double>): Similarly.
776         * src/limits.cc (__glibcpp_float_QNaN, __glibcpp_float_SNaN): Remove.
777         (__glibcpp_double_QNaN, __glibcpp_double_SNaN): Remove.
778         (__glibcpp_long_double_QNaN, __glibcpp_long_double_SNaN): Remove.
779
780         * testsuite/18_support/numeric_limits.cc (test_infinity): New.
781         (test_denorm_min, test_qnan, test_is_iec559): New.
782
783 2002-09-16  Phil Edwards  <pme@gcc.gnu.org>
784
785         * testsuite/abi_check.cc:  Pull shell fragments out into...
786         * config/abi/extract_symvers:  ...here.  New file.
787         * Makefile.am (check_abi):  Change to match.
788         (new-abi-baseline):  New target.
789         * Makefile.in:  Regenerated.
790
791 2002-09-16  Richard Henderson  <rth@redhat.com>
792
793         * include/std/std_limits.h (__glibcpp_f32_denorm_min_bytes,
794         __glibcpp_f32_has_denorm, __glibcpp_f64_denorm_min_bytes,
795         __glibcpp_f64_has_denorm, __glibcpp_f80_denorm_min_bytes,
796         __glibcpp_f80_has_denorm, __glibcpp_f96_denorm_min_bytes,
797         __glibcpp_f96_has_denorm, __glibcpp_f128_denorm_min_bytes,
798         __glibcpp_f128_has_denorm, __glibcpp_float_denorm_min_bytes,
799         __glibcpp_float_has_denorm, __glibcpp_double_denorm_min_bytes,
800         __glibcpp_double_has_denorm, __glibcpp_long_double_denorm_min_bytes,
801         __glibcpp_long_double_has_denorm): Remove.
802         (__glibcpp_float_denorm_min, __glibcpp_double_denorm_min,
803         __glibcpp_long_double_denorm_min): Remove.
804         (std::numeric_limits<float>::has_denorm): Use __FLT_DENORM_MIN__.
805         (std::numeric_limits<float>::denorm_min): Likewise.
806         (std::numeric_limits<double>): Similarly.
807         (std::numeric_limits<long double>): Similarly.
808         * src/limits.cc (__glibcpp_float_denorm_min,
809         __glibcpp_double_denorm_min, __glibcpp_long_double_denorm_min): Remove.
810
811 2002-09-13  Andy Felt  <afelt@uwsp.edu>
812
813         * docs/html/17_intro/howto.html:  Update link.
814
815 2002-09-13  Phil Edwards  <pme@gcc.gnu.org>
816
817         * docs/doxygen/run_doxygen:  Massage man page for Iterator_types.3.
818         * docs/html/faq/index.html:  Whitespace fixes.
819
820 2002-09-12  Benjamin Kosnik  <bkoz@redhat.com>
821
822         * libmath/Makefile.am (LIBTOOL): Use --tag CC always for this
823         directory.
824         * libmath/Makefile.in: Regenerate.
825         * src/Makefile.am: Tweak comment.
826         * src/Makefile.in: Regenerate.
827         
828         * config/locale/gnu/c_locale.h: Remove warnings.
829         Inject __uselocale into __gnu_cxx.
830         * config/locale/generic/c_locale.h: Match.
831         
832 2002-09-11  Benjamin Kosnik  <bkoz@redhat.com>
833
834         * include/bits/locale_facets.tcc (__convert_from_v): Remove.
835         * config/locale/gnu/c_locale.h (__convert_from_v): Add.
836         * config/locale/generic/c_locale.h (__convert_from_v): Add.     
837
838 2002-09-11  Paolo Carlini  <pcarlini@unitus.it>
839
840         * include/bits/locale_facets.tcc (__convert_from_v):
841         Use __uselocale instead of setlocale for glibc 2.3+.
842
843 2002-09-10  Benjamin Kosnik  <bkoz@redhat.com>
844
845         * src/Makefile.am (sources): Edit.
846         (target_sources): New.
847         (target_sources_extra): New.
848         * src/Makefile.in: Regenerate.
849         * acinclude.m4: Set CCODECVT_CC. 
850         * aclocal.m4: Regenerate.
851         * configure: Regenerate.
852         * src/locale.cc: Move ctype definitions...
853         * src/ctype.cc: ...here. New file. 
854         * src/locale.cc: Move codecvt definitions...
855         * src/codecvt.cc: ...here.      
856         * config/generic/codecvt_members.cc: ...and here.       
857         * config/gnu/codecvt_members.cc: ...and here.           
858         * include/bits/codecvt.h: Tweak.
859         * include/bits/locale_facets: Tweak.
860
861         * src/bitset.cc: Correct license text.
862         * src/concept-inst.cc: Same.
863         * src/strstream.cc: Same.
864         * src/vterminate.cc: Same.      
865
866 2002-09-10  Gabriel Dos Reis  <gdr@soliton.integrable-solutions.net>
867
868         * include/bits/stl_vector.h (vector<>): Don't use a name with
869         different meanings before and after re-evaluation in the completed
870         scope. 
871         * include/bits/basic_string.h (basic_string<>): Likewise.
872         * include/bits/stl_bvector.h (vector<bool>): Likewise.
873         * include/bits/stl_deque.h (std): Likewise.
874         * include/bits/stl_list.h (list<>): Likewise.
875         * include/bits/stl_tree.h (_Rb_tree<>): Likewise.
876
877 2002-09-10  Paolo Carlini  <pcarlini@unitus.it>
878
879         * include/bits/codecvt.h (class __codecvt_abstract_base):
880         Add __c_locale type _M_c_locale_codecvt member.
881         (class codecvt<char, char, mbstate_t>,
882         class codecvt<wchar_t, char, mbstate_t>): Add new
883         codecvt(__c_locale, size_t) constructor.
884         (codecvt_byname::codecvt_byname): Update.
885         * src/codecvt.cc (class codecvt<char, char, mbstate_t>,
886         class codecvt<wchar_t, char, mbstate_t>): Update codecvt(size_t)
887         constructor and ~codecvt() destructor; define
888         codecvt(__c_locale, size_t) constructor.
889         (codecvt::do_out): Switch to _M_c_locale_codecvt around wcsrtombs call.
890         (codecvt::do_in): Ditto for mbsrtowcs call.
891         * src/localename.cc (locale::_Impl::_Impl(const char*, size_t)):
892         Tweak construction of codecvt facets.
893
894 2002-09-10  Danny Smith  <dannysmith@users.sourceforge.net>
895
896         * include/bits/locale_facets.tcc (__convert_from_v):
897         Replace strdup with ISO malloc and strcpy.
898
899 2002-09-09  Benjamin Kosnik  <bkoz@redhat.com>
900
901         * docs/html/configopts.html: Change grouping. Note ABI impacts.
902         Update information for locale model defaults.
903         * docs/html/install.html: Update include directory
904         information. 
905         Update testing information. 
906         Update linux issues for named locales.
907         * docs/html/abi.txt: Fix typos.
908         Add more info.
909
910         * src/misc-inst.cc: Add missing instantiations.
911         
912         * testsuite/abi_check.cc: Make output results more verbose.
913         
914         * config/os/gnu-linux/ctype_base.h: Remove shadow headers injections.
915
916 2002-09-07  Jakub Jelinek  <jakub@redhat.com>
917
918         * config/locale/generic/messages_members.cc: Add specialization for
919         messages<wchar_t>.
920         * config/locale/ieee_1003.1-20021/messages_members.cc: Likewise.
921
922 2002-09-06  Benjamin Kosnik  <bkoz@redhat.com>
923
924         * include/bits/localefwd.h: Tweak formatting.
925         * docs/html/abi.txt: Add.
926
927 2002-09-06  Jakub Jelinek  <jakub@redhat.com>
928
929         * configure.target: Use cpu_include_dir="config/cpu/sparc" for all
930         sparc targets.
931         * config/cpu/sparc/atomicity.h: New file.
932         * config/cpu/sparc/sparc32/atomicity.h: Removed.
933         * config/cpu/sparc/sparc64/atomicity.h: Removed.
934
935 2002-09-06  Jakub Jelinek  <jakub@redhat.com>
936
937         * config/os/gnu-linux/ctype_noninline.h
938         [_GLIBCPP_USE_SHADOW_HEADERS]: Remove using _C_legacy::__ctype_*.
939         (ctype<char>::classic_table): If _GLIBCPP_C_LOCALE_GNU, return
940         _S_c_locale->__ctype_b, otherwise temporarily switch to "C" locale
941         and return __ctype_b.
942         (ctype<char>::ctype(__c_locale, const mask*, bool, size_t)): If not
943         _GLIBCPP_C_LOCALE_GNU, temporarily switch to "C" locale and
944         initialize using __ctype_{b,tolower,toupper}.
945         (ctype<char>::ctype(const mask*, bool, size_t)): If
946         _GLIBCPP_C_LOCALE_GNU, initialize using
947         _S_c_locale->__ctype_{b,tolower,toupper}, otherwise temporarily
948         switch to "C" locale and initialize using __ctype_{b,tolower,toupper}.
949
950 2002-09-05  Paolo Carlini  <pcarlini@unitus.it>
951             Roland McGrath  <roland@redhat.com>
952
953         PR libstdc++/7811
954         * src/locale.cc (locale::locale(__s)): Use getenv instead
955         of setenv for the environment locale.
956         * testsuite/22_locale/ctor_copy_dtor.cc (test03): New.
957
958 2002-09-05  Jakub Jelinek  <jakub@redhat.com>
959
960         * config/abi/ia64-unknown-linux-gnu: Add.
961         * config/abi/ia64-unknown-linux-gnu/baseline_symbols.txt: New file.
962         * config/abi/alphaev67-unknown-linux-gnu: Add.
963         * config/abi/alphaev67-unknown-linux-gnu/baseline_symbols.txt: New file.
964
965 2002-09-05  Jonathan Wakely  <jw@kayari.org>
966
967         * docs/html/Makefile:  Use more portable shell wildcard.
968         * docs/html/makedoc.awk:  Nest elements correctly for XHTML conversion.
969         * docs/html/configopts.html, docs/html/documentation.html,
970         docs/html/explanations.html, docs/html/install.html,
971         docs/html/17_intro/contribute.html, docs/html/17_intro/howto.html,
972         docs/html/17_intro/license.html, docs/html/18_support/howto.html,
973         docs/html/19_diagnostics/howto.html, docs/html/20_util/howto.html,
974         docs/html/21_strings/howto.html, docs/html/22_locale/codecvt.html,
975         docs/html/22_locale/ctype.html, docs/html/22_locale/howto.html,
976         docs/html/22_locale/locale.html, docs/html/22_locale/messages.html,
977         docs/html/23_containers/howto.html, docs/html/24_iterators/howto.html,
978         docs/html/25_algorithms/howto.html, docs/html/26_numerics/howto.html,
979         docs/html/27_io/howto.html, docs/html/ext/howto.html,
980         docs/html/ext/sgiexts.html, docs/html/faq/index.html:  Convert
981         to XHTML.
982         * docs/html/faq/index.txt:  Regenerate.
983
984 2002-09-05  Jakub Jelinek  <jakub@redhat.com>
985
986         * config/locale/gnu/ctype_members.cc (ctype<wchar_t>::do_widen(char)):
987         Switch to _M_c_locale_ctype around btowc call.
988         (ctype<wchar_t>::do_widen(const char*, const char *, wchar_t*)):
989         Switch to _M_c_locale_ctype around mbsrtowcs call.
990         (ctype<wchar_t>::do_narrow(char)): Switch to _M_c_locale_ctype around
991         wctob call.
992         (ctype<wchar_t>::do_narrow(const char*, const char *, wchar_t*)):
993         Switch to _M_c_locale_ctype around wcsrtombs call.
994
995 2002-09-05  Jakub Jelinek  <jakub@redhat.com>
996
997         * config/locale/gnu/monetary_members.cc
998         (moneypunct<wchar_t, true>::_M_initialize_moneypunct,
999         moneypunct<wchar_t, false>::_M_initialize_moneypunct): Use
1000         __uselocale instead of setlocale for glibc 2.3.
1001
1002 2002-09-05  Jakub Jelinek  <jakub@redhat.com>
1003
1004         * config/locale/generic/c++locale_internal.h: New header.
1005         * config/locale/gnu/c++locale_internal.h: New header.
1006         * config/locale/gnu/c_locale.cc: Include it.
1007         * config/locale/gnu/collate_members.cc: Include it.
1008         * config/locale/gnu/ctype_members.cc: Include it.
1009         * config/locale/gnu/messages_members.cc: Include it.
1010         * config/locale/gnu/monetary_members.cc: Include it.
1011         * config/locale/gnu/numeric_members.cc: Include it.
1012         * config/locale/gnu/time_members.cc: Include it.
1013         (_M_put): Reorder __strftime_l and __wcsftime_l arguments to match
1014         glibc.
1015         (_M_initialize_timepunct): Initialize _M_c_locale_timepunct for
1016         C locale.
1017         * acinclude.m4: Include string.h when testing strcoll_l.
1018         For glibc 2.3 provide __-prefixed prototypes.
1019         (CLOCALE_INTERNAL_H): Set, add AC_LINK_FILES line.
1020         * aclocal.m4, configure: Rebuilt.
1021
1022 2002-09-05  Benjamin Kosnik  <bkoz@redhat.com>
1023
1024         * include/bits/locale_facets.h: Add declaration of specialization
1025         here.
1026         * config/locale/gnu/messages_members.cc: Add specialization for
1027         messages<wchar_t>.
1028         * config/locale/gnu/messages_members.h: Remove generic definition
1029         of do_get.
1030
1031 2002-09-04  Richard Henderson  <rth@redhat.com>
1032
1033         * include/std/std_limits.h (__glibcpp_f32_infinity_bytes,
1034         __glibcpp_f32_has_infinity, __glibcpp_f64_infinity_bytes,
1035         __glibcpp_f64_has_infinity, __glibcpp_f80_infinity_bytes,
1036         __glibcpp_f80_has_infinity, __glibcpp_f96_infinity_bytes,
1037         __glibcpp_f96_has_infinity, __glibcpp_f128_infinity_bytes,
1038         __glibcpp_f128_has_infinity, __glibcpp_float_infinity_bytes,
1039         __glibcpp_float_has_infinity, __glibcpp_double_infinity_bytes,
1040         __glibcpp_double_has_infinity, __glibcpp_long_double_infinity_bytes,
1041         __glibcpp_long_double_has_infinity): Remove.
1042         (std::numeric_limits<float>, std::numeric_limits<double>,
1043         std::numeric_limits<long double>): Use __builtin_huge_val
1044         to implement has_infinity and infinity().
1045         * src/limits.cc (__glibcpp_float_infinity, __glibcpp_double_infinity,
1046         __glibcpp_long_double_infinity): Remove.
1047
1048 2002-09-03  Richard Henderson  <rth@redhat.com>
1049
1050         * include/std/std_limits.h (__glibcpp_f32_min, __glibcpp_f32_max,
1051         __glibcpp_f32_digits, __glibcpp_f32_digits10, __glibcpp_f32_radix,
1052         __glibcpp_f32_epsilon, __glibcpp_f32_min_exponent,
1053         __glibcpp_f32_min_exponent10, __glibcpp_f32_max_exponent,
1054         __glibcpp_f32_max_exponent10, __glibcpp_f64_min, __glibcpp_f64_max,
1055         __glibcpp_f64_digits, __glibcpp_f64_digits10, __glibcpp_f64_radix,
1056         __glibcpp_f64_min_exponent, __glibcpp_f64_min_exponent10,
1057         __glibcpp_f64_max_exponent, __glibcpp_f64_max_exponent10,
1058         __glibcpp_f80_min, __glibcpp_f80_max, __glibcpp_f80_digits,
1059         __glibcpp_f80_digits10, __glibcpp_f80_radix, __glibcpp_f80_epsilon,
1060         __glibcpp_f80_min_exponent, __glibcpp_f80_min_exponent10,
1061         __glibcpp_f80_max_exponent, __glibcpp_f80_max_exponent10,
1062         __glibcpp_f96_min, __glibcpp_f96_max, __glibcpp_f96_digits,
1063         __glibcpp_f96_digits10, __glibcpp_f96_radix, __glibcpp_f96_epsilon,
1064         __glibcpp_f96_min_exponent, __glibcpp_f96_min_exponent10,
1065         __glibcpp_f96_max_exponent, __glibcpp_f96_max_exponent10,
1066         __glibcpp_f128_min, __glibcpp_f128_max, __glibcpp_f128_digits,
1067         __glibcpp_f128_digits10, __glibcpp_f128_radix, __glibcpp_f128_epsilon,
1068         __glibcpp_f128_min_exponent, __glibcpp_f128_min_exponent10,
1069         __glibcpp_f128_max_exponent, __glibcpp_f128_max_exponent10,
1070         __glibcpp_float_min, __glibcpp_float_max, __glibcpp_float_digits,
1071         __glibcpp_float_digits10, __glibcpp_float_radix,
1072         __glibcpp_float_epsilon, __glibcpp_float_min_exponent,
1073         __glibcpp_float_min_exponent10, __glibcpp_float_max_exponent,
1074         __glibcpp_float_max_exponent10, __glibcpp_double_min,
1075         __glibcpp_double_max, __glibcpp_double_digits,
1076         __glibcpp_double_digits10, __glibcpp_double_radix,
1077         __glibcpp_double_epsilon, __glibcpp_double_min_exponent,
1078         __glibcpp_double_min_exponent10, __glibcpp_double_max_exponent,
1079         __glibcpp_double_max_exponent10, __glibcpp_long_double_min,
1080         __glibcpp_long_double_max, __glibcpp_long_double_digits,
1081         __glibcpp_long_double_digits10, __glibcpp_long_double_radix,
1082         __glibcpp_long_double_epsilon, __glibcpp_long_double_min_exponent,
1083         __glibcpp_long_double_min_exponent10,
1084         __glibcpp_long_double_max_exponent,
1085         __glibcpp_long_double_max_exponent10): Remove macros.
1086         (std::numeric_limits<float>, std::numeric_limits<double>,
1087         std::numeric_limits<long double>): Use protected float.h macros.
1088
1089 2002-09-01  Phil Edwards  <pme@gcc.gnu.org>
1090
1091         * testsuite/Makefile.am:  Use LD_RUN_PATH when linking abi_check.
1092         Fix spelling in comment.
1093         * testsuite/Makefile.in:  Regenerate.
1094         * testsuite/abi_check.cc:  Use string literals to build 'cmd' rather
1095         than 'quote' and 'bslash'.
1096
1097 2002-08-31  Phil Edwards  <pme@gcc.gnu.org>
1098
1099         * acinclude.m4:  Minor comment tweaks.
1100
1101         * docs/html/makedoc.awk:  New file...
1102         * docs/html/Makefile:  ...called from here...
1103         * docs/html/documentation.html:  ...to help generate this.
1104
1105         * docs/html/21_strings/howto.html:  Prepare for new entry.
1106         * include/bits/basic_string.h:  Initial basic_stirng hook for
1107         doxygen.  Remove trailing whitespace.
1108         * include/bits/char_traits.h:  Point to onlinedocs for new entry.
1109         * include/bits/stringfwd.h:  Add doxygen hooks for string and
1110         wstring typedefs.
1111
1112 2002-08-29  Richard Earnshaw  <rearnshaw@arm.com>
1113
1114         * config/cpu/arm/cpu_limits.h: New file.
1115         * configure.target: Use config/cpu/arm for XScale and StrongARM
1116         configurations.
1117
1118 2002-08-28  Gabriel Dos Reis  <gdr@integrable-solutions.net>
1119
1120         * include/std/std_limits.h (__glibcpp_char_bits,
1121         __glibcpp_short_bits, __glibcpp_int_bits, __glibcpp_long_bits,
1122         __glibcpp_long_long_bits, __glibcpp_float_bits,
1123         __glibcpp_double_bits, __glibcpp_long_double_bits): Remove.  Use
1124         compiler predifined macros.
1125         (__glibcpp_wchar_t_is_signed): Define based on compiler predefined
1126         __WCHAR_UNSIGNED__. 
1127
1128 2002-08-27  Gabriel Dos Reis  <gdr@integrable-solutions.net>
1129
1130         * include/std/std_limits.h (__glibcpp_f32_infinity_bytes,
1131         __glibcpp_f32_has_infinity, __glibcpp_f32_QNaN_bytes,
1132         __glibcpp_f32_has_QNaN, __glibcpp_f32_SNaN_bytes,
1133         __glibcpp_f32_has_SNaN, __glibcpp_f32_denorm_min_bytes,
1134         __glibcpp_f32_has_denorm, __glibcpp_f32_is_iec559,
1135         __glibcpp_f64_infinity_bytes,
1136         __glibcpp_f64_has_infinity, __glibcpp_f64_QNaN_bytes,
1137         __glibcpp_f64_has_QNaN, __glibcpp_f64_SNaN_bytes,
1138         __glibcpp_f64_has_SNaN, __glibcpp_f64_denorm_min_bytes,
1139         __glibcpp_f64_has_denorm, __glibcpp_f64_is_iec559,
1140         __glibcpp_f80_infinity_bytes,
1141         __glibcpp_f80_has_infinity, __glibcpp_f80_QNaN_bytes,
1142         __glibcpp_f80_has_QNaN, __glibcpp_f80_SNaN_bytes,
1143         __glibcpp_f80_has_SNaN, __glibcpp_f80_denorm_min_bytes,
1144         __glibcpp_f80_has_denorm, __glibcpp_f80_is_iec559,
1145         __glibcpp_f96_infinity_bytes,
1146         __glibcpp_f96_has_infinity, __glibcpp_f96_QNaN_bytes,
1147         __glibcpp_f96_has_QNaN, __glibcpp_f96_SNaN_bytes,
1148         __glibcpp_f96_has_SNaN, __glibcpp_f96_denorm_min_bytes,
1149         __glibcpp_f96_has_denorm, __glibcpp_f96_is_iec559,
1150         __glibcpp_f128_infinity_bytes,
1151         __glibcpp_f128_has_infinity, __glibcpp_f128_QNaN_bytes,
1152         __glibcpp_f128_has_QNaN, __glibcpp_f128_SNaN_bytes,
1153         __glibcpp_f128_has_SNaN, __glibcpp_f128_denorm_min_bytes,
1154         __glibcpp_f128_has_denorm, __glibcpp_f128_is_iec559,
1155         __glibcpp_float_infinity_bytes,
1156         __glibcpp_float_has_infinity, __glibcpp_float_QNaN_bytes,
1157         __glibcpp_float_has_QNaN, __glibcpp_float_SNaN_bytes,
1158         __glibcpp_float_has_SNaN, __glibcpp_float_denorm_min_bytes,
1159         __glibcpp_float_has_denorm, __glibcpp_float_is_iec559,
1160         __glibcpp_double_infinity_bytes,
1161         __glibcpp_double_has_infinity, __glibcpp_double_QNaN_bytes,
1162         __glibcpp_double_has_QNaN, __glibcpp_double_SNaN_bytes,
1163         __glibcpp_double_has_SNaN, __glibcpp_double_denorm_min_bytes,
1164         __glibcpp_double_has_denorm, __glibcpp_double_is_iec559,
1165         __glibcpp_long_double_infinity_bytes,
1166         __glibcpp_long_double_has_infinity, __glibcpp_long_double_QNaN_bytes,
1167         __glibcpp_long_double_has_QNaN, __glibcpp_long_double_SNaN_bytes,
1168         __glibcpp_long_double_has_SNaN, __glibcpp_long_double_denorm_min_bytes,
1169         __glibcpp_long_double_has_denorm, __glibcpp_long_double_is_iec559:
1170         New macros.
1171         (__glibcpp_word_bits, __glibcpp_word): Likewise.
1172         (__glibcpp_byte): New typedef.
1173         (__float_storage, __double_storage, __long_double_storage): New types.
1174         (__glibcpp_float_infinity, __glibcpp_float_QNaN,
1175         __glibcpp_float_SNaN, __glibcpp_float_denorm_min): Now
1176         objects. Declare.
1177         (__glibcpp_double_infinity, __glibcpp_double_QNaN,
1178         __glibcpp_double_SNaN, __glibcpp_double_denorm_min): Likewise.
1179         (__glibcpp_long_double_infinity, __glibcpp_long_double_QNaN,
1180         __glibcpp_long_double_SNaN, __glibcpp_long_double_denorm_min):
1181         Likewise.
1182         
1183         * src/limits.cc (__glibcpp_float_infinity, __glibcpp_float_QNaN,
1184         __glibcpp_float_SNaN, __glibcpp_float_denorm_min): Define.
1185         (__glibcpp_double_infinity, __glibcpp_double_QNaN,
1186         __glibcpp_double_SNaN, __glibcpp_double_denorm_min): Likewise.
1187         (__glibcpp_long_double_infinity, __glibcpp_long_double_QNaN,
1188         __glibcpp_long_double_SNaN, __glibcpp_long_double_denorm_min):
1189         Likewise.
1190         
1191 2002-08-25  Gabriel Dos Reis  <gdr@integrable-solutions.net>
1192
1193         * include/std/std_limits.h: Indent conditional macro definitions.
1194
1195 2002-08-23  Phil Edwards  <pme@gcc.gnu.org>
1196
1197         * Makefile.am (check-abi):  Specify current directory.
1198         * acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE):  Fix shell syntax, use
1199         abi_baseline_triplet in baseline_file.
1200         * Makefile.in, aclocal.m4, configure:  Regenerate.
1201         * configure.target:  Add abi_baseline_triplet with default.
1202         * testsuite/abi_check.cc:  More error checking.
1203
1204 2002-08-23  Phil Edwards  <pme@gcc.gnu.org>
1205
1206         * config/linker-map.gnu:  Verbose comments, clean up spacing.
1207         * include/bits/stl_alloc.h:  Fix indentation of 'if' bodies, return
1208         statements.
1209         __allocator:  Change class declaration to struct.
1210         * docs/html/17_intro/C++STYLE:  Fix typo.
1211         * include/bits/stl_deque.h, include/bits/stl_list.h,
1212         include/bits/stl_map.h, include/bits/stl_multimap.h,
1213         include/bits/stl_vector.h:  Fix fallout from typo.
1214
1215 2002-08-22  Benjamin Kosnik  <bkoz@redhat.com>
1216
1217         * acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Set
1218         GLIBCPP_BUILD_ABI_CHECK based on cross compiling, build, host
1219         variables.
1220         * aclocal.m4: Regenerate.
1221         * testsuite/Makefile.am (noinst_PROGRAMS): Make conditional on
1222         native compiling.
1223         * testsuite/Makefile.in: Regenerate.
1224         
1225 2002-08-22  Loren J. Rittle <ljrittle@acm.org>
1226
1227         * testsuite/abi_check.cc: Enhance shell portability.
1228         Support older binutils/readelf.
1229         * config/abi/i386-unknown-freebsd4.6: Add.
1230         * config/abi/i386-unknown-freebsd4.6/baseline_symbols.txt: New file.
1231
1232 2002-08-22  Paolo Carlini  <pcarlini@unitus.it>
1233
1234         * docs/html/faq/index.html: Add Loren James Rittle and
1235         Paolo Carlini to the list of v3 maintainers.
1236         * docs/html/faq/index.txt: Ditto.
1237         * docs/html/17_intro/RELEASE-NOTES: Ditto.
1238
1239 2002-08-22  Benjamin Kosnik  <bkoz@redhat.com>
1240             Phil Edwards  <pme@gcc.gnu.org>
1241             Ulrich Drepper  <drepper@redhat.com>
1242         
1243         * Makefile.am (check-abi): New rule.
1244         * Makefile.in: Regenerate.
1245         * acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Export baseline_file.
1246         * aclocal.m4: Regenerate.
1247         * configure: Regenerate.
1248         * testsuite/Makefile.am (noinst_PROGRAMS): Add abi_check.
1249         (abi_check_SOURCES): Add.
1250         * testsuite/Makefile.in: Regenerate.    
1251         * testsuite/abi_check.cc: New file.
1252         * config/abi: Add.
1253         * config/abi/i686-pc-linux-gnu: Add.
1254         * config/abi/i686-pc-linux-gnu/baseline_symbols.txt: New file.
1255         
1256 2002-08-19  Benjamin Kosnik  <bkoz@redhat.com>
1257
1258         * configure.in (libtool_VERSION): Update to 5:1:0.
1259         * configure: Regenerate.
1260         
1261 2002-08-19  Jonathan Wakely  <jw@kayari.org>
1262
1263         * docs/html/configopts.html, docs/html/documentation.html,
1264         docs/html/install.html, docs/html/22_locale/codecvt.html,
1265         docs/html/22_locale/ctype.html, docs/html/22_locale/howto.html,
1266         docs/html/22_locale/locale.html,
1267         docs/html/22_locale/messages.html: Conform to HTML 4.01 standard.
1268
1269 2002-08-15  Benjamin Kosnik  <bkoz@redhat.com>
1270
1271         * include/ext/stdio_filebuf.h (stdio_filebuf): Explicitly set
1272         _M_buf_size_opt to zero when unbuffering.
1273         * include/bits/fstream.tcc (filebuf::showmanyc): Simplify.
1274         Consistency checks for _M_buf_size_opt.
1275
1276         Revert PR libstdc++/7445
1277         * src/locale.cc (locale::classic): Revert.
1278         
1279         * docs/html/17_intro/TODO: Add.
1280         
1281 2002-08-15  Phil Edwards  <pme@gcc.gnu.org>
1282
1283         * docs/html/documentation.html:  Update doxygen links for 3.2.
1284
1285 2002-08-15  Steve Ellcey  <sje@cup.hp.com>
1286
1287         * libsupc++/unwind-cxx.h (__cxa_exception): Change catchTemp
1288         type from void* to _Unwind_Ptr.
1289         * libsupc++/eh_personality.cc (PERSONALITY_FUNCTION):
1290         Do not cast landing_pad or base_of_encoded_value to (void *).
1291         * libsupc++/eh_throw.cc (__gxx_exception_cleanup):
1292         Accept _URC_NO_REASON as a valid reason code.
1293
1294 2002-08-14  Jonathan Wakely  <jw@kayari.org>
1295
1296         * docs/html/22_locale/messages.html:  Use HTML entities for
1297         punctuation.
1298
1299 2002-08-13  Jonathan Wakely  <jw@kayari.org>
1300             Phil Edwards  <pme@gcc.gnu.org>
1301
1302         * docs/html/documentation.html:  Use HTML entities for punctuation.
1303
1304 2002-08-09  Phil Edwards  <pme@gcc.gnu.org>
1305
1306         * include/bits/deque.tcc, include/bits/list.tcc,
1307         include/bits/stl_deque.h, include/bits/stl_iterator_base_funcs.h,
1308         include/bits/stl_list.h, include/bits/stl_map.h,
1309         include/bits/stl_multimap.h, include/bits/stl_queue.h,
1310         include/bits/stl_stack.h, include/bits/stl_vector.h,
1311         include/bits/vector.tcc:  Re-indent contents of namespace std,
1312         re-wrap comment lines as necessary.
1313
1314 2002-08-08  Danny Smith  <dannysmith@users.sourceforge.net>
1315             Benjamin Kosnik  <bkoz@redhat.com>
1316         
1317         * include/bits/istream.tcc (basic_istream::ignore): Use sbumpc,
1318         not snextc.
1319         * testsuite/27_io/narrow_stream_objects.cc (test10): Add.
1320         
1321 2002-08-07  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1322
1323         * libsupc++/Makefile.am (LTCOMPILE): Add LIBSUPCXX_PICFLAGS.
1324         * libsupc++/Makefile.in: Regenerate.
1325
1326 2002-08-05  Gabriel Dos Reis  <gdr@nerim.net>
1327
1328         PR/7491
1329         * include/bits/slice_array.h(_DEFINE_VALARRAY_OPERATOR):
1330         Instantiate with new function objects. 
1331         * include/bits/mask_array.h (_DEFINE_VALARRAY_OPERATOR): Likewise.
1332         Reformat.  Uglify.
1333         * include/bits/gslice_array.h: Likewise.
1334         * include/bits/indirect_array.h: Likewise.
1335
1336 2002-08-03  Gabriel Dos Reis  <gdr@nerim.net>
1337
1338         * testsuite/26_numerics/valarray_name_lookup.cc: Rename from
1339         testsuite/26_numerics/valarray_name_lookup.C
1340
1341         * include/bits/valarray_array.h (_DEFINE_ARRAY_FUNCTION): Use our
1342         object function surrogates.
1343         * include/bits/valarray_meta.h (__shift_left): Fix typo.
1344         (_BinFunClos<>): Remove.
1345         (_BinFunBase<>): Likewise.
1346         (_BinFunBase1<>):Likewise.
1347         (_BinFunBase2<>): Likewise.
1348         (_DEFINE_EXPR_RELATIONAL_OPERATOR): Likewise.
1349         (_DEFINE_EXPR_UNARY_OPERATOR): Adjust definition.
1350         (_DEFINE_EXPR_BINARY_OPERATOR): Likewise.
1351         (_DEFINE_EXPR_BINARY_FUNCTION): Likewise.
1352         * include/std/std_valarray.h: Dont #include <functional> anymore.
1353         (_Bitwise_or<>, _Bitwise_and<>, _Bitwise_xor<>, _Shift_left<>,
1354         _Shift_right<>): Remove.
1355         (_DEFINE_VALARRAY_AUGMENTED_ASSIGNMENT): Adjust instantiation.
1356         (_DEFINE_BINARY_OPERATOR): Tweak definition.
1357         (_DEFINE_LOGICAL_OPERATOR): Remove.
1358         * testsuite/26_numerics/valarray_name_lookup.C (main): Add more tests.
1359
1360 2002-08-02  Gabriel Dos Reis  <gdr@nerim.net>
1361
1362         * include/bits/valarray_meta.h (_UnFunBase<>): Remove.
1363         (_UnFunClos<>): Same.
1364         (_UnBase<>): Reformat.  Make first template-parameter non
1365         template. 
1366         (_UnClos<>): Likewise.
1367         (_Expr<>): Reformate.  Adjust unary member operator return types. 
1368         (_DEFINE_EXPR_UNARY_OPERATOR): Adjust definition.
1369         (_DEFINE_EXPR_UNARY_FUNCTION): Likewise.
1370         * include/std/std_valarray.h (_UnClos<>): Adjust declaration.
1371         (valarray<>::_UnaryOp<>):  New nested traits. Adjust unary member
1372         operator return types.  Reformat.
1373         (_Bitwise_not): Remove.
1374         (_DEFINE_VALARRAY_UNARY_OPERATOR): Adjust definition.
1375         * testsuite/26_numerics/valarray_name_lookup.C: New test.
1376
1377 2002-08-02  Danny Smith  <dannysmith@users.sourceforge.net>
1378
1379         * config/os/newlib/ctype_inline.h (is): Don't offset _M_table.
1380         (scan_is): Use this->is.
1381         (scan_not): Likewise.
1382
1383 2002-08-02  Benjamin Kosnik  <bkoz@redhat.com>
1384
1385         Revert PR libstdc++/6594
1386         * src/strstream.cc (strstreambuf): Revert.
1387         (strstreambuf::overflow): Same.
1388         (strstreambuf::~strstreambuf): Same.    
1389         * testsuite/backward/strstream_members.cc (test02): Add.
1390         
1391         * docs/html/abi.txt: Update. Spell check.
1392
1393         * testsuite/19_diagnostics/stdexceptions.cc (test04): Add bool test.
1394
1395         * testsuite/Makefile.am (INCLUDES): Add LIBSUPCXX_INCLUDES.
1396         * testsuite/Makefile.in: Regenerate.
1397         * testsuite/testsuite_hooks.h: Use __throw_exception_again,
1398         include functexcept.h so that -fno-exceptions will build.
1399         
1400 2002-08-02  Gabriel Dos Reis  <gdr@nerim.net>
1401
1402         * include/bits/valarray_meta.h (__unary_plus, __negate,
1403         __bitwise_not, __plus, __minus, __multiplies, __divides,
1404         __modulus, __bitwise_xor, __bitwise_or, __bitwise_and,
1405         __shift_left, __shift_right, __logical_and, __logical_or,
1406         __logical_not, __equal_to, __not_equal_to, __less, __less_equal,
1407         __greater_equal, __greater, __atan2, __pow): New function object
1408         classes. 
1409         (__fun<>):  New function traits class.
1410
1411 2002-08-01  Rick Danos  <rdanos@hotmail.com>
1412
1413         PR libstdc++/7461
1414         * config/os/newlib/ctype_noninline.h (classic_table): Add offset.
1415         * config/os/newlib/ctype_inline.h (is): Use static_cast.
1416
1417 2002-08-01  Neil Booth  <neil@daikokuya.co.uk>
1418
1419         * libsupc++/Makefile.am (LT_COMPILE): Remove C++ flags.
1420         * libsupc++/Makefile.in: Regenerate.
1421         
1422 2002-08-01  Benjamin Kosnik  <bkoz@redhat.com>
1423             Jakub Jelinek  <jakub@redhat.com>
1424         
1425         * config/linker-map.gnu: Change CXXABI_1 to CXXABI_1.2,
1426         GLIBCPP_3.1 to GLIBCPP_3.2.
1427
1428 2002-07-31  Benjamin Kosnik  <bkoz@redhat.com>
1429             Mark Mitchell  <mark@codesourcery.com>
1430
1431         PR libstdc++/7442
1432         * libsupc++/cxxabi.h (class __base_class_type_info::hwm_bit):
1433         Change to __hwm_bit.
1434         (__class_type_info): And here.
1435
1436 2002-07-31  Benjamin Kosnik  <bkoz@redhat.com>
1437
1438         PR libstdc++/7442
1439         * libsupc++/cxxabi.h 
1440         (__base_class_info): Change to __base_class_type_info. 2.9.5p6c
1441         (__base_class_info::__base): Change to __base_type. 2.9.5p6c
1442         (__base_class_info::offset_shift): Change to __offset_shift. 2.9.5p6c
1443         (__vmi_class_type_info::__base_info): Don't make const, of type
1444         __base_class_type_info, as per 2.9.5p6c
1445         (__pbase_type_info::__qualifier_flags): Change to __flags, as per
1446         2.9.5p7.
1447         (__pbase_type_info::__qualifier_masks): Change to __masks, as per
1448         2.9.5p7.
1449         (__pointer_to_member_type_info::__context_class): Change member to
1450         __context, as per 2.9.5p9.
1451         * libsupc++/tinfo2.cc (__pointer_catch): Change __context_class to
1452         __context.
1453         * libsupc++/tinfo2.cc (__do_catch): Change __qualifier_flags to
1454         __flags.
1455         * libsupc++/tinfo.cc (__do_find_public_src): Change __base to
1456         __base_type.
1457         * libsupc++/tinfo.cc (__do_dyncast): Same.
1458         * libsupc++/tinfo.cc (__do_upcast): Same.
1459
1460 2002-07-31  Benjamin Kosnik  <bkoz@redhat.com>
1461
1462         * src/fstream.cc: Add _GLIBCPP_USE_WCHAR_T guards.
1463
1464 2002-07-31  Simon Whomsley  <whomsley@avacadcam.com>
1465
1466         * docs/html/22_locale/howto.html: Fix.
1467
1468 2002-07-31  Alex Kompel  <shurik@sequoiap.com>
1469
1470         PR libstdc++/7445
1471         * src/locale.cc (locale::classic): Move locks inside !_S_classic
1472         block.
1473
1474 2002-07-31  Benjamin Kosnik  <bkoz@redhat.com>
1475
1476         * docs/html/abi.txt: Update.
1477
1478 2002-07-30  Benjamin Kosnik  <bkoz@redhat.com>
1479             Gabriel Dos Reis  <gdr@nerim.net>
1480
1481         * include/bits/char_traits.h: Remove generic definitions.
1482         * include/bits/streambuf_iterator.h (istreambuf_iterator): Use
1483         eof, not -2.
1484         * include/bits/istream.tcc (istream::readsome): Don't check
1485         against eof, instead use constants.
1486         (istream::sync): Same.
1487         (istream::sentry::sentry): Use eq_int_type.
1488         (istream::get): Same.
1489         * include/bits/ostream.tcc: Change __pad to 
1490         __pad<_CharT, _Traits>::_S_pad. 
1491         * include/bits/locale_facets.h: Add __pad_traits generic and
1492         ostreambuf_iterator specialization.
1493         * include/bits/locale_facets.tcc: Change __pad into struct __pad
1494         with a _CharT and _Traits template parameter and _S_pad static
1495         member function.
1496         * src/locale-inst.cc: Update __pad instantiations.
1497         
1498         * include/std/std_fstream.h: Declare _M_underflow_common
1499         specializations.
1500         * src/fstream.cc: New. Add _M_underflow_common specializations.
1501         * include/bits/fstream.tcc (filebuf::close): Use traits_type.
1502         (filebuf::_M_underflow_common(bool)): Remove generic version, as
1503         sys_ungetc and custom int_types don't get along.
1504         * include/std/std_streambuf.h: Add _M_pos.
1505         * src/Makefile.am (sources): Add fstream.cc.
1506         * src/Makefile.in: Regenerate.
1507
1508         * testsuite/21_strings/capacity.cc: Add char_traits specializations.
1509         * testsuite/22_locale/codecvt_members_unicode_char.cc: Same.
1510         * testsuite/22_locale/codecvt_members_unicode_wchar_t.cc: Same.
1511         * testsuite/22_locale/ctor_copy_dtor.cc: Same.
1512         * testsuite/27_io/filebuf_virtuals.cc (test07): Move to...
1513         * testsuite/27_io/filebuf.cc: ...here.
1514         * testsuite/testsuite_hooks.h: Add gnu_char, gnu_int, char_traits
1515         specialization for both.
1516         * testsuite/27_io/streambuf.cc: Add instantiation test,
1517         testsuite_hooks include.
1518         * testsuite/27_io/istream.cc: Same.
1519         * testsuite/27_io/ostream.cc: Same.     
1520         * testsuite/27_io/fstream.cc: Same.
1521         * testsuite/27_io/stringstream.cc: Same.
1522         * testsuite/27_io/filebuf.cc: Same.
1523         * testsuite/27_io/stringbuf.cc: Same.
1524         
1525 2002-07-29  Alan Modra  <amodra@bigpond.net.au>
1526
1527         * config/cpu/powerpc/cpu_limits.h (__glibcpp_long_bits): Define.
1528         * configure.target (cpu_include_dir): Use cpu/powerpc for powerpc64.
1529         * config/cpu/powerpc/atomicity.h (__always_swap): Remove.
1530         (__test_and_set): Remove.
1531         (_STWCX): Define and use.
1532
1533 2002-07-26  Phil Edwards  <pme@gcc.gnu.org>
1534
1535         * libsupc++/new (placement delete):  Remove unused parameter names.
1536
1537 2002-07-25  Benjamin Kosnik  <bkoz@redhat.com>
1538
1539         PR libstdc++/7216
1540         * include/std/std_istream.h (basic_iostream): Add typedefs for
1541         char_type, int_type, pos_type, off_type, and traits_type.
1542         * testsuite/27_io/iostream.cc (test01): Add typedef tests.
1543         * testsuite/27_io/istream.cc: Same.
1544         * testsuite/27_io/ostream.cc: Same.
1545         * testsuite/27_io/filebuf.cc: Same.
1546         * testsuite/27_io/stringbuf.cc: Replace content, move to...
1547         * testsuite/27_io/stringbuf_members.cc: ...here.        
1548         * testsuite/27_io/streambuf.cc: Replace content, move to...
1549         * testsuite/27_io/streambuf_members.cc: ...here.        
1550         * testsuite/27_io/stringstream.cc: Replace content, move to...
1551         * testsuite/27_io/stringstream_members.cc: ...here.
1552         * testsuite/27_io/ios.cc: New file.
1553         * testsuite/27_io/fstream.cc: New file.
1554         * testsuite/27_io/ifstream.cc: New file.        
1555         * testsuite/27_io/ofstream.cc: New file.                
1556         * testsuite/27_io/istringstream.cc: New file.   
1557         * testsuite/27_io/ostringstream.cc: New file.   
1558         
1559 2002-07-25  Benjamin Kosnik  <bkoz@redhat.com>
1560
1561         PR libstdc++/7220
1562         * include/bits/istream.tcc (istream::ignore): Don't extract on
1563         zero.
1564         * testsuite/27_io/istream_unformatted.cc (test10): Add.
1565         
1566 2002-07-25  Benjamin Kosnik  <bkoz@redhat.com>
1567
1568         * testsuite/27_io/ios_base_type.cc: Move to...
1569         * testsuite/27_io/ios_base_types.cc: ...here.
1570         
1571 2002-07-24  Benjamin Kosnik  <bkoz@redhat.com>
1572
1573         PR libstdc++/7222
1574         * src/locale.cc (locale::locale(const char*)): Use setlocale NULL.
1575         * testsuite/22_locale/ctor_copy_dtor.cc (test02): New.
1576         
1577 2002-07-24  Benjamin Kosnik  <bkoz@redhat.com>
1578
1579         PR libstdc++/7230
1580         * config/linker-map.gnu: Revert strstream patch from 2002-07-01.
1581         * include/Makefile.am (backward_headers): Use strstream, not
1582         strstream.h.
1583         * include/Makefile.in: Regenerate.
1584         * include/backward/strstream: Revert.
1585         * include/backward/strstream.h: Remove.
1586         * src/strstream.cc: Revert.
1587         * testsuite/backward/strstream_members.cc: Change include.      
1588
1589 2002-07-24  Benjamin Kosnik  <bkoz@redhat.com>
1590
1591         PR libstdc++/7219
1592         * include/bits/ios_base.h (ios_base::streampos): Add.
1593         (ios_base::streamoff): Add.
1594         * testsuite/27_io/ios_base_type.cc: New.
1595         
1596 2002-07-24  Benjamin Kosnik  <bkoz@redhat.com>
1597
1598         PR libstdc++/7286
1599         * libsupc++/new: Add placement delete.
1600         * testsuite/18_support/new_delete_placement.cc: New.
1601
1602         * docs/html/abi.txt: Fix typos.
1603         
1604 2002-07-23  Benjamin Kosnik  <bkoz@redhat.com>
1605
1606         * docs/html/documentation.html: Remove libstdc++-v3.0.86 links,
1607         confusing usage of "latest."
1608         De-tangle contributor information from introductory notes.
1609         Move abi.txt link placement, activate.
1610         Re-organize.
1611         Move chapter info into old FAQ format. 
1612         * docs/html/organization.html: Removed, obsoleted by doxygen work.
1613         * docs/html/abi.txt: Add notes on testing ABI changes.
1614         
1615 2002-07-20  Phil Edwards  <pme@gcc.gnu.org>
1616
1617         * docs/html/abi.txt:  New file.
1618         * docs/html/23_containers/howto.html:  Tweak vector-overhead text.
1619         * docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
1620         Import from upstream, R22.
1621
1622         * include/bits/char_traits.h, include/bits/stl_iterator.h,
1623         include/bits/stl_iterator_base_types.h, libsupc++/exception,
1624         libsupc++/new, libsupc++/typeinfo:  Use @brief markup.
1625
1626         * include/bits/deque.tcc, include/bits/stl_alloc.h,
1627         include/bits/stl_deque.h, include/bits/stl_list.h:  Postpone removal
1628         of deprecated functions until 3.4.  (Same timeframe, different text.)
1629         * include/bits/stl_vector.h:  Ditto.  Also do the same cleanups that
1630         the other sequence classes received.
1631
1632 2002-07-18  Brendan Kehoe  <brendan@zen.org>
1633
1634         * bits/slice_array.h (_DEFINE_VALARRAY_OPERATOR): Fix typo of
1635         _Nname to _Name.
1636         
1637 2002-07-19  Gabriel Dos Reis  <gdr@nerim.net>
1638
1639         DR/123
1640         * include/bits/slice_array.h 
1641         (slice_array<T>::operator=(const T&)): Constify.
1642         * include/bits/gslice_array.h 
1643         (gslice_array<T>::operator=(const T&)):  Likewise.
1644         * include/bits/mask_array.h 
1645         (mask_array<T>::operator=(const T&)): Likewise.
1646         * include/bits/indirect_array.h
1647         (indirect_array<T>::operator=(const T&): Likewise.
1648
1649 2002-07-17  Phil Edwards  <pme@gcc.gnu.org>
1650
1651         * docs/doxygen/run_doxygen:  Remove template parameter names from
1652         "Compound List" summary page.  Reformat.
1653         * docs/html/documentation.html:  XHTML fixes.
1654
1655 2002-07-16  Andreas Schwab  <schwab@suse.de>
1656
1657         * libsupc++/new (set_new_handler): Declare to not throw any
1658         exceptions.
1659         * libsupc++/new_handler.cc (set_new_handler): Likewise.
1660
1661 2002-07-16  Gabriel Dos Reis  <gdr@nerim.net>
1662
1663         * include/Makefile.am (bits_headers): Remove slice.h
1664         * include/Makefile.in: Regenerate.
1665         * include/bits/slice.h (slice): move to include/bits/slice_array.h
1666         * include/bits/slice.h Remove.
1667         * include/std/std_valarray.h: Don't #include bits/slice.h anymore.
1668         * include/bits/slice_array.h: Comply to official coding styles.
1669         * testsuite/26_numerics/slice.cc: New test.
1670
1671 2002-07-15  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1672
1673         * config/os/solaris/solaris2.5/ctype_base.h (ctype_base): Fix
1674         print to match vendor <ctype.h>.
1675
1676 2002-07-15  Phil Edwards  <pme@gcc.gnu.org>
1677
1678         * docs/html/faq/index.html:  Fix download links.
1679         * docs/html/faq/index.txt:  Regenerate.
1680         * docs/html/17_intro/porting.html:  Regenerate from earlier changes.
1681
1682 2002-07-11  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1683
1684         * configure.target (target_os switch): Allow for irix6*o32
1685         configurations.
1686
1687 2002-07-10  Gabriel Dos Reis  <gdr@nerim.net>
1688
1689         * include/bits/valarray_meta.h (_UnFunBase): Take a second
1690         template parameter. Remove _M_func data member.
1691         (_UnFunClos): Take a third template parameter.
1692         (__abs, __cos, __acos, __cosh, __sin, __asin, __sinh, __tan,
1693         __atan, __tanh, __exp, __log, __log10, __sqrt): New classes.
1694         (_DEFINE_EXPR_UNARY_OPERATOR): Adjust definition.
1695
1696 2002-07-08  Eric Christopher  <echristo@redhat.com>
1697
1698         * configure.target: Fix comment for mips atomicity. Add
1699         mips*-*-linux* target, enable atomic operations there.
1700         * config/cpu/mips/atomicity.h: Fix comments, remove
1701         #ifndef/#endif. Add push/pop mips2.
1702
1703 2002-07-08  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
1704
1705         * include/bits/stl_deque.h (_Deque_alloc_base):  Change order of
1706         member declarations to avoid compiler warnings and restore 3.1 ABI.
1707
1708 2002-07-08  Phil Edwards  <pme@gcc.gnu.org>
1709
1710         * docs/html/23_containers/howto.html:  Link to dk_std::vector paper
1711         and homepage.
1712
1713 2002-07-07  Paolo Carlini  <pcarlini@unitus.it>
1714
1715         PR libstdc++/7186
1716         * include/bits/stl_deque.h (_Deque_iterator::operator-):
1717         Make non-member, as already happens for the comparison
1718         operators in accord with DR179 (Ready).
1719         * testsuite/23_containers/deque_operators.cc: Add test02.
1720
1721 2002-07-04  Benjamin Kosnik  <bkoz@redhat.com>
1722             Jack Reeves  <jackw_reeves@hotmail.com>
1723
1724         * include/std/std_streambuf.h (basic_streambuf::_M_buf): Change to
1725         size_t, from int_type.
1726         (basic_streambuf::_M_buf_size_opt): Same.
1727         (basic_streambuf::_S_pback_sizex): Same.
1728         * include/bits/streambuf.tcc: Same.
1729         * include/std/std_streambuf.h (basic_streambuf::snextc): Use
1730         eq_int_type.
1731         (basic_streambuf::uflow): Same.
1732         * include/bits/sstream.tcc (basic_stringbuf::overflow): Use
1733         to_char_type.
1734         * include/bits/basic_ios.tcc (basic_ios::init): Use _CharT().
1735         * include/bits/streambuf.tcc (basic_streambuf::xsgetn): Use
1736         eq_int_type.
1737         (basic_streambuf::xsputn): Same.
1738         (__copy_streambufs): Same.
1739
1740 2002-07-03  Benjamin Kosnik  <bkoz@redhat.com>
1741
1742         * include/std/std_memory.h: Fix formatting.
1743         * testsuite/20_util/auto_ptr_neg.cc: New.
1744         * testsuite/20_util/auto_ptr.cc: Tweaks.
1745         * testsuite/23_containers/map_operators.cc (test01): Split into..
1746         * testsuite/23_containers/map_operators_neg.cc (test01): ...this. New.
1747         * testsuite/23_containers/set_operators.cc: Move to...
1748         * testsuite/23_containers/set_operators_neg.cc: ...here.
1749         * testsuite/README: Add some more naming rules.
1750
1751 2002-07-03  Steev Wilcox  <steev@paradigmds.com>
1752
1753         PR libstdc++/7057
1754         * include/ext/stl_hashtable.h: Fix.
1755         * testsuite/ext/hash_map.cc: New.
1756
1757 2002-07-03  Jack Reeves  <jackw_reeves@hotmail.com>
1758             Kenny Simpson  <theonetruekenny@yahoo.com>
1759             Phil Edwards  <pme@gcc.gnu.org>
1760
1761         PR libstdc++/3946
1762         * testsuite/20_util/auto_ptr.cc (test08):  New test.
1763         * include/std/std_memory.h (auto_ref_ptr):  Make constructor explicit.
1764         (auto_ptr::operator auto_ptr_ref):  Fix typo.
1765         General reformatting and doxygenating of the whole file.
1766
1767 2002-07-03  Benjamin Kosnik  <bkoz@redhat.com>
1768
1769         PR libstdc++/7097
1770         * include/c/std_cwchar.h: Fix.
1771
1772 2002-07-02  Benjamin Kosnik  <bkoz@redhat.com>
1773
1774         PR libstdc++/6410
1775         * include/bits/locale_facets.h (moneypunct::moneypunct): Add const
1776         char* name parameter.
1777         * config/locale/gnu/monetary_members.cc: Use it.
1778         * config/locale/generic/monetary_members.cc: Same.
1779         * src/localename.cc (_Impl::_Impl(const char*, size_t)): Use it.
1780
1781         * include/backward/strstream.h: Update date.
1782
1783 2002-07-02  Paolo Carlini  <pcarlini@unitus.it>
1784
1785         PR libstdc++/6642
1786         * include/bits/stl_iterator.h
1787         (__normal_iterator::operator-(const __normal_iterator&)):
1788         Make non-member, as already happens for the comparison
1789         operators in accord with DR179 (Ready).
1790         * testsuite/24_iterators/iterator.cc: Add test from the PR.
1791
1792 2002-07-02  Phil Edwards  <pme@gcc.gnu.org>
1793
1794         PR libstdc++/7173
1795         * acinclude.m4:  Simplify determination of gcc_version, and move
1796         up to GLIBCPP_CONFIGURE.
1797         * configure.in (release_VERSION):  Really remove.
1798         (AM_INIT_AUTOMAKE, AM_CONFIG_HEADER):  Move after GLIBCPP_CONFIGURE.
1799         * aclocal.m4, configure:  Regenerate.
1800
1801 2002-07-02  Phil Edwards  <pme@gcc.gnu.org>
1802
1803         * docs/html/configopts.html, docs/html/install.html:  Tweaks.
1804         * include/ext/algorithm, include/ext/hash_map, include/ext/hash_set,
1805         include/ext/iterator, include/ext/numeric, include/ext/rb_tree,
1806         include/ext/slist, include/ext/stl_rope.h:  Add doxygen hooks.
1807
1808 2002-07-01  Benjamin Kosnik  <bkoz@redhat.com>
1809
1810         * include/backward/strstream: Remove namespace std. Transfer to...
1811         * include/backward/strstream.h: ...here. Qualify std names.
1812         * src/strstream.cc: Remove namespace std.
1813         * include/Makefile.am (backward_headers): Remove strstream.h.
1814         * include/Makefile.in: Regenerate.
1815         * config/linker-map.gnu: Export strstream bits.
1816
1817         * src/fstream-inst.cc: Tweak.
1818         * src/io-inst.cc: Same.
1819         * src/istream-inst.cc: Same.
1820         * src/misc-inst.cc: Same.
1821         * src/ostream-inst.cc: Same.
1822         * src/sstream-inst.cc: Same.
1823         * src/valarray-inst.cc: Same.
1824         * src/misc-inst.cc: Remove unused instantiations.
1825
1826 2002-07-01  Benjamin Kosnik  <bkoz@redhat.com>
1827
1828         * configure.in (libtool_VERSION): Bump to 5:0:0.
1829         * configure: Regenerate.
1830
1831 2002-06-28  Phil Edwards  <pme@gcc.gnu.org>
1832
1833         PR libstdc++/7157, PR libstdc++/7158, PR libstdc++/7161
1834         * include/std/std_queue.h:  Include deque.tcc, vector.tcc.
1835         * include/std/std_stack.h:  Include deque.tcc.
1836         * testsuite/23_containers/adaptors.cc:  New file.
1837
1838 2002-06-27  Phil Edwards  <pme@gcc.gnu.org>
1839
1840         * include/bits/stl_alloc.h:  Deprecate all 'reallocate' memfns.
1841         * docs/html/ext/howto.html:  Update allocator notes.
1842
1843 2002-06-26  Benjamin Kosnik  <bkoz@redhat.com>
1844
1845         * configure.in (INTERFACE): Remove.
1846         (release_VERSION): Remove.
1847         * acinclude.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Change include placement.
1848         (libstdcxx_interface): Change. Use gcc methods to determine version.
1849         * configure: Regenerate.
1850         * aclocal.m4: Regenerate.
1851
1852 2002-06-25  DJ Delorie  <dj@redhat.com>
1853
1854         * acinclude.m4 (GLIBCPP_CONFIGURE): Split out
1855         GLIBCPP_TOPREL_CONFIGURE.
1856         * aclocal.m4: Likewise.
1857         * configure.in: Call it before AC_CANONICAL_SYSTEM.
1858         * configure: Regenerate.
1859
1860 2002-06-25  Jessica Han  <jessica@cup.hp.com>
1861
1862         * config/os/hpux/os_defines.h Define _GLIBCPP_VTABLE_PADDING
1863         * libsupc++/tinfo.cc Handle the 8 byte aligned vtable entries when
1864         _GLIBCPP_VTABLE_PADDING is defined.
1865
1866 2002-06-25  Benjamin Kosnik  <bkoz@redhat.com>
1867
1868         * include/bits/stl_alloc.h: Additional formatting.
1869
1870 2002-06-24  Phil Edwards  <pme@gcc.gnu.org>
1871
1872         * include/bits/stl_alloc.h:  Reformat as per C++STYLE.
1873
1874 2002-06-24  Phil Edwards  <pme@gcc.gnu.org>
1875
1876         * config/cpu/*/bits/*:  Move header files up a level.  Remove bits.
1877         * config/os/*/bits/*:  Likewise.
1878         * configure.in:  Update.
1879         * configure:  Regenerate.
1880         * configure.target:  Update.
1881         * docs/html/17_intro/porting.texi:  Update.
1882
1883 2002-06-21  Phil Edwards  <pme@gcc.gnu.org>
1884
1885         * include/bits/stl_map.h, include/bits/stl_multimap.h,
1886         include/bits/stl_queue.h, include/bits/stl_stack.h:  Reformat and
1887         complete doxygenation.
1888         * include/bits/boost_concept_check.h:  Minor comment.
1889
1890 2002-06-21  Benjamin Kosnik  <bkoz@redhat.com>
1891
1892         * include/c_compatibility: New.
1893         * include/c_compatibility/assert.h: New.
1894         * include/c_compatibility/ctype.h: New.
1895         * include/c_compatibility/errno.h: New.
1896         * include/c_compatibility/float.h: New.
1897         * include/c_compatibility/iso646.h: New.
1898         * include/c_compatibility/limits.h: New.
1899         * include/c_compatibility/locale.h: New.
1900         * include/c_compatibility/math.h: New.
1901         * include/c_compatibility/setjmp.h: New.
1902         * include/c_compatibility/signal.h: New.
1903         * include/c_compatibility/stdarg.h: New.
1904         * include/c_compatibility/stddef.h: New.
1905         * include/c_compatibility/stdio.h: New.
1906         * include/c_compatibility/stdlib.h: New.
1907         * include/c_compatibility/string.h: New.
1908         * include/c_compatibility/time.h: New.
1909         * include/c_compatibility/wchar.h: New.
1910         * include/c_compatibility/wctype.h: New.
1911
1912         * include/c/std_cerrno.h: Get out of the way... define errno.
1913         * include/c/std_cmath.h: Add abs, modf overloads.
1914         Undefine C99 isms. Still not sure how to deal with this sanely.
1915         * include/c/std_csetjmp.h: Tweak.
1916         * include/c/std_cwchar.h: Include cstddef for size_t.
1917
1918         * include/c_std/std_cmath.h: Remove extra function.
1919
1920         Pendantic std usage in testsuites.
1921         * testsuite/17_intro/header_cstdlib.cc (test01): Qualify ldiv_t
1922         with std.
1923         * testsuite/17_intro/header_cwchar.cc: Tweak.
1924         * testsuite/22_locale/codecvt_members_char_char.cc (test03): Use
1925         std::setlocale.
1926         * testsuite/22_locale/ctype_to_wchar_t.cc (test05): Same.
1927         * testsuite/22_locale/ctype_to_char.cc (test05): Same.
1928         * testsuite/22_locale/ctype_is_wchar_t.cc (test05): Same.
1929         * testsuite/22_locale/ctype_is_char.cc (test05): Same.
1930         * testsuite/22_locale/codecvt_members_wchar_t_char.cc (test03): Same.
1931         * testsuite/22_locale/time_get_members_wchar_t.cc (test08): Same.
1932         * testsuite/22_locale/time_get_members_char.cc (test08): Same.
1933         * testsuite/22_locale/time_put_members_wchar_t.cc (test04): Same.
1934         * testsuite/22_locale/time_put_members_char.cc (test04): Same.
1935         * testsuite/22_locale/num_put_members_wchar_t.cc (test04): Same.
1936         * testsuite/22_locale/num_put_members_char.cc (test04): Same.
1937         * testsuite/22_locale/numpunct_members_wchar_t.cc (test03): Same.
1938         * testsuite/22_locale/numpunct_members_char.cc (test03): Same.
1939         * testsuite/22_locale/num_get_members_wchar_t.cc: Same.
1940         * testsuite/22_locale/num_get_members_char.cc: Same.
1941         * testsuite/22_locale/money_put_members_wchar_t.cc (test07): Same.
1942         * testsuite/22_locale/money_put_members_char.cc (test07): Same.
1943         * testsuite/22_locale/moneypunct_members_wchar_t.cc (test03): Same.
1944         * testsuite/22_locale/moneypunct_members_char.cc (test03): Same.
1945         * testsuite/22_locale/money_get_members_wchar_t.cc (test08): Same.
1946         * testsuite/22_locale/money_get_members_char.cc (test08): Same.
1947         * testsuite/22_locale/messages_members_char.cc (test03): Same.
1948         * testsuite/22_locale/collate_members_wchar_t.cc (test04): Same.
1949         * testsuite/22_locale/collate_members_char.cc (test04): Same.
1950         * testsuite/26_numerics/fabs_inline.cc: Use std::printf.
1951         * testsuite/27_io/istream_seeks.cc (test02): Qualify abort.
1952         * testsuite/27_io/istream_extractor_arith.cc (test11): Qualify strtol.
1953
1954 2002-06-20  Benjamin Kosnik  <bkoz@redhat.com>
1955
1956         * libsupc++/Makefile.am (libsupc__convenience_la_SOURCES): Add
1957         c_sources.
1958
1959 2002-06-20  Benjamin Kosnik  <bkoz@redhat.com>
1960
1961         * src/ext-inst.cc (__gnu_cxx): Use instead of std:: for extensions.
1962         Use size_type instead of unsigned long.
1963
1964 2002-06-20  Steve Ellcey  <sje@cup.hp.com>
1965
1966         * src/ext-inst.cc (_S_fetch): Add explicit templates for char and
1967         wchar types.
1968         (_S_min_len): Ditto.
1969
1970 2002-06-20  Benjamin Kosnik  <bkoz@redhat.com>
1971
1972         * include/Makefile.am: Add rules.
1973         * include/Makefile.in: Regenerate.
1974
1975         * acinclude.m4: Define GLIBCPP_C_HEADERS_COMPATIBILITY.
1976         * aclocal.m4: Regenerate.
1977         * configure: Regenerate.
1978         * configure.target (c_model, c_compatibility): Add.
1979
1980         * libsupc++/Makefile.am (c_sources): New.
1981         (libsupc___la_SOURCES): Add c_sources.
1982         (LTCOMPILE): Remove INCLUDES.
1983         (GCC_INCLUDES): New.
1984         (C_COMPILE): New, like COMPILE but without INCLUDES.
1985         (cxa_demangle.o): Use C_COMPILE.
1986         (dyn-string.o): Use C_COMPILE.
1987
1988         * include/c/std_cstdarg.h: Define __need___va_list.
1989         * include/c/std_cstddef.h: Define need_size_t, need_ptrdiff_t,
1990         need_NULL, need_offsetof.
1991
1992 2002-06-19  Steve Ellcey  <sje@cup.hp.com>
1993
1994         * configure.in (HAVE_FINITE*, HAVE_ISINF*, HAVE_ISNAN*):  Remove
1995         definitions in hpux11 cross-build because these functions do
1996         not exist on hpux11 (but some exist on hpux10); move defaults out
1997         into existing sections.
1998         * configure:  Regenerate.
1999
2000 2002-06-18  Benjamin Kosnik  <bkoz@redhat.com>
2001
2002         * include/c/std_cwchar.h: Guard. Add mbstate_t bits.
2003         * include/c/std_cwctype.h: Guard.
2004
2005         * libsupc++/eh_alloc.cc: Tweak include order.
2006         * libsupc++/pure.cc: Use cstdio.
2007         * libsupc++/new_op.cc: Remove malloc forward declaration, as
2008         cstdlib brings it in. Use std::malloc.
2009
2010         * src/Makefile.am (sources): Remove cmath.cc.
2011         * src/Makefile.in: Regenerate.
2012         * src/cmath.cc: Remove.
2013
2014 2002-06-18  Phil Edwards  <pme@gcc.gnu.org>
2015
2016         * configure.target:  Force mips to use the generic cpu routines.
2017
2018 2002-06-18  Phil Edwards  <pme@gcc.gnu.org>
2019
2020         * configure.host:  Delete file.
2021         * configure.target:  More documentation.  Factor out common parts of
2022         script into "intelligent" settings about defaults.  Remove redundancy.
2023
2024         * acinclude.m4:  Update comments.  Do not call configure.host.
2025         (GLIBCPP_ENABLE_SYMVERS):  If disabled, do not bother checking for
2026         libgcc_s.
2027         * configure.in:  Slight reformatting, more comments.  Factor out
2028         "config/" from all the directories.
2029         * docs/html/17_intro/porting.texi:  Update and expand.
2030         * testsuite/Makefile.am (AM_RUNTESTFLAGS):  Move empty setting
2031         from configure.host.
2032
2033         * aclocal.m4, configure, docs/html/17_intro/porting.html,
2034         testsuite/Makefile.in:  Regenerate.
2035
2036 2002-06-16  Phil Edwards  <pme@gcc.gnu.org>
2037
2038         * docs/doxygen/TODO:  Update.
2039         * docs/doxygen/tables.html:  Uncomment magical middle column.
2040         * docs/doxygen/user.cfg.in:  Kludge to ignore function-like macros.
2041         * include/bits/stl_queue.h:  Doxygenate and reformat.
2042         * include/bits/ios_base.h, include/std/std_streambuf.h:  Add comment
2043         for deprecated names required by the standard.
2044
2045 2002-06-14  J.T. Conklin  <jtc@acorntoolworks.com>
2046
2047         * configure.in (target_alias): Fix.
2048         * configure: Regenerate.
2049         * aclocal.m4: Regenerate.
2050
2051 2002-06-12  Phil Edwards  <pme@gcc.gnu.org>
2052
2053         * include/Makefile.am:  Add new files.
2054         * include/Makefile.in:  Regenerate.
2055
2056         * include/bits/stl_deque.h, include/bits/stl_list.h,
2057         include/bits/stl_vector.h:  Clean up, reformat.  Move definitions...
2058         * include/bits/deque.tcc, include/bits/list.tcc,
2059         include/bits/vector.tcc:  ...to here.  New files.
2060
2061         * include/ext/stl_hashtable.h:  Inclide correct full headers.
2062         * include/std/std_deque.h:  Include .tcc files for now.
2063         * include/std/std_list.h:  Likewise.
2064         * include/std/std_vector.h:  Likewise.
2065
2066 2002-06-12  Daniel Jacobowitz  <drow@mvista.com>
2067
2068         * Makefile.am: Add FLAGS_TO_PASS.
2069         * Makefile.in: Regenerated.
2070
2071 2002-06-11  J.T. Conklin  <jtc@acorntoolworks.com>
2072             Benjamin Kosnik  <bkoz@redhat.com>
2073
2074         * configure.target: Set os_include_dir to config/os/qnx/qnx6.1
2075         under *-qnx6.[12]*.
2076         * configure.in: Add support for *-qnx6.[12]*.
2077         * configure: Regenerate.
2078
2079         * config/os/qnx, config/os/qnx/qnx6.1, config/os/qnx/qnx6.1/bits:
2080         New directories.
2081         * config/os/qnx/qnx6.1/bits/ctype_base.h, ctype_inline.h,
2082         ctype_noninline.h, os_defines.h: New files.
2083
2084 2002-06-10  Loren J. Rittle <ljrittle@acm.org>
2085
2086         * acinclude.m4 (GLIBCPP_CHECK_SETRLIMIT_ancilliary): Reorder and
2087         include all required headers for test against older POSIX standard.
2088         (GLIBCPP_CHECK_SETRLIMIT): Likewise.
2089         (ac_setrlimit): Likewise.
2090         * aclocal.m4: Regenerate.
2091         * configure: Regenerate.
2092         * testsuite/testsuite_hooks.cc: Reorder and include all
2093         required headers for use against older POSIX standard.
2094
2095 2002-06-08  Paolo Carlini  <pcarlini@unitus.it>
2096
2097         * testsuite/backwards/strstream_members.cc: New.
2098
2099 2002-06-08  Benjamin Kosnik  <bkoz@redhat.com>
2100
2101         * include/backwards/strstream: Format.
2102         * src/strstream.cc: Format.
2103
2104 2002-06-08  Andreas Schwab  <schwab@suse.de>
2105
2106         * src/strstream.cc (strstreambuf::overflow): Set _M_buf,
2107         _M_buf_size and _M_buf_size_opt to the new buffer and size.
2108
2109 2002-06-08  Benjamin Kosnik  <bkoz@redhat.com>
2110
2111         * config/os/generic/bits/ctype_noninline.h: Tweak format.
2112
2113 2002-06-07  Steve Ellcey  <sje@cup.hp.com>
2114
2115         * src/locale-inst.cc (__codecvt_abstract_base):
2116         Put inside _GLIBCPP_USE_WCHAR_T ifdef.
2117         * include/bits/istream.tcc (basic_istream): Ditto.
2118         (ws) Ditto.
2119         (operator>>) Ditto.
2120         * include/bits/ostream.tcc (basic_ostream): Ditto.
2121         (endl): Ditto.
2122         (ends): Ditto.
2123         (flush): Ditto.
2124         (operator<<): Ditto.
2125
2126 2002-06-07  Phil Edwards  <pme@gcc.gnu.org>
2127
2128         * mkcheck.in:  Link against local testsuite library.
2129         * testsuite/testsuite_hooks.h (__set_testsuite_memlimit):  Move null
2130         implementation out...
2131         * testsuite/testsuite_hooks.cc:  ...to here.
2132
2133 2002-06-06  Loren J. Rittle <ljrittle@acm.org>
2134
2135         * src/Makefile.am (AUTOMAKE_OPTIONS): Use cygnus-style generation.
2136         * include/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
2137         * testsuite/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
2138         * src/Makefile.in: Regenerate (explicitly with --cygnus option).
2139         * testsuite/Makefile.in: Likewise.
2140
2141 2002-06-05  David Edelsohn  <edelsohn@gnu.org>
2142
2143         * config/os/aix/bits/ctype_noninline.h (do_toupper,do_tolower):
2144         Call external symbol.
2145
2146 2002-06-04  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2147
2148         * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3_target_compile):
2149         Search correct multilib testsuite dir for libv3test.
2150
2151 2002-06-04  Paolo Carlini  <pcarlini@unitus.it>
2152             Gaby Dos Reis  <gdr@codesourcery.com>
2153
2154         * include/bits/basic_string.tcc
2155         (basic_string::_S_construct(forward_iterator_tag):
2156         Fix typo in null pointer check.
2157         * testsuite/21_strings/ctor_copy_dtor.cc: Add test04.
2158
2159 2002-06-04  Paolo Carlini  <pcarlini@unitus.it>
2160
2161         * testsuite/22_locale/money_get_members_char.cc
2162         (test02): Add decimal point to long double constants.
2163         * testsuite/22_locale/money_get_members_wchar_t.cc
2164         (test02): Likewise.
2165         * testsuite/22_locale/money_put_members_char.cc
2166         (test02, test03, test06): Likewise.
2167         * testsuite/22_locale/money_put_members_wchar_t.cc:
2168         (test02, test03, test06): Likewise.
2169         * testsuite/22_locale/num_get_members_char.cc:
2170         (test02, test01): Likewise; suffix long long constants with LL.
2171         * testsuite/22_locale/num_get_members_wchar_t.cc:
2172         (test02, test01): Likewise.
2173         * testsuite/22_locale/num_put_members_char.cc:
2174         (test02, test01): Likewise.
2175         * testsuite/22_locale/num_put_members_wchar_t.cc:
2176         (test02, test01): Likewise.
2177
2178 2002-06-03  Marc Espie  <espie@openbsd.org>
2179
2180         * config/cpu/m68k/bits/atomicity.h(__exchange_and_add): Fix inline
2181         assembly for old assemblers.
2182
2183 2002-06-03  Phil Edwards  <pme@gcc.gnu.org>
2184
2185         * include/bits/stl_bvector.h (swap(_Bit_reference,_Bit_reference)):
2186         Move/rename...
2187         (vector<bool>::swap(reference,reference)): ...to this.
2188
2189 2002-06-03  Phil Edwards  <pme@gcc.gnu.org>
2190
2191         * docs/doxygen/TODO:  Update.
2192         * docs/doxygen/user.cfg.in (SORT_MEMBER_DOCS):  Set to off, now that
2193         some class members are in 14882 order.
2194         * docs/html/ext/howto.html:  3.1 is in the past now, not the future.
2195
2196         * include/std/std_bitset.h:  Update comment.
2197         * src/bitset.cc:  Update comments, clean up spacing.
2198
2199         * src/Makefile.am (sources):  Alphabetize for convenience.
2200         * src/Makefile.in:  Regenerate.
2201
2202 2002-06-03  Phil Edwards  <pme@gcc.gnu.org>
2203
2204         * include/bits/stl_deque.h, include/bits/stl_list.h,
2205         include/bits/stl_vector.h:  Reformat to (mostly) match C++STYLE.
2206         Reorder to match 14882.  Doxygen blocks for all public members.
2207
2208 2002-05-31  Marcus Meissner  <meissner@suse.de>
2209
2210         PR libstdc++/6886
2211         * include/bits/stl_bvector.h:  Use UL suffix for unsigned longs.
2212         * testsuite/23_containers/vector_bool.cc (test02):  New test.
2213
2214 2002-05-30  Marc Espie  <espie@openbsd.org>
2215
2216         * configure.in: Always check for sys/types.h
2217         * configure: Regenerate.
2218
2219 2002-05-28  Nick Clifton  <nickc@cambridge.redhat.com>
2220
2221         * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init):
2222         Rebuild the wrapper file every time this proc is called.
2223
2224 2002-05-28  Phil Edwards  <pme@gcc.gnu.org>
2225
2226         * testsuite/Makefile.am (noinst_LIBRARIES):  New target.  Pull in
2227         CXX/INCLUDES.
2228         * testsuite/Makefile.in:  Regenerate.
2229         * testsuite/testsuite_hooks.h (gnu_copy_tracker):  Move from
2230         list_modifiers.cc and rename from 'T'.  Move code bodies...
2231         * testsuite/testsuite_hooks.cc:  ...to here.  New file.
2232         * testsuite/23_containers/list_modifiers.cc:  Move 'T' class out.
2233         * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3_target_compile):
2234         Add libv3test.a to link options.
2235
2236 2002-05-27  Benjamin Kosnik  <bkoz@redhat.com>
2237
2238         * src/misc-inst.cc: Define unnecessary algorithm
2239         instantiations. Break apart instantiations into groupings below.
2240         * src/fstream-inst.cc: New.
2241         * src/io-inst.cc: New.
2242         * src/istream-inst.cc: New.
2243         * src/ostream-inst.cc: New.
2244         * src/streambuf-inst.cc: New.
2245         * src/sstream-inst.cc: New.
2246         * src/Makefile.am (sources): Add files.
2247         * src/Makefile.in: Regenerate.
2248
2249         * acinclude.m4: Work around automake 1.4-p5 bug, change
2250         AM_GNU_GETTEXT in comments to AM-GNU-GETTEXT.
2251
2252 2002-05-27  Benjamin Kosnik  <bkoz@redhat.com>
2253
2254         PR libstdc++/6795.
2255         * config/os/solaris/solaris2.6/bits/ctype_noninline.h
2256         (classic_table): Fix.
2257         * config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.
2258
2259 2002-05-27  Benjamin Kosnik  <bkoz@redhat.com>
2260
2261         * testsuite/22_locale/ctype_is_wchar_t.cc: Guard with
2262         _GLIBCPP_USE_WCHAR_T.
2263         * testsuite/22_locale/ctype_narrow_wchar_t.cc: Same.
2264         * testsuite/22_locale/ctype_to_wchar_t.cc: Same.
2265         * testsuite/22_locale/ctype_widen_wchar_t.cc: Same.
2266
2267 2002-05-26  Carlo Wood  <carlo@alinoe.com>
2268             Paolo Carlini  <pcarlini@unitus.it>
2269
2270         PR libstdc++/6811
2271         * config/locale/ieee_1003.1-2001/codecvt_specializations.h
2272         (__enc_traits::operator=): add missing return statement.
2273
2274 2002-05-24  Phil Edwards  <pme@gcc.gnu.org>
2275
2276         PR libstdc++/6282
2277         * include/std/std_bitset.h (_Base_biteset<0>):  New specialization.
2278         (operator>>):  If nothing was extracted, don't fail in the
2279         zero-length case.
2280         * testsuite/23_containers/bitset_ctor.cc (test02):  New test.
2281
2282 2002-05-24  Benjamin Kosnik  <bkoz@redhat.com>
2283
2284         PR libstdc++/6701
2285         * testsuite/22_locale/ctype_narrow_char.cc: New.
2286         * testsuite/22_locale/ctype_narrow_wchar_t.cc: New.
2287         * testsuite/22_locale/ctype_widen_char.cc: New.
2288         * testsuite/22_locale/ctype_widen_wchar_t.cc: New.
2289         * testsuite/22_locale/ctype_members_char.cc: Move some bits into...
2290         * testsuite/22_locale/ctype_is_char.cc: ...this.
2291         * testsuite/22_locale/ctype_to_char.cc: ...and this.
2292         * testsuite/22_locale/ctype_members_wchar_t.cc: Move some bits into...
2293         * testsuite/22_locale/ctype_is_wchar_t.cc: ...this.
2294         * testsuite/22_locale/ctype_to_wchar_t.cc: ...and this.
2295
2296         * testsuite/22_locale/ctype_scan_wchar_t.cc: Should pass.
2297
2298 2002-05-24  Dale Peakall <dale@peakall.net>
2299
2300         PR libstdc++/6701
2301         * config/locale/gnu/ctype_members.cc (ctype<wchar_t>::do_narrow): Fix.
2302         * config/locale/generic/ctype_members.cc: Same.
2303
2304 2002-05-24  Benjamin Kosnik  <bkoz@redhat.com>
2305
2306         PR libstdc++/6750
2307         * include/bits/ostream.tcc (ostream::operator<<(const char*)): Fix
2308         for empty string literal.
2309         (ostream::operator<<(const _CharT*)): Same.
2310         (ostream<char>::operator<<(const char*)): Same.
2311         (ostream<char>::operator<<(streambuf*)): Same.
2312         * testsuite/27_io/ostream_inserter_char.cc (test08): Add tests.
2313         * testsuite/27_io/ostream_inserter_other.cc (test02): Modify.
2314
2315 2002-05-23  Benjamin Kosnik  <bkoz@redhat.com>
2316
2317         * configure.in (release_VERSION): Update to 3.1.1.
2318         (libtool_VERSION): Update to 4:1:0.
2319         * configure: Regenerate.
2320
2321 2002-05-21  Phil Edwards  <pme@gcc.gnu.org>
2322
2323         * include/bits/stl_pair.h:  Tweak comment markup.
2324
2325 2002-05-21  Phil Edwards  <pme@gcc.gnu.org>
2326
2327         * include/ext/stdio_filebuf.h:  Add header guards.  Doxygenate.
2328
2329 2002-05-21  Phil Edwards  <pme@gcc.gnu.org>
2330
2331         * docs/doxygen/user.cfg.in (EXCLUDE):  Add 'CVS'.
2332
2333 2002-05-21  Phil Edwards  <pme@gcc.gnu.org>
2334
2335         * include/bits/stl_vector.h:  Reformat to follow C++STYLE.
2336         Doxygenate all public members.  Reorder to follow 14882.
2337         (vector::push_back(void)):  Remove previously-deprecated fn.
2338         (vector::insert(iterator), vector::_M_insert_aux(iterator)):
2339         Deprecate for removal in 3.3.
2340
2341 2002-05-20  Phil Edwards  <pme@gcc.gnu.org>
2342
2343         * docs/html/faq/index.html (5.4):  Recommend against -I options for
2344         finding the ext headers.
2345         * docs/html/faq/index.txt:  Regenerate.
2346
2347 2002-05-19  Paolo Carlini  <pcarlini@unitus.it>
2348
2349         * testsuite/23_containers/deque_operators.cc (test01):
2350         Fix minor typo in last commit.
2351
2352 2002-05-18  Paolo Carlini  <pcarlini@unitus.it>
2353
2354         PR libstdc++/6503
2355         * include/bits/stl_deque.h (_Deque_iterator::operator==,
2356         operator!=, operator<, operator>, operator>=, operator<=):
2357         Make non-member functions, to allow comparing const and
2358         non-const iterators in any order.
2359         * testsuite/23_containers/deque_operators.cc: New testfile.
2360
2361 2002-05-16  Phil Edwards  <pme@gcc.gnu.org>
2362
2363         * docs/html/faq/index.html:  Update not-a-bug list with basic_file.h.
2364         * docs/html/faq/index.txt:  Regenerate.
2365
2366 2002-05-16  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2367
2368         * Makefile.am: Allow for PWDCMD to override hardcoded pwd.
2369         * acinclude.m4: Likewise.
2370         * docs/html/Makefile: Likewise.
2371         * aclocal.m4: Regenerate.
2372         * configure: Regenerate.
2373         * Makefile.in: Regenerate.
2374
2375 2002-05-15  Loren J. Rittle <ljrittle@acm.org>
2376
2377         libstdc++/6641
2378         * include/bits/c++config (__USE_MALLOC): Report case where
2379         the user improperly defined it on the command line.
2380
2381 2002-05-15  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2382
2383         * testsuite/testsuite_hooks.h (__set_testsuite_memlimit):
2384         Retrieve current limits before setting.
2385
2386 2002-05-15  Benjamin Kosnik  <bkoz@redhat.com>
2387
2388         PR libstdc++/6518
2389         * include/bits/ostream.tcc (ostream::operator<<(const char*)): Fix
2390         for null case.
2391         (ostream::operator<<(const _CharT*)): Same.
2392         (ostream<char>::operator<<(const char*)): Same.
2393         * testsuite/27_io/ostream_inserter_char.cc (test07): Add test.
2394
2395 2002-05-15  Benjamin Kosnik  <bkoz@redhat.com>
2396
2397         PR libstdc++/6594
2398         * src/strstream.cc (strstreambuf): Fix leak.
2399
2400 2002-05-15  Paolo Carlini  <pcarlini@unitus.it>
2401
2402         PR libstdc++/6648
2403         * include/bits/istream.tcc (istream::getline, ignore):
2404         Upon __idelim (__delim) call sbumpc() not snextc().
2405         * testsuite/27_io/narrow_stream_objects.cc:
2406         Add test08 and test09.
2407
2408 2002-05-13  Benjamin Kosnik  <bkoz@redhat.com>
2409
2410         * testsuite/22_locale/ctype_scan_char.cc: Tweak.
2411         * testsuite/22_locale/ctype_scan_wchar_t.cc: New.
2412
2413         * docs/html/install.html: Fix.
2414
2415 2002-05-13  Benjamin Kosnik  <bkoz@redhat.com>
2416
2417         * include/bits/fstream.tcc
2418         (basic_filebuf::_M_allocate_internal_buffer): Remove extraneous
2419         try/catch blocks.
2420         * src/localename.cc (locale::_Impl::_M_install_facet): Same.
2421
2422         * docs/html/install.html: Tweak, add bits about required locales
2423         for the 22_locale tests when using the gnu model.
2424
2425         * testsuite/27_io/istream_sentry.cc: Tweak.
2426
2427 2002-05-13  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2428
2429         * config/os/irix/irix5.2/bits/ctype_inline.h (scan_is, scan_not):
2430         Fix typo, use this->is() rather than manually (and perhaps
2431         incorrectly) inlining it.
2432         * config/os/irix/irix6.5/bits/ctype_inline.h (scan_is, scan_not):
2433         Likewise.
2434         * testsuite/22_locale/ctype_scan_char.cc: New file.
2435
2436 2002-05-13  Paolo Carlini  <pcarlini@unitus.it>
2437             Jakub Jelinek  <jakub@redhat.com>
2438
2439         * testsuite/22_locale/money_get_members_char.cc
2440         (test01, test02, test04): Use the de_DE@euro named locale
2441         instead of de_DE to allow for an uniform behaviour with
2442         both old and Euro-era localedata; tweak some tests.
2443         * testsuite/22_locale/money_get_members_wchar_t.cc
2444         (test01, test02, test04): Likewise.
2445         * testsuite/22_locale/money_put_members_char.cc
2446         (test01, test02, test04): Likewise.
2447         * testsuite/22_locale/money_put_members_wchar_t.cc
2448         (test01, test02, test04): Likewise.
2449
2450 2002-05-13  Paolo Carlini  <pcarlini@unitus.it>
2451
2452         * testsuite/22_locale/codecvt_members_char_char.cc
2453         (test03): Robustify wrt localedata.
2454         * testsuite/22_locale/codecvt_members_wchar_t_char.cc (test03): Likewise.
2455         * testsuite/22_locale/collate_members_char.cc (test04): Likewise.
2456         * testsuite/22_locale/collate_members_wchar_t.cc (test04): Likewise.
2457         * testsuite/22_locale/ctype_members_char.cc (test05): Likewise.
2458         * testsuite/22_locale/ctype_members_wchar_t.cc (test04): Likewise.
2459         * testsuite/22_locale/messages_members_char.cc (test03): Likewise.
2460         * testsuite/22_locale/money_get_members_char.cc (test08): Likewise.
2461         * testsuite/22_locale/money_get_members_wchar_t.cc (test08): Likewise.
2462         * testsuite/22_locale/money_put_members_char.cc (test07): Likewise.
2463         * testsuite/22_locale/money_put_members_wchar_t.cc (test07): Likewise.
2464         * testsuite/22_locale/moneypunct_members_char.cc (test03): Likewise.
2465         * testsuite/22_locale/moneypunct_members_wchar_t.cc (test03): Likewise.
2466         * testsuite/22_locale/num_get_members_char.cc (test06): Likewise.
2467         * testsuite/22_locale/num_get_members_wchar_t.cc (test06): Likewise.
2468         * testsuite/22_locale/num_put_members_char.cc (test04): Add comment.
2469         * testsuite/22_locale/num_put_members_wchar_t.cc (test04): Likewise.
2470         * testsuite/22_locale/numpunct_members_char.cc (test03): Likewise.
2471         * testsuite/22_locale/numpunct_members_wchar_t.cc (test03): Likewise.
2472         * testsuite/22_locale/time_get_members_char.cc (test08): Likewise.
2473         * testsuite/22_locale/time_get_members_wchar_t.cc (test08): Likewise.
2474         * testsuite/22_locale/time_put_members_char.cc (test04): Likewise.
2475         * testsuite/22_locale/time_put_members_wchar_t.cc (test04): Likewise.
2476
2477 2002-05-12  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2478
2479         * config/os/irix/irix5.2/bits/os_defines.h: Revert 2002-05-06
2480         change.
2481
2482 2002-05-11  John David Anglin  <dave@hiauly1.hia.nrc.ca>
2483
2484         * config/os/gnu-linux/bits/os_defines.h (__glibcpp_long_bits): Define
2485         to 64 for hppa 64-bit port.
2486         (__glibcpp_long_double_bits): Define to 64 for all hppa ports.
2487
2488 2002-05-10  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2489
2490         * acinclude.m4 (enable_symvers): Quote $LD.
2491         * aclocal.m4: Regenerate.
2492         * configure: Likewise.
2493
2494 2002-05-09  Jakub Jelinek  <jakub@redhat.com>
2495
2496         * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Append all
2497         multilib dirs containing libgcc_s*.so.1 below gcc object dir to
2498         LD_LIBRARY_PATH.
2499
2500 2002-05-08  Alexandre Oliva  <aoliva@redhat.com>
2501
2502         * configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at
2503         script entry, and set LD to it when configuring multilibs.
2504         * configure: Rebuilt.
2505
2506 2002-05-07  Mark Mitchell  <mark@codesourcery.com>
2507
2508         * configure.in: Add support for WindISS.
2509         * configure: Regenerated.
2510         * configure.target: Add support for WindISS.
2511         * config/os/windiss/bits/ctype_base.h: New file.
2512         * config/os/windiss/bits/ctype_inline.h: Likewise.
2513         * config/os/windiss/bits/ctype_noninline.h: Likewise.
2514         * config/os/windiss/bits/os_defines.h: Likewise.
2515
2516 2002-05-06  Paolo Carlini  <pcarlini@unitus.it>
2517
2518         Test all the facets for the temporary "C" locale switch issue.
2519         * testsuite/22_locale/codecvt_members_char_char.cc: Add test03.
2520         * testsuite/22_locale/codecvt_members_wchar_t_char.cc: Likewise.
2521         * testsuite/22_locale/collate_members_char.cc: Add test04.
2522         * testsuite/22_locale/collate_members_wchar_t.cc: Likewise.
2523         * testsuite/22_locale/ctype_members_char.cc: Add test05.
2524         * testsuite/22_locale/ctype_members_wchar_t.cc: Add test04.
2525         * testsuite/22_locale/messages_members_char.cc: Add test03.
2526         * testsuite/22_locale/money_get_members_char.cc: Add test08.
2527         * testsuite/22_locale/money_get_members_wchar_t.cc: Likewise.
2528         * testsuite/22_locale/money_put_members_char.cc: Add test07.
2529         * testsuite/22_locale/money_put_members_wchar_t.cc: Likewise.
2530         * testsuite/22_locale/moneypunct_members_char.cc: Add test03.
2531         * testsuite/22_locale/moneypunct_members_wchar_t.cc: Likewise.
2532         * testsuite/22_locale/num_get_members_char.cc: Add test06.
2533         * testsuite/22_locale/num_get_members_wchar_t.cc: Likewise.
2534         * testsuite/22_locale/numpunct_members_char.cc: Add test03.
2535         * testsuite/22_locale/numpunct_members_wchar_t.cc: Likewise.
2536         * testsuite/22_locale/time_get_members_char.cc: Add test08.
2537         * testsuite/22_locale/time_get_members_wchar_t.cc: Likewise.
2538         * testsuite/22_locale/time_put_members_char.cc: Add test04.
2539         * testsuite/22_locale/time_put_members_wchar_t.cc: Likewise.
2540
2541         * testsuite/22_locale/num_put_members_char.cc (test04): Add comment.
2542         * testsuite/22_locale/num_put_members_wchar_t.cc (test04): Likewise.
2543
2544 2002-05-06  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2545
2546         * config/os/irix/irix5.2/bits/os_defines.h (_SGI_SOURCE,
2547         __EXTENSIONS__): Ensure they are always defined.
2548
2549 2002-05-06  Phil Edwards  <pme@gcc.gnu.org>
2550
2551         * docs/html/documentation.html:  Fix broken link.
2552
2553 2002-05-04  Benjamin Kosnik  <bkoz@redhat.com>
2554             Paolo Carlini  <pcarlini@unitus.it>
2555
2556         * testsuite/22_locale/num_put_members_char.cc: Add test04(),
2557         testing for the locale_facets.tcc entry of the previous commit.
2558         * testsuite/22_locale/num_put_members_wchar_t.cc: Likewise.
2559
2560 2002-05-04  Takeshi Kobayakawa  <tskoba@mte.biglobe.ne.jp>
2561
2562         * config/locale/generic/c_locale.cc
2563         (__convert_to_v(float, double, long double)):
2564         Fix the temporary switch to the "C" locale, saving and
2565         restoring in the proper way the current locale.
2566         * config/locale/generic/time_members.cc
2567         (__timepunct<char, wchar_t>::_M_put): Likewise.
2568         * config/locale/gnu/messages_members.cc
2569         (messages<char>::do_get): Likewise.
2570         * config/locale/gnu/messages_members.h
2571         (messages<_CharT>::do_get): Likewise.
2572         * config/locale/gnu/time_members.cc
2573         (__timepunct<char, wchar_t>::_M_put): Likewise.
2574         * include/bits/locale_facets.tcc (__convert_from_v): Likewise.
2575
2576 2002-05-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2577
2578         * configure.in (AC_CHECK_HEADERS): Check for string.h & stdlib.h.
2579         * libsupc++/Makefile.am (LTCOMPILE): Add $(DEFS).
2580
2581         * Makefile.in, config.h.in, configure: Regenerate.
2582
2583 2002-05-03  Benjamin Kosnik  <bkoz@redhat.com>
2584
2585         PR libstdc++/6549.
2586         * include/bits/fstream.tcc (filebuf::_M_underflow_common): Revert.
2587         * testsuite/27_io/narrow_stream_objects.cc (test07): Add.
2588
2589 2002-05-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2590
2591         * config/os/irix/irix5.2/bits/ctype_noninline.h (classic_table):
2592         Return __ctype + 1.
2593         (ctype:_M_table): Initialize to classic_table(), not __ctype.
2594
2595 2002-05-03  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2596
2597         * configure.in: Update local install.html, configopts.html paths.
2598         * configure: Regenerate.
2599
2600 2002-05-02  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2601
2602         * config/os/irix/irix5.2/bits/os_defines.h
2603         (__glibcpp_long_double_bits, __glibcpp_long_bits): Define.
2604
2605         * config/os/irix/irix5.2/bits/ctype_inline.h: Cast to unsigned
2606         char.
2607
2608 2002-05-02  Phil Edwards  <pme@gcc.gnu.org>
2609
2610         * docs/html/faq/index.html:  Update list in #4.1.
2611         * docs/html/faq/index.txt:  Regenerated.
2612
2613 2002-05-02  Benjamin Kosnik  <bkoz@redhat.com>
2614
2615         * docs/html/17_intro/RELEASE-NOTES (New): Update.
2616
2617 2002-05-01  Phil Edwards  <pme@gcc.gnu.org>
2618
2619         * include/std/std_bitset.h:  Fix doxygen comments.
2620         * docs/html/documentation.html:  Minor tweaks for 3.1.
2621         * docs/html/27_io/howto.html:  Likewise.
2622         * docs/html/ext/howto.html:  Likewise, mention stdio_filebuf.
2623         * docs/html/faq/index.html:  Likewise.
2624         * docs/html/faq/index.txt:  Regenerated.
2625
2626 2002-05-01  Benjamin Kosnik  <bkoz@redhat.com>
2627
2628         PR libstdc++/6533
2629         * include/bits/streambuf_iterator.h (istreambuf_iterator::_M_get): New.
2630         (istreambuf_iterator::equal): Use it.
2631         (istreambuf_iterator::operator*): Use it.
2632
2633 2002-05-01  Paolo Carlini  <pcarlini@unitus.it>
2634
2635         PR libstdc++/6513
2636         * include/bits/stl_uninitialized.h
2637         (uninitialized_copy(_InputIter, _InputIter, _ForwardIter)):
2638         Fix typo in 2001-07-17 commit: typedef _ValueType to
2639         iterator_traits<_ForwardIter> not <_InputIter>.
2640         * testsuite/23_containers/vector_ctor.cc: Add test04.
2641
2642 2002-04-30  John David Anglin  <dave@hiauly1.hia.nrc.ca>
2643
2644         PR libstdc++/6501
2645         * include/c_std/std_cctype.h: Include bits/c++config.h.
2646         * config/os/hpux/bits/os_defines.h (_SB_CTYPE_MACROS): Define.
2647
2648 2002-04-30  Benjamin Kosnik  <bkoz@redhat.com>
2649
2650         * include/ext/stdio_filebuf.h: New file.
2651         * include/ext/enc_filebuf.h: New file.
2652         * config/io/basic_file_stdio.h (__basic_file::sys_open): Add fd ctor.
2653         * config/io/basic_file_stdio.cc: Same.
2654         * include/bits/fstream.tcc (filebuf::_M_allocate_internal_buffer):
2655         Remove _M_unbuf hacks.
2656         (filebuf::_M_destroy_internal_buffer): Same.
2657         (filebuf::filebuf(cfile, openmode, int_type): Remove definition.
2658         (filebuf::fd): Remove.
2659         * include/std/std_fstream.h (filebuf::_M_unbuf): Remove.
2660         (filebuf::filebuf(__c_file*, openmode, int_type)): Remove.
2661         (filebuf::fd): Remove.
2662         * src/ios.cc (ios_base::_S_ios_create): Change to use specialized
2663         filebufs.
2664         (ios_base::_S_ios_destroy): Same.
2665         * src/misc-inst.cc (file_filebuf<char>): Add instantiation.
2666         * include/Makefile.am (ext_headers): Add ext_filebuf.h,
2667         stdio_filebuf.h.  * include/Makefile.in: Regenerate.
2668
2669 2002-04-30  Benjamin Kosnik  <bkoz@redhat.com>
2670
2671         PR libstdc++/6511
2672         * config/os/solaris/solaris2.7/bits/ctype_noninline.h: Fix typo.
2673
2674 2002-04-29  Benjamin Kosnik  <bkoz@redhat.com>
2675
2676         PR libstdc++/5820
2677         * include/bits/fstream.tcc (basic_filebuf::_M_underflow_common):
2678         Check for eof.
2679         * include/bits/streambuf_iterator.h: Match stream_iterator.h.
2680         (istreambuf_iterator::operator++): Invalidate on eof.
2681         (istreambuf_iterator::operator++(int)): Same.
2682         (istreambuf_iterator::operator*): Same.
2683
2684 2002-04-29  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2685
2686         * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Set all
2687         of LD_LIBRARY_PATH, SHLIB_PATH, LD_LIBRARYN32_PATH,
2688         LD_LIBRARY64_PATH.
2689
2690 2002-04-28  Benjamin Kosnik  <bkoz@redhat.com>
2691
2692         PR libstdc++/5820
2693         * config/io/basic_file_stdio.h (__basic_file::sys_getc): Return int.
2694         (__basic_file::sys_ungetc): Take int.
2695         * config/io/basic_file_stdio.cc (__basic_file::sys_ungetc): Same.
2696         * include/bits/fstream.tcc (basic_filebuf::_M_underflow_common):
2697         Use sys_getc for unbuffered input.
2698         * testsuite/27_io/narrow_stream_objects.cc (test06): New.
2699
2700         * src/ios.cc (_M_grow_words): Adjust error checking.
2701         * testsuite/27_io/ios_base_storage.cc: Same.
2702
2703 2002-04-28  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
2704
2705         * include/ext/stl_hashtable.h: Import __iterator_category
2706
2707 2002-04-28  Paolo Carlini  <pcarlini@unitus.it>
2708             Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
2709
2710         * testsuite/ext/hash_set.cc: New testfile.
2711
2712 2002-04-27  Benjamin Kosnik  <bkoz@redhat.com>
2713
2714         * config/os/solaris/solaris2.5/bits/os_defines.h: Remove
2715         _G_USING_THUNKS.
2716         * config/os/solaris/solaris2.6/bits/os_defines.h: Same.
2717         * config/os/solaris/solaris2.7/bits/os_defines.h: Same.
2718
2719 2002-04-26  Paolo Carlini  <pcarlini@unitus.it>
2720
2721         * include/bits/basic_string.h (replace(__pos, __n1, __s, __n2):
2722         Fix and tighten __throw_length_error check.
2723         * testsuite/21_strings/replace.cc (test05): New.
2724         * testsuite/21_strings/replace.cc (test02, test03, test04): Tweak.
2725
2726 2002-04-23  Loren J. Rittle <ljrittle@acm.org>
2727
2728         * include/std/std_fstream.h (basic_filebuf::sync): Hoist
2729         unconditional flush on lower-layer handle to here...
2730         * include/bits/fstream.tcc (basic_filebuf::_M_really_overflow):
2731         ...from here.  Optimize remaining _M_file.sync() call pattern.
2732         * testsuite/27_io/narrow_stream_objects.cc (test04): New test.
2733         (test05): Likewise.
2734
2735 2002-04-23  Jason Merrill  <jason@redhat.com>
2736
2737         * include/bits/fstream.tcc (basic_filebuf::seekoff): Fix for
2738         output-only filebufs.
2739         * include/std/std_fstream.h (basic_filebuf::_M_set_indeterminate):
2740         Likewise.
2741         (basic_filebuf::_M_set_determinate): Likewise.
2742
2743         PR libstdc++/6414
2744         * include/bits/fstream.tcc (basic_filebuf::seekoff): Adjust return
2745         value properly in the trivial case.
2746         * testsuite/27_io/istream_seeks.cc (test04): Make sure that
2747         tellg() returns the right value after a read.
2748
2749 2002-04-23  Hans-Peter Nilsson  <hp@bitrange.com>
2750
2751         * config/cpu/mmix/bits/cpu_limits.h: New file.
2752         * configure.target (CPULIMITSH): Use it.
2753
2754 2002-04-22  Loren J. Rittle <ljrittle@acm.org>
2755
2756         * docs/html/17_intro/porting.texi (_GLIBCPP_AVOID_FSEEK): Remove.
2757         * docs/html/17_intro/porting.html: Rebuilt.
2758
2759 2002-04-20  Jason Merrill  <jason@redhat.com>
2760
2761         PR libstdc++/4150
2762         * include/std/std_streambuf.h (basic_streambuf::_M_set_indeterminate):
2763         Move to filebuf.
2764         (basic_streambuf::_M_set_determinate): Likewise.
2765         (basic_streambuf::_M_is_indeterminate): Likewise.
2766         * include/bits/std_fstream.h (basic_filebuf::_M_filepos): New
2767         non-static data member.
2768         (basic_filebuf::_M_underflow_common): New non-static member function.
2769         (basic_filebuf::_M_underflow, _M_uflow): Call it.
2770         (basic_filebuf::sync): Avoid useless seeking.
2771         (basic_filebuf::_M_set_indeterminate): Move here from streambuf.
2772         Set _M_filepos.
2773         (basic_filebuf::_M_set_determinate): Likewise.
2774         (basic_filebuf::_M_is_indeterminate): Likewise.
2775         * include/bits/fstream.tcc (basic_filebuf::_M_really_overflow): Seek
2776         back to _M_out_beg if necessary.
2777         (basic_filebuf::seekoff): Likewise.
2778         (basic_filebuf::_M_underflow_common): Generalization of old
2779         underflow().  Don't seek back to _M_in_beg.
2780         * src/ios.cc: Lose _GLIBCPP_AVOID_FSEEK stuff.
2781         * config/os/solaris/solaris2.?/bits/os_defines.h: Likewise.
2782         * config/os/bsd/freebsd/bits/os_defines.h: Likewise.
2783         * config/os/mingw32/bits/os_defines.h: Likewise.
2784         * testsuite/27_io/filebuf_virtuals.cc (test05): Don't overspecify
2785         ungetc test.
2786
2787 2002-04-22  Benjamin Kosnik  <bkoz@redhat.com>
2788
2789         * include/bits/istream.tcc (istream::read): Fix.
2790         * testsuite/27_io/istream_unformatted.cc (main): Add.
2791
2792 2002-04-20  Benjamin Kosnik  <bkoz@redhat.com>
2793
2794         PR libstdc++/6360
2795         * include/bits/istream.tcc (istream::ignore): Streamline, use
2796         delimiter as is.
2797         * include/bits/streambuf.tcc: Use this->gptr.
2798         * testsuite/27_io/istream_unformatted.cc (test08): Add test.
2799
2800 2002-04-18  Benjamin Kosnik  <bkoz@redhat.com>
2801
2802         * include/bits/localefwd.h (locale::id::_M_id): Do this correctly,
2803         as type safety is important, especially on solaris.
2804         * include/bits/istream.tcc (istream::read): Clean.
2805         (istream::readsome): Same.
2806         * locale.cc: Wrap lines.
2807
2808         * testsuite/21_strings/inserters_extractors.cc: Tweaks.
2809         * testsuite/27_io/instantiations.cc (test): Add bool variable...
2810         * testsuite/21_strings/capacity.cc: Clean.
2811
2812 2002-04-17  Phil Edwards  <pme@gcc.gnu.org>
2813
2814         * docs/doxygen/doxygroups.cc:  New group on binary searching.
2815         * include/bits/stl_algo.h:  Document binary searches and merges.
2816         * include/bits/stl_deque.h:  The 'map' member is not the 'map' class.
2817
2818 2002-04-17  Phil Edwards  <pme@gcc.gnu.org>
2819
2820         * docs/doxygen/mainpage.html:  Doxygen logo is now a PNG file.
2821         * docs/doxygen/run_doxygen:  Bump required version.
2822         * docs/doxygen/user.cfg.in:  Revert accidental change.
2823         * docs/html/faq/index.html:  Reindent a block of links.
2824         (4.4):  New note on using dlsym.
2825         * docs/html/faq/index.txt:  Regenerated.
2826
2827 2002-04-17  Phil Edwards  <pme@gcc.gnu.org>
2828
2829         * testsuite_flags.in (cxxflags):  Also pass @EXTRA_CXX_FLAGS@.
2830
2831 2002-04-17  Benjamin Kosnik  <bkoz@redhat.com>
2832
2833         * config/linker-map.gnu (__malloc_alloc_template): Add.
2834         (__default_alloc_template): Same.
2835         * include/bits/stl_alloc.h (__malloc_alloc_template): Add extern
2836         template.
2837         (__default_alloc_template): Same.
2838
2839 2002-04-17  Benjamin Kosnik  <bkoz@redhat.com>
2840
2841         * testsuite/27_io/filebuf_virtuals.cc: Add _S_pback_size instantiation.
2842
2843 2002-04-16  Benjamin Kosnik  <bkoz@redhat.com>
2844
2845         * src/concept-inst.cc (vector<locale::facet*>): Remove instantiations.
2846         * src/stl-inst.cc (vector::_M_insert_aux): Remove instantiation.
2847         (__malloc_alloc_template): Conditionalize.
2848
2849         * include/bits/istream.tcc: Remove sputbackc calls.
2850
2851         * testsuite/19_diagnostics/stdexceptions.cc: Fix comment.
2852
2853 2002-04-16  Paolo Carlini <pcarlini@unitus.it>
2854
2855         * testsuite/24_iterators/rel_ops.cc: New test.
2856
2857 2002-04-16  Gabriel Dos Reis  <gdr@merlin.codesourcery.com>
2858
2859         * include/bits/type_traits.h (__normal_iterator): Declare in
2860         __gnu_cxx.  Adjust use at global namespace.
2861         * include/bits/stl_iterator.h (__normal_iterator): Move definition
2862         into __gnu_cxx::. Add more operator overloads.  Tidy existing ones.
2863         * include/bits/basic_string.h (basic_string): Adjust use of
2864         __normal_iterator.
2865         * include/bits/stl_vector.h (_Alloc>): Likewise.
2866         * src/concept-inst.cc (__gnu_cxx): __normal_iterator<> is now here.
2867         * src/string-inst.cc (operator==): Instantiate in __gnu_cxx.
2868
2869 2002-04-15  Benjamin Kosnik  <bkoz@redhat.com>
2870
2871         PR libstdc++/4164
2872         Valgrind fixes.
2873         * config/io/basic_file_stdio.cc (__basic_file::~__basic_file):
2874         Call close.
2875         (__basic_file::close): Call fflush. Correct return if fclose ok.
2876         (__basic_file::is_open): Make const.
2877         Change __c_file_type to __c_file.
2878         * config/io/basic_file_stdio.h: Change __c_file_type to __c_file.
2879         (__basic_file::is_open): Make const.
2880         * config/io/c_io_stdio.h: Change __c_file_type to __c_file.
2881         * include/std/std_fstream.h (filebuf::_M_allocate_file): Remove.
2882         (filebuf::_M_unbuf): Add.
2883         (filebuf::_M_file): Change to non-pointer.
2884         (filebuf::_M_allocate_pback_buffer): Remove.
2885         * include/bits/fstream.tcc (filebuf::_M_allocate_file): Remove.
2886         (filebuf::_M_allocate_internal_buffer): Use _M_unbuf.
2887         Change initialization list for _M_file change.
2888         (filebuf::_M_allocate_pback_buffer): Remove.
2889         Change _M_file usage to reflect non-pointer data member.
2890
2891         * config/locale/generic/c_locale.cc
2892         (locale::facet::_S_create_c_locale): Add parameter.
2893         * config/locale/generic/collate_members.cc: Change
2894         _M_compare_helper to _M_compare.
2895         Change _M_transform_helper to _M_transform.
2896         * config/locale/generic/monetary_members.cc: Changeup data types.
2897         Add dtors.
2898         * config/locale/generic/numeric_members.cc: Add dtors.
2899         * config/locale/generic/time_members.cc: Add dtors.
2900         * config/locale/gnu/c_locale.cc: Add parameter.
2901         * config/locale/gnu/collate_members.cc:Change
2902         _M_compare_helper to _M_compare.
2903         Change _M_transform_helper to _M_transform.
2904         * config/locale/gnu/ctype_members.cc: Better error checking.
2905         * config/os/gnu-linux/bits/ctype_noninline.h: Better error checking.
2906         * config/locale/gnu/messages_members.cc: Tweak comment.
2907         * config/locale/gnu/monetary_members.cc: Change data types.
2908         Add dtors.
2909         * config/locale/gnu/numeric_members.cc: Add dtors, better error
2910         checking.
2911         * config/locale/gnu/time_members.cc: Same.
2912         * config/locale/ieee_1003.1-2001/c_locale.cc
2913         (locale::facet::_S_create_c_locale): Add parameter.
2914         * config/locale/ieee_1003.1-2001/c_locale.h: Correct typedef.
2915         * config/locale/ieee_1003.1-2001/codecvt_specializations.h: Remove
2916         bogus ctor.
2917
2918         * include/bits/locale_facets.h (moneypunct): Use string literals.
2919         Don't define dtor.
2920         (numpunct): Same.
2921         (__timepunct): Same.
2922         (locale::_Impl::_M_facets): Change from vector to array.
2923         (locale::_Impl::_M_names): Change from array of strings to array
2924         of string literals.
2925         (locale::facet::_S_create_c_locale): Add parameter.
2926         (locale::locale::_S_num_facets): Move to...
2927         (locale::_Impl::_M_facets_size): Here.
2928         * include/bits/locale_facets.tcc: Fixups for _M_facets, _M_name
2929         changes.
2930         * include/bits/localefwd.h: (locale::id::_M_id): Add member function.
2931         (locale::_Impl::_Impl(facet**, size_t, bool)): Add.
2932         (locale::_Impl::_Impl(string, size_t)): Change to
2933         (locale::_Impl::_Impl(const char*, size_t)): This.
2934
2935         * include/bits/streambuf.tcc (streambuf::_S_pback_size): Define.
2936         * include/std/std_streambuf.h (streambuf::_M_pback_size): Change to
2937         (streambuf::_S_pback_size): This.
2938
2939         * src/globals.cc: Add pre-allocations for "C" facets.
2940         * src/locale-inst.cc: Remove vector instantiations.
2941         * src/locale.cc: Remove vector include. Fixups for _M_names,
2942         _M_facets changes.
2943         * src/localename.cc: Same.
2944
2945         * include/bits/stl_vector.h: Fix odd formatting.
2946
2947         * include/bits/basic_string.tcc: Tweak comment.
2948
2949         * libsupc++/new: Make sure parameters are uglified.
2950         * libsupc++/typeinfo: Same.
2951
2952         * testsuite/22_locale/num_get_members_char.cc: Fixup.
2953         * testsuite/22_locale/num_get_members_wchar_t.cc: Same.
2954         * testsuite/27_io/filebuf_members.cc: Same.
2955
2956 2002-04-12  Steve Ellcey  <sje@cup.hp.com>
2957
2958         * gcc/libstdc++-v3/config/os/hpux/bits/os_defines.h
2959         (strtoll, strtoull): In 64 bit mode HP-UX (IA64 and HPPA)
2960         does not define strtoll or strtoull, but does define strtol
2961         and strtoul which are the same since in 64 bit mode
2962         sizeof(long) == sizeof(long long).
2963
2964 2002-04-12  Phil Edwards  <pme@gcc.gnu.org>
2965
2966         * include/std/std_bitset.h:  Doxygenate std::bitset<>.  Clean up
2967         trailing spaces, indentation, and macro names.  Make exception
2968         messages more informative.
2969
2970 2002-04-11  Richard Henderson  <rth@redhat.com>
2971
2972         * include/bits/fstream.tcc (basic_filebuf<>::open): Fix & ordering.
2973         * include/bits/ostream.tcc (basic_ostream<>::operator<<(long)): Same.
2974         (basic_ostream<>::operator<<(long long)): Same.
2975
2976 2002-04-11  Richard Henderson  <rth@redhat.com>
2977
2978         * config/linker-map.gnu: Add __gxx_personality_sj0.
2979
2980 2002-04-09  Benjamin Kosnik  <bkoz@redhat.com>
2981
2982         libstdc++/1072
2983         * include/bits/localefwd.h (locale::_Impl::_M_facets): Change from
2984         pointer to vector.
2985         Remove forward declaration of vector.
2986         Include vector.
2987         * include/bits/locale_facets.tcc: Remove vector include.
2988         (use_locale): Adjust.
2989         (has_locale): Adjust.
2990         * src/locale.cc: Adjust.
2991         * src/localename.cc: Same.
2992
2993 2002-04-09  Benjamin Kosnik  <bkoz@redhat.com>
2994             Richard Henderson  <rth@redhat.com>
2995
2996         * include/bits/sstream.tcc: Clean up bit ops.
2997         * include/bits/fstream.tcc: Same.
2998
2999 2002-04-09  Jakub Jelinek  <jakub@redhat.com>
3000
3001         * include/bits/locale_facets.h (__num_base::_S_scale_hex): Remove.
3002         (__num_base::_S_scale_oct): Remove.
3003         * src/locale.cc (__num_base::_S_scale_hex): Remove.
3004         (__num_base::_S_scale_oct): Remove.
3005
3006 2002-04-09  Benjamin Kosnik  <bkoz@redhat.com>
3007
3008         libstdc++/6124
3009         * testsuite/23_containers/bitset_members.cc: New test.
3010         * include/std/std_bitset.h (_Bit_count::_S_bit_count): Move..
3011         (_S_bit_count): Here.
3012         (_First_one::_S_first_one): Move...
3013         (_S_first_one): Here.
3014         Format.
3015         * src/bitset.cc: Adjust.
3016         * config/linker-map.gnu: Export.
3017
3018 2002-04-08  Benjamin Kosnik  <bkoz@redhat.com>
3019
3020         libstdc++/5180
3021         * include/bits/fstream.tcc (filebuf::seekpos): Fix.
3022         * include/std/std_fstream.h: Clean.
3023         * include/bits/ostream.tcc: Remove extraneous variables.
3024         * include/bits/sstream.tcc (stringbuf::seekoff): Be strict about
3025         open modes and which modes.
3026         (stringbuf::seekpos): Same.
3027         * testsuite/27_io/stringbuf_virtuals.cc: New tests.
3028
3029 2002-04-05  Jonathan Wakely <jw@kayari.org>
3030
3031         * include/bits/stl_algo.h (unique_copy, __gcd, rotate, rotate_copy,
3032         random_shuffle, partition, stable_partition, sort, stable_sort,
3033         partial_sort, partial_sort_copy, nth_element):  Doxygenate.
3034
3035 2002-04-05  David S. Miller  <davem@redhat.com>
3036
3037         * config/os/gnu-linux/bits/os_defines.h
3038         (__glibcpp_long_double_bits): Set to 64 on 32-bit Sparc.
3039
3040 2002-04-04  Benjamin Kosnik  <bkoz@redhat.com>
3041
3042         libstdc++/3457
3043         via gawrilow@math.tu-berlin.de
3044         * acinclude.m4 (version_specific_libs): Fix combo usage with
3045         --with-gxx-include-dir.
3046         * aclocal.m4: Regenerate.
3047         * configure: Same.
3048
3049 2002-04-03  Benjamin Kosnik  <bkoz@redhat.com>
3050
3051         As per DR 184, libstdc++/3139
3052         * include/std/std_limits.h (__glibcpp_bool_digits): Change to 1.
3053         (numeric_limits<bool>::is_iec559): False.
3054         (numeric_limits<bool>::is_modulo): False.
3055
3056         * testsuite/27_io/ios_init.cc: Add instantiations.
3057
3058 2002-04-02  Benjamin Kosnik  <bkoz@redhat.com>
3059
3060         libstdc++/5268
3061         * src/ios.cc: (ios_base::Init::_S_ios_destroy): Remove flush calls.
3062         * testsuite/27_io/ios_init.cc (tests04): Add test.
3063
3064         libstdc++/3983
3065         * include/bits/basic_ios.h (basic_ios::_M_get_fctype_ios): Remove.
3066         (basic_ios::_M_ios_fctype): Consistently name to _M_fctype.
3067         * include/bits/basic_ios.tcc: Same. Remove outdated comments.
3068         * include/bits/istream.tcc: Use _M_fctype, make consistent with
3069         ostream.
3070         * testsuite/27_io/ios_init.cc (tests03): Add test.
3071
3072 2002-04-02  Phil Edwards  <pme@gcc.gnu.org>
3073
3074         * include/Makefile.am (install-data-local):  Use mkinstalldirs.
3075         * include/Makefile.in:  Regenerate.
3076
3077 2002-04-02  Paolo Carlini  <pcarlini@unitus.it>
3078             Nathan Myers  <ncm@cantrip.org>
3079             Philip Martin  <philip@codematters.co.uk>
3080
3081         * include/bits/basic_string.h
3082         (replace(i1, i2, _CharT* k1, _CharT* k2),
3083         replace(i2, i2, const _CharT* k1, const _CharT* k2),
3084         replace(i1, i2, iterator k1, iterator k2,
3085         replace(i1, i2, const_iterator k1, const_iterator k2):
3086         New specializations to optimize for the common cases of
3087         pointers and iterators.
3088         (replace(pos, n1, s, n2)): Tweak.
3089         * include/bits/basic_string.tcc: Tweak comments.
3090         * testsuite/21_strings/replace.cc (test04): New tests.
3091
3092 2002-04-01  Benjamin Kosnik  <bkoz@redhat.com>
3093
3094         libstdc++/5542
3095         * acinclude: More extensive checks for msgfmt, --enable-nls.
3096         * aclocal.m4: Regenerate.
3097         * configure: Regenerate.
3098
3099 2002-04-01  Phil Edwards  <pme@gcc.gnu.org>
3100
3101         * libsupc++/exception (__verbose_terminate_handler):  Point to docs.
3102         * docs/doxygen/doxygroups.cc:  Doxygen hooks for abi::__cxa_demangle.
3103         * docs/html/18_support/howto.html:  Document the demangler.
3104         * docs/html/17_intro/howto.html:  And link to it.
3105
3106         * docs/doxygen/mainpage.html:  Describe user-vs-maintainer docs.
3107         * docs/doxygen/run_doxygen:  Print user-vs-maintainer.
3108
3109 2002-04-01  Phil Edwards  <pme@gcc.gnu.org>
3110
3111         * config/linker-map.gnu:  Export __verbose_terminate_handler.
3112         * libsupc++/Makefile.am (sources):  Add cxa_demangle.c, dyn-string.c.
3113         Make new LTCOMPILE variable, use it in new special build rules.
3114         * libsupc++/Makefile.in:  Rebuild.
3115         * src/vterminate.cc (__verbose_terminate_handler):  Enable use of
3116         runtime __cxa_demangle.
3117
3118         * docs/html/install.html:  Update prereqs and instructions.
3119         * docs/html/19_diagnostics/howto.html:  Bring naming for
3120         verbose_terminate_handler into line with reality.
3121
3122 2002-04-01  Benjamin Kosnik  <bkoz@redhat.com>
3123
3124         libstdc++/3129
3125         * include/bits/basic_ios.h (basic_ios::_M_exception): Move.
3126         (basic_ios::_M_streambuf_state): Move.
3127         * include/bits/ios_base (ios_base): To here.
3128         * include/bits/ios_base.h (ios_base::_S_local_words): To
3129         _S_local_word_size.
3130         (ios_base::_M_word_array): To _M_local_word.
3131         (ios_base::_M_words_limit): To _M_word_size.
3132         (ios_base::_M_words): To _M_word.
3133         Comment.
3134         * include/bits/basic_ios.tcc: Adjust.
3135         * src/ios.cc (ios_base::_M_grow_words): Tweak.
3136         * testsuite/27_io/ios_base_storage.cc: Add tests.
3137
3138         libstdc++/5207
3139         Kenny Simpson <theonetruekenny@yahoo.com>
3140         * include/bits/ios_base.h: Fix.
3141
3142         Richard Henderson  <rth@redhat.com>
3143         * include/bits/ostream.tcc (ostream::operator<<(_CharT)): Correct
3144         last change.
3145
3146         * include/bits/basic_string.h: Tweak formatting.
3147
3148 2002-04-01  Paolo Carlini  <pcarlini@unitus.it>
3149
3150         * config/locale/ieee_1003.1-2001/codecvt_specializations.h
3151         (codecvt::do_out, codecvt::do_unshift, codecvt::do_in):
3152         By definition, sizeof(char) == 1.
3153         * include/bits/locale_facets.tcc (money_get::do_get,
3154         money_put::do_put): Ditto.
3155         * testsuite/21_strings/inserters_extractors.cc
3156         (test04): Ditto.
3157
3158 2002-03-30  Richard Henderson  <rth@redhat.com>
3159
3160         PR c++/3719
3161         * libsupc++/eh_personality.cc (__cxa_call_unexpected): Copy handler
3162         data out of the exception struct before calling unexpectedHandler.
3163
3164 2002-03-28  Roger Sayle  <roger@eyesopen.com>
3165
3166         * include/c_std/std_cmath.h:  To prevent problems overloading
3167         g++ builtins, use the double variants from the global namespace
3168         before defining float and long double variants in std::.
3169
3170 2002-03-28  Loren J. Rittle <ljrittle@acm.org>
3171
3172         * testsuite/18_support/numeric_limits.cc (test_extrema): Fix typo.
3173
3174 2002-03-28  Paolo Carlini  <pcarlini@unitus.it>
3175
3176         * testsuite/24_iterators/istream_iterator.cc
3177         (test02): New tests.
3178
3179 2002-03-28  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
3180             Paolo Carlini  <pcarlini@unitus.it>
3181
3182         * testsuite/22_locale/codecvt_members_unicode_wchar_t.cc
3183         (test01): Protect the test with _GLIBCPP_USE_WCHAR_T;
3184         fix i_lit_base e_lit_base arrays, making them independent
3185         from the endianness of the platform; tweak UCS4 to UCS-4BE.
3186
3187 2002-03-27  Benjamin Kosnik  <bkoz@redhat.com>
3188
3189         * include/bits/ostream.tcc (ostream::operator<<(_CharT)): Always
3190         allocate at least a byte.
3191
3192         * testsuite/18_support/numeric_limits.cc (test_extrema): Make
3193         debugger-friendly.
3194         * testsuite/27_io/streambuf.cc (test07): Fix.
3195         (test06): Enable.
3196
3197 2002-03-27  Phil Edwards  <pme@gcc.gnu.org>
3198
3199         * docs/doxygen/Intro.3:  Date tweak.
3200         * docs/doxygen/TODO:  Update.
3201         * docs/doxygen/doxygroups.cc:  Point to tables.html.
3202         * docs/doxygen/mainpage.html:  Date tweak.
3203         * docs/doxygen/run_doxygen:  Version tweak.  Copy tables.html over.
3204         * docs/doxygen/tables.html:  Fill in the blanks.
3205
3206         * docs/doxygen/user.cfg.in (ALIASES):  Remove maint and endmaint.
3207         * include/bits/stl_algo.h:  Likewise; use expanded form.
3208         * include/bits/stl_alloc.h:  Likewise.
3209         * include/bits/stl_construct.h:  Likewise.
3210         * include/bits/stl_deque.h:  Likewise.
3211         * include/bits/stl_iterator_base_types.h:  Likewise.
3212         * include/bits/stl_list.h:  Likewise.
3213         * include/bits/stl_relops.h:  Likewise.
3214         * include/bits/stl_tempbuf.h:  Likewise.
3215         * include/bits/stl_vector.h:  Likewise.
3216         * include/std/std_memory.h:  Likewise.
3217
3218         * include/bits/stl_deque.h:  Point into tables.html and add @ingroup.
3219         * include/bits/stl_list.h:  Likewise.
3220         * include/bits/stl_vector.h:  Likewise.
3221
3222 2002-03-26  Benjamin Kosnik  <bkoz@redhat.com>
3223
3224         * include/c/: Guard with _CPP_.
3225         * include/c_std/: Same.
3226         * include/Makefile.am: Fixup install, link routines for null
3227         c_base_headers_extra scenarios.
3228         * include/Makefile.in: Regerate.
3229
3230 2002-03-25  Paolo Carlini <pcarlini@unitus.it>
3231             Richard Henderson  <rth@redhat.com>
3232
3233         * testsuite/22_locale/codecvt_members_unicode_char.cc
3234         (test01, test02): make sure that the i_lit_base array
3235         is sufficiently aligned.
3236
3237 2002-03-25  Benjamin Kosnik  <bkoz@redhat.com>
3238
3239         * config/os/newlib/bits/ctype_noninline.h (ctype::classic): Set to
3240         _ctype_.
3241
3242 2002-03-25  Paolo Carlini  <pcarlini@unitus.it>
3243
3244         * testsuite/22_locale/collate_byname.cc
3245         (test01): compare the result of collate::compare with
3246         that of collate::transform + string::compare, not with
3247         that of collate::transform + collate::compare; values
3248         returned by collate::compare are normalized, therefore
3249         test against +-1.
3250
3251 2002-03-25  Benjamin Kosnik  <bkoz@redhat.com>
3252             Jakub Jelinek  <jakub@redhat.com>
3253
3254         * config/locale/gnu/messages_members.h: Correct conditional.
3255         * config/locale/gnu/messages_members.cc: Same.
3256         * config/locale/gnu/time_members.cc: Same.
3257
3258 2002-03-25  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
3259             Paolo Carlini  <pcarlini@unitus.it>
3260
3261         * testsuite/22_locale/codecvt_members_unicode_char.cc
3262         (test01, test02): Fix i_lit_base arrays, making them
3263         independent from the endianness of the platform.
3264
3265 2002-03-22  Benjamin Kosnik  <bkoz@redhat.com>
3266
3267         * acinclude.m4 (GLIBCPP_CHECK_COMPLEX_MATH_SUPP): Just test for
3268         signbit and __signbit directly.
3269         * aclocal.m4: Regenerate.
3270         * configure: Regenerate.
3271         * config.h.in: Regenerate.
3272         * libmath/Makefile.am: Simplify.
3273         * libmath/Makefile.in: Regenerate.
3274         * include/c_std/std_cmath.h: Update paths for include of cmath.tcc.
3275
3276         * include/Makefile.am: Clean up handling of extra "C" header files.
3277         Add hooks for "C" compatibility headers.
3278         * include/Makefile.in: Regenerate.
3279
3280         * include/c/*: Formatting tweaks, cleanups.
3281         * include/c_std/*: Same.
3282
3283 2002-03-22  Benjamin Kosnik  <bkoz@redhat.com>
3284
3285         * config/locale/gnu/messages_members.h: Add __uselocale bits.
3286         * config/locale/gnu/messages_members.cc: Same.
3287         * config/locale/gnu/time_members.cc: Same.
3288
3289 2002-03-22  Benjamin Kosnik  <bkoz@redhat.com>
3290
3291         * src/vterminate.cc: Format, -fno-exceptions cleanup.
3292
3293 2002-03-21  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
3294
3295         * acinclude.m4 (GLIBCPP_CHECK_STDLIB_DECL_AND_LINKAGE_3): New.
3296         (GLIBCPP_CONFIGURE_TESTSUITE): Use it to check for setenv.
3297         * aclocal.m4: Regenerate.
3298         * configure: Likewise.
3299
3300 2002-03-19  Paolo Carlini  <pcarlini@unitus.it>
3301             Ulrich Drepper  <drepper@redhat.com>
3302
3303         * src/locale-inst.cc (__convert_from_v): Add an additional
3304         __size parameter in the declarations.
3305         * include/bits/locale_facets.tcc
3306         (__convert_from_v): When available (that is,
3307         _GLIBCPP_USE_C99 defined) use snprintf instead of sprintf.
3308         (num_put::_M_convert_float): Depending on _GLIBCPP_USE_C99
3309         being defined or not, call and use __convert_from_v in the
3310         appropriate way.
3311         (num_put::_M_convert_int): Same here.
3312         (money_put::do_put(long double)): Same here.
3313
3314 2002-03-19  Phil Edwards  <pme@gcc.gnu.org>
3315
3316         * docs/html/faq/index.html (#3.6):  Rewrap and close <a href> tags.
3317         * docs/html/faq/index.txt:  Regenerate.
3318
3319 2002-03-19  Steve Ellcey  <sje@cup.hp.com>
3320
3321         * acinclude.m4 (GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS): Define
3322         GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS to set LIBUNWIND_FLAG if
3323         --enable-libunwind-exceptions is set.
3324         * configure.in (GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS): Call new
3325         macro to check for libunwind.
3326         * configure: Regenerate.
3327         * src/Makefile.am (libstdc___la_LDFLAGS): Add
3328         LIBUNWIND_FLAG to libstdc link line.
3329         * src/Makefile.in: Regenerate.
3330
3331 2002-03-19  Benjamin Kosnik  <bkoz@redhat.com>
3332
3333         * docs/html/faq/index.html: Add OS X workaround.
3334         * docs/html/17_intro/TODO: Update.
3335
3336 2002-03-18  Paolo Carlini  <pcarlini@unitus.it>
3337
3338         * include/bits/locale_facets.tcc
3339         (money_put::do_put(long double)): Fix dimensioning of
3340         temporary buffers to avoid risk of overruns.
3341         (money_put::do_put(string)): Same for the buffer used to
3342         add the grouping chars.
3343         * testsuite/22_locale/money_put_members_char.cc: Add test06.
3344         * testsuite/22_locale/money_put_members_wchar_t.cc: Ditto.
3345
3346         * include/bits/locale_facets.tcc
3347         (collate::do_transform): Simplify.
3348
3349 2002-03-18  Phil Edwards  <pme@gcc.gnu.org>
3350
3351         * acinclude.m4 (GLIBCPP_CONFIGURE):  Make indentation/spacing uniform.
3352         * configure.in:  Add comments pointing the way for autoconf 2.5x.
3353         * aclocal.m4, config.h.in, configure:  Regenerate.
3354
3355 2002-03-18  Philipp Thomas  <pthomas@suse.de>
3356
3357         * include/backward/hash_map.h: hash, hashtable, hash_map and
3358         hash_multimap are in namespace __gnu_cxx.
3359         include/backward/hash_set.h: hash, hashtable, hash_set and
3360         hash_multiset are in namespace __gnu_cxx.
3361         include/backward/hashtable.h: hash and hashtable are in
3362         namespace __gnu_cxx.
3363         include/backward/rope.h: char_producer, sequence_buffer,
3364         rope, crope and wrope are in namespace __gnu_cxx.
3365         include/backward/slist.h: slist is in namespace __gnu_cxx.
3366         * testsuite/backward/header_hash_map_h.cc
3367         testsuite/backward/header_hash_set_h.cc
3368         testsuite/backward/header_hashtable_h.cc
3369         testsuite/backward/header_rope_h.cc
3370         testsuite/backward/header_slist_h.cc
3371         testsuite/backward/header_tempbuf_h.cc: New tests for
3372         checking that we're using the correct namespace.
3373
3374 2002-03-17  Jason Merrill  <jason@redhat.com>
3375
3376         PR c++/4381
3377         * libsupc++/eh_personality.cc (get_adjusted_ptr): New static fn.
3378         (check_exception_spec): Call it.  Take the thrown pointer.
3379         (__cxa_call_unexpected): Pass it.
3380         (PERSONALITY_FUNCTION): Likewise.  Use get_adjusted_ptr.
3381
3382 2002-03-15  Anthony Green  <green@redhat.com>
3383
3384         * configure.in: Remove useless is_mingw32.
3385         * configure: Rebuilt.
3386
3387 2002-03-15  Paolo Carlini  <pcarlini@unitus.it>
3388
3389         * testsuite/22_locale/collate_members_char.cc
3390         (test01): compare the result of collate::compare with
3391         that of collate::transform + string::compare, not with
3392         that of collate::transform + collate::compare.
3393         (test01): values returned by collate::compare are
3394         normalized, therefore test against +-1.
3395         * testsuite/22_locale/collate_members_wchar_t.cc: Ditto.
3396
3397 2002-03-12  Loren Rittle  <ljrittle@acm.org>
3398
3399         reported by Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
3400         * testsuite/thread/pthread4.cc: Lower nominal iteration counter.
3401
3402 2002-03-12  Benjamin Kosnik  <bkoz@redhat.com>
3403             Per Liboriussen  <liborius@stofanet.dk>
3404
3405         * config/os/gnu-linux/bits/ctype_noninline.h: Cast to
3406         unsigned char.
3407         * config/os/gnu-linux/bits/ctype_inline.h: Same.
3408
3409         * config/os/irix/irix6.5/bits/ctype_inline.h: Same.
3410
3411         * config/os/solaris/solaris2.5/bits/ctype_inline.h: Same.
3412         * config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.
3413
3414         * config/os/solaris/solaris2.6/bits/ctype_inline.h: Same.
3415         * config/os/solaris/solaris2.6/bits/ctype_noninline.h: Same.
3416
3417         * config/os/solaris/solaris2.7/bits/ctype_inline.h: Same.
3418         * config/os/solaris/solaris2.7/bits/ctype_noninline.h: Same.
3419
3420         * testsuite/22_locale/ctype_members_char.cc (main): Add tests.
3421
3422 2002-03-12  Benjamin Kosnik  <bkoz@redhat.com>
3423
3424         * include/bits/basic_string.tcc (string::_S_construct(_InIter,
3425         _InIter, const _Alloc&, forward_iterator_tag): Check for null.
3426         (string::basic_string(const _CharT* __s, const _Alloc& __a)): Same.
3427         * testsuite/21_strings/ctor_copy_dtor.cc (test01): Re-enable, now
3428         that memory limits are in place.
3429         (test03): Add tests.
3430
3431 2002-03-11  Benjamin Kosnik  <bkoz@redhat.com>
3432
3433         * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Check for wctype.h.
3434         * aclocal.m4: Regenerate.
3435         * config.h.in: Regenerate.
3436         * configure: Regenerate.
3437         * include/c_std/std_cwctype.h: Guard.
3438
3439 2002-03-11  Chris Demetriou  <cgd@broadcom.com>
3440
3441         * acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Enhance check for
3442         whether GLIBCPP_CHECK_LINKER_FEATURES has been used.
3443         * aclocal.m4: Regenerate.
3444         * configure: Regenerate.
3445
3446 2002-03-11  Benjamin Kosnik  <bkoz@redhat.com>
3447
3448         * include/bits/stl_bvector.h: Fix warning.
3449
3450 2002-03-11  Richard Henderson  <rth@redhat.com>
3451
3452         * include/bits/stl_bvector.h (_Bit_type): New.  Use throughout.
3453
3454 2002-03-11  Phil Edwards  <pme@gcc.gnu.org>
3455
3456         * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-list-sourcefiles):
3457         New function.  Build the list of tests to run in testsuite_files.
3458         * testsuite/libstdc++-v3.dg/dg.exp:  Use it.
3459
3460 2002-03-11  Phil Edwards  <pme@gcc.gnu.org>
3461
3462         * testsuite/21_strings/capacity.cc:  Only explicitly instantiate on
3463         platforms with no weak support.
3464         * testsuite/27_io/ios_init.cc:  Likewise.
3465
3466 2002-03-10  Paolo Carlini  <pcarlini@unitus.it>
3467
3468         * include/bits/locale_facets.tcc (time_put::do_put):
3469         Consider sizeof(char_type) in allocating the buffer.
3470
3471         * include/bits/locale_facets.tcc (collate::do_tranform):
3472         Remove redundant variable.
3473
3474 2002-03-10  Ulrich Drepper  <drepper@redhat.com>
3475             Paolo Carlini  <pcarlini@unitus.it>
3476
3477         * config/locale/generic/collate_members.cc
3478         (collate<char,wchar_t>::_M_compare_helper): normalize
3479         values returned by strcoll and wcscoll.
3480         * config/locale/gnu/collate_members.cc
3481         (collate<char,wchar_t>::_M_compare_helper): ditto
3482         for __strcoll_l and __wcscoll_l.
3483
3484 2002-03-10  Anthony Green  <green@redhat.com>
3485
3486         * configure.in: Support cross builds to mingw32 target.
3487         * configure: Rebuilt.
3488
3489 2002-03-09  Paolo Carlini  <pcarlini@unitus.it>
3490
3491         * include/bits/locale_facets.tcc (collate::do_transform):
3492         Rewrite to fix problems with long transformed strings.
3493
3494 2002-03-08  Benjamin Kosnik  <bkoz@redhat.com>
3495
3496         * c_locale_generic.cc: Move to...
3497         * generic/c_locale.cc
3498         * c_locale_generic.h: Move to...
3499         * generic/c_locale.h
3500         * codecvt_specializations_generic.h: Move to...
3501         * generic/codecvt_specializations.h
3502         * collate_members_generic.cc: Move to...
3503         * generic/collate_members.cc
3504         * ctype_members_generic.cc: Move to...
3505         * generic/ctype_members.cc
3506         * messages_members_generic.cc: Move to...
3507         * generic/messages_members.cc
3508         * messages_members_generic.h: Move to...
3509         * generic/messages_members.h
3510         * moneypunct_members_generic.cc: Move to...
3511         * generic/monetary_members.cc
3512         * numpunct_members_generic.cc: Move to...
3513         * generic/numeric_members.cc
3514         * time_members_generic.cc: Move to...
3515         * generic/time_members.cc
3516         * c_locale_gnu.cc: Move to...
3517         * gnu/c_locale.cc
3518         * c_locale_gnu.h: Move to...
3519         * gnu/c_locale.h
3520         * collate_members_gnu.cc: Move to...
3521         * gnu/collate_members.cc
3522         * ctype_members_gnu.cc: Move to...
3523         * gnu/ctype_members.cc
3524         * messages_members_gnu.cc: Move to...
3525         * gnu/messages_members.cc
3526         * messages_members_gnu.h: Move to...
3527         * gnu/messages_members.h
3528         * moneypunct_members_gnu.cc: Move to...
3529         * gnu/monetary_members.cc
3530         * numpunct_members_gnu.cc: Move to...
3531         * gnu/numeric_members.cc
3532         * time_members_gnu.cc: Move to...
3533         * gnu/time_members.cc
3534         * c_locale_ieee_1003.1-200x.cc: Move to...
3535         * ieee_1003.1-2001/c_locale.cc
3536         * c_locale_ieee_1003.1-200x.h: Move to...
3537         * ieee_1003.1-2001/c_locale.h
3538         * codecvt_specializations_ieee_1003.1-200x.h: Move to...
3539         * ieee_1003.1-2001/codecvt_specializations.h
3540         * messages_members_ieee_1003.1-200x.cc: Move to...
3541         * ieee_1003.1-2001/messages_members.cc
3542         * messages_members_ieee_1003.1-200x.h: Move to...
3543         * ieee_1003.1-2001/messages_members.h
3544
3545         * acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Make consistent.
3546         * aclocal.m4: Regenerate.
3547         * configure: Regenerate.
3548         * src/Makefile.am (sources): Change to monetary and numeric.
3549         * src/Makefile.in: Regenerate.
3550         * docs/html/configopts.html: Update to ieee_1003.1-2001.
3551
3552 2002-03-08  scott snyder  <snyder@fnal.gov>
3553
3554         libstdc++/5875
3555         * include/bits/locale_facets.tcc (num_put::_M_convert_float):
3556         Allow one more digit of precision.
3557         * testsuite/27_io/ostream_inserter_arith.cc: Test that we can
3558         write a double and read back in the same value.
3559
3560 2002-03-08  Benjamin Kosnik  <bkoz@redhat.com>
3561
3562         * include/std/std_limits.h: Move static const data members out of
3563         generic template, into base class __numeric_limits_base.
3564         * src/limits.cc: Add definitions.
3565         * config/linker-map.gnu: Add __numeric_limits_base.
3566         * testsuite/18_support/numeric_limits.cc: Declare test in scope.
3567
3568 2002-03-07  Benjamin Kosnik  <bkoz@redhat.com>
3569
3570         * include/bits/stl_alloc.h: Add extern implicit allocator
3571         instantiations.
3572         * include/bits/basic_string.tcc: Tweak.
3573         * include/bits/locale_facets.tcc: Remove default args. Add
3574         has_facet, use_facet extern instantiations.
3575         * src/stl-inst.cc: Add explicit instantiation.
3576         * src/locale-inst.cc: Clean. Remove locale member template
3577         instantiations.
3578
3579         * testsuite/22_locale/operators.cc (test02): Enable.
3580
3581 2002-03-06  Benjamin Kosnik  <bkoz@redhat.com>
3582             Stephen M. Webb  <stephen.webb@bregmasoft.com>
3583
3584         * include/bits/stl_tree.h (_S_rb_tree_red): Make enum.
3585         (_S_rb_tree_black): Make enum.
3586         Clean. Format.
3587         * include/bits/stl_bvector.h (__WORD_BIT): To _M_word_bit, enum.
3588         * include/bits/stl_algo.h (__stl_chunk_size): _M_chunk_size, enum.
3589         (__stl_threshold): _M_threshold, enum.
3590         * src/stl-inst.cc: Same.
3591         * config/linker-map.gnu: Remove.
3592
3593         * testsuite/23_containers/vector_bool.cc: New.
3594
3595 2002-03-06  Phil Edwards  <pme@gcc.gnu.org>
3596
3597         * docs/doxygen/user.cfg.in:  Also document deprecated entries.
3598         * docs/html/Makefile:  Example rule to rebuild porting-howto.html.
3599         * docs/html/17_intro/howto.html:  "gcc"->"GCC" changes, when
3600         referring to the collection as a whole.  New section on which macros
3601         can be redefined by the user.
3602         * docs/html/19_diagnostics/howto.html:  Update note for concepts.
3603         * docs/html/20_util/howto.html:  Update link to SGI.
3604         * docs/html/faq/index.html:  Update snapshot versions.  New entry
3605         on why g++ (but not gcc) must currently predefine certain macros.
3606         * docs/html/faq/index.txt:  Regenerated.
3607
3608         * include/bits/basic_string.h (basic_string::_S_construct):  Fix
3609         names in declaration.
3610         (basic_string::compare):  These are no longer optional.
3611         * include/bits/ostream.tcc:  Tweak closing brace placement.
3612         * include/bits/stl_algo.h:  Lots of initial doxygen comment hooks.
3613         * include/std/std_sstream.h:  Fix typo in comment.
3614         * include/bits/locale_facets.tcc:  Remove unneeded header inclusion.
3615         * src/locale.cc:  Likewise.
3616
3617 2002-03-06  Phil Edwards  <pme@gcc.gnu.org>
3618
3619         PR libstdc++/5734
3620         * include/bits/stl_vector.h (vector::push_back()):  Guard with
3621         _GLIBCPP_DEPRECATED.
3622
3623 2002-03-06  Phil Edwards  <pme@gcc.gnu.org>
3624
3625         * include/bits/c++config:  Fix misplaced leading blanks on first line.
3626
3627 2002-03-05  Benjamin Kosnik  <bkoz@redhat.com>
3628
3629         * docs/html/17_intro/RELEASE-NOTES: Fix usage.
3630         * README (libmath): Make clear.
3631
3632 2002-03-05  Jakub Jelinek  <jakub@redhat.com>
3633
3634         * acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Check for version
3635         script globbing in ld.
3636         * aclocal.m4: Rebuilt.
3637         * configure: Rebuilt.
3638
3639 2002-03-05  Benjamin Kosnik  <bkoz@redhat.com>
3640
3641         * docs/html/17_intro/RELEASE-NOTES: Update.
3642         * README: Format subdirectories.
3643
3644 2002-03-05  Paolo Carlini  <pcarlini@unitus.it>
3645
3646         libstdc++/5816
3647         * include/bits/locale_facets.tcc
3648         (num_get::_M_extract_float): Fix the parsing of __dec, since
3649         the standard prescribes that if no grouping characters are
3650         seen, no grouping check is applied.
3651         * testsuite/22_locale/num_get_members_char.cc: Add test05
3652         distilled from the PR.
3653         * testsuite/22_locale/num_get_members_wchar_t.cc: Ditto.
3654
3655 2002-03-04  Craig Rodrigues  <rodrigc@gcc.gnu.org>
3656
3657         * docs/html/17_intro/porting-howto.xml: Refer to
3658         http://www.oasis-open.org for docbookx.dtd.
3659         * docs/html/17_intro/porting-howto.html: Regenerated.
3660
3661 2002-03-03  Phil Edwards  <pme@gcc.gnu.org>
3662
3663         PR libstdc++/3955
3664         * include/std/std_sstream.h:  Remove trailing spaces.
3665         (basic_stringbuf::_M_stringbuf_init):  Also check for ios_base::app.
3666         * testsuite/27_io/stringbuf.cc (test05, test06):  New tests.
3667
3668 2002-03-02  Paolo Carlini  <pcarlini@unitus.it>
3669
3670         * testsuite/22_locale/num_get_members_char.cc (test04):
3671         Use a named locale expecting grouping (de_DE).
3672         * testsuite/22_locale/num_get_members_wchar_t.cc (test04):
3673         Ditto.
3674         * testsuite/27_io/ios_manip_basefield.cc (test01):
3675         Extend coverage, uniform treatment of hexs and octs.
3676
3677 2002-02-28  Richard Henderson  <rth@redhat.com>
3678
3679         * config/linker-map.gnu: Export operator new with unsigned long,
3680         and with std::nothrow_t.  Likewise operator delete.
3681
3682 2002-02-28  Paolo Carlini  <pcarlini@unitus.it>
3683
3684         * include/bits/locale_facets.tcc (num_get::_M_extract_int):
3685         Admit grouping for octals and hexadecimals too.
3686         * testsuite/22_locale/num_get_members_char.cc: Add test04.
3687         (test01): Tweak "." -> "," in void* test.
3688         * testsuite/22_locale/num_get_members_wchar_t.cc: Ditto.
3689
3690         * testsuite/27_io/ios_manip_basefield.cc: Remove static keyword.
3691         * testsuite/27_io/ios_manip_fmtflags.cc: Remove two of them.
3692
3693 2002-02-27  Paolo Carlini  <pcarlini@unitus.it>
3694
3695         * testsuite/27_io/ios_manip_basefield.cc (test01):
3696         Fix for 64 bit machines.
3697
3698 2002-02-26  Benjamin Kosnik  <bkoz@redhat.com>
3699
3700         libstdc++/3983
3701         * include/bits/basic_ios.tcc (basic_ios::init): Set _M_fill to zero.
3702         Adjust comment.
3703         * include/bits/basic_ios.h (basic_ios::_M_fill): Make mutable.
3704         (basic_ios::_M_fill_init): New.
3705         (basic_ios::fill()): Delay dealing with _M_fill.
3706         Adjust comment.
3707         * ios.cc (ios_base::ios_base()): Initialize _M_callbacks, _M_words.
3708         (ios_base::_M_call_callbacks): Adjust.
3709         * testsuite/27_io/ios_init.cc (test02): Adjust testcase.
3710
3711 2002-02-26  Loren Rittle  <ljrittle@acm.org>
3712
3713         * include/Makefile.am (thread_target_headers): Unconditionally
3714         stage and install gthr-posix.h.
3715         (${target_builddir}/gthr-posix.h): New rule cloned off
3716         ${target_builddir}/gthr-default.h.
3717         (${target_builddir}/gthr-default.h): Support chained inclusion
3718         of gthr support headers.
3719         * include/Makefile.in: Rebuilt.
3720
3721 2002-02-26  Paolo Carlini  <pcarlini@unitus.it>
3722
3723         * include/bits/locale_facets.tcc (num_put::_M_widen_int):
3724         Group all the integral types, not only decs.
3725         * testsuite/27_io/ios_manip_basefield.cc (test01): Tweak existing
3726         tests, add a few more.
3727
3728 2002-02-25  Benjamin Kosnik  <bkoz@redhat.com>
3729
3730         * src/ios.cc (ios_base::~ios_base): Tweak.
3731         (ios_base::_M_call_callbacks): Deal with null __p.
3732         (ios_base::ios_base): Set _M_callbacks.
3733         * include/bits/basic_ios.tcc (basic_ios::init): Adjust comment.
3734         * testsuite/27_io/ios_init.cc (test02): Fix.
3735
3736         * mkcheck.in (static_fail): Failed links go to output file.
3737
3738 2002-02-25  Phil Edwards  <pme@gcc.gnu.org>
3739
3740         * docs/html/faq/index.html:  Update.
3741         * docs/html/faq/index.txt:  Regenerate.
3742
3743 2002-02-22  Phil Edwards  <pme@gcc.gnu.org>
3744
3745         * acinclude.m4 (GLIBCPP_ENABLE_SYMVERS):  Fix comment.
3746         * aclocal.m4:  Regenerate.
3747         * docs/html/configopts.html:  Document --enable-symvers.
3748         * config/linker-map.gnu:  Break libsupc++ symbols out to their own tag.
3749
3750 2002-02-22  Philipp Thomas  <pthomas@suse.de>
3751
3752         * include/backward/tempbuf.h: get_temporary_buffer and
3753         return_temporary_buffer are in namespace std, not in __gnu_cxx.
3754
3755 2002-02-21  Benjamin Kosnik  <bkoz@redhat.com>
3756
3757         * configure.in (target_alias): Default to yes.
3758         * acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Add check for shared
3759         libgcc to default case.
3760
3761 2002-02-20  Phil Edwards  <pme@gcc.gnu.org>
3762
3763         * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES):  Also check version.
3764         (GLIBCPP_ENABLE_SYMVERS):  Redo logic, use linker version.
3765         * configure.in (GLIBCPP_ENABLE_SYMVERS):  Move later in the script.
3766         * aclocal.m4:  Regenerate.
3767         * configure:  Regenerate.
3768         * config/linker-map.dummy:  New file.  Contains nothing useful.
3769
3770 2002-02-20  Benjamin Kosnik  <bkoz@redhat.com>
3771
3772         * testsuite/22_locale/money_put_members_char.cc: Fix.
3773         * testsuite/22_locale/money_put_members_wchar_t.cc: Fix.
3774
3775         * testsuite/27_io/standard_manipulators.cc: New file.
3776
3777         * testsuite/27_io/ios_manip_basefield.cc: Check results, now failing.
3778         * testsuite/27_io/ios_manip_fmtflags.cc: Use locale::classic().
3779
3780 2002-02-20  Danny Smith  <dannysmith@users.sourceforge.net>
3781
3782         * config/os/mingw32/bits/ctype_noninline.h
3783         (ctype<char>::ctype): Remove default args from parm list.
3784         * config/os/djgpp/bits/ctype_noninline.h: Same.
3785
3786 2002-02-19  Benjamin Kosnik  <bkoz@redhat.com>
3787
3788         * include/std/std_iomanip.h: Inline, tweaks.
3789         * config/linker-map.gnu: Remove hacks.
3790
3791         * testsuite/21_strings/capacity.cc: Add explicit instantiations.
3792         * testsuite/27_io/ios_init.cc: Same.
3793         * testsuite/22_locale/money_get_members_char.cc (test07): Fix.
3794         * testsuite/22_locale/money_get_members_wchar_t.cc (test07): Same.
3795
3796 2002-02-19  Benjamin Kosnik  <bkoz@redhat.com>
3797
3798         * config/linker-map.gnu: Export global vtable, typeinfo, guard
3799         variable, and thunk info as per CXXABI docs.
3800
3801 2002-02-19  Loren Rittle <ljrittle@acm.org>
3802
3803         * include/Makefile.am: Use CONFIG_HEADER instead of ad hoc names.
3804         * include/Makefile.in: Rebuilt.
3805
3806 2002-02-18  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
3807
3808         * testsuite/22_locale/collate_byname.cc (test01): Replace size4
3809           with size3 for the string collations of str5.
3810
3811 2002-02-18  Paolo Carlini  <pcarlini@unitus.it>
3812
3813         libstdc++/5708
3814         * include/bits/locale_facets.tcc (money_put::do_put):
3815         For the space field use __fill instead of ' ', uniformly.
3816         * testsuite/22_locale/money_put_members_char.cc:
3817         Add test05 distilled from PR.
3818         (test01-02-03): Trim some '*' to ' '.
3819         * testsuite/22_locale/money_put_members_wchar_t.cc: Ditto.
3820
3821 2002-02-18  Loren Rittle <ljrittle@acm.org>
3822
3823         libstdc++/5697
3824         * include/Makefile.am (thread_builddir): Remove (map all
3825         existing uses to target_builddir).
3826         (thread_headers): Rename to...
3827         (thread_target_headers): ...this.
3828         (stamp-thread): Remove.
3829         (stamp-target): Correctly state the position as built.
3830         Update all dependencies to match the new reality.  Remove all
3831         dependency calculations on directories.
3832         * include/Makefile.in: Rebuilt.
3833
3834 2002-02-16   Benjamin Kosnik  <bkoz@redhat.com>
3835
3836         * include/bits/locale_facets.tcc: Add pragma GCC system_header.
3837         * include/bits/fstream.tcc: Same.
3838         * include/bits/sstream.tcc: Same.
3839         * include/bits/ostream.tcc: Same.
3840         * include/bits/istream.tcc: Same.
3841         * include/bits/streambuf.tcc: Same.
3842         * include/bits/basic_ios.tcc: Same.
3843         * include/bits/basic_string.tcc: Same.
3844
3845 2002-02-15  Benjamin Kosnik  <bkoz@redhat.com>
3846
3847         * include/std/std_iosfwd.h: Don't guard typedefs with
3848         _GLIBCPP_USE_WCHAR_T
3849         * include/bits/stringfwd.h: Same.
3850
3851 2002-02-15  Benjamin Kosnik  <bkoz@redhat.com>
3852
3853         * src/locale.cc (moneypunct_byname): Remove definitions.
3854         * include/std/std_streambuf.h (streambuf::operator=): Return.
3855
3856 2002-02-15  Benjamin Kosnik  <bkoz@redhat.com>
3857
3858         Tune for size.
3859         * src/string-inst.cc (string::_Rep::_S_terminal): Remove redundant
3860         explicit instantiation.
3861         (string::_Rep::_S_max_size): Same.
3862         * include/bits/basic_string.tcc: Add extern explicit
3863         instantiations for string, wstring.
3864         * include/bits/basic_ios.tcc: Add extern explicit instantiations
3865         for ios, wios.
3866         * include/bits/streambuf.tcc: Same, for streambuf, wstreambuf.
3867         * include/bits/istream.tcc: Same, for istream, wistream.
3868         * include/bits/ostream.tcc: Same for ostream, wostream, iostream,
3869         wiostream.
3870         * include/bits/sstream.tcc: Same, for stringbuf, wstringbuf,
3871         istringstream, wistringstream, ostringstream, wostringstream,
3872         stringstream, wstringstream.
3873         * include/bits/fstream.tcc: Same, for filebuf, wfilebuf, ifstream,
3874         wifstream, ofstream, wofstream, fstream, wfstream.
3875         * src/misc-inst.cc: Correct comments.
3876         Add iomanip instantiations for wide streams.
3877         * include/std/std_iomanip.h: Same.
3878         * include/bits/locale_facets.tcc: Same.
3879
3880         * include/std/std_streambuf.h: Correct
3881         _GLIBCPP_FULLY_COMPLIANT_HEADERS guard.
3882         * include/std/std_sstream.h: Same.
3883         * include/std/std_ostream.h: Same.
3884         * include/std/std_istream.h: Same.
3885         * include/std/std_fstream.h: Same.
3886
3887         * include/std/std_streambuf.h: Add definitions for private copy
3888         ctor and assignment operator.
3889         * include/std/std_istream.h: Remove declared but undefined copy
3890         ctor and assignment operator. This is taken care of in ios_base,
3891         so adding it in the derived class as well is superfluous.
3892         * include/std/std_ostream.h: Same.
3893
3894         * include/bits/basic_ios.h (basic_ios::clear): Don't inline.
3895         * include/bits/basic_ios.tcc (basic_ios::clear): Move definition here.
3896
3897 2002-02-14  Benjamin Kosnik  <bkoz@redhat.com>
3898
3899         * config/linker-map.gnu: Change tag from GCC_3.1 to GLIBCPP_3.1.
3900         Add typeinfo bits. Smooth.
3901         * aclocal.m4: Regenerate.
3902         * configure: Same.
3903         * src/Makefile.in: Same.
3904
3905 2001-02-14  Joel Sherrill  <joel@OARcorp.com>
3906
3907         * config/cpu/m68k/bits/atomicity.h: Corrected for RTEMS targets
3908         which do not have a CAS instruction.
3909
3910 2002-02-14  Phil Edwards  <pme@gcc.gnu.org>
3911
3912         * acinclude.m4 (GLIBCPP_ENABLE_SYMVERS):  New macro, initial revision.
3913         * configure.in:  Call it.
3914         * config/linker-map.gnu:  New file, initial incomplete revision.
3915         * src/Makefile.am:  Optionally pass version script to the linker.
3916         * aclocal.m4:  Regenerate.
3917         * configure:  Regenerate.
3918         * src/Makefile.in:  Regenerate.
3919
3920 2002-02-13  Benjamin Kosnik  <bkoz@redhat.com>
3921
3922         * src/localename.cc: Remove stdexcept include.
3923         * src/locale-inst.cc: Same.
3924         * src/locale.cc: Same.
3925         * src/functexcept.cc: Remove string includes.
3926         * include/std/std_bitset.h: Remove stdexcept include.
3927         * testsuite/23_containers/bitset_members.cc: Add stdexcept.
3928         * testsuite/23_containers/bitset_ctor.cc: Same.
3929
3930 2002-02-11  Benjamin Kosnik  <bkoz@redhat.com>
3931
3932         * include/bits/stl_algo (__stl_threshold): Declare external.
3933         (__stl_chunk_size): Same.
3934         * include/bits/stl_bvector.h (__WORD_BIT): Same.
3935         * include/bits/stl_tree.h (_S_rb_tree_red): Same.
3936         (_S_rb_tree_black): Same.
3937         * src/stl-inst.cc (__stl_threshold): Define.
3938         (__stl_chunk_size): Same.
3939         (__WORD_BIT): Same.
3940         (_S_rb_tree_red): Same.
3941         (_S_rb_tree_black): Same.
3942
3943         * config/io/basic_file_libio.h (__basic_file): Add declarations.
3944         * include/bits/basic_file.h: Remove.
3945         * config/io/c_io_stdio.h: Remove _GLIBCPP_BASIC_FILE_ENCAPSULATION
3946         Declare generic types, specialization.
3947         * config/io/basic_file_stdio.cc: Definitions.
3948         * config/io/c_io_libio.h: Remove _GLIBCPP_BASIC_FILE_INHERITANCE.
3949         Declare generic types.
3950         * include/Makefile.am (bits_headers): Remove basic_file.h.
3951         (extra_target_headers): Change basic_file_model.h to basic_file.h.
3952         (stamp-target): Same.
3953
3954         * include/bits/stl_alloc.h: Tweaks.
3955         * include/bits/localefwd.h: Same.
3956
3957 2002-02-11  Aaron W LaFramboise  <AWLaFramboise@aol.com>
3958
3959         * include/bits/locale_facets.tcc (collate::do_hash): Fix.
3960         * testsuite/22_locale/collate_members_char.cc (test03): New test.
3961         * testsuite/22_locale/collate_members_wchar_t.cc (test03): Same.
3962
3963 2002-02-10  Phil Edwards  <pme@gcc.gnu.org>
3964
3965         * include/bits/stl_algo.h (transform (both signatures), generate_n):
3966         Use __typeof__ in concept checks.
3967
3968 2002-02-10  Jonathan Wakely  <cow@compsoc.man.ac.uk>
3969
3970         * include/bits/stl_algo.h (__median, for_each, find, find_if,
3971         adjacent_find, count, count_if, search, search_n, swap_ranges,
3972         transform, replace, replace_if, replace_copy, replace_copy_if,
3973         generate, generate_n, remove_copy, remove_copy_if, remove, remove_if,
3974         unique, unique_copy, reverse, reverse_copy):  Doxygenate.
3975
3976 2002-02-08  Benjamin Kosnik  <bkoz@redhat.com>
3977
3978         * include/bits/locale_facets.h
3979         (numpunct<_CharT>::_M_initialize_numpunct): Remove definition.
3980         (__timepunct<_CharT>::_M_initialize_timepunct): Same.
3981         (__timepunct<_CharT>::_M_put_helper): Same.
3982         (moneypunct<_CharT, _Intl>::_M_initialize_moneypunct): Same.
3983
3984         * include/bits/fstream.tcc (filebuf::underflow): Remove
3985         __codecvt_type typedef.
3986         (filebuf::_M_convert_to_external): Same.
3987
3988 2002-02-08  Phil Edwards  <pme@gcc.gnu.org>
3989
3990         * docs/doxygen/TODO:  Update.
3991         * docs/doxygen/doxygroups.cc:  Tweak __gnu_cxx description.
3992         * docs/doxygen/mainpage.html:  Add TODO list link.
3993         * docs/doxygen/user.cfg.in:  Add @doctodo hook.
3994         * docs/doxygen/tables.html:  New file, emoty structure only.
3995
3996         * include/bits/stl_iterator.h:  Doxygenate just about everything.
3997         * include/bits/stl_iterator_base_funcs.h:  Ditto, clean up spaces.
3998         * include/bits/stl_iterator_base_types.h:  Add notes.
3999
4000 2002-02-07  Stephan Buys  <sbproxy@icon.co.za>
4001
4002         * include/bits/stl_map.h:  Tweak doxygen markup.
4003         * include/bits/stl_multimap.h:  Doxygenate and remove extra spaces.
4004         * include/bits/stl_vector.h:  Likewise.
4005
4006 2002-02-07  Benjamin Kosnik  <bkoz@redhat.com>
4007
4008         libstdc++/5286
4009         libstdc++/3860
4010         * include/std/std_fstream.h (filebuf::__file_type): Change to
4011         __basic_file<char>.
4012         (filebuf::_M_convert_to_external): Declare.
4013         * include/bits/fstream.tcc (filebuf::_M_convert_to_external): Define
4014         codecvt bits for wide streams.
4015         (filebuf::_M_really_overflow): Use it.
4016         (filebuf::underflow): Use codecvt.
4017         * config/locale/codecvt_specializations_ieee_1003.1-200x.h:
4018         (codecvt<__enc_traits>::do_out): Deal with partial.
4019         (codecvt<__enc_traits>::do_encoding): Return something useful.
4020         * src/codecvt.cc (codecvt<wchar_t>::do_encoding): Return sizeof
4021         wchar_t.
4022         * testsuite/22_locale/codecvt_members_unicode_char.cc (test01):
4023         Change expected encoding output.
4024         (test02): Same.
4025         * testsuite/22_locale/codecvt_members_wchar_t_char.cc (test01): Same.
4026         (test02): Same.
4027
4028 2002-02-07  Benjamin Kosnik  <bkoz@redhat.com>
4029             Wolfgang Bangerth  <wolfgang.bangerth@iwr.uni-heidelberg.de>
4030
4031         * include/bits/basic_ios.tcc (basic_ios::narrow): Add default value.
4032         (basic_ios::widen): Same.
4033
4034 2002-02-07  Paolo Carlini  <pcarlini@unitus.it>
4035
4036         * testsuite/22_locale/money_get_members_char.cc:
4037         Add comment, tidy up.
4038         (test01): more "en_HK" tests (without showbase).
4039         * testsuite/22_locale/money_get_members_wchar_t.cc: Ditto.
4040
4041 2002-02-06  Loren Rittle <ljrittle@acm.org>
4042
4043         * config/locale/c_locale_generic.cc: Do not trust
4044         _GLIBCPP_HAVE_STRTOF or _GLIBCPP_HAVE_STRTOLD as
4045         set by configure.
4046
4047 2002-02-06  Loren Rittle <ljrittle@acm.org>
4048
4049         * acinclude.m4: Add C++ linkage check for strtof.
4050         * aclocal.m4: Rebuilt.
4051         * config.h.in: Rebuilt.
4052         * configure: Rebuilt.
4053         * config/locale/c_locale_generic.cc: Conditionally include
4054         <ieeefp.h>.  Improve handling and error checking of float
4055         and long double input for non-C99 configurations.
4056
4057 2002-02-06  Paolo Carlini  <pcarlini@unitus.it>
4058
4059         * include/bits/locale_facets.tcc (money_get::do_get(string)):
4060         In case money_base::symbol deal properly with multi-char sign
4061         for patterns {X,Y,Z,symbol} and {X,Y,symbol,none}.
4062         * testsuite/22_locale/money_get_members_char.cc: Add test07.
4063         * testsuite/22_locale/money_get_members_wchar_t.cc: Add test07.
4064
4065 2002-02-05  Paolo Carlini  <pcarlini@unitus.it>
4066
4067         * include/bits/locale_facets.tcc (money_get::do_get(string)):
4068         First construct a tentative returned string, then, only if the
4069         parsing succeeds, copy it into the string passed by reference.
4070         * testsuite/22_locale/money_get_members_char.cc: Add test06.
4071         * testsuite/22_locale/money_get_members_wchar_t.cc: Add test06.
4072
4073 2002-02-04  Phil Edwards  <pme@gcc.gnu.org>
4074
4075         * docs/doxygen/TODO:  Impl-defined behavior now documented...
4076         * docs/html/17_intro/howto.html:  ...here.
4077         * docs/doxygen/mainpage.doxy:  Remove, rename...
4078         * docs/doxygen/mainpage.html:  ...to this.  Tweak HTML, add license.
4079         * docs/doxygen/style.css:  Add small text.
4080         * docs/doxygen/run_doxygen:  Adjust for new mainpage.
4081         * docs/doxygen/user.cfg.in:  Likewise.
4082
4083 2002-02-04  Stephan Buys  <sbproxy@icon.co.za>
4084
4085         * include/bits/stl_map.h:  Initial doxygen markup.
4086         * include/std/std_fstream.h:  Initial doxygen markup.
4087
4088 2002-02-04  Paolo Carlini  <pcarlini@unitus.it>
4089
4090         libstdc++/5579
4091         * include/bits/locale_facets.tcc (money_get::do_get(string)):
4092         Deal correctly with !(__io.flags() & ios_base::showbase)
4093         for case money_base::symbol.
4094         * testsuite/22_locale/money_get_members_char.cc: Add test05.
4095         * testsuite/22_locale/money_get_members_wchar_t.cc: Add test05.
4096
4097 2002-02-02  Paolo Carlini  <pcarlini@unitus.it>
4098
4099         * testsuite/22_locale/operators.cc
4100         (gnu_collate::do_compare()): Add return statement to
4101         suppress "no return statement" warning.
4102
4103 2002-02-01  Paolo Carlini  <pcarlini@unitus.it>
4104
4105         * testsuite/27_io/ostream_manip.cc: Enable test02.
4106
4107 2002-02-01  Phil Edwards  <pme@gcc.gnu.org>
4108
4109         * docs/html/documentation.html:  Update for 3.0.96.
4110         * docs/html/faq/index.html:  Update for 3.0.96.
4111         * docs/html/faq/index.txt:  Regenerated.
4112         * docs/doxygen/TODO:  Update notes.
4113         * docs/html/17_intro/howto.html:  Initial impl-specific listing.
4114
4115 2002-01-31  Benjamin Kosnik  <bkoz@redhat.com>
4116
4117         * config/locale/codecvt_specializations_ieee_1003.1-200x.h:
4118         Initialize all data members in copy ctor. Make ctors explicit.
4119         (__enc_traits::__enc_traits()): Default ctor does nothing.
4120         (__enc_traits::_M_init): Guard against multiple iconv_opens.
4121         * include/std/std_sstream.h (basic_stringbuf): Make data members
4122         protected.
4123         * include/std/std_fstream.h (basic_filebuf): Same.
4124         * include/std/std_streambuf.h: Tweak.
4125         * include/bits/streambuf.tcc: Same.
4126         * include/bits/sstream.tcc: Same.
4127         * include/bits/fstream.tcc: Same.
4128
4129 2002-01-31  Loren Rittle <ljrittle@acm.org>
4130
4131         * testsuite/22_locale/codecvt_members_char_char.cc: Do not
4132         allow NULL argument to be passed to setenv().
4133         * testsuite/22_locale/codecvt_members_wchar_t_char.cc: Likewise.
4134         * testsuite/22_locale/collate_members_char.cc: Likewise.
4135         * testsuite/22_locale/collate_members_wchar_t.cc: Likewise.
4136         * testsuite/22_locale/ctype_members_char.cc: Likewise.
4137         * testsuite/22_locale/ctype_members_wchar_t.cc: Likewise.
4138         * testsuite/22_locale/messages_members_char.cc: Likewise.
4139         * testsuite/22_locale/money_get_members_char.cc: Likewise.
4140         * testsuite/22_locale/money_get_members_wchar_t.cc: Likewise.
4141         * testsuite/22_locale/money_put_members_char.cc: Likewise.
4142         * testsuite/22_locale/money_put_members_wchar_t.cc: Likewise.
4143         * testsuite/22_locale/moneypunct_members_char.cc: Likewise.
4144         * testsuite/22_locale/moneypunct_members_wchar_t.cc: Likewise.
4145         * testsuite/22_locale/num_get_members_char.cc: Likewise.
4146         * testsuite/22_locale/num_get_members_wchar_t.cc: Likewise.
4147         * testsuite/22_locale/num_put_members_char.cc: Likewise.
4148         * testsuite/22_locale/num_put_members_wchar_t.cc: Likewise.
4149         * testsuite/22_locale/numpunct_members_char.cc: Likewise.
4150         * testsuite/22_locale/numpunct_members_wchar_t.cc: Likewise.
4151         * testsuite/22_locale/time_get_members_char.cc: Likewise.
4152         * testsuite/22_locale/time_get_members_wchar_t.cc: Likewise.
4153         * testsuite/22_locale/time_put_members_char.cc: Likewise.
4154         * testsuite/22_locale/time_put_members_wchar_t.cc: Likewise.
4155
4156 2002-01-30  Benjamin Kosnik  <bkoz@redhat.com>
4157
4158         * config/locale/c_locale_gnu.cc: Same errno fixes as generic.
4159
4160         * ChangeLog-2001: Fix spelling errors...
4161         * docs/html/17_intro/RELEASE-NOTES: Update.
4162         * docs/html/17_intro/TODO: Update.
4163         * README (file): Update.
4164
4165 2002-01-30  Loren Rittle <ljrittle@acm.org>
4166
4167         * config/locale/c_locale_generic.cc: Check errno for ERANGE
4168         instead of non-zero to aid portability.
4169
4170 2002-01-30  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
4171
4172         * docs/html/22_locale/messages.html: Fix example code.
4173
4174 2002-01-30  Richard Henderson  <rth@redhat.com>
4175
4176         * testsuite/27_io/ostream_inserter_arith.cc (test03_check): Break
4177         out from test03 and templatize.
4178         (test03): Use it.
4179
4180 2002-01-30  Paolo Carlini  <pcarlini@unitus.it>
4181
4182         * config/locale/numpunct_members_gnu.cc
4183         (numpunct<char, wchar_t>::_M_initialize_numpunct()):
4184         Fix initialization of _M_grouping for locales which have
4185         _M_thousands_sep == '\0'(L'\0', respectively).
4186         * testsuite/22_locale/numpunct_byname.cc (test02): Add test.
4187
4188 2002-01-30  Paolo Carlini  <pcarlini@unitus.it>
4189
4190         * testsuite/27_io/ostream_inserter_arith.cc (test03):
4191         Better fix for 32/64 bit architectures, avoiding the
4192         implicit assumption that CHAR_BIT == 8.
4193
4194 2002-01-28  Phil Edwards  <pme@gcc.gnu.org>
4195
4196         * Makefile.am (doxygen, doxygen-maint, doxygen-man):  Tweak targets.
4197         * Makefile.in:  Regenerate.
4198
4199         * docs/doxygen/run_doxygen:  Update, mostly for man pages.
4200         * docs/doxygen/Intro.3:  Update.
4201         * docs/doxygen/TODO:  Update.
4202         * docs/doxygen/doxygroups.cc:  Add namespace hook for __gnu_cxx.
4203         * docs/doxygen/mainpage.doxy:  Update.
4204         * docs/doxygen/user.cfg.in:  Update for header rename.  Also
4205         regenerate comments and variables with 1.2.12.
4206         * docs/doxygen/maint.cfg.in:  Remove file.
4207
4208         * include/bits/stl_relops.h:  Doxygenate.
4209         * include/bits/stl_tempbuf.h (std::_Temporary_buffer):  Likewise.
4210
4211         * include/c_std/std_cassert.h, include/c_std/std_cctype.h,
4212         include/c_std/std_cerrno.h, include/c_std/std_cfloat.h,
4213         include/c_std/std_ciso646.h, include/c_std/std_climits.h,
4214         include/c_std/std_clocale.h, include/c_std/std_cmath.h,
4215         include/c_std/std_csetjmp.h, include/c_std/std_csignal.h,
4216         include/c_std/std_cstdarg.h, include/c_std/std_cstddef.h,
4217         include/c_std/std_cstdio.h, include/c_std/std_cstdlib.h,
4218         include/c_std/std_cstring.h, include/c_std/std_ctime.h,
4219         include/c_std/std_cwchar.h, include/c_std/std_cwctype.h,
4220         include/ext/algorithm, include/ext/functional, include/ext/hash_map,
4221         include/ext/hash_set, include/ext/iterator, include/ext/memory,
4222         include/ext/numeric, include/ext/rb_tree, include/ext/rope,
4223         include/ext/ropeimpl.h, include/ext/slist, include/ext/stl_hash_fun.h,
4224         include/ext/stl_hashtable.h, include/ext/stl_rope.h,
4225         include/std/std_algorithm.h, include/std/std_bitset.h,
4226         include/std/std_complex.h, include/std/std_deque.h,
4227         include/std/std_fstream.h, include/std/std_functional.h,
4228         include/std/std_iomanip.h, include/std/std_ios.h,
4229         include/std/std_iosfwd.h, include/std/std_iostream.h,
4230         include/std/std_istream.h, include/std/std_iterator.h,
4231         include/std/std_limits.h, include/std/std_list.h,
4232         include/std/std_locale.h, include/std/std_map.h,
4233         include/std/std_memory.h, include/std/std_numeric.h,
4234         include/std/std_ostream.h, include/std/std_queue.h,
4235         include/std/std_set.h, include/std/std_sstream.h,
4236         include/std/std_stack.h, include/std/std_stdexcept.h,
4237         include/std/std_streambuf.h, include/std/std_string.h,
4238         include/std/std_utility.h, include/std/std_valarray.h,
4239         include/std/std_vector.h:  Add/correct @file doxygen hook.
4240
4241         * include/ext/memory:  Doxygenate most of rest of file.
4242         * libsupc++/exception:  Doxygen output formatting.
4243         * libsupc++/new:  Say which header it is.
4244
4245         * testsuite/lib/libstdc++-v3-dg.exp:  Fix spacing.
4246         * docs/html/19_diagnostics/howto.html:  Describe concept-checks switch.
4247         * docs/html/23_containers/howto.html:  Describe O(n) list::size().
4248         * docs/html/27_io/howto.html:  Also link to Langer and Kreft text.
4249
4250 2002-01-28  Paolo Carlini  <pcarlini@unitus.it>
4251             Charles Leggett <CGLeggett@lbl.gov>
4252
4253         * testsuite/27_io/filebuf_members.cc (test_05): Add test.
4254
4255 2002-01-28  Paolo Carlini  <pcarlini@unitus.it>
4256
4257         * testsuite/27_io/ostream_inserter_arith.cc (test03):
4258         Fix to deal correctly with both 32 bit and 64 bit architectures
4259
4260 2002-01-25  Loren Rittle <ljrittle@acm.org>
4261
4262         * testsuite/thread/pthread1.cc: Use one condition variable
4263         per predicate instead of tricky use of one condition variable.
4264
4265 2002-01-25  Benjamin Kosnik  <bkoz@redhat.com>
4266
4267         * include/bits/fstream.tcc (filebuf::close()): Fix close for input
4268         streams.
4269         (filebuf::_M_really_overflow): Match indeterminate and sync calls.
4270         * testsuite/27_io/filebuf.cc: Compile only.
4271         * testsuite/27_io/filebuf_members.cc: Move tests to here.
4272         * testsuite/27_io/filebuf_virtuals.cc: And here.
4273         Revert sungetc, sync changes for expected values.
4274         * testsuite/27_io/filebuf-*: Move to...
4275         * testsuite/27_io/filebuf_virtuals-*: ...here.
4276         * testsuite/27_io/istream.cc: Compile only, activate.
4277         * testsuite/27_io/ostream.cc: Same.
4278         * testsuite/27_io/iostream.cc: New.
4279         * testsuite/27_io/iostream_members.cc: New.
4280
4281 2002-01-25  David Billinghurst <David.Billinghurst@riotinto.com>
4282
4283         * testsuite/thread/pthread1.cc: Enable on cygwin.
4284         * testsuite/thread/pthread2.cc: Likewise.
4285         * testsuite/thread/pthread3.cc: Likewise.
4286         * testsuite/thread/pthread4.cc: Likewise.
4287         * testsuite/thread/pthread5.cc: Likewise.
4288         * testsuite/thread/pthread6.cc: Likewise.
4289
4290 2002-01-24  Benjamin Kosnik  <bkoz@redhat.com>
4291
4292         * testsuite/27_io/ostream_inserter_char.cc (test07): New.
4293
4294 2002-01-24  Benjamin Kosnik  <bkoz@redhat.com>
4295
4296         * include/bits/basic_ios.h (basic_ios::_M_check_facet): Make
4297         const, tweak.
4298         (basic_ios::fill(char_type)): Use fill().
4299         * include/bits/basic_ios.tcc (basic_ios::widen): Use _M_check_facet.
4300         (basic_ios::narrow): Same.
4301         (basic_ios::_M_cache_facets): Explicitly set cached facets to zero
4302         if they are invalid.
4303         (basic_ios::init): Comment.
4304         * testsuite/27_io/ios_init.cc (test02): New.
4305
4306 2002-01-24  Phil Edwards  <pme@gcc.gnu.org>
4307
4308         * include/bits/stl_tempbuf.h (_Temporary_buffer):  Add doxygen hook.
4309         * include/bits/stl_algo.h:  Include stl_tempbuf.h.
4310         * include/ext/memory:  Do not include stl_tempbuf.h.
4311         (temporary_buffer):  Add doxygen hook.
4312         (__get_temporary_buffer, get_temporary_buffer,
4313         return_temporary_buffer):  Move back to std:: header...
4314         * include/std/std_memory.h:  ...here.  Do not include stl_tempbuf.h.
4315         * include/ext/rope:  Do not include stl_tempbuf.h.
4316         * include/ext/stl_hashtable.h:  Likewise.
4317         * include/std/std_algorithm.h:  Likewise.
4318         * testsuite/20_util/temporary_buffer.cc:  New file.
4319
4320 2002-01-24  andrew@andypo.net
4321             (tweaks, test and commit by Loren J. Rittle  <ljrittle@acm.org>)
4322
4323         libstdc++/5432
4324         * include/bits/ios_base.h: Use _Atomic_word for reference counts.
4325         * include/bits/localefwd.h: Likewise.
4326         Also use for std::locale::id::_S_highwater.
4327         * src/ios.cc (ios_base::xalloc): Use _Atomic_word.
4328         * src/locale.cc: Support new usage of _Atomic_word.
4329         (std::locale::classic): Guard entire function against reentry.
4330         * src/localename.cc: Support new usage of _Atomic_word.
4331
4332 2002-01-24   Benjamin Kosnik  <bkoz@redhat.com>
4333
4334         * testsuite/22_locale/num_put_members_wchar_t.cc (test03): Use
4335         _GLIBCPP_HAVE_SETENV.
4336         * testsuite/22_locale/codecvt_members_wchar_t_char.cc (test02): Same.
4337         * testsuite/22_locale/collate_members_char.cc (test02): Same.
4338         * testsuite/22_locale/ctype_members_char.cc (test03): Same.
4339         * testsuite/22_locale/ctype_members_wchar_t.cc (test03): Same.
4340         * testsuite/22_locale/messages_members_char.cc (test02): Same.
4341         * testsuite/22_locale/moneypunct_members_char.cc (test02): Same.
4342         * testsuite/22_locale/moneypunct_members_wchar_t.cc (test02): Same.
4343         * testsuite/22_locale/money_put_members_char.cc (test04): Same.
4344         * testsuite/22_locale/money_put_members_wchar_t.cc (test04): Same.
4345         * testsuite/22_locale/num_get_members_char.cc (test03): Same.
4346         * testsuite/22_locale/num_get_members_wchar_t.cc (test03): Same.
4347         * testsuite/22_locale/numpunct_members_char.cc (test02): Same.
4348         * testsuite/22_locale/numpunct_members_wchar_t.cc (test02): Same.
4349         * testsuite/22_locale/time_get_members_char.cc (test07): Same.
4350         * testsuite/22_locale/time_get_members_wchar_t.cc (test07): Same.
4351         * testsuite/22_locale/time_put_members_char.cc (test03): Same.
4352         * testsuite/22_locale/time_put_members_wchar_t.cc (test03): Same.
4353         * testsuite/22_locale/num_put_members_char.cc (test03): Same.
4354         * acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Check for setenv.
4355         * aclocal.m4: Regenerate.
4356         * configure: Regenerate.
4357         * config.h.in: Regenerate.
4358
4359 2002-01-23  Loren Rittle <ljrittle@acm.org>
4360
4361         * testsuite/thread/pthread1.cc: New test.
4362         * testsuite/thread/pthread2.cc: New test adapted from libstdc++/5347.
4363         * testsuite/thread/pthread3.cc: Likewise.
4364         * testsuite/thread/pthread4.cc: New test adapted from
4365         http://gcc.gnu.org/ml/gcc-bugs/2002-01/msg00679.html
4366         * testsuite/thread/pthread5.cc: New test adapted from libstdc++/5464.
4367         * testsuite/thread/pthread6.cc: New test adapted from libstdc++/5444.
4368
4369 2002-01-23  Richard Henderson  <rth@redhat.com>
4370
4371         PR libstdc++/5198
4372         * config/cpu/m68k/bits/atomicity.h (__exchange_and_add): Only use
4373         CAS on the cpu variants that support it.  Add versions that use
4374         TAS and that disable interrupts.
4375         (__atomic_add): Use __exchange_and_add to guarantee atomicity.
4376
4377 2002-01-23  Matt Kraai  <kraai@alumni.cmu.edu>
4378
4379         * include/bits/locale_facets.tcc: Remove old comments.
4380
4381 2002-01-23  Andreas Tobler  <toa@pop.agri.ch>
4382
4383         * include/bits/locale_facets.tcc (__convert_to_v): Change template
4384         parameter to _Tv.
4385         (__convert_from_v): Same.
4386
4387 2002-01-23  Benjamin Kosnik  <bkoz@redhat.com>
4388
4389         * include/bits/locale_facets.h (num_get::_M_extract_int): Change
4390         prototype.
4391         * include/bits/locale_facets.tcc (num_get::_M_extract_int): Remove
4392         __max_digits checks, adjust arguments.
4393         (num_get::do_get(*)): Changeup.
4394
4395 2002-01-23  Loren Rittle <ljrittle@acm.org>
4396
4397         * config/locale/c_locale_generic.cc: Fix typename usage.
4398
4399 2002-01-22  Benjamin Kosnik  <bkoz@redhat.com>
4400
4401         * config/locale/c_locale_generic.cc: Fix.
4402
4403 2002-01-22  Benjamin Kosnik  <bkoz@redhat.com>
4404
4405         * docs/html/22_locale/messages.html: Remove angle brackets.
4406         * docs/html/17_intro/TODO: Add.
4407
4408 2002-01-22  Paolo Carlini  <pcarlini@unitus.it>
4409
4410         * testsuite/27_io/ios_manip_basefield.cc: Enable test02.
4411         * testsuite/27_io/ostream_inserter_arith.cc: Enable test03.
4412         * testsuite/27_io/ostream_inserter_char.cc: Enable test01.
4413         * testsuite/27_io/ostream_inserter_other.cc: Enable test04.
4414
4415 2002-01-22  Benjamin Kosnik  <bkoz@redhat.com>
4416
4417         Audit for LANG independence.
4418         * include/bits/localefwd.h: Tweaks.
4419         * include/bits/locale_facets.tcc (money_get::do_get(long double)):
4420         Use __convert_to_v.
4421         (time_get::do_get_year): Same.
4422         (__convert_from_v): Add.
4423         (num_put::_M_convert_float): Use.
4424         (num_put::_M_convert_int): Same.
4425         (money_put::do_put): Same.
4426
4427         * src/locale-inst.cc: Add instantiations for __convert_from_v.
4428         * config/locale/time_members_gnu.cc: Cleanup setlocale usage.
4429         * config/locale/time_members_generic.cc:
4430         * config/locale/messages_members_gnu.cc: Same.
4431         * config/locale/messages_members_gnu.h: Same.
4432
4433         * testsuite/22_locale/codecvt_members_wchar_t_char.cc (test02): New.
4434         * testsuite/22_locale/codecvt_members_char_char.cc (test02): New.
4435         * testsuite/22_locale/collate_members_wchar_t.cc (test02): New.
4436         * testsuite/22_locale/collate_members_char.cc (test02): New.
4437         * testsuite/22_locale/ctype_members_wchar_t.cc (test03): New.
4438         * testsuite/22_locale/ctype_members_char.cc (test03): New.
4439         * testsuite/22_locale/messages_members_char.cc (test02): New.
4440         * testsuite/22_locale/moneypunct_members_wchar_t.cc (test02): New.
4441         * testsuite/22_locale/moneypunct_members_char.cc (test02): New.
4442         * testsuite/22_locale/money_get_members_wchar_t.cc (test04): New.
4443         * testsuite/22_locale/money_get_members_char.cc (test04): New.
4444         * testsuite/22_locale/money_put_members_wchar_t.cc (test04): New.
4445         * testsuite/22_locale/money_put_members_char.cc (test04): New.
4446         * testsuite/22_locale/numpunct_members_wchar_t.cc (test02): New.
4447         * testsuite/22_locale/numpunct_members_char.cc (test02): New.
4448         * testsuite/22_locale/time_put_members_wchar_t.cc (test03): New.
4449         * testsuite/22_locale/time_put_members_char.cc (test03): New.
4450         * testsuite/22_locale/time_get_members_wchar_t.cc (test07): New.
4451         * testsuite/22_locale/time_get_members_char.cc (test07): New.
4452         * testsuite/22_locale/num_get_members_wchar_t.cc (test03): New.
4453         * testsuite/22_locale/num_get_members_char.cc (test03): New.
4454         * testsuite/22_locale/num_put_members_wchar_t.cc (test03): New.
4455         * testsuite/22_locale/num_put_members_char.cc (test03): New.
4456
4457         * testsuite/22_locale/time_get_members_char.cc: Fixups for global
4458         locale issues.
4459         * testsuite/22_locale/time_get_members_char.cc: Same.
4460
4461 2002-01-22  Benjamin Kosnik  <bkoz@redhat.com>
4462
4463         libstdc++/5280
4464         * include/bits/localefwd.h: Tweak comments.
4465         * include/bits/locale_facets.h (__convert_to_v): Add.
4466         * include/bits/locale_facets.tcc (num_get::do_get(double)): Use it.
4467         (num_get::do_get(float)): Same.
4468         (num_get::do_get(long double)): Same.
4469         (num_get::do_get(bool)): Same.
4470         (num_get::do_get(long)): Same.
4471         (num_get::do_get(long long)): Same.
4472         (num_get::do_get(unsigned int)): Same.
4473         (num_get::do_get(unsigned short)): Same.
4474         (num_get::do_get(unsigned long)): Same.
4475         (num_get::do_get(unsigned long long)): Same.
4476         * config/locale/c_locale_gnu.cc (__convert_to_v): Specialize.
4477         * config/locale/c_locale_generic.cc: Same.
4478
4479 2002-01-22  Loren Rittle <ljrittle@acm.org>
4480
4481         * include/Makefile.am (c_base_builddir): Remove redundant slash.
4482         (std_builddir): Likewise.
4483         (std_headers_rename): Fix cut-n-paste typo.
4484         (install-data-local): Concat path per element instead of once to
4485         first element of list.
4486         * include/Makefile.in: Rebuilt.
4487
4488 2002-01-22  Benjamin Kosnik  <bkoz@redhat.com>
4489
4490         * config/os/aix/bits/ctype_noninline.h: Fix formatting.
4491         * config/os/bsd/netbsd/bits/ctype_noninline.h: Fix typo.
4492         * config/os/bsd/freebsd/bits/ctype_noninline.h: Fix formatting.
4493
4494 2002-01-20  Benjamin Kosnik  <bkoz@redhat.com>
4495
4496         * include/bits/locale_facets.h (ctype<char>::classic_table):
4497         Remove definition.
4498         (ctype<char>::_S_ctable): Remove.
4499         * config/os/gnu-linux/bits/ctype_noninline.h
4500         (ctype<char>::_S_table): Remove definition.
4501         (ctype<char>::classic_table): Define.
4502         (ctype<char>::ctype): Replace _S_ctable with classic_table().
4503         * config/os/aix/bits/ctype_noninline.h: Same.
4504         * config/os/bsd/freebsd/bits/ctype_noninline.h: Same.
4505         * config/os/bsd/netbsd/bits/ctype_noninline.h: Same.
4506         * config/os/djgpp/bits/ctype_noninline.h: Same.
4507         * config/os/generic/bits/ctype_noninline.h: Same.
4508         * config/os/gnu-linux/bits/ctype_noninline.h: Same.
4509         * config/os/hpux/bits/ctype_noninline.h: Same.
4510         * config/os/irix/irix5.2/bits/ctype_noninline.h: Same.
4511         * config/os/irix/irix6.5/bits/ctype_noninline.h: Same.
4512         * config/os/mingw32/bits/ctype_noninline.h: Same.
4513         * config/os/newlib/bits/ctype_noninline.h: Same.
4514         * config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.
4515         * config/os/solaris/solaris2.6/bits/ctype_noninline.h: Same.
4516         * config/os/solaris/solaris2.7/bits/ctype_noninline.h: Same.
4517
4518 2002-01-20  Danny Smith  <dannysmith@users.sourceforge.net>
4519
4520         * config/os/mingw32/bits/ctype_noninline.h: Declare _ctype instead
4521         of _pctype. Use to define _S_ctable.  Add definition for alternate
4522         ctor.  Initialise _M_ctable to _S_ctable in ctors.
4523         (do_toupper, do_tolower): Use inline code appropriate for C-locale
4524         rather than ::toupper, ::tolower.
4525
4526 2002-01-18  Loren Rittle <ljrittle@acm.org>
4527
4528         * testsuite/18_support/numeric_limits.cc (test_extrema<long double>):
4529         Add specialization for FreeBSD systems only to avoid losing test
4530         only due to extra precision unmentioned in system headers.
4531
4532 2002-01-18  David Billinghurst <David.Billinghurst@riotinto.com>
4533
4534         * config/os/irix/irix6.5/bits/ctype_noninline.h: Fix typo
4535
4536 2002-01-17  Nick Clifton  <nickc@cambridge.redhat.com>
4537
4538         * testsuite/testsuite_hooks.h: Fix comment typo.  Memory
4539         limiting is only attempted if _GLIBCPP_MEM_LIMIT is defined.
4540
4541 2002-01-17  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
4542
4543         * testsuite/22_locale/ctor_copy_dtor.cc: Remove check.
4544
4545 2002-01-17  David Edelsohn  <edelsohn@gnu.org>
4546
4547         * configure.target: Define OPT_LDFLAGS for AIX case.
4548
4549 2002-01-17  Gabriel Dos Reis  <gdr@merlin.codesourcery.com>
4550
4551         * include/std/std_limits.h (__glibcpp_float_has_quiet_NaN,
4552         __glibcpp_double_has_quiet_NaN): Correct mispelling.
4553
4554 2002-01-17  Andreas Tobler  <toa@pop.agri.ch>
4555
4556         * config/os/solaris/solaris2.6/bits/ctype_noninline.h: Fix.
4557
4558 2002-01-16  David Edelsohn  <dje@watson.ibm.com>
4559
4560         * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Do not clear
4561         SECTION_LDFLAGS and OPT_LDFLAGS.  Fix ac_sectionLDflags type.
4562         * aclocal.m4: Regenerate.
4563         * configure: Regenerate.
4564
4565 2002-01-16  Benjamin Kosnik  <bkoz@redhat.com>
4566
4567         * include/Makefile.am (c_base_headers_rename): New.
4568         (c_base_headers_extra): New.
4569         (stamp-c_base): Modify.
4570         (install-data-local): Use both.
4571         * include/Makefile.in: Regenerate.
4572         * include/c/[cctype ciso646 cmath cstdarg cstdlib cerrno climits
4573         csetjmp cstddef cstring cwchar cassert cfloat clocale csignal
4574         cstdio ctime cwctype]: Move to..
4575         * include/c/std_*: Here.
4576         * include/c_std/[cctype ciso646 cmath cstdarg cstdlib cerrno climits
4577         csetjmp cstddef cstring cwchar cassert cfloat clocale csignal
4578         cstdio ctime cwctype]: Move to..
4579         * include/c_std/std_*: Here.
4580
4581         Alexandre Oliva  <aoliva@redhat.com>
4582         * include/Makefile.am (.PRECIOUS): Add rule.
4583         * include/Makefile.in: Regenerate.
4584
4585 2002-01-16  Benjamin Kosnik  <bkoz@redhat.com>
4586             Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
4587
4588         * include/bits/stl_iterator.h (reverse_iterator::_M_current):
4589         Deuglify, should be current.
4590         (back_insert_iterator::_M_container): Deuglify, should be container.
4591         (front_insert_iterator::_M_container): Same.
4592         (insert_iterator::_M_container): Same.
4593         * testsuite/24_iterators/reverse_iterator.cc: Add check.
4594         * testsuite/24_iterators/back_insert_iterator.cc: Add check.
4595         * testsuite/24_iterators/front_insert_iterator.cc: Same.
4596         * testsuite/24_iterators/insert_iterator.cc: Same.
4597
4598 2002-01-16  Benjamin Kosnik  <bkoz@redhat.com>
4599
4600         * include/bits/locale_facets.h (ctype<char>::classic_table): Make
4601         static.
4602         (ctype<char>::_M_ctable): Make static, change name to _S_ctable.
4603         * config/os/gnu-linux/bits/ctype_noninline.h: Define _S_ctable.
4604         * config/os/solaris/solaris2.7/bits/ctype_noninline.h: Same.
4605         * config/os/solaris/solaris2.6/bits/ctype_noninline.h: Same.
4606         * config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.
4607         * config/os/newlib/bits/ctype_noninline.h: Same.
4608         * config/os/irix/irix6.5/bits/ctype_noninline.h: Same.
4609         * config/os/irix/irix5.2/bits/ctype_noninline.h: Same.
4610         * config/os/hpux/bits/ctype_noninline.h: Same.
4611         * config/os/djgpp/bits/ctype_noninline.h: Same.
4612         * config/os/bsd/netbsd/bits/ctype_noninline.h: Same.
4613         * config/os/bsd/freebsd/bits/ctype_noninline.h: Same.
4614         * config/os/aix/bits/ctype_noninline.h: Same.
4615
4616         Testcase by Dietmar Kühl via Peter Schmid
4617         * testsuite/22_locale/ctype_members_char.cc (char>): Add test for
4618         classic_table().
4619
4620 2002-01-16  Benjamin Kosnik  <bkoz@redhat.com>
4621
4622         * libmath/signbitl.c: Copyright years as list, not range.
4623         * libmath/Makefile.am: Same.
4624         * libmath/Makefie.in: Regenerate.
4625         * libmath/signbit.c: Same.
4626         * libmath/nan.c: Same.
4627         * libmath/copysignf.c: Same.
4628         * libmath/signbitf.c: Same.
4629         * testsuite/22_locale/money_get_members_char.cc: Same.
4630         * testsuite/22_locale/money_get_members_wchar_t.cc: Same.
4631         * testsuite/22_locale/money_put_members_char.cc: Same.
4632         * testsuite/22_locale/money_put_members_wchar_t.cc: Same.
4633         * testsuite/22_locale/time_get_members_char.cc: Same.
4634         * testsuite/22_locale/time_get_members_wchar_t.cc: Same.
4635         * testsuite/22_locale/time_put_members_char.cc: Same.
4636         * testsuite/22_locale/time_put_members_wchar_t.cc: Same.
4637         * testsuite/21_strings/nonmember.cc: Same.
4638         * testsuite/21_strings/compare.cc: Same.
4639         * testsuite/27_io/stringstream.cc: Same.
4640         * testsuite/27_io/stringbuf.cc: Same.
4641         * testsuite/27_io/filebuf.cc: Same.
4642         * testsuite/27_io/ios_manip_basefield.cc: Same.
4643         * testsuite/27_io/ios_manip_fmtflags.cc: Same.
4644         * include/bits/cpp_type_traits.h: Same.
4645         * include/bits/generic_shadow.h: Same.
4646         * include/bits/gslice_array.h: Same.
4647         * include/bits/gslice.h: Same.
4648         * include/bits/indirect_array.h: Same.
4649         * include/bits/slice_array.h: Same.
4650         * include/bits/sstream.tcc: Same.
4651         * include/bits/streambuf_iterator.h: Same.
4652         * include/bits/valarray_array.tcc: Same.
4653         * include/bits/valarray_meta.h: Same.
4654         * include/bits/valarray_array.h: Same.
4655         * config/os/mingw32/bits/ctype_noninline.h: Same.
4656         * config/os/mingw32/bits/ctype_base.h: Same.
4657         * config/os/hpux/bits/ctype_noninline.h: Same.
4658         * config/os/hpux/bits/ctype_base.h: Same.
4659         * config/os/gnu-linux/bits/ctype_noninline.h: Same.
4660         * config/os/gnu-linux/bits/ctype_base.h: Same.
4661         * config/os/generic/bits/ctype_noninline.h: Same.
4662         * config/os/generic/bits/ctype_base.h: Same.
4663
4664         * libsupc++/tinfo.h: Tweaks.
4665
4666 2002-01-15  Benjamin Kosnik  <bkoz@redhat.com>
4667
4668         * testsuite/22_locale/num_put_members_wchar_t.cc (test02): Same.
4669         * testsuite/22_locale/num_put_members_char.cc (test01): Tweak.
4670         * testsuite/22_locale/ctype_members_char.cc: Tweak.
4671
4672 2002-01-15  Benjamin Kosnik  <bkoz@redhat.com>
4673
4674         * include/bits/locale_facets.tcc (num_put::do_put(bool): Fix.
4675         (num_put::do_put(void*)): Fix.
4676         * testsuite/22_locale/num_put_members_char.cc (test02): Add.
4677         * testsuite/22_locale/num_put_members_wchar_t.cc (test02): Add.
4678         * testsuite/22_locale/num_get_members_char.cc (test02): Add
4679         long double, void, bool types.
4680         * testsuite/22_locale/num_get_members_wchar_t.cc (test02): Add.
4681
4682 2002-01-15  Benjamin Kosnik  <bkoz@redhat.com>
4683             Alexandre Oliva  <aoliva@redhat.com>
4684
4685         * libmath/Makefile.am (LINK): Add --tag CC.
4686         * libmath/Makefile.in: Regenerate.
4687
4688 2002-01-15  John David Anglin  <dave@hiauly1.hia.nrc.ca>
4689
4690         * config/os/hpux/bits/ctype_noninline.h: Use __SB_masks for address
4691         of character to attribute mapping table.
4692
4693 2002-01-15  David Billinghurst <David.Billinghurst@riotinto.com>
4694
4695         * testsuite/26_numerics/c99_classification_macros_c.cc
4696         Remove dg-error and dg-excess-errors comments.
4697
4698 2002-01-14  Benjamin Kosnik  <bkoz@redhat.com>
4699
4700         * include/bits/locale_facets.tcc (time_put::put): Correct output
4701         iterator positions.
4702         * testsuite/22_locale/time_put_members_char.cc (test02): Add.
4703         * testsuite/22_locale/time_put_members_wchar_t.cc (test02): Add.
4704         * testsuite/22_locale/time_get_members_wchar_t.cc (test06): Add.
4705         * testsuite/22_locale/time_get_members_char.cc (test06): Add.
4706
4707 2002-01-14  Craig Rodrigues  <rodrigc@gcc.gnu.org>
4708
4709         * docs/html/17_intro/porting-howto.xml: Update filebuf section.
4710
4711 2002-01-14  Paolo Carlini  <pcarlini@unitus.it>
4712             Nathan Myers  <ncm@cantrip.org>
4713
4714         * include/bits/basic_string.h
4715         (replace(__pos, __n1, __s, __n2)): Optimize by avoiding
4716         temporaries (i.e., call _M_replace_safe) when possible.
4717         (replace(__pos, __n, __str)): Call replace(__pos, __n1, __s, __n2).
4718         (replace(__pos, __n1, __s)): Call replace(__pos, __n1, __s , __n2).
4719         (replace(__i1, __i2, __str)): Call replace(__i1, __i2, __s, __n).
4720         (replace(__i1, __i2, __s)): Call replace(__i1, __i2, __s, __n).
4721         (replace(__i1, __i2, __s, __n)): Call replace(__pos1, __n1, __s, __n2).
4722         * include/bits/basic_string.tcc
4723         (replace(__pos1, __n1, __str, __pos2, __n2)): Call
4724         replace(__pos, __n1, __s, __n2).
4725         * testsuite/21_strings/replace.cc (test03): New testcases.
4726
4727         * include/bits/basic_string.h (insert(__pos, __s, __n)):
4728         Adjust comparison wrt overflow.
4729
4730 2002-01-12  Benjamin Kosnik  <bkoz@redhat.com>
4731
4732         * include/Makefile.am (std_headers_rename): New variable.
4733         (install-data-local): Use it.
4734         * include/Makefile.in: Regenerate.
4735
4736 2002-01-12  Benjamin Kosnik  <bkoz@redhat.com>
4737
4738         * include/bits/locale_facets.tcc (money_put::do_put(string):
4739         Correct output iterator value.
4740         * testsuite/22_locale/money_put_members_char.cc (test03): Add.
4741         * testsuite/22_locale/money_put_members_wchar_t.cc: Same.
4742
4743 2002-01-11  Phil Edwards  <pme@gcc.gnu.org>
4744
4745         * include/Makefile.am, include/Makefile.in (stamp-std):  Fix typo from
4746         previous commit.
4747
4748 2002-01-11  Phil Edwards  <pme@gcc.gnu.org>
4749
4750         * include/Makefile.am (std_headers):  Update list with new names.
4751         (stamp-std):  Link to standardized name.
4752         * include/Makefile.in:  Regenerate.
4753
4754         * include/std/algorithm, include/std/bitset, include/std/complex,
4755         include/std/deque, include/std/fstream, include/std/functional,
4756         include/std/iomanip, include/std/ios, include/std/iosfwd,
4757         include/std/iostream, include/std/istream, include/std/iterator,
4758         include/std/limits, include/std/list, include/std/locale,
4759         include/std/map, include/std/memory, include/std/numeric,
4760         include/std/ostream, include/std/queue, include/std/set,
4761         include/std/sstream, include/std/stack, include/std/stdexcept,
4762         include/std/streambuf, include/std/string, include/std/utility,
4763         include/std/valarray, include/std/vector:  Rename to...
4764
4765         * include/std/std_algorithm.h, include/std/std_bitset.h,
4766         include/std/std_complex.h, include/std/std_deque.h,
4767         include/std/std_fstream.h, include/std/std_functional.h,
4768         include/std/std_iomanip.h, include/std/std_ios.h,
4769         include/std/std_iosfwd.h, include/std/std_iostream.h,
4770         include/std/std_istream.h, include/std/std_iterator.h,
4771         include/std/std_limits.h, include/std/std_list.h,
4772         include/std/std_locale.h, include/std/std_map.h,
4773         include/std/std_memory.h, include/std/std_numeric.h,
4774         include/std/std_ostream.h, include/std/std_queue.h,
4775         include/std/std_set.h, include/std/std_sstream.h,
4776         include/std/std_stack.h, include/std/std_stdexcept.h,
4777         include/std/std_streambuf.h, include/std/std_string.h,
4778         include/std/std_utility.h, include/std/std_valarray.h,
4779         include/std/std_vector.h:  ...this.
4780
4781 2002-01-11  Loren Rittle <ljrittle@acm.org>
4782
4783         * include/Makefile.am (extra_target_headers): New list of all
4784         target files built with ad hoc naming rules.
4785         (stamp-*): Handle LN_S failure in manner portable across make
4786         implementations.
4787         (install-data-local): Install header files from human-maintained
4788         file lists and directory components instead of non-robust find.
4789         * include/Makefile.in: Rebuilt.
4790
4791 2002-01-11  Benjamin Kosnik  <bkoz@redhat.com>
4792
4793         * include/bits/locale_facets.tcc (money_get::do_get(string)):
4794         Check for zero-length negative sign before adding it to output
4795         string.
4796         (money_get::do_get(long double)): Return beg.
4797         * testsuite/22_locale/money_get_members_char.cc (test02): Add
4798         iterator checks.
4799         * testsuite/22_locale/money_get_members_wchar_t.cc: Same.
4800
4801 2002-01-10  David Seymour  <seymour_dj@yahoo.com>
4802
4803         libstdc++/5331
4804         * include/bits/locale_facets.h (num_get<>): Return advanced iterator
4805         for _M_extract_float and _M_extract_int
4806         * include/bits/locale_facets.tcc (num_get<>::_M_extract_float)
4807         (num_get<>::_M_extract_int): Likewise, all callers changed
4808         * testsuite/22_locale/num_get_members_char.cc: Testcase
4809
4810 2002-01-09  Paolo Carlini <pcarlini@unitus.it>
4811
4812         * libsupc++/exception (bad_exception): Add comment.
4813         * libsupc++/new (bad_alloc): Same.
4814         * libsupc++/typeinfo (bad_cast, bad_typeid): Same.
4815
4816 2002-01-09  Paolo Carlini <pcarlini@unitus.it>
4817
4818         libstdc++/3150: revert 2001-11-30 commit. DR266 only means
4819         that the destructors should be removed from the descriptions
4820         in the standard: writing them explicitly allows the vtable
4821         heuristic to work. For additional information see:
4822         http://gcc.gnu.org/ml/libstdc++/2002-01/msg00090.html
4823         http://gcc.gnu.org/ml/libstdc++/2002-01/msg00110.html
4824         http://gcc.gnu.org/ml/libstdc++/2002-01/msg00155.html
4825         * libsupc++/exception (bad_exception::~bad_exception()):
4826         Reintroduce declaration.
4827         * libsupc++/new (bad_alloc::~bad_alloc()): Same.
4828         * libsupc++/typeinfo (bad_cast::~bad_cast()): Same.
4829         (bad_typeid::~bad_typeid()): Same.
4830         * libsupc++/eh_exception.cc (bad_exception::~bad_exception()):
4831         Reintroduce definition.
4832         * libsupc++/new_handler.cc (bad_alloc::~bad_alloc()): Same.
4833         * libsupc++/tinfo.cc (bad_cast::~bad_cast()): Same.
4834         (bad_typeid::~bad_typeid()): Same.
4835
4836 2002-01-09  Benjamin Kosnik  <bkoz@redhat.com>
4837
4838         * include/Makefile.am (c_base_srcdir): Remove duplicate '/'.
4839         * include/Makefile.in: Regenerate.
4840
4841 2002-01-09  Bo Thorsen  <bo@suse.co.uk>
4842
4843         * config/cpu/x86-64/bits/cpu_limits.h (__glibcpp_long_bits): Add
4844         definition.
4845
4846 2002-01-08  Benjamin Kosnik  <bkoz@redhat.com>
4847
4848         libstdc++/2913
4849         libstdc++/4879
4850         * include/bits/fstream.tcc (filebuf::_M_really_overflow): Test
4851         return value of _M_file->sync().
4852         (filebuf::showmanyc): Check for is_open.
4853         * include/std/fstream (filebuf::sync): Tweak.
4854         * testsuite/27_io/filebuf.cc: Tweak.
4855
4856 2002-01-08  John Fardo  <jfardo@laurelnetworks.com>
4857             Brad Garcia  <garsh@attbi.com>
4858
4859         * testsuite/27_io/filebuf_members.cc: Add test.
4860
4861 2002-01-07  Benjamin Kosnik  <bkoz@redhat.com>
4862             Craig Rodrigues  <rodrigc@mediaone.net>
4863
4864         libstdc++/5174
4865         * po/Makefile.am (mkinstalldirs): Add.
4866         * po/Makefile.in: Regenerate.
4867
4868 2002-01-07  David Billinghurst  <David.Billinghurst@riotinto.com>
4869
4870         * testsuite_flags.in: Add -fmessage-length=0 to CXXFLAGS *
4871         testsuite/lib/prune.exp: Delete lines ":In function ..."  from
4872         compiler output.
4873         * testsuite/23_containers/map_operators.cc: Remove
4874         dg-excess-errors comment.
4875         * testsuite/23_containers/set_operators.cc: Likewise.
4876
4877 2002-01-06  Paolo Carlini  <pcarlini@unitus.it>
4878
4879         * include/bits/stl_function.h:  Remove two lines of comments;
4880         adjust copyright years.
4881
4882 2002-01-04  Benjamin  Kosnik  <bkoz@redhat.com>
4883
4884         * include/Makefile.am (std_headers): Remove cXXX from list.
4885         (c_base_srcdir): No bits subdirectory.
4886         (c_base_builddir): Same.
4887         (c_base_headers): Adjust names, add ciso646.
4888         (bits_headers): Remove std_xxx.h headers.
4889         * include/Makefile.in: Regenerate.
4890
4891         * include/ext/iterator: Adjust includes.
4892         * include/ext/ropeimpl.h: Same.
4893         * include/ext/stl_hash_fun.h: Same.
4894         * include/ext/algorithm: Same.
4895
4896         * include/backward/bvector.h: Adjust includes.
4897         * include/backward/vector.h: Same.
4898         * include/backward/strstream: Same.
4899         * include/backward/streambuf.h: Same.
4900         * include/backward/stack.h: Same.
4901         * include/backward/set.h: Same.
4902         * include/backward/queue.h: Same.
4903         * include/backward/multiset.h: Same.
4904         * include/backward/multimap.h: Same.
4905         * include/backward/map.h: Same.
4906         * include/backward/list.h: Same.
4907         * include/backward/iterator.h: Same.
4908         * include/backward/iostream.h: Same.
4909         * include/backward/iomanip.h: Same.
4910         * include/backward/fstream.h: Same.
4911         * include/backward/deque.h: Same.
4912         * include/backward/complex.h: Same.
4913
4914         * include/bits/std_algorithm.h: Move to...
4915         * include/std/algorithm: ...here.
4916         * include/bits/std_iosfwd.h, std_locale.h, std_stack.h,
4917         std_bitset.h, std_ios.h, std_map.h, std_stdexcept.h,
4918         std_complex.h, std_iostream.h, std_memory.h, std_streambuf.h,
4919         std_deque.h, std_istream.h, std_numeric.h, std_string.h,
4920         std_fstream.h, std_ostream.h, std_utility.h, std_iterator.h,
4921         std_queue.h, std_valarray.h, std_functional.h, std_limits.h,
4922         std_set.h, std_vector.h, std_iomanip.h, std_list.h, std_sstream.h:
4923         Same.
4924
4925         * include/c_std/bits/std_cassert.h: Move to...
4926         * include/c_std/cassert: Here.
4927         * include/c_std/std_cctype.h, std_cerrno.h, std_cfloat.h,
4928         std_climits.h, std_clocale.h, std_cmath.h, std_csetjmp.h,
4929         std_csignal.h, std_cstdarg.h, std_cstddef.h, std_cstdio.h,
4930         std_cstdlib.h, std_cstring.h, std_ctime.h, std_cwchar.h,
4931         std_cwctype.h: Same.
4932         * include/c_std/cmath: Adjust cmath.tcc include.
4933         * include/c_std/cstdlib: Adjust includes.
4934         * include/c_std/cwchar: Same.
4935         * include/c_std/ctime: Same.
4936         * include/c_std/cstring: Same.
4937         * include/c_std/cstdio: Same.
4938         * include/c_std/bits: Remove directory.
4939
4940         * include/c/bits/std_cassert.h: Move to...
4941         * include/c/cassert: Here.
4942         * include/c/std_cctype.h, std_cerrno.h, std_cfloat.h,
4943         std_climits.h, std_clocale.h, std_cmath.h, std_csetjmp.h,
4944         std_csignal.h, std_cstdarg.h, std_cstddef.h, std_cstdio.h,
4945         std_cstdlib.h, std_cstring.h, std_ctime.h, std_cwchar.h,
4946         std_cwctype.h: Same.
4947         * include/c/bits: Remove directory.
4948
4949         * include/std/cwctype: Remove.
4950         * include/std/cwchar: Remove.
4951         * include/std/ctime: Remove.
4952         * include/std/cstring: Remove.
4953         * include/std/cstdlib: Remove.
4954         * include/std/cstdio: Remove.
4955         * include/std/cstddef: Remove.
4956         * include/std/cstdarg: Remove.
4957         * include/std/csignal: Remove.
4958         * include/std/csetjmp: Remove.
4959         * include/std/cmath: Remove.
4960         * include/std/clocale: Remove.
4961         * include/std/climits: Remove.
4962         * include/std/ciso646: Remove.
4963         * include/std/cfloat: Remove.
4964         * include/std/cerrno: Remove.
4965         * include/std/cctype: Remove.
4966         * include/std/cassert: Remove.
4967
4968         * include/bits/fpos.h: Adjust includes, removing <bits/std_xxx.h>
4969         files and subsituting <xxx>.
4970         * include/bits/valarray_array.h: Same.
4971         * include/bits/stl_uninitialized.h: Same.
4972         * include/bits/stl_alloc.h: Same.
4973         * include/bits/stl_algobase.h: Same.
4974         * include/bits/sstream.tcc: Same.
4975         * include/bits/pthread_allocimpl.h: Same.
4976         * include/bits/ostream.tcc: Same.
4977         * include/bits/localefwd.h: Same.
4978         * include/bits/locale_facets.tcc: Same.
4979         * include/bits/locale_facets.h: Same.
4980         * include/bits/istream.tcc: Same.
4981         * include/bits/char_traits.h: Same.
4982         * include/bits/boost_concept_check.h: Same.
4983         * include/bits/basic_file.h: Same.
4984         * include/std/bitset: Same.
4985         * include/std/complex: Same.
4986         * include/std/fstream: Same.
4987         * include/std/functional: Same.
4988         * include/std/ios: Same.
4989         * include/std/iostream: Same.
4990         * include/std/ostream: Same.
4991         * include/std/sstream: Same.
4992         * include/std/streambuf: Same.
4993         * include/std/string: Same.
4994         * include/std/iterator: Same.
4995         * include/std/valarray: Same.
4996
4997         * src/ios.cc: Adjust includes.
4998         * src/valarray-inst.cc: Same.
4999         * src/string-inst.cc: Same.
5000         * src/stl-inst.cc: Same.
5001         * src/stdexcept.cc: Same.
5002         * src/misc-inst.cc: Same.
5003         * src/localename.cc: Same.
5004         * src/locale-inst.cc: Same.
5005         * src/locale.cc: Same.
5006         * src/limits.cc: Same.
5007         * src/concept-inst.cc: Same.
5008         * src/complex_io.cc: Same.
5009         * src/codecvt.cc: Same.
5010         * src/bitset.cc: Same.
5011         * src/cmath.cc: Same.
5012
5013 2002-01-04  Paolo Carlini  <pcarlini@unitus.it>
5014
5015         * include/bits/stl_tree.h (rb_tree):  Move to...
5016         * include/ext/rb_tree:  ...here, new file.
5017         * include/Makefile.am (ext_headers):  Add new file.
5018         * include/Makefile.in:  Regenerate.
5019         * include/bits/stl_tempbuf.h (get_temporary_buffer + helper,
5020         return_temporary_buffer, struct temporary_buffer):  Move to...
5021         * include/ext/memory:  ...here.
5022         * testsuite/ext/headers.cc:  Include <ext/rb_tree>.
5023         * include/backward/tempbuf.h:  Include <ext/memory>, tweak.
5024         * include/backward/tree.h:  Include <ext/rb_tree), tweak.
5025
5026 2002-01-03  Paolo Carlini  <pcarlini@unitus.it>
5027
5028         * include/bits/stl_numeric.h (power + helpers, iota):  Move to...
5029         * include/ext/numeric:  ...here, new file.
5030         * include/bits/stl_function.h (identity_element, unary_compose,
5031         binary_compose, compose1, compose2, identity, select1st,
5032         select2nd, project1st + helper, project2nd + helper,
5033         constant_void_fun + helper, constant_unary_fun + helper,
5034         costant_binary_fun + helper, constant0, constant1, constant2,
5035         subtractive_rng, mem_fun1, mem_fun1_ref):  Move to...
5036         * include/ext/functional:  ...here, new file.
5037         * include/Makefile.am (ext_headers):  Add new files.
5038         * include/Makefile.in:  Regenerate.
5039         * testsuite/ext/headers.cc:  Include <ext/numeric> and
5040         <ext/functional>.
5041         * include/backward/algo.h:  Include <ext/numeric>, tweak.
5042         * include/backward/function.h:  Include <ext/functional>, tweak.
5043         * include/ext/ropeimpl.h:  Include <ext/numeric>.
5044
5045 2002-01-03  Jeffrey A Law  <law@redhat.com>
5046
5047         * config/os/hpux/bits/os_defines.h: Prefix __strtoll and
5048         __strtoull declarations with __extension__.
5049
5050 2002-01-03  David Billinghurst <David.Billinghurst@riotinto.com>
5051
5052         * testsuite/lib/prune.exp: Correct regular expression for
5053         -ffunction-sections
5054
5055 2002-01-02  Phil Edwards  <pme@gcc.gnu.org>
5056
5057         * include/bits/stl_algo.h (upper_bound, equal_range, binary_search):
5058         Change concept checks, as with lower_bound and PR 2054.
5059         * testsuite/ext/concept_checks.cc:  Expand test to include those.
5060
5061 2002-01-02  Phil Edwards  <pme@gcc.gnu.org>
5062
5063         * include/bits/boost_concept_check.h:  Import some changes from
5064         upsteam (Boost) version.
5065
5066 2002-01-02  Paolo Carlini  <pcarlini@unitus.it>
5067
5068         * include/bits/stl_algobase.h (copy_n + helpers,
5069         lexicographical_compare_3way + helpers):  Move to...
5070         * include/ext/algorithm:  ...here.
5071         * include/bits/stl_uninitialized.h (uninitialized_copy_n +
5072         helpers):  Move to...
5073         * include/ext/memory:  ...here, new file.
5074         * include/Makefile.am (ext_headers):  Add new file.
5075         * include/Makefile.in:  Regenerate.
5076         * testsuite/ext/headers.cc:  Include <ext/memory>.
5077         * include/backward/algobase.h:  Include <ext/memory> and
5078         <ext/algorithm>, tweak.
5079         * include/ext/ropeimpl.h:  Include <ext/memory>, tweak.
5080         * include/ext/stl_rope.h:  Include <ext/memory>, tweak.
5081
5082 2002-01-01  Roger Sayle <roger@eyesopen.com>
5083
5084         * libmath/stubs.c (sinf,cosf): Implement stubs to enable the
5085         equivalent ___builtin__ versions.
5086
5087         * include/c_shadow/bits/std_cmath.h: All __builtin math functions
5088         are available in libstdc++ as the necessary stub implementations
5089         are provided by libmath/stubs.c.
5090
5091 2002-01-01  Jason Thorpe  <thorpej@wasabisystems.com>
5092
5093         * configure.in: Add support for NetBSD cross compiles.
5094         * configure: Regenerate.