ChangeLog revision 117397
12003-07-08  Benjamin Kosnik  <bkoz@redhat.com>
2	      Jerry Quinn  <jlquinn@optonline.net>
3
4	* include/bits/ios_base.h (ios_base::_M_getloc): Return reference
5	to the imbued locale.
6	* include/bits/locale_classes.h
7	(__locale_cache_base,__locale_cache): Declare.
8	(locale,locale::_Impl): Befriend __use_cache.
9	(locale::_Impl::_M_get_cache): New function.
10	(locale::_Impl::_M_install_cache): New function.
11	* include/bits/locale_facets.h (__locale_cache): Declare.
12	(numpunct): Befriend __locale_cache.
13	(__locale_cache_base): New class.
14	(__locale_cache): New class.
15	* include/bits/locale_facets.tcc (__use_cache): New function.
16	(num_put::_M_convert_int,_M_convert_float,do_put): Use it.
17	Use cache data members in place of calls to facet.
18	(num_put::_M_convert_int): Use _M_getloc.
19	(num_put::_M_convert_float): Use _M_getloc.
20	(__locale_cache::__locale_cache(locale&): New.
21	(__locale_cache::__locale_cache(locale&,bool)): New.
22	* src/globals.cc (facet_cache_vec): New.
23	(locale_cache_np_c, locale_cache_np_w): New.
24	* src/locale-inst.cc
25	(__locale_cache<numpunct<char> >): Define.
26	(__locale_cache<numpunct<wchar_t> >): Define.
27	(__use_cache<numpunct<char> >): Define.
28	(__use_cache<numpunct<wchar_t> >): Define.
29	* src/localename.cc (facet_cache_vec): Declare.
30	(locale_cache_np_c, locale_cache_np_w): Declare.
31	(locale::_Impl::~Impl): Destroy caches.
32	(locale::_Impl::Impl):  Initialize cache storage.  Fill in
33	static caches.
34	(locale::_Impl::_M_install_facet):  Expand cache storage.
35
362003-07-04  Jerry Quinn  <jlquinn@optonline.net>
37
38	* include/bits/locale_facets.tcc (__int_to_char): Move common
39        case to the top.
40
412003-07-04  Jerry Quinn  <jlquinn@optonline.net>
42
43	* testsuite/27_io/ostream_inserter_arith.cc (test05, test06):
44        Add missing bool test.
45
462003-07-04  H.J. Lu <hongjiu.lu@intel.com>
47
48	* Makefile.am: Replace PWD with PWD_COMMAND.
49	* Makefile.in: Regenerated.
50	* docs/html/Makefile: Likewise.
51
522003-07-01  Roger Sayle  <roger@eyesopen.com>
53
54	* acinclude.m4 (GLIBCPP_CHECK_STDLIB_SUPPORT): Fix typo in CXXFLAGS.
55	(GLIBCPP_CHECK_MATH_SUPPORT): Likewise.
56	* aclocal.m4: Regenerate.
57	* configure: Regenerate.
58
592003-06-27  Matthias Klose  <doko@debian.org>
60
61	* testsuite/Makefile.am (check-abi, check-abi-verbose): Save
62	output of abi-check in libstdc++-v3-abi.sum.
63	* testsuite/Makefile.in: Regenerate.
64
652003-06-25  Phil Edwards  <pme@gcc.gnu.org>
66
67	Bulk documentation merge (copy) from trunk.
68	* docs/doxygen/filter, docs/doxygen/filter.sed,
69	docs/doxygen/mainpage.html, docs/doxygen/run_doxygen,
70	docs/doxygen/user.cfg.in, docs/html/configopts.html,
71	docs/html/documentation.html, docs/html/explanations.html,
72	docs/html/install.html, docs/html/test.html, docs/html/17_intro/BUGS,
73	docs/html/17_intro/CHECKLIST, docs/html/17_intro/contribute.html,
74	docs/html/20_util/howto.html, docs/html/ext/howto.html,
75	docs/html/ext/sgiexts.html, docs/html/faq/index.html,
76	docs/html/faq/index.txt:  Merge from trunk.
77
782003-06-23  Loren J. Rittle  <ljrittle@acm.org>
79
80	* configure.target (freebsd*): Set abi_baseline_pair.
81	* config/abi/i386-freebsd4/baseline_symbols.txt: Update from 3.2
82	(at or near first release) to 3.3.
83	* config/abi/i386-freebsd5/baseline_symbols.txt: New file.
84	* config/abi/alpha-freebsd5/baseline_symbols.txt: New file.
85	* config/abi/sparc-freebsd5/baseline_symbols.txt: New file.
86
872003-06-21  Eric Botcazou  <ebotcazou@libertysurf.fr>
88
89	PR bootstrap/11272
90	Backport from mainline:
91
92	2003-03-09  Paolo Carlini  <pcarlini@unitus.it>
93
94	* config/io/basic_file_stdio.cc: include <unistd.h>.
95
962003-06-20  Matthias Klose  <doko@debian.org>
97
98	* configure.target: Set try_cpu to target_cpu for existing
99 	baseline files.
100
1012003-06-19  Andreas Jaeger  <aj@suse.de>
102
103	* configure.in: Pass MULTISUBDIR to testsuite/Makefile.
104	* configure: Regenerated.
105
1062003-06-19  Andreas Jaeger  <aj@suse.de>
107
108	Backport from mainline:
109	2003-06-18  Andreas Jaeger  <aj@suse.de>
110
111	* testsuite/Makefile.am (new-abi-baseline): Create baseline
112	directory.
113	(baseline_file): Use baseline_dir.
114	(baseline_dir): New.
115	(mkinstalldirs): New.
116
117	* acinclude.m4: Rename baseline_file to baseline_dir, strip
118	filename from baseline_dir.
119
120	* testsuite/Makefile.in: Regenerated.
121	* Makefile.in: Regenerated.
122	* aclocal.m4: Regenerated.
123	* configure: Regenerated.
124
125	2003-06-17  Benjamin Kosnik  <bkoz@redhat.com>
126
127	* config/abi/i486-linux-gnu/baseline_symbols.txt: Update to 3.3.0.
128
129	2003-06-16  Benjamin Kosnik  <bkoz@redhat.com>
130
131	* Makefile.am (check-abi): Move...
132	(new-abi-baseline): Move...
133	* testsuite/Makefile.am: ...here.
134	(new-abi-baseline): Conditionalize.
135	(check-abi): Conditionalize.
136	(check-abi-verbose): New.
137	* Makefile.in: Regenerate.
138	* testsuite/Makefile.in: Regenerate.
139	* configure.in: Consolidate testsuite configure bits.
140	* acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Same.
141	* configure: Regenerate.
142	* aclocal.m4: Regenerate.
143	* testsuite/abi_check.cc: Add --check-verbose.
144	Only output detailed information if --check-verbose.
145
146
147	2003-06-16  Andreas Jaeger  <aj@suse.de>
148
149        * testsuite/abi_check.cc: Create summary report.
150
151	2003-06-16  Andreas Jaeger  <aj@suse.de>
152
153	* acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Make
154	check-abi multilib aware.
155	* aclocal.m4: Regenerate.
156	* configure: Regenerate.
157
158	2003-06-16  Benjamin Kosnik  <bkoz@redhat.com>
159            Andreas Jaeger  <aj@suse.de>
160
161	* configure.target: Set x86_64 abi_baseline pair correctly.
162
163
164	2003-06-13  Benjamin Kosnik  <bkoz@redhat.com>
165
166	* config/abi/i686-pc-linux-gnu: To..
167	* config/abi/i486-linux-gnu: ...this.
168	* config/abi/alphaev67-unknown-linux-gnu: To..
169	* config/abi/alpha-linux-gnu: ...this.
170	* config/abi/ia64-unknown-linux-gnu: To...
171	* config/abi/ia64-linux-gnu: ...this.
172	* config/abi/x86_64-unknown-linux-gnu: To...
173	* config/abi/x86_64-linux-gnu: ...this.
174	* config/abi/i386-unknown-freebsd4: To...
175	* config/abi/i386-freebsd4: ...this.
176	* configure.target: abi_baseline_triplet to abi_baseline_pair.
177	Simplify cpu bits so that abi_baseline_pair can use the same
178	cpu configuration.
179	* acinclude.m4: Same.
180	* aclocal.m4: Regenerate.
181	* configure.in: Can't get enable_abi_check to yes unless native.
182	* configure: Regenerate.
183
1842003-06-11  Benjamin Kosnik  <bkoz@redhat.com>
185
186	* configure.in (libtool_VERSION): To 5:5:0.
187	* configure: Regenerated.
188
1892003-06-07  Paolo Carlini  <pcarlini@unitus.it>
190
191	PR libstdc++/11095
192	* include/bits/istream.tcc (operator>>(basic_istream&, _CharT*)):
193	Deal with width() smaller than zero.
194	* include/bits/ostream.tcc (operator<<(basic_ostream&, _CharT),
195	operator<<(basic_ostream&, char), operator<<(basic_ostream&,
196	const _CharT*), operator<<(basic_ostream<_CharT, _Traits>&,
197	const char*), operator<<(basic_ostream<char, _Traits>&,
198	const char*), operator<<(basic_ostream, const basic_string&)): Likewise.
199
2002003-06-06  Nathan Myers  <ncm-nospam@cantrip.org>
201
202	* include/bits/stl_iterator.h (reverse_iterator::reverse_iterator()):
203	Apply DR235: default constructor default-initializes data member.
204	Instantiated on a pointer type, the member has to end up equal
205	to zero.
206
2072003-06-02  Andrew Pinski  <pinskia@physics.uc.edu>
208
209	PR libstdc++/9815
210	* config/cpu/i386/atomicity.h (__exchange_and_add): add intel
211	asm case to asm.
212	* config/cpu/i486/atomicity.h (__exchange_and_add): Likewise.
213	(__atomic_add): likewise.
214
2152003-06-02  Richard Kreckel  <Richard.Kreckel@GiNaC.DE>
216
217	PR libstdc++/11062
218	* config/cpu/mips/atomicity.h:  Change __attribute__ ((unused)) to
219	__attribute__ ((__unused__)).
220	* config/os/aix/atomicity.h:  Likewise.
221
2222003-05-27  Steve Ellcey  <sje@cup.hp.com>
223
224	* config/os/hpux/os_defines.h: Define _LIBUNWIND_STD_ABI if we are
225	on IA64 HP-UX.
226	* libsupc++/eh_throw.cc: Don't call _Unwind_Resume_or_Rethrow if
227	_LIBUNWIND_STD_ABI is set.
228
2292003-05-21  Danny Smith  <dannysmith@users.sourceforge.net>
230
231	* libmath/stubs.c (hypot, hypotf, hypotl): Don't divide by
232	zero.
233	Update copyright year.
234
2352003-05-21  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
236
237	* include/bits/stl_alloc.h (__default_alloc_template::_S_chunk_alloc):
238	Cast via void* to avoid -Wcast-align warnings.
239	(__default_alloc_template::_S_refill): Likewise.
240
2412003-05-20  Gabriel Dos Reis <gdr@integrable-solutions.net>
242
243	PR libstdc++/10689
244	* include/std/std_complex.h (pow): Tidy.
245
2462003-05-17  Nathan Myers  <ncm@cantrip.org>
247
248	* include/bits/streambuf.tcc (__copy_streambufs): Rewrote.
249
2502003-05-15  Phil Edwards  <pme@gcc.gnu.org>
251
252	* testsuite/Makefile.am:  Properly quote LD_RUN_PATH.
253	* testsuite/Makefile.in:  Regenerate.
254
2552003-05-14  Loren J. Rittle  <ljrittle@acm.org>
256
257	* testsuite/thread/pthread4.cc: Tweak test.
258
2592003-05-13  Release Manager
260
261	* GCC 3.3 Released.
262
2632003-05-06  Phil Edwards  <pme@gcc.gnu.org>
264
265	* docs/html/faq/index.html (3.10):  Add note about mips atomicity.h.
266	* docs/html/faq/index.txt:  Regenerated.
267
2682003-05-02 Joel Sherrill  <joel.sherrill@OARcorp.com>
269	   Loren J. Rittle <ljrittle@acm.org>
270	   Martin v. Loewis  <martin@v.loewis.de>
271
272	libstdc++/10556
273	* config/cpu/i386/atomicity.h: New file.
274
2752003-05-02  Richard Henderson  <rth@redhat.com>
276
277	PR c++/10570
278	* libsupc++/eh_catch.cc (__cxa_begin_catch): Handle foreign exceptions.
279	(__cxa_end_catch): Likewise.
280	* libsupc++/eh_throw.cc (__cxa_rethrow): Likewise.  Use
281	_Unwind_Resume_or_Rethrow.
282	* libsupc++/eh_personality.cc (empty_exception_spec): New.
283	(PERSONALITY_FUNCTION): Don't ignore terminate or catch-all
284	for _UA_FORCE_UNWIND.  Honor empty filter spec for foreign
285	exceptions.  Don't push terminate/unexpected to cxa functions.
286	(__cxa_call_unexpected): Remove foreign exception fixmes.
287
2882003-05-01  Benjamin Kosnik  <bkoz@redhat.com>
289
290	Revert __locale_cache.
291	* include/bits/locale_facets.tcc (num_put::_M_convert_int): Remove
292	__locale_cache.
293	(num_put::_M_convert_int): Same.
294	(num_put::do_put(bool)): Same.
295	(__locale_cache::_M_init): Same.
296	(__locale_cache::_S_callback): Same.
297	* include/bits/locale_facets.h (__locale_cache_base): Remove.
298	(__locale_cache): Remove.
299	* include/bits/basic_ios.h (basic_ios::init): Remove __locale_cache.
300	(basic_ios::_M_cache_locale): Same.
301	* include/bits/basic_ios.tcc: Same.
302	* include/bits/ios_base.h: Same.
303	(ios_base::_M_cache): Remove.
304	* src/locale-inst.cc: Same.
305	* src/ios.cc: Same.
306	* src/globals.cc: Same.
307
308	* config/linker-map.gnu: Same.
309
3102003-05-01  Benjamin Kosnik  <bkoz@redhat.com>
311
312	* configure.in (libtool_VERSION): To 5:4:0.
313	* configure: Regenerated.
314
315	* testsuite/abi_check.cc (check_version): Update known versions.
316	Check added symbols for version_name != base version. Add missing
317	symbols to incompatible list.
318
319	* config/linker-map.gnu: Fixup for __basic_file::showmanyc_helper.
320
3212003-05-01  Benjamin Kosnik  <bkoz@redhat.com>
322
323	* acinclude.m4 (GLIBCPP_EXPORT_FLAGS): Remove -Winline.
324	* aclocal.m4: Regenerated.
325	* configure: Regenerated.
326
3272003-05-01  Paolo Carlini  <pcarlini@unitus.it>
328            Nathan Myers  <ncm@cantrip.org>
329
330	Backport from mainline fix of 2003-03-28.
331	PR libstdc++/9533
332	* include/bits/fstream.tcc (basic_filebuf<>::open): Don't
333	call underflow().
334	(basic_filebuf<>::showmanyc): Use the information provided
335	by codecvt and __basic_file<>::showmanyc_helper to implement
336	a non-trivial showmanyc.
337	* config/io/basic_file_stdio.h
338	(__basic_file<>::showmanyc_helper): New, declare.
339	* config/io/basic_file_stdio.cc
340	(__basic_file<>::showmanyc_helper): Define.
341	(__basic_file<>::_M_open_mode): Don't set O_NONBLOCK.
342	(__basic_file<char>::open): Don't call fcntl().
343	* acinclude.m4 (GLIBCPP_CHECK_S_ISREG_OR_S_IFREG,
344	GLIBCPP_CHECK_POLL): New macros.
345	* configure.in: Call here.
346	* acconfig.h: Add #undefs for the corresponding symbols.
347	* aclocal.m4: Regenerate.
348	* configure: Regenerate.
349	* config.h.in: Regenerate.
350
3512003-04-29  Phil Edwards  <pme@gcc.gnu.org>
352
353	Bulk documentation merge (copy) from trunk.
354	* docs/doxygen/Intro.3, docs/doxygen/TODO, docs/doxygen/mainpage.html,
355	docs/doxygen/run_doxygen, docs/doxygen/user.cfg.in,
356	docs/html/configopts.html, docs/html/debug.html,
357	docs/html/documentation.html, docs/html/explanations.html,
358	docs/html/install.html, docs/html/17_intro/howto.html,
359	docs/html/17_intro/porting.html, docs/html/18_support/howto.html,
360	docs/html/19_diagnostics/howto.html, docs/html/27_io/howto.html,
361	docs/html/ext/howto.html, docs/html/ext/sgiexts.html,
362	docs/html/faq/index.html, docs/html/faq/index.txt:
363	Merge from trunk.
364
3652003-04-28  Nathan Myers  <ncm@cantrip.org>
366
367	Move some basic_string members out of line because
368	they are too big to reasonably be inline.
369	* include/bits/basic_string.h
370	(assign(const basic_string&, size_type, size_type),
371	assign(const _CharT*, size_type),
372	insert(size_type, const basic_string&, size_type, size_type),
373	insert(size_type, const _CharT*, size_type),
374	replace(size_type, size_type, const _CharT*, size_type)):
375	Move from here to...
376	* include/bits/basic_string.tcc: ...here.
377
3782003-04-28  Benjamin Kosnik  <bkoz@redhat.com>
379
380	PR libstdc++/10132
381	* include/std/std_fstream.h (basic_filebuf::is_open): Add throw()
382	exception specifications.
383	(basic_filebuf::close): Same.
384	(basic_filebuf::_M_destroy_internal_buffer): Same.
385	(basic_filebuf): Remove __res_type typedef.
386	* include/std/std_streambuf.h:
387	(basic_streambuf::_M_pback_destroy): Same.
388	* src/fstream.cc: Same.
389	* include/bits/fstream.tcc
390	(basic_filebuf::_M_convert_to_external): Simplify.
391	(basic_filebuf::seekoff): Use has_facet	before use_facet.
392	(basic_filebuf::close): Add exception specification of throw().
393
3942003-04-25  Ranjit Mathew  <rmathew@hotmail.com>
395            Phil Edwards  <pme@gcc.gnu.org>
396
397	* testsuite_flags.in: Guard against the possibility
398	of having "xgcc" as a part of a folder name in the
399	path to the GCC build folder.
400	* testsuite/Makefile.am: Likewise.
401	* testsuite/Makefile.in: Regenerated.
402
4032003-04-24  Richard Sandiford  <rsandifo@redhat.com>
404
405	* src/localename.cc (__gnu_cxx::facet_vec): Correct types.
406
4072003-04-24  Benjamin Kosnik  <bkoz@redhat.com>
408
409	* config/locale/generic/c_locale.h: Fix placement for old parser.
410
4112003-04-23  Benjamin Kosnik  <bkoz@redhat.com>
412
413        * config/locale/generic/c_locale.h (__convert_from_v): Use
414        attribute unused.
415
4162003-04-23  Phil Edwards  <pme@gcc.gnu.org>
417
418	* include/bits/istream.tcc (putback, unget, sync, tellg, seekg):
419	Comment and change to comply with DR 60 and the effect on gcount().
420	* include/std/std_istream.h:  Update comments.
421
4222003-04-22  Loren J. Rittle  <ljrittle@acm.org>
423
424	* testsuite/27_io/filebuf_members.cc (test_07):  Adjust timing.
425
4262003-04-22  Jerry Quinn  <jlquinn@optonline.net>
427	    Benjamin Kosnik <bkoz at redhat dot com>
428
429	* include/bits/basic_ios.h (ios_base::Init::_S_ios_create):
430        Declare friend.
431	(basic_ios::init, basic_ios::_M_cache_locale): Add locale
432        cache argument.
433	* include/bits/basic_ios.tcc (basic_ios::init): Pass cache to
434        _M_cache_locale.
435	(basic_ios::_M_cache_locale): Use placement new if cache is
436        provided.  Track the distinction in iword(0).
437	* include/bits/locale_facets.tcc
438        (__locale_cache::_S_callback): Only delete cache if iword(0)
439        is 0, i.e. not static.
440	* src/globals.cc: Allocate space for __locale_cache objects.
441	* src/ios.cc (__gnu_cxx): Declare extern __locale_cache objects
442	for standard wide and narrow stream objects.
443	(ios_base::Init::_S_ios_create): Use them.
444
4452003-04-18  Loren J. Rittle  <ljrittle@acm.org>
446
447	* config/os/bsd/freebsd/ctype_inline.h:  Support _M_table
448	when so installed.
449
450	* docs/html/17_intro/porting.texi (_GLIBCPP_USE_C99_CHECK): New macro.
451	(_GLIBCPP_USE_C99_DYNAMIC): New macro.
452	(_GLIBCPP_USE_C99_LONG_LONG_CHECK): New macro.
453	(_GLIBCPP_USE_C99_LONG_LONG_DYNAMIC): New macro.
454	* config/os/bsd/freebsd/os_defines.h (_GLIBCPP_USE_C99_CHECK):
455	New macro.
456	(_GLIBCPP_USE_C99_DYNAMIC): New macro.
457	(_GLIBCPP_USE_C99_LONG_LONG_CHECK): New macro.
458	(_GLIBCPP_USE_C99_LONG_LONG_DYNAMIC): New macro.
459	* include/c_std/std_cstdlib.h: Use new macros.
460	* include/c_std/std_cstdio.h: Use new macros.
461	* include/c_std/std_cwchar.h: Use new macros.
462
4632003-04-17  Benjamin Kosnik  <bkoz@redhat.com>
464
465	PR libstdc++/9555
466	* include/bits/ostream.tcc: Catch all exceptions for formatted
467	output, instead of std::exception and derivatives.
468	* include/bits/istream.tcc: Same.
469
4702003-04-17  Andreas Tobler  <toa@pop.agri.ch>
471            Benjamin Kosnik  <bkoz@redhat.com>
472
473        * config/os/generic/ctype_inline.h: Fix.
474
4752003-04-17  Andreas Tobler  <toa@pop.agri.ch>
476
477	* configure.target (_cpu_incdir_fullpath): Solaris 2.9 uses
478	solaris includes, not generic.
479
4802003-04-15  Benjamin Kosnik  <bkoz@redhat.com>
481            Paolo Carlini  <pcarlini@unitus.it>
482
483	PR libstdc++/9423
484	* docs/html/27_io/howto.html
485	('The buffering is screwing up my program!'): Explain that
486	opening counts as an I/O operation.
487
4882003-04-15  Andreas Tobler  <a.tobler@schweiz.ch>
489
490        * testsuite/thread/pthread1.cc: Enable for darwin test.
491        * testsuite/thread/pthread2.cc: Same.
492        * testsuite/thread/pthread3.cc: Same.
493        * testsuite/thread/pthread4.cc: Same.
494        * testsuite/thread/pthread5.cc: Same.
495        * testsuite/thread/pthread6.cc: Same.
496
4972003-04-15  Loren J. Rittle  <ljrittle@acm.org>
498
499	* include/bits/concept_check.h: Fix multi-line comment.
500	* testsuite/17_intro/headers.cc (dg-options): Add -Wall -Wsystem-header
501	when target is *-*-freebsd*.
502
503	libstdc++/7680
504	* include/c_std/std_cmath.h (__gnu_cx::__c99_binding): New namespace.
505	Populate it with multiple legal ways to obtain the C99 float
506	transcendentals.  Use them instead of direct global reference.
507	(C99 FP capture): Guard usage with _GLIBCPP_USE_C99_FP_MACROS_DYNAMIC.
508	* docs/html/17_intro/porting.texi
509	(_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_CHECK): New macro.
510	(_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_DYNAMIC): New macro.
511	(_GLIBCPP_USE_C99_FP_MACROS_DYNAMIC): New macro.
512	* config/os/bsd/freebsd/os_defines.h
513	(_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_CHECK): New macro.
514	(_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_DYNAMIC): New macro.
515	* testsuite/26_numerics/c_math_dynamic.cc: New file.
516
517	* testsuite/26_numerics/c99_classification_macros_c.cc: Add XFAIL.
518
5192003-04-14  M. Warner Losh  <imp@bsdimp.com>
520
521	* include/std/std_fstream.h: Add required typename.
522
5232003-04-12  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
524
525	* os/hpux/ctype_inline.h: Replace with gnu-linux version.
526
5272003-04-10  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
528
529	* basic_file_stdio.cc (__basic_file<char>::close): Don't flush stream
530	twice.  Always set _M_cfile to 0 when stream was open.
531
5322003-04-04  Jerry Quinn  <jlquinn@optonline.net>
533
534	PR libstdc++/10276
535	* src/ios.cc (ios_base::_M_init): Remove _M_callbacks
536	initialization.
537
5382003-03-31  Paolo Carlini  <pcarlini@unitus.it>
539
540	* include/ext/stdio_filebuf.h
541	(stdio_filebuf::stdio_filebuf(int, openmode, bool, size_t),
542	stdio_filebuf::stdio_filebuf(__c_file*, openmode, size_t):
543	_M_buf_size_opt == 0 means only "not to use an allocated buffer"
544	since a stack-based buffer is used for small values of the size_t
545	parameter.
546	* include/bits/fstream.tcc (basic_filebuf::_M_really_overflow).
547	If _M_buf_size != 0 flush out the buffer (any kind, stack-based too).
548	* testsuite/ext/stdio_filebuf_2.cc: New testfile.
549
5502003-03-25  Paolo Carlini  <pcarlini@unitus.it>
551	    Petur Runolfsson  <peturr02@ru.is>
552
553	PR libstdc++/10097
554	* src/fstream.cc (basic_filebuf<char>::_M_underflow_common,
555	basic_filebuf<wchar_t>::_M_underflow_common):
556	if (gptr() < egptr()) return *gptr().
557	* testsuite/27_io/filebuf_virtuals.cc (test15): Add.
558
559	* testsuite/27_io/filebuf_members.cc (test_04): Minor
560	changes: unlink fifo before making it, fix spelling error.
561
5622003-03-22  Loren J. Rittle  <ljrittle@acm.org>
563
564	* config/os/hpux/ctype_noninline.h (ctype<char>::classic_table):
565	Correct return value.
566
5672003-03-21  Jerry Quinn  <jlquinn@optonline.net>
568
569	PR libstdc++/5730
570	* include/bits/c++config (_GLIBCPP_FAST_MATH): Define.
571        * include/std/std_complex.h (norm):  Use faster,
572        less accurate computation for builtin float types under --fast-math.
573
5742003-03-21  Paolo Carlini  <pcarlini@unitus.it>
575
576	PR libstdc++/10167
577	* config/locale/ieee_1003.1-2001/codecvt_specializations.h
578	(do_out, do_unshift, do_in): qualify 'ok', 'error', 'partial',
579	'noconv' with codecvt_base::.
580
5812003-03-19  Alexandre Oliva  <aoliva@redhat.com>
582
583	* src/strstream.cc (strstreambuf::overflow): Make sure operands of
584	min and max have the same type.
585	* include/bits/basic_string.tcc (append, rfind, compare): Likewise.
586
5872003-03-17  Benjamin Kosnik  <bkoz@redhat.com>
588
589	* testsuite/Makefile.am (CLEANFILES): Add tmp*.
590	* testsuite/Makefile.in: Regenerate.
591	* testsuite/27_io/filebuf_members.cc: Consistently name tmp files.
592	Cleanups.
593
5942003-03-17  Petur Runolfsson  <peturr02@ru.is>
595
596        PR libstdc++/9964
597        * include/bits/fstream.tcc (basic_filebuf::close):
598        Always close file, even when write fails.
599        * testsuite/27_io/filebuf_members.cc (test_07):  New test.
600
6012003-03-17  Danny Smith  <dannysmith@users.sourceforge.net>
602
603	* libsupc++/Makefile.am (LTCOMPILE): Add $(AM_CFLAGS) $(CFLAGS).
604	* libsupc++/Makefile.in: Regenerate.
605
6062003-03-09  Paolo Carlini  <pcarlini@unitus.it>
607
608	PR libstdc++/9988
609	* include/bits/fstream.tcc (overflow): don't write EOF to file.
610	* testsuite/27_io/filebuf_virtuals.cc (test14): Add.
611
6122003-03-09  Paolo Carlini <pcarlini@unitus.it>
613	    Petur Runolfsson  <peturr02@ru.is>
614
615	PR libstdc++/9424
616	* include/bits/streambuf.tcc (__copy_streambufs): Use
617	sgetn-sputn only when sputn cannot fail, otherwise fall back
618	to safe snextc-sputc.
619	* testsuite/27_io/streambuf_members.cc (test11, test12): Add.
620
6212003-03-08  Jerry Quinn  <jlquinn@optonline.net>
622
623	PR libstdc++/9561
624	* include/bits/basic_ios.h (_M_setstate): New.
625	* include/bits/ostream.tcc (operator<<): Use it.
626	* include/bits/istream.tcc (operator>>): Use it.
627	* include/std/std_ostream.h (operator<<): Make friends.
628	* include/std/std_istream.h (operator>>): Make friends.
629	* testsuite/27_io/ostream_exception.cc,
630	testsuite/27_io/istream_exception.cc: New tests.
631
6322003-03-08  Paolo Carlini  <pcarlini@unitus.it>
633
634	PR libstdc++/9182
635	* include/bits/fstream.tcc (_M_really_overflow): Check
636	for _M_convert_to_external possible failures.
637	* include/std/std_fstream.h (sync): Check _M_really_overflow
638	return value and return -1 in case of failure.
639	* testsuite/27_io/filebuf_virtuals.cc (test12, test13): Add.
640
641	* include/bits/fstream.tcc (_M_convert_to_external):
642	Set __elen to zero if codecvt::out eventually fails.
643
6442003-03-08  Paolo Carlini  <pcarlini@unitus.it>
645
646	PR libstdc++/9826
647	* include/bits/istream.tcc (operator>>(_CharT*),
648	operator>>(basic_string&), ws): Pass a char_type to __ctype.is.
649	* testsuite/27_io/stringstream.cc (test02): Add.
650
651	* include/bits/istream.tcc (operator>>(_CharT*)):
652	Assign a char_type to *__s.
653
6542003-03-08  Jerry Quinn  <jlquinn@optonline.net>
655
656	* src/ios.cc (ios_base::ios_base): Correct order of _M_word and
657	_M_word_size initialization.
658
6592003-03-07  Benjamin Kosnik  <bkoz@redhat.com>
660
661	* config/linker-map.gnu: Tweak.
662
6632003-03-07  Petur Runolfsson  <peturr02@ru.is>
664
665	PR libstdc++/9817
666	* include/bits/locale_facets.tcc
667	(collate::do_compare, collate::do_transform):
668	Handle nul characters in input.
669
6702003-03-07  Jerry Quinn  <jlquinn@tiamat>
671
672	* include/bits/streambuf_iterator.h (_M_put): Set _M_failed if
673	sputn fails.
674	* testsuite/27_io/ostream_fail.cc: New test.
675
6762003-03-07  Matthias Klose  <doko@debian.org>
677
678	* Makefile.am (AM_MAKEFLAGS): Also pass gxx_include_dir.
679	FLAGS_TO_PASS: Set to AM_MAKEFLAGS
680	* Makefile.in: Regenerate.
681	* libsupc++/Makefile.am: Express glibcppinstalldir in terms
682	of gxx_include_dir.
683	AM_MAKEFLAGS: Pass gxx_include_dir.
684	* libsupc++/Makefile.in: Regenerate.
685
6862003-03-06  Jerry Quinn  <jlquinn@optonline.net>
687
688	* src/ios.cc (ios_base::_M_init): Remove _M_word_size.
689	(ios_base::ios_base): Set _M_word, _M_word_size.
690	(ios_base::~ios_base): Remove redundant test.
691	* testsuite/27_io/ios_base_storage.cc (test03): New.
692
6932003-03-05  Jerry Quinn  <jlquinn@optonline.net>
694
695	* testsuite/27_io/ios_base_storage.cc (test02): Set exception
696	mask.  Test setting small-numbered pword and iword slots.  Test
697	behavior at limit of numeric_limits::max.  Check that values are
698	still good after failures.
699
7002003-03-05  Carlo Wood  <carlo@alinoe.com>
701
702        * include/bits/ios_base.h(ios_base::Init::_S_initialized()): Added
703	_S_initialized() in order to allow debugging libraries to detect
704	when the std streams are initialized from an overloaded operator
705	new.
706
7072003-03-04  Benjamin Kosnik  <bkoz@redhat.com>
708
709	* config/linker-map.gnu: Version.
710
7112003-03-04  Jerry Quinn  <jlquinn@optonline.net>
712
713	* include/bits/basic_ios.h:  Update copyright.
714	(_M_cache_locale): New.
715	(_M_cache_facets): Deprecate.
716	* include/bits/basic_ios.tcc (basic_ios::copyfmt): Set up locale
717        caching.
718	(basic_ios::imbue,basic_ios::init): Use _M_cache_locale.
719	(basic_ios::_M_cache_locale): New.
720	(basic_ios::_M_cache_facets): Deprecate.
721	* include/bits/ios_base.h (__locale_cache_base): Declare.
722	(ios_base::_M_cache): Define.
723	* include/bits/locale_facets.h
724	(__locale_cache_base,__locale_cache<_CharT>): New classes.
725	* include/bits/locale_facets.tcc
726	(num_put::_M_convert_int): Use locale cache literal string,
727	grouping flag, thousands separator.
728	(num_out::_M_convert_float): Use locale cache grouping flag, decimal
729        point, thousands separator.
730	(__locale_cache<_CharT>::_M_init,__locale_cache<_CharT>::_S_callback):
731        New.
732	* src/locale-inst.cc
733	(__locale_cache<_CharT>::_S_callback, __locale_cache<char>,
734	__locale_cache<wchar_t>): New.
735
7362003-03-04  Jerry Quinn  <jlquinn@optonline.net>
737
738	* src/ios.cc (ios_base::_M_grow_words): Don't delete _M_word on
739	new failure.  Throw exception if badbit and exception mask when ix
740	>= numeric_limits<int>::max().
741
7422003-03-03  Benjamin Kosnik  <benjamin@redhat.com>
743
744	* config/linker-map.gnu (GLIBCPP_3.2.3): New.
745	Add new symbols.
746	* testsuite/abi_check.cc: Update.
747
7482003-03-03 Jerry Quinn  <jlquinn@optonline.net>
749           Benjamin Kosnik  <benjamin@redhat.com>
750
751	* include/bits/locale_facets.h (__num_base): Add _S_atoms_out.
752	Add indexes into this array.
753	(__num_base::_S_atoms): To _S_atoms_in.
754	(num_put::_M_insert): Rename to _M_pad.
755	(num_put::_M_convert_int): Adjust remove __mod, __modl arguments.
756	(num_put::_M_widen_int): Rename to _M_group_int.
757	(num_put::_M_widen_float): Rename to _M_group_float.
758	* include/bits/locale_facets.tcc (__int_to_char): New inline
759	function and adapter functions.
760	(num_put::_M_group_int): Streamline.
761	(num_put::_M_group_float): Streamline.
762	(num_put::_M_convert_int): Remove unused parameter names. Choose
763	large enough buffer for text.  Use __int_to_char instead of
764	__convert_from_v.  Formatted text is now at the end of the buffer.
765	(num_put::_M_convert_float): Preliminary fixups.
766	* src/locale-inst.cc (__convert_from_v<long long>): Add ifdef.
767	(__int_to_char<unsigned long long>): Same.
768	(__int_to_char<char, unsigned long>): New.
769	(__int_to_char<char, unsigned long long>): New.
770	(__int_to_char<wchar_t, unsigned long>): New.
771	(__int_to_char<wchar_t, unsigned long long>): New.
772	* src/locale.cc: Add _S_atoms_in, _S_atoms_out.
773
7742003-02-28  Benjamin Kosnik  <bkoz@redhat.com>
775
776	* testsuite/27_io/ios_base_storage.cc (main): Call
777	set_memory_limits.
778
7792003-02-28  Brad Spencer  <spencer@infointeractive.com>
780            Nathan Myers  <ncm@cantrip.org>
781
782	* src/Makefile.am (stamp-debug): Clean.
783	* src/Makefile.in: Regenerate.
784
7852002-02-28  Loren J. Rittle  <ljrittle@acm.org>
786
787	* src/Makefile.am: Resolve non-portable use of $<.
788	* src/Makefile.in: Rebuilt.
789
7902002-02-28  Phil Edwards  <pme@gcc.gnu.org>
791
792	* configure.in (GLIBCPP_ENABLE_CXX_FLAGS):  Do not pass arguments,
793	let the defaults work.
794	* configure:  Regenerate.
795
7962002-02-28  Phil Edwards  <pme@gcc.gnu.org>
797
798	* acinclude.m4:  Remove trailing whitespace.
799	(GLIBCPP_ENABLE_CXX_FLAGS):  Fix.
800	* aclocal.m4, configure:  Regenerate.
801
8022003-02-27  Benjamin Kosnik  <bkoz@redhat.com>
803
804        * configure.in (GLIBCPP_ENABLE_DEBUG): Default to none.
805	Call GLIBCPP_ENABLE_DEBUG_FLAGS.
806        * acinclude.m4 (GLIBCPP_ENABLE_DEBUG): GLIBCPP_BUILD_DEBUG, new
807        conditional if --enable-debug is yes. Rework.
808	(GLIBCPP_ENABLE_DEBUG_FLAGS): New.
809        * aclocal.m4: Regenerate.
810	* libio/Makefile.am: Remove DEBUG_FLAGS.
811	* libio/Makefile.in: Regenerate.
812	* libsupc++/Makefile.am: Remove DEBUG_FLAGS.
813	* libsupc++/Makefile.in: Regenerate.
814	* docs/html/configopts.html: Add docs for --enable-debug,
815	--enable-debug-flags.
816
8172003-02-27  Benjamin Kosnik  <bkoz@redhat.com>
818
819	Correct dependency tracking, build warts.
820	* configure.in: Correct repeated AC_OUTPUT thrashing by
821	config-ml.in
822	* configure: Regenerate.
823	* include/Makefile.am (stamp-target): Stamp in top_builddir.
824	* include/Makefile.in: Regenerate.
825	* src/Makefile.am (codecvt_members.cc): New rule.
826	(collate_members.cc): Same.
827	(ctype_members.cc): Same.
828	(messages_members.cc): Same.
829	(monetary_members.cc): Same.
830	(numeric_members.cc): Same.
831	(time_members.cc): Same.
832	(c++locale.cc): Same.
833	(basic_file.cc): Same.
834	* src/Makefile.in: Regenerate.
835	* acinclude.m4 (CCTYPE_CHAR_CC): Remove.
836	(CCCODECVT_CC): Don't link, AC_SUBST.
837	(CCOLLATE_CC): Same.
838	(CCTYPE_CC): Same.
839	(CMESSAGES_CC): Same.
840	(CMONEY_CC): Same.
841	(CNUMERIC_CC): Same.
842	(CTIME_CC): Same.
843	(CLOCALE_CC): Same.
844	* aclocal.m4: Regenerate.
845
846	* src/Makefile.am (libstdc___la_LIBADD): Use top_builddir
847	for convenience libraries.
848	(version_arg): Rename linker.map to libstdc++.ver.
849	(libstdc___la_DEPENDENCIES): Remove linker.map, add
850	libstdc++-symbol.ver as a dependency.
851	(libstdc++-symbol.ver): Add rule.
852	* acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Change LINKER_MAP to
853	SYMVER_MAP. Don't link, AC_SUBST.
854
855	* include/Makefile.am (target_headers_noinst): New.
856	(stamp-target): Add CLOCALE_INTERNAL_H.
857	* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Don't link
858	CLOCALE_INTERNAL_H, AC_SUBST.
859	* config/locale/gnu/c_locale.cc: Modify c++locale_internal.h
860	include.
861	* config/locale/gnu/time_members.cc: Same.
862	* config/locale/gnu/numeric_members.cc: Same.
863	* config/locale/gnu/monetary_members.cc: Same.
864	* config/locale/gnu/messages_members.cc: Same.
865	* config/locale/gnu/ctype_members.cc: Same.
866	* config/locale/gnu/collate_members.cc: Same.
867	* config/locale/gnu/codecvt_members.cc: Same.
868	* config/locale/generic/codecvt_members.cc: Remove.
869
8702003-02-27  Jerry Quinn  <jlquinn@optonline.net>
871
872        * config/locale/generic/messages_members.h (messages::messages):
873	Remove name from unused parameter.
874
8752003-02-27  Benjamin Kosnik  <bkoz@redhat.com>
876
877	* include/Makefile.am (stamp-std-precompile): Add rule.
878	* include/Makefile.in: Regenerated.
879
8802003-02-27  Benjamin Kosnik  <bkoz@redhat.com>
881
882	* include/bits/c++config (_GLIBCPP_EXTERN_TEMPLATE): Define.
883	* include/bits/basic_ios.tcc: Guard use of extern template.
884	* include/std/std_iomanip.h: Same.
885	* include/bits/streambuf.tcc: Same.
886	* include/bits/stl_alloc.h: Same.
887	* include/bits/locale_facets.tcc: Same.
888	* include/bits/ostream.tcc: Same.
889	* include/bits/istream.tcc: Same.
890	* include/bits/fstream.tcc: Same.
891	* include/bits/basic_string.tcc: Same.
892
8932003-02-25  Paolo Carlini  <pcarlini@unitus.it>
894
895	PR libstdc++/9825
896	* src/fstream.cc
897	(basic_filebuf<char/wchar_t>::_M_underflow_common): When
898	__bump is true (uflow), always increment the read pointer
899	(_M_in_cur) before returning successfully.
900	* testsuite/27_io/filebuf_virtuals.cc (test11): Add.
901
9022003-02-25  Paolo Carlini  <pcarlini@unitus.it>
903
904	* include/std/std_sstream.h (str()): the size of the
905	current string may be different from the initial one
906	whenever _M_out_end > _M_out_beg.
907	* testsuite/27_io/stringbuf_members.cc (test07): Add.
908
9092003-02-21  Phil Edwards  <pme@gcc.gnu.org>
910
911	* config/cpu/generic/atomicity.h (_Atomic_add_mutex):  Fix declaration.
912	(_GLIBCPP_NEED_GENERIC_MUTEX):  Define for this file.
913	(_Atomic_add_mutex_once, __gthread_atomic_add_mutex_once):  Declare
914	when we don't have static mutex initialization.
915	(__exchange_and_add):  Use _Atomic_add_mutex_once.
916	* src/misc-inst.cc:  Definitions of all the above.
917	* config/linker-map.gnu:  Also export locking symbols needed for the
918	generic atomicity.h case.
919
9202003-02-20  Alexandre Oliva  <aoliva@redhat.com>
921
922	* configure.in: Propagate ORIGINAL_LD_FOR_MULTILIBS to
923	config.status.
924	* configure: Rebuilt.
925
9262003-02-19  Phil Edwards  <pme@gcc.gnu.org>
927
928	PR libstdc++/9582
929	* include/bits/stl_alloc.h:  Remove all traces of assert().
930
9312003-02-18  Paolo Carlini  <pcarlini@unitus.it>
932
933	PR libstdc++/9582
934	* include/bits/stl_alloc.h (__pool_alloc::allocate): Remove assert.
935
9362003-02-17  Paolo Carlini  <pcarlini@unitus.it>
937
938	* src/locale-inst.cc: Do not include <cassert>.
939	* src/locale.cc: Likewise.
940
9412003-02-17  Paolo Carlini  <pcarlini@unitus.it>
942
943	PR libstdc++/9169
944	* include/bits/fstream.tcc (_M_convert_to_external):
945	Deal correctly with noconv, as prescribed by 27.8.1.4,p8.
946	* testsuite/27_io/filebuf_virtuals.cc (test10): Add.
947
9482003-02-13  Paolo Carlini  <pcarlini@unitus.it>
949
950	* include/bits/ostream.tcc (sentry::sentry): Improve
951	performance-wise the fix for libstdc++/9563.
952
9532003-02-13  Paolo Carlini  <pcarlini@unitus.it>
954
955	PR libstdc++/9320
956	* include/ext/stdio_filebuf.h
957	(stdio_filebuf(int, std::ios_base::openmode, bool, int_type),
958	stdio_filebuf(std::__c_file*, std::ios_base::openmode, int_type)):
959	Change to take a __size parameter of type size_t, not
960	of type (template parameter dependent) int_type.
961	* src/ios.cc (ios_base::Init::_S_ios_create): Change type of
962	size vars to size_t.
963	* testsuite/ext/stdio_filebuf.cc: Add.
964
9652003-02-12  Paolo Carlini  <pcarlini@unitus.it>
966
967	PR libstdc++/9563
968	* include/bits/ostream.tcc (sentry::sentry): Check
969	the state of the stream after the preparation.
970	* testsuite/27_io/ostream_sentry.cc: Add.
971
9722003-02-11  Scott Snyder  <snyder@fnal.gov>
973
974	PR libstdc++/9659
975	* include/bits/fstream.tcc (seekoff): Avoid operator+
976	for pos_type.
977
9782003-02-11  Paolo Carlini  <pcarlini@unitus.it>
979            Petur Runolfsson  <peturr02@ru.is>
980
981	PR libstdc++/9318
982	* include/bits/streambuf.tcc (__copy_streambufs):
983	Don't conditionalize the copy to __testput.
984	* testsuite/27_io/streambuf_members.cc (test09, test10): Add.
985
9862003-02-08  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
987
988	* hppa/atomicity.h (__Atomicity_lock<__inst>::_S_atomicity_lock):
989	Correct alignment.
990	(__exchange_and_add, __atomic_add): Use PA 2.0 ordered store to reset
991	lock.
992
9932003-02-07  Paolo Carlini  <pcarlini@unitus.it>
994
995	PR libstdc++/9548
996	Implement resolution of DR 231 (Ready)
997	* include/bits/locale_facets.h (__num_base::_S_format_float):
998	Return void.
999	* src/locale.cc (__num_base::_S_format_float): Implement
1000	resolution of DR 231.
1001	* include/bits/locale_facets.tcc (num_put::_M_convert_float):
1002	Tweak uses. Check for negative precision.
1003	* testsuite/22_locale/num_put_members_char.cc (test06): Add
1004	* testsuite/22_locale/num_put_members_wchar_t.cc (test06): Ditto.
1005
10062003-02-07  Paolo Carlini  <pcarlini@unitus.it>
1007
1008	* testsuite/27_io/filebuf_virtuals.cc (test08): Fix for
1009	unsigned char platforms.
1010
10112003-02-05  Benjamin Kosnik  <bkoz@redhat.com>
1012
1013	* include/bits/locale_facets.tcc (time_put::do_put): Use __write.
1014	(money_put::do_put): Same.
1015
10162003-02-05  Jerry Quinn  <jlquinn@optonline.net>
1017
1018	* include/bits/ios_base.h (ios_base): Document reserved storage.
1019
1020	* include/bits/locale_facets.h:	(struct __pad): Comment on
1021	implementation.
1022	(__verify_grouping): Same.
1023	(__add_grouping): Same.
1024	* include/bits/locale_facets.tcc (__verify_grouping): Move
1025	comments to declaration.
1026	(__add_grouping): Same.
1027
1028	* include/bits/locale_facets.tcc:
1029	(__write<_CharT, _OutIter>): New function.
1030	(__write<_CharT>): New function specialization.
1031	(num_put::_M_insert): Remove explicit loop over iterator.  Use
1032	__write.
1033	(num_put::_M_widen_float): Remove __basefield.
1034	(num_put::_M_widen_int): Move __basefield to within grouping block.
1035
1036	* include/bits/streambuf_iterator.h: Include <streambuf>.
1037	(ostreambuf_iterator::_M_put): Add.
1038
10392003-02-05  Paolo Carlini  <pcarlini@unitus.it>
1040
1041	* testsuite/26_numerics/valarray_name_lookup.cc: Fix typo.
1042
10432003-02-05  Paolo Carlini  <pcarlini@unitus.it>
1044
1045	PR libstdc++/9439, PR libstdc++/9425
1046	* config/io/basic_file_stdio.cc
1047	(__basic_file<char>::seekoff, seekpos): Return -1L if
1048	fseek fails.
1049	* include/bits/fstream.tcc (basic_filebuf::seekoff):
1050	Check _M_file.seekoff return value; always return
1051	pos_type(off_type(-1)) in case of failure.
1052	(basic_filebuf::pbackfail): Check this->seekoff return
1053	value and return traits_type::eof() in case of failure.
1054	* testsuite/27_io/filebuf_virtuals.cc (test09): Add.
1055
10562003-02-05  Benjamin Kosnik  <bkoz@redhat.com>
1057
1058        * testsuite/26_numerics/valarray_name_lookup.cc: Fix.
1059
10602003-02-05  Benjamin Kosnik  <bkoz@redhat.com>
1061
1062	* configure.in (libtool_VERSION): To 5:3:0.
1063	* configure: Regenerated.
1064
10652003-02-04  Paolo Carlini  <pcarlini@unitus.it>
1066
1067	PR libstdc++/9538
1068	* include/bits/streambuf.tcc (sputbackc): Access
1069	this->gptr()[-1] only if _M_in_beg < _M_in_cur.
1070	* testsuite/27_io/filebuf_virtuals.cc (test08): Add.
1071
10722003-02-04  Paolo Carlini  <pcarlini@unitus.it>
1073
1074	PR libstdc++/9507
1075	* include/bits/fstream.tcc (open): If the 'ate' repositioning
1076	operation fails, calls close _and_ returns a null pointer
1077	to indicate failure (27.8.1.3,4).
1078	* testsuite/27_io/filebuf_members.cc (test_06): Add.
1079
10802003-02-04  Petur Runolfsson  <peturr02@ru.is>
1081
1082	* testsuite/27_io/filebuf_members.cc (test_04): Remove exit(0).
1083
10842003-02-04  Joseph S. Myers  <jsm@polyomino.org.uk>
1085
1086	* docs/html/17_intro/porting.texi: Update to GFDL 1.2.
1087	* docs/html/17_intro/porting.html: Regenerate.
1088
10892003-02-03  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
1090
1091	PR libstdc++/9234
1092	* include/bits/valarray_meta.h (_UnBase::operator[]): Apply unary
1093	operator.
1094
1095	* include/bits/valarray_meta.h (__not_equal_to): Use != instead of ==.
1096
1097	* testsuite/26_numerics/valarray_operators.cc: New test.
1098
10992003-01-28  Nathan Sidwell  <nathan@codesourcery.com>
1100
1101	PR c++/9433
1102	* libsupc++/tinfo.cc (__vmi_class_type_info::__do_dyncast): Cope
1103	with bases which are very ambiguous.
1104
11052003-01-28  Danny Smith  <dannysmith@users.sourceforge.net>
1106
1107	* src/Makefile.am (CONFIG_CXXFLAGS): Reverse order of
1108	@EXTRA_CXX_FLAGS@ @SECTION_FLAGS@.
1109	* libsupc++/Makefile.am (CONFIG_CXXFLAGS): Likewise.
1110	* src/Makefile.in: Regenerate.
1111	* libsupc++/Makefile.in: Regenerate.
1112
11132003-01-27  Alexandre Oliva  <aoliva@redhat.com>
1114
1115	* acinclude.m4 (glibcpp_toolexeclibdir): Instead of
1116	$(MULTISUBDIR), use `$CC -print-multi-os-directory`, unless
1117	version_specific_libs is enabled.
1118	* aclocal.m4, configure: Rebuilt.
1119
11202003-01-26  Christian Cornelssen  <ccorn@cs.tu-berlin.de>
1121
1122	* include/Makefile.am (install-data-local): Prepend
1123	$(DESTDIR) to destination paths in all (un)installation
1124	commands.  Use ${c_base_builddir} and ${std_builddir}
1125	as destination subdirectories to achieve consistency with
1126	preceding mkinstalldirs commands.  No effect because both
1127	variables contain "." only.
1128	* include/Makefile.in: Regenerate.
1129
11302003-01-23  Phil Edwards  <pme@gcc.gnu.org>
1131
1132	Bulk documentation merge (copy) from trunk.
1133	* docs/doxygen/tables.html, docs/doxygen/user.cfg.in,
1134	docs/html/configopts.html, docs/html/debug.html,
1135	docs/html/documentation.html, docs/html/17_intro/howto.html,
1136	docs/html/19_diagnostics/howto.html, docs/html/ext/sgiexts.html:
1137	Merge from trunk.
1138
11392003-01-23  Petur Runolfsson  <peturr02@ru.is>
1140
1141	PR libstdc++/9322
1142	* include/std/std_streambuf.h
1143	(basic_streambuf::basic_streambuf,
1144	basic_streambuf::~basic_streambuf,
1145	basic_streambuf::getloc, basic_streambuf::imbue):
1146	Remove _M_buf_locale_init use.
1147	* include/bits/fstream.tcc (basic_filebuf::imbue):  Likewise
1148	* testsuite/27_io/filebuf_virtuals.cc (test08):  Add.
1149	* testsuite/27_io/streambuf_members.cc (test08):  Add.
1150	* testsuite/27_io/stringbuf_virtuals.cc (test08):  Add.
1151
11522003-01-23  Benjamin Kosnik  <bkoz@redhat.com>
1153
1154	Revert include ordering.
1155	* config/locale/generic/c_locale.h: Add include guards.
1156	* config/locale/gnu/c_locale.h: Same.
1157	* include/bits/locale_classes.h: Remove cctype include.
1158	* include/std/std_iosfwd.h: Add c++locale.h, cctype includes.
1159	* include/std/std_fstream.h: Remove streambuf include.
1160	* include/std/std_sstream.h: Remove streambuf include.
1161
11622003-01-23  Benjamin Kosnik  <bkoz@redhat.com>
1163
1164	Match 3.2.0 ABI.
1165	* include/bits/stl_alloc.h: Revert.
1166
1167	* include/bits/codecvt.h: Revert.
1168	* config/locale/gnu/codecvt_members.cc: Revert.
1169	* src/codecvt.cc: Revert.
1170	* src/localename.cc: Revert.
1171
1172	* include/bits/ios_base.h (ios_base::~ios_base): Revert.
1173
1174	* config/linker-map.gnu: Mostly match 3_2-branch file.
1175
11762003-01-22  Benjamin Kosnik  <bkoz@redhat.com>
1177
1178	* include/bits/locale_facets.h: Move non-facet classes requiring
1179	<string> to...
1180	* include/bits/locale_classes.h: New.
1181	* include/bits/Makefile.am (bits_headers_src): Add locale_classes.h.
1182	* include/bits/Makefile.in: Regenerate.
1183
1184	* include/bits/locale_facets.tcc (__convert_from_v): Move to...
1185	* config/locale/gnu/c_locale.h: ...here.
1186	* config/locale/generic/c_locale.h: Same.
1187
1188	* include/bits/locale_facets.tcc: Move declarations to...
1189	* include/bits/locale_facets.h: ...here.
1190	* include/bits/basic_ios.h: Tweak includes accordingly.
1191	* include/std/std_sstream.h: Add streambuf include.
1192	* include/std/std_fstream.h: Ditto.
1193	* include/std/std_locale.h: Add locale_classes.h include.
1194	* include/std/std_iosfwd.h: Tweak.
1195	* src/concept-inst.cc: Add iterator include.
1196
1197	* config/linker-map.gnu: Specify __cxa functions, mark __cxa_dyn_*
1198	bits as unexported in the future.
1199
12002003-01-15  Benjamin Kosnik  <bkoz@redhat.com>
1201
1202	* acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Substitute
1203	GLIBCPP_TEST_WCHAR_T if building wchar_t bits in the library.
1204	* aclocal.m4: Regenerate.
1205	* configure: Regenerate.
1206	* testsuite/Makefile.am (all-local): Add conditional rule to
1207	generate testsuite_wchar_t.
1208	* testsuite/Makefile.in: Regenerate.
1209	* testsuite/lib/libstdc++-v3-dg.exp
1210	(libstdc++-v3-list-sourcefiles): Remove wchar_t files if
1211	testsuite_wchar_t is not present in the build directory.
1212	* testsuite/libstdc++-v3.dg/dg.exp: Add -g -O2 to DEFAULT_CXXFLAGS.
1213	Remove setulimit bits.
1214	* testsuite/26_numerics/complex_value.cc: Set to noopts.
1215	* testsuite/Makefile.am (CLEANFILES): Add.
1216	* testsuite/Makefile.in: Regenerate.
1217
12182003-01-15  Benjamin Kosnik  <bkoz@redhat.com>
1219
1220	Renames, namespaces for testsuite utilities.
1221	* testsuite/testsuite_hooks.h: Put into namespace __gnu_cxx_test.
1222	(gnu_allocator_tracker): Rename to allocation_tracker.
1223	(gnu_new_allocator): Rename to tracker_alloc.
1224	(__set_testsuite_memlimit): Rename to set_memory_limits.
1225	(gnu_assignment_operator): Rename to assignment_operator.
1226	(gnu_destructor): Rename to destructor.
1227	(gnu_copy_tracker): Rename to copy_tracker.
1228	(gnu_char, gnu_int, gnu_long): Rename to pod_char, pod_int, pod_long.
1229	(run_tests_wrapped_locale): New.
1230	(run_tests_wrapped_env): New.
1231	* testsuite/testsuite_hooks.cc: Same.
1232	(class locale_data): Add.
1233	(class enviornment_variable): Add.
1234	(class not_found): Add.
1235	* testsuite/testsuite_allocator.h: Same.
1236	* testsuite/testsuite_allocator.cc: Same.
1237	* testsuite/23_containers/deque_ctor.cc
1238	(test_copy_ctor_exception_safety): Change gnu_allocator_tracker to
1239	allocation_tracker.
1240	Change gnu_new_allocator to tracker_alloc.
1241	Change gnu_counting_struct to counter.
1242	Change gnu_copy_tracker to copy_tracker.
1243	Change gnu_copy_constructor to copy_constructor.
1244	Change gnu_assignment_operator to assignment_operator.
1245	Inject.
1246	* testsuite/23_containers/vector_capacity.cc: Same.
1247	* testsuite/23_containers/vector_ctor.cc (test01): Same.
1248	* testsuite/23_containers/list_modifiers.cc: Change
1249	gnu_copy_tracker to copy_tracker.
1250	* testsuite/21_strings/ctor_copy_dtor.cc (main): Change
1251	__set_testsuite_memlimit to set_memory_limits.
1252	* testsuite/21_strings/insert.cc (main): Same.
1253	* testsuite/27_io/filebuf.cc: Change gnu_char to pod_char.
1254	* testsuite/27_io/stringstream.cc: Same.
1255	* testsuite/27_io/stringbuf.cc: Same.
1256	* testsuite/27_io/streambuf.cc: Same.
1257	* testsuite/27_io/ostream.cc: Same.
1258	* testsuite/27_io/istream.cc: Same.
1259	* testsuite/27_io/fstream.cc: Same.
1260	* testsuite/lib/libstdc++-v3-dg.exp
1261	(libstdc++-v3-list-sourcefiles): Additionally handle files two and
1262	three levels deeper in glob patterns.
1263
12642003-01-15  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1265
1266	* config/os/hpux/os_defines.h (_GLIBCPP_GTHREAD_USE_WEAK): Define for
1267	__hppa__.
1268
12692003-01-10  Benjamin Kosnik  <bkoz@redhat.com>
1270	    Sysoltsev Slawa  <Vyatcheslav.Sysoltsev@intel.com>
1271
1272	PR libstdc++/9269
1273	* include/std/std_fstream.h (basic_filebuf::uflow): Declare.
1274	(basic_filebuf::underflow): Declare.
1275	Move definitions.
1276
12772003-01-07  Benjamin Kosnik  <bkoz@redhat.com>
1278
1279	PR libstdc++/8707
1280	* Makefile.am (distclean-multi): Fix.
1281	* Makefile.in: Regenerate.
1282
12832003-01-06  Benjamin Kosnik  <bkoz@redhat.com>
1284
1285	* include/bits/locale_facets.h (messages): Move ctor, dtor
1286	definitions to..
1287	(__timepunct): Same.
1288	* config/locale/gnu/messages_members.h (messages): Add dtor, ctor
1289	definitions. Conditionalize for GNU systems.
1290	* config/locale/generic/messages_members.h (messages): Add dtor, ctor
1291	definitions.
1292	* config/locale/gnu/time_members.h (messages): New. Add dtor, ctor
1293	definitions. Conditionalize for GNU systems.
1294	* config/locale/generic/time_members.h (messages): New. Add dtor, ctor
1295	definitions.
1296	* include/bits/localefwd.h (locale::facet::_S_c_name): Add.
1297	* src/locale.cc: Define.
1298	* src/localename.cc (locale::_Impl::_Impl(facet**, size_t, bool):
1299	Use it.
1300	* config/locale/gnu/time_members.h: Use it.
1301	* config/locale/gnu/messages_members.h: Use it.
1302	* config/linker-map.gnu: Add locale::facets details.
1303	* include/Makefile.am (target_headers_extra): Add time_members.h.
1304	* include/Makefile.in: Regenerate.
1305	* acinclude.m4: Export CTIME_H.
1306	* aclocal.m4: Regenerate.
1307	* configure: Regnerate.
1308
13092003-01-06  Paolo Carlini  <pcarlini@unitus.it>
1310
1311	* src/codecvt.cc
1312        (codecvt<char, char, mbstate_t>::do_in, do_out):
1313        Tweak parameters to avoid unused parameter warnings.
1314
13152003-01-06  Paolo Carlini  <pcarlini@unitus.it>
1316
1317	PR libstdc++/9151
1318	* include/bits/locale_facets.cc (num_put::_M_convert_float):
1319	Limit __prec to digits10 + 2, not digits10 + 1, taking into
1320	account the possibility of %{g,G} conversion specifiers
1321	inside _S_format_float.
1322	* testsuite/27_io/ostream_inserter_arith.cc (test06): Add.
1323
13242003-01-06  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1325
1326	* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init,
1327	libstdc++-v3-list-sourcefiles): Additionally handle files one
1328	level deeper in glob patterns.
1329
1330	* testsuite/27_io/istream_extractor_arith.cc: Delete, split...
1331	* testsuite/27_io/istream_extractor_arith/01.cc,
1332	testsuite/27_io/istream_extractor_arith/02.cc,
1333	testsuite/27_io/istream_extractor_arith/03.cc,
1334	testsuite/27_io/istream_extractor_arith/06.cc,
1335	testsuite/27_io/istream_extractor_arith/07.cc,
1336	testsuite/27_io/istream_extractor_arith/08.cc,
1337	testsuite/27_io/istream_extractor_arith/09.cc,
1338	testsuite/27_io/istream_extractor_arith/10.cc,
1339	testsuite/27_io/istream_extractor_arith/11.cc,
1340	testsuite/27_io/istream_extractor_arith/12.cc,
1341	testsuite/27_io/istream_extractor_arith/13.cc: ... to new files.
1342	* testsuite/27_io/istream_extractor_arith/12.cc: Add XFAIL for
1343	sparc*-*-solaris2*.
1344
13452003-01-05  Paolo Carlini <pcarlini@unitus.it>
1346
1347	PR libstdc++/9168
1348	* src/codecvt.cc
1349	(codecvt<char, char, mbstate_t>::do_in, do_out):
1350	Implement the resolution of DR19 (TC).
1351	* testsuite/22_locale/codecvt_members_char_char.cc
1352	(test01): Tweak.
1353
13542002-12-29  Phil Edwards  <pme@gcc.gnu.org>
1355
1356	* include/std/std_bitset.h:  Better comments.
1357
13582002-12-29  Phil Edwards  <pme@gcc.gnu.org>
1359
1360	* include/std/std_bitset.h (_Base_bitset::_M_do_left_shift,
1361	_Base_bitset::_M_do_right_shift): Expect a non-zero shift.
1362	(bitset::operator<<=, bitset::operator>>=):  When shifting more bits
1363	than are in the bitset, zero memory rather than segfault.
1364	(operator>>(basic_istream,bitset):  Only call setstate once, after
1365	all work has been done.
1366
1367	* testsuite/23_containers/bitset_members.cc (test03):  New test.
1368	* testsuite/23_containers/bitset_shift.cc (test02):  New test.
1369
13702002-12-28  Joseph S. Myers  <jsm@polyomino.org.uk>
1371
1372	* docs/html/17_intro/porting.texi: Use @copying.
1373	* docs/html/17_intro/porting.html: Regenerate.
1374
13752002-12-23  Danny Smith  <dannysmith@users.sourceforge.net>
1376
1377	* config/io/basic_file_stdio.cc (__basic_file::_M_open_mode):
1378	Don't use O_NONBLOCK if it is not defined.
1379	(__basic_file::open): Don't use fcntl either.
1380
13812002-12-19  Paolo Carlini  <pcarlini@unitus.it>
1382
1383	PR libstdc++/8949
1384	* include/std/std_limits.h
1385	(struct numeric_limits<short>,
1386	struct numeric_limits<unsigned short>,
1387	struct numeric_limits<int>,
1388	struct numeric_limits<unsigned int>,
1389	struct numeric_limits<long>,
1390	struct numeric_limits<unsigned long>,
1391	struct numeric_limits<long long>,
1392	struct numeric_limits<unsigned long long>): According
1393	to 18.2.1.2,53 and 18.2.1.5,1 is_iec559 shall be false.
1394	* testsuite/18_support/numeric_limits.cc: Add test04.
1395
13962002-12-18  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1397
1398	* testsuite/23_containers/vector_capacity.cc (test03): Move ...
1399	* testsuite/23_containers/vector_resize.cc: ...here as a new file.
1400	Pass in -lmalloc for irix6.
1401	* testsuite/27_io/ios_base_storage.cc: Pass in -lmalloc for irix6.
1402
14032002-12-11  Paolo Carlini  <pcarlini@unitus.it>
1404
1405	PR libstdc++/8887
1406	* config/locale/generic/time_members.cc
1407	(__timepunct<char>::_M_initialize_timepunct): Fix typos
1408	in _M_date_format and _M_date_era_format string literals.
1409
14102002-12-10  Mark Mitchell  <mark@codesourcery.com>
1411
1412	* libsupc++/cxxabi.h (__cxa_bad_cast): Declare it.
1413	(__cxa_bad_typeid): Likewise.
1414	(__cxa_atexit): Likewise.
1415	(__cxa_finalize): Likewise.
1416
14172002-12-09  Gabriel Dos Reis  <gdr@integrable-solutions.net>
1418
1419	* include/bits/slice_array.h (slice_array<>::operator=): Fix typo.
1420
14212002-12-09  Mark Mitchell  <mark@codesourcery.com>
1422
1423	* libsupc++/cxxabi.h (__cxa_pure_virtual): Declare it.
1424
14252002-12-05  Benjamin Kosnik  <bkoz@redhat.com>
1426
1427	* testsuite/abi_check.cc: Add GLIBCPP_3.2.2.
1428
14292002-12-02  Paolo Carlini  <pcarlini@unitus.it>
1430
1431	* include/bits/basic_string.h (compare(const basic_string&)):
1432        Fully qualify min() with std::.
1433
14342002-12-02  Benjamin Kosnik  <bkoz@redhat.com>
1435
1436	* configure.in (libtool_VERSION): Update to 5:2:0.
1437	* configure: Regenerate.
1438
14392002-12-02  Paolo Carlini  <pcarlini@unitus.it>
1440
1441	* include/bits/basic_string.tcc
1442	(basic_string::append(const basic_string&, size_type,
1443	size_type), basic_string::compare(size_type, size_type,
1444	const basic_string&), basic_string::compare(size_type,
1445	size_type, const basic_string&, size_type, size_type),
1446	basic_string::compare(const _CharT*), basic_string::
1447	compare(size_type, size_type, const _CharT*),
1448	basic_string::compare(size_type, size_type, const _CharT*,
1449	size_type), _S_string_copy(const basic_string&, _CharT*,
1450	typename _Alloc::size_type)): Fully qualify min() with std::.
1451
14522002-12-02  Paolo Carlini  <pcarlini@unitus.it>
1453
1454	* include/bits/basic_string.tcc
1455	(basic_string::_S_construct(_InIter, _InIter, const _Alloc&,
1456	forward_iterator_tag)): Delay the declaration of __dnew,
1457	fully qualify distance() with std::.
1458	(basic_string::_M_replace_safe): Fully qualify distance()
1459	with std::.
1460
14612002-11-28  Phil Edwards  <pme@gcc.gnu.org>
1462
1463	PR libstdc++/8716
1464	* testsuite/21_strings/ctor_copy_dtor.cc (test05):  Also test
1465	the NULL-pointer, zero-size case.
1466
14672002-11-28  Jonathan Wakely  <redi@gcc.gnu.org>
1468
1469	* docs/html/faq/index.html: Add tip about a namespace for extensions.
1470
14712002-11-28  Paolo Carlini  <pcarlini@unitus.it>
1472            Nathan Myers  <ncm@cantrip.org>
1473
1474	* src/localename.cc
1475	(locale::_Impl::_Impl(const char*, size_t)):
1476	Improve previous fix for the strtok vs MT issue.
1477
14782002-11-28  Paolo Carlini  <pcarlini@unitus.it>
1479
1480	* config/locale/gnu/c_locale.cc (locale::_S_categories):
1481	Reorder the categories to match that of glibc's setlocale(LC_ALL, ""))
1482	* config/locale/generic/c_locale.cc (locale::_S_categories): Ditto.
1483	* testsuite/22_locale/ctor_copy_dtor.cc (test04): Tweak.
1484
14852002-11-25  Benjamin Kosnik  <bkoz@redhat.com>
1486
1487	* testsuite/abi_check.cc: Add CXXABI_1.2.1 as compatible.
1488	* config/linker-map.gnu: Version __cxa_guard_acquire,
1489	__cxa_guard_release, __cxa_guard_abort in CXXABI_1.2.1.
1490
14912002-11-25  Paolo Carlini  <pcarlini@unitus.it>
1492            Nathan Myers  <ncm@cantrip.org>
1493
1494	* src/localename.cc
1495	(locale::_Impl::_Impl(const char*, size_t)):
1496	Avoid strtok for thread safety.
1497
14982002-11-25  Stephen M. Webb  <stephen@bregmasoft.com>
1499
1500	* testsuite/testsuite_allocator.h: New file.
1501	* testsuite/testsuite_allocator.cc: New file.
1502	* testsuite/Makefile.am: Added testsuite_allocator to test library.
1503	* testsuite/testsuite_hooks.h: Added more detailed tracker objects
1504	gnu_copy_constructor, gnu_assignment_operator, and gnu_destructor.
1505	* testsuite/testsuite_hooks.cc: Added new static objects definitions.
1506	* testsuite/23_containers/vector_capacity.cc: Added reserve() tests.
1507	* testsuite/23_containers/vector_ctor.cc: Added a plethora of tests.
1508	* testsuite/23_containers/deque_ctor.cc: Added a slew of new tests.
1509
15102002-11-25  Mark Mitchell  <mark@codesourcery.com>
1511
1512	* libsupc++/Makefile.am (sources): Add guard.cc.
1513	* libsupc++/Makefile.in: Regenerated.
1514	* libsupc++/cxxabi.h (__cxa_guard_acquire): New function.
1515	(__cxa_guard_release): Likewise.
1516	(__cxa_guard_abort): Likewise.
1517	* libsupc++/guard.cc: New file.
1518
15192002-11-25  Wolfgang Bangerth  <bangerth@ticam.utexas.edu>
1520
1521	* include/std/std_complex.h
1522	(operator<<(basic_ostream&, const complex&)): Prefer 'x'
1523	to "x" for efficiency sake.
1524	* src/locale.cc (locale::locale(const char*)): Ditto.
1525
15262002-11-24  Paolo Carlini  <pcarlini@unitus.it>
1527
1528	* src/locale.cc (locale::locale(const char*)):
1529	Trivial cosmetic tweaks.
1530
15312002-11-22  Laszlo Ersek  <erseklaszlo@chello.hu>
1532            Paolo Carlini  <pcarlini@unitus.it>
1533
1534	PR libstdc++/8645
1535	* include/bits/stl_tree.h (_Rb_tree_rebalance_for_erase):
1536	Don't check that __w->_M_left != 0 and __w->_M_right != 0
1537	when they can't be otherwise.
1538
15392002-11-21  Phil Edwards  <pme@gcc.gnu.org>
1540
1541	* docs/html/documentation.html:  Fix broken/thinko'd URL.
1542
15432002-11-21  Phil Edwards  <pme@gcc.gnu.org>
1544
1545	* docs/doxygen/run_doxygen:  Tighter search expression for sed.
1546	* docs/doxygen/stdheader.cc:  Handle the case of good headers.
1547
15482002-11-21  Phil Edwards  <pme@gcc.gnu.org>
1549
1550	* acinclude.m4:  Uniform formatting.
1551	* configure.in:  Warn when generic atomicity.h is used.
1552	* configure.target:  Fix comment.
1553	* aclocal.m4, configure:  Regenerate.
1554
15552002-11-21  Phil Edwards  <pme@gcc.gnu.org>
1556
1557	* include/bits/streambuf.tcc (basic_streambuf::sputbackc):  Prefix
1558	"this->" to call to pbackfail.
1559
15602002-11-21  Phil Edwards  <pme@gcc.gnu.org>
1561
1562	* docs/doxygen/style.css:  Update.
1563	* docs/doxygen/user.cfg.in:  Update.
1564	* docs/html/documentation.html:  Regenerate.
1565	* docs/html/17_intro/howto.html:  Tweak I/O sentry entry.
1566	* docs/html/27_io/howto.html:  New section on headers.
1567	* docs/html/faq/index.html:  Add i386 threading entry.
1568	* docs/html/faq/index.txt:  Regenerate.
1569
1570	* docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
1571	Import R23.
1572
15732002-11-21  Phil Edwards  <pme@gcc.gnu.org>
1574
1575	* docs/doxygen/TODO:  Note change in clause 27 docs.
1576	* include/bits/basic_ios.h, include/bits/fpos.h,
1577	include/bits/ios_base.h, include/bits/stl_deque.h,
1578	include/bits/stl_iterator_base_types.h, include/std/std_fstream.h,
1579	include/std/std_iomanip.h, include/std/std_iosfwd.h,
1580	include/std/std_iostream.h, include/std/std_istream.h,
1581	include/std/std_ostream.h, include/std/std_sstream.h,
1582	include/std/std_streambuf.h:  Doxygenate all I/O entities.
1583
15842002-11-20  Benjamin Kosnik  <bkoz@redhat.com>
1585            Jonathan Lennox  <lennox@cs.columbia.edu>
1586
1587	* include/bits/streambuf.tcc (__copy_streambufs):
1588	Revert previous fix for the interactive half of
1589	libstdc++/6745, use _M_buf_size_opt to set dynamically
1590	the correct buffer size.
1591
15922002-11-20  Jonathan Wakely  <redi@gcc.gnu.org>
1593
1594	* docs/html/21_strings/howto.html: Fix example code, cite Gaby's
1595	explanation of "<unknown type>" error with toupper/tolower.
1596	* docs/html/22_locale/howto.html: Be more consistent with
1597	example in 21_strings.
1598
15992002-11-19  John Gustafsson  <forgoil@rsn.bth.se>
1600
1601	* docs/html/20_util/howto.html: Fix typo.
1602
16032002-11-18  Jonathan Lennox  <lennox@cs.columbia.edu>
1604
1605	* include/bits/streambuf.tcc (__copy_streambufs): verify
1606	__sbin->gptr() + __bufsize < __sbin->egptr() before using.
1607	* testsuite/27_io/ostream_inserter_other.cc (test_buffer_4): Add.
1608	(test05): Use test_buffer_4.  Delete unused ostringstream
1609	variables.
1610
16112002-11-18  Paolo Carlini  <pcarlini@unitus.it>
1612
1613	PR libstdc++/6745 (continued)
1614	* include/bits/streambuf.tcc (__copy_streambufs):
1615	Deal with interactive input by using isatty as in the
1616	fix for libstdc++/8399.
1617
16182002-11-17  Jakub Jelinek  <jakub@redhat.com>
1619
1620	* config/linker-map.gnu: Export _S_construct even if size_t is
1621	unsigned long.  Collapse std::codecvt<char>::codecvt(size_t)
1622	and std::codecvt<wchar_t>::codecvt(size_t) into one export pattern.
1623
16242002-11-15  Benjamin Kosnik  <bkoz@redhat.com>
1625            Gabriel Dos Reis  <gdr@integrable-solutions.net>
1626
1627	PR libstdc++/8230
1628	* include/bits/stl_alloc.h: Use builtin_expect for the most
1629	obvious limit checks.
1630	(__default_alloc_template::allocate): Check for null, throw
1631	bad_alloc.
1632	* include/bits/vector.tcc: Formatting tweaks.
1633	* include/bits/stl_vector.h: Same.
1634	* testsuite/20_util/allocator_members.cc (test02): Add.
1635	* testsuite/23_containers/vector_capacity.cc (test03): Add.
1636
16372002-11-15  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1638
1639	* src/ios.cc [_GLIBCPP_HAVE_UNISTD_H]: Include unistd.h.
1640
16412002-11-15  Paolo Carlini  <pcarlini@unitus.it>
1642            Loren J. Rittle  <ljrittle@acm.org>
1643
1644	PR libstdc++/8399
1645	* acinclude.m4
1646	(GLIBCPP_CHECK_UNISTD_DECL_AND_LINKAGE_1): New macro to
1647	check for unistd.h functions.
1648	(GLIBCPP_CHECK_UNISTD_SUPPORT): New macro, check for isatty
1649	in unistd.h.
1650	* configure.in: Call here.
1651	* src/ios.cc (ios_base::Init::_S_ios_create(bool)):
1652	Use _GLIBCPP_HAVE_ISATTY: ifdef, in case of interactive
1653	input __in_size = 1 even when sync_with_stdio is false;
1654	otherwise fall back to __in_size = 1.
1655	* aclocal.m4: Regenerate.
1656	* config.h.in: Regenerate.
1657	* configure: Regenerate.
1658
16592002-11-13  Benjamin Kosnik  <bkoz@redhat.com>
1660
1661	* acconfig.h (HAVE_DRAND48): Add.
1662	(HAVE_GETPAGESIZE): Add.
1663	(HAVE_SETENV): Add.
1664	(HAVE_SIGSETJMP): Add.
1665	* config.h.in: Regenerate.
1666	* configure: Regenerate.
1667
16682002-11-13  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1669
1670	* config/os/hpux/os_defines.h (_GLIBCPP_INST_ATOMICITY_LOCK): Define
1671	on hppa when there is no weak support.
1672
16732002-11-13  Benjamin Kosnik  <bkoz@redhat.com>
1674
1675	PR libstdc++/8230
1676	* include/bits/vector.tcc (vector::reserve): Throw length_error if
1677	requested size is bigger than max_size().
1678	* include/bits/stl_bvector.h (vector<bool>::reserve): Same.
1679	* testsuite/23_containers/vector_capacity.cc (test02): Add.
1680
16812002-11-13  Benjamin Kosnik  <bkoz@redhat.com>
1682
1683	* config/linker-map.gnu: Export all _S_construct.
1684
16852002-11-13  Loren J. Rittle  <ljrittle@acm.org>
1686
1687	PR libstdc++/7445
1688	* src/locale.cc (std::locale::classic()): Weaken locking protocol.
1689
16902002-11-13  Jonathan Wakely  <redi@gcc.gnu.org>
1691
1692	* docs/html/install.html, docs/html/22_locale/locale.html: HTML fix.
1693
16942002-11-11  Benjamin Kosnik  <bkoz@redhat.com>
1695
1696        PR libstdc++/6746
1697        * include/bits/fstream.tcc (filebuf::open): Set input pointers.
1698	* config/io/basic_file_stdio.cc (__basic_file::_M_open_mode): Set
1699	__p_mode as well.
1700	(__basic_file::open): Set to non-block for input.
1701	* testsuite/27_io/istream_unformatted.cc (test12): Add.
1702	(test13): Same.
1703
17042002-11-11  Jonathan Wakely <redi@gcc.gnu.org>
1705
1706	* docs/html/17_intro/howto.html: Make "chapter 22 notes" a link.
1707	* docs/html/faq/index.html: Mention that GCC ships with a newer
1708	version of the library than the last snapshot. Make "see below" a
1709	link. Add missing <html> tag.
1710	* docs/html/faq/index.txt: Regenerate.
1711	* docs/html/22_locale/locale.html, docs/html/22_locale/messages.html,
1712	docs/html/23_containers/howto.html, docs/html/24_iterators/howto.html,
1713	docs/html/25_algorithms/howto.html, docs/html/26_numerics/howto.html,
1714	docs/html/27_io/howto.html, docs/html/ext/howto.html,
1715	docs/html/ext/sgiexts.html: Add missing <html> tag.
1716
17172002-11-07  Phil Edwards  <pme@gcc.gnu.org>
1718            Richard Earnshaw  <rearnsha@arm.com>
1719
1720	* config/cpu/generic/atomicity.h:  Provide atomic __exchange_and_add
1721	and __atomic_add.
1722
17232002-11-08  Paolo Carlini  <pcarlini@unitus.it>
1724
1725	* config/locale/gnu/monetary_members.cc
1726	(moneypunct<wchar_t, true>::_M_initialize_moneypunct(__c_locale,
1727	const char*),
1728	moneypunct<wchar_t, false>::_M_initialize_moneypunct(__c_locale,
1729	const char*)): Tweak parameters for glibc2.3 systems, thus
1730	avoiding unused parameter warnings.
1731
17322002-11-05  Jonathan Wakely  <cow@compsoc.man.ac.uk>
1733
1734	* include/std/std_sstream.h
1735	(basic_stringbuf::str(const __string_type&)):
1736	Prefer data() to c_str(), thus avoiding assigning the
1737	unnecessary NULL-terminator.
1738
17392002-11-05  Benjamin Kosnik  <bkoz@redhat.com>
1740
1741	PR libstdc++/8258
1742	* include/bits/istream.tcc (istream::readsome): Don't set eofbit
1743	for null buffer.
1744	(istream::operator>>(_CharT*)): Use traits_type.
1745	(istream::ws): Same.
1746	(istream::operator>>(string)): Same.
1747	* testsuite/27_io/istream_unformatted.cc (test11): Add.
1748
17492002-11-05  Paolo Carlini  <pcarlini@unitus.it>
1750
1751	PR libstdc++/8466
1752	* include/std/std_sstream.h
1753	(basic_stringbuf::str(const __string_type&)):
1754	Cannot use simple assignment since the COW-nature of v3
1755	basic_string is not taken into account in basic_stringbuf.
1756	* testsuite/27_io/stringstream_members.cc: Add test04 from PR.
1757
17582002-11-05  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1759
1760	* configure.target (hppa*): Define cpu_include_dir.
1761	* config/os/hpux/os_defines.h (_GLIBCPP_INST_ATOMICITY_LOCK): Define.
1762	* src/misc-inst.cc: Instantiate atomicity lock when
1763	_GLIBCPP_INST_ATOMICITY_LOCK is defined.
1764	* config/cpu/hppa/atomicity.h: New file.
1765
17662002-11-05  Benjamin Kosnik  <bkoz@redhat.com>
1767
1768	PR libstdc++/8463
1769	* include/bits/ios_base.h (~ios_base): Make virtual.
1770
17712002-11-04  Benjamin Kosnik  <bkoz@redhat.com>
1772
1773	* config/linker-map.gnu: Export string operator+.
1774	Export __default_alloc_template::_S_force_new.
1775	* testsuite/abi_check.cc: Output tweaks.
1776
17772002-11-01  Benjamin Kosnik  <bkoz@redhat.com>
1778
1779	PR libstdc++/8172
1780	* src/string-inst.cc: Add instantiation.
1781
17822002-11-01  Benjamin Kosnik  <bkoz@redhat.com>
1783
1784	PR libstdc++/7926
1785	* configure.target: Simplify.
1786	* config/cpu/i386/atomicity.h: Remove.
1787	* config/cpu/i386: Remove.
1788	* config/cpu/arm/atomicity.h: Remove.
1789	* config/cpu/arm: Remove.
1790	* config/cpu/x86-64/atomicity.h: Remove.
1791	* config/cpu/x86-64: Remove.
1792
17932002-11-01  Christian Ehrhardt  <ehrhardt@mathematik.uni-ulm.de>
1794
1795	PR libstdc++/8197
1796	* config/link-map.gnu: Export math stubbs.
1797
17982002-11-01  Benjamin Kosnik  <bkoz@redhat.com>
1799
1800	PR libstdc++/8318
1801	* include/std/std_iostream.h: Tweak.
1802	* include/std/std_iosfwd.h: Add _GLIBCPP_USE_WCHAR_T.
1803	* include/std/std_iomanip.h: Same.
1804	* include/bits/stringfwd.h: Same.
1805	* include/bits/basic_string.tcc: Same.
1806	* include/bits/sstream.tcc: Same.
1807	* include/bits/fstream.tcc: Same.
1808	* include/bits/basic_ios.tcc: Same.
1809	* include/bits/streambuf.tcc: Same.
1810	* include/bits/locale_facets.tcc: Same.
1811
18122002-11-01  John Carter  <john.carter@tait.co.nz>
1813
1814	PR libstdc++/7961
1815	* include/bits/basic_string.tcc
1816	(compare(const _CharT* __s)): Don't access __s past its length.
1817
18182002-10-31  Benjamin Kosnik  <bkoz@redhat.com>
1819
1820	PR libstdc++/8348
1821	* include/bits/istream.tcc (istream::tellg): Remove sentry bits.
1822	(istream::seekg): Same.
1823	* testsuite/27_io/istream_seeks.cc (test06): New.
1824
18252002-10-28  Jason Thorpe  <thorpej@wasabisystems.com>
1826
1827	* testsuite/thread/pthread5.cc: Include <unistd.h>
1828	if _GLIBCPP_HAVE_UNISTD_H is defined.
1829	(main): Only use pthread_attr_setscope if
1830	_POSIX_THREAD_PRIORITY_SCHEDULING is defined.
1831
18322002-10-28  Jason Thorpe  <thorpej@wasabisystems.com>
1833
1834	* testsuite/thread/pthread1.cc: Enable on *-*-netbsd*.
1835	* testsuite/thread/pthread2.cc: Likewise.
1836	* testsuite/thread/pthread3.cc: Likewise.
1837	* testsuite/thread/pthread4.cc: Likewise.
1838	* testsuite/thread/pthread5.cc: Likewise.
1839	* testsuite/thread/pthread6.cc: Likewise.
1840
18412002-10-27  Paolo Carlini  <pcarlini@unitus.it>
1842
1843	PR libstdc++/8347
1844	* include/bits/basic_string.tcc
1845	(string::_S_construct(_InIter, _InIter, const _Alloc&,
1846	forward_iterator_tag)): Do not throw logic error if
1847	__beg == NULL && __end == __beg.
1848	(string::string(const _CharT*, const _Alloc&)): Tweak.
1849	* testsuite/21_strings/ctor_copy_dtor.cc: Add test05 from PR.
1850
18512002-10-24  Hans-Peter Nilsson  <hp@bitrange.com>
1852
1853	PR other/3337
1854	PR bootstrap/6763
1855	PR bootstrap/8122
1856	* testsuite/testsuite_hooks.cc (__set_testsuite_memlimit): Use
1857	__typeof__ (r.rlim_cur), not rlim_t in declaration of limit.
1858
18592002-10-23  Jakub Jelinek  <jakub@redhat.com>
1860
1861	* testsuite/22_locale/num_put_members_char.cc (test01): Swap size
1862	and decimal_point arguments of find.
1863	* testsuite/22_locale/num_put_members_wchar_t.cc (test01): Likewise.
1864
18652002-10-22  Jakub Jelinek  <jakub@redhat.com>
1866
1867	* Makefile.am (check-abi, new-abi-baseline): Use @glibcpp_srcdir@
1868	instead of ${top_srcdir}.
1869	* Makefile.in: Rebuilt.
1870
18712002-10-22  Loren J. Rittle  <ljrittle@acm.org>
1872
1873	* testsuite/18_support/numeric_limits.cc (test_extrema<long double>):
1874	Remove specialization for FreeBSD systems.
1875
18762002-10-18  Loren J. Rittle  <ljrittle@acm.org>
1877
1878	* configure.target (freebsd*): Use abi_baseline_triplet.
1879	* config/abi/i386-unknown-freebsd4/baseline_symbols.txt: New file.
1880	* config/abi/i386-unknown-freebsd4.7/baseline_symbols.txt: Remove.
1881
1882	* testsuite/thread/pthread1.cc: Remove needless workaround
1883	for FreeBSD 5.
1884
18852002-10-18  Loren J. Rittle  <ljrittle@acm.org>
1886	    Brad Spencer  <spencer@infointeractive.com>
1887	    (provided alternate patch and improvements)
1888
1889	* docs/html/23_containers/howto.html (GLIBCPP_FORCE_NEW): Document
1890	new environment variable which replaces all uses of __USE_MALLOC
1891	macro.
1892	* docs/html/ext/howto.html (GLIBCPP_FORCE_NEW): Likewise.
1893	(__mem_interface): Remove all references to old internal typedef.
1894	* include/backward/alloc.h (__USE_MALLOC): Remove it and all
1895	guarded code.
1896	* include/bits/c++config (__USE_MALLOC): Update related error
1897	message and comment.
1898	* include/bits/stl_alloc.h (__USE_MALLOC): Remove it and all
1899	guarded code.  Update all related comments.
1900	(__mem_interface): Unconditionally replace it with __new_alloc.
1901	However, leave the typedef around in case anyone used it.
1902	(__default_alloc_template<>::_S_force_new): New class static.
1903	(__default_alloc_template<>::allocate, deallocate): Add
1904	run-time controlled feature similar to what __USE_MALLOC code
1905	path had provided.
1906	* src/stl-inst.cc (__USE_MALLOC): Remove it and all
1907	guarded code.
1908	* testsuite/21_strings/capacity.cc: Remove reference to __USE_MALLOC.
1909	Add documentation on GLIBCPP_FORCE_NEW environment variable.
1910	* testsuite/ext/allocators.cc: Likewise.
1911
19122002-10-18  Phil Edwards  <pme@gcc.gnu.org>
1913
1914	* configure.in:  Use target, not target_alias, when matching triplet
1915	patterns.
1916	* configure:  Regenerate.
1917
19182002-10-17  Momchil Velikov  <velco@fadata.bg>
1919	    Loren J. Rittle  <ljrittle@acm.org>
1920
1921	* configure.in: Add *-freebsd* to cross list.
1922	* configure: Rebuilt.
1923
19242002-10-16  Benjamin Kosnik  <bkoz@redhat.com>
1925
1926	* include/bits/locale_facets.h (__timepunct::__timepunct): Allocate
1927	_M_name_timepunct.
1928	(__timepunct::~__timepunct): Deallocate, remove specialization
1929	declarations.
1930	(messages::messages): Allocate _M_name_messages.
1931	(messages::~messages): Deallocate.
1932	(messages_byname): Same.
1933	* config/locale/gnu/time_members.cc (__timepunct::~__timepunct):
1934	Remove.
1935	* config/locale/generic/time_members.cc (__timepunct::~__timepunct):
1936	Remove.
1937
1938	* docs/html/install.html: Add es_MX, en_PH to required locales list.
1939
19402002-10-16  Benjamin Kosnik  <bkoz@redhat.com>
1941
1942	* config/linker-map.gnu: Add exports for codecvt constructors
1943	where size_t == unsigned long.
1944
19452002-10-14  Benjamin Kosnik  <bkoz@redhat.com>
1946
1947	* src/globals.cc (__gnu_cxx::c_locale_impl_compat): Add, alias to
1948	c_locale_impl.
1949	* testsuite/abi_check.cc (line_to_symbol_info): Collect size info.
1950	* docs/html/abi.txt: Update.
1951
19522002-10-14  Benjamin Kosnik  <bkoz@redhat.com>
1953
1954	* testsuite/22_locale/static_members.cc (test02): Less provincial.
1955
19562002-10-14  Benjamin Kosnik  <bkoz@redhat.com>
1957
1958	* testsuite/22_locale/static_members.cc (test02): Disable for
1959	systems without named locale support.
1960	* testsuite/22_locale/ctor_copy_dtor.cc (test04): Don't assume
1961	running the testsuites in "C" environment.
1962	Add new tests.
1963	* docs/html/22_locale/locale.html: Update.
1964
19652002-10-13  Danny Smith  <dannysmith@users.sourceforge.net>
1966
1967	* include/bits/stl_threads.h (_GLIBCPP_mutex,
1968	_GLIBCPP_mutex_init,_GLIBCPP_mutex_address,
1969	_GLIBCPP_mutex_address_init, _GLIBCPP_once):
1970	Declare in namespace __gnu_cxx.
1971	(_STL_mutex_lock::_M_initialize): Qualify __gnu_cxx
1972	names.
1973	Adjust copyright.
1974
19752002-10-12  Benjamin Kosnik  <bkoz@redhat.com>
1976
1977	* testsuite/abi_check.cc (hash<string>): Specialize.
1978	Simplify. Check compatible symbol versions.
1979	* config/linker-map.gnu: Clarify, explicitly export
1980	std::codecvt::c* symbols.
1981
1982	* testsuite/22_locale/static_members.cc (test02): Avoid null strings.
1983
19842002-10-12  Jonathan Wakely  <jw@kayari.org>
1985            Gabriel Dos Reis  <gdr@integrable-solutions.net>
1986
1987	* docs/html/21_strings/howto.html#5:  Correct nasting of XHTML
1988	elements.  Correct allocator-related text.
1989
19902002-10-11  Benjamin Kosnik  <bkoz@redhat.com>
1991
1992	* testsuite/22_locale/static_members.cc (test02): Fix.
1993
19942002-10-11  Benjamin Kosnik  <bkoz@redhat.com>
1995
1996	* acconfig.h (_GLIBCPP_SYMVER): Add.
1997	(_GLIBCPP_ASM_SYMVER): Add.
1998	* acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Define _GLIBCPP_SYMVER.
1999	* aclocal.m4: Regenerate.
2000	* config.h.in: Regenerate.
2001	* configure: Regenerate.
2002	* include/bits/c++config (_GLIBCPP_AT_AT): Define, as an expedient
2003	hack around m4 issues with quoting '@'.
2004	* src/locale.cc: Use _GLIBCPP_ASM_SYMVER.
2005	* src/globals.cc: Same.
2006
2007	* testsuite/22_locale/ctor_copy_dtor.cc (test04): Fix for
2008	non-glibc systems.
2009
20102002-10-10  Benjamin Kosnik  <bkoz@redhat.com>
2011
2012	* config/linker-map.gnu (GLIBCPP_3.2.1): Add.
2013	(GLIBCPP_3.2): Don't export locale::_S_*.
2014	* src/ios.cc: Move globals into __gnu_cxx. Make old exported
2015	symbols match.
2016	* src/locale.cc: Same.
2017	* src/localename.cc: Same.
2018	* src/globals.cc: Same.
2019
20202002-10-10  Phil Edwards  <pme@gcc.gnu.org>
2021
2022	* docs/html/21_strings/howto.html:  Write #5, char_traits.
2023	* docs/html/17_intro/porting.texi:  Expand on os_include_dir.
2024	* docs/html/17_intro/porting.html:  Regenerate.
2025
20262002-10-09  Benjamin Kosnik  <bkoz@redhat.com>
2027
2028	* src/locale.cc: Fix comments, move ctors together.
2029	* testsuite/22_locale/static_members.cc (test03): Add.
2030
20312002-10-08  Jonathan Lennox  <lennox@cs.columbia.edu>
2032
2033	PR libstdc++/8071, libstdc++/8127, libstdc++/6745
2034	* streambuf.tcc (__copy_streambufs): Handle cases where
2035	__sbin->in_avail() returns 0, or where __sbin doesn't set gptr().
2036	* testsuite/27_io/ostream_inserter_other.cc (test05): Add.
2037
20382002-10-08  Paolo Carlini  <pcarlini@unitus.it>
2039	    Benjamin Kosnik  <bkoz@redhat.com>
2040
2041	* include/bits/localefwd.h (class locale): Add static member
2042	_S_num_extra_categories, encoding the number of additional
2043	categories.
2044	Change _S_num_categories to _S_categories_size.
2045	(class locale::_Impl): Add _M_c_cats.
2046	(class locale::_Impl::_M_names): Change to array of chars.
2047	(class locale::_Impl::_M_check_same_name): Use
2048	_S_extra_categories_size, tweak.
2049	(locale::locale(const locale&, _Facet*)): Ditto.
2050	* src/locale.cc (locale::locale(const char* )): Rewrite to deal
2051	with the environment in a POSIX-compliant way while being thread
2052	safe.
2053	(locale::name()): Update to output POSIX environment strings.
2054	* src/localename.cc
2055	(locale::_Impl::_Impl(const _Impl&, size_t): Use
2056	_S_categories_size_*, tweak.
2057	(locale::_Impl::_Impl(facet**, size_t, bool)): Ditto.
2058	(locale::_Impl::_Impl(const char*, size_t)): Name each category
2059	individually.
2060	(locale::_Impl::_M_replace_categories): Use strcpy.
2061
2062	* include/bits/locale_facets.h (numpunct::_M_initialize_numpunct):
2063	Change default argument to NULL from _S_c_locale.
2064	(timepunct::_M_initialize_timepunct): Same.
2065	_S_c_locale cleanups.
2066	* src/codecvt.c: _S_c_locale simplification.
2067	* src/ctype.c: Same.
2068	* src/globals.cc: Add fake_name.
2069	* src/locale-inst.cc: Remove extra includes.
2070	* src/locale.cc: Remove extra includes.
2071	Add _S_extra_categories_size definition.
2072	Correct "C" initialization.
2073	(locale::facet::facet): Don't initialize _S_c_locale.
2074	(locale::facet::_M_remove_reference): Adjust.
2075	* src/localename: Use facet_vec, facet_name.
2076	(locale::_Impl::_Impl(facet** __f, size_t __refs, bool)): Set
2077	facet ref counts to one. Initialize _S_c_locale.
2078	(locale::_Impl::_M_install_facet(id*, facet*)): Adjust facet ref
2079	counts when installing unilaterally.
2080
2081	* config/locale/generic/c_locale.cc: Add _S_categories definition.
2082	* config/locale/generic/c_locale.h: Add _GLIBCPP_NUM_CATEGORIES macro.
2083	* config/locale/generic/time_members.cc: _S_c_locale cleanup.
2084
2085	* config/locale/gnu/c_locale.cc: Add _S_categories definition.
2086	(_S_destroy_c_locale): Move checks against _S_c_locale here.
2087	* config/locale/gnu/c_locale.h: Add _GLIBCPP_NUM_CATEGORIES macro.
2088	* config/locale/gnu/ctype_members.cc: Simplify _S_destroy_c_locale
2089	calls, _S_c_locale usage.
2090	* config/locale/gnu/monetary_members.cc: Same, tweaks.
2091	* config/locale/gnu/monetary_members.cc: Same.
2092	* config/locale/gnu/time_members.cc: Same.
2093	* config/os/gnu-linux/ctype_noninline.h: Use locale::classic().
2094
2095	* docs/html/22_locale/locale.html: Add bits about global locales
2096	and "C" setlocale.
2097
2098	* testsuite/22_locale/facet.cc (test02): Add.
2099	* testsuite/22_locale/static_members.cc (test02): Add.
2100	* testsuite/22_locale/ctor_copy_dtor.cc (test04): Add.
2101
21022002-10-07  Jonathan Wakely  <jw@kayari.org>
2103
2104	* docs/html/configopts.html, docs/html/documentation.html,
2105	docs/html/explanations.html, docs/html/install.html,
2106	docs/html/17_intro/contribute.html, docs/html/17_intro/howto.html,
2107	docs/html/17_intro/license.html, docs/html/18_support/howto.html,
2108	docs/html/19_diagnostics/howto.html, docs/html/20_util/howto.html,
2109	docs/html/21_strings/howto.html, docs/html/22_locale/codecvt.html,
2110	docs/html/22_locale/ctype.html, docs/html/22_locale/howto.html,
2111	docs/html/22_locale/locale.html, docs/html/22_locale/messages.html,
2112	docs/html/23_containers/howto.html, docs/html/24_iterators/howto.html,
2113	docs/html/25_algorithms/howto.html, docs/html/26_numerics/howto.html,
2114	docs/html/27_io/howto.html, docs/html/ext/howto.html,
2115	docs/html/ext/sgiexts.html, docs/html/faq/index.html:  Add DOCTYPEs.
2116
21172002-10-03  Richard Earnshaw  <rearnsha@arm.com>
2118
2119	PR libstdc++/3584
2120	* config/cpu/arm/atomicity.h (__exchange_and_add): Don't try to use
2121	ASM sequences that don't give us atomic addition operations.  Instead
2122	just add a comment explaining why it doesn't work.
2123	(__atomic_add): Just use __exchange_and_add.
2124	(__test_and_set, __always_swap): Delete.
2125
21262002-10-02  Andreas Jaeger  <aj@suse.de>
2127
2128	* config/abi/x86_64-unknown-linux-gnu/baseline_symbols.txt:
2129	New file.
2130
21312002-10-01  Phil Edwards  <pme@gcc.gnu.org>
2132
2133	* Makefile.am (check-abi):  Add @ to rule.
2134	* Makefile.in:  Regenerated.
2135
21362002-09-27  Paolo Carlini  <pcarlini@unitus.it>
2137
2138	* include/bits/locale_facets.tcc (num_put::_M_widen_int):
2139	Deal correctly with grouped, showbased (oct or hex) zero.
2140	* testsuite/22_locale/num_put_members_char.cc: Add test05.
2141	* testsuite/22_locale/num_put_members_wchar_t.cc: Ditto.
2142
21432002-09-27  Richard Henderson  <rth@redhat.com>
2144
2145	* config/os/hpux/cpu_limits.h: Remove.
2146
2147	* include/std/std_limits.h (numeric_limits<T>::is_iec559): False
2148	if denormals are not supported.
2149
21502002-09-25  Benjamin Kosnik  <bkoz@redhat.com>
2151
2152	* include/Makefile.am (target_headers): Remove cpu_limits.h.
2153	* include/Makefile.in: Regenerate.
2154	* configure.in (CPU_LIMITS_INC_SRCDIR): Remove
2155	* configure: Regenerate.
2156	* configure.target (CPULIMITS): Remove.
2157
2158	* include/std/std_limits.h: Remove cpu_limits.h include.
2159
2160	* config/os/solaris/solaris2.7/os_defines.h (__glibcpp_long_bits):
2161	Remove.
2162	* config/os/irix/irix6.5/os_defines.h
2163	(__glibcpp_long_double_bits): Remove.
2164	(__glibcpp_wchar_t_bits): Remove.
2165	(__glibcpp_long_bits): Remove.
2166	* config/os/irix/irix5.2/os_defines.h
2167	(__glibcpp_long_double_bits): Remove.
2168	(__glibcpp_long_bits): Remove.
2169	* config/os/hpux/os_defines.h (__glibcpp_wchar_t_is_signed): Remove.
2170	* config/os/bsd/freebsd/os_defines.h:
2171	(__glibcpp_long_double_bits): Remove.
2172	* config/os/aix/os_defines.h (__glibcpp_wchar_t_bits): Remove.
2173	(__glibcpp_wchar_t_is_signed): Remove.
2174	(__glibcpp_long_bits): Remove.
2175	* config/os/gnu-linux/os_defines.h (__glibcpp_long_bits): Remove.
2176	(__glibcpp_long_double_bits): Remove.
2177
2178	* config/os/osf/osf5.0/cpu_limits.h: Remove.
2179	* config/cpu/alpha/cpu_limits.h: Remove.
2180	* config/cpu/arm/cpu_limits.h: Remove.
2181	* config/cpu/cris/cpu_limits.h: Remove.
2182	* config/cpu/generic/cpu_limits.h: Remove.
2183	* config/cpu/generic/limits.h: Remove.
2184	* config/cpu/ia64/cpu_limits.h: Remove.
2185	* config/cpu/m68k/cpu_limits.h: Remove.
2186	* config/cpu/mmix/cpu_limits.h: Remove.
2187	* config/cpu/powerpc/cpu_limits.h: Remove.
2188	* config/cpu/S390/cpu_limits.h: Remove.
2189
21902002-09-25  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
2191
2192	* testsuite/18_support/numeric_limits.cc: Check the maximum and
2193	minimum values of the wchar_t type.
2194
21952002-09-25  Mark Mitchell  <mark@codesourcery.com>
2196
2197	* include/std/std_limits.h (numeric_limits<unsigned char>::digits):
2198	Fix typo.
2199
22002002-09-23  Richard Henderson  <rth@redhat.com>
2201
2202	* include/std/std_limits.h (__glibcpp_plain_char_is_signed,
2203	__glibcpp_wchar_t_is_signed, __glibcpp_s8_max, __glibcpp_s8_min,
2204	__glibcpp_s8_digits, __glibcpp_s8_digits10, __glibcpp_u8_min,
2205	__glibcpp_u8_max, __glibcpp_u8_digits, __glibcpp_u8_digits10,
2206	__glibcpp_s16_max, __glibcpp_s16_min, __glibcpp_s16_digits,
2207	__glibcpp_s16_digits10, __glibcpp_u16_min, __glibcpp_u16_max,
2208	__glibcpp_u16_digits, __glibcpp_u16_digits10, __glibcpp_s32_max,
2209	__glibcpp_s32_min, __glibcpp_s32_digits, __glibcpp_s32_digits10,
2210	__glibcpp_u32_min, __glibcpp_u32_max, __glibcpp_u32_digits,
2211	__glibcpp_u32_digits10, __glibcpp_s64_max, __glibcpp_s64_min,
2212	__glibcpp_s64_digits, __glibcpp_s64_digits10, __glibcpp_u64_min,
2213	__glibcpp_u64_max, __glibcpp_u64_digits, __glibcpp_u64_digits10,
2214	__glibcpp_bool_digits, __glibcpp_signed_char_min,
2215	__glibcpp_signed_char_max, __glibcpp_signed_char_digits,
2216	__glibcpp_signed_char_digits10, __glibcpp_unsigned_char_min,
2217	__glibcpp_unsigned_char_max, __glibcpp_unsigned_char_digits,
2218	__glibcpp_unsigned_char_digits10, __glibcpp_char_min,
2219	__glibcpp_char_max, __glibcpp_char_digits, __glibcpp_char_digits10,
2220	__glibcpp_signed_short_min, __glibcpp_signed_short_max,
2221	__glibcpp_signed_short_digits, __glibcpp_signed_short_digits10,
2222	__glibcpp_unsigned_short_min, __glibcpp_unsigned_short_max,
2223	__glibcpp_unsigned_short_digits, __glibcpp_unsigned_short_digits10,
2224	__glibcpp_signed_int_min, __glibcpp_signed_int_max,
2225	__glibcpp_signed_int_digits, __glibcpp_signed_int_digits10,
2226	__glibcpp_unsigned_int_min, __glibcpp_unsigned_int_max,
2227	__glibcpp_unsigned_int_digits, __glibcpp_unsigned_int_digits10,
2228	__glibcpp_signed_long_min, __glibcpp_signed_long_max,
2229	__glibcpp_unsigned_long_digits, __glibcpp_unsigned_long_digits10,
2230	__glibcpp_signed_long_long_min, __glibcpp_signed_long_long_max,
2231	__glibcpp_signed_long_long_digits, __glibcpp_signed_long_long_digits10,
2232	__glibcpp_wchar_t_min, __glibcpp_wchar_t_max, __glibcpp_wchar_t_digits,
2233	__glibcpp_wchar_t_digits10): Remove.
2234	(__glibcpp_byte, __glibcpp_word_bits, __glibcpp_word): Remove.
2235	(__float_storage, __double_storage, __long_double_storage): Remove.
2236	(__glibcpp_signed, __glibcpp_min, __glibcpp_max): New.
2237	(__glibcpp_digits, __glibcpp_digits10): New.
2238	(numeric_limits<T>::min): Use __glibcpp_min or limits.h builtins.
2239	(numeric_limits<T>::max): Use __glibcpp_max or limits.h builtins.
2240	(numeric_limits<T>::is_signed, T=char,wchar_t): Use __glibcpp_signed.
2241	(numeric_limits<T>::digits): Use __glibcpp_digits.
2242	(numeric_limits<T>::digits10): Use __glibcpp_digits10.
2243	* testsuite/18_support/numeric_limits.cc (test03): Don't use
2244	__glibcpp_s8_digits10 et al; check vs the installed versions
2245	of digits10 for particular sizes.
2246
2247        * include/std/std_limits.h (__glibcpp_float_is_modulo,
2248        __glibcpp_double_is_modulo, __glibcpp_long_double_is_modulo): Kill.
2249        (numeric_limits<T>::is_modulo, T floating): Use false.
2250
22512002-09-22  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2252
2253	* Makefile.am (all-multi): Fix multilib parallel build.
2254
22552002-09-22  Richard Henderson  <rth@redhat.com>
2256
2257	* include/std/std_limits.h (__glibcpp_f32_round_error,
2258	__glibcpp_f64_round_error, __glibcpp_f80_round_error,
2259	__glibcpp_f96_round_error, __glibcpp_f128_round_error,
2260	__glibcpp_float_round_error, __glibcpp_double_round_error,
2261	__glibcpp_long_double_round_error, __glibcpp_float_round_style,
2262	__glibcpp_double_round_style, __glibcpp_long_double_round_style): Kill.
2263	(numeric_limits<char>::epsilon, round_error): Use constant 0.
2264	(numeric_limits<float>::round_error): Use constant 0.5.
2265	(numeric_limits<float>::round_style): Use round_to_nearest.
2266	(numeric_limits<double>, numeric_limits<long double>): Similarly.
2267
2268	* include/std/std_limits.h (__glibcpp_f32_is_iec559,
2269	__glibcpp_f64_is_iec559, __glibcpp_f80_is_iec559,
2270	__glibcpp_f96_is_iec559, __glibcpp_f128_is_iec559,
2271	__glibcpp_float_is_iec559, __glibcpp_double_is_iec559,
2272	__glibcpp_long_double_is_iec559): Remove.
2273	(numeric_limits<float>::is_iec559): Use has_infinity & has_quiet_NaN.
2274	(numeric_limits<double>, numeric_limits<long double>): Similarly.
2275
2276	* include/std/std_limits.h (__glibcpp_integral_traps): New.
2277	(__glibcpp_char_traps, __glibcpp_short_traps, __glibcpp_int_traps,
2278	__glibcpp_long_traps, __glibcpp_wchar_t_traps,
2279	__glibcpp_long_long_traps, __glibcpp_plain_char_traps,
2280	__glibcpp_signed_char_traps, __glibcpp_unsigned_char_traps,
2281	__glibcpp_signed_short_traps, __glibcpp_unsigned_short_traps,
2282	__glibcpp_signed_int_traps, __glibcpp_unsigned_int_traps,
2283	__glibcpp_signed_long_traps, __glibcpp_unsigned_long_traps,
2284	__glibcpp_signed_long_long_traps, __glibcpp_unsigned_long_long_traps,
2285	__glibcpp_char_is_modulo, __glibcpp_signed_char_is_modulo,
2286	__glibcpp_signed_short_is_modulo, __glibcpp_signed_int_is_modulo,
2287	__glibcpp_signed_long_is_modulo, __glibcpp_signed_long_long_is_modulo,
2288	__glibcpp_wchar_t_is_modulo, __glibcpp_float_is_bounded,
2289	__glibcpp_double_is_bounded, __glibcpp_long_double_is_bounded): Kill.
2290	(numeric_limits<T>::traps, T integral): Use __glibcpp_integral_traps.
2291	(numeric_limits<T>::is_modulo, T integral): Use true.
2292	(numeric_limits<T>::is_bounded, T floating): Use true.
2293
22942002-09-18  Loren J. Rittle  <ljrittle@acm.org>
2295
2296	* testsuite/18_support/numeric_limits.cc (test_epsilon): New.
2297
22982002-09-18  Richard Henderson  <rth@redhat.com>
2299
2300	* testsuite/18_support/numeric_limits.cc: Add -mieee for alpha.
2301
23022002-09-16  Benjamin Kosnik  <bkoz@redhat.com>
2303
2304	* include/c_shadow: Remove.
2305	* include/bits/generic_shadow.h: Remove.
2306	* include/Makefile.am: Remove generic_shadow.h.
2307	* acinclude.m4: Remove c_shadow references.
2308	* aclocal.m4: Regenerate.
2309	* configure: Regenerate.
2310	* mkcshadow: Remove.
2311	* mkinclosure: Remove.
2312
23132002-09-16  Loren J. Rittle  <ljrittle@acm.org>
2314
2315	libstdc++/7922
2316	* include/ext/stl_rope.h (rope<>): Qualify dependent names
2317	with `typename'.
2318
23192002-09-16  Richard Henderson  <rth@redhat.com>
2320
2321	* include/std/std_limits.h (__glibcpp_f32_QNaN_bytes,
2322	__glibcpp_f32_has_QNaN, __glibcpp_f32_SNaN_bytes,
2323	__glibcpp_f32_has_SNaN, __glibcpp_f64_QNaN_bytes,
2324	__glibcpp_f64_has_QNaN, __glibcpp_f64_SNaN_bytes,
2325	__glibcpp_f64_has_SNaN, __glibcpp_f80_QNaN_bytes,
2326	__glibcpp_f80_has_QNaN, __glibcpp_f80_SNaN_bytes,
2327	__glibcpp_f80_has_SNaN, __glibcpp_f96_QNaN_bytes,
2328	__glibcpp_f96_has_QNaN, __glibcpp_f96_SNaN_bytes,
2329	__glibcpp_f96_has_SNaN, __glibcpp_f128_QNaN_bytes,
2330	__glibcpp_f128_has_QNaN, __glibcpp_f128_SNaN_bytes,
2331	__glibcpp_f128_has_SNaN, __glibcpp_float_QNaN_bytes,
2332	__glibcpp_float_has_QNaN, __glibcpp_float_SNaN_bytes,
2333	__glibcpp_float_has_SNaN, __glibcpp_double_QNaN_bytes,
2334	__glibcpp_double_has_QNaN, __glibcpp_double_SNaN_bytes,
2335	__glibcpp_double_has_SNaN, __glibcpp_long_double_QNaN_bytes,
2336	__glibcpp_long_double_has_QNaN, __glibcpp_long_double_SNaN_bytes,
2337	__glibcpp_long_double_has_SNaN): Remove.
2338	(__glibcpp_f128_is_iec559): True if IEEE.
2339	(__glibcpp_float_QNaN, __glibcpp_float_SNaN): Remove.
2340	(__glibcpp_double_QNaN, __glibcpp_double_SNaN): Remove.
2341	(__glibcpp_long_double_QNaN, __glibcpp_long_double_SNaN): Remove.
2342	(std::numeric_limits<float>::has_quiet_NaN): Use __builtin_nanf.
2343	(std::numeric_limits<float>::has_signaling_NaN): Mirror has_quiet_NaN.
2344	(std::numeric_limits<float>::quiet_NaN): Use __builtin_nanf.
2345	(std::numeric_limits<float>::signaling_NaN): Use __builtin_nansf.
2346	(std::numeric_limits<double>): Similarly.
2347	(std::numeric_limits<long double>): Similarly.
2348	* src/limits.cc (__glibcpp_float_QNaN, __glibcpp_float_SNaN): Remove.
2349	(__glibcpp_double_QNaN, __glibcpp_double_SNaN): Remove.
2350	(__glibcpp_long_double_QNaN, __glibcpp_long_double_SNaN): Remove.
2351
2352	* testsuite/18_support/numeric_limits.cc (test_infinity): New.
2353	(test_denorm_min, test_qnan, test_is_iec559): New.
2354
23552002-09-16  Phil Edwards  <pme@gcc.gnu.org>
2356
2357	* testsuite/abi_check.cc:  Pull shell fragments out into...
2358	* config/abi/extract_symvers:  ...here.  New file.
2359	* Makefile.am (check_abi):  Change to match.
2360	(new-abi-baseline):  New target.
2361	* Makefile.in:  Regenerated.
2362
23632002-09-16  Richard Henderson  <rth@redhat.com>
2364
2365	* include/std/std_limits.h (__glibcpp_f32_denorm_min_bytes,
2366	__glibcpp_f32_has_denorm, __glibcpp_f64_denorm_min_bytes,
2367	__glibcpp_f64_has_denorm, __glibcpp_f80_denorm_min_bytes,
2368	__glibcpp_f80_has_denorm, __glibcpp_f96_denorm_min_bytes,
2369	__glibcpp_f96_has_denorm, __glibcpp_f128_denorm_min_bytes,
2370	__glibcpp_f128_has_denorm, __glibcpp_float_denorm_min_bytes,
2371	__glibcpp_float_has_denorm, __glibcpp_double_denorm_min_bytes,
2372	__glibcpp_double_has_denorm, __glibcpp_long_double_denorm_min_bytes,
2373	__glibcpp_long_double_has_denorm): Remove.
2374	(__glibcpp_float_denorm_min, __glibcpp_double_denorm_min,
2375	__glibcpp_long_double_denorm_min): Remove.
2376	(std::numeric_limits<float>::has_denorm): Use __FLT_DENORM_MIN__.
2377	(std::numeric_limits<float>::denorm_min): Likewise.
2378	(std::numeric_limits<double>): Similarly.
2379	(std::numeric_limits<long double>): Similarly.
2380	* src/limits.cc (__glibcpp_float_denorm_min,
2381	__glibcpp_double_denorm_min, __glibcpp_long_double_denorm_min): Remove.
2382
23832002-09-13  Andy Felt  <afelt@uwsp.edu>
2384
2385	* docs/html/17_intro/howto.html:  Update link.
2386
23872002-09-13  Phil Edwards  <pme@gcc.gnu.org>
2388
2389	* docs/doxygen/run_doxygen:  Massage man page for Iterator_types.3.
2390	* docs/html/faq/index.html:  Whitespace fixes.
2391
23922002-09-12  Benjamin Kosnik  <bkoz@redhat.com>
2393
2394	* libmath/Makefile.am (LIBTOOL): Use --tag CC always for this
2395	directory.
2396	* libmath/Makefile.in: Regenerate.
2397	* src/Makefile.am: Tweak comment.
2398	* src/Makefile.in: Regenerate.
2399
2400	* config/locale/gnu/c_locale.h: Remove warnings.
2401	Inject __uselocale into __gnu_cxx.
2402	* config/locale/generic/c_locale.h: Match.
2403
24042002-09-11  Benjamin Kosnik  <bkoz@redhat.com>
2405
2406	* include/bits/locale_facets.tcc (__convert_from_v): Remove.
2407	* config/locale/gnu/c_locale.h (__convert_from_v): Add.
2408	* config/locale/generic/c_locale.h (__convert_from_v): Add.
2409
24102002-09-11  Paolo Carlini  <pcarlini@unitus.it>
2411
2412	* include/bits/locale_facets.tcc (__convert_from_v):
2413	Use __uselocale instead of setlocale for glibc 2.3+.
2414
24152002-09-10  Benjamin Kosnik  <bkoz@redhat.com>
2416
2417	* src/Makefile.am (sources): Edit.
2418	(target_sources): New.
2419	(target_sources_extra): New.
2420	* src/Makefile.in: Regenerate.
2421	* acinclude.m4: Set CCODECVT_CC.
2422	* aclocal.m4: Regenerate.
2423	* configure: Regenerate.
2424	* src/locale.cc: Move ctype definitions...
2425	* src/ctype.cc: ...here. New file.
2426	* src/locale.cc: Move codecvt definitions...
2427	* src/codecvt.cc: ...here.
2428	* config/generic/codecvt_members.cc: ...and here.
2429	* config/gnu/codecvt_members.cc: ...and here.
2430	* include/bits/codecvt.h: Tweak.
2431	* include/bits/locale_facets: Tweak.
2432
2433	* src/bitset.cc: Correct license text.
2434	* src/concept-inst.cc: Same.
2435	* src/strstream.cc: Same.
2436	* src/vterminate.cc: Same.
2437
24382002-09-10  Gabriel Dos Reis  <gdr@soliton.integrable-solutions.net>
2439
2440	* include/bits/stl_vector.h (vector<>): Don't use a name with
2441	different meanings before and after re-evaluation in the completed
2442	scope.
2443	* include/bits/basic_string.h (basic_string<>): Likewise.
2444	* include/bits/stl_bvector.h (vector<bool>): Likewise.
2445	* include/bits/stl_deque.h (std): Likewise.
2446	* include/bits/stl_list.h (list<>): Likewise.
2447	* include/bits/stl_tree.h (_Rb_tree<>): Likewise.
2448
24492002-09-10  Paolo Carlini  <pcarlini@unitus.it>
2450
2451	* include/bits/codecvt.h (class __codecvt_abstract_base):
2452	Add __c_locale type _M_c_locale_codecvt member.
2453	(class codecvt<char, char, mbstate_t>,
2454	class codecvt<wchar_t, char, mbstate_t>): Add new
2455	codecvt(__c_locale, size_t) constructor.
2456	(codecvt_byname::codecvt_byname): Update.
2457	* src/codecvt.cc (class codecvt<char, char, mbstate_t>,
2458	class codecvt<wchar_t, char, mbstate_t>): Update codecvt(size_t)
2459	constructor and ~codecvt() destructor; define
2460	codecvt(__c_locale, size_t) constructor.
2461	(codecvt::do_out): Switch to _M_c_locale_codecvt around wcsrtombs call.
2462	(codecvt::do_in): Ditto for mbsrtowcs call.
2463	* src/localename.cc (locale::_Impl::_Impl(const char*, size_t)):
2464	Tweak construction of codecvt facets.
2465
24662002-09-10  Danny Smith  <dannysmith@users.sourceforge.net>
2467
2468	* include/bits/locale_facets.tcc (__convert_from_v):
2469	Replace strdup with ISO malloc and strcpy.
2470
24712002-09-09  Benjamin Kosnik  <bkoz@redhat.com>
2472
2473	* docs/html/configopts.html: Change grouping. Note ABI impacts.
2474	Update information for locale model defaults.
2475	* docs/html/install.html: Update include directory
2476	information.
2477	Update testing information.
2478	Update linux issues for named locales.
2479	* docs/html/abi.txt: Fix typos.
2480	Add more info.
2481
2482	* src/misc-inst.cc: Add missing instantiations.
2483
2484	* testsuite/abi_check.cc: Make output results more verbose.
2485
2486	* config/os/gnu-linux/ctype_base.h: Remove shadow headers injections.
2487
24882002-09-07  Jakub Jelinek  <jakub@redhat.com>
2489
2490	* config/locale/generic/messages_members.cc: Add specialization for
2491	messages<wchar_t>.
2492	* config/locale/ieee_1003.1-20021/messages_members.cc: Likewise.
2493
24942002-09-06  Benjamin Kosnik  <bkoz@redhat.com>
2495
2496	* include/bits/localefwd.h: Tweak formatting.
2497	* docs/html/abi.txt: Add.
2498
24992002-09-06  Jakub Jelinek  <jakub@redhat.com>
2500
2501	* configure.target: Use cpu_include_dir="config/cpu/sparc" for all
2502	sparc targets.
2503	* config/cpu/sparc/atomicity.h: New file.
2504	* config/cpu/sparc/sparc32/atomicity.h: Removed.
2505	* config/cpu/sparc/sparc64/atomicity.h: Removed.
2506
25072002-09-06  Jakub Jelinek  <jakub@redhat.com>
2508
2509	* config/os/gnu-linux/ctype_noninline.h
2510	[_GLIBCPP_USE_SHADOW_HEADERS]: Remove using _C_legacy::__ctype_*.
2511	(ctype<char>::classic_table): If _GLIBCPP_C_LOCALE_GNU, return
2512	_S_c_locale->__ctype_b, otherwise temporarily switch to "C" locale
2513	and return __ctype_b.
2514	(ctype<char>::ctype(__c_locale, const mask*, bool, size_t)): If not
2515	_GLIBCPP_C_LOCALE_GNU, temporarily switch to "C" locale and
2516	initialize using __ctype_{b,tolower,toupper}.
2517	(ctype<char>::ctype(const mask*, bool, size_t)): If
2518	_GLIBCPP_C_LOCALE_GNU, initialize using
2519	_S_c_locale->__ctype_{b,tolower,toupper}, otherwise temporarily
2520	switch to "C" locale and initialize using __ctype_{b,tolower,toupper}.
2521
25222002-09-05  Paolo Carlini  <pcarlini@unitus.it>
2523	    Roland McGrath  <roland@redhat.com>
2524
2525	PR libstdc++/7811
2526	* src/locale.cc (locale::locale(__s)): Use getenv instead
2527	of setenv for the environment locale.
2528	* testsuite/22_locale/ctor_copy_dtor.cc (test03): New.
2529
25302002-09-05  Jakub Jelinek  <jakub@redhat.com>
2531
2532	* config/abi/ia64-unknown-linux-gnu: Add.
2533	* config/abi/ia64-unknown-linux-gnu/baseline_symbols.txt: New file.
2534	* config/abi/alphaev67-unknown-linux-gnu: Add.
2535	* config/abi/alphaev67-unknown-linux-gnu/baseline_symbols.txt: New file.
2536
25372002-09-05  Jonathan Wakely  <jw@kayari.org>
2538
2539	* docs/html/Makefile:  Use more portable shell wildcard.
2540	* docs/html/makedoc.awk:  Nest elements correctly for XHTML conversion.
2541	* docs/html/configopts.html, docs/html/documentation.html,
2542	docs/html/explanations.html, docs/html/install.html,
2543	docs/html/17_intro/contribute.html, docs/html/17_intro/howto.html,
2544	docs/html/17_intro/license.html, docs/html/18_support/howto.html,
2545	docs/html/19_diagnostics/howto.html, docs/html/20_util/howto.html,
2546	docs/html/21_strings/howto.html, docs/html/22_locale/codecvt.html,
2547	docs/html/22_locale/ctype.html, docs/html/22_locale/howto.html,
2548	docs/html/22_locale/locale.html, docs/html/22_locale/messages.html,
2549	docs/html/23_containers/howto.html, docs/html/24_iterators/howto.html,
2550	docs/html/25_algorithms/howto.html, docs/html/26_numerics/howto.html,
2551	docs/html/27_io/howto.html, docs/html/ext/howto.html,
2552	docs/html/ext/sgiexts.html, docs/html/faq/index.html:  Convert
2553	to XHTML.
2554	* docs/html/faq/index.txt:  Regenerate.
2555
25562002-09-05  Jakub Jelinek  <jakub@redhat.com>
2557
2558	* config/locale/gnu/ctype_members.cc (ctype<wchar_t>::do_widen(char)):
2559	Switch to _M_c_locale_ctype around btowc call.
2560	(ctype<wchar_t>::do_widen(const char*, const char *, wchar_t*)):
2561	Switch to _M_c_locale_ctype around mbsrtowcs call.
2562	(ctype<wchar_t>::do_narrow(char)): Switch to _M_c_locale_ctype around
2563	wctob call.
2564	(ctype<wchar_t>::do_narrow(const char*, const char *, wchar_t*)):
2565	Switch to _M_c_locale_ctype around wcsrtombs call.
2566
25672002-09-05  Jakub Jelinek  <jakub@redhat.com>
2568
2569	* config/locale/gnu/monetary_members.cc
2570	(moneypunct<wchar_t, true>::_M_initialize_moneypunct,
2571	moneypunct<wchar_t, false>::_M_initialize_moneypunct): Use
2572	__uselocale instead of setlocale for glibc 2.3.
2573
25742002-09-05  Jakub Jelinek  <jakub@redhat.com>
2575
2576	* config/locale/generic/c++locale_internal.h: New header.
2577	* config/locale/gnu/c++locale_internal.h: New header.
2578	* config/locale/gnu/c_locale.cc: Include it.
2579	* config/locale/gnu/collate_members.cc: Include it.
2580	* config/locale/gnu/ctype_members.cc: Include it.
2581	* config/locale/gnu/messages_members.cc: Include it.
2582	* config/locale/gnu/monetary_members.cc: Include it.
2583	* config/locale/gnu/numeric_members.cc: Include it.
2584	* config/locale/gnu/time_members.cc: Include it.
2585	(_M_put): Reorder __strftime_l and __wcsftime_l arguments to match
2586	glibc.
2587	(_M_initialize_timepunct): Initialize _M_c_locale_timepunct for
2588	C locale.
2589	* acinclude.m4: Include string.h when testing strcoll_l.
2590	For glibc 2.3 provide __-prefixed prototypes.
2591	(CLOCALE_INTERNAL_H): Set, add AC_LINK_FILES line.
2592	* aclocal.m4, configure: Rebuilt.
2593
25942002-09-05  Benjamin Kosnik  <bkoz@redhat.com>
2595
2596	* include/bits/locale_facets.h: Add declaration of specialization
2597	here.
2598	* config/locale/gnu/messages_members.cc: Add specialization for
2599	messages<wchar_t>.
2600	* config/locale/gnu/messages_members.h: Remove generic definition
2601	of do_get.
2602
26032002-09-04  Richard Henderson  <rth@redhat.com>
2604
2605	* include/std/std_limits.h (__glibcpp_f32_infinity_bytes,
2606	__glibcpp_f32_has_infinity, __glibcpp_f64_infinity_bytes,
2607	__glibcpp_f64_has_infinity, __glibcpp_f80_infinity_bytes,
2608	__glibcpp_f80_has_infinity, __glibcpp_f96_infinity_bytes,
2609	__glibcpp_f96_has_infinity, __glibcpp_f128_infinity_bytes,
2610	__glibcpp_f128_has_infinity, __glibcpp_float_infinity_bytes,
2611	__glibcpp_float_has_infinity, __glibcpp_double_infinity_bytes,
2612	__glibcpp_double_has_infinity, __glibcpp_long_double_infinity_bytes,
2613	__glibcpp_long_double_has_infinity): Remove.
2614	(std::numeric_limits<float>, std::numeric_limits<double>,
2615	std::numeric_limits<long double>): Use __builtin_huge_val
2616	to implement has_infinity and infinity().
2617	* src/limits.cc (__glibcpp_float_infinity, __glibcpp_double_infinity,
2618	__glibcpp_long_double_infinity): Remove.
2619
26202002-09-03  Richard Henderson  <rth@redhat.com>
2621
2622	* include/std/std_limits.h (__glibcpp_f32_min, __glibcpp_f32_max,
2623	__glibcpp_f32_digits, __glibcpp_f32_digits10, __glibcpp_f32_radix,
2624	__glibcpp_f32_epsilon, __glibcpp_f32_min_exponent,
2625	__glibcpp_f32_min_exponent10, __glibcpp_f32_max_exponent,
2626	__glibcpp_f32_max_exponent10, __glibcpp_f64_min, __glibcpp_f64_max,
2627	__glibcpp_f64_digits, __glibcpp_f64_digits10, __glibcpp_f64_radix,
2628	__glibcpp_f64_min_exponent, __glibcpp_f64_min_exponent10,
2629	__glibcpp_f64_max_exponent, __glibcpp_f64_max_exponent10,
2630	__glibcpp_f80_min, __glibcpp_f80_max, __glibcpp_f80_digits,
2631	__glibcpp_f80_digits10, __glibcpp_f80_radix, __glibcpp_f80_epsilon,
2632	__glibcpp_f80_min_exponent, __glibcpp_f80_min_exponent10,
2633	__glibcpp_f80_max_exponent, __glibcpp_f80_max_exponent10,
2634	__glibcpp_f96_min, __glibcpp_f96_max, __glibcpp_f96_digits,
2635	__glibcpp_f96_digits10, __glibcpp_f96_radix, __glibcpp_f96_epsilon,
2636	__glibcpp_f96_min_exponent, __glibcpp_f96_min_exponent10,
2637	__glibcpp_f96_max_exponent, __glibcpp_f96_max_exponent10,
2638	__glibcpp_f128_min, __glibcpp_f128_max, __glibcpp_f128_digits,
2639	__glibcpp_f128_digits10, __glibcpp_f128_radix, __glibcpp_f128_epsilon,
2640	__glibcpp_f128_min_exponent, __glibcpp_f128_min_exponent10,
2641	__glibcpp_f128_max_exponent, __glibcpp_f128_max_exponent10,
2642	__glibcpp_float_min, __glibcpp_float_max, __glibcpp_float_digits,
2643	__glibcpp_float_digits10, __glibcpp_float_radix,
2644	__glibcpp_float_epsilon, __glibcpp_float_min_exponent,
2645	__glibcpp_float_min_exponent10, __glibcpp_float_max_exponent,
2646	__glibcpp_float_max_exponent10, __glibcpp_double_min,
2647	__glibcpp_double_max, __glibcpp_double_digits,
2648	__glibcpp_double_digits10, __glibcpp_double_radix,
2649	__glibcpp_double_epsilon, __glibcpp_double_min_exponent,
2650	__glibcpp_double_min_exponent10, __glibcpp_double_max_exponent,
2651	__glibcpp_double_max_exponent10, __glibcpp_long_double_min,
2652	__glibcpp_long_double_max, __glibcpp_long_double_digits,
2653	__glibcpp_long_double_digits10, __glibcpp_long_double_radix,
2654	__glibcpp_long_double_epsilon, __glibcpp_long_double_min_exponent,
2655	__glibcpp_long_double_min_exponent10,
2656	__glibcpp_long_double_max_exponent,
2657	__glibcpp_long_double_max_exponent10): Remove macros.
2658	(std::numeric_limits<float>, std::numeric_limits<double>,
2659	std::numeric_limits<long double>): Use protected float.h macros.
2660
26612002-09-01  Phil Edwards  <pme@gcc.gnu.org>
2662
2663	* testsuite/Makefile.am:  Use LD_RUN_PATH when linking abi_check.
2664	Fix spelling in comment.
2665	* testsuite/Makefile.in:  Regenerate.
2666	* testsuite/abi_check.cc:  Use string literals to build 'cmd' rather
2667	than 'quote' and 'bslash'.
2668
26692002-08-31  Phil Edwards  <pme@gcc.gnu.org>
2670
2671	* acinclude.m4:  Minor comment tweaks.
2672
2673	* docs/html/makedoc.awk:  New file...
2674	* docs/html/Makefile:  ...called from here...
2675	* docs/html/documentation.html:  ...to help generate this.
2676
2677	* docs/html/21_strings/howto.html:  Prepare for new entry.
2678	* include/bits/basic_string.h:  Initial basic_stirng hook for
2679	doxygen.  Remove trailing whitespace.
2680	* include/bits/char_traits.h:  Point to onlinedocs for new entry.
2681	* include/bits/stringfwd.h:  Add doxygen hooks for string and
2682	wstring typedefs.
2683
26842002-08-29  Richard Earnshaw  <rearnshaw@arm.com>
2685
2686	* config/cpu/arm/cpu_limits.h: New file.
2687	* configure.target: Use config/cpu/arm for XScale and StrongARM
2688	configurations.
2689
26902002-08-28  Gabriel Dos Reis  <gdr@integrable-solutions.net>
2691
2692	* include/std/std_limits.h (__glibcpp_char_bits,
2693	__glibcpp_short_bits, __glibcpp_int_bits, __glibcpp_long_bits,
2694	__glibcpp_long_long_bits, __glibcpp_float_bits,
2695	__glibcpp_double_bits, __glibcpp_long_double_bits): Remove.  Use
2696	compiler predifined macros.
2697	(__glibcpp_wchar_t_is_signed): Define based on compiler predefined
2698	__WCHAR_UNSIGNED__.
2699
27002002-08-27  Gabriel Dos Reis  <gdr@integrable-solutions.net>
2701
2702	* include/std/std_limits.h (__glibcpp_f32_infinity_bytes,
2703	__glibcpp_f32_has_infinity, __glibcpp_f32_QNaN_bytes,
2704	__glibcpp_f32_has_QNaN, __glibcpp_f32_SNaN_bytes,
2705	__glibcpp_f32_has_SNaN, __glibcpp_f32_denorm_min_bytes,
2706	__glibcpp_f32_has_denorm, __glibcpp_f32_is_iec559,
2707	__glibcpp_f64_infinity_bytes,
2708	__glibcpp_f64_has_infinity, __glibcpp_f64_QNaN_bytes,
2709	__glibcpp_f64_has_QNaN, __glibcpp_f64_SNaN_bytes,
2710	__glibcpp_f64_has_SNaN, __glibcpp_f64_denorm_min_bytes,
2711	__glibcpp_f64_has_denorm, __glibcpp_f64_is_iec559,
2712	__glibcpp_f80_infinity_bytes,
2713	__glibcpp_f80_has_infinity, __glibcpp_f80_QNaN_bytes,
2714	__glibcpp_f80_has_QNaN, __glibcpp_f80_SNaN_bytes,
2715	__glibcpp_f80_has_SNaN, __glibcpp_f80_denorm_min_bytes,
2716	__glibcpp_f80_has_denorm, __glibcpp_f80_is_iec559,
2717	__glibcpp_f96_infinity_bytes,
2718	__glibcpp_f96_has_infinity, __glibcpp_f96_QNaN_bytes,
2719	__glibcpp_f96_has_QNaN, __glibcpp_f96_SNaN_bytes,
2720	__glibcpp_f96_has_SNaN, __glibcpp_f96_denorm_min_bytes,
2721	__glibcpp_f96_has_denorm, __glibcpp_f96_is_iec559,
2722	__glibcpp_f128_infinity_bytes,
2723	__glibcpp_f128_has_infinity, __glibcpp_f128_QNaN_bytes,
2724	__glibcpp_f128_has_QNaN, __glibcpp_f128_SNaN_bytes,
2725	__glibcpp_f128_has_SNaN, __glibcpp_f128_denorm_min_bytes,
2726	__glibcpp_f128_has_denorm, __glibcpp_f128_is_iec559,
2727	__glibcpp_float_infinity_bytes,
2728	__glibcpp_float_has_infinity, __glibcpp_float_QNaN_bytes,
2729	__glibcpp_float_has_QNaN, __glibcpp_float_SNaN_bytes,
2730	__glibcpp_float_has_SNaN, __glibcpp_float_denorm_min_bytes,
2731	__glibcpp_float_has_denorm, __glibcpp_float_is_iec559,
2732	__glibcpp_double_infinity_bytes,
2733	__glibcpp_double_has_infinity, __glibcpp_double_QNaN_bytes,
2734	__glibcpp_double_has_QNaN, __glibcpp_double_SNaN_bytes,
2735	__glibcpp_double_has_SNaN, __glibcpp_double_denorm_min_bytes,
2736	__glibcpp_double_has_denorm, __glibcpp_double_is_iec559,
2737	__glibcpp_long_double_infinity_bytes,
2738	__glibcpp_long_double_has_infinity, __glibcpp_long_double_QNaN_bytes,
2739	__glibcpp_long_double_has_QNaN, __glibcpp_long_double_SNaN_bytes,
2740	__glibcpp_long_double_has_SNaN, __glibcpp_long_double_denorm_min_bytes,
2741	__glibcpp_long_double_has_denorm, __glibcpp_long_double_is_iec559:
2742	New macros.
2743	(__glibcpp_word_bits, __glibcpp_word): Likewise.
2744	(__glibcpp_byte): New typedef.
2745	(__float_storage, __double_storage, __long_double_storage): New types.
2746	(__glibcpp_float_infinity, __glibcpp_float_QNaN,
2747	__glibcpp_float_SNaN, __glibcpp_float_denorm_min): Now
2748	objects. Declare.
2749	(__glibcpp_double_infinity, __glibcpp_double_QNaN,
2750	__glibcpp_double_SNaN, __glibcpp_double_denorm_min): Likewise.
2751	(__glibcpp_long_double_infinity, __glibcpp_long_double_QNaN,
2752	__glibcpp_long_double_SNaN, __glibcpp_long_double_denorm_min):
2753	Likewise.
2754
2755	* src/limits.cc (__glibcpp_float_infinity, __glibcpp_float_QNaN,
2756	__glibcpp_float_SNaN, __glibcpp_float_denorm_min): Define.
2757	(__glibcpp_double_infinity, __glibcpp_double_QNaN,
2758	__glibcpp_double_SNaN, __glibcpp_double_denorm_min): Likewise.
2759	(__glibcpp_long_double_infinity, __glibcpp_long_double_QNaN,
2760	__glibcpp_long_double_SNaN, __glibcpp_long_double_denorm_min):
2761	Likewise.
2762
27632002-08-25  Gabriel Dos Reis  <gdr@integrable-solutions.net>
2764
2765	* include/std/std_limits.h: Indent conditional macro definitions.
2766
27672002-08-23  Phil Edwards  <pme@gcc.gnu.org>
2768
2769	* Makefile.am (check-abi):  Specify current directory.
2770	* acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE):  Fix shell syntax, use
2771	abi_baseline_triplet in baseline_file.
2772	* Makefile.in, aclocal.m4, configure:  Regenerate.
2773	* configure.target:  Add abi_baseline_triplet with default.
2774	* testsuite/abi_check.cc:  More error checking.
2775
27762002-08-23  Phil Edwards  <pme@gcc.gnu.org>
2777
2778	* config/linker-map.gnu:  Verbose comments, clean up spacing.
2779	* include/bits/stl_alloc.h:  Fix indentation of 'if' bodies, return
2780	statements.
2781	__allocator:  Change class declaration to struct.
2782	* docs/html/17_intro/C++STYLE:  Fix typo.
2783	* include/bits/stl_deque.h, include/bits/stl_list.h,
2784	include/bits/stl_map.h, include/bits/stl_multimap.h,
2785	include/bits/stl_vector.h:  Fix fallout from typo.
2786
27872002-08-22  Benjamin Kosnik  <bkoz@redhat.com>
2788
2789	* acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Set
2790	GLIBCPP_BUILD_ABI_CHECK based on cross compiling, build, host
2791	variables.
2792	* aclocal.m4: Regenerate.
2793	* testsuite/Makefile.am (noinst_PROGRAMS): Make conditional on
2794	native compiling.
2795	* testsuite/Makefile.in: Regenerate.
2796
27972002-08-22  Loren J. Rittle <ljrittle@acm.org>
2798
2799	* testsuite/abi_check.cc: Enhance shell portability.
2800	Support older binutils/readelf.
2801	* config/abi/i386-unknown-freebsd4.6: Add.
2802	* config/abi/i386-unknown-freebsd4.6/baseline_symbols.txt: New file.
2803
28042002-08-22  Paolo Carlini  <pcarlini@unitus.it>
2805
2806	* docs/html/faq/index.html: Add Loren James Rittle and
2807	Paolo Carlini to the list of v3 maintainers.
2808	* docs/html/faq/index.txt: Ditto.
2809	* docs/html/17_intro/RELEASE-NOTES: Ditto.
2810
28112002-08-22  Benjamin Kosnik  <bkoz@redhat.com>
2812	    Phil Edwards  <pme@gcc.gnu.org>
2813	    Ulrich Drepper  <drepper@redhat.com>
2814
2815	* Makefile.am (check-abi): New rule.
2816	* Makefile.in: Regenerate.
2817	* acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Export baseline_file.
2818	* aclocal.m4: Regenerate.
2819	* configure: Regenerate.
2820	* testsuite/Makefile.am (noinst_PROGRAMS): Add abi_check.
2821	(abi_check_SOURCES): Add.
2822	* testsuite/Makefile.in: Regenerate.
2823	* testsuite/abi_check.cc: New file.
2824	* config/abi: Add.
2825	* config/abi/i686-pc-linux-gnu: Add.
2826	* config/abi/i686-pc-linux-gnu/baseline_symbols.txt: New file.
2827
28282002-08-19  Benjamin Kosnik  <bkoz@redhat.com>
2829
2830	* configure.in (libtool_VERSION): Update to 5:1:0.
2831	* configure: Regenerate.
2832
28332002-08-19  Jonathan Wakely  <jw@kayari.org>
2834
2835	* docs/html/configopts.html, docs/html/documentation.html,
2836	docs/html/install.html, docs/html/22_locale/codecvt.html,
2837	docs/html/22_locale/ctype.html, docs/html/22_locale/howto.html,
2838	docs/html/22_locale/locale.html,
2839	docs/html/22_locale/messages.html: Conform to HTML 4.01 standard.
2840
28412002-08-15  Benjamin Kosnik  <bkoz@redhat.com>
2842
2843	* include/ext/stdio_filebuf.h (stdio_filebuf): Explicitly set
2844	_M_buf_size_opt to zero when unbuffering.
2845	* include/bits/fstream.tcc (filebuf::showmanyc): Simplify.
2846	Consistency checks for _M_buf_size_opt.
2847
2848	Revert PR libstdc++/7445
2849	* src/locale.cc (locale::classic): Revert.
2850
2851	* docs/html/17_intro/TODO: Add.
2852
28532002-08-15  Phil Edwards  <pme@gcc.gnu.org>
2854
2855	* docs/html/documentation.html:  Update doxygen links for 3.2.
2856
28572002-08-15  Steve Ellcey  <sje@cup.hp.com>
2858
2859	* libsupc++/unwind-cxx.h (__cxa_exception): Change catchTemp
2860	type from void* to _Unwind_Ptr.
2861	* libsupc++/eh_personality.cc (PERSONALITY_FUNCTION):
2862	Do not cast landing_pad or base_of_encoded_value to (void *).
2863	* libsupc++/eh_throw.cc (__gxx_exception_cleanup):
2864	Accept _URC_NO_REASON as a valid reason code.
2865
28662002-08-14  Jonathan Wakely  <jw@kayari.org>
2867
2868	* docs/html/22_locale/messages.html:  Use HTML entities for
2869	punctuation.
2870
28712002-08-13  Jonathan Wakely  <jw@kayari.org>
2872	    Phil Edwards  <pme@gcc.gnu.org>
2873
2874	* docs/html/documentation.html:  Use HTML entities for punctuation.
2875
28762002-08-09  Phil Edwards  <pme@gcc.gnu.org>
2877
2878	* include/bits/deque.tcc, include/bits/list.tcc,
2879	include/bits/stl_deque.h, include/bits/stl_iterator_base_funcs.h,
2880	include/bits/stl_list.h, include/bits/stl_map.h,
2881	include/bits/stl_multimap.h, include/bits/stl_queue.h,
2882	include/bits/stl_stack.h, include/bits/stl_vector.h,
2883	include/bits/vector.tcc:  Re-indent contents of namespace std,
2884	re-wrap comment lines as necessary.
2885
28862002-08-08  Danny Smith  <dannysmith@users.sourceforge.net>
2887	    Benjamin Kosnik  <bkoz@redhat.com>
2888
2889	* include/bits/istream.tcc (basic_istream::ignore): Use sbumpc,
2890	not snextc.
2891	* testsuite/27_io/narrow_stream_objects.cc (test10): Add.
2892
28932002-08-07  John David Anglin  <dave@hiauly1.hia.nrc.ca>
2894
2895	* libsupc++/Makefile.am (LTCOMPILE): Add LIBSUPCXX_PICFLAGS.
2896	* libsupc++/Makefile.in: Regenerate.
2897
28982002-08-05  Gabriel Dos Reis  <gdr@nerim.net>
2899
2900	PR/7491
2901	* include/bits/slice_array.h(_DEFINE_VALARRAY_OPERATOR):
2902	Instantiate with new function objects.
2903	* include/bits/mask_array.h (_DEFINE_VALARRAY_OPERATOR): Likewise.
2904	Reformat.  Uglify.
2905	* include/bits/gslice_array.h: Likewise.
2906	* include/bits/indirect_array.h: Likewise.
2907
29082002-08-03  Gabriel Dos Reis  <gdr@nerim.net>
2909
2910	* testsuite/26_numerics/valarray_name_lookup.cc: Rename from
2911	testsuite/26_numerics/valarray_name_lookup.C
2912
2913	* include/bits/valarray_array.h (_DEFINE_ARRAY_FUNCTION): Use our
2914	object function surrogates.
2915	* include/bits/valarray_meta.h (__shift_left): Fix typo.
2916	(_BinFunClos<>): Remove.
2917	(_BinFunBase<>): Likewise.
2918	(_BinFunBase1<>):Likewise.
2919	(_BinFunBase2<>): Likewise.
2920	(_DEFINE_EXPR_RELATIONAL_OPERATOR): Likewise.
2921	(_DEFINE_EXPR_UNARY_OPERATOR): Adjust definition.
2922	(_DEFINE_EXPR_BINARY_OPERATOR): Likewise.
2923	(_DEFINE_EXPR_BINARY_FUNCTION): Likewise.
2924	* include/std/std_valarray.h: Dont #include <functional> anymore.
2925	(_Bitwise_or<>, _Bitwise_and<>, _Bitwise_xor<>, _Shift_left<>,
2926	_Shift_right<>): Remove.
2927	(_DEFINE_VALARRAY_AUGMENTED_ASSIGNMENT): Adjust instantiation.
2928	(_DEFINE_BINARY_OPERATOR): Tweak definition.
2929	(_DEFINE_LOGICAL_OPERATOR): Remove.
2930	* testsuite/26_numerics/valarray_name_lookup.C (main): Add more tests.
2931
29322002-08-02  Gabriel Dos Reis  <gdr@nerim.net>
2933
2934	* include/bits/valarray_meta.h (_UnFunBase<>): Remove.
2935	(_UnFunClos<>): Same.
2936	(_UnBase<>): Reformat.  Make first template-parameter non
2937	template.
2938	(_UnClos<>): Likewise.
2939	(_Expr<>): Reformate.  Adjust unary member operator return types.
2940	(_DEFINE_EXPR_UNARY_OPERATOR): Adjust definition.
2941	(_DEFINE_EXPR_UNARY_FUNCTION): Likewise.
2942	* include/std/std_valarray.h (_UnClos<>): Adjust declaration.
2943	(valarray<>::_UnaryOp<>):  New nested traits. Adjust unary member
2944	operator return types.  Reformat.
2945	(_Bitwise_not): Remove.
2946	(_DEFINE_VALARRAY_UNARY_OPERATOR): Adjust definition.
2947	* testsuite/26_numerics/valarray_name_lookup.C: New test.
2948
29492002-08-02  Danny Smith  <dannysmith@users.sourceforge.net>
2950
2951	* config/os/newlib/ctype_inline.h (is): Don't offset _M_table.
2952	(scan_is): Use this->is.
2953	(scan_not): Likewise.
2954
29552002-08-02  Benjamin Kosnik  <bkoz@redhat.com>
2956
2957	Revert PR libstdc++/6594
2958	* src/strstream.cc (strstreambuf): Revert.
2959	(strstreambuf::overflow): Same.
2960	(strstreambuf::~strstreambuf): Same.
2961	* testsuite/backward/strstream_members.cc (test02): Add.
2962
2963	* docs/html/abi.txt: Update. Spell check.
2964
2965	* testsuite/19_diagnostics/stdexceptions.cc (test04): Add bool test.
2966
2967	* testsuite/Makefile.am (INCLUDES): Add LIBSUPCXX_INCLUDES.
2968	* testsuite/Makefile.in: Regenerate.
2969	* testsuite/testsuite_hooks.h: Use __throw_exception_again,
2970	include functexcept.h so that -fno-exceptions will build.
2971
29722002-08-02  Gabriel Dos Reis  <gdr@nerim.net>
2973
2974	* include/bits/valarray_meta.h (__unary_plus, __negate,
2975	__bitwise_not, __plus, __minus, __multiplies, __divides,
2976	__modulus, __bitwise_xor, __bitwise_or, __bitwise_and,
2977	__shift_left, __shift_right, __logical_and, __logical_or,
2978	__logical_not, __equal_to, __not_equal_to, __less, __less_equal,
2979	__greater_equal, __greater, __atan2, __pow): New function object
2980	classes.
2981	(__fun<>):  New function traits class.
2982
29832002-08-01  Rick Danos  <rdanos@hotmail.com>
2984
2985	PR libstdc++/7461
2986	* config/os/newlib/ctype_noninline.h (classic_table): Add offset.
2987	* config/os/newlib/ctype_inline.h (is): Use static_cast.
2988
29892002-08-01  Neil Booth  <neil@daikokuya.co.uk>
2990
2991	* libsupc++/Makefile.am (LT_COMPILE): Remove C++ flags.
2992	* libsupc++/Makefile.in: Regenerate.
2993
29942002-08-01  Benjamin Kosnik  <bkoz@redhat.com>
2995	    Jakub Jelinek  <jakub@redhat.com>
2996
2997	* config/linker-map.gnu: Change CXXABI_1 to CXXABI_1.2,
2998	GLIBCPP_3.1 to GLIBCPP_3.2.
2999
30002002-07-31  Benjamin Kosnik  <bkoz@redhat.com>
3001	    Mark Mitchell  <mark@codesourcery.com>
3002
3003	PR libstdc++/7442
3004	* libsupc++/cxxabi.h (class __base_class_type_info::hwm_bit):
3005	Change to __hwm_bit.
3006	(__class_type_info): And here.
3007
30082002-07-31  Benjamin Kosnik  <bkoz@redhat.com>
3009
3010	PR libstdc++/7442
3011	* libsupc++/cxxabi.h
3012	(__base_class_info): Change to __base_class_type_info. 2.9.5p6c
3013	(__base_class_info::__base): Change to __base_type. 2.9.5p6c
3014	(__base_class_info::offset_shift): Change to __offset_shift. 2.9.5p6c
3015	(__vmi_class_type_info::__base_info): Don't make const, of type
3016	__base_class_type_info, as per 2.9.5p6c
3017	(__pbase_type_info::__qualifier_flags): Change to __flags, as per
3018	2.9.5p7.
3019	(__pbase_type_info::__qualifier_masks): Change to __masks, as per
3020	2.9.5p7.
3021	(__pointer_to_member_type_info::__context_class): Change member to
3022	__context, as per 2.9.5p9.
3023	* libsupc++/tinfo2.cc (__pointer_catch): Change __context_class to
3024	__context.
3025	* libsupc++/tinfo2.cc (__do_catch): Change __qualifier_flags to
3026	__flags.
3027	* libsupc++/tinfo.cc (__do_find_public_src): Change __base to
3028	__base_type.
3029	* libsupc++/tinfo.cc (__do_dyncast): Same.
3030	* libsupc++/tinfo.cc (__do_upcast): Same.
3031
30322002-07-31  Benjamin Kosnik  <bkoz@redhat.com>
3033
3034	* src/fstream.cc: Add _GLIBCPP_USE_WCHAR_T guards.
3035
30362002-07-31  Simon Whomsley  <whomsley@avacadcam.com>
3037
3038	* docs/html/22_locale/howto.html: Fix.
3039
30402002-07-31  Alex Kompel  <shurik@sequoiap.com>
3041
3042	PR libstdc++/7445
3043	* src/locale.cc (locale::classic): Move locks inside !_S_classic
3044	block.
3045
30462002-07-31  Benjamin Kosnik  <bkoz@redhat.com>
3047
3048	* docs/html/abi.txt: Update.
3049
30502002-07-30  Benjamin Kosnik  <bkoz@redhat.com>
3051	    Gabriel Dos Reis  <gdr@nerim.net>
3052
3053	* include/bits/char_traits.h: Remove generic definitions.
3054	* include/bits/streambuf_iterator.h (istreambuf_iterator): Use
3055	eof, not -2.
3056	* include/bits/istream.tcc (istream::readsome): Don't check
3057	against eof, instead use constants.
3058	(istream::sync): Same.
3059	(istream::sentry::sentry): Use eq_int_type.
3060	(istream::get): Same.
3061	* include/bits/ostream.tcc: Change __pad to
3062	__pad<_CharT, _Traits>::_S_pad.
3063	* include/bits/locale_facets.h: Add __pad_traits generic and
3064	ostreambuf_iterator specialization.
3065	* include/bits/locale_facets.tcc: Change __pad into struct __pad
3066	with a _CharT and _Traits template parameter and _S_pad static
3067	member function.
3068	* src/locale-inst.cc: Update __pad instantiations.
3069
3070	* include/std/std_fstream.h: Declare _M_underflow_common
3071	specializations.
3072	* src/fstream.cc: New. Add _M_underflow_common specializations.
3073	* include/bits/fstream.tcc (filebuf::close): Use traits_type.
3074	(filebuf::_M_underflow_common(bool)): Remove generic version, as
3075	sys_ungetc and custom int_types don't get along.
3076	* include/std/std_streambuf.h: Add _M_pos.
3077	* src/Makefile.am (sources): Add fstream.cc.
3078	* src/Makefile.in: Regenerate.
3079
3080	* testsuite/21_strings/capacity.cc: Add char_traits specializations.
3081	* testsuite/22_locale/codecvt_members_unicode_char.cc: Same.
3082	* testsuite/22_locale/codecvt_members_unicode_wchar_t.cc: Same.
3083	* testsuite/22_locale/ctor_copy_dtor.cc: Same.
3084	* testsuite/27_io/filebuf_virtuals.cc (test07): Move to...
3085	* testsuite/27_io/filebuf.cc: ...here.
3086	* testsuite/testsuite_hooks.h: Add gnu_char, gnu_int, char_traits
3087	specialization for both.
3088	* testsuite/27_io/streambuf.cc: Add instantiation test,
3089	testsuite_hooks include.
3090	* testsuite/27_io/istream.cc: Same.
3091	* testsuite/27_io/ostream.cc: Same.
3092	* testsuite/27_io/fstream.cc: Same.
3093	* testsuite/27_io/stringstream.cc: Same.
3094	* testsuite/27_io/filebuf.cc: Same.
3095	* testsuite/27_io/stringbuf.cc: Same.
3096
30972002-07-29  Alan Modra  <amodra@bigpond.net.au>
3098
3099	* config/cpu/powerpc/cpu_limits.h (__glibcpp_long_bits): Define.
3100	* configure.target (cpu_include_dir): Use cpu/powerpc for powerpc64.
3101	* config/cpu/powerpc/atomicity.h (__always_swap): Remove.
3102	(__test_and_set): Remove.
3103	(_STWCX): Define and use.
3104
31052002-07-26  Phil Edwards  <pme@gcc.gnu.org>
3106
3107	* libsupc++/new (placement delete):  Remove unused parameter names.
3108
31092002-07-25  Benjamin Kosnik  <bkoz@redhat.com>
3110
3111	PR libstdc++/7216
3112	* include/std/std_istream.h (basic_iostream): Add typedefs for
3113	char_type, int_type, pos_type, off_type, and traits_type.
3114	* testsuite/27_io/iostream.cc (test01): Add typedef tests.
3115	* testsuite/27_io/istream.cc: Same.
3116	* testsuite/27_io/ostream.cc: Same.
3117	* testsuite/27_io/filebuf.cc: Same.
3118	* testsuite/27_io/stringbuf.cc: Replace content, move to...
3119	* testsuite/27_io/stringbuf_members.cc: ...here.
3120	* testsuite/27_io/streambuf.cc: Replace content, move to...
3121	* testsuite/27_io/streambuf_members.cc: ...here.
3122	* testsuite/27_io/stringstream.cc: Replace content, move to...
3123	* testsuite/27_io/stringstream_members.cc: ...here.
3124	* testsuite/27_io/ios.cc: New file.
3125	* testsuite/27_io/fstream.cc: New file.
3126	* testsuite/27_io/ifstream.cc: New file.
3127	* testsuite/27_io/ofstream.cc: New file.
3128	* testsuite/27_io/istringstream.cc: New file.
3129	* testsuite/27_io/ostringstream.cc: New file.
3130
31312002-07-25  Benjamin Kosnik  <bkoz@redhat.com>
3132
3133	PR libstdc++/7220
3134	* include/bits/istream.tcc (istream::ignore): Don't extract on
3135	zero.
3136	* testsuite/27_io/istream_unformatted.cc (test10): Add.
3137
31382002-07-25  Benjamin Kosnik  <bkoz@redhat.com>
3139
3140	* testsuite/27_io/ios_base_type.cc: Move to...
3141	* testsuite/27_io/ios_base_types.cc: ...here.
3142
31432002-07-24  Benjamin Kosnik  <bkoz@redhat.com>
3144
3145	PR libstdc++/7222
3146	* src/locale.cc (locale::locale(const char*)): Use setlocale NULL.
3147	* testsuite/22_locale/ctor_copy_dtor.cc (test02): New.
3148
31492002-07-24  Benjamin Kosnik  <bkoz@redhat.com>
3150
3151	PR libstdc++/7230
3152	* config/linker-map.gnu: Revert strstream patch from 2002-07-01.
3153	* include/Makefile.am (backward_headers): Use strstream, not
3154	strstream.h.
3155	* include/Makefile.in: Regenerate.
3156	* include/backward/strstream: Revert.
3157	* include/backward/strstream.h: Remove.
3158	* src/strstream.cc: Revert.
3159	* testsuite/backward/strstream_members.cc: Change include.
3160
31612002-07-24  Benjamin Kosnik  <bkoz@redhat.com>
3162
3163	PR libstdc++/7219
3164	* include/bits/ios_base.h (ios_base::streampos): Add.
3165	(ios_base::streamoff): Add.
3166	* testsuite/27_io/ios_base_type.cc: New.
3167
31682002-07-24  Benjamin Kosnik  <bkoz@redhat.com>
3169
3170	PR libstdc++/7286
3171	* libsupc++/new: Add placement delete.
3172	* testsuite/18_support/new_delete_placement.cc: New.
3173
3174	* docs/html/abi.txt: Fix typos.
3175
31762002-07-23  Benjamin Kosnik  <bkoz@redhat.com>
3177
3178	* docs/html/documentation.html: Remove libstdc++-v3.0.86 links,
3179	confusing usage of "latest."
3180	De-tangle contributor information from introductory notes.
3181	Move abi.txt link placement, activate.
3182	Re-organize.
3183	Move chapter info into old FAQ format.
3184	* docs/html/organization.html: Removed, obsoleted by doxygen work.
3185	* docs/html/abi.txt: Add notes on testing ABI changes.
3186
31872002-07-20  Phil Edwards  <pme@gcc.gnu.org>
3188
3189	* docs/html/abi.txt:  New file.
3190	* docs/html/23_containers/howto.html:  Tweak vector-overhead text.
3191	* docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
3192	Import from upstream, R22.
3193
3194	* include/bits/char_traits.h, include/bits/stl_iterator.h,
3195	include/bits/stl_iterator_base_types.h, libsupc++/exception,
3196	libsupc++/new, libsupc++/typeinfo:  Use @brief markup.
3197
3198	* include/bits/deque.tcc, include/bits/stl_alloc.h,
3199	include/bits/stl_deque.h, include/bits/stl_list.h:  Postpone removal
3200	of deprecated functions until 3.4.  (Same timeframe, different text.)
3201	* include/bits/stl_vector.h:  Ditto.  Also do the same cleanups that
3202	the other sequence classes received.
3203
32042002-07-18  Brendan Kehoe  <brendan@zen.org>
3205
3206	* bits/slice_array.h (_DEFINE_VALARRAY_OPERATOR): Fix typo of
3207	_Nname to _Name.
3208
32092002-07-19  Gabriel Dos Reis  <gdr@nerim.net>
3210
3211	DR/123
3212	* include/bits/slice_array.h
3213	(slice_array<T>::operator=(const T&)): Constify.
3214	* include/bits/gslice_array.h
3215	(gslice_array<T>::operator=(const T&)):  Likewise.
3216	* include/bits/mask_array.h
3217	(mask_array<T>::operator=(const T&)): Likewise.
3218	* include/bits/indirect_array.h
3219	(indirect_array<T>::operator=(const T&): Likewise.
3220
32212002-07-17  Phil Edwards  <pme@gcc.gnu.org>
3222
3223	* docs/doxygen/run_doxygen:  Remove template parameter names from
3224	"Compound List" summary page.  Reformat.
3225	* docs/html/documentation.html:  XHTML fixes.
3226
32272002-07-16  Andreas Schwab  <schwab@suse.de>
3228
3229	* libsupc++/new (set_new_handler): Declare to not throw any
3230	exceptions.
3231	* libsupc++/new_handler.cc (set_new_handler): Likewise.
3232
32332002-07-16  Gabriel Dos Reis  <gdr@nerim.net>
3234
3235	* include/Makefile.am (bits_headers): Remove slice.h
3236	* include/Makefile.in: Regenerate.
3237	* include/bits/slice.h (slice): move to include/bits/slice_array.h
3238	* include/bits/slice.h Remove.
3239	* include/std/std_valarray.h: Don't #include bits/slice.h anymore.
3240	* include/bits/slice_array.h: Comply to official coding styles.
3241	* testsuite/26_numerics/slice.cc: New test.
3242
32432002-07-15  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
3244
3245	* config/os/solaris/solaris2.5/ctype_base.h (ctype_base): Fix
3246	print to match vendor <ctype.h>.
3247
32482002-07-15  Phil Edwards  <pme@gcc.gnu.org>
3249
3250	* docs/html/faq/index.html:  Fix download links.
3251	* docs/html/faq/index.txt:  Regenerate.
3252	* docs/html/17_intro/porting.html:  Regenerate from earlier changes.
3253
32542002-07-11  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
3255
3256	* configure.target (target_os switch): Allow for irix6*o32
3257	configurations.
3258
32592002-07-10  Gabriel Dos Reis  <gdr@nerim.net>
3260
3261	* include/bits/valarray_meta.h (_UnFunBase): Take a second
3262	template parameter. Remove _M_func data member.
3263	(_UnFunClos): Take a third template parameter.
3264	(__abs, __cos, __acos, __cosh, __sin, __asin, __sinh, __tan,
3265	__atan, __tanh, __exp, __log, __log10, __sqrt): New classes.
3266	(_DEFINE_EXPR_UNARY_OPERATOR): Adjust definition.
3267
32682002-07-08  Eric Christopher  <echristo@redhat.com>
3269
3270	* configure.target: Fix comment for mips atomicity. Add
3271	mips*-*-linux* target, enable atomic operations there.
3272	* config/cpu/mips/atomicity.h: Fix comments, remove
3273	#ifndef/#endif. Add push/pop mips2.
3274
32752002-07-08  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
3276
3277	* include/bits/stl_deque.h (_Deque_alloc_base):  Change order of
3278	member declarations to avoid compiler warnings and restore 3.1 ABI.
3279
32802002-07-08  Phil Edwards  <pme@gcc.gnu.org>
3281
3282	* docs/html/23_containers/howto.html:  Link to dk_std::vector paper
3283	and homepage.
3284
32852002-07-07  Paolo Carlini  <pcarlini@unitus.it>
3286
3287	PR libstdc++/7186
3288	* include/bits/stl_deque.h (_Deque_iterator::operator-):
3289	Make non-member, as already happens for the comparison
3290	operators in accord with DR179 (Ready).
3291	* testsuite/23_containers/deque_operators.cc: Add test02.
3292
32932002-07-04  Benjamin Kosnik  <bkoz@redhat.com>
3294	    Jack Reeves  <jackw_reeves@hotmail.com>
3295
3296	* include/std/std_streambuf.h (basic_streambuf::_M_buf): Change to
3297	size_t, from int_type.
3298	(basic_streambuf::_M_buf_size_opt): Same.
3299	(basic_streambuf::_S_pback_sizex): Same.
3300	* include/bits/streambuf.tcc: Same.
3301	* include/std/std_streambuf.h (basic_streambuf::snextc): Use
3302	eq_int_type.
3303	(basic_streambuf::uflow): Same.
3304	* include/bits/sstream.tcc (basic_stringbuf::overflow): Use
3305	to_char_type.
3306	* include/bits/basic_ios.tcc (basic_ios::init): Use _CharT().
3307	* include/bits/streambuf.tcc (basic_streambuf::xsgetn): Use
3308	eq_int_type.
3309	(basic_streambuf::xsputn): Same.
3310	(__copy_streambufs): Same.
3311
33122002-07-03  Benjamin Kosnik  <bkoz@redhat.com>
3313
3314	* include/std/std_memory.h: Fix formatting.
3315	* testsuite/20_util/auto_ptr_neg.cc: New.
3316	* testsuite/20_util/auto_ptr.cc: Tweaks.
3317	* testsuite/23_containers/map_operators.cc (test01): Split into..
3318	* testsuite/23_containers/map_operators_neg.cc (test01): ...this. New.
3319	* testsuite/23_containers/set_operators.cc: Move to...
3320	* testsuite/23_containers/set_operators_neg.cc: ...here.
3321	* testsuite/README: Add some more naming rules.
3322
33232002-07-03  Steev Wilcox  <steev@paradigmds.com>
3324
3325	PR libstdc++/7057
3326	* include/ext/stl_hashtable.h: Fix.
3327	* testsuite/ext/hash_map.cc: New.
3328
33292002-07-03  Jack Reeves  <jackw_reeves@hotmail.com>
3330	    Kenny Simpson  <theonetruekenny@yahoo.com>
3331	    Phil Edwards  <pme@gcc.gnu.org>
3332
3333	PR libstdc++/3946
3334	* testsuite/20_util/auto_ptr.cc (test08):  New test.
3335	* include/std/std_memory.h (auto_ref_ptr):  Make constructor explicit.
3336	(auto_ptr::operator auto_ptr_ref):  Fix typo.
3337	General reformatting and doxygenating of the whole file.
3338
33392002-07-03  Benjamin Kosnik  <bkoz@redhat.com>
3340
3341	PR libstdc++/7097
3342	* include/c/std_cwchar.h: Fix.
3343
33442002-07-02  Benjamin Kosnik  <bkoz@redhat.com>
3345
3346	PR libstdc++/6410
3347	* include/bits/locale_facets.h (moneypunct::moneypunct): Add const
3348	char* name parameter.
3349	* config/locale/gnu/monetary_members.cc: Use it.
3350	* config/locale/generic/monetary_members.cc: Same.
3351	* src/localename.cc (_Impl::_Impl(const char*, size_t)): Use it.
3352
3353	* include/backward/strstream.h: Update date.
3354
33552002-07-02  Paolo Carlini  <pcarlini@unitus.it>
3356
3357	PR libstdc++/6642
3358	* include/bits/stl_iterator.h
3359	(__normal_iterator::operator-(const __normal_iterator&)):
3360	Make non-member, as already happens for the comparison
3361	operators in accord with DR179 (Ready).
3362	* testsuite/24_iterators/iterator.cc: Add test from the PR.
3363
33642002-07-02  Phil Edwards  <pme@gcc.gnu.org>
3365
3366	PR libstdc++/7173
3367	* acinclude.m4:  Simplify determination of gcc_version, and move
3368	up to GLIBCPP_CONFIGURE.
3369	* configure.in (release_VERSION):  Really remove.
3370	(AM_INIT_AUTOMAKE, AM_CONFIG_HEADER):  Move after GLIBCPP_CONFIGURE.
3371	* aclocal.m4, configure:  Regenerate.
3372
33732002-07-02  Phil Edwards  <pme@gcc.gnu.org>
3374
3375	* docs/html/configopts.html, docs/html/install.html:  Tweaks.
3376	* include/ext/algorithm, include/ext/hash_map, include/ext/hash_set,
3377	include/ext/iterator, include/ext/numeric, include/ext/rb_tree,
3378	include/ext/slist, include/ext/stl_rope.h:  Add doxygen hooks.
3379
33802002-07-01  Benjamin Kosnik  <bkoz@redhat.com>
3381
3382	* include/backward/strstream: Remove namespace std. Transfer to...
3383	* include/backward/strstream.h: ...here. Qualify std names.
3384	* src/strstream.cc: Remove namespace std.
3385	* include/Makefile.am (backward_headers): Remove strstream.h.
3386	* include/Makefile.in: Regenerate.
3387	* config/linker-map.gnu: Export strstream bits.
3388
3389	* src/fstream-inst.cc: Tweak.
3390	* src/io-inst.cc: Same.
3391	* src/istream-inst.cc: Same.
3392	* src/misc-inst.cc: Same.
3393	* src/ostream-inst.cc: Same.
3394	* src/sstream-inst.cc: Same.
3395	* src/valarray-inst.cc: Same.
3396	* src/misc-inst.cc: Remove unused instantiations.
3397
33982002-07-01  Benjamin Kosnik  <bkoz@redhat.com>
3399
3400	* configure.in (libtool_VERSION): Bump to 5:0:0.
3401	* configure: Regenerate.
3402
34032002-06-28  Phil Edwards  <pme@gcc.gnu.org>
3404
3405	PR libstdc++/7157, PR libstdc++/7158, PR libstdc++/7161
3406	* include/std/std_queue.h:  Include deque.tcc, vector.tcc.
3407	* include/std/std_stack.h:  Include deque.tcc.
3408	* testsuite/23_containers/adaptors.cc:  New file.
3409
34102002-06-27  Phil Edwards  <pme@gcc.gnu.org>
3411
3412	* include/bits/stl_alloc.h:  Deprecate all 'reallocate' memfns.
3413	* docs/html/ext/howto.html:  Update allocator notes.
3414
34152002-06-26  Benjamin Kosnik  <bkoz@redhat.com>
3416
3417	* configure.in (INTERFACE): Remove.
3418	(release_VERSION): Remove.
3419	* acinclude.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Change include placement.
3420	(libstdcxx_interface): Change. Use gcc methods to determine version.
3421	* configure: Regenerate.
3422	* aclocal.m4: Regenerate.
3423
34242002-06-25  DJ Delorie  <dj@redhat.com>
3425
3426	* acinclude.m4 (GLIBCPP_CONFIGURE): Split out
3427	GLIBCPP_TOPREL_CONFIGURE.
3428	* aclocal.m4: Likewise.
3429	* configure.in: Call it before AC_CANONICAL_SYSTEM.
3430	* configure: Regenerate.
3431
34322002-06-25  Jessica Han  <jessica@cup.hp.com>
3433
3434	* config/os/hpux/os_defines.h Define _GLIBCPP_VTABLE_PADDING
3435	* libsupc++/tinfo.cc Handle the 8 byte aligned vtable entries when
3436	_GLIBCPP_VTABLE_PADDING is defined.
3437
34382002-06-25  Benjamin Kosnik  <bkoz@redhat.com>
3439
3440	* include/bits/stl_alloc.h: Additional formatting.
3441
34422002-06-24  Phil Edwards  <pme@gcc.gnu.org>
3443
3444	* include/bits/stl_alloc.h:  Reformat as per C++STYLE.
3445
34462002-06-24  Phil Edwards  <pme@gcc.gnu.org>
3447
3448	* config/cpu/*/bits/*:  Move header files up a level.  Remove bits.
3449	* config/os/*/bits/*:  Likewise.
3450	* configure.in:  Update.
3451	* configure:  Regenerate.
3452	* configure.target:  Update.
3453	* docs/html/17_intro/porting.texi:  Update.
3454
34552002-06-21  Phil Edwards  <pme@gcc.gnu.org>
3456
3457	* include/bits/stl_map.h, include/bits/stl_multimap.h,
3458	include/bits/stl_queue.h, include/bits/stl_stack.h:  Reformat and
3459	complete doxygenation.
3460	* include/bits/boost_concept_check.h:  Minor comment.
3461
34622002-06-21  Benjamin Kosnik  <bkoz@redhat.com>
3463
3464	* include/c_compatibility: New.
3465	* include/c_compatibility/assert.h: New.
3466	* include/c_compatibility/ctype.h: New.
3467	* include/c_compatibility/errno.h: New.
3468	* include/c_compatibility/float.h: New.
3469	* include/c_compatibility/iso646.h: New.
3470	* include/c_compatibility/limits.h: New.
3471	* include/c_compatibility/locale.h: New.
3472	* include/c_compatibility/math.h: New.
3473	* include/c_compatibility/setjmp.h: New.
3474	* include/c_compatibility/signal.h: New.
3475	* include/c_compatibility/stdarg.h: New.
3476	* include/c_compatibility/stddef.h: New.
3477	* include/c_compatibility/stdio.h: New.
3478	* include/c_compatibility/stdlib.h: New.
3479	* include/c_compatibility/string.h: New.
3480	* include/c_compatibility/time.h: New.
3481	* include/c_compatibility/wchar.h: New.
3482	* include/c_compatibility/wctype.h: New.
3483
3484	* include/c/std_cerrno.h: Get out of the way... define errno.
3485	* include/c/std_cmath.h: Add abs, modf overloads.
3486	Undefine C99 isms. Still not sure how to deal with this sanely.
3487	* include/c/std_csetjmp.h: Tweak.
3488	* include/c/std_cwchar.h: Include cstddef for size_t.
3489
3490	* include/c_std/std_cmath.h: Remove extra function.
3491
3492	Pendantic std usage in testsuites.
3493	* testsuite/17_intro/header_cstdlib.cc (test01): Qualify ldiv_t
3494	with std.
3495	* testsuite/17_intro/header_cwchar.cc: Tweak.
3496	* testsuite/22_locale/codecvt_members_char_char.cc (test03): Use
3497	std::setlocale.
3498	* testsuite/22_locale/ctype_to_wchar_t.cc (test05): Same.
3499	* testsuite/22_locale/ctype_to_char.cc (test05): Same.
3500	* testsuite/22_locale/ctype_is_wchar_t.cc (test05): Same.
3501	* testsuite/22_locale/ctype_is_char.cc (test05): Same.
3502	* testsuite/22_locale/codecvt_members_wchar_t_char.cc (test03): Same.
3503	* testsuite/22_locale/time_get_members_wchar_t.cc (test08): Same.
3504	* testsuite/22_locale/time_get_members_char.cc (test08): Same.
3505	* testsuite/22_locale/time_put_members_wchar_t.cc (test04): Same.
3506	* testsuite/22_locale/time_put_members_char.cc (test04): Same.
3507	* testsuite/22_locale/num_put_members_wchar_t.cc (test04): Same.
3508	* testsuite/22_locale/num_put_members_char.cc (test04): Same.
3509	* testsuite/22_locale/numpunct_members_wchar_t.cc (test03): Same.
3510	* testsuite/22_locale/numpunct_members_char.cc (test03): Same.
3511	* testsuite/22_locale/num_get_members_wchar_t.cc: Same.
3512	* testsuite/22_locale/num_get_members_char.cc: Same.
3513	* testsuite/22_locale/money_put_members_wchar_t.cc (test07): Same.
3514	* testsuite/22_locale/money_put_members_char.cc (test07): Same.
3515	* testsuite/22_locale/moneypunct_members_wchar_t.cc (test03): Same.
3516	* testsuite/22_locale/moneypunct_members_char.cc (test03): Same.
3517	* testsuite/22_locale/money_get_members_wchar_t.cc (test08): Same.
3518	* testsuite/22_locale/money_get_members_char.cc (test08): Same.
3519	* testsuite/22_locale/messages_members_char.cc (test03): Same.
3520	* testsuite/22_locale/collate_members_wchar_t.cc (test04): Same.
3521	* testsuite/22_locale/collate_members_char.cc (test04): Same.
3522	* testsuite/26_numerics/fabs_inline.cc: Use std::printf.
3523	* testsuite/27_io/istream_seeks.cc (test02): Qualify abort.
3524	* testsuite/27_io/istream_extractor_arith.cc (test11): Qualify strtol.
3525
35262002-06-20  Benjamin Kosnik  <bkoz@redhat.com>
3527
3528	* libsupc++/Makefile.am (libsupc__convenience_la_SOURCES): Add
3529	c_sources.
3530
35312002-06-20  Benjamin Kosnik  <bkoz@redhat.com>
3532
3533	* src/ext-inst.cc (__gnu_cxx): Use instead of std:: for extensions.
3534	Use size_type instead of unsigned long.
3535
35362002-06-20  Steve Ellcey  <sje@cup.hp.com>
3537
3538	* src/ext-inst.cc (_S_fetch): Add explicit templates for char and
3539	wchar types.
3540	(_S_min_len): Ditto.
3541
35422002-06-20  Benjamin Kosnik  <bkoz@redhat.com>
3543
3544	* include/Makefile.am: Add rules.
3545	* include/Makefile.in: Regenerate.
3546
3547	* acinclude.m4: Define GLIBCPP_C_HEADERS_COMPATIBILITY.
3548	* aclocal.m4: Regenerate.
3549	* configure: Regenerate.
3550	* configure.target (c_model, c_compatibility): Add.
3551
3552	* libsupc++/Makefile.am (c_sources): New.
3553	(libsupc___la_SOURCES): Add c_sources.
3554	(LTCOMPILE): Remove INCLUDES.
3555	(GCC_INCLUDES): New.
3556	(C_COMPILE): New, like COMPILE but without INCLUDES.
3557	(cxa_demangle.o): Use C_COMPILE.
3558	(dyn-string.o): Use C_COMPILE.
3559
3560	* include/c/std_cstdarg.h: Define __need___va_list.
3561	* include/c/std_cstddef.h: Define need_size_t, need_ptrdiff_t,
3562	need_NULL, need_offsetof.
3563
35642002-06-19  Steve Ellcey  <sje@cup.hp.com>
3565
3566	* configure.in (HAVE_FINITE*, HAVE_ISINF*, HAVE_ISNAN*):  Remove
3567	definitions in hpux11 cross-build because these functions do
3568	not exist on hpux11 (but some exist on hpux10); move defaults out
3569	into existing sections.
3570	* configure:  Regenerate.
3571
35722002-06-18  Benjamin Kosnik  <bkoz@redhat.com>
3573
3574	* include/c/std_cwchar.h: Guard. Add mbstate_t bits.
3575	* include/c/std_cwctype.h: Guard.
3576
3577	* libsupc++/eh_alloc.cc: Tweak include order.
3578	* libsupc++/pure.cc: Use cstdio.
3579	* libsupc++/new_op.cc: Remove malloc forward declaration, as
3580	cstdlib brings it in. Use std::malloc.
3581
3582	* src/Makefile.am (sources): Remove cmath.cc.
3583	* src/Makefile.in: Regenerate.
3584	* src/cmath.cc: Remove.
3585
35862002-06-18  Phil Edwards  <pme@gcc.gnu.org>
3587
3588	* configure.target:  Force mips to use the generic cpu routines.
3589
35902002-06-18  Phil Edwards  <pme@gcc.gnu.org>
3591
3592	* configure.host:  Delete file.
3593	* configure.target:  More documentation.  Factor out common parts of
3594	script into "intelligent" settings about defaults.  Remove redundancy.
3595
3596	* acinclude.m4:  Update comments.  Do not call configure.host.
3597	(GLIBCPP_ENABLE_SYMVERS):  If disabled, do not bother checking for
3598	libgcc_s.
3599	* configure.in:  Slight reformatting, more comments.  Factor out
3600	"config/" from all the directories.
3601	* docs/html/17_intro/porting.texi:  Update and expand.
3602	* testsuite/Makefile.am (AM_RUNTESTFLAGS):  Move empty setting
3603	from configure.host.
3604
3605	* aclocal.m4, configure, docs/html/17_intro/porting.html,
3606	testsuite/Makefile.in:  Regenerate.
3607
36082002-06-16  Phil Edwards  <pme@gcc.gnu.org>
3609
3610	* docs/doxygen/TODO:  Update.
3611	* docs/doxygen/tables.html:  Uncomment magical middle column.
3612	* docs/doxygen/user.cfg.in:  Kludge to ignore function-like macros.
3613	* include/bits/stl_queue.h:  Doxygenate and reformat.
3614	* include/bits/ios_base.h, include/std/std_streambuf.h:  Add comment
3615	for deprecated names required by the standard.
3616
36172002-06-14  J.T. Conklin  <jtc@acorntoolworks.com>
3618
3619	* configure.in (target_alias): Fix.
3620	* configure: Regenerate.
3621	* aclocal.m4: Regenerate.
3622
36232002-06-12  Phil Edwards  <pme@gcc.gnu.org>
3624
3625	* include/Makefile.am:  Add new files.
3626	* include/Makefile.in:  Regenerate.
3627
3628	* include/bits/stl_deque.h, include/bits/stl_list.h,
3629	include/bits/stl_vector.h:  Clean up, reformat.  Move definitions...
3630	* include/bits/deque.tcc, include/bits/list.tcc,
3631	include/bits/vector.tcc:  ...to here.  New files.
3632
3633	* include/ext/stl_hashtable.h:  Inclide correct full headers.
3634	* include/std/std_deque.h:  Include .tcc files for now.
3635	* include/std/std_list.h:  Likewise.
3636	* include/std/std_vector.h:  Likewise.
3637
36382002-06-12  Daniel Jacobowitz  <drow@mvista.com>
3639
3640	* Makefile.am: Add FLAGS_TO_PASS.
3641	* Makefile.in: Regenerated.
3642
36432002-06-11  J.T. Conklin  <jtc@acorntoolworks.com>
3644	    Benjamin Kosnik  <bkoz@redhat.com>
3645
3646	* configure.target: Set os_include_dir to config/os/qnx/qnx6.1
3647	under *-qnx6.[12]*.
3648	* configure.in: Add support for *-qnx6.[12]*.
3649	* configure: Regenerate.
3650
3651	* config/os/qnx, config/os/qnx/qnx6.1, config/os/qnx/qnx6.1/bits:
3652	New directories.
3653	* config/os/qnx/qnx6.1/bits/ctype_base.h, ctype_inline.h,
3654	ctype_noninline.h, os_defines.h: New files.
3655
36562002-06-10  Loren J. Rittle <ljrittle@acm.org>
3657
3658	* acinclude.m4 (GLIBCPP_CHECK_SETRLIMIT_ancilliary): Reorder and
3659	include all required headers for test against older POSIX standard.
3660	(GLIBCPP_CHECK_SETRLIMIT): Likewise.
3661	(ac_setrlimit): Likewise.
3662	* aclocal.m4: Regenerate.
3663	* configure: Regenerate.
3664	* testsuite/testsuite_hooks.cc: Reorder and include all
3665	required headers for use against older POSIX standard.
3666
36672002-06-08  Paolo Carlini  <pcarlini@unitus.it>
3668
3669	* testsuite/backwards/strstream_members.cc: New.
3670
36712002-06-08  Benjamin Kosnik  <bkoz@redhat.com>
3672
3673	* include/backwards/strstream: Format.
3674	* src/strstream.cc: Format.
3675
36762002-06-08  Andreas Schwab  <schwab@suse.de>
3677
3678	* src/strstream.cc (strstreambuf::overflow): Set _M_buf,
3679	_M_buf_size and _M_buf_size_opt to the new buffer and size.
3680
36812002-06-08  Benjamin Kosnik  <bkoz@redhat.com>
3682
3683	* config/os/generic/bits/ctype_noninline.h: Tweak format.
3684
36852002-06-07  Steve Ellcey  <sje@cup.hp.com>
3686
3687	* src/locale-inst.cc (__codecvt_abstract_base):
3688	Put inside _GLIBCPP_USE_WCHAR_T ifdef.
3689	* include/bits/istream.tcc (basic_istream): Ditto.
3690	(ws) Ditto.
3691	(operator>>) Ditto.
3692	* include/bits/ostream.tcc (basic_ostream): Ditto.
3693	(endl): Ditto.
3694	(ends): Ditto.
3695	(flush): Ditto.
3696	(operator<<): Ditto.
3697
36982002-06-07  Phil Edwards  <pme@gcc.gnu.org>
3699
3700	* mkcheck.in:  Link against local testsuite library.
3701	* testsuite/testsuite_hooks.h (__set_testsuite_memlimit):  Move null
3702	implementation out...
3703	* testsuite/testsuite_hooks.cc:  ...to here.
3704
37052002-06-06  Loren J. Rittle <ljrittle@acm.org>
3706
3707	* src/Makefile.am (AUTOMAKE_OPTIONS): Use cygnus-style generation.
3708	* include/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
3709	* testsuite/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
3710	* src/Makefile.in: Regenerate (explicitly with --cygnus option).
3711	* testsuite/Makefile.in: Likewise.
3712
37132002-06-05  David Edelsohn  <edelsohn@gnu.org>
3714
3715	* config/os/aix/bits/ctype_noninline.h (do_toupper,do_tolower):
3716	Call external symbol.
3717
37182002-06-04  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
3719
3720	* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3_target_compile):
3721	Search correct multilib testsuite dir for libv3test.
3722
37232002-06-04  Paolo Carlini  <pcarlini@unitus.it>
3724	    Gaby Dos Reis  <gdr@codesourcery.com>
3725
3726	* include/bits/basic_string.tcc
3727	(basic_string::_S_construct(forward_iterator_tag):
3728	Fix typo in null pointer check.
3729	* testsuite/21_strings/ctor_copy_dtor.cc: Add test04.
3730
37312002-06-04  Paolo Carlini  <pcarlini@unitus.it>
3732
3733	* testsuite/22_locale/money_get_members_char.cc
3734	(test02): Add decimal point to long double constants.
3735	* testsuite/22_locale/money_get_members_wchar_t.cc
3736	(test02): Likewise.
3737	* testsuite/22_locale/money_put_members_char.cc
3738	(test02, test03, test06): Likewise.
3739	* testsuite/22_locale/money_put_members_wchar_t.cc:
3740	(test02, test03, test06): Likewise.
3741	* testsuite/22_locale/num_get_members_char.cc:
3742	(test02, test01): Likewise; suffix long long constants with LL.
3743	* testsuite/22_locale/num_get_members_wchar_t.cc:
3744	(test02, test01): Likewise.
3745	* testsuite/22_locale/num_put_members_char.cc:
3746	(test02, test01): Likewise.
3747	* testsuite/22_locale/num_put_members_wchar_t.cc:
3748	(test02, test01): Likewise.
3749
37502002-06-03  Marc Espie  <espie@openbsd.org>
3751
3752	* config/cpu/m68k/bits/atomicity.h(__exchange_and_add): Fix inline
3753	assembly for old assemblers.
3754
37552002-06-03  Phil Edwards  <pme@gcc.gnu.org>
3756
3757	* include/bits/stl_bvector.h (swap(_Bit_reference,_Bit_reference)):
3758	Move/rename...
3759	(vector<bool>::swap(reference,reference)): ...to this.
3760
37612002-06-03  Phil Edwards  <pme@gcc.gnu.org>
3762
3763	* docs/doxygen/TODO:  Update.
3764	* docs/doxygen/user.cfg.in (SORT_MEMBER_DOCS):  Set to off, now that
3765	some class members are in 14882 order.
3766	* docs/html/ext/howto.html:  3.1 is in the past now, not the future.
3767
3768	* include/std/std_bitset.h:  Update comment.
3769	* src/bitset.cc:  Update comments, clean up spacing.
3770
3771	* src/Makefile.am (sources):  Alphabetize for convenience.
3772	* src/Makefile.in:  Regenerate.
3773
37742002-06-03  Phil Edwards  <pme@gcc.gnu.org>
3775
3776	* include/bits/stl_deque.h, include/bits/stl_list.h,
3777	include/bits/stl_vector.h:  Reformat to (mostly) match C++STYLE.
3778	Reorder to match 14882.  Doxygen blocks for all public members.
3779
37802002-05-31  Marcus Meissner  <meissner@suse.de>
3781
3782	PR libstdc++/6886
3783	* include/bits/stl_bvector.h:  Use UL suffix for unsigned longs.
3784	* testsuite/23_containers/vector_bool.cc (test02):  New test.
3785
37862002-05-30  Marc Espie  <espie@openbsd.org>
3787
3788	* configure.in: Always check for sys/types.h
3789	* configure: Regenerate.
3790
37912002-05-28  Nick Clifton  <nickc@cambridge.redhat.com>
3792
3793	* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init):
3794	Rebuild the wrapper file every time this proc is called.
3795
37962002-05-28  Phil Edwards  <pme@gcc.gnu.org>
3797
3798	* testsuite/Makefile.am (noinst_LIBRARIES):  New target.  Pull in
3799	CXX/INCLUDES.
3800	* testsuite/Makefile.in:  Regenerate.
3801	* testsuite/testsuite_hooks.h (gnu_copy_tracker):  Move from
3802	list_modifiers.cc and rename from 'T'.  Move code bodies...
3803	* testsuite/testsuite_hooks.cc:  ...to here.  New file.
3804	* testsuite/23_containers/list_modifiers.cc:  Move 'T' class out.
3805	* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3_target_compile):
3806	Add libv3test.a to link options.
3807
38082002-05-27  Benjamin Kosnik  <bkoz@redhat.com>
3809
3810	* src/misc-inst.cc: Define unnecessary algorithm
3811	instantiations. Break apart instantiations into groupings below.
3812	* src/fstream-inst.cc: New.
3813	* src/io-inst.cc: New.
3814	* src/istream-inst.cc: New.
3815	* src/ostream-inst.cc: New.
3816	* src/streambuf-inst.cc: New.
3817	* src/sstream-inst.cc: New.
3818	* src/Makefile.am (sources): Add files.
3819	* src/Makefile.in: Regenerate.
3820
3821	* acinclude.m4: Work around automake 1.4-p5 bug, change
3822	AM_GNU_GETTEXT in comments to AM-GNU-GETTEXT.
3823
38242002-05-27  Benjamin Kosnik  <bkoz@redhat.com>
3825
3826	PR libstdc++/6795.
3827	* config/os/solaris/solaris2.6/bits/ctype_noninline.h
3828	(classic_table): Fix.
3829	* config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.
3830
38312002-05-27  Benjamin Kosnik  <bkoz@redhat.com>
3832
3833	* testsuite/22_locale/ctype_is_wchar_t.cc: Guard with
3834	_GLIBCPP_USE_WCHAR_T.
3835	* testsuite/22_locale/ctype_narrow_wchar_t.cc: Same.
3836	* testsuite/22_locale/ctype_to_wchar_t.cc: Same.
3837	* testsuite/22_locale/ctype_widen_wchar_t.cc: Same.
3838
38392002-05-26  Carlo Wood  <carlo@alinoe.com>
3840	    Paolo Carlini  <pcarlini@unitus.it>
3841
3842	PR libstdc++/6811
3843	* config/locale/ieee_1003.1-2001/codecvt_specializations.h
3844	(__enc_traits::operator=): add missing return statement.
3845
38462002-05-24  Phil Edwards  <pme@gcc.gnu.org>
3847
3848	PR libstdc++/6282
3849	* include/std/std_bitset.h (_Base_biteset<0>):  New specialization.
3850	(operator>>):  If nothing was extracted, don't fail in the
3851	zero-length case.
3852	* testsuite/23_containers/bitset_ctor.cc (test02):  New test.
3853
38542002-05-24  Benjamin Kosnik  <bkoz@redhat.com>
3855
3856	PR libstdc++/6701
3857	* testsuite/22_locale/ctype_narrow_char.cc: New.
3858	* testsuite/22_locale/ctype_narrow_wchar_t.cc: New.
3859	* testsuite/22_locale/ctype_widen_char.cc: New.
3860	* testsuite/22_locale/ctype_widen_wchar_t.cc: New.
3861	* testsuite/22_locale/ctype_members_char.cc: Move some bits into...
3862	* testsuite/22_locale/ctype_is_char.cc: ...this.
3863	* testsuite/22_locale/ctype_to_char.cc: ...and this.
3864	* testsuite/22_locale/ctype_members_wchar_t.cc: Move some bits into...
3865	* testsuite/22_locale/ctype_is_wchar_t.cc: ...this.
3866	* testsuite/22_locale/ctype_to_wchar_t.cc: ...and this.
3867
3868	* testsuite/22_locale/ctype_scan_wchar_t.cc: Should pass.
3869
38702002-05-24  Dale Peakall <dale@peakall.net>
3871
3872	PR libstdc++/6701
3873	* config/locale/gnu/ctype_members.cc (ctype<wchar_t>::do_narrow): Fix.
3874	* config/locale/generic/ctype_members.cc: Same.
3875
38762002-05-24  Benjamin Kosnik  <bkoz@redhat.com>
3877
3878	PR libstdc++/6750
3879	* include/bits/ostream.tcc (ostream::operator<<(const char*)): Fix
3880	for empty string literal.
3881	(ostream::operator<<(const _CharT*)): Same.
3882	(ostream<char>::operator<<(const char*)): Same.
3883	(ostream<char>::operator<<(streambuf*)): Same.
3884	* testsuite/27_io/ostream_inserter_char.cc (test08): Add tests.
3885	* testsuite/27_io/ostream_inserter_other.cc (test02): Modify.
3886
38872002-05-23  Benjamin Kosnik  <bkoz@redhat.com>
3888
3889	* configure.in (release_VERSION): Update to 3.1.1.
3890	(libtool_VERSION): Update to 4:1:0.
3891	* configure: Regenerate.
3892
38932002-05-21  Phil Edwards  <pme@gcc.gnu.org>
3894
3895	* include/bits/stl_pair.h:  Tweak comment markup.
3896
38972002-05-21  Phil Edwards  <pme@gcc.gnu.org>
3898
3899	* include/ext/stdio_filebuf.h:  Add header guards.  Doxygenate.
3900
39012002-05-21  Phil Edwards  <pme@gcc.gnu.org>
3902
3903	* docs/doxygen/user.cfg.in (EXCLUDE):  Add 'CVS'.
3904
39052002-05-21  Phil Edwards  <pme@gcc.gnu.org>
3906
3907	* include/bits/stl_vector.h:  Reformat to follow C++STYLE.
3908	Doxygenate all public members.  Reorder to follow 14882.
3909	(vector::push_back(void)):  Remove previously-deprecated fn.
3910	(vector::insert(iterator), vector::_M_insert_aux(iterator)):
3911	Deprecate for removal in 3.3.
3912
39132002-05-20  Phil Edwards  <pme@gcc.gnu.org>
3914
3915	* docs/html/faq/index.html (5.4):  Recommend against -I options for
3916	finding the ext headers.
3917	* docs/html/faq/index.txt:  Regenerate.
3918
39192002-05-19  Paolo Carlini  <pcarlini@unitus.it>
3920
3921	* testsuite/23_containers/deque_operators.cc (test01):
3922	Fix minor typo in last commit.
3923
39242002-05-18  Paolo Carlini  <pcarlini@unitus.it>
3925
3926	PR libstdc++/6503
3927	* include/bits/stl_deque.h (_Deque_iterator::operator==,
3928	operator!=, operator<, operator>, operator>=, operator<=):
3929	Make non-member functions, to allow comparing const and
3930	non-const iterators in any order.
3931	* testsuite/23_containers/deque_operators.cc: New testfile.
3932
39332002-05-16  Phil Edwards  <pme@gcc.gnu.org>
3934
3935	* docs/html/faq/index.html:  Update not-a-bug list with basic_file.h.
3936	* docs/html/faq/index.txt:  Regenerate.
3937
39382002-05-16  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
3939
3940	* Makefile.am: Allow for PWDCMD to override hardcoded pwd.
3941	* acinclude.m4: Likewise.
3942	* docs/html/Makefile: Likewise.
3943	* aclocal.m4: Regenerate.
3944	* configure: Regenerate.
3945	* Makefile.in: Regenerate.
3946
39472002-05-15  Loren J. Rittle <ljrittle@acm.org>
3948
3949	libstdc++/6641
3950	* include/bits/c++config (__USE_MALLOC): Report case where
3951	the user improperly defined it on the command line.
3952
39532002-05-15  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
3954
3955	* testsuite/testsuite_hooks.h (__set_testsuite_memlimit):
3956	Retrieve current limits before setting.
3957
39582002-05-15  Benjamin Kosnik  <bkoz@redhat.com>
3959
3960	PR libstdc++/6518
3961	* include/bits/ostream.tcc (ostream::operator<<(const char*)): Fix
3962	for null case.
3963	(ostream::operator<<(const _CharT*)): Same.
3964	(ostream<char>::operator<<(const char*)): Same.
3965	* testsuite/27_io/ostream_inserter_char.cc (test07): Add test.
3966
39672002-05-15  Benjamin Kosnik  <bkoz@redhat.com>
3968
3969	PR libstdc++/6594
3970	* src/strstream.cc (strstreambuf): Fix leak.
3971
39722002-05-15  Paolo Carlini  <pcarlini@unitus.it>
3973
3974	PR libstdc++/6648
3975	* include/bits/istream.tcc (istream::getline, ignore):
3976	Upon __idelim (__delim) call sbumpc() not snextc().
3977	* testsuite/27_io/narrow_stream_objects.cc:
3978	Add test08 and test09.
3979
39802002-05-13  Benjamin Kosnik  <bkoz@redhat.com>
3981
3982	* testsuite/22_locale/ctype_scan_char.cc: Tweak.
3983	* testsuite/22_locale/ctype_scan_wchar_t.cc: New.
3984
3985	* docs/html/install.html: Fix.
3986
39872002-05-13  Benjamin Kosnik  <bkoz@redhat.com>
3988
3989	* include/bits/fstream.tcc
3990	(basic_filebuf::_M_allocate_internal_buffer): Remove extraneous
3991	try/catch blocks.
3992	* src/localename.cc (locale::_Impl::_M_install_facet): Same.
3993
3994	* docs/html/install.html: Tweak, add bits about required locales
3995	for the 22_locale tests when using the gnu model.
3996
3997	* testsuite/27_io/istream_sentry.cc: Tweak.
3998
39992002-05-13  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
4000
4001	* config/os/irix/irix5.2/bits/ctype_inline.h (scan_is, scan_not):
4002	Fix typo, use this->is() rather than manually (and perhaps
4003	incorrectly) inlining it.
4004	* config/os/irix/irix6.5/bits/ctype_inline.h (scan_is, scan_not):
4005	Likewise.
4006	* testsuite/22_locale/ctype_scan_char.cc: New file.
4007
40082002-05-13  Paolo Carlini  <pcarlini@unitus.it>
4009	    Jakub Jelinek  <jakub@redhat.com>
4010
4011	* testsuite/22_locale/money_get_members_char.cc
4012	(test01, test02, test04): Use the de_DE@euro named locale
4013	instead of de_DE to allow for an uniform behaviour with
4014	both old and Euro-era localedata; tweak some tests.
4015	* testsuite/22_locale/money_get_members_wchar_t.cc
4016	(test01, test02, test04): Likewise.
4017	* testsuite/22_locale/money_put_members_char.cc
4018	(test01, test02, test04): Likewise.
4019	* testsuite/22_locale/money_put_members_wchar_t.cc
4020	(test01, test02, test04): Likewise.
4021
40222002-05-13  Paolo Carlini  <pcarlini@unitus.it>
4023
4024	* testsuite/22_locale/codecvt_members_char_char.cc
4025	(test03): Robustify wrt localedata.
4026	* testsuite/22_locale/codecvt_members_wchar_t_char.cc (test03): Likewise.
4027	* testsuite/22_locale/collate_members_char.cc (test04): Likewise.
4028	* testsuite/22_locale/collate_members_wchar_t.cc (test04): Likewise.
4029	* testsuite/22_locale/ctype_members_char.cc (test05): Likewise.
4030	* testsuite/22_locale/ctype_members_wchar_t.cc (test04): Likewise.
4031	* testsuite/22_locale/messages_members_char.cc (test03): Likewise.
4032	* testsuite/22_locale/money_get_members_char.cc (test08): Likewise.
4033	* testsuite/22_locale/money_get_members_wchar_t.cc (test08): Likewise.
4034	* testsuite/22_locale/money_put_members_char.cc (test07): Likewise.
4035	* testsuite/22_locale/money_put_members_wchar_t.cc (test07): Likewise.
4036	* testsuite/22_locale/moneypunct_members_char.cc (test03): Likewise.
4037	* testsuite/22_locale/moneypunct_members_wchar_t.cc (test03): Likewise.
4038	* testsuite/22_locale/num_get_members_char.cc (test06): Likewise.
4039	* testsuite/22_locale/num_get_members_wchar_t.cc (test06): Likewise.
4040	* testsuite/22_locale/num_put_members_char.cc (test04): Add comment.
4041	* testsuite/22_locale/num_put_members_wchar_t.cc (test04): Likewise.
4042	* testsuite/22_locale/numpunct_members_char.cc (test03): Likewise.
4043	* testsuite/22_locale/numpunct_members_wchar_t.cc (test03): Likewise.
4044	* testsuite/22_locale/time_get_members_char.cc (test08): Likewise.
4045	* testsuite/22_locale/time_get_members_wchar_t.cc (test08): Likewise.
4046	* testsuite/22_locale/time_put_members_char.cc (test04): Likewise.
4047	* testsuite/22_locale/time_put_members_wchar_t.cc (test04): Likewise.
4048
40492002-05-12  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
4050
4051	* config/os/irix/irix5.2/bits/os_defines.h: Revert 2002-05-06
4052	change.
4053
40542002-05-11  John David Anglin  <dave@hiauly1.hia.nrc.ca>
4055
4056	* config/os/gnu-linux/bits/os_defines.h (__glibcpp_long_bits): Define
4057	to 64 for hppa 64-bit port.
4058	(__glibcpp_long_double_bits): Define to 64 for all hppa ports.
4059
40602002-05-10  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
4061
4062	* acinclude.m4 (enable_symvers): Quote $LD.
4063	* aclocal.m4: Regenerate.
4064	* configure: Likewise.
4065
40662002-05-09  Jakub Jelinek  <jakub@redhat.com>
4067
4068	* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Append all
4069	multilib dirs containing libgcc_s*.so.1 below gcc object dir to
4070	LD_LIBRARY_PATH.
4071
40722002-05-08  Alexandre Oliva  <aoliva@redhat.com>
4073
4074	* configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at
4075	script entry, and set LD to it when configuring multilibs.
4076	* configure: Rebuilt.
4077
40782002-05-07  Mark Mitchell  <mark@codesourcery.com>
4079
4080	* configure.in: Add support for WindISS.
4081	* configure: Regenerated.
4082	* configure.target: Add support for WindISS.
4083	* config/os/windiss/bits/ctype_base.h: New file.
4084	* config/os/windiss/bits/ctype_inline.h: Likewise.
4085	* config/os/windiss/bits/ctype_noninline.h: Likewise.
4086	* config/os/windiss/bits/os_defines.h: Likewise.
4087
40882002-05-06  Paolo Carlini  <pcarlini@unitus.it>
4089
4090	Test all the facets for the temporary "C" locale switch issue.
4091	* testsuite/22_locale/codecvt_members_char_char.cc: Add test03.
4092	* testsuite/22_locale/codecvt_members_wchar_t_char.cc: Likewise.
4093	* testsuite/22_locale/collate_members_char.cc: Add test04.
4094	* testsuite/22_locale/collate_members_wchar_t.cc: Likewise.
4095	* testsuite/22_locale/ctype_members_char.cc: Add test05.
4096	* testsuite/22_locale/ctype_members_wchar_t.cc: Add test04.
4097	* testsuite/22_locale/messages_members_char.cc: Add test03.
4098	* testsuite/22_locale/money_get_members_char.cc: Add test08.
4099	* testsuite/22_locale/money_get_members_wchar_t.cc: Likewise.
4100	* testsuite/22_locale/money_put_members_char.cc: Add test07.
4101	* testsuite/22_locale/money_put_members_wchar_t.cc: Likewise.
4102	* testsuite/22_locale/moneypunct_members_char.cc: Add test03.
4103	* testsuite/22_locale/moneypunct_members_wchar_t.cc: Likewise.
4104	* testsuite/22_locale/num_get_members_char.cc: Add test06.
4105	* testsuite/22_locale/num_get_members_wchar_t.cc: Likewise.
4106	* testsuite/22_locale/numpunct_members_char.cc: Add test03.
4107	* testsuite/22_locale/numpunct_members_wchar_t.cc: Likewise.
4108	* testsuite/22_locale/time_get_members_char.cc: Add test08.
4109	* testsuite/22_locale/time_get_members_wchar_t.cc: Likewise.
4110	* testsuite/22_locale/time_put_members_char.cc: Add test04.
4111	* testsuite/22_locale/time_put_members_wchar_t.cc: Likewise.
4112
4113	* testsuite/22_locale/num_put_members_char.cc (test04): Add comment.
4114	* testsuite/22_locale/num_put_members_wchar_t.cc (test04): Likewise.
4115
41162002-05-06  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
4117
4118	* config/os/irix/irix5.2/bits/os_defines.h (_SGI_SOURCE,
4119	__EXTENSIONS__): Ensure they are always defined.
4120
41212002-05-06  Phil Edwards  <pme@gcc.gnu.org>
4122
4123	* docs/html/documentation.html:  Fix broken link.
4124
41252002-05-04  Benjamin Kosnik  <bkoz@redhat.com>
4126	    Paolo Carlini  <pcarlini@unitus.it>
4127
4128	* testsuite/22_locale/num_put_members_char.cc: Add test04(),
4129	testing for the locale_facets.tcc entry of the previous commit.
4130	* testsuite/22_locale/num_put_members_wchar_t.cc: Likewise.
4131
41322002-05-04  Takeshi Kobayakawa  <tskoba@mte.biglobe.ne.jp>
4133
4134	* config/locale/generic/c_locale.cc
4135	(__convert_to_v(float, double, long double)):
4136	Fix the temporary switch to the "C" locale, saving and
4137	restoring in the proper way the current locale.
4138	* config/locale/generic/time_members.cc
4139	(__timepunct<char, wchar_t>::_M_put): Likewise.
4140	* config/locale/gnu/messages_members.cc
4141	(messages<char>::do_get): Likewise.
4142	* config/locale/gnu/messages_members.h
4143	(messages<_CharT>::do_get): Likewise.
4144	* config/locale/gnu/time_members.cc
4145	(__timepunct<char, wchar_t>::_M_put): Likewise.
4146	* include/bits/locale_facets.tcc (__convert_from_v): Likewise.
4147
41482002-05-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
4149
4150	* configure.in (AC_CHECK_HEADERS): Check for string.h & stdlib.h.
4151	* libsupc++/Makefile.am (LTCOMPILE): Add $(DEFS).
4152
4153	* Makefile.in, config.h.in, configure: Regenerate.
4154
41552002-05-03  Benjamin Kosnik  <bkoz@redhat.com>
4156
4157	PR libstdc++/6549.
4158	* include/bits/fstream.tcc (filebuf::_M_underflow_common): Revert.
4159	* testsuite/27_io/narrow_stream_objects.cc (test07): Add.
4160
41612002-05-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
4162
4163	* config/os/irix/irix5.2/bits/ctype_noninline.h (classic_table):
4164	Return __ctype + 1.
4165	(ctype:_M_table): Initialize to classic_table(), not __ctype.
4166
41672002-05-03  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
4168
4169	* configure.in: Update local install.html, configopts.html paths.
4170	* configure: Regenerate.
4171
41722002-05-02  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
4173
4174	* config/os/irix/irix5.2/bits/os_defines.h
4175	(__glibcpp_long_double_bits, __glibcpp_long_bits): Define.
4176
4177	* config/os/irix/irix5.2/bits/ctype_inline.h: Cast to unsigned
4178	char.
4179
41802002-05-02  Phil Edwards  <pme@gcc.gnu.org>
4181
4182	* docs/html/faq/index.html:  Update list in #4.1.
4183	* docs/html/faq/index.txt:  Regenerated.
4184
41852002-05-02  Benjamin Kosnik  <bkoz@redhat.com>
4186
4187	* docs/html/17_intro/RELEASE-NOTES (New): Update.
4188
41892002-05-01  Phil Edwards  <pme@gcc.gnu.org>
4190
4191	* include/std/std_bitset.h:  Fix doxygen comments.
4192	* docs/html/documentation.html:  Minor tweaks for 3.1.
4193	* docs/html/27_io/howto.html:  Likewise.
4194	* docs/html/ext/howto.html:  Likewise, mention stdio_filebuf.
4195	* docs/html/faq/index.html:  Likewise.
4196	* docs/html/faq/index.txt:  Regenerated.
4197
41982002-05-01  Benjamin Kosnik  <bkoz@redhat.com>
4199
4200	PR libstdc++/6533
4201	* include/bits/streambuf_iterator.h (istreambuf_iterator::_M_get): New.
4202	(istreambuf_iterator::equal): Use it.
4203	(istreambuf_iterator::operator*): Use it.
4204
42052002-05-01  Paolo Carlini  <pcarlini@unitus.it>
4206
4207	PR libstdc++/6513
4208	* include/bits/stl_uninitialized.h
4209	(uninitialized_copy(_InputIter, _InputIter, _ForwardIter)):
4210	Fix typo in 2001-07-17 commit: typedef _ValueType to
4211	iterator_traits<_ForwardIter> not <_InputIter>.
4212	* testsuite/23_containers/vector_ctor.cc: Add test04.
4213
42142002-04-30  John David Anglin  <dave@hiauly1.hia.nrc.ca>
4215
4216	PR libstdc++/6501
4217	* include/c_std/std_cctype.h: Include bits/c++config.h.
4218	* config/os/hpux/bits/os_defines.h (_SB_CTYPE_MACROS): Define.
4219
42202002-04-30  Benjamin Kosnik  <bkoz@redhat.com>
4221
4222	* include/ext/stdio_filebuf.h: New file.
4223	* include/ext/enc_filebuf.h: New file.
4224	* config/io/basic_file_stdio.h (__basic_file::sys_open): Add fd ctor.
4225	* config/io/basic_file_stdio.cc: Same.
4226	* include/bits/fstream.tcc (filebuf::_M_allocate_internal_buffer):
4227	Remove _M_unbuf hacks.
4228	(filebuf::_M_destroy_internal_buffer): Same.
4229	(filebuf::filebuf(cfile, openmode, int_type): Remove definition.
4230	(filebuf::fd): Remove.
4231	* include/std/std_fstream.h (filebuf::_M_unbuf): Remove.
4232	(filebuf::filebuf(__c_file*, openmode, int_type)): Remove.
4233	(filebuf::fd): Remove.
4234	* src/ios.cc (ios_base::_S_ios_create): Change to use specialized
4235	filebufs.
4236	(ios_base::_S_ios_destroy): Same.
4237	* src/misc-inst.cc (file_filebuf<char>): Add instantiation.
4238	* include/Makefile.am (ext_headers): Add ext_filebuf.h,
4239	stdio_filebuf.h.  * include/Makefile.in: Regenerate.
4240
42412002-04-30  Benjamin Kosnik  <bkoz@redhat.com>
4242
4243	PR libstdc++/6511
4244	* config/os/solaris/solaris2.7/bits/ctype_noninline.h: Fix typo.
4245
42462002-04-29  Benjamin Kosnik  <bkoz@redhat.com>
4247
4248	PR libstdc++/5820
4249	* include/bits/fstream.tcc (basic_filebuf::_M_underflow_common):
4250	Check for eof.
4251	* include/bits/streambuf_iterator.h: Match stream_iterator.h.
4252	(istreambuf_iterator::operator++): Invalidate on eof.
4253	(istreambuf_iterator::operator++(int)): Same.
4254	(istreambuf_iterator::operator*): Same.
4255
42562002-04-29  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
4257
4258	* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Set all
4259	of LD_LIBRARY_PATH, SHLIB_PATH, LD_LIBRARYN32_PATH,
4260	LD_LIBRARY64_PATH.
4261
42622002-04-28  Benjamin Kosnik  <bkoz@redhat.com>
4263
4264	PR libstdc++/5820
4265	* config/io/basic_file_stdio.h (__basic_file::sys_getc): Return int.
4266	(__basic_file::sys_ungetc): Take int.
4267	* config/io/basic_file_stdio.cc (__basic_file::sys_ungetc): Same.
4268	* include/bits/fstream.tcc (basic_filebuf::_M_underflow_common):
4269	Use sys_getc for unbuffered input.
4270	* testsuite/27_io/narrow_stream_objects.cc (test06): New.
4271
4272	* src/ios.cc (_M_grow_words): Adjust error checking.
4273	* testsuite/27_io/ios_base_storage.cc: Same.
4274
42752002-04-28  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
4276
4277	* include/ext/stl_hashtable.h: Import __iterator_category
4278
42792002-04-28  Paolo Carlini  <pcarlini@unitus.it>
4280	    Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
4281
4282	* testsuite/ext/hash_set.cc: New testfile.
4283
42842002-04-27  Benjamin Kosnik  <bkoz@redhat.com>
4285
4286	* config/os/solaris/solaris2.5/bits/os_defines.h: Remove
4287	_G_USING_THUNKS.
4288	* config/os/solaris/solaris2.6/bits/os_defines.h: Same.
4289	* config/os/solaris/solaris2.7/bits/os_defines.h: Same.
4290
42912002-04-26  Paolo Carlini  <pcarlini@unitus.it>
4292
4293	* include/bits/basic_string.h (replace(__pos, __n1, __s, __n2):
4294	Fix and tighten __throw_length_error check.
4295	* testsuite/21_strings/replace.cc (test05): New.
4296	* testsuite/21_strings/replace.cc (test02, test03, test04): Tweak.
4297
42982002-04-23  Loren J. Rittle <ljrittle@acm.org>
4299
4300	* include/std/std_fstream.h (basic_filebuf::sync): Hoist
4301	unconditional flush on lower-layer handle to here...
4302	* include/bits/fstream.tcc (basic_filebuf::_M_really_overflow):
4303	...from here.  Optimize remaining _M_file.sync() call pattern.
4304	* testsuite/27_io/narrow_stream_objects.cc (test04): New test.
4305	(test05): Likewise.
4306
43072002-04-23  Jason Merrill  <jason@redhat.com>
4308
4309	* include/bits/fstream.tcc (basic_filebuf::seekoff): Fix for
4310	output-only filebufs.
4311	* include/std/std_fstream.h (basic_filebuf::_M_set_indeterminate):
4312	Likewise.
4313	(basic_filebuf::_M_set_determinate): Likewise.
4314
4315	PR libstdc++/6414
4316	* include/bits/fstream.tcc (basic_filebuf::seekoff): Adjust return
4317	value properly in the trivial case.
4318	* testsuite/27_io/istream_seeks.cc (test04): Make sure that
4319	tellg() returns the right value after a read.
4320
43212002-04-23  Hans-Peter Nilsson  <hp@bitrange.com>
4322
4323	* config/cpu/mmix/bits/cpu_limits.h: New file.
4324	* configure.target (CPULIMITSH): Use it.
4325
43262002-04-22  Loren J. Rittle <ljrittle@acm.org>
4327
4328	* docs/html/17_intro/porting.texi (_GLIBCPP_AVOID_FSEEK): Remove.
4329	* docs/html/17_intro/porting.html: Rebuilt.
4330
43312002-04-20  Jason Merrill  <jason@redhat.com>
4332
4333	PR libstdc++/4150
4334	* include/std/std_streambuf.h (basic_streambuf::_M_set_indeterminate):
4335	Move to filebuf.
4336	(basic_streambuf::_M_set_determinate): Likewise.
4337	(basic_streambuf::_M_is_indeterminate): Likewise.
4338	* include/bits/std_fstream.h (basic_filebuf::_M_filepos): New
4339	non-static data member.
4340	(basic_filebuf::_M_underflow_common): New non-static member function.
4341	(basic_filebuf::_M_underflow, _M_uflow): Call it.
4342	(basic_filebuf::sync): Avoid useless seeking.
4343	(basic_filebuf::_M_set_indeterminate): Move here from streambuf.
4344	Set _M_filepos.
4345	(basic_filebuf::_M_set_determinate): Likewise.
4346	(basic_filebuf::_M_is_indeterminate): Likewise.
4347	* include/bits/fstream.tcc (basic_filebuf::_M_really_overflow): Seek
4348	back to _M_out_beg if necessary.
4349	(basic_filebuf::seekoff): Likewise.
4350	(basic_filebuf::_M_underflow_common): Generalization of old
4351	underflow().  Don't seek back to _M_in_beg.
4352	* src/ios.cc: Lose _GLIBCPP_AVOID_FSEEK stuff.
4353	* config/os/solaris/solaris2.?/bits/os_defines.h: Likewise.
4354	* config/os/bsd/freebsd/bits/os_defines.h: Likewise.
4355	* config/os/mingw32/bits/os_defines.h: Likewise.
4356	* testsuite/27_io/filebuf_virtuals.cc (test05): Don't overspecify
4357	ungetc test.
4358
43592002-04-22  Benjamin Kosnik  <bkoz@redhat.com>
4360
4361	* include/bits/istream.tcc (istream::read): Fix.
4362	* testsuite/27_io/istream_unformatted.cc (main): Add.
4363
43642002-04-20  Benjamin Kosnik  <bkoz@redhat.com>
4365
4366	PR libstdc++/6360
4367	* include/bits/istream.tcc (istream::ignore): Streamline, use
4368	delimiter as is.
4369	* include/bits/streambuf.tcc: Use this->gptr.
4370	* testsuite/27_io/istream_unformatted.cc (test08): Add test.
4371
43722002-04-18  Benjamin Kosnik  <bkoz@redhat.com>
4373
4374	* include/bits/localefwd.h (locale::id::_M_id): Do this correctly,
4375	as type safety is important, especially on solaris.
4376	* include/bits/istream.tcc (istream::read): Clean.
4377	(istream::readsome): Same.
4378	* locale.cc: Wrap lines.
4379
4380	* testsuite/21_strings/inserters_extractors.cc: Tweaks.
4381	* testsuite/27_io/instantiations.cc (test): Add bool variable...
4382	* testsuite/21_strings/capacity.cc: Clean.
4383
43842002-04-17  Phil Edwards  <pme@gcc.gnu.org>
4385
4386	* docs/doxygen/doxygroups.cc:  New group on binary searching.
4387	* include/bits/stl_algo.h:  Document binary searches and merges.
4388	* include/bits/stl_deque.h:  The 'map' member is not the 'map' class.
4389
43902002-04-17  Phil Edwards  <pme@gcc.gnu.org>
4391
4392	* docs/doxygen/mainpage.html:  Doxygen logo is now a PNG file.
4393	* docs/doxygen/run_doxygen:  Bump required version.
4394	* docs/doxygen/user.cfg.in:  Revert accidental change.
4395	* docs/html/faq/index.html:  Reindent a block of links.
4396	(4.4):  New note on using dlsym.
4397	* docs/html/faq/index.txt:  Regenerated.
4398
43992002-04-17  Phil Edwards  <pme@gcc.gnu.org>
4400
4401	* testsuite_flags.in (cxxflags):  Also pass @EXTRA_CXX_FLAGS@.
4402
44032002-04-17  Benjamin Kosnik  <bkoz@redhat.com>
4404
4405	* config/linker-map.gnu (__malloc_alloc_template): Add.
4406	(__default_alloc_template): Same.
4407	* include/bits/stl_alloc.h (__malloc_alloc_template): Add extern
4408	template.
4409	(__default_alloc_template): Same.
4410
44112002-04-17  Benjamin Kosnik  <bkoz@redhat.com>
4412
4413	* testsuite/27_io/filebuf_virtuals.cc: Add _S_pback_size instantiation.
4414
44152002-04-16  Benjamin Kosnik  <bkoz@redhat.com>
4416
4417	* src/concept-inst.cc (vector<locale::facet*>): Remove instantiations.
4418	* src/stl-inst.cc (vector::_M_insert_aux): Remove instantiation.
4419	(__malloc_alloc_template): Conditionalize.
4420
4421	* include/bits/istream.tcc: Remove sputbackc calls.
4422
4423	* testsuite/19_diagnostics/stdexceptions.cc: Fix comment.
4424
44252002-04-16  Paolo Carlini <pcarlini@unitus.it>
4426
4427	* testsuite/24_iterators/rel_ops.cc: New test.
4428
44292002-04-16  Gabriel Dos Reis  <gdr@merlin.codesourcery.com>
4430
4431	* include/bits/type_traits.h (__normal_iterator): Declare in
4432	__gnu_cxx.  Adjust use at global namespace.
4433	* include/bits/stl_iterator.h (__normal_iterator): Move definition
4434	into __gnu_cxx::. Add more operator overloads.  Tidy existing ones.
4435	* include/bits/basic_string.h (basic_string): Adjust use of
4436	__normal_iterator.
4437	* include/bits/stl_vector.h (_Alloc>): Likewise.
4438	* src/concept-inst.cc (__gnu_cxx): __normal_iterator<> is now here.
4439	* src/string-inst.cc (operator==): Instantiate in __gnu_cxx.
4440
44412002-04-15  Benjamin Kosnik  <bkoz@redhat.com>
4442
4443	PR libstdc++/4164
4444	Valgrind fixes.
4445	* config/io/basic_file_stdio.cc (__basic_file::~__basic_file):
4446	Call close.
4447	(__basic_file::close): Call fflush. Correct return if fclose ok.
4448	(__basic_file::is_open): Make const.
4449	Change __c_file_type to __c_file.
4450	* config/io/basic_file_stdio.h: Change __c_file_type to __c_file.
4451	(__basic_file::is_open): Make const.
4452	* config/io/c_io_stdio.h: Change __c_file_type to __c_file.
4453	* include/std/std_fstream.h (filebuf::_M_allocate_file): Remove.
4454	(filebuf::_M_unbuf): Add.
4455	(filebuf::_M_file): Change to non-pointer.
4456	(filebuf::_M_allocate_pback_buffer): Remove.
4457	* include/bits/fstream.tcc (filebuf::_M_allocate_file): Remove.
4458	(filebuf::_M_allocate_internal_buffer): Use _M_unbuf.
4459	Change initialization list for _M_file change.
4460	(filebuf::_M_allocate_pback_buffer): Remove.
4461	Change _M_file usage to reflect non-pointer data member.
4462
4463	* config/locale/generic/c_locale.cc
4464	(locale::facet::_S_create_c_locale): Add parameter.
4465	* config/locale/generic/collate_members.cc: Change
4466	_M_compare_helper to _M_compare.
4467	Change _M_transform_helper to _M_transform.
4468	* config/locale/generic/monetary_members.cc: Changeup data types.
4469	Add dtors.
4470	* config/locale/generic/numeric_members.cc: Add dtors.
4471	* config/locale/generic/time_members.cc: Add dtors.
4472	* config/locale/gnu/c_locale.cc: Add parameter.
4473	* config/locale/gnu/collate_members.cc:Change
4474	_M_compare_helper to _M_compare.
4475	Change _M_transform_helper to _M_transform.
4476	* config/locale/gnu/ctype_members.cc: Better error checking.
4477	* config/os/gnu-linux/bits/ctype_noninline.h: Better error checking.
4478	* config/locale/gnu/messages_members.cc: Tweak comment.
4479	* config/locale/gnu/monetary_members.cc: Change data types.
4480	Add dtors.
4481	* config/locale/gnu/numeric_members.cc: Add dtors, better error
4482	checking.
4483	* config/locale/gnu/time_members.cc: Same.
4484	* config/locale/ieee_1003.1-2001/c_locale.cc
4485	(locale::facet::_S_create_c_locale): Add parameter.
4486	* config/locale/ieee_1003.1-2001/c_locale.h: Correct typedef.
4487	* config/locale/ieee_1003.1-2001/codecvt_specializations.h: Remove
4488	bogus ctor.
4489
4490	* include/bits/locale_facets.h (moneypunct): Use string literals.
4491	Don't define dtor.
4492	(numpunct): Same.
4493	(__timepunct): Same.
4494	(locale::_Impl::_M_facets): Change from vector to array.
4495	(locale::_Impl::_M_names): Change from array of strings to array
4496	of string literals.
4497	(locale::facet::_S_create_c_locale): Add parameter.
4498	(locale::locale::_S_num_facets): Move to...
4499	(locale::_Impl::_M_facets_size): Here.
4500	* include/bits/locale_facets.tcc: Fixups for _M_facets, _M_name
4501	changes.
4502	* include/bits/localefwd.h: (locale::id::_M_id): Add member function.
4503	(locale::_Impl::_Impl(facet**, size_t, bool)): Add.
4504	(locale::_Impl::_Impl(string, size_t)): Change to
4505	(locale::_Impl::_Impl(const char*, size_t)): This.
4506
4507	* include/bits/streambuf.tcc (streambuf::_S_pback_size): Define.
4508	* include/std/std_streambuf.h (streambuf::_M_pback_size): Change to
4509	(streambuf::_S_pback_size): This.
4510
4511	* src/globals.cc: Add pre-allocations for "C" facets.
4512	* src/locale-inst.cc: Remove vector instantiations.
4513	* src/locale.cc: Remove vector include. Fixups for _M_names,
4514	_M_facets changes.
4515	* src/localename.cc: Same.
4516
4517	* include/bits/stl_vector.h: Fix odd formatting.
4518
4519	* include/bits/basic_string.tcc: Tweak comment.
4520
4521	* libsupc++/new: Make sure parameters are uglified.
4522	* libsupc++/typeinfo: Same.
4523
4524	* testsuite/22_locale/num_get_members_char.cc: Fixup.
4525	* testsuite/22_locale/num_get_members_wchar_t.cc: Same.
4526	* testsuite/27_io/filebuf_members.cc: Same.
4527
45282002-04-12  Steve Ellcey  <sje@cup.hp.com>
4529
4530	* gcc/libstdc++-v3/config/os/hpux/bits/os_defines.h
4531	(strtoll, strtoull): In 64 bit mode HP-UX (IA64 and HPPA)
4532	does not define strtoll or strtoull, but does define strtol
4533	and strtoul which are the same since in 64 bit mode
4534	sizeof(long) == sizeof(long long).
4535
45362002-04-12  Phil Edwards  <pme@gcc.gnu.org>
4537
4538	* include/std/std_bitset.h:  Doxygenate std::bitset<>.  Clean up
4539	trailing spaces, indentation, and macro names.  Make exception
4540	messages more informative.
4541
45422002-04-11  Richard Henderson  <rth@redhat.com>
4543
4544	* include/bits/fstream.tcc (basic_filebuf<>::open): Fix & ordering.
4545	* include/bits/ostream.tcc (basic_ostream<>::operator<<(long)): Same.
4546	(basic_ostream<>::operator<<(long long)): Same.
4547
45482002-04-11  Richard Henderson  <rth@redhat.com>
4549
4550	* config/linker-map.gnu: Add __gxx_personality_sj0.
4551
45522002-04-09  Benjamin Kosnik  <bkoz@redhat.com>
4553
4554	libstdc++/1072
4555	* include/bits/localefwd.h (locale::_Impl::_M_facets): Change from
4556	pointer to vector.
4557	Remove forward declaration of vector.
4558	Include vector.
4559	* include/bits/locale_facets.tcc: Remove vector include.
4560	(use_locale): Adjust.
4561	(has_locale): Adjust.
4562	* src/locale.cc: Adjust.
4563	* src/localename.cc: Same.
4564
45652002-04-09  Benjamin Kosnik  <bkoz@redhat.com>
4566	    Richard Henderson  <rth@redhat.com>
4567
4568	* include/bits/sstream.tcc: Clean up bit ops.
4569	* include/bits/fstream.tcc: Same.
4570
45712002-04-09  Jakub Jelinek  <jakub@redhat.com>
4572
4573	* include/bits/locale_facets.h (__num_base::_S_scale_hex): Remove.
4574	(__num_base::_S_scale_oct): Remove.
4575	* src/locale.cc (__num_base::_S_scale_hex): Remove.
4576	(__num_base::_S_scale_oct): Remove.
4577
45782002-04-09  Benjamin Kosnik  <bkoz@redhat.com>
4579
4580	libstdc++/6124
4581	* testsuite/23_containers/bitset_members.cc: New test.
4582	* include/std/std_bitset.h (_Bit_count::_S_bit_count): Move..
4583	(_S_bit_count): Here.
4584	(_First_one::_S_first_one): Move...
4585	(_S_first_one): Here.
4586	Format.
4587	* src/bitset.cc: Adjust.
4588	* config/linker-map.gnu: Export.
4589
45902002-04-08  Benjamin Kosnik  <bkoz@redhat.com>
4591
4592	libstdc++/5180
4593	* include/bits/fstream.tcc (filebuf::seekpos): Fix.
4594	* include/std/std_fstream.h: Clean.
4595	* include/bits/ostream.tcc: Remove extraneous variables.
4596	* include/bits/sstream.tcc (stringbuf::seekoff): Be strict about
4597	open modes and which modes.
4598	(stringbuf::seekpos): Same.
4599	* testsuite/27_io/stringbuf_virtuals.cc: New tests.
4600
46012002-04-05  Jonathan Wakely <jw@kayari.org>
4602
4603	* include/bits/stl_algo.h (unique_copy, __gcd, rotate, rotate_copy,
4604	random_shuffle, partition, stable_partition, sort, stable_sort,
4605	partial_sort, partial_sort_copy, nth_element):  Doxygenate.
4606
46072002-04-05  David S. Miller  <davem@redhat.com>
4608
4609	* config/os/gnu-linux/bits/os_defines.h
4610	(__glibcpp_long_double_bits): Set to 64 on 32-bit Sparc.
4611
46122002-04-04  Benjamin Kosnik  <bkoz@redhat.com>
4613
4614	libstdc++/3457
4615	via gawrilow@math.tu-berlin.de
4616	* acinclude.m4 (version_specific_libs): Fix combo usage with
4617	--with-gxx-include-dir.
4618	* aclocal.m4: Regenerate.
4619	* configure: Same.
4620
46212002-04-03  Benjamin Kosnik  <bkoz@redhat.com>
4622
4623	As per DR 184, libstdc++/3139
4624	* include/std/std_limits.h (__glibcpp_bool_digits): Change to 1.
4625	(numeric_limits<bool>::is_iec559): False.
4626	(numeric_limits<bool>::is_modulo): False.
4627
4628	* testsuite/27_io/ios_init.cc: Add instantiations.
4629
46302002-04-02  Benjamin Kosnik  <bkoz@redhat.com>
4631
4632	libstdc++/5268
4633	* src/ios.cc: (ios_base::Init::_S_ios_destroy): Remove flush calls.
4634	* testsuite/27_io/ios_init.cc (tests04): Add test.
4635
4636	libstdc++/3983
4637	* include/bits/basic_ios.h (basic_ios::_M_get_fctype_ios): Remove.
4638	(basic_ios::_M_ios_fctype): Consistently name to _M_fctype.
4639	* include/bits/basic_ios.tcc: Same. Remove outdated comments.
4640	* include/bits/istream.tcc: Use _M_fctype, make consistent with
4641	ostream.
4642	* testsuite/27_io/ios_init.cc (tests03): Add test.
4643
46442002-04-02  Phil Edwards  <pme@gcc.gnu.org>
4645
4646	* include/Makefile.am (install-data-local):  Use mkinstalldirs.
4647	* include/Makefile.in:  Regenerate.
4648
46492002-04-02  Paolo Carlini  <pcarlini@unitus.it>
4650	    Nathan Myers  <ncm@cantrip.org>
4651	    Philip Martin  <philip@codematters.co.uk>
4652
4653	* include/bits/basic_string.h
4654	(replace(i1, i2, _CharT* k1, _CharT* k2),
4655	replace(i2, i2, const _CharT* k1, const _CharT* k2),
4656	replace(i1, i2, iterator k1, iterator k2,
4657	replace(i1, i2, const_iterator k1, const_iterator k2):
4658	New specializations to optimize for the common cases of
4659	pointers and iterators.
4660	(replace(pos, n1, s, n2)): Tweak.
4661	* include/bits/basic_string.tcc: Tweak comments.
4662	* testsuite/21_strings/replace.cc (test04): New tests.
4663
46642002-04-01  Benjamin Kosnik  <bkoz@redhat.com>
4665
4666	libstdc++/5542
4667	* acinclude: More extensive checks for msgfmt, --enable-nls.
4668	* aclocal.m4: Regenerate.
4669	* configure: Regenerate.
4670
46712002-04-01  Phil Edwards  <pme@gcc.gnu.org>
4672
4673	* libsupc++/exception (__verbose_terminate_handler):  Point to docs.
4674	* docs/doxygen/doxygroups.cc:  Doxygen hooks for abi::__cxa_demangle.
4675	* docs/html/18_support/howto.html:  Document the demangler.
4676	* docs/html/17_intro/howto.html:  And link to it.
4677
4678	* docs/doxygen/mainpage.html:  Describe user-vs-maintainer docs.
4679	* docs/doxygen/run_doxygen:  Print user-vs-maintainer.
4680
46812002-04-01  Phil Edwards  <pme@gcc.gnu.org>
4682
4683	* config/linker-map.gnu:  Export __verbose_terminate_handler.
4684	* libsupc++/Makefile.am (sources):  Add cxa_demangle.c, dyn-string.c.
4685	Make new LTCOMPILE variable, use it in new special build rules.
4686	* libsupc++/Makefile.in:  Rebuild.
4687	* src/vterminate.cc (__verbose_terminate_handler):  Enable use of
4688	runtime __cxa_demangle.
4689
4690	* docs/html/install.html:  Update prereqs and instructions.
4691	* docs/html/19_diagnostics/howto.html:  Bring naming for
4692	verbose_terminate_handler into line with reality.
4693
46942002-04-01  Benjamin Kosnik  <bkoz@redhat.com>
4695
4696	libstdc++/3129
4697	* include/bits/basic_ios.h (basic_ios::_M_exception): Move.
4698	(basic_ios::_M_streambuf_state): Move.
4699	* include/bits/ios_base (ios_base): To here.
4700	* include/bits/ios_base.h (ios_base::_S_local_words): To
4701	_S_local_word_size.
4702	(ios_base::_M_word_array): To _M_local_word.
4703	(ios_base::_M_words_limit): To _M_word_size.
4704	(ios_base::_M_words): To _M_word.
4705	Comment.
4706	* include/bits/basic_ios.tcc: Adjust.
4707	* src/ios.cc (ios_base::_M_grow_words): Tweak.
4708	* testsuite/27_io/ios_base_storage.cc: Add tests.
4709
4710	libstdc++/5207
4711	Kenny Simpson <theonetruekenny@yahoo.com>
4712	* include/bits/ios_base.h: Fix.
4713
4714	Richard Henderson  <rth@redhat.com>
4715	* include/bits/ostream.tcc (ostream::operator<<(_CharT)): Correct
4716	last change.
4717
4718	* include/bits/basic_string.h: Tweak formatting.
4719
47202002-04-01  Paolo Carlini  <pcarlini@unitus.it>
4721
4722	* config/locale/ieee_1003.1-2001/codecvt_specializations.h
4723	(codecvt::do_out, codecvt::do_unshift, codecvt::do_in):
4724	By definition, sizeof(char) == 1.
4725	* include/bits/locale_facets.tcc (money_get::do_get,
4726	money_put::do_put): Ditto.
4727	* testsuite/21_strings/inserters_extractors.cc
4728	(test04): Ditto.
4729
47302002-03-30  Richard Henderson  <rth@redhat.com>
4731
4732	PR c++/3719
4733	* libsupc++/eh_personality.cc (__cxa_call_unexpected): Copy handler
4734	data out of the exception struct before calling unexpectedHandler.
4735
47362002-03-28  Roger Sayle  <roger@eyesopen.com>
4737
4738	* include/c_std/std_cmath.h:  To prevent problems overloading
4739	g++ builtins, use the double variants from the global namespace
4740	before defining float and long double variants in std::.
4741
47422002-03-28  Loren J. Rittle <ljrittle@acm.org>
4743
4744	* testsuite/18_support/numeric_limits.cc (test_extrema): Fix typo.
4745
47462002-03-28  Paolo Carlini  <pcarlini@unitus.it>
4747
4748	* testsuite/24_iterators/istream_iterator.cc
4749	(test02): New tests.
4750
47512002-03-28  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
4752	    Paolo Carlini  <pcarlini@unitus.it>
4753
4754	* testsuite/22_locale/codecvt_members_unicode_wchar_t.cc
4755	(test01): Protect the test with _GLIBCPP_USE_WCHAR_T;
4756	fix i_lit_base e_lit_base arrays, making them independent
4757	from the endianness of the platform; tweak UCS4 to UCS-4BE.
4758
47592002-03-27  Benjamin Kosnik  <bkoz@redhat.com>
4760
4761	* include/bits/ostream.tcc (ostream::operator<<(_CharT)): Always
4762	allocate at least a byte.
4763
4764	* testsuite/18_support/numeric_limits.cc (test_extrema): Make
4765	debugger-friendly.
4766	* testsuite/27_io/streambuf.cc (test07): Fix.
4767	(test06): Enable.
4768
47692002-03-27  Phil Edwards  <pme@gcc.gnu.org>
4770
4771	* docs/doxygen/Intro.3:  Date tweak.
4772	* docs/doxygen/TODO:  Update.
4773	* docs/doxygen/doxygroups.cc:  Point to tables.html.
4774	* docs/doxygen/mainpage.html:  Date tweak.
4775	* docs/doxygen/run_doxygen:  Version tweak.  Copy tables.html over.
4776	* docs/doxygen/tables.html:  Fill in the blanks.
4777
4778	* docs/doxygen/user.cfg.in (ALIASES):  Remove maint and endmaint.
4779	* include/bits/stl_algo.h:  Likewise; use expanded form.
4780	* include/bits/stl_alloc.h:  Likewise.
4781	* include/bits/stl_construct.h:  Likewise.
4782	* include/bits/stl_deque.h:  Likewise.
4783	* include/bits/stl_iterator_base_types.h:  Likewise.
4784	* include/bits/stl_list.h:  Likewise.
4785	* include/bits/stl_relops.h:  Likewise.
4786	* include/bits/stl_tempbuf.h:  Likewise.
4787	* include/bits/stl_vector.h:  Likewise.
4788	* include/std/std_memory.h:  Likewise.
4789
4790	* include/bits/stl_deque.h:  Point into tables.html and add @ingroup.
4791	* include/bits/stl_list.h:  Likewise.
4792	* include/bits/stl_vector.h:  Likewise.
4793
47942002-03-26  Benjamin Kosnik  <bkoz@redhat.com>
4795
4796	* include/c/: Guard with _CPP_.
4797	* include/c_std/: Same.
4798	* include/Makefile.am: Fixup install, link routines for null
4799	c_base_headers_extra scenarios.
4800	* include/Makefile.in: Regerate.
4801
48022002-03-25  Paolo Carlini <pcarlini@unitus.it>
4803	    Richard Henderson  <rth@redhat.com>
4804
4805	* testsuite/22_locale/codecvt_members_unicode_char.cc
4806	(test01, test02): make sure that the i_lit_base array
4807	is sufficiently aligned.
4808
48092002-03-25  Benjamin Kosnik  <bkoz@redhat.com>
4810
4811	* config/os/newlib/bits/ctype_noninline.h (ctype::classic): Set to
4812	_ctype_.
4813
48142002-03-25  Paolo Carlini  <pcarlini@unitus.it>
4815
4816	* testsuite/22_locale/collate_byname.cc
4817	(test01): compare the result of collate::compare with
4818	that of collate::transform + string::compare, not with
4819	that of collate::transform + collate::compare; values
4820	returned by collate::compare are normalized, therefore
4821	test against +-1.
4822
48232002-03-25  Benjamin Kosnik  <bkoz@redhat.com>
4824	    Jakub Jelinek  <jakub@redhat.com>
4825
4826	* config/locale/gnu/messages_members.h: Correct conditional.
4827	* config/locale/gnu/messages_members.cc: Same.
4828	* config/locale/gnu/time_members.cc: Same.
4829
48302002-03-25  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
4831	    Paolo Carlini  <pcarlini@unitus.it>
4832
4833	* testsuite/22_locale/codecvt_members_unicode_char.cc
4834	(test01, test02): Fix i_lit_base arrays, making them
4835	independent from the endianness of the platform.
4836
48372002-03-22  Benjamin Kosnik  <bkoz@redhat.com>
4838
4839	* acinclude.m4 (GLIBCPP_CHECK_COMPLEX_MATH_SUPP): Just test for
4840	signbit and __signbit directly.
4841	* aclocal.m4: Regenerate.
4842	* configure: Regenerate.
4843	* config.h.in: Regenerate.
4844	* libmath/Makefile.am: Simplify.
4845	* libmath/Makefile.in: Regenerate.
4846	* include/c_std/std_cmath.h: Update paths for include of cmath.tcc.
4847
4848	* include/Makefile.am: Clean up handling of extra "C" header files.
4849	Add hooks for "C" compatibility headers.
4850	* include/Makefile.in: Regenerate.
4851
4852	* include/c/*: Formatting tweaks, cleanups.
4853	* include/c_std/*: Same.
4854
48552002-03-22  Benjamin Kosnik  <bkoz@redhat.com>
4856
4857	* config/locale/gnu/messages_members.h: Add __uselocale bits.
4858	* config/locale/gnu/messages_members.cc: Same.
4859	* config/locale/gnu/time_members.cc: Same.
4860
48612002-03-22  Benjamin Kosnik  <bkoz@redhat.com>
4862
4863	* src/vterminate.cc: Format, -fno-exceptions cleanup.
4864
48652002-03-21  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
4866
4867	* acinclude.m4 (GLIBCPP_CHECK_STDLIB_DECL_AND_LINKAGE_3): New.
4868	(GLIBCPP_CONFIGURE_TESTSUITE): Use it to check for setenv.
4869	* aclocal.m4: Regenerate.
4870	* configure: Likewise.
4871
48722002-03-19  Paolo Carlini  <pcarlini@unitus.it>
4873	    Ulrich Drepper  <drepper@redhat.com>
4874
4875	* src/locale-inst.cc (__convert_from_v): Add an additional
4876	__size parameter in the declarations.
4877	* include/bits/locale_facets.tcc
4878	(__convert_from_v): When available (that is,
4879	_GLIBCPP_USE_C99 defined) use snprintf instead of sprintf.
4880	(num_put::_M_convert_float): Depending on _GLIBCPP_USE_C99
4881	being defined or not, call and use __convert_from_v in the
4882	appropriate way.
4883	(num_put::_M_convert_int): Same here.
4884	(money_put::do_put(long double)): Same here.
4885
48862002-03-19  Phil Edwards  <pme@gcc.gnu.org>
4887
4888	* docs/html/faq/index.html (#3.6):  Rewrap and close <a href> tags.
4889	* docs/html/faq/index.txt:  Regenerate.
4890
48912002-03-19  Steve Ellcey  <sje@cup.hp.com>
4892
4893	* acinclude.m4 (GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS): Define
4894	GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS to set LIBUNWIND_FLAG if
4895	--enable-libunwind-exceptions is set.
4896	* configure.in (GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS): Call new
4897	macro to check for libunwind.
4898	* configure: Regenerate.
4899	* src/Makefile.am (libstdc___la_LDFLAGS): Add
4900	LIBUNWIND_FLAG to libstdc link line.
4901	* src/Makefile.in: Regenerate.
4902
49032002-03-19  Benjamin Kosnik  <bkoz@redhat.com>
4904
4905	* docs/html/faq/index.html: Add OS X workaround.
4906	* docs/html/17_intro/TODO: Update.
4907
49082002-03-18  Paolo Carlini  <pcarlini@unitus.it>
4909
4910	* include/bits/locale_facets.tcc
4911	(money_put::do_put(long double)): Fix dimensioning of
4912	temporary buffers to avoid risk of overruns.
4913	(money_put::do_put(string)): Same for the buffer used to
4914	add the grouping chars.
4915	* testsuite/22_locale/money_put_members_char.cc: Add test06.
4916	* testsuite/22_locale/money_put_members_wchar_t.cc: Ditto.
4917
4918	* include/bits/locale_facets.tcc
4919	(collate::do_transform): Simplify.
4920
49212002-03-18  Phil Edwards  <pme@gcc.gnu.org>
4922
4923	* acinclude.m4 (GLIBCPP_CONFIGURE):  Make indentation/spacing uniform.
4924	* configure.in:  Add comments pointing the way for autoconf 2.5x.
4925	* aclocal.m4, config.h.in, configure:  Regenerate.
4926
49272002-03-18  Philipp Thomas  <pthomas@suse.de>
4928
4929	* include/backward/hash_map.h: hash, hashtable, hash_map and
4930	hash_multimap are in namespace __gnu_cxx.
4931	include/backward/hash_set.h: hash, hashtable, hash_set and
4932	hash_multiset are in namespace __gnu_cxx.
4933	include/backward/hashtable.h: hash and hashtable are in
4934	namespace __gnu_cxx.
4935	include/backward/rope.h: char_producer, sequence_buffer,
4936	rope, crope and wrope are in namespace __gnu_cxx.
4937	include/backward/slist.h: slist is in namespace __gnu_cxx.
4938	* testsuite/backward/header_hash_map_h.cc
4939	testsuite/backward/header_hash_set_h.cc
4940	testsuite/backward/header_hashtable_h.cc
4941	testsuite/backward/header_rope_h.cc
4942	testsuite/backward/header_slist_h.cc
4943	testsuite/backward/header_tempbuf_h.cc: New tests for
4944	checking that we're using the correct namespace.
4945
49462002-03-17  Jason Merrill  <jason@redhat.com>
4947
4948	PR c++/4381
4949	* libsupc++/eh_personality.cc (get_adjusted_ptr): New static fn.
4950	(check_exception_spec): Call it.  Take the thrown pointer.
4951	(__cxa_call_unexpected): Pass it.
4952	(PERSONALITY_FUNCTION): Likewise.  Use get_adjusted_ptr.
4953
49542002-03-15  Anthony Green  <green@redhat.com>
4955
4956	* configure.in: Remove useless is_mingw32.
4957	* configure: Rebuilt.
4958
49592002-03-15  Paolo Carlini  <pcarlini@unitus.it>
4960
4961	* testsuite/22_locale/collate_members_char.cc
4962	(test01): compare the result of collate::compare with
4963	that of collate::transform + string::compare, not with
4964	that of collate::transform + collate::compare.
4965	(test01): values returned by collate::compare are
4966	normalized, therefore test against +-1.
4967	* testsuite/22_locale/collate_members_wchar_t.cc: Ditto.
4968
49692002-03-12  Loren Rittle  <ljrittle@acm.org>
4970
4971	reported by Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
4972	* testsuite/thread/pthread4.cc: Lower nominal iteration counter.
4973
49742002-03-12  Benjamin Kosnik  <bkoz@redhat.com>
4975	    Per Liboriussen  <liborius@stofanet.dk>
4976
4977	* config/os/gnu-linux/bits/ctype_noninline.h: Cast to
4978	unsigned char.
4979	* config/os/gnu-linux/bits/ctype_inline.h: Same.
4980
4981	* config/os/irix/irix6.5/bits/ctype_inline.h: Same.
4982
4983	* config/os/solaris/solaris2.5/bits/ctype_inline.h: Same.
4984	* config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.
4985
4986	* config/os/solaris/solaris2.6/bits/ctype_inline.h: Same.
4987	* config/os/solaris/solaris2.6/bits/ctype_noninline.h: Same.
4988
4989	* config/os/solaris/solaris2.7/bits/ctype_inline.h: Same.
4990	* config/os/solaris/solaris2.7/bits/ctype_noninline.h: Same.
4991
4992	* testsuite/22_locale/ctype_members_char.cc (main): Add tests.
4993
49942002-03-12  Benjamin Kosnik  <bkoz@redhat.com>
4995
4996	* include/bits/basic_string.tcc (string::_S_construct(_InIter,
4997	_InIter, const _Alloc&, forward_iterator_tag): Check for null.
4998	(string::basic_string(const _CharT* __s, const _Alloc& __a)): Same.
4999	* testsuite/21_strings/ctor_copy_dtor.cc (test01): Re-enable, now
5000	that memory limits are in place.
5001	(test03): Add tests.
5002
50032002-03-11  Benjamin Kosnik  <bkoz@redhat.com>
5004
5005	* acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Check for wctype.h.
5006	* aclocal.m4: Regenerate.
5007	* config.h.in: Regenerate.
5008	* configure: Regenerate.
5009	* include/c_std/std_cwctype.h: Guard.
5010
50112002-03-11  Chris Demetriou  <cgd@broadcom.com>
5012
5013	* acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Enhance check for
5014	whether GLIBCPP_CHECK_LINKER_FEATURES has been used.
5015	* aclocal.m4: Regenerate.
5016	* configure: Regenerate.
5017
50182002-03-11  Benjamin Kosnik  <bkoz@redhat.com>
5019
5020	* include/bits/stl_bvector.h: Fix warning.
5021
50222002-03-11  Richard Henderson  <rth@redhat.com>
5023
5024	* include/bits/stl_bvector.h (_Bit_type): New.  Use throughout.
5025
50262002-03-11  Phil Edwards  <pme@gcc.gnu.org>
5027
5028	* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-list-sourcefiles):
5029	New function.  Build the list of tests to run in testsuite_files.
5030	* testsuite/libstdc++-v3.dg/dg.exp:  Use it.
5031
50322002-03-11  Phil Edwards  <pme@gcc.gnu.org>
5033
5034	* testsuite/21_strings/capacity.cc:  Only explicitly instantiate on
5035	platforms with no weak support.
5036	* testsuite/27_io/ios_init.cc:  Likewise.
5037
50382002-03-10  Paolo Carlini  <pcarlini@unitus.it>
5039
5040	* include/bits/locale_facets.tcc (time_put::do_put):
5041	Consider sizeof(char_type) in allocating the buffer.
5042
5043	* include/bits/locale_facets.tcc (collate::do_tranform):
5044	Remove redundant variable.
5045
50462002-03-10  Ulrich Drepper  <drepper@redhat.com>
5047	    Paolo Carlini  <pcarlini@unitus.it>
5048
5049	* config/locale/generic/collate_members.cc
5050	(collate<char,wchar_t>::_M_compare_helper): normalize
5051	values returned by strcoll and wcscoll.
5052	* config/locale/gnu/collate_members.cc
5053	(collate<char,wchar_t>::_M_compare_helper): ditto
5054	for __strcoll_l and __wcscoll_l.
5055
50562002-03-10  Anthony Green  <green@redhat.com>
5057
5058	* configure.in: Support cross builds to mingw32 target.
5059	* configure: Rebuilt.
5060
50612002-03-09  Paolo Carlini  <pcarlini@unitus.it>
5062
5063	* include/bits/locale_facets.tcc (collate::do_transform):
5064	Rewrite to fix problems with long transformed strings.
5065
50662002-03-08  Benjamin Kosnik  <bkoz@redhat.com>
5067
5068	* c_locale_generic.cc: Move to...
5069	* generic/c_locale.cc
5070	* c_locale_generic.h: Move to...
5071	* generic/c_locale.h
5072	* codecvt_specializations_generic.h: Move to...
5073	* generic/codecvt_specializations.h
5074	* collate_members_generic.cc: Move to...
5075	* generic/collate_members.cc
5076	* ctype_members_generic.cc: Move to...
5077	* generic/ctype_members.cc
5078	* messages_members_generic.cc: Move to...
5079	* generic/messages_members.cc
5080	* messages_members_generic.h: Move to...
5081	* generic/messages_members.h
5082	* moneypunct_members_generic.cc: Move to...
5083	* generic/monetary_members.cc
5084	* numpunct_members_generic.cc: Move to...
5085	* generic/numeric_members.cc
5086	* time_members_generic.cc: Move to...
5087	* generic/time_members.cc
5088	* c_locale_gnu.cc: Move to...
5089	* gnu/c_locale.cc
5090	* c_locale_gnu.h: Move to...
5091	* gnu/c_locale.h
5092	* collate_members_gnu.cc: Move to...
5093	* gnu/collate_members.cc
5094	* ctype_members_gnu.cc: Move to...
5095	* gnu/ctype_members.cc
5096	* messages_members_gnu.cc: Move to...
5097	* gnu/messages_members.cc
5098	* messages_members_gnu.h: Move to...
5099	* gnu/messages_members.h
5100	* moneypunct_members_gnu.cc: Move to...
5101	* gnu/monetary_members.cc
5102	* numpunct_members_gnu.cc: Move to...
5103	* gnu/numeric_members.cc
5104	* time_members_gnu.cc: Move to...
5105	* gnu/time_members.cc
5106	* c_locale_ieee_1003.1-200x.cc: Move to...
5107	* ieee_1003.1-2001/c_locale.cc
5108	* c_locale_ieee_1003.1-200x.h: Move to...
5109	* ieee_1003.1-2001/c_locale.h
5110	* codecvt_specializations_ieee_1003.1-200x.h: Move to...
5111	* ieee_1003.1-2001/codecvt_specializations.h
5112	* messages_members_ieee_1003.1-200x.cc: Move to...
5113	* ieee_1003.1-2001/messages_members.cc
5114	* messages_members_ieee_1003.1-200x.h: Move to...
5115	* ieee_1003.1-2001/messages_members.h
5116
5117	* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Make consistent.
5118	* aclocal.m4: Regenerate.
5119	* configure: Regenerate.
5120	* src/Makefile.am (sources): Change to monetary and numeric.
5121	* src/Makefile.in: Regenerate.
5122	* docs/html/configopts.html: Update to ieee_1003.1-2001.
5123
51242002-03-08  scott snyder  <snyder@fnal.gov>
5125
5126	libstdc++/5875
5127	* include/bits/locale_facets.tcc (num_put::_M_convert_float):
5128	Allow one more digit of precision.
5129	* testsuite/27_io/ostream_inserter_arith.cc: Test that we can
5130	write a double and read back in the same value.
5131
51322002-03-08  Benjamin Kosnik  <bkoz@redhat.com>
5133
5134	* include/std/std_limits.h: Move static const data members out of
5135	generic template, into base class __numeric_limits_base.
5136	* src/limits.cc: Add definitions.
5137	* config/linker-map.gnu: Add __numeric_limits_base.
5138	* testsuite/18_support/numeric_limits.cc: Declare test in scope.
5139
51402002-03-07  Benjamin Kosnik  <bkoz@redhat.com>
5141
5142	* include/bits/stl_alloc.h: Add extern implicit allocator
5143	instantiations.
5144	* include/bits/basic_string.tcc: Tweak.
5145	* include/bits/locale_facets.tcc: Remove default args. Add
5146	has_facet, use_facet extern instantiations.
5147	* src/stl-inst.cc: Add explicit instantiation.
5148	* src/locale-inst.cc: Clean. Remove locale member template
5149	instantiations.
5150
5151	* testsuite/22_locale/operators.cc (test02): Enable.
5152
51532002-03-06  Benjamin Kosnik  <bkoz@redhat.com>
5154	    Stephen M. Webb  <stephen.webb@bregmasoft.com>
5155
5156	* include/bits/stl_tree.h (_S_rb_tree_red): Make enum.
5157	(_S_rb_tree_black): Make enum.
5158	Clean. Format.
5159	* include/bits/stl_bvector.h (__WORD_BIT): To _M_word_bit, enum.
5160	* include/bits/stl_algo.h (__stl_chunk_size): _M_chunk_size, enum.
5161	(__stl_threshold): _M_threshold, enum.
5162	* src/stl-inst.cc: Same.
5163	* config/linker-map.gnu: Remove.
5164
5165	* testsuite/23_containers/vector_bool.cc: New.
5166
51672002-03-06  Phil Edwards  <pme@gcc.gnu.org>
5168
5169	* docs/doxygen/user.cfg.in:  Also document deprecated entries.
5170	* docs/html/Makefile:  Example rule to rebuild porting-howto.html.
5171	* docs/html/17_intro/howto.html:  "gcc"->"GCC" changes, when
5172	referring to the collection as a whole.  New section on which macros
5173	can be redefined by the user.
5174	* docs/html/19_diagnostics/howto.html:  Update note for concepts.
5175	* docs/html/20_util/howto.html:  Update link to SGI.
5176	* docs/html/faq/index.html:  Update snapshot versions.  New entry
5177	on why g++ (but not gcc) must currently predefine certain macros.
5178	* docs/html/faq/index.txt:  Regenerated.
5179
5180	* include/bits/basic_string.h (basic_string::_S_construct):  Fix
5181	names in declaration.
5182	(basic_string::compare):  These are no longer optional.
5183	* include/bits/ostream.tcc:  Tweak closing brace placement.
5184	* include/bits/stl_algo.h:  Lots of initial doxygen comment hooks.
5185	* include/std/std_sstream.h:  Fix typo in comment.
5186	* include/bits/locale_facets.tcc:  Remove unneeded header inclusion.
5187	* src/locale.cc:  Likewise.
5188
51892002-03-06  Phil Edwards  <pme@gcc.gnu.org>
5190
5191	PR libstdc++/5734
5192	* include/bits/stl_vector.h (vector::push_back()):  Guard with
5193	_GLIBCPP_DEPRECATED.
5194
51952002-03-06  Phil Edwards  <pme@gcc.gnu.org>
5196
5197	* include/bits/c++config:  Fix misplaced leading blanks on first line.
5198
51992002-03-05  Benjamin Kosnik  <bkoz@redhat.com>
5200
5201	* docs/html/17_intro/RELEASE-NOTES: Fix usage.
5202	* README (libmath): Make clear.
5203
52042002-03-05  Jakub Jelinek  <jakub@redhat.com>
5205
5206	* acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Check for version
5207	script globbing in ld.
5208	* aclocal.m4: Rebuilt.
5209	* configure: Rebuilt.
5210
52112002-03-05  Benjamin Kosnik  <bkoz@redhat.com>
5212
5213	* docs/html/17_intro/RELEASE-NOTES: Update.
5214	* README: Format subdirectories.
5215
52162002-03-05  Paolo Carlini  <pcarlini@unitus.it>
5217
5218	libstdc++/5816
5219	* include/bits/locale_facets.tcc
5220	(num_get::_M_extract_float): Fix the parsing of __dec, since
5221	the standard prescribes that if no grouping characters are
5222	seen, no grouping check is applied.
5223	* testsuite/22_locale/num_get_members_char.cc: Add test05
5224	distilled from the PR.
5225	* testsuite/22_locale/num_get_members_wchar_t.cc: Ditto.
5226
52272002-03-04  Craig Rodrigues  <rodrigc@gcc.gnu.org>
5228
5229	* docs/html/17_intro/porting-howto.xml: Refer to
5230	http://www.oasis-open.org for docbookx.dtd.
5231	* docs/html/17_intro/porting-howto.html: Regenerated.
5232
52332002-03-03  Phil Edwards  <pme@gcc.gnu.org>
5234
5235	PR libstdc++/3955
5236	* include/std/std_sstream.h:  Remove trailing spaces.
5237	(basic_stringbuf::_M_stringbuf_init):  Also check for ios_base::app.
5238	* testsuite/27_io/stringbuf.cc (test05, test06):  New tests.
5239
52402002-03-02  Paolo Carlini  <pcarlini@unitus.it>
5241
5242	* testsuite/22_locale/num_get_members_char.cc (test04):
5243	Use a named locale expecting grouping (de_DE).
5244	* testsuite/22_locale/num_get_members_wchar_t.cc (test04):
5245	Ditto.
5246	* testsuite/27_io/ios_manip_basefield.cc (test01):
5247	Extend coverage, uniform treatment of hexs and octs.
5248
52492002-02-28  Richard Henderson  <rth@redhat.com>
5250
5251	* config/linker-map.gnu: Export operator new with unsigned long,
5252	and with std::nothrow_t.  Likewise operator delete.
5253
52542002-02-28  Paolo Carlini  <pcarlini@unitus.it>
5255
5256	* include/bits/locale_facets.tcc (num_get::_M_extract_int):
5257	Admit grouping for octals and hexadecimals too.
5258	* testsuite/22_locale/num_get_members_char.cc: Add test04.
5259	(test01): Tweak "." -> "," in void* test.
5260	* testsuite/22_locale/num_get_members_wchar_t.cc: Ditto.
5261
5262	* testsuite/27_io/ios_manip_basefield.cc: Remove static keyword.
5263	* testsuite/27_io/ios_manip_fmtflags.cc: Remove two of them.
5264
52652002-02-27  Paolo Carlini  <pcarlini@unitus.it>
5266
5267	* testsuite/27_io/ios_manip_basefield.cc (test01):
5268	Fix for 64 bit machines.
5269
52702002-02-26  Benjamin Kosnik  <bkoz@redhat.com>
5271
5272	libstdc++/3983
5273	* include/bits/basic_ios.tcc (basic_ios::init): Set _M_fill to zero.
5274	Adjust comment.
5275	* include/bits/basic_ios.h (basic_ios::_M_fill): Make mutable.
5276	(basic_ios::_M_fill_init): New.
5277	(basic_ios::fill()): Delay dealing with _M_fill.
5278	Adjust comment.
5279	* ios.cc (ios_base::ios_base()): Initialize _M_callbacks, _M_words.
5280	(ios_base::_M_call_callbacks): Adjust.
5281	* testsuite/27_io/ios_init.cc (test02): Adjust testcase.
5282
52832002-02-26  Loren Rittle  <ljrittle@acm.org>
5284
5285	* include/Makefile.am (thread_target_headers): Unconditionally
5286	stage and install gthr-posix.h.
5287	(${target_builddir}/gthr-posix.h): New rule cloned off
5288	${target_builddir}/gthr-default.h.
5289	(${target_builddir}/gthr-default.h): Support chained inclusion
5290	of gthr support headers.
5291	* include/Makefile.in: Rebuilt.
5292
52932002-02-26  Paolo Carlini  <pcarlini@unitus.it>
5294
5295	* include/bits/locale_facets.tcc (num_put::_M_widen_int):
5296	Group all the integral types, not only decs.
5297	* testsuite/27_io/ios_manip_basefield.cc (test01): Tweak existing
5298	tests, add a few more.
5299
53002002-02-25  Benjamin Kosnik  <bkoz@redhat.com>
5301
5302	* src/ios.cc (ios_base::~ios_base): Tweak.
5303	(ios_base::_M_call_callbacks): Deal with null __p.
5304	(ios_base::ios_base): Set _M_callbacks.
5305	* include/bits/basic_ios.tcc (basic_ios::init): Adjust comment.
5306	* testsuite/27_io/ios_init.cc (test02): Fix.
5307
5308	* mkcheck.in (static_fail): Failed links go to output file.
5309
53102002-02-25  Phil Edwards  <pme@gcc.gnu.org>
5311
5312	* docs/html/faq/index.html:  Update.
5313	* docs/html/faq/index.txt:  Regenerate.
5314
53152002-02-22  Phil Edwards  <pme@gcc.gnu.org>
5316
5317	* acinclude.m4 (GLIBCPP_ENABLE_SYMVERS):  Fix comment.
5318	* aclocal.m4:  Regenerate.
5319	* docs/html/configopts.html:  Document --enable-symvers.
5320	* config/linker-map.gnu:  Break libsupc++ symbols out to their own tag.
5321
53222002-02-22  Philipp Thomas  <pthomas@suse.de>
5323
5324	* include/backward/tempbuf.h: get_temporary_buffer and
5325	return_temporary_buffer are in namespace std, not in __gnu_cxx.
5326
53272002-02-21  Benjamin Kosnik  <bkoz@redhat.com>
5328
5329	* configure.in (target_alias): Default to yes.
5330	* acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Add check for shared
5331	libgcc to default case.
5332
53332002-02-20  Phil Edwards  <pme@gcc.gnu.org>
5334
5335	* acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES):  Also check version.
5336	(GLIBCPP_ENABLE_SYMVERS):  Redo logic, use linker version.
5337	* configure.in (GLIBCPP_ENABLE_SYMVERS):  Move later in the script.
5338	* aclocal.m4:  Regenerate.
5339	* configure:  Regenerate.
5340	* config/linker-map.dummy:  New file.  Contains nothing useful.
5341
53422002-02-20  Benjamin Kosnik  <bkoz@redhat.com>
5343
5344	* testsuite/22_locale/money_put_members_char.cc: Fix.
5345	* testsuite/22_locale/money_put_members_wchar_t.cc: Fix.
5346
5347	* testsuite/27_io/standard_manipulators.cc: New file.
5348
5349	* testsuite/27_io/ios_manip_basefield.cc: Check results, now failing.
5350	* testsuite/27_io/ios_manip_fmtflags.cc: Use locale::classic().
5351
53522002-02-20  Danny Smith  <dannysmith@users.sourceforge.net>
5353
5354	* config/os/mingw32/bits/ctype_noninline.h
5355	(ctype<char>::ctype): Remove default args from parm list.
5356	* config/os/djgpp/bits/ctype_noninline.h: Same.
5357
53582002-02-19  Benjamin Kosnik  <bkoz@redhat.com>
5359
5360	* include/std/std_iomanip.h: Inline, tweaks.
5361	* config/linker-map.gnu: Remove hacks.
5362
5363	* testsuite/21_strings/capacity.cc: Add explicit instantiations.
5364	* testsuite/27_io/ios_init.cc: Same.
5365	* testsuite/22_locale/money_get_members_char.cc (test07): Fix.
5366	* testsuite/22_locale/money_get_members_wchar_t.cc (test07): Same.
5367
53682002-02-19  Benjamin Kosnik  <bkoz@redhat.com>
5369
5370	* config/linker-map.gnu: Export global vtable, typeinfo, guard
5371	variable, and thunk info as per CXXABI docs.
5372
53732002-02-19  Loren Rittle <ljrittle@acm.org>
5374
5375	* include/Makefile.am: Use CONFIG_HEADER instead of ad hoc names.
5376	* include/Makefile.in: Rebuilt.
5377
53782002-02-18  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
5379
5380	* testsuite/22_locale/collate_byname.cc (test01): Replace size4
5381	  with size3 for the string collations of str5.
5382
53832002-02-18  Paolo Carlini  <pcarlini@unitus.it>
5384
5385	libstdc++/5708
5386	* include/bits/locale_facets.tcc (money_put::do_put):
5387	For the space field use __fill instead of ' ', uniformly.
5388	* testsuite/22_locale/money_put_members_char.cc:
5389	Add test05 distilled from PR.
5390	(test01-02-03): Trim some '*' to ' '.
5391	* testsuite/22_locale/money_put_members_wchar_t.cc: Ditto.
5392
53932002-02-18  Loren Rittle <ljrittle@acm.org>
5394
5395	libstdc++/5697
5396	* include/Makefile.am (thread_builddir): Remove (map all
5397	existing uses to target_builddir).
5398	(thread_headers): Rename to...
5399	(thread_target_headers): ...this.
5400	(stamp-thread): Remove.
5401	(stamp-target): Correctly state the position as built.
5402	Update all dependencies to match the new reality.  Remove all
5403	dependency calculations on directories.
5404	* include/Makefile.in: Rebuilt.
5405
54062002-02-16   Benjamin Kosnik  <bkoz@redhat.com>
5407
5408	* include/bits/locale_facets.tcc: Add pragma GCC system_header.
5409	* include/bits/fstream.tcc: Same.
5410	* include/bits/sstream.tcc: Same.
5411	* include/bits/ostream.tcc: Same.
5412	* include/bits/istream.tcc: Same.
5413	* include/bits/streambuf.tcc: Same.
5414	* include/bits/basic_ios.tcc: Same.
5415	* include/bits/basic_string.tcc: Same.
5416
54172002-02-15  Benjamin Kosnik  <bkoz@redhat.com>
5418
5419	* include/std/std_iosfwd.h: Don't guard typedefs with
5420	_GLIBCPP_USE_WCHAR_T
5421	* include/bits/stringfwd.h: Same.
5422
54232002-02-15  Benjamin Kosnik  <bkoz@redhat.com>
5424
5425	* src/locale.cc (moneypunct_byname): Remove definitions.
5426	* include/std/std_streambuf.h (streambuf::operator=): Return.
5427
54282002-02-15  Benjamin Kosnik  <bkoz@redhat.com>
5429
5430	Tune for size.
5431	* src/string-inst.cc (string::_Rep::_S_terminal): Remove redundant
5432	explicit instantiation.
5433	(string::_Rep::_S_max_size): Same.
5434	* include/bits/basic_string.tcc: Add extern explicit
5435	instantiations for string, wstring.
5436	* include/bits/basic_ios.tcc: Add extern explicit instantiations
5437	for ios, wios.
5438	* include/bits/streambuf.tcc: Same, for streambuf, wstreambuf.
5439	* include/bits/istream.tcc: Same, for istream, wistream.
5440	* include/bits/ostream.tcc: Same for ostream, wostream, iostream,
5441	wiostream.
5442	* include/bits/sstream.tcc: Same, for stringbuf, wstringbuf,
5443	istringstream, wistringstream, ostringstream, wostringstream,
5444	stringstream, wstringstream.
5445	* include/bits/fstream.tcc: Same, for filebuf, wfilebuf, ifstream,
5446	wifstream, ofstream, wofstream, fstream, wfstream.
5447	* src/misc-inst.cc: Correct comments.
5448	Add iomanip instantiations for wide streams.
5449	* include/std/std_iomanip.h: Same.
5450	* include/bits/locale_facets.tcc: Same.
5451
5452	* include/std/std_streambuf.h: Correct
5453	_GLIBCPP_FULLY_COMPLIANT_HEADERS guard.
5454	* include/std/std_sstream.h: Same.
5455	* include/std/std_ostream.h: Same.
5456	* include/std/std_istream.h: Same.
5457	* include/std/std_fstream.h: Same.
5458
5459	* include/std/std_streambuf.h: Add definitions for private copy
5460	ctor and assignment operator.
5461	* include/std/std_istream.h: Remove declared but undefined copy
5462	ctor and assignment operator. This is taken care of in ios_base,
5463	so adding it in the derived class as well is superfluous.
5464	* include/std/std_ostream.h: Same.
5465
5466	* include/bits/basic_ios.h (basic_ios::clear): Don't inline.
5467	* include/bits/basic_ios.tcc (basic_ios::clear): Move definition here.
5468
54692002-02-14  Benjamin Kosnik  <bkoz@redhat.com>
5470
5471	* config/linker-map.gnu: Change tag from GCC_3.1 to GLIBCPP_3.1.
5472	Add typeinfo bits. Smooth.
5473	* aclocal.m4: Regenerate.
5474	* configure: Same.
5475	* src/Makefile.in: Same.
5476
54772001-02-14  Joel Sherrill  <joel@OARcorp.com>
5478
5479	* config/cpu/m68k/bits/atomicity.h: Corrected for RTEMS targets
5480	which do not have a CAS instruction.
5481
54822002-02-14  Phil Edwards  <pme@gcc.gnu.org>
5483
5484	* acinclude.m4 (GLIBCPP_ENABLE_SYMVERS):  New macro, initial revision.
5485	* configure.in:  Call it.
5486	* config/linker-map.gnu:  New file, initial incomplete revision.
5487	* src/Makefile.am:  Optionally pass version script to the linker.
5488	* aclocal.m4:  Regenerate.
5489	* configure:  Regenerate.
5490	* src/Makefile.in:  Regenerate.
5491
54922002-02-13  Benjamin Kosnik  <bkoz@redhat.com>
5493
5494	* src/localename.cc: Remove stdexcept include.
5495	* src/locale-inst.cc: Same.
5496	* src/locale.cc: Same.
5497	* src/functexcept.cc: Remove string includes.
5498	* include/std/std_bitset.h: Remove stdexcept include.
5499	* testsuite/23_containers/bitset_members.cc: Add stdexcept.
5500	* testsuite/23_containers/bitset_ctor.cc: Same.
5501
55022002-02-11  Benjamin Kosnik  <bkoz@redhat.com>
5503
5504	* include/bits/stl_algo (__stl_threshold): Declare external.
5505	(__stl_chunk_size): Same.
5506	* include/bits/stl_bvector.h (__WORD_BIT): Same.
5507	* include/bits/stl_tree.h (_S_rb_tree_red): Same.
5508	(_S_rb_tree_black): Same.
5509	* src/stl-inst.cc (__stl_threshold): Define.
5510	(__stl_chunk_size): Same.
5511	(__WORD_BIT): Same.
5512	(_S_rb_tree_red): Same.
5513	(_S_rb_tree_black): Same.
5514
5515	* config/io/basic_file_libio.h (__basic_file): Add declarations.
5516	* include/bits/basic_file.h: Remove.
5517	* config/io/c_io_stdio.h: Remove _GLIBCPP_BASIC_FILE_ENCAPSULATION
5518	Declare generic types, specialization.
5519	* config/io/basic_file_stdio.cc: Definitions.
5520	* config/io/c_io_libio.h: Remove _GLIBCPP_BASIC_FILE_INHERITANCE.
5521	Declare generic types.
5522	* include/Makefile.am (bits_headers): Remove basic_file.h.
5523	(extra_target_headers): Change basic_file_model.h to basic_file.h.
5524	(stamp-target): Same.
5525
5526	* include/bits/stl_alloc.h: Tweaks.
5527	* include/bits/localefwd.h: Same.
5528
55292002-02-11  Aaron W LaFramboise  <AWLaFramboise@aol.com>
5530
5531	* include/bits/locale_facets.tcc (collate::do_hash): Fix.
5532	* testsuite/22_locale/collate_members_char.cc (test03): New test.
5533	* testsuite/22_locale/collate_members_wchar_t.cc (test03): Same.
5534
55352002-02-10  Phil Edwards  <pme@gcc.gnu.org>
5536
5537	* include/bits/stl_algo.h (transform (both signatures), generate_n):
5538	Use __typeof__ in concept checks.
5539
55402002-02-10  Jonathan Wakely  <cow@compsoc.man.ac.uk>
5541
5542	* include/bits/stl_algo.h (__median, for_each, find, find_if,
5543	adjacent_find, count, count_if, search, search_n, swap_ranges,
5544	transform, replace, replace_if, replace_copy, replace_copy_if,
5545	generate, generate_n, remove_copy, remove_copy_if, remove, remove_if,
5546	unique, unique_copy, reverse, reverse_copy):  Doxygenate.
5547
55482002-02-08  Benjamin Kosnik  <bkoz@redhat.com>
5549
5550	* include/bits/locale_facets.h
5551	(numpunct<_CharT>::_M_initialize_numpunct): Remove definition.
5552	(__timepunct<_CharT>::_M_initialize_timepunct): Same.
5553	(__timepunct<_CharT>::_M_put_helper): Same.
5554	(moneypunct<_CharT, _Intl>::_M_initialize_moneypunct): Same.
5555
5556	* include/bits/fstream.tcc (filebuf::underflow): Remove
5557	__codecvt_type typedef.
5558	(filebuf::_M_convert_to_external): Same.
5559
55602002-02-08  Phil Edwards  <pme@gcc.gnu.org>
5561
5562	* docs/doxygen/TODO:  Update.
5563	* docs/doxygen/doxygroups.cc:  Tweak __gnu_cxx description.
5564	* docs/doxygen/mainpage.html:  Add TODO list link.
5565	* docs/doxygen/user.cfg.in:  Add @doctodo hook.
5566	* docs/doxygen/tables.html:  New file, emoty structure only.
5567
5568	* include/bits/stl_iterator.h:  Doxygenate just about everything.
5569	* include/bits/stl_iterator_base_funcs.h:  Ditto, clean up spaces.
5570	* include/bits/stl_iterator_base_types.h:  Add notes.
5571
55722002-02-07  Stephan Buys  <sbproxy@icon.co.za>
5573
5574	* include/bits/stl_map.h:  Tweak doxygen markup.
5575	* include/bits/stl_multimap.h:  Doxygenate and remove extra spaces.
5576	* include/bits/stl_vector.h:  Likewise.
5577
55782002-02-07  Benjamin Kosnik  <bkoz@redhat.com>
5579
5580	libstdc++/5286
5581	libstdc++/3860
5582	* include/std/std_fstream.h (filebuf::__file_type): Change to
5583	__basic_file<char>.
5584	(filebuf::_M_convert_to_external): Declare.
5585	* include/bits/fstream.tcc (filebuf::_M_convert_to_external): Define
5586	codecvt bits for wide streams.
5587	(filebuf::_M_really_overflow): Use it.
5588	(filebuf::underflow): Use codecvt.
5589	* config/locale/codecvt_specializations_ieee_1003.1-200x.h:
5590	(codecvt<__enc_traits>::do_out): Deal with partial.
5591	(codecvt<__enc_traits>::do_encoding): Return something useful.
5592	* src/codecvt.cc (codecvt<wchar_t>::do_encoding): Return sizeof
5593	wchar_t.
5594	* testsuite/22_locale/codecvt_members_unicode_char.cc (test01):
5595	Change expected encoding output.
5596	(test02): Same.
5597	* testsuite/22_locale/codecvt_members_wchar_t_char.cc (test01): Same.
5598	(test02): Same.
5599
56002002-02-07  Benjamin Kosnik  <bkoz@redhat.com>
5601	    Wolfgang Bangerth  <wolfgang.bangerth@iwr.uni-heidelberg.de>
5602
5603	* include/bits/basic_ios.tcc (basic_ios::narrow): Add default value.
5604	(basic_ios::widen): Same.
5605
56062002-02-07  Paolo Carlini  <pcarlini@unitus.it>
5607
5608	* testsuite/22_locale/money_get_members_char.cc:
5609	Add comment, tidy up.
5610	(test01): more "en_HK" tests (without showbase).
5611	* testsuite/22_locale/money_get_members_wchar_t.cc: Ditto.
5612
56132002-02-06  Loren Rittle <ljrittle@acm.org>
5614
5615	* config/locale/c_locale_generic.cc: Do not trust
5616	_GLIBCPP_HAVE_STRTOF or _GLIBCPP_HAVE_STRTOLD as
5617	set by configure.
5618
56192002-02-06  Loren Rittle <ljrittle@acm.org>
5620
5621	* acinclude.m4: Add C++ linkage check for strtof.
5622	* aclocal.m4: Rebuilt.
5623	* config.h.in: Rebuilt.
5624	* configure: Rebuilt.
5625	* config/locale/c_locale_generic.cc: Conditionally include
5626	<ieeefp.h>.  Improve handling and error checking of float
5627	and long double input for non-C99 configurations.
5628
56292002-02-06  Paolo Carlini  <pcarlini@unitus.it>
5630
5631	* include/bits/locale_facets.tcc (money_get::do_get(string)):
5632	In case money_base::symbol deal properly with multi-char sign
5633	for patterns {X,Y,Z,symbol} and {X,Y,symbol,none}.
5634	* testsuite/22_locale/money_get_members_char.cc: Add test07.
5635	* testsuite/22_locale/money_get_members_wchar_t.cc: Add test07.
5636
56372002-02-05  Paolo Carlini  <pcarlini@unitus.it>
5638
5639	* include/bits/locale_facets.tcc (money_get::do_get(string)):
5640	First construct a tentative returned string, then, only if the
5641	parsing succeeds, copy it into the string passed by reference.
5642	* testsuite/22_locale/money_get_members_char.cc: Add test06.
5643	* testsuite/22_locale/money_get_members_wchar_t.cc: Add test06.
5644
56452002-02-04  Phil Edwards  <pme@gcc.gnu.org>
5646
5647	* docs/doxygen/TODO:  Impl-defined behavior now documented...
5648	* docs/html/17_intro/howto.html:  ...here.
5649	* docs/doxygen/mainpage.doxy:  Remove, rename...
5650	* docs/doxygen/mainpage.html:  ...to this.  Tweak HTML, add license.
5651	* docs/doxygen/style.css:  Add small text.
5652	* docs/doxygen/run_doxygen:  Adjust for new mainpage.
5653	* docs/doxygen/user.cfg.in:  Likewise.
5654
56552002-02-04  Stephan Buys  <sbproxy@icon.co.za>
5656
5657	* include/bits/stl_map.h:  Initial doxygen markup.
5658	* include/std/std_fstream.h:  Initial doxygen markup.
5659
56602002-02-04  Paolo Carlini  <pcarlini@unitus.it>
5661
5662	libstdc++/5579
5663	* include/bits/locale_facets.tcc (money_get::do_get(string)):
5664	Deal correctly with !(__io.flags() & ios_base::showbase)
5665	for case money_base::symbol.
5666	* testsuite/22_locale/money_get_members_char.cc: Add test05.
5667	* testsuite/22_locale/money_get_members_wchar_t.cc: Add test05.
5668
56692002-02-02  Paolo Carlini  <pcarlini@unitus.it>
5670
5671	* testsuite/22_locale/operators.cc
5672	(gnu_collate::do_compare()): Add return statement to
5673	suppress "no return statement" warning.
5674
56752002-02-01  Paolo Carlini  <pcarlini@unitus.it>
5676
5677	* testsuite/27_io/ostream_manip.cc: Enable test02.
5678
56792002-02-01  Phil Edwards  <pme@gcc.gnu.org>
5680
5681	* docs/html/documentation.html:  Update for 3.0.96.
5682	* docs/html/faq/index.html:  Update for 3.0.96.
5683	* docs/html/faq/index.txt:  Regenerated.
5684	* docs/doxygen/TODO:  Update notes.
5685	* docs/html/17_intro/howto.html:  Initial impl-specific listing.
5686
56872002-01-31  Benjamin Kosnik  <bkoz@redhat.com>
5688
5689	* config/locale/codecvt_specializations_ieee_1003.1-200x.h:
5690	Initialize all data members in copy ctor. Make ctors explicit.
5691	(__enc_traits::__enc_traits()): Default ctor does nothing.
5692	(__enc_traits::_M_init): Guard against multiple iconv_opens.
5693	* include/std/std_sstream.h (basic_stringbuf): Make data members
5694	protected.
5695	* include/std/std_fstream.h (basic_filebuf): Same.
5696	* include/std/std_streambuf.h: Tweak.
5697	* include/bits/streambuf.tcc: Same.
5698	* include/bits/sstream.tcc: Same.
5699	* include/bits/fstream.tcc: Same.
5700
57012002-01-31  Loren Rittle <ljrittle@acm.org>
5702
5703	* testsuite/22_locale/codecvt_members_char_char.cc: Do not
5704	allow NULL argument to be passed to setenv().
5705	* testsuite/22_locale/codecvt_members_wchar_t_char.cc: Likewise.
5706	* testsuite/22_locale/collate_members_char.cc: Likewise.
5707	* testsuite/22_locale/collate_members_wchar_t.cc: Likewise.
5708	* testsuite/22_locale/ctype_members_char.cc: Likewise.
5709	* testsuite/22_locale/ctype_members_wchar_t.cc: Likewise.
5710	* testsuite/22_locale/messages_members_char.cc: Likewise.
5711	* testsuite/22_locale/money_get_members_char.cc: Likewise.
5712	* testsuite/22_locale/money_get_members_wchar_t.cc: Likewise.
5713	* testsuite/22_locale/money_put_members_char.cc: Likewise.
5714	* testsuite/22_locale/money_put_members_wchar_t.cc: Likewise.
5715	* testsuite/22_locale/moneypunct_members_char.cc: Likewise.
5716	* testsuite/22_locale/moneypunct_members_wchar_t.cc: Likewise.
5717	* testsuite/22_locale/num_get_members_char.cc: Likewise.
5718	* testsuite/22_locale/num_get_members_wchar_t.cc: Likewise.
5719	* testsuite/22_locale/num_put_members_char.cc: Likewise.
5720	* testsuite/22_locale/num_put_members_wchar_t.cc: Likewise.
5721	* testsuite/22_locale/numpunct_members_char.cc: Likewise.
5722	* testsuite/22_locale/numpunct_members_wchar_t.cc: Likewise.
5723	* testsuite/22_locale/time_get_members_char.cc: Likewise.
5724	* testsuite/22_locale/time_get_members_wchar_t.cc: Likewise.
5725	* testsuite/22_locale/time_put_members_char.cc: Likewise.
5726	* testsuite/22_locale/time_put_members_wchar_t.cc: Likewise.
5727
57282002-01-30  Benjamin Kosnik  <bkoz@redhat.com>
5729
5730	* config/locale/c_locale_gnu.cc: Same errno fixes as generic.
5731
5732	* ChangeLog-2001: Fix spelling errors...
5733	* docs/html/17_intro/RELEASE-NOTES: Update.
5734	* docs/html/17_intro/TODO: Update.
5735	* README (file): Update.
5736
57372002-01-30  Loren Rittle <ljrittle@acm.org>
5738
5739	* config/locale/c_locale_generic.cc: Check errno for ERANGE
5740	instead of non-zero to aid portability.
5741
57422002-01-30  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
5743
5744	* docs/html/22_locale/messages.html: Fix example code.
5745
57462002-01-30  Richard Henderson  <rth@redhat.com>
5747
5748	* testsuite/27_io/ostream_inserter_arith.cc (test03_check): Break
5749	out from test03 and templatize.
5750	(test03): Use it.
5751
57522002-01-30  Paolo Carlini  <pcarlini@unitus.it>
5753
5754	* config/locale/numpunct_members_gnu.cc
5755	(numpunct<char, wchar_t>::_M_initialize_numpunct()):
5756	Fix initialization of _M_grouping for locales which have
5757	_M_thousands_sep == '\0'(L'\0', respectively).
5758	* testsuite/22_locale/numpunct_byname.cc (test02): Add test.
5759
57602002-01-30  Paolo Carlini  <pcarlini@unitus.it>
5761
5762	* testsuite/27_io/ostream_inserter_arith.cc (test03):
5763	Better fix for 32/64 bit architectures, avoiding the
5764	implicit assumption that CHAR_BIT == 8.
5765
57662002-01-28  Phil Edwards  <pme@gcc.gnu.org>
5767
5768	* Makefile.am (doxygen, doxygen-maint, doxygen-man):  Tweak targets.
5769	* Makefile.in:  Regenerate.
5770
5771	* docs/doxygen/run_doxygen:  Update, mostly for man pages.
5772	* docs/doxygen/Intro.3:  Update.
5773	* docs/doxygen/TODO:  Update.
5774	* docs/doxygen/doxygroups.cc:  Add namespace hook for __gnu_cxx.
5775	* docs/doxygen/mainpage.doxy:  Update.
5776	* docs/doxygen/user.cfg.in:  Update for header rename.  Also
5777	regenerate comments and variables with 1.2.12.
5778	* docs/doxygen/maint.cfg.in:  Remove file.
5779
5780	* include/bits/stl_relops.h:  Doxygenate.
5781	* include/bits/stl_tempbuf.h (std::_Temporary_buffer):  Likewise.
5782
5783	* include/c_std/std_cassert.h, include/c_std/std_cctype.h,
5784	include/c_std/std_cerrno.h, include/c_std/std_cfloat.h,
5785	include/c_std/std_ciso646.h, include/c_std/std_climits.h,
5786	include/c_std/std_clocale.h, include/c_std/std_cmath.h,
5787	include/c_std/std_csetjmp.h, include/c_std/std_csignal.h,
5788	include/c_std/std_cstdarg.h, include/c_std/std_cstddef.h,
5789	include/c_std/std_cstdio.h, include/c_std/std_cstdlib.h,
5790	include/c_std/std_cstring.h, include/c_std/std_ctime.h,
5791	include/c_std/std_cwchar.h, include/c_std/std_cwctype.h,
5792	include/ext/algorithm, include/ext/functional, include/ext/hash_map,
5793	include/ext/hash_set, include/ext/iterator, include/ext/memory,
5794	include/ext/numeric, include/ext/rb_tree, include/ext/rope,
5795	include/ext/ropeimpl.h, include/ext/slist, include/ext/stl_hash_fun.h,
5796	include/ext/stl_hashtable.h, include/ext/stl_rope.h,
5797	include/std/std_algorithm.h, include/std/std_bitset.h,
5798	include/std/std_complex.h, include/std/std_deque.h,
5799	include/std/std_fstream.h, include/std/std_functional.h,
5800	include/std/std_iomanip.h, include/std/std_ios.h,
5801	include/std/std_iosfwd.h, include/std/std_iostream.h,
5802	include/std/std_istream.h, include/std/std_iterator.h,
5803	include/std/std_limits.h, include/std/std_list.h,
5804	include/std/std_locale.h, include/std/std_map.h,
5805	include/std/std_memory.h, include/std/std_numeric.h,
5806	include/std/std_ostream.h, include/std/std_queue.h,
5807	include/std/std_set.h, include/std/std_sstream.h,
5808	include/std/std_stack.h, include/std/std_stdexcept.h,
5809	include/std/std_streambuf.h, include/std/std_string.h,
5810	include/std/std_utility.h, include/std/std_valarray.h,
5811	include/std/std_vector.h:  Add/correct @file doxygen hook.
5812
5813	* include/ext/memory:  Doxygenate most of rest of file.
5814	* libsupc++/exception:  Doxygen output formatting.
5815	* libsupc++/new:  Say which header it is.
5816
5817	* testsuite/lib/libstdc++-v3-dg.exp:  Fix spacing.
5818	* docs/html/19_diagnostics/howto.html:  Describe concept-checks switch.
5819	* docs/html/23_containers/howto.html:  Describe O(n) list::size().
5820	* docs/html/27_io/howto.html:  Also link to Langer and Kreft text.
5821
58222002-01-28  Paolo Carlini  <pcarlini@unitus.it>
5823	    Charles Leggett <CGLeggett@lbl.gov>
5824
5825	* testsuite/27_io/filebuf_members.cc (test_05): Add test.
5826
58272002-01-28  Paolo Carlini  <pcarlini@unitus.it>
5828
5829	* testsuite/27_io/ostream_inserter_arith.cc (test03):
5830	Fix to deal correctly with both 32 bit and 64 bit architectures
5831
58322002-01-25  Loren Rittle <ljrittle@acm.org>
5833
5834	* testsuite/thread/pthread1.cc: Use one condition variable
5835	per predicate instead of tricky use of one condition variable.
5836
58372002-01-25  Benjamin Kosnik  <bkoz@redhat.com>
5838
5839	* include/bits/fstream.tcc (filebuf::close()): Fix close for input
5840	streams.
5841	(filebuf::_M_really_overflow): Match indeterminate and sync calls.
5842	* testsuite/27_io/filebuf.cc: Compile only.
5843	* testsuite/27_io/filebuf_members.cc: Move tests to here.
5844	* testsuite/27_io/filebuf_virtuals.cc: And here.
5845	Revert sungetc, sync changes for expected values.
5846	* testsuite/27_io/filebuf-*: Move to...
5847	* testsuite/27_io/filebuf_virtuals-*: ...here.
5848	* testsuite/27_io/istream.cc: Compile only, activate.
5849	* testsuite/27_io/ostream.cc: Same.
5850	* testsuite/27_io/iostream.cc: New.
5851	* testsuite/27_io/iostream_members.cc: New.
5852
58532002-01-25  David Billinghurst <David.Billinghurst@riotinto.com>
5854
5855	* testsuite/thread/pthread1.cc: Enable on cygwin.
5856	* testsuite/thread/pthread2.cc: Likewise.
5857	* testsuite/thread/pthread3.cc: Likewise.
5858	* testsuite/thread/pthread4.cc: Likewise.
5859	* testsuite/thread/pthread5.cc: Likewise.
5860	* testsuite/thread/pthread6.cc: Likewise.
5861
58622002-01-24  Benjamin Kosnik  <bkoz@redhat.com>
5863
5864	* testsuite/27_io/ostream_inserter_char.cc (test07): New.
5865
58662002-01-24  Benjamin Kosnik  <bkoz@redhat.com>
5867
5868	* include/bits/basic_ios.h (basic_ios::_M_check_facet): Make
5869	const, tweak.
5870	(basic_ios::fill(char_type)): Use fill().
5871	* include/bits/basic_ios.tcc (basic_ios::widen): Use _M_check_facet.
5872	(basic_ios::narrow): Same.
5873	(basic_ios::_M_cache_facets): Explicitly set cached facets to zero
5874	if they are invalid.
5875	(basic_ios::init): Comment.
5876	* testsuite/27_io/ios_init.cc (test02): New.
5877
58782002-01-24  Phil Edwards  <pme@gcc.gnu.org>
5879
5880	* include/bits/stl_tempbuf.h (_Temporary_buffer):  Add doxygen hook.
5881	* include/bits/stl_algo.h:  Include stl_tempbuf.h.
5882	* include/ext/memory:  Do not include stl_tempbuf.h.
5883	(temporary_buffer):  Add doxygen hook.
5884	(__get_temporary_buffer, get_temporary_buffer,
5885	return_temporary_buffer):  Move back to std:: header...
5886	* include/std/std_memory.h:  ...here.  Do not include stl_tempbuf.h.
5887	* include/ext/rope:  Do not include stl_tempbuf.h.
5888	* include/ext/stl_hashtable.h:  Likewise.
5889	* include/std/std_algorithm.h:  Likewise.
5890	* testsuite/20_util/temporary_buffer.cc:  New file.
5891
58922002-01-24  andrew@andypo.net
5893	    (tweaks, test and commit by Loren J. Rittle  <ljrittle@acm.org>)
5894
5895	libstdc++/5432
5896	* include/bits/ios_base.h: Use _Atomic_word for reference counts.
5897	* include/bits/localefwd.h: Likewise.
5898	Also use for std::locale::id::_S_highwater.
5899	* src/ios.cc (ios_base::xalloc): Use _Atomic_word.
5900	* src/locale.cc: Support new usage of _Atomic_word.
5901	(std::locale::classic): Guard entire function against reentry.
5902	* src/localename.cc: Support new usage of _Atomic_word.
5903
59042002-01-24   Benjamin Kosnik  <bkoz@redhat.com>
5905
5906	* testsuite/22_locale/num_put_members_wchar_t.cc (test03): Use
5907	_GLIBCPP_HAVE_SETENV.
5908	* testsuite/22_locale/codecvt_members_wchar_t_char.cc (test02): Same.
5909	* testsuite/22_locale/collate_members_char.cc (test02): Same.
5910	* testsuite/22_locale/ctype_members_char.cc (test03): Same.
5911	* testsuite/22_locale/ctype_members_wchar_t.cc (test03): Same.
5912	* testsuite/22_locale/messages_members_char.cc (test02): Same.
5913	* testsuite/22_locale/moneypunct_members_char.cc (test02): Same.
5914	* testsuite/22_locale/moneypunct_members_wchar_t.cc (test02): Same.
5915	* testsuite/22_locale/money_put_members_char.cc (test04): Same.
5916	* testsuite/22_locale/money_put_members_wchar_t.cc (test04): Same.
5917	* testsuite/22_locale/num_get_members_char.cc (test03): Same.
5918	* testsuite/22_locale/num_get_members_wchar_t.cc (test03): Same.
5919	* testsuite/22_locale/numpunct_members_char.cc (test02): Same.
5920	* testsuite/22_locale/numpunct_members_wchar_t.cc (test02): Same.
5921	* testsuite/22_locale/time_get_members_char.cc (test07): Same.
5922	* testsuite/22_locale/time_get_members_wchar_t.cc (test07): Same.
5923	* testsuite/22_locale/time_put_members_char.cc (test03): Same.
5924	* testsuite/22_locale/time_put_members_wchar_t.cc (test03): Same.
5925	* testsuite/22_locale/num_put_members_char.cc (test03): Same.
5926	* acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Check for setenv.
5927	* aclocal.m4: Regenerate.
5928	* configure: Regenerate.
5929	* config.h.in: Regenerate.
5930
59312002-01-23  Loren Rittle <ljrittle@acm.org>
5932
5933	* testsuite/thread/pthread1.cc: New test.
5934	* testsuite/thread/pthread2.cc: New test adapted from libstdc++/5347.
5935	* testsuite/thread/pthread3.cc: Likewise.
5936	* testsuite/thread/pthread4.cc: New test adapted from
5937	http://gcc.gnu.org/ml/gcc-bugs/2002-01/msg00679.html
5938	* testsuite/thread/pthread5.cc: New test adapted from libstdc++/5464.
5939	* testsuite/thread/pthread6.cc: New test adapted from libstdc++/5444.
5940
59412002-01-23  Richard Henderson  <rth@redhat.com>
5942
5943	PR libstdc++/5198
5944	* config/cpu/m68k/bits/atomicity.h (__exchange_and_add): Only use
5945	CAS on the cpu variants that support it.  Add versions that use
5946	TAS and that disable interrupts.
5947	(__atomic_add): Use __exchange_and_add to guarantee atomicity.
5948
59492002-01-23  Matt Kraai  <kraai@alumni.cmu.edu>
5950
5951	* include/bits/locale_facets.tcc: Remove old comments.
5952
59532002-01-23  Andreas Tobler  <toa@pop.agri.ch>
5954
5955	* include/bits/locale_facets.tcc (__convert_to_v): Change template
5956	parameter to _Tv.
5957	(__convert_from_v): Same.
5958
59592002-01-23  Benjamin Kosnik  <bkoz@redhat.com>
5960
5961	* include/bits/locale_facets.h (num_get::_M_extract_int): Change
5962	prototype.
5963	* include/bits/locale_facets.tcc (num_get::_M_extract_int): Remove
5964	__max_digits checks, adjust arguments.
5965	(num_get::do_get(*)): Changeup.
5966
59672002-01-23  Loren Rittle <ljrittle@acm.org>
5968
5969	* config/locale/c_locale_generic.cc: Fix typename usage.
5970
59712002-01-22  Benjamin Kosnik  <bkoz@redhat.com>
5972
5973	* config/locale/c_locale_generic.cc: Fix.
5974
59752002-01-22  Benjamin Kosnik  <bkoz@redhat.com>
5976
5977	* docs/html/22_locale/messages.html: Remove angle brackets.
5978	* docs/html/17_intro/TODO: Add.
5979
59802002-01-22  Paolo Carlini  <pcarlini@unitus.it>
5981
5982	* testsuite/27_io/ios_manip_basefield.cc: Enable test02.
5983	* testsuite/27_io/ostream_inserter_arith.cc: Enable test03.
5984	* testsuite/27_io/ostream_inserter_char.cc: Enable test01.
5985	* testsuite/27_io/ostream_inserter_other.cc: Enable test04.
5986
59872002-01-22  Benjamin Kosnik  <bkoz@redhat.com>
5988
5989	Audit for LANG independence.
5990	* include/bits/localefwd.h: Tweaks.
5991	* include/bits/locale_facets.tcc (money_get::do_get(long double)):
5992	Use __convert_to_v.
5993	(time_get::do_get_year): Same.
5994	(__convert_from_v): Add.
5995	(num_put::_M_convert_float): Use.
5996	(num_put::_M_convert_int): Same.
5997	(money_put::do_put): Same.
5998
5999	* src/locale-inst.cc: Add instantiations for __convert_from_v.
6000	* config/locale/time_members_gnu.cc: Cleanup setlocale usage.
6001	* config/locale/time_members_generic.cc:
6002	* config/locale/messages_members_gnu.cc: Same.
6003	* config/locale/messages_members_gnu.h: Same.
6004
6005	* testsuite/22_locale/codecvt_members_wchar_t_char.cc (test02): New.
6006	* testsuite/22_locale/codecvt_members_char_char.cc (test02): New.
6007	* testsuite/22_locale/collate_members_wchar_t.cc (test02): New.
6008	* testsuite/22_locale/collate_members_char.cc (test02): New.
6009	* testsuite/22_locale/ctype_members_wchar_t.cc (test03): New.
6010	* testsuite/22_locale/ctype_members_char.cc (test03): New.
6011	* testsuite/22_locale/messages_members_char.cc (test02): New.
6012	* testsuite/22_locale/moneypunct_members_wchar_t.cc (test02): New.
6013	* testsuite/22_locale/moneypunct_members_char.cc (test02): New.
6014	* testsuite/22_locale/money_get_members_wchar_t.cc (test04): New.
6015	* testsuite/22_locale/money_get_members_char.cc (test04): New.
6016	* testsuite/22_locale/money_put_members_wchar_t.cc (test04): New.
6017	* testsuite/22_locale/money_put_members_char.cc (test04): New.
6018	* testsuite/22_locale/numpunct_members_wchar_t.cc (test02): New.
6019	* testsuite/22_locale/numpunct_members_char.cc (test02): New.
6020	* testsuite/22_locale/time_put_members_wchar_t.cc (test03): New.
6021	* testsuite/22_locale/time_put_members_char.cc (test03): New.
6022	* testsuite/22_locale/time_get_members_wchar_t.cc (test07): New.
6023	* testsuite/22_locale/time_get_members_char.cc (test07): New.
6024	* testsuite/22_locale/num_get_members_wchar_t.cc (test03): New.
6025	* testsuite/22_locale/num_get_members_char.cc (test03): New.
6026	* testsuite/22_locale/num_put_members_wchar_t.cc (test03): New.
6027	* testsuite/22_locale/num_put_members_char.cc (test03): New.
6028
6029	* testsuite/22_locale/time_get_members_char.cc: Fixups for global
6030	locale issues.
6031	* testsuite/22_locale/time_get_members_char.cc: Same.
6032
60332002-01-22  Benjamin Kosnik  <bkoz@redhat.com>
6034
6035	libstdc++/5280
6036	* include/bits/localefwd.h: Tweak comments.
6037	* include/bits/locale_facets.h (__convert_to_v): Add.
6038	* include/bits/locale_facets.tcc (num_get::do_get(double)): Use it.
6039	(num_get::do_get(float)): Same.
6040	(num_get::do_get(long double)): Same.
6041	(num_get::do_get(bool)): Same.
6042	(num_get::do_get(long)): Same.
6043	(num_get::do_get(long long)): Same.
6044	(num_get::do_get(unsigned int)): Same.
6045	(num_get::do_get(unsigned short)): Same.
6046	(num_get::do_get(unsigned long)): Same.
6047	(num_get::do_get(unsigned long long)): Same.
6048	* config/locale/c_locale_gnu.cc (__convert_to_v): Specialize.
6049	* config/locale/c_locale_generic.cc: Same.
6050
60512002-01-22  Loren Rittle <ljrittle@acm.org>
6052
6053	* include/Makefile.am (c_base_builddir): Remove redundant slash.
6054	(std_builddir): Likewise.
6055	(std_headers_rename): Fix cut-n-paste typo.
6056	(install-data-local): Concat path per element instead of once to
6057	first element of list.
6058	* include/Makefile.in: Rebuilt.
6059
60602002-01-22  Benjamin Kosnik  <bkoz@redhat.com>
6061
6062	* config/os/aix/bits/ctype_noninline.h: Fix formatting.
6063	* config/os/bsd/netbsd/bits/ctype_noninline.h: Fix typo.
6064	* config/os/bsd/freebsd/bits/ctype_noninline.h: Fix formatting.
6065
60662002-01-20  Benjamin Kosnik  <bkoz@redhat.com>
6067
6068	* include/bits/locale_facets.h (ctype<char>::classic_table):
6069	Remove definition.
6070	(ctype<char>::_S_ctable): Remove.
6071	* config/os/gnu-linux/bits/ctype_noninline.h
6072	(ctype<char>::_S_table): Remove definition.
6073	(ctype<char>::classic_table): Define.
6074	(ctype<char>::ctype): Replace _S_ctable with classic_table().
6075	* config/os/aix/bits/ctype_noninline.h: Same.
6076	* config/os/bsd/freebsd/bits/ctype_noninline.h: Same.
6077	* config/os/bsd/netbsd/bits/ctype_noninline.h: Same.
6078	* config/os/djgpp/bits/ctype_noninline.h: Same.
6079	* config/os/generic/bits/ctype_noninline.h: Same.
6080	* config/os/gnu-linux/bits/ctype_noninline.h: Same.
6081	* config/os/hpux/bits/ctype_noninline.h: Same.
6082	* config/os/irix/irix5.2/bits/ctype_noninline.h: Same.
6083	* config/os/irix/irix6.5/bits/ctype_noninline.h: Same.
6084	* config/os/mingw32/bits/ctype_noninline.h: Same.
6085	* config/os/newlib/bits/ctype_noninline.h: Same.
6086	* config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.
6087	* config/os/solaris/solaris2.6/bits/ctype_noninline.h: Same.
6088	* config/os/solaris/solaris2.7/bits/ctype_noninline.h: Same.
6089
60902002-01-20  Danny Smith  <dannysmith@users.sourceforge.net>
6091
6092	* config/os/mingw32/bits/ctype_noninline.h: Declare _ctype instead
6093	of _pctype. Use to define _S_ctable.  Add definition for alternate
6094	ctor.  Initialise _M_ctable to _S_ctable in ctors.
6095	(do_toupper, do_tolower): Use inline code appropriate for C-locale
6096	rather than ::toupper, ::tolower.
6097
60982002-01-18  Loren Rittle <ljrittle@acm.org>
6099
6100	* testsuite/18_support/numeric_limits.cc (test_extrema<long double>):
6101	Add specialization for FreeBSD systems only to avoid losing test
6102	only due to extra precision unmentioned in system headers.
6103
61042002-01-18  David Billinghurst <David.Billinghurst@riotinto.com>
6105
6106	* config/os/irix/irix6.5/bits/ctype_noninline.h: Fix typo
6107
61082002-01-17  Nick Clifton  <nickc@cambridge.redhat.com>
6109
6110	* testsuite/testsuite_hooks.h: Fix comment typo.  Memory
6111	limiting is only attempted if _GLIBCPP_MEM_LIMIT is defined.
6112
61132002-01-17  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
6114
6115	* testsuite/22_locale/ctor_copy_dtor.cc: Remove check.
6116
61172002-01-17  David Edelsohn  <edelsohn@gnu.org>
6118
6119	* configure.target: Define OPT_LDFLAGS for AIX case.
6120
61212002-01-17  Gabriel Dos Reis  <gdr@merlin.codesourcery.com>
6122
6123	* include/std/std_limits.h (__glibcpp_float_has_quiet_NaN,
6124	__glibcpp_double_has_quiet_NaN): Correct mispelling.
6125
61262002-01-17  Andreas Tobler  <toa@pop.agri.ch>
6127
6128	* config/os/solaris/solaris2.6/bits/ctype_noninline.h: Fix.
6129
61302002-01-16  David Edelsohn  <dje@watson.ibm.com>
6131
6132	* acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Do not clear
6133	SECTION_LDFLAGS and OPT_LDFLAGS.  Fix ac_sectionLDflags type.
6134	* aclocal.m4: Regenerate.
6135	* configure: Regenerate.
6136
61372002-01-16  Benjamin Kosnik  <bkoz@redhat.com>
6138
6139	* include/Makefile.am (c_base_headers_rename): New.
6140	(c_base_headers_extra): New.
6141	(stamp-c_base): Modify.
6142	(install-data-local): Use both.
6143	* include/Makefile.in: Regenerate.
6144	* include/c/[cctype ciso646 cmath cstdarg cstdlib cerrno climits
6145	csetjmp cstddef cstring cwchar cassert cfloat clocale csignal
6146	cstdio ctime cwctype]: Move to..
6147	* include/c/std_*: Here.
6148	* include/c_std/[cctype ciso646 cmath cstdarg cstdlib cerrno climits
6149	csetjmp cstddef cstring cwchar cassert cfloat clocale csignal
6150	cstdio ctime cwctype]: Move to..
6151	* include/c_std/std_*: Here.
6152
6153	Alexandre Oliva  <aoliva@redhat.com>
6154	* include/Makefile.am (.PRECIOUS): Add rule.
6155	* include/Makefile.in: Regenerate.
6156
61572002-01-16  Benjamin Kosnik  <bkoz@redhat.com>
6158	    Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
6159
6160	* include/bits/stl_iterator.h (reverse_iterator::_M_current):
6161	Deuglify, should be current.
6162	(back_insert_iterator::_M_container): Deuglify, should be container.
6163	(front_insert_iterator::_M_container): Same.
6164	(insert_iterator::_M_container): Same.
6165	* testsuite/24_iterators/reverse_iterator.cc: Add check.
6166	* testsuite/24_iterators/back_insert_iterator.cc: Add check.
6167	* testsuite/24_iterators/front_insert_iterator.cc: Same.
6168	* testsuite/24_iterators/insert_iterator.cc: Same.
6169
61702002-01-16  Benjamin Kosnik  <bkoz@redhat.com>
6171
6172	* include/bits/locale_facets.h (ctype<char>::classic_table): Make
6173	static.
6174	(ctype<char>::_M_ctable): Make static, change name to _S_ctable.
6175	* config/os/gnu-linux/bits/ctype_noninline.h: Define _S_ctable.
6176	* config/os/solaris/solaris2.7/bits/ctype_noninline.h: Same.
6177	* config/os/solaris/solaris2.6/bits/ctype_noninline.h: Same.
6178	* config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.
6179	* config/os/newlib/bits/ctype_noninline.h: Same.
6180	* config/os/irix/irix6.5/bits/ctype_noninline.h: Same.
6181	* config/os/irix/irix5.2/bits/ctype_noninline.h: Same.
6182	* config/os/hpux/bits/ctype_noninline.h: Same.
6183	* config/os/djgpp/bits/ctype_noninline.h: Same.
6184	* config/os/bsd/netbsd/bits/ctype_noninline.h: Same.
6185	* config/os/bsd/freebsd/bits/ctype_noninline.h: Same.
6186	* config/os/aix/bits/ctype_noninline.h: Same.
6187
6188	Testcase by Dietmar K�hl via Peter Schmid
6189	* testsuite/22_locale/ctype_members_char.cc (char>): Add test for
6190	classic_table().
6191
61922002-01-16  Benjamin Kosnik  <bkoz@redhat.com>
6193
6194	* libmath/signbitl.c: Copyright years as list, not range.
6195	* libmath/Makefile.am: Same.
6196	* libmath/Makefie.in: Regenerate.
6197	* libmath/signbit.c: Same.
6198	* libmath/nan.c: Same.
6199	* libmath/copysignf.c: Same.
6200	* libmath/signbitf.c: Same.
6201	* testsuite/22_locale/money_get_members_char.cc: Same.
6202	* testsuite/22_locale/money_get_members_wchar_t.cc: Same.
6203	* testsuite/22_locale/money_put_members_char.cc: Same.
6204	* testsuite/22_locale/money_put_members_wchar_t.cc: Same.
6205	* testsuite/22_locale/time_get_members_char.cc: Same.
6206	* testsuite/22_locale/time_get_members_wchar_t.cc: Same.
6207	* testsuite/22_locale/time_put_members_char.cc: Same.
6208	* testsuite/22_locale/time_put_members_wchar_t.cc: Same.
6209	* testsuite/21_strings/nonmember.cc: Same.
6210	* testsuite/21_strings/compare.cc: Same.
6211	* testsuite/27_io/stringstream.cc: Same.
6212	* testsuite/27_io/stringbuf.cc: Same.
6213	* testsuite/27_io/filebuf.cc: Same.
6214	* testsuite/27_io/ios_manip_basefield.cc: Same.
6215	* testsuite/27_io/ios_manip_fmtflags.cc: Same.
6216	* include/bits/cpp_type_traits.h: Same.
6217	* include/bits/generic_shadow.h: Same.
6218	* include/bits/gslice_array.h: Same.
6219	* include/bits/gslice.h: Same.
6220	* include/bits/indirect_array.h: Same.
6221	* include/bits/slice_array.h: Same.
6222	* include/bits/sstream.tcc: Same.
6223	* include/bits/streambuf_iterator.h: Same.
6224	* include/bits/valarray_array.tcc: Same.
6225	* include/bits/valarray_meta.h: Same.
6226	* include/bits/valarray_array.h: Same.
6227	* config/os/mingw32/bits/ctype_noninline.h: Same.
6228	* config/os/mingw32/bits/ctype_base.h: Same.
6229	* config/os/hpux/bits/ctype_noninline.h: Same.
6230	* config/os/hpux/bits/ctype_base.h: Same.
6231	* config/os/gnu-linux/bits/ctype_noninline.h: Same.
6232	* config/os/gnu-linux/bits/ctype_base.h: Same.
6233	* config/os/generic/bits/ctype_noninline.h: Same.
6234	* config/os/generic/bits/ctype_base.h: Same.
6235
6236	* libsupc++/tinfo.h: Tweaks.
6237
62382002-01-15  Benjamin Kosnik  <bkoz@redhat.com>
6239
6240	* testsuite/22_locale/num_put_members_wchar_t.cc (test02): Same.
6241	* testsuite/22_locale/num_put_members_char.cc (test01): Tweak.
6242	* testsuite/22_locale/ctype_members_char.cc: Tweak.
6243
62442002-01-15  Benjamin Kosnik  <bkoz@redhat.com>
6245
6246	* include/bits/locale_facets.tcc (num_put::do_put(bool): Fix.
6247	(num_put::do_put(void*)): Fix.
6248	* testsuite/22_locale/num_put_members_char.cc (test02): Add.
6249	* testsuite/22_locale/num_put_members_wchar_t.cc (test02): Add.
6250	* testsuite/22_locale/num_get_members_char.cc (test02): Add
6251	long double, void, bool types.
6252	* testsuite/22_locale/num_get_members_wchar_t.cc (test02): Add.
6253
62542002-01-15  Benjamin Kosnik  <bkoz@redhat.com>
6255	    Alexandre Oliva  <aoliva@redhat.com>
6256
6257	* libmath/Makefile.am (LINK): Add --tag CC.
6258	* libmath/Makefile.in: Regenerate.
6259
62602002-01-15  John David Anglin  <dave@hiauly1.hia.nrc.ca>
6261
6262	* config/os/hpux/bits/ctype_noninline.h: Use __SB_masks for address
6263	of character to attribute mapping table.
6264
62652002-01-15  David Billinghurst <David.Billinghurst@riotinto.com>
6266
6267	* testsuite/26_numerics/c99_classification_macros_c.cc
6268	Remove dg-error and dg-excess-errors comments.
6269
62702002-01-14  Benjamin Kosnik  <bkoz@redhat.com>
6271
6272	* include/bits/locale_facets.tcc (time_put::put): Correct output
6273	iterator positions.
6274	* testsuite/22_locale/time_put_members_char.cc (test02): Add.
6275	* testsuite/22_locale/time_put_members_wchar_t.cc (test02): Add.
6276	* testsuite/22_locale/time_get_members_wchar_t.cc (test06): Add.
6277	* testsuite/22_locale/time_get_members_char.cc (test06): Add.
6278
62792002-01-14  Craig Rodrigues  <rodrigc@gcc.gnu.org>
6280
6281	* docs/html/17_intro/porting-howto.xml: Update filebuf section.
6282
62832002-01-14  Paolo Carlini  <pcarlini@unitus.it>
6284	    Nathan Myers  <ncm@cantrip.org>
6285
6286	* include/bits/basic_string.h
6287	(replace(__pos, __n1, __s, __n2)): Optimize by avoiding
6288	temporaries (i.e., call _M_replace_safe) when possible.
6289	(replace(__pos, __n, __str)): Call replace(__pos, __n1, __s, __n2).
6290	(replace(__pos, __n1, __s)): Call replace(__pos, __n1, __s , __n2).
6291	(replace(__i1, __i2, __str)): Call replace(__i1, __i2, __s, __n).
6292	(replace(__i1, __i2, __s)): Call replace(__i1, __i2, __s, __n).
6293	(replace(__i1, __i2, __s, __n)): Call replace(__pos1, __n1, __s, __n2).
6294	* include/bits/basic_string.tcc
6295	(replace(__pos1, __n1, __str, __pos2, __n2)): Call
6296	replace(__pos, __n1, __s, __n2).
6297	* testsuite/21_strings/replace.cc (test03): New testcases.
6298
6299	* include/bits/basic_string.h (insert(__pos, __s, __n)):
6300	Adjust comparison wrt overflow.
6301
63022002-01-12  Benjamin Kosnik  <bkoz@redhat.com>
6303
6304	* include/Makefile.am (std_headers_rename): New variable.
6305	(install-data-local): Use it.
6306	* include/Makefile.in: Regenerate.
6307
63082002-01-12  Benjamin Kosnik  <bkoz@redhat.com>
6309
6310	* include/bits/locale_facets.tcc (money_put::do_put(string):
6311	Correct output iterator value.
6312	* testsuite/22_locale/money_put_members_char.cc (test03): Add.
6313	* testsuite/22_locale/money_put_members_wchar_t.cc: Same.
6314
63152002-01-11  Phil Edwards  <pme@gcc.gnu.org>
6316
6317	* include/Makefile.am, include/Makefile.in (stamp-std):  Fix typo from
6318	previous commit.
6319
63202002-01-11  Phil Edwards  <pme@gcc.gnu.org>
6321
6322	* include/Makefile.am (std_headers):  Update list with new names.
6323	(stamp-std):  Link to standardized name.
6324	* include/Makefile.in:  Regenerate.
6325
6326	* include/std/algorithm, include/std/bitset, include/std/complex,
6327	include/std/deque, include/std/fstream, include/std/functional,
6328	include/std/iomanip, include/std/ios, include/std/iosfwd,
6329	include/std/iostream, include/std/istream, include/std/iterator,
6330	include/std/limits, include/std/list, include/std/locale,
6331	include/std/map, include/std/memory, include/std/numeric,
6332	include/std/ostream, include/std/queue, include/std/set,
6333	include/std/sstream, include/std/stack, include/std/stdexcept,
6334	include/std/streambuf, include/std/string, include/std/utility,
6335	include/std/valarray, include/std/vector:  Rename to...
6336
6337	* include/std/std_algorithm.h, include/std/std_bitset.h,
6338	include/std/std_complex.h, include/std/std_deque.h,
6339	include/std/std_fstream.h, include/std/std_functional.h,
6340	include/std/std_iomanip.h, include/std/std_ios.h,
6341	include/std/std_iosfwd.h, include/std/std_iostream.h,
6342	include/std/std_istream.h, include/std/std_iterator.h,
6343	include/std/std_limits.h, include/std/std_list.h,
6344	include/std/std_locale.h, include/std/std_map.h,
6345	include/std/std_memory.h, include/std/std_numeric.h,
6346	include/std/std_ostream.h, include/std/std_queue.h,
6347	include/std/std_set.h, include/std/std_sstream.h,
6348	include/std/std_stack.h, include/std/std_stdexcept.h,
6349	include/std/std_streambuf.h, include/std/std_string.h,
6350	include/std/std_utility.h, include/std/std_valarray.h,
6351	include/std/std_vector.h:  ...this.
6352
63532002-01-11  Loren Rittle <ljrittle@acm.org>
6354
6355	* include/Makefile.am (extra_target_headers): New list of all
6356	target files built with ad hoc naming rules.
6357	(stamp-*): Handle LN_S failure in manner portable across make
6358	implementations.
6359	(install-data-local): Install header files from human-maintained
6360	file lists and directory components instead of non-robust find.
6361	* include/Makefile.in: Rebuilt.
6362
63632002-01-11  Benjamin Kosnik  <bkoz@redhat.com>
6364
6365	* include/bits/locale_facets.tcc (money_get::do_get(string)):
6366	Check for zero-length negative sign before adding it to output
6367	string.
6368	(money_get::do_get(long double)): Return beg.
6369	* testsuite/22_locale/money_get_members_char.cc (test02): Add
6370	iterator checks.
6371	* testsuite/22_locale/money_get_members_wchar_t.cc: Same.
6372
63732002-01-10  David Seymour  <seymour_dj@yahoo.com>
6374
6375	libstdc++/5331
6376	* include/bits/locale_facets.h (num_get<>): Return advanced iterator
6377	for _M_extract_float and _M_extract_int
6378	* include/bits/locale_facets.tcc (num_get<>::_M_extract_float)
6379	(num_get<>::_M_extract_int): Likewise, all callers changed
6380	* testsuite/22_locale/num_get_members_char.cc: Testcase
6381
63822002-01-09  Paolo Carlini <pcarlini@unitus.it>
6383
6384	* libsupc++/exception (bad_exception): Add comment.
6385	* libsupc++/new (bad_alloc): Same.
6386	* libsupc++/typeinfo (bad_cast, bad_typeid): Same.
6387
63882002-01-09  Paolo Carlini <pcarlini@unitus.it>
6389
6390	libstdc++/3150: revert 2001-11-30 commit. DR266 only means
6391	that the destructors should be removed from the descriptions
6392	in the standard: writing them explicitly allows the vtable
6393	heuristic to work. For additional information see:
6394	http://gcc.gnu.org/ml/libstdc++/2002-01/msg00090.html
6395	http://gcc.gnu.org/ml/libstdc++/2002-01/msg00110.html
6396	http://gcc.gnu.org/ml/libstdc++/2002-01/msg00155.html
6397	* libsupc++/exception (bad_exception::~bad_exception()):
6398	Reintroduce declaration.
6399	* libsupc++/new (bad_alloc::~bad_alloc()): Same.
6400	* libsupc++/typeinfo (bad_cast::~bad_cast()): Same.
6401	(bad_typeid::~bad_typeid()): Same.
6402	* libsupc++/eh_exception.cc (bad_exception::~bad_exception()):
6403	Reintroduce definition.
6404	* libsupc++/new_handler.cc (bad_alloc::~bad_alloc()): Same.
6405	* libsupc++/tinfo.cc (bad_cast::~bad_cast()): Same.
6406	(bad_typeid::~bad_typeid()): Same.
6407
64082002-01-09  Benjamin Kosnik  <bkoz@redhat.com>
6409
6410	* include/Makefile.am (c_base_srcdir): Remove duplicate '/'.
6411	* include/Makefile.in: Regenerate.
6412
64132002-01-09  Bo Thorsen  <bo@suse.co.uk>
6414
6415	* config/cpu/x86-64/bits/cpu_limits.h (__glibcpp_long_bits): Add
6416	definition.
6417
64182002-01-08  Benjamin Kosnik  <bkoz@redhat.com>
6419
6420	libstdc++/2913
6421	libstdc++/4879
6422	* include/bits/fstream.tcc (filebuf::_M_really_overflow): Test
6423	return value of _M_file->sync().
6424	(filebuf::showmanyc): Check for is_open.
6425	* include/std/fstream (filebuf::sync): Tweak.
6426	* testsuite/27_io/filebuf.cc: Tweak.
6427
64282002-01-08  John Fardo  <jfardo@laurelnetworks.com>
6429	    Brad Garcia  <garsh@attbi.com>
6430
6431	* testsuite/27_io/filebuf_members.cc: Add test.
6432
64332002-01-07  Benjamin Kosnik  <bkoz@redhat.com>
6434	    Craig Rodrigues  <rodrigc@mediaone.net>
6435
6436	libstdc++/5174
6437	* po/Makefile.am (mkinstalldirs): Add.
6438	* po/Makefile.in: Regenerate.
6439
64402002-01-07  David Billinghurst  <David.Billinghurst@riotinto.com>
6441
6442	* testsuite_flags.in: Add -fmessage-length=0 to CXXFLAGS *
6443	testsuite/lib/prune.exp: Delete lines ":In function ..."  from
6444	compiler output.
6445	* testsuite/23_containers/map_operators.cc: Remove
6446	dg-excess-errors comment.
6447	* testsuite/23_containers/set_operators.cc: Likewise.
6448
64492002-01-06  Paolo Carlini  <pcarlini@unitus.it>
6450
6451	* include/bits/stl_function.h:  Remove two lines of comments;
6452	adjust copyright years.
6453
64542002-01-04  Benjamin  Kosnik  <bkoz@redhat.com>
6455
6456	* include/Makefile.am (std_headers): Remove cXXX from list.
6457	(c_base_srcdir): No bits subdirectory.
6458	(c_base_builddir): Same.
6459	(c_base_headers): Adjust names, add ciso646.
6460	(bits_headers): Remove std_xxx.h headers.
6461	* include/Makefile.in: Regenerate.
6462
6463	* include/ext/iterator: Adjust includes.
6464	* include/ext/ropeimpl.h: Same.
6465	* include/ext/stl_hash_fun.h: Same.
6466	* include/ext/algorithm: Same.
6467
6468	* include/backward/bvector.h: Adjust includes.
6469	* include/backward/vector.h: Same.
6470	* include/backward/strstream: Same.
6471	* include/backward/streambuf.h: Same.
6472	* include/backward/stack.h: Same.
6473	* include/backward/set.h: Same.
6474	* include/backward/queue.h: Same.
6475	* include/backward/multiset.h: Same.
6476	* include/backward/multimap.h: Same.
6477	* include/backward/map.h: Same.
6478	* include/backward/list.h: Same.
6479	* include/backward/iterator.h: Same.
6480	* include/backward/iostream.h: Same.
6481	* include/backward/iomanip.h: Same.
6482	* include/backward/fstream.h: Same.
6483	* include/backward/deque.h: Same.
6484	* include/backward/complex.h: Same.
6485
6486	* include/bits/std_algorithm.h: Move to...
6487	* include/std/algorithm: ...here.
6488	* include/bits/std_iosfwd.h, std_locale.h, std_stack.h,
6489	std_bitset.h, std_ios.h, std_map.h, std_stdexcept.h,
6490	std_complex.h, std_iostream.h, std_memory.h, std_streambuf.h,
6491	std_deque.h, std_istream.h, std_numeric.h, std_string.h,
6492	std_fstream.h, std_ostream.h, std_utility.h, std_iterator.h,
6493	std_queue.h, std_valarray.h, std_functional.h, std_limits.h,
6494	std_set.h, std_vector.h, std_iomanip.h, std_list.h, std_sstream.h:
6495	Same.
6496
6497	* include/c_std/bits/std_cassert.h: Move to...
6498	* include/c_std/cassert: Here.
6499	* include/c_std/std_cctype.h, std_cerrno.h, std_cfloat.h,
6500	std_climits.h, std_clocale.h, std_cmath.h, std_csetjmp.h,
6501	std_csignal.h, std_cstdarg.h, std_cstddef.h, std_cstdio.h,
6502	std_cstdlib.h, std_cstring.h, std_ctime.h, std_cwchar.h,
6503	std_cwctype.h: Same.
6504	* include/c_std/cmath: Adjust cmath.tcc include.
6505	* include/c_std/cstdlib: Adjust includes.
6506	* include/c_std/cwchar: Same.
6507	* include/c_std/ctime: Same.
6508	* include/c_std/cstring: Same.
6509	* include/c_std/cstdio: Same.
6510	* include/c_std/bits: Remove directory.
6511
6512	* include/c/bits/std_cassert.h: Move to...
6513	* include/c/cassert: Here.
6514	* include/c/std_cctype.h, std_cerrno.h, std_cfloat.h,
6515	std_climits.h, std_clocale.h, std_cmath.h, std_csetjmp.h,
6516	std_csignal.h, std_cstdarg.h, std_cstddef.h, std_cstdio.h,
6517	std_cstdlib.h, std_cstring.h, std_ctime.h, std_cwchar.h,
6518	std_cwctype.h: Same.
6519	* include/c/bits: Remove directory.
6520
6521	* include/std/cwctype: Remove.
6522	* include/std/cwchar: Remove.
6523	* include/std/ctime: Remove.
6524	* include/std/cstring: Remove.
6525	* include/std/cstdlib: Remove.
6526	* include/std/cstdio: Remove.
6527	* include/std/cstddef: Remove.
6528	* include/std/cstdarg: Remove.
6529	* include/std/csignal: Remove.
6530	* include/std/csetjmp: Remove.
6531	* include/std/cmath: Remove.
6532	* include/std/clocale: Remove.
6533	* include/std/climits: Remove.
6534	* include/std/ciso646: Remove.
6535	* include/std/cfloat: Remove.
6536	* include/std/cerrno: Remove.
6537	* include/std/cctype: Remove.
6538	* include/std/cassert: Remove.
6539
6540	* include/bits/fpos.h: Adjust includes, removing <bits/std_xxx.h>
6541	files and subsituting <xxx>.
6542	* include/bits/valarray_array.h: Same.
6543	* include/bits/stl_uninitialized.h: Same.
6544	* include/bits/stl_alloc.h: Same.
6545	* include/bits/stl_algobase.h: Same.
6546	* include/bits/sstream.tcc: Same.
6547	* include/bits/pthread_allocimpl.h: Same.
6548	* include/bits/ostream.tcc: Same.
6549	* include/bits/localefwd.h: Same.
6550	* include/bits/locale_facets.tcc: Same.
6551	* include/bits/locale_facets.h: Same.
6552	* include/bits/istream.tcc: Same.
6553	* include/bits/char_traits.h: Same.
6554	* include/bits/boost_concept_check.h: Same.
6555	* include/bits/basic_file.h: Same.
6556	* include/std/bitset: Same.
6557	* include/std/complex: Same.
6558	* include/std/fstream: Same.
6559	* include/std/functional: Same.
6560	* include/std/ios: Same.
6561	* include/std/iostream: Same.
6562	* include/std/ostream: Same.
6563	* include/std/sstream: Same.
6564	* include/std/streambuf: Same.
6565	* include/std/string: Same.
6566	* include/std/iterator: Same.
6567	* include/std/valarray: Same.
6568
6569	* src/ios.cc: Adjust includes.
6570	* src/valarray-inst.cc: Same.
6571	* src/string-inst.cc: Same.
6572	* src/stl-inst.cc: Same.
6573	* src/stdexcept.cc: Same.
6574	* src/misc-inst.cc: Same.
6575	* src/localename.cc: Same.
6576	* src/locale-inst.cc: Same.
6577	* src/locale.cc: Same.
6578	* src/limits.cc: Same.
6579	* src/concept-inst.cc: Same.
6580	* src/complex_io.cc: Same.
6581	* src/codecvt.cc: Same.
6582	* src/bitset.cc: Same.
6583	* src/cmath.cc: Same.
6584
65852002-01-04  Paolo Carlini  <pcarlini@unitus.it>
6586
6587	* include/bits/stl_tree.h (rb_tree):  Move to...
6588	* include/ext/rb_tree:  ...here, new file.
6589	* include/Makefile.am (ext_headers):  Add new file.
6590	* include/Makefile.in:  Regenerate.
6591	* include/bits/stl_tempbuf.h (get_temporary_buffer + helper,
6592	return_temporary_buffer, struct temporary_buffer):  Move to...
6593	* include/ext/memory:  ...here.
6594	* testsuite/ext/headers.cc:  Include <ext/rb_tree>.
6595	* include/backward/tempbuf.h:  Include <ext/memory>, tweak.
6596	* include/backward/tree.h:  Include <ext/rb_tree), tweak.
6597
65982002-01-03  Paolo Carlini  <pcarlini@unitus.it>
6599
6600	* include/bits/stl_numeric.h (power + helpers, iota):  Move to...
6601	* include/ext/numeric:  ...here, new file.
6602	* include/bits/stl_function.h (identity_element, unary_compose,
6603	binary_compose, compose1, compose2, identity, select1st,
6604	select2nd, project1st + helper, project2nd + helper,
6605	constant_void_fun + helper, constant_unary_fun + helper,
6606	costant_binary_fun + helper, constant0, constant1, constant2,
6607	subtractive_rng, mem_fun1, mem_fun1_ref):  Move to...
6608	* include/ext/functional:  ...here, new file.
6609	* include/Makefile.am (ext_headers):  Add new files.
6610	* include/Makefile.in:  Regenerate.
6611	* testsuite/ext/headers.cc:  Include <ext/numeric> and
6612	<ext/functional>.
6613	* include/backward/algo.h:  Include <ext/numeric>, tweak.
6614	* include/backward/function.h:  Include <ext/functional>, tweak.
6615	* include/ext/ropeimpl.h:  Include <ext/numeric>.
6616
66172002-01-03  Jeffrey A Law  <law@redhat.com>
6618
6619	* config/os/hpux/bits/os_defines.h: Prefix __strtoll and
6620	__strtoull declarations with __extension__.
6621
66222002-01-03  David Billinghurst <David.Billinghurst@riotinto.com>
6623
6624	* testsuite/lib/prune.exp: Correct regular expression for
6625	-ffunction-sections
6626
66272002-01-02  Phil Edwards  <pme@gcc.gnu.org>
6628
6629	* include/bits/stl_algo.h (upper_bound, equal_range, binary_search):
6630	Change concept checks, as with lower_bound and PR 2054.
6631	* testsuite/ext/concept_checks.cc:  Expand test to include those.
6632
66332002-01-02  Phil Edwards  <pme@gcc.gnu.org>
6634
6635	* include/bits/boost_concept_check.h:  Import some changes from
6636	upsteam (Boost) version.
6637
66382002-01-02  Paolo Carlini  <pcarlini@unitus.it>
6639
6640	* include/bits/stl_algobase.h (copy_n + helpers,
6641	lexicographical_compare_3way + helpers):  Move to...
6642	* include/ext/algorithm:  ...here.
6643	* include/bits/stl_uninitialized.h (uninitialized_copy_n +
6644	helpers):  Move to...
6645	* include/ext/memory:  ...here, new file.
6646	* include/Makefile.am (ext_headers):  Add new file.
6647	* include/Makefile.in:  Regenerate.
6648	* testsuite/ext/headers.cc:  Include <ext/memory>.
6649	* include/backward/algobase.h:  Include <ext/memory> and
6650	<ext/algorithm>, tweak.
6651	* include/ext/ropeimpl.h:  Include <ext/memory>, tweak.
6652	* include/ext/stl_rope.h:  Include <ext/memory>, tweak.
6653
66542002-01-01  Roger Sayle <roger@eyesopen.com>
6655
6656	* libmath/stubs.c (sinf,cosf): Implement stubs to enable the
6657	equivalent ___builtin__ versions.
6658
6659	* include/c_shadow/bits/std_cmath.h: All __builtin math functions
6660	are available in libstdc++ as the necessary stub implementations
6661	are provided by libmath/stubs.c.
6662
66632002-01-01  Jason Thorpe  <thorpej@wasabisystems.com>
6664
6665	* configure.in: Add support for NetBSD cross compiles.
6666	* configure: Regenerate.
6667