OSDN Git Service

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