OSDN Git Service

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