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