OSDN Git Service

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