OSDN Git Service

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