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