ChangeLog revision 119258
12003-08-04  Release Manager
2
3	* GCC 3.3.1 Released.
4
52003-08-04  Release Manager
6
7	* GCC 3.3.1 Released.
8
92003-07-24  Nathan Myers  <ncm-nospam@cantrip.org>
10
11        * testsuite/23_containers/map_operators.cc: Conform to 
12        container requirement as value must be Assignable.
13
142003-07-18  Andreas Jaeger  <aj@suse.de>
15
16	* config/abi/sparc-linux-gnu/baseline_symbols.txt: New file.
17	* config/abi/mips-linux-gnu/baseline_symbols.txt: New file.
18	* config/abi/hppa-linux-gnu/baseline_symbols.txt: New file.
19	* config/abi/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
20
212003-07-17  Greg Schafer  <gschafer@zip.com.au>
22
23	* configure.in: Use 'true' and 'false' for
24	GLIBCPP_IS_CROSS_COMPILING, otherwise memory limits are
25	not checked when not cross compiling.
26	* configure: Regenerate.
27
282003-07-17  Paolo Carlini  <pcarlini@unitus.it>
29
30	PR libstdc++/11528
31	* include/bits/locale_facets.tcc (money_get::do_get):
32	Strip only _leading_ zeros.
33
342003-07-15  Loren J. Rittle  <ljrittle@acm.org>
35
36        * testsuite/thread/pthread4.cc: Further tweak to avoid fini race.
37
382003-07-15  Petur Runolfsson  <peturr02@ru.is>
39
40	* Revert previous commit: not safe on platforms with
41	wint_t != size_t.
42
432003-07-15  Petur Runolfsson  <peturr02@ru.is>
44
45	* include/bits/char_traits.h (char_traits<wchar_t>::move):
46	Change last parameter from int_type to size_t.
47
482003-07-08  Benjamin Kosnik  <bkoz@redhat.com>
49            Jerry Quinn  <jlquinn@optonline.net>
50
51	* include/bits/ios_base.h (ios_base::_M_getloc): Return reference
52	to the imbued locale.
53	* include/bits/locale_classes.h
54	(__locale_cache_base,__locale_cache): Declare.
55	(locale,locale::_Impl): Befriend __use_cache.
56	(locale::_Impl::_M_get_cache): New function.
57	(locale::_Impl::_M_install_cache): New function.
58	* include/bits/locale_facets.h (__locale_cache): Declare.
59	(numpunct): Befriend __locale_cache.
60	(__locale_cache_base): New class.
61	(__locale_cache): New class.
62	* include/bits/locale_facets.tcc (__use_cache): New function.
63	(num_put::_M_convert_int,_M_convert_float,do_put): Use it.
64	Use cache data members in place of calls to facet.
65	(num_put::_M_convert_int): Use _M_getloc.
66	(num_put::_M_convert_float): Use _M_getloc.
67	(__locale_cache::__locale_cache(locale&): New.
68	(__locale_cache::__locale_cache(locale&,bool)): New.
69	* src/globals.cc (facet_cache_vec): New.
70	(locale_cache_np_c, locale_cache_np_w): New.
71	* src/locale-inst.cc
72	(__locale_cache<numpunct<char> >): Define.
73	(__locale_cache<numpunct<wchar_t> >): Define.
74	(__use_cache<numpunct<char> >): Define.
75	(__use_cache<numpunct<wchar_t> >): Define.
76	* src/localename.cc (facet_cache_vec): Declare.
77	(locale_cache_np_c, locale_cache_np_w): Declare.
78	(locale::_Impl::~Impl): Destroy caches.
79	(locale::_Impl::Impl):  Initialize cache storage.  Fill in
80	static caches.
81	(locale::_Impl::_M_install_facet):  Expand cache storage.
82
832003-07-04  Jerry Quinn  <jlquinn@optonline.net>
84
85	* include/bits/locale_facets.tcc (__int_to_char): Move common
86        case to the top.
87
882003-07-04  Jerry Quinn  <jlquinn@optonline.net>
89
90	* testsuite/27_io/ostream_inserter_arith.cc (test05, test06):
91        Add missing bool test.
92
932003-07-04  H.J. Lu <hongjiu.lu@intel.com>
94
95	* Makefile.am: Replace PWD with PWD_COMMAND.
96	* Makefile.in: Regenerated.
97	* docs/html/Makefile: Likewise.
98
992003-07-01  Roger Sayle  <roger@eyesopen.com>
100
101	* acinclude.m4 (GLIBCPP_CHECK_STDLIB_SUPPORT): Fix typo in CXXFLAGS.
102	(GLIBCPP_CHECK_MATH_SUPPORT): Likewise.
103	* aclocal.m4: Regenerate.
104	* configure: Regenerate.
105
1062003-06-27  Matthias Klose  <doko@debian.org>
107
108	* testsuite/Makefile.am (check-abi, check-abi-verbose): Save
109	output of abi-check in libstdc++-v3-abi.sum.
110	* testsuite/Makefile.in: Regenerate.
111
1122003-06-25  Phil Edwards  <pme@gcc.gnu.org>
113
114	Bulk documentation merge (copy) from trunk.
115	* docs/doxygen/filter, docs/doxygen/filter.sed,
116	docs/doxygen/mainpage.html, docs/doxygen/run_doxygen,
117	docs/doxygen/user.cfg.in, docs/html/configopts.html,
118	docs/html/documentation.html, docs/html/explanations.html,
119	docs/html/install.html, docs/html/test.html, docs/html/17_intro/BUGS,
120	docs/html/17_intro/CHECKLIST, docs/html/17_intro/contribute.html,
121	docs/html/20_util/howto.html, docs/html/ext/howto.html,
122	docs/html/ext/sgiexts.html, docs/html/faq/index.html,
123	docs/html/faq/index.txt:  Merge from trunk.
124
1252003-06-23  Loren J. Rittle  <ljrittle@acm.org>
126
127	* configure.target (freebsd*): Set abi_baseline_pair.
128	* config/abi/i386-freebsd4/baseline_symbols.txt: Update from 3.2
129	(at or near first release) to 3.3.
130	* config/abi/i386-freebsd5/baseline_symbols.txt: New file.
131	* config/abi/alpha-freebsd5/baseline_symbols.txt: New file.
132	* config/abi/sparc-freebsd5/baseline_symbols.txt: New file.
133
1342003-06-21  Eric Botcazou  <ebotcazou@libertysurf.fr>
135
136	PR bootstrap/11272
137	Backport from mainline:
138
139	2003-03-09  Paolo Carlini  <pcarlini@unitus.it>
140
141	* config/io/basic_file_stdio.cc: include <unistd.h>.
142
1432003-06-20  Matthias Klose  <doko@debian.org>
144
145	* configure.target: Set try_cpu to target_cpu for existing
146 	baseline files.
147
1482003-06-19  Andreas Jaeger  <aj@suse.de>
149
150	* configure.in: Pass MULTISUBDIR to testsuite/Makefile.
151	* configure: Regenerated.
152
1532003-06-19  Andreas Jaeger  <aj@suse.de>
154
155	Backport from mainline:
156	2003-06-18  Andreas Jaeger  <aj@suse.de>
157
158	* testsuite/Makefile.am (new-abi-baseline): Create baseline
159	directory.
160	(baseline_file): Use baseline_dir.
161	(baseline_dir): New.
162	(mkinstalldirs): New.
163
164	* acinclude.m4: Rename baseline_file to baseline_dir, strip
165	filename from baseline_dir.
166
167	* testsuite/Makefile.in: Regenerated.
168	* Makefile.in: Regenerated.
169	* aclocal.m4: Regenerated.
170	* configure: Regenerated.
171
172	2003-06-17  Benjamin Kosnik  <bkoz@redhat.com>
173
174	* config/abi/i486-linux-gnu/baseline_symbols.txt: Update to 3.3.0.
175
176	2003-06-16  Benjamin Kosnik  <bkoz@redhat.com>
177
178	* Makefile.am (check-abi): Move...
179	(new-abi-baseline): Move...
180	* testsuite/Makefile.am: ...here.
181	(new-abi-baseline): Conditionalize.
182	(check-abi): Conditionalize.
183	(check-abi-verbose): New.
184	* Makefile.in: Regenerate.
185	* testsuite/Makefile.in: Regenerate.
186	* configure.in: Consolidate testsuite configure bits.
187	* acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Same.
188	* configure: Regenerate.
189	* aclocal.m4: Regenerate.
190	* testsuite/abi_check.cc: Add --check-verbose.
191	Only output detailed information if --check-verbose.
192
193
194	2003-06-16  Andreas Jaeger  <aj@suse.de>
195
196        * testsuite/abi_check.cc: Create summary report.
197
198	2003-06-16  Andreas Jaeger  <aj@suse.de>
199
200	* acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Make
201	check-abi multilib aware.
202	* aclocal.m4: Regenerate.
203	* configure: Regenerate.
204
205	2003-06-16  Benjamin Kosnik  <bkoz@redhat.com>
206            Andreas Jaeger  <aj@suse.de>
207
208	* configure.target: Set x86_64 abi_baseline pair correctly.
209
210
211	2003-06-13  Benjamin Kosnik  <bkoz@redhat.com>
212
213	* config/abi/i686-pc-linux-gnu: To..
214	* config/abi/i486-linux-gnu: ...this.
215	* config/abi/alphaev67-unknown-linux-gnu: To..
216	* config/abi/alpha-linux-gnu: ...this.
217	* config/abi/ia64-unknown-linux-gnu: To...
218	* config/abi/ia64-linux-gnu: ...this.
219	* config/abi/x86_64-unknown-linux-gnu: To...
220	* config/abi/x86_64-linux-gnu: ...this.
221	* config/abi/i386-unknown-freebsd4: To...
222	* config/abi/i386-freebsd4: ...this.
223	* configure.target: abi_baseline_triplet to abi_baseline_pair.
224	Simplify cpu bits so that abi_baseline_pair can use the same
225	cpu configuration.
226	* acinclude.m4: Same.
227	* aclocal.m4: Regenerate.
228	* configure.in: Can't get enable_abi_check to yes unless native.
229	* configure: Regenerate.
230
2312003-06-11  Benjamin Kosnik  <bkoz@redhat.com>
232
233	* configure.in (libtool_VERSION): To 5:5:0.
234	* configure: Regenerated.
235
2362003-06-07  Paolo Carlini  <pcarlini@unitus.it>
237
238	PR libstdc++/11095
239	* include/bits/istream.tcc (operator>>(basic_istream&, _CharT*)):
240	Deal with width() smaller than zero.
241	* include/bits/ostream.tcc (operator<<(basic_ostream&, _CharT),
242	operator<<(basic_ostream&, char), operator<<(basic_ostream&,
243	const _CharT*), operator<<(basic_ostream<_CharT, _Traits>&,
244	const char*), operator<<(basic_ostream<char, _Traits>&,
245	const char*), operator<<(basic_ostream, const basic_string&)): Likewise.
246
2472003-06-06  Nathan Myers  <ncm-nospam@cantrip.org>
248
249	* include/bits/stl_iterator.h (reverse_iterator::reverse_iterator()):
250	Apply DR235: default constructor default-initializes data member.
251	Instantiated on a pointer type, the member has to end up equal
252	to zero.
253
2542003-06-02  Andrew Pinski  <pinskia@physics.uc.edu>
255
256	PR libstdc++/9815
257	* config/cpu/i386/atomicity.h (__exchange_and_add): add intel
258	asm case to asm.
259	* config/cpu/i486/atomicity.h (__exchange_and_add): Likewise.
260	(__atomic_add): likewise.
261
2622003-06-02  Richard Kreckel  <Richard.Kreckel@GiNaC.DE>
263
264	PR libstdc++/11062
265	* config/cpu/mips/atomicity.h:  Change __attribute__ ((unused)) to
266	__attribute__ ((__unused__)).
267	* config/os/aix/atomicity.h:  Likewise.
268
2692003-05-27  Steve Ellcey  <sje@cup.hp.com>
270
271	* config/os/hpux/os_defines.h: Define _LIBUNWIND_STD_ABI if we are
272	on IA64 HP-UX.
273	* libsupc++/eh_throw.cc: Don't call _Unwind_Resume_or_Rethrow if
274	_LIBUNWIND_STD_ABI is set.
275
2762003-05-21  Danny Smith  <dannysmith@users.sourceforge.net>
277
278	* libmath/stubs.c (hypot, hypotf, hypotl): Don't divide by
279	zero.
280	Update copyright year.
281
2822003-05-21  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
283
284	* include/bits/stl_alloc.h (__default_alloc_template::_S_chunk_alloc):
285	Cast via void* to avoid -Wcast-align warnings.
286	(__default_alloc_template::_S_refill): Likewise.
287
2882003-05-20  Gabriel Dos Reis <gdr@integrable-solutions.net>
289
290	PR libstdc++/10689
291	* include/std/std_complex.h (pow): Tidy.
292
2932003-05-17  Nathan Myers  <ncm@cantrip.org>
294
295	* include/bits/streambuf.tcc (__copy_streambufs): Rewrote.
296
2972003-05-15  Phil Edwards  <pme@gcc.gnu.org>
298
299	* testsuite/Makefile.am:  Properly quote LD_RUN_PATH.
300	* testsuite/Makefile.in:  Regenerate.
301
3022003-05-14  Loren J. Rittle  <ljrittle@acm.org>
303
304	* testsuite/thread/pthread4.cc: Tweak test.
305
3062003-05-13  Release Manager
307
308	* GCC 3.3 Released.
309
3102003-05-06  Phil Edwards  <pme@gcc.gnu.org>
311
312	* docs/html/faq/index.html (3.10):  Add note about mips atomicity.h.
313	* docs/html/faq/index.txt:  Regenerated.
314
3152003-05-02 Joel Sherrill  <joel.sherrill@OARcorp.com>
316	   Loren J. Rittle <ljrittle@acm.org>
317	   Martin v. Loewis  <martin@v.loewis.de>
318
319	libstdc++/10556
320	* config/cpu/i386/atomicity.h: New file.
321
3222003-05-02  Richard Henderson  <rth@redhat.com>
323
324	PR c++/10570
325	* libsupc++/eh_catch.cc (__cxa_begin_catch): Handle foreign exceptions.
326	(__cxa_end_catch): Likewise.
327	* libsupc++/eh_throw.cc (__cxa_rethrow): Likewise.  Use
328	_Unwind_Resume_or_Rethrow.
329	* libsupc++/eh_personality.cc (empty_exception_spec): New.
330	(PERSONALITY_FUNCTION): Don't ignore terminate or catch-all
331	for _UA_FORCE_UNWIND.  Honor empty filter spec for foreign
332	exceptions.  Don't push terminate/unexpected to cxa functions.
333	(__cxa_call_unexpected): Remove foreign exception fixmes.
334
3352003-05-01  Benjamin Kosnik  <bkoz@redhat.com>
336
337	Revert __locale_cache.
338	* include/bits/locale_facets.tcc (num_put::_M_convert_int): Remove
339	__locale_cache.
340	(num_put::_M_convert_int): Same.
341	(num_put::do_put(bool)): Same.
342	(__locale_cache::_M_init): Same.
343	(__locale_cache::_S_callback): Same.
344	* include/bits/locale_facets.h (__locale_cache_base): Remove.
345	(__locale_cache): Remove.
346	* include/bits/basic_ios.h (basic_ios::init): Remove __locale_cache.
347	(basic_ios::_M_cache_locale): Same.
348	* include/bits/basic_ios.tcc: Same.
349	* include/bits/ios_base.h: Same.
350	(ios_base::_M_cache): Remove.
351	* src/locale-inst.cc: Same.
352	* src/ios.cc: Same.
353	* src/globals.cc: Same.
354
355	* config/linker-map.gnu: Same.
356
3572003-05-01  Benjamin Kosnik  <bkoz@redhat.com>
358
359	* configure.in (libtool_VERSION): To 5:4:0.
360	* configure: Regenerated.
361
362	* testsuite/abi_check.cc (check_version): Update known versions.
363	Check added symbols for version_name != base version. Add missing
364	symbols to incompatible list.
365
366	* config/linker-map.gnu: Fixup for __basic_file::showmanyc_helper.
367
3682003-05-01  Benjamin Kosnik  <bkoz@redhat.com>
369
370	* acinclude.m4 (GLIBCPP_EXPORT_FLAGS): Remove -Winline.
371	* aclocal.m4: Regenerated.
372	* configure: Regenerated.
373
3742003-05-01  Paolo Carlini  <pcarlini@unitus.it>
375            Nathan Myers  <ncm@cantrip.org>
376
377	Backport from mainline fix of 2003-03-28.
378	PR libstdc++/9533
379	* include/bits/fstream.tcc (basic_filebuf<>::open): Don't
380	call underflow().
381	(basic_filebuf<>::showmanyc): Use the information provided
382	by codecvt and __basic_file<>::showmanyc_helper to implement
383	a non-trivial showmanyc.
384	* config/io/basic_file_stdio.h
385	(__basic_file<>::showmanyc_helper): New, declare.
386	* config/io/basic_file_stdio.cc
387	(__basic_file<>::showmanyc_helper): Define.
388	(__basic_file<>::_M_open_mode): Don't set O_NONBLOCK.
389	(__basic_file<char>::open): Don't call fcntl().
390	* acinclude.m4 (GLIBCPP_CHECK_S_ISREG_OR_S_IFREG,
391	GLIBCPP_CHECK_POLL): New macros.
392	* configure.in: Call here.
393	* acconfig.h: Add #undefs for the corresponding symbols.
394	* aclocal.m4: Regenerate.
395	* configure: Regenerate.
396	* config.h.in: Regenerate.
397
3982003-04-29  Phil Edwards  <pme@gcc.gnu.org>
399
400	Bulk documentation merge (copy) from trunk.
401	* docs/doxygen/Intro.3, docs/doxygen/TODO, docs/doxygen/mainpage.html,
402	docs/doxygen/run_doxygen, docs/doxygen/user.cfg.in,
403	docs/html/configopts.html, docs/html/debug.html,
404	docs/html/documentation.html, docs/html/explanations.html,
405	docs/html/install.html, docs/html/17_intro/howto.html,
406	docs/html/17_intro/porting.html, docs/html/18_support/howto.html,
407	docs/html/19_diagnostics/howto.html, docs/html/27_io/howto.html,
408	docs/html/ext/howto.html, docs/html/ext/sgiexts.html,
409	docs/html/faq/index.html, docs/html/faq/index.txt:
410	Merge from trunk.
411
4122003-04-28  Nathan Myers  <ncm@cantrip.org>
413
414	Move some basic_string members out of line because
415	they are too big to reasonably be inline.
416	* include/bits/basic_string.h
417	(assign(const basic_string&, size_type, size_type),
418	assign(const _CharT*, size_type),
419	insert(size_type, const basic_string&, size_type, size_type),
420	insert(size_type, const _CharT*, size_type),
421	replace(size_type, size_type, const _CharT*, size_type)):
422	Move from here to...
423	* include/bits/basic_string.tcc: ...here.
424
4252003-04-28  Benjamin Kosnik  <bkoz@redhat.com>
426
427	PR libstdc++/10132
428	* include/std/std_fstream.h (basic_filebuf::is_open): Add throw()
429	exception specifications.
430	(basic_filebuf::close): Same.
431	(basic_filebuf::_M_destroy_internal_buffer): Same.
432	(basic_filebuf): Remove __res_type typedef.
433	* include/std/std_streambuf.h:
434	(basic_streambuf::_M_pback_destroy): Same.
435	* src/fstream.cc: Same.
436	* include/bits/fstream.tcc
437	(basic_filebuf::_M_convert_to_external): Simplify.
438	(basic_filebuf::seekoff): Use has_facet	before use_facet.
439	(basic_filebuf::close): Add exception specification of throw().
440
4412003-04-25  Ranjit Mathew  <rmathew@hotmail.com>
442            Phil Edwards  <pme@gcc.gnu.org>
443
444	* testsuite_flags.in: Guard against the possibility
445	of having "xgcc" as a part of a folder name in the
446	path to the GCC build folder.
447	* testsuite/Makefile.am: Likewise.
448	* testsuite/Makefile.in: Regenerated.
449
4502003-04-24  Richard Sandiford  <rsandifo@redhat.com>
451
452	* src/localename.cc (__gnu_cxx::facet_vec): Correct types.
453
4542003-04-24  Benjamin Kosnik  <bkoz@redhat.com>
455
456	* config/locale/generic/c_locale.h: Fix placement for old parser.
457
4582003-04-23  Benjamin Kosnik  <bkoz@redhat.com>
459
460        * config/locale/generic/c_locale.h (__convert_from_v): Use
461        attribute unused.
462
4632003-04-23  Phil Edwards  <pme@gcc.gnu.org>
464
465	* include/bits/istream.tcc (putback, unget, sync, tellg, seekg):
466	Comment and change to comply with DR 60 and the effect on gcount().
467	* include/std/std_istream.h:  Update comments.
468
4692003-04-22  Loren J. Rittle  <ljrittle@acm.org>
470
471	* testsuite/27_io/filebuf_members.cc (test_07):  Adjust timing.
472
4732003-04-22  Jerry Quinn  <jlquinn@optonline.net>
474	    Benjamin Kosnik <bkoz at redhat dot com>
475
476	* include/bits/basic_ios.h (ios_base::Init::_S_ios_create):
477        Declare friend.
478	(basic_ios::init, basic_ios::_M_cache_locale): Add locale
479        cache argument.
480	* include/bits/basic_ios.tcc (basic_ios::init): Pass cache to
481        _M_cache_locale.
482	(basic_ios::_M_cache_locale): Use placement new if cache is
483        provided.  Track the distinction in iword(0).
484	* include/bits/locale_facets.tcc
485        (__locale_cache::_S_callback): Only delete cache if iword(0)
486        is 0, i.e. not static.
487	* src/globals.cc: Allocate space for __locale_cache objects.
488	* src/ios.cc (__gnu_cxx): Declare extern __locale_cache objects
489	for standard wide and narrow stream objects.
490	(ios_base::Init::_S_ios_create): Use them.
491
4922003-04-18  Loren J. Rittle  <ljrittle@acm.org>
493
494	* config/os/bsd/freebsd/ctype_inline.h:  Support _M_table
495	when so installed.
496
497	* docs/html/17_intro/porting.texi (_GLIBCPP_USE_C99_CHECK): New macro.
498	(_GLIBCPP_USE_C99_DYNAMIC): New macro.
499	(_GLIBCPP_USE_C99_LONG_LONG_CHECK): New macro.
500	(_GLIBCPP_USE_C99_LONG_LONG_DYNAMIC): New macro.
501	* config/os/bsd/freebsd/os_defines.h (_GLIBCPP_USE_C99_CHECK):
502	New macro.
503	(_GLIBCPP_USE_C99_DYNAMIC): New macro.
504	(_GLIBCPP_USE_C99_LONG_LONG_CHECK): New macro.
505	(_GLIBCPP_USE_C99_LONG_LONG_DYNAMIC): New macro.
506	* include/c_std/std_cstdlib.h: Use new macros.
507	* include/c_std/std_cstdio.h: Use new macros.
508	* include/c_std/std_cwchar.h: Use new macros.
509
5102003-04-17  Benjamin Kosnik  <bkoz@redhat.com>
511
512	PR libstdc++/9555
513	* include/bits/ostream.tcc: Catch all exceptions for formatted
514	output, instead of std::exception and derivatives.
515	* include/bits/istream.tcc: Same.
516
5172003-04-17  Andreas Tobler  <toa@pop.agri.ch>
518            Benjamin Kosnik  <bkoz@redhat.com>
519
520        * config/os/generic/ctype_inline.h: Fix.
521
5222003-04-17  Andreas Tobler  <toa@pop.agri.ch>
523
524	* configure.target (_cpu_incdir_fullpath): Solaris 2.9 uses
525	solaris includes, not generic.
526
5272003-04-15  Benjamin Kosnik  <bkoz@redhat.com>
528            Paolo Carlini  <pcarlini@unitus.it>
529
530	PR libstdc++/9423
531	* docs/html/27_io/howto.html
532	('The buffering is screwing up my program!'): Explain that
533	opening counts as an I/O operation.
534
5352003-04-15  Andreas Tobler  <a.tobler@schweiz.ch>
536
537        * testsuite/thread/pthread1.cc: Enable for darwin test.
538        * testsuite/thread/pthread2.cc: Same.
539        * testsuite/thread/pthread3.cc: Same.
540        * testsuite/thread/pthread4.cc: Same.
541        * testsuite/thread/pthread5.cc: Same.
542        * testsuite/thread/pthread6.cc: Same.
543
5442003-04-15  Loren J. Rittle  <ljrittle@acm.org>
545
546	* include/bits/concept_check.h: Fix multi-line comment.
547	* testsuite/17_intro/headers.cc (dg-options): Add -Wall -Wsystem-header
548	when target is *-*-freebsd*.
549
550	libstdc++/7680
551	* include/c_std/std_cmath.h (__gnu_cx::__c99_binding): New namespace.
552	Populate it with multiple legal ways to obtain the C99 float
553	transcendentals.  Use them instead of direct global reference.
554	(C99 FP capture): Guard usage with _GLIBCPP_USE_C99_FP_MACROS_DYNAMIC.
555	* docs/html/17_intro/porting.texi
556	(_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_CHECK): New macro.
557	(_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_DYNAMIC): New macro.
558	(_GLIBCPP_USE_C99_FP_MACROS_DYNAMIC): New macro.
559	* config/os/bsd/freebsd/os_defines.h
560	(_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_CHECK): New macro.
561	(_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_DYNAMIC): New macro.
562	* testsuite/26_numerics/c_math_dynamic.cc: New file.
563
564	* testsuite/26_numerics/c99_classification_macros_c.cc: Add XFAIL.
565
5662003-04-14  M. Warner Losh  <imp@bsdimp.com>
567
568	* include/std/std_fstream.h: Add required typename.
569
5702003-04-12  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
571
572	* os/hpux/ctype_inline.h: Replace with gnu-linux version.
573
5742003-04-10  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
575
576	* basic_file_stdio.cc (__basic_file<char>::close): Don't flush stream
577	twice.  Always set _M_cfile to 0 when stream was open.
578
5792003-04-04  Jerry Quinn  <jlquinn@optonline.net>
580
581	PR libstdc++/10276
582	* src/ios.cc (ios_base::_M_init): Remove _M_callbacks
583	initialization.
584
5852003-03-31  Paolo Carlini  <pcarlini@unitus.it>
586
587	* include/ext/stdio_filebuf.h
588	(stdio_filebuf::stdio_filebuf(int, openmode, bool, size_t),
589	stdio_filebuf::stdio_filebuf(__c_file*, openmode, size_t):
590	_M_buf_size_opt == 0 means only "not to use an allocated buffer"
591	since a stack-based buffer is used for small values of the size_t
592	parameter.
593	* include/bits/fstream.tcc (basic_filebuf::_M_really_overflow).
594	If _M_buf_size != 0 flush out the buffer (any kind, stack-based too).
595	* testsuite/ext/stdio_filebuf_2.cc: New testfile.
596
5972003-03-25  Paolo Carlini  <pcarlini@unitus.it>
598	    Petur Runolfsson  <peturr02@ru.is>
599
600	PR libstdc++/10097
601	* src/fstream.cc (basic_filebuf<char>::_M_underflow_common,
602	basic_filebuf<wchar_t>::_M_underflow_common):
603	if (gptr() < egptr()) return *gptr().
604	* testsuite/27_io/filebuf_virtuals.cc (test15): Add.
605
606	* testsuite/27_io/filebuf_members.cc (test_04): Minor
607	changes: unlink fifo before making it, fix spelling error.
608
6092003-03-22  Loren J. Rittle  <ljrittle@acm.org>
610
611	* config/os/hpux/ctype_noninline.h (ctype<char>::classic_table):
612	Correct return value.
613
6142003-03-21  Jerry Quinn  <jlquinn@optonline.net>
615
616	PR libstdc++/5730
617	* include/bits/c++config (_GLIBCPP_FAST_MATH): Define.
618        * include/std/std_complex.h (norm):  Use faster,
619        less accurate computation for builtin float types under --fast-math.
620
6212003-03-21  Paolo Carlini  <pcarlini@unitus.it>
622
623	PR libstdc++/10167
624	* config/locale/ieee_1003.1-2001/codecvt_specializations.h
625	(do_out, do_unshift, do_in): qualify 'ok', 'error', 'partial',
626	'noconv' with codecvt_base::.
627
6282003-03-19  Alexandre Oliva  <aoliva@redhat.com>
629
630	* src/strstream.cc (strstreambuf::overflow): Make sure operands of
631	min and max have the same type.
632	* include/bits/basic_string.tcc (append, rfind, compare): Likewise.
633
6342003-03-17  Benjamin Kosnik  <bkoz@redhat.com>
635
636	* testsuite/Makefile.am (CLEANFILES): Add tmp*.
637	* testsuite/Makefile.in: Regenerate.
638	* testsuite/27_io/filebuf_members.cc: Consistently name tmp files.
639	Cleanups.
640
6412003-03-17  Petur Runolfsson  <peturr02@ru.is>
642
643        PR libstdc++/9964
644        * include/bits/fstream.tcc (basic_filebuf::close):
645        Always close file, even when write fails.
646        * testsuite/27_io/filebuf_members.cc (test_07):  New test.
647
6482003-03-17  Danny Smith  <dannysmith@users.sourceforge.net>
649
650	* libsupc++/Makefile.am (LTCOMPILE): Add $(AM_CFLAGS) $(CFLAGS).
651	* libsupc++/Makefile.in: Regenerate.
652
6532003-03-09  Paolo Carlini  <pcarlini@unitus.it>
654
655	PR libstdc++/9988
656	* include/bits/fstream.tcc (overflow): don't write EOF to file.
657	* testsuite/27_io/filebuf_virtuals.cc (test14): Add.
658
6592003-03-09  Paolo Carlini <pcarlini@unitus.it>
660	    Petur Runolfsson  <peturr02@ru.is>
661
662	PR libstdc++/9424
663	* include/bits/streambuf.tcc (__copy_streambufs): Use
664	sgetn-sputn only when sputn cannot fail, otherwise fall back
665	to safe snextc-sputc.
666	* testsuite/27_io/streambuf_members.cc (test11, test12): Add.
667
6682003-03-08  Jerry Quinn  <jlquinn@optonline.net>
669
670	PR libstdc++/9561
671	* include/bits/basic_ios.h (_M_setstate): New.
672	* include/bits/ostream.tcc (operator<<): Use it.
673	* include/bits/istream.tcc (operator>>): Use it.
674	* include/std/std_ostream.h (operator<<): Make friends.
675	* include/std/std_istream.h (operator>>): Make friends.
676	* testsuite/27_io/ostream_exception.cc,
677	testsuite/27_io/istream_exception.cc: New tests.
678
6792003-03-08  Paolo Carlini  <pcarlini@unitus.it>
680
681	PR libstdc++/9182
682	* include/bits/fstream.tcc (_M_really_overflow): Check
683	for _M_convert_to_external possible failures.
684	* include/std/std_fstream.h (sync): Check _M_really_overflow
685	return value and return -1 in case of failure.
686	* testsuite/27_io/filebuf_virtuals.cc (test12, test13): Add.
687
688	* include/bits/fstream.tcc (_M_convert_to_external):
689	Set __elen to zero if codecvt::out eventually fails.
690
6912003-03-08  Paolo Carlini  <pcarlini@unitus.it>
692
693	PR libstdc++/9826
694	* include/bits/istream.tcc (operator>>(_CharT*),
695	operator>>(basic_string&), ws): Pass a char_type to __ctype.is.
696	* testsuite/27_io/stringstream.cc (test02): Add.
697
698	* include/bits/istream.tcc (operator>>(_CharT*)):
699	Assign a char_type to *__s.
700
7012003-03-08  Jerry Quinn  <jlquinn@optonline.net>
702
703	* src/ios.cc (ios_base::ios_base): Correct order of _M_word and
704	_M_word_size initialization.
705
7062003-03-07  Benjamin Kosnik  <bkoz@redhat.com>
707
708	* config/linker-map.gnu: Tweak.
709
7102003-03-07  Petur Runolfsson  <peturr02@ru.is>
711
712	PR libstdc++/9817
713	* include/bits/locale_facets.tcc
714	(collate::do_compare, collate::do_transform):
715	Handle nul characters in input.
716
7172003-03-07  Jerry Quinn  <jlquinn@tiamat>
718
719	* include/bits/streambuf_iterator.h (_M_put): Set _M_failed if
720	sputn fails.
721	* testsuite/27_io/ostream_fail.cc: New test.
722
7232003-03-07  Matthias Klose  <doko@debian.org>
724
725	* Makefile.am (AM_MAKEFLAGS): Also pass gxx_include_dir.
726	FLAGS_TO_PASS: Set to AM_MAKEFLAGS
727	* Makefile.in: Regenerate.
728	* libsupc++/Makefile.am: Express glibcppinstalldir in terms
729	of gxx_include_dir.
730	AM_MAKEFLAGS: Pass gxx_include_dir.
731	* libsupc++/Makefile.in: Regenerate.
732
7332003-03-06  Jerry Quinn  <jlquinn@optonline.net>
734
735	* src/ios.cc (ios_base::_M_init): Remove _M_word_size.
736	(ios_base::ios_base): Set _M_word, _M_word_size.
737	(ios_base::~ios_base): Remove redundant test.
738	* testsuite/27_io/ios_base_storage.cc (test03): New.
739
7402003-03-05  Jerry Quinn  <jlquinn@optonline.net>
741
742	* testsuite/27_io/ios_base_storage.cc (test02): Set exception
743	mask.  Test setting small-numbered pword and iword slots.  Test
744	behavior at limit of numeric_limits::max.  Check that values are
745	still good after failures.
746
7472003-03-05  Carlo Wood  <carlo@alinoe.com>
748
749        * include/bits/ios_base.h(ios_base::Init::_S_initialized()): Added
750	_S_initialized() in order to allow debugging libraries to detect
751	when the std streams are initialized from an overloaded operator
752	new.
753
7542003-03-04  Benjamin Kosnik  <bkoz@redhat.com>
755
756	* config/linker-map.gnu: Version.
757
7582003-03-04  Jerry Quinn  <jlquinn@optonline.net>
759
760	* include/bits/basic_ios.h:  Update copyright.
761	(_M_cache_locale): New.
762	(_M_cache_facets): Deprecate.
763	* include/bits/basic_ios.tcc (basic_ios::copyfmt): Set up locale
764        caching.
765	(basic_ios::imbue,basic_ios::init): Use _M_cache_locale.
766	(basic_ios::_M_cache_locale): New.
767	(basic_ios::_M_cache_facets): Deprecate.
768	* include/bits/ios_base.h (__locale_cache_base): Declare.
769	(ios_base::_M_cache): Define.
770	* include/bits/locale_facets.h
771	(__locale_cache_base,__locale_cache<_CharT>): New classes.
772	* include/bits/locale_facets.tcc
773	(num_put::_M_convert_int): Use locale cache literal string,
774	grouping flag, thousands separator.
775	(num_out::_M_convert_float): Use locale cache grouping flag, decimal
776        point, thousands separator.
777	(__locale_cache<_CharT>::_M_init,__locale_cache<_CharT>::_S_callback):
778        New.
779	* src/locale-inst.cc
780	(__locale_cache<_CharT>::_S_callback, __locale_cache<char>,
781	__locale_cache<wchar_t>): New.
782
7832003-03-04  Jerry Quinn  <jlquinn@optonline.net>
784
785	* src/ios.cc (ios_base::_M_grow_words): Don't delete _M_word on
786	new failure.  Throw exception if badbit and exception mask when ix
787	>= numeric_limits<int>::max().
788
7892003-03-03  Benjamin Kosnik  <benjamin@redhat.com>
790
791	* config/linker-map.gnu (GLIBCPP_3.2.3): New.
792	Add new symbols.
793	* testsuite/abi_check.cc: Update.
794
7952003-03-03 Jerry Quinn  <jlquinn@optonline.net>
796           Benjamin Kosnik  <benjamin@redhat.com>
797
798	* include/bits/locale_facets.h (__num_base): Add _S_atoms_out.
799	Add indexes into this array.
800	(__num_base::_S_atoms): To _S_atoms_in.
801	(num_put::_M_insert): Rename to _M_pad.
802	(num_put::_M_convert_int): Adjust remove __mod, __modl arguments.
803	(num_put::_M_widen_int): Rename to _M_group_int.
804	(num_put::_M_widen_float): Rename to _M_group_float.
805	* include/bits/locale_facets.tcc (__int_to_char): New inline
806	function and adapter functions.
807	(num_put::_M_group_int): Streamline.
808	(num_put::_M_group_float): Streamline.
809	(num_put::_M_convert_int): Remove unused parameter names. Choose
810	large enough buffer for text.  Use __int_to_char instead of
811	__convert_from_v.  Formatted text is now at the end of the buffer.
812	(num_put::_M_convert_float): Preliminary fixups.
813	* src/locale-inst.cc (__convert_from_v<long long>): Add ifdef.
814	(__int_to_char<unsigned long long>): Same.
815	(__int_to_char<char, unsigned long>): New.
816	(__int_to_char<char, unsigned long long>): New.
817	(__int_to_char<wchar_t, unsigned long>): New.
818	(__int_to_char<wchar_t, unsigned long long>): New.
819	* src/locale.cc: Add _S_atoms_in, _S_atoms_out.
820
8212003-02-28  Benjamin Kosnik  <bkoz@redhat.com>
822
823	* testsuite/27_io/ios_base_storage.cc (main): Call
824	set_memory_limits.
825
8262003-02-28  Brad Spencer  <spencer@infointeractive.com>
827            Nathan Myers  <ncm@cantrip.org>
828
829	* src/Makefile.am (stamp-debug): Clean.
830	* src/Makefile.in: Regenerate.
831
8322002-02-28  Loren J. Rittle  <ljrittle@acm.org>
833
834	* src/Makefile.am: Resolve non-portable use of $<.
835	* src/Makefile.in: Rebuilt.
836
8372002-02-28  Phil Edwards  <pme@gcc.gnu.org>
838
839	* configure.in (GLIBCPP_ENABLE_CXX_FLAGS):  Do not pass arguments,
840	let the defaults work.
841	* configure:  Regenerate.
842
8432002-02-28  Phil Edwards  <pme@gcc.gnu.org>
844
845	* acinclude.m4:  Remove trailing whitespace.
846	(GLIBCPP_ENABLE_CXX_FLAGS):  Fix.
847	* aclocal.m4, configure:  Regenerate.
848
8492003-02-27  Benjamin Kosnik  <bkoz@redhat.com>
850
851        * configure.in (GLIBCPP_ENABLE_DEBUG): Default to none.
852	Call GLIBCPP_ENABLE_DEBUG_FLAGS.
853        * acinclude.m4 (GLIBCPP_ENABLE_DEBUG): GLIBCPP_BUILD_DEBUG, new
854        conditional if --enable-debug is yes. Rework.
855	(GLIBCPP_ENABLE_DEBUG_FLAGS): New.
856        * aclocal.m4: Regenerate.
857	* libio/Makefile.am: Remove DEBUG_FLAGS.
858	* libio/Makefile.in: Regenerate.
859	* libsupc++/Makefile.am: Remove DEBUG_FLAGS.
860	* libsupc++/Makefile.in: Regenerate.
861	* docs/html/configopts.html: Add docs for --enable-debug,
862	--enable-debug-flags.
863
8642003-02-27  Benjamin Kosnik  <bkoz@redhat.com>
865
866	Correct dependency tracking, build warts.
867	* configure.in: Correct repeated AC_OUTPUT thrashing by
868	config-ml.in
869	* configure: Regenerate.
870	* include/Makefile.am (stamp-target): Stamp in top_builddir.
871	* include/Makefile.in: Regenerate.
872	* src/Makefile.am (codecvt_members.cc): New rule.
873	(collate_members.cc): Same.
874	(ctype_members.cc): Same.
875	(messages_members.cc): Same.
876	(monetary_members.cc): Same.
877	(numeric_members.cc): Same.
878	(time_members.cc): Same.
879	(c++locale.cc): Same.
880	(basic_file.cc): Same.
881	* src/Makefile.in: Regenerate.
882	* acinclude.m4 (CCTYPE_CHAR_CC): Remove.
883	(CCCODECVT_CC): Don't link, AC_SUBST.
884	(CCOLLATE_CC): Same.
885	(CCTYPE_CC): Same.
886	(CMESSAGES_CC): Same.
887	(CMONEY_CC): Same.
888	(CNUMERIC_CC): Same.
889	(CTIME_CC): Same.
890	(CLOCALE_CC): Same.
891	* aclocal.m4: Regenerate.
892
893	* src/Makefile.am (libstdc___la_LIBADD): Use top_builddir
894	for convenience libraries.
895	(version_arg): Rename linker.map to libstdc++.ver.
896	(libstdc___la_DEPENDENCIES): Remove linker.map, add
897	libstdc++-symbol.ver as a dependency.
898	(libstdc++-symbol.ver): Add rule.
899	* acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Change LINKER_MAP to
900	SYMVER_MAP. Don't link, AC_SUBST.
901
902	* include/Makefile.am (target_headers_noinst): New.
903	(stamp-target): Add CLOCALE_INTERNAL_H.
904	* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Don't link
905	CLOCALE_INTERNAL_H, AC_SUBST.
906	* config/locale/gnu/c_locale.cc: Modify c++locale_internal.h
907	include.
908	* config/locale/gnu/time_members.cc: Same.
909	* config/locale/gnu/numeric_members.cc: Same.
910	* config/locale/gnu/monetary_members.cc: Same.
911	* config/locale/gnu/messages_members.cc: Same.
912	* config/locale/gnu/ctype_members.cc: Same.
913	* config/locale/gnu/collate_members.cc: Same.
914	* config/locale/gnu/codecvt_members.cc: Same.
915	* config/locale/generic/codecvt_members.cc: Remove.
916
9172003-02-27  Jerry Quinn  <jlquinn@optonline.net>
918
919        * config/locale/generic/messages_members.h (messages::messages):
920	Remove name from unused parameter.
921
9222003-02-27  Benjamin Kosnik  <bkoz@redhat.com>
923
924	* include/Makefile.am (stamp-std-precompile): Add rule.
925	* include/Makefile.in: Regenerated.
926
9272003-02-27  Benjamin Kosnik  <bkoz@redhat.com>
928
929	* include/bits/c++config (_GLIBCPP_EXTERN_TEMPLATE): Define.
930	* include/bits/basic_ios.tcc: Guard use of extern template.
931	* include/std/std_iomanip.h: Same.
932	* include/bits/streambuf.tcc: Same.
933	* include/bits/stl_alloc.h: Same.
934	* include/bits/locale_facets.tcc: Same.
935	* include/bits/ostream.tcc: Same.
936	* include/bits/istream.tcc: Same.
937	* include/bits/fstream.tcc: Same.
938	* include/bits/basic_string.tcc: Same.
939
9402003-02-25  Paolo Carlini  <pcarlini@unitus.it>
941
942	PR libstdc++/9825
943	* src/fstream.cc
944	(basic_filebuf<char/wchar_t>::_M_underflow_common): When
945	__bump is true (uflow), always increment the read pointer
946	(_M_in_cur) before returning successfully.
947	* testsuite/27_io/filebuf_virtuals.cc (test11): Add.
948
9492003-02-25  Paolo Carlini  <pcarlini@unitus.it>
950
951	* include/std/std_sstream.h (str()): the size of the
952	current string may be different from the initial one
953	whenever _M_out_end > _M_out_beg.
954	* testsuite/27_io/stringbuf_members.cc (test07): Add.
955
9562003-02-21  Phil Edwards  <pme@gcc.gnu.org>
957
958	* config/cpu/generic/atomicity.h (_Atomic_add_mutex):  Fix declaration.
959	(_GLIBCPP_NEED_GENERIC_MUTEX):  Define for this file.
960	(_Atomic_add_mutex_once, __gthread_atomic_add_mutex_once):  Declare
961	when we don't have static mutex initialization.
962	(__exchange_and_add):  Use _Atomic_add_mutex_once.
963	* src/misc-inst.cc:  Definitions of all the above.
964	* config/linker-map.gnu:  Also export locking symbols needed for the
965	generic atomicity.h case.
966
9672003-02-20  Alexandre Oliva  <aoliva@redhat.com>
968
969	* configure.in: Propagate ORIGINAL_LD_FOR_MULTILIBS to
970	config.status.
971	* configure: Rebuilt.
972
9732003-02-19  Phil Edwards  <pme@gcc.gnu.org>
974
975	PR libstdc++/9582
976	* include/bits/stl_alloc.h:  Remove all traces of assert().
977
9782003-02-18  Paolo Carlini  <pcarlini@unitus.it>
979
980	PR libstdc++/9582
981	* include/bits/stl_alloc.h (__pool_alloc::allocate): Remove assert.
982
9832003-02-17  Paolo Carlini  <pcarlini@unitus.it>
984
985	* src/locale-inst.cc: Do not include <cassert>.
986	* src/locale.cc: Likewise.
987
9882003-02-17  Paolo Carlini  <pcarlini@unitus.it>
989
990	PR libstdc++/9169
991	* include/bits/fstream.tcc (_M_convert_to_external):
992	Deal correctly with noconv, as prescribed by 27.8.1.4,p8.
993	* testsuite/27_io/filebuf_virtuals.cc (test10): Add.
994
9952003-02-13  Paolo Carlini  <pcarlini@unitus.it>
996
997	* include/bits/ostream.tcc (sentry::sentry): Improve
998	performance-wise the fix for libstdc++/9563.
999
10002003-02-13  Paolo Carlini  <pcarlini@unitus.it>
1001
1002	PR libstdc++/9320
1003	* include/ext/stdio_filebuf.h
1004	(stdio_filebuf(int, std::ios_base::openmode, bool, int_type),
1005	stdio_filebuf(std::__c_file*, std::ios_base::openmode, int_type)):
1006	Change to take a __size parameter of type size_t, not
1007	of type (template parameter dependent) int_type.
1008	* src/ios.cc (ios_base::Init::_S_ios_create): Change type of
1009	size vars to size_t.
1010	* testsuite/ext/stdio_filebuf.cc: Add.
1011
10122003-02-12  Paolo Carlini  <pcarlini@unitus.it>
1013
1014	PR libstdc++/9563
1015	* include/bits/ostream.tcc (sentry::sentry): Check
1016	the state of the stream after the preparation.
1017	* testsuite/27_io/ostream_sentry.cc: Add.
1018
10192003-02-11  Scott Snyder  <snyder@fnal.gov>
1020
1021	PR libstdc++/9659
1022	* include/bits/fstream.tcc (seekoff): Avoid operator+
1023	for pos_type.
1024
10252003-02-11  Paolo Carlini  <pcarlini@unitus.it>
1026            Petur Runolfsson  <peturr02@ru.is>
1027
1028	PR libstdc++/9318
1029	* include/bits/streambuf.tcc (__copy_streambufs):
1030	Don't conditionalize the copy to __testput.
1031	* testsuite/27_io/streambuf_members.cc (test09, test10): Add.
1032
10332003-02-08  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1034
1035	* hppa/atomicity.h (__Atomicity_lock<__inst>::_S_atomicity_lock):
1036	Correct alignment.
1037	(__exchange_and_add, __atomic_add): Use PA 2.0 ordered store to reset
1038	lock.
1039
10402003-02-07  Paolo Carlini  <pcarlini@unitus.it>
1041
1042	PR libstdc++/9548
1043	Implement resolution of DR 231 (Ready)
1044	* include/bits/locale_facets.h (__num_base::_S_format_float):
1045	Return void.
1046	* src/locale.cc (__num_base::_S_format_float): Implement
1047	resolution of DR 231.
1048	* include/bits/locale_facets.tcc (num_put::_M_convert_float):
1049	Tweak uses. Check for negative precision.
1050	* testsuite/22_locale/num_put_members_char.cc (test06): Add
1051	* testsuite/22_locale/num_put_members_wchar_t.cc (test06): Ditto.
1052
10532003-02-07  Paolo Carlini  <pcarlini@unitus.it>
1054
1055	* testsuite/27_io/filebuf_virtuals.cc (test08): Fix for
1056	unsigned char platforms.
1057
10582003-02-05  Benjamin Kosnik  <bkoz@redhat.com>
1059
1060	* include/bits/locale_facets.tcc (time_put::do_put): Use __write.
1061	(money_put::do_put): Same.
1062
10632003-02-05  Jerry Quinn  <jlquinn@optonline.net>
1064
1065	* include/bits/ios_base.h (ios_base): Document reserved storage.
1066
1067	* include/bits/locale_facets.h:	(struct __pad): Comment on
1068	implementation.
1069	(__verify_grouping): Same.
1070	(__add_grouping): Same.
1071	* include/bits/locale_facets.tcc (__verify_grouping): Move
1072	comments to declaration.
1073	(__add_grouping): Same.
1074
1075	* include/bits/locale_facets.tcc:
1076	(__write<_CharT, _OutIter>): New function.
1077	(__write<_CharT>): New function specialization.
1078	(num_put::_M_insert): Remove explicit loop over iterator.  Use
1079	__write.
1080	(num_put::_M_widen_float): Remove __basefield.
1081	(num_put::_M_widen_int): Move __basefield to within grouping block.
1082
1083	* include/bits/streambuf_iterator.h: Include <streambuf>.
1084	(ostreambuf_iterator::_M_put): Add.
1085
10862003-02-05  Paolo Carlini  <pcarlini@unitus.it>
1087
1088	* testsuite/26_numerics/valarray_name_lookup.cc: Fix typo.
1089
10902003-02-05  Paolo Carlini  <pcarlini@unitus.it>
1091
1092	PR libstdc++/9439, PR libstdc++/9425
1093	* config/io/basic_file_stdio.cc
1094	(__basic_file<char>::seekoff, seekpos): Return -1L if
1095	fseek fails.
1096	* include/bits/fstream.tcc (basic_filebuf::seekoff):
1097	Check _M_file.seekoff return value; always return
1098	pos_type(off_type(-1)) in case of failure.
1099	(basic_filebuf::pbackfail): Check this->seekoff return
1100	value and return traits_type::eof() in case of failure.
1101	* testsuite/27_io/filebuf_virtuals.cc (test09): Add.
1102
11032003-02-05  Benjamin Kosnik  <bkoz@redhat.com>
1104
1105        * testsuite/26_numerics/valarray_name_lookup.cc: Fix.
1106
11072003-02-05  Benjamin Kosnik  <bkoz@redhat.com>
1108
1109	* configure.in (libtool_VERSION): To 5:3:0.
1110	* configure: Regenerated.
1111
11122003-02-04  Paolo Carlini  <pcarlini@unitus.it>
1113
1114	PR libstdc++/9538
1115	* include/bits/streambuf.tcc (sputbackc): Access
1116	this->gptr()[-1] only if _M_in_beg < _M_in_cur.
1117	* testsuite/27_io/filebuf_virtuals.cc (test08): Add.
1118
11192003-02-04  Paolo Carlini  <pcarlini@unitus.it>
1120
1121	PR libstdc++/9507
1122	* include/bits/fstream.tcc (open): If the 'ate' repositioning
1123	operation fails, calls close _and_ returns a null pointer
1124	to indicate failure (27.8.1.3,4).
1125	* testsuite/27_io/filebuf_members.cc (test_06): Add.
1126
11272003-02-04  Petur Runolfsson  <peturr02@ru.is>
1128
1129	* testsuite/27_io/filebuf_members.cc (test_04): Remove exit(0).
1130
11312003-02-04  Joseph S. Myers  <jsm@polyomino.org.uk>
1132
1133	* docs/html/17_intro/porting.texi: Update to GFDL 1.2.
1134	* docs/html/17_intro/porting.html: Regenerate.
1135
11362003-02-03  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
1137
1138	PR libstdc++/9234
1139	* include/bits/valarray_meta.h (_UnBase::operator[]): Apply unary
1140	operator.
1141
1142	* include/bits/valarray_meta.h (__not_equal_to): Use != instead of ==.
1143
1144	* testsuite/26_numerics/valarray_operators.cc: New test.
1145
11462003-01-28  Nathan Sidwell  <nathan@codesourcery.com>
1147
1148	PR c++/9433
1149	* libsupc++/tinfo.cc (__vmi_class_type_info::__do_dyncast): Cope
1150	with bases which are very ambiguous.
1151
11522003-01-28  Danny Smith  <dannysmith@users.sourceforge.net>
1153
1154	* src/Makefile.am (CONFIG_CXXFLAGS): Reverse order of
1155	@EXTRA_CXX_FLAGS@ @SECTION_FLAGS@.
1156	* libsupc++/Makefile.am (CONFIG_CXXFLAGS): Likewise.
1157	* src/Makefile.in: Regenerate.
1158	* libsupc++/Makefile.in: Regenerate.
1159
11602003-01-27  Alexandre Oliva  <aoliva@redhat.com>
1161
1162	* acinclude.m4 (glibcpp_toolexeclibdir): Instead of
1163	$(MULTISUBDIR), use `$CC -print-multi-os-directory`, unless
1164	version_specific_libs is enabled.
1165	* aclocal.m4, configure: Rebuilt.
1166
11672003-01-26  Christian Cornelssen  <ccorn@cs.tu-berlin.de>
1168
1169	* include/Makefile.am (install-data-local): Prepend
1170	$(DESTDIR) to destination paths in all (un)installation
1171	commands.  Use ${c_base_builddir} and ${std_builddir}
1172	as destination subdirectories to achieve consistency with
1173	preceding mkinstalldirs commands.  No effect because both
1174	variables contain "." only.
1175	* include/Makefile.in: Regenerate.
1176
11772003-01-23  Phil Edwards  <pme@gcc.gnu.org>
1178
1179	Bulk documentation merge (copy) from trunk.
1180	* docs/doxygen/tables.html, docs/doxygen/user.cfg.in,
1181	docs/html/configopts.html, docs/html/debug.html,
1182	docs/html/documentation.html, docs/html/17_intro/howto.html,
1183	docs/html/19_diagnostics/howto.html, docs/html/ext/sgiexts.html:
1184	Merge from trunk.
1185
11862003-01-23  Petur Runolfsson  <peturr02@ru.is>
1187
1188	PR libstdc++/9322
1189	* include/std/std_streambuf.h
1190	(basic_streambuf::basic_streambuf,
1191	basic_streambuf::~basic_streambuf,
1192	basic_streambuf::getloc, basic_streambuf::imbue):
1193	Remove _M_buf_locale_init use.
1194	* include/bits/fstream.tcc (basic_filebuf::imbue):  Likewise
1195	* testsuite/27_io/filebuf_virtuals.cc (test08):  Add.
1196	* testsuite/27_io/streambuf_members.cc (test08):  Add.
1197	* testsuite/27_io/stringbuf_virtuals.cc (test08):  Add.
1198
11992003-01-23  Benjamin Kosnik  <bkoz@redhat.com>
1200
1201	Revert include ordering.
1202	* config/locale/generic/c_locale.h: Add include guards.
1203	* config/locale/gnu/c_locale.h: Same.
1204	* include/bits/locale_classes.h: Remove cctype include.
1205	* include/std/std_iosfwd.h: Add c++locale.h, cctype includes.
1206	* include/std/std_fstream.h: Remove streambuf include.
1207	* include/std/std_sstream.h: Remove streambuf include.
1208
12092003-01-23  Benjamin Kosnik  <bkoz@redhat.com>
1210
1211	Match 3.2.0 ABI.
1212	* include/bits/stl_alloc.h: Revert.
1213
1214	* include/bits/codecvt.h: Revert.
1215	* config/locale/gnu/codecvt_members.cc: Revert.
1216	* src/codecvt.cc: Revert.
1217	* src/localename.cc: Revert.
1218
1219	* include/bits/ios_base.h (ios_base::~ios_base): Revert.
1220
1221	* config/linker-map.gnu: Mostly match 3_2-branch file.
1222
12232003-01-22  Benjamin Kosnik  <bkoz@redhat.com>
1224
1225	* include/bits/locale_facets.h: Move non-facet classes requiring
1226	<string> to...
1227	* include/bits/locale_classes.h: New.
1228	* include/bits/Makefile.am (bits_headers_src): Add locale_classes.h.
1229	* include/bits/Makefile.in: Regenerate.
1230
1231	* include/bits/locale_facets.tcc (__convert_from_v): Move to...
1232	* config/locale/gnu/c_locale.h: ...here.
1233	* config/locale/generic/c_locale.h: Same.
1234
1235	* include/bits/locale_facets.tcc: Move declarations to...
1236	* include/bits/locale_facets.h: ...here.
1237	* include/bits/basic_ios.h: Tweak includes accordingly.
1238	* include/std/std_sstream.h: Add streambuf include.
1239	* include/std/std_fstream.h: Ditto.
1240	* include/std/std_locale.h: Add locale_classes.h include.
1241	* include/std/std_iosfwd.h: Tweak.
1242	* src/concept-inst.cc: Add iterator include.
1243
1244	* config/linker-map.gnu: Specify __cxa functions, mark __cxa_dyn_*
1245	bits as unexported in the future.
1246
12472003-01-15  Benjamin Kosnik  <bkoz@redhat.com>
1248
1249	* acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Substitute
1250	GLIBCPP_TEST_WCHAR_T if building wchar_t bits in the library.
1251	* aclocal.m4: Regenerate.
1252	* configure: Regenerate.
1253	* testsuite/Makefile.am (all-local): Add conditional rule to
1254	generate testsuite_wchar_t.
1255	* testsuite/Makefile.in: Regenerate.
1256	* testsuite/lib/libstdc++-v3-dg.exp
1257	(libstdc++-v3-list-sourcefiles): Remove wchar_t files if
1258	testsuite_wchar_t is not present in the build directory.
1259	* testsuite/libstdc++-v3.dg/dg.exp: Add -g -O2 to DEFAULT_CXXFLAGS.
1260	Remove setulimit bits.
1261	* testsuite/26_numerics/complex_value.cc: Set to noopts.
1262	* testsuite/Makefile.am (CLEANFILES): Add.
1263	* testsuite/Makefile.in: Regenerate.
1264
12652003-01-15  Benjamin Kosnik  <bkoz@redhat.com>
1266
1267	Renames, namespaces for testsuite utilities.
1268	* testsuite/testsuite_hooks.h: Put into namespace __gnu_cxx_test.
1269	(gnu_allocator_tracker): Rename to allocation_tracker.
1270	(gnu_new_allocator): Rename to tracker_alloc.
1271	(__set_testsuite_memlimit): Rename to set_memory_limits.
1272	(gnu_assignment_operator): Rename to assignment_operator.
1273	(gnu_destructor): Rename to destructor.
1274	(gnu_copy_tracker): Rename to copy_tracker.
1275	(gnu_char, gnu_int, gnu_long): Rename to pod_char, pod_int, pod_long.
1276	(run_tests_wrapped_locale): New.
1277	(run_tests_wrapped_env): New.
1278	* testsuite/testsuite_hooks.cc: Same.
1279	(class locale_data): Add.
1280	(class enviornment_variable): Add.
1281	(class not_found): Add.
1282	* testsuite/testsuite_allocator.h: Same.
1283	* testsuite/testsuite_allocator.cc: Same.
1284	* testsuite/23_containers/deque_ctor.cc
1285	(test_copy_ctor_exception_safety): Change gnu_allocator_tracker to
1286	allocation_tracker.
1287	Change gnu_new_allocator to tracker_alloc.
1288	Change gnu_counting_struct to counter.
1289	Change gnu_copy_tracker to copy_tracker.
1290	Change gnu_copy_constructor to copy_constructor.
1291	Change gnu_assignment_operator to assignment_operator.
1292	Inject.
1293	* testsuite/23_containers/vector_capacity.cc: Same.
1294	* testsuite/23_containers/vector_ctor.cc (test01): Same.
1295	* testsuite/23_containers/list_modifiers.cc: Change
1296	gnu_copy_tracker to copy_tracker.
1297	* testsuite/21_strings/ctor_copy_dtor.cc (main): Change
1298	__set_testsuite_memlimit to set_memory_limits.
1299	* testsuite/21_strings/insert.cc (main): Same.
1300	* testsuite/27_io/filebuf.cc: Change gnu_char to pod_char.
1301	* testsuite/27_io/stringstream.cc: Same.
1302	* testsuite/27_io/stringbuf.cc: Same.
1303	* testsuite/27_io/streambuf.cc: Same.
1304	* testsuite/27_io/ostream.cc: Same.
1305	* testsuite/27_io/istream.cc: Same.
1306	* testsuite/27_io/fstream.cc: Same.
1307	* testsuite/lib/libstdc++-v3-dg.exp
1308	(libstdc++-v3-list-sourcefiles): Additionally handle files two and
1309	three levels deeper in glob patterns.
1310
13112003-01-15  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1312
1313	* config/os/hpux/os_defines.h (_GLIBCPP_GTHREAD_USE_WEAK): Define for
1314	__hppa__.
1315
13162003-01-10  Benjamin Kosnik  <bkoz@redhat.com>
1317	    Sysoltsev Slawa  <Vyatcheslav.Sysoltsev@intel.com>
1318
1319	PR libstdc++/9269
1320	* include/std/std_fstream.h (basic_filebuf::uflow): Declare.
1321	(basic_filebuf::underflow): Declare.
1322	Move definitions.
1323
13242003-01-07  Benjamin Kosnik  <bkoz@redhat.com>
1325
1326	PR libstdc++/8707
1327	* Makefile.am (distclean-multi): Fix.
1328	* Makefile.in: Regenerate.
1329
13302003-01-06  Benjamin Kosnik  <bkoz@redhat.com>
1331
1332	* include/bits/locale_facets.h (messages): Move ctor, dtor
1333	definitions to..
1334	(__timepunct): Same.
1335	* config/locale/gnu/messages_members.h (messages): Add dtor, ctor
1336	definitions. Conditionalize for GNU systems.
1337	* config/locale/generic/messages_members.h (messages): Add dtor, ctor
1338	definitions.
1339	* config/locale/gnu/time_members.h (messages): New. Add dtor, ctor
1340	definitions. Conditionalize for GNU systems.
1341	* config/locale/generic/time_members.h (messages): New. Add dtor, ctor
1342	definitions.
1343	* include/bits/localefwd.h (locale::facet::_S_c_name): Add.
1344	* src/locale.cc: Define.
1345	* src/localename.cc (locale::_Impl::_Impl(facet**, size_t, bool):
1346	Use it.
1347	* config/locale/gnu/time_members.h: Use it.
1348	* config/locale/gnu/messages_members.h: Use it.
1349	* config/linker-map.gnu: Add locale::facets details.
1350	* include/Makefile.am (target_headers_extra): Add time_members.h.
1351	* include/Makefile.in: Regenerate.
1352	* acinclude.m4: Export CTIME_H.
1353	* aclocal.m4: Regenerate.
1354	* configure: Regnerate.
1355
13562003-01-06  Paolo Carlini  <pcarlini@unitus.it>
1357
1358	* src/codecvt.cc
1359        (codecvt<char, char, mbstate_t>::do_in, do_out):
1360        Tweak parameters to avoid unused parameter warnings.
1361
13622003-01-06  Paolo Carlini  <pcarlini@unitus.it>
1363
1364	PR libstdc++/9151
1365	* include/bits/locale_facets.cc (num_put::_M_convert_float):
1366	Limit __prec to digits10 + 2, not digits10 + 1, taking into
1367	account the possibility of %{g,G} conversion specifiers
1368	inside _S_format_float.
1369	* testsuite/27_io/ostream_inserter_arith.cc (test06): Add.
1370
13712003-01-06  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1372
1373	* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init,
1374	libstdc++-v3-list-sourcefiles): Additionally handle files one
1375	level deeper in glob patterns.
1376
1377	* testsuite/27_io/istream_extractor_arith.cc: Delete, split...
1378	* testsuite/27_io/istream_extractor_arith/01.cc,
1379	testsuite/27_io/istream_extractor_arith/02.cc,
1380	testsuite/27_io/istream_extractor_arith/03.cc,
1381	testsuite/27_io/istream_extractor_arith/06.cc,
1382	testsuite/27_io/istream_extractor_arith/07.cc,
1383	testsuite/27_io/istream_extractor_arith/08.cc,
1384	testsuite/27_io/istream_extractor_arith/09.cc,
1385	testsuite/27_io/istream_extractor_arith/10.cc,
1386	testsuite/27_io/istream_extractor_arith/11.cc,
1387	testsuite/27_io/istream_extractor_arith/12.cc,
1388	testsuite/27_io/istream_extractor_arith/13.cc: ... to new files.
1389	* testsuite/27_io/istream_extractor_arith/12.cc: Add XFAIL for
1390	sparc*-*-solaris2*.
1391
13922003-01-05  Paolo Carlini <pcarlini@unitus.it>
1393
1394	PR libstdc++/9168
1395	* src/codecvt.cc
1396	(codecvt<char, char, mbstate_t>::do_in, do_out):
1397	Implement the resolution of DR19 (TC).
1398	* testsuite/22_locale/codecvt_members_char_char.cc
1399	(test01): Tweak.
1400
14012002-12-29  Phil Edwards  <pme@gcc.gnu.org>
1402
1403	* include/std/std_bitset.h:  Better comments.
1404
14052002-12-29  Phil Edwards  <pme@gcc.gnu.org>
1406
1407	* include/std/std_bitset.h (_Base_bitset::_M_do_left_shift,
1408	_Base_bitset::_M_do_right_shift): Expect a non-zero shift.
1409	(bitset::operator<<=, bitset::operator>>=):  When shifting more bits
1410	than are in the bitset, zero memory rather than segfault.
1411	(operator>>(basic_istream,bitset):  Only call setstate once, after
1412	all work has been done.
1413
1414	* testsuite/23_containers/bitset_members.cc (test03):  New test.
1415	* testsuite/23_containers/bitset_shift.cc (test02):  New test.
1416
14172002-12-28  Joseph S. Myers  <jsm@polyomino.org.uk>
1418
1419	* docs/html/17_intro/porting.texi: Use @copying.
1420	* docs/html/17_intro/porting.html: Regenerate.
1421
14222002-12-23  Danny Smith  <dannysmith@users.sourceforge.net>
1423
1424	* config/io/basic_file_stdio.cc (__basic_file::_M_open_mode):
1425	Don't use O_NONBLOCK if it is not defined.
1426	(__basic_file::open): Don't use fcntl either.
1427
14282002-12-19  Paolo Carlini  <pcarlini@unitus.it>
1429
1430	PR libstdc++/8949
1431	* include/std/std_limits.h
1432	(struct numeric_limits<short>,
1433	struct numeric_limits<unsigned short>,
1434	struct numeric_limits<int>,
1435	struct numeric_limits<unsigned int>,
1436	struct numeric_limits<long>,
1437	struct numeric_limits<unsigned long>,
1438	struct numeric_limits<long long>,
1439	struct numeric_limits<unsigned long long>): According
1440	to 18.2.1.2,53 and 18.2.1.5,1 is_iec559 shall be false.
1441	* testsuite/18_support/numeric_limits.cc: Add test04.
1442
14432002-12-18  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1444
1445	* testsuite/23_containers/vector_capacity.cc (test03): Move ...
1446	* testsuite/23_containers/vector_resize.cc: ...here as a new file.
1447	Pass in -lmalloc for irix6.
1448	* testsuite/27_io/ios_base_storage.cc: Pass in -lmalloc for irix6.
1449
14502002-12-11  Paolo Carlini  <pcarlini@unitus.it>
1451
1452	PR libstdc++/8887
1453	* config/locale/generic/time_members.cc
1454	(__timepunct<char>::_M_initialize_timepunct): Fix typos
1455	in _M_date_format and _M_date_era_format string literals.
1456
14572002-12-10  Mark Mitchell  <mark@codesourcery.com>
1458
1459	* libsupc++/cxxabi.h (__cxa_bad_cast): Declare it.
1460	(__cxa_bad_typeid): Likewise.
1461	(__cxa_atexit): Likewise.
1462	(__cxa_finalize): Likewise.
1463
14642002-12-09  Gabriel Dos Reis  <gdr@integrable-solutions.net>
1465
1466	* include/bits/slice_array.h (slice_array<>::operator=): Fix typo.
1467
14682002-12-09  Mark Mitchell  <mark@codesourcery.com>
1469
1470	* libsupc++/cxxabi.h (__cxa_pure_virtual): Declare it.
1471
14722002-12-05  Benjamin Kosnik  <bkoz@redhat.com>
1473
1474	* testsuite/abi_check.cc: Add GLIBCPP_3.2.2.
1475
14762002-12-02  Paolo Carlini  <pcarlini@unitus.it>
1477
1478	* include/bits/basic_string.h (compare(const basic_string&)):
1479        Fully qualify min() with std::.
1480
14812002-12-02  Benjamin Kosnik  <bkoz@redhat.com>
1482
1483	* configure.in (libtool_VERSION): Update to 5:2:0.
1484	* configure: Regenerate.
1485
14862002-12-02  Paolo Carlini  <pcarlini@unitus.it>
1487
1488	* include/bits/basic_string.tcc
1489	(basic_string::append(const basic_string&, size_type,
1490	size_type), basic_string::compare(size_type, size_type,
1491	const basic_string&), basic_string::compare(size_type,
1492	size_type, const basic_string&, size_type, size_type),
1493	basic_string::compare(const _CharT*), basic_string::
1494	compare(size_type, size_type, const _CharT*),
1495	basic_string::compare(size_type, size_type, const _CharT*,
1496	size_type), _S_string_copy(const basic_string&, _CharT*,
1497	typename _Alloc::size_type)): Fully qualify min() with std::.
1498
14992002-12-02  Paolo Carlini  <pcarlini@unitus.it>
1500
1501	* include/bits/basic_string.tcc
1502	(basic_string::_S_construct(_InIter, _InIter, const _Alloc&,
1503	forward_iterator_tag)): Delay the declaration of __dnew,
1504	fully qualify distance() with std::.
1505	(basic_string::_M_replace_safe): Fully qualify distance()
1506	with std::.
1507
15082002-11-28  Phil Edwards  <pme@gcc.gnu.org>
1509
1510	PR libstdc++/8716
1511	* testsuite/21_strings/ctor_copy_dtor.cc (test05):  Also test
1512	the NULL-pointer, zero-size case.
1513
15142002-11-28  Jonathan Wakely  <redi@gcc.gnu.org>
1515
1516	* docs/html/faq/index.html: Add tip about a namespace for extensions.
1517
15182002-11-28  Paolo Carlini  <pcarlini@unitus.it>
1519            Nathan Myers  <ncm@cantrip.org>
1520
1521	* src/localename.cc
1522	(locale::_Impl::_Impl(const char*, size_t)):
1523	Improve previous fix for the strtok vs MT issue.
1524
15252002-11-28  Paolo Carlini  <pcarlini@unitus.it>
1526
1527	* config/locale/gnu/c_locale.cc (locale::_S_categories):
1528	Reorder the categories to match that of glibc's setlocale(LC_ALL, ""))
1529	* config/locale/generic/c_locale.cc (locale::_S_categories): Ditto.
1530	* testsuite/22_locale/ctor_copy_dtor.cc (test04): Tweak.
1531
15322002-11-25  Benjamin Kosnik  <bkoz@redhat.com>
1533
1534	* testsuite/abi_check.cc: Add CXXABI_1.2.1 as compatible.
1535	* config/linker-map.gnu: Version __cxa_guard_acquire,
1536	__cxa_guard_release, __cxa_guard_abort in CXXABI_1.2.1.
1537
15382002-11-25  Paolo Carlini  <pcarlini@unitus.it>
1539            Nathan Myers  <ncm@cantrip.org>
1540
1541	* src/localename.cc
1542	(locale::_Impl::_Impl(const char*, size_t)):
1543	Avoid strtok for thread safety.
1544
15452002-11-25  Stephen M. Webb  <stephen@bregmasoft.com>
1546
1547	* testsuite/testsuite_allocator.h: New file.
1548	* testsuite/testsuite_allocator.cc: New file.
1549	* testsuite/Makefile.am: Added testsuite_allocator to test library.
1550	* testsuite/testsuite_hooks.h: Added more detailed tracker objects
1551	gnu_copy_constructor, gnu_assignment_operator, and gnu_destructor.
1552	* testsuite/testsuite_hooks.cc: Added new static objects definitions.
1553	* testsuite/23_containers/vector_capacity.cc: Added reserve() tests.
1554	* testsuite/23_containers/vector_ctor.cc: Added a plethora of tests.
1555	* testsuite/23_containers/deque_ctor.cc: Added a slew of new tests.
1556
15572002-11-25  Mark Mitchell  <mark@codesourcery.com>
1558
1559	* libsupc++/Makefile.am (sources): Add guard.cc.
1560	* libsupc++/Makefile.in: Regenerated.
1561	* libsupc++/cxxabi.h (__cxa_guard_acquire): New function.
1562	(__cxa_guard_release): Likewise.
1563	(__cxa_guard_abort): Likewise.
1564	* libsupc++/guard.cc: New file.
1565
15662002-11-25  Wolfgang Bangerth  <bangerth@ticam.utexas.edu>
1567
1568	* include/std/std_complex.h
1569	(operator<<(basic_ostream&, const complex&)): Prefer 'x'
1570	to "x" for efficiency sake.
1571	* src/locale.cc (locale::locale(const char*)): Ditto.
1572
15732002-11-24  Paolo Carlini  <pcarlini@unitus.it>
1574
1575	* src/locale.cc (locale::locale(const char*)):
1576	Trivial cosmetic tweaks.
1577
15782002-11-22  Laszlo Ersek  <erseklaszlo@chello.hu>
1579            Paolo Carlini  <pcarlini@unitus.it>
1580
1581	PR libstdc++/8645
1582	* include/bits/stl_tree.h (_Rb_tree_rebalance_for_erase):
1583	Don't check that __w->_M_left != 0 and __w->_M_right != 0
1584	when they can't be otherwise.
1585
15862002-11-21  Phil Edwards  <pme@gcc.gnu.org>
1587
1588	* docs/html/documentation.html:  Fix broken/thinko'd URL.
1589
15902002-11-21  Phil Edwards  <pme@gcc.gnu.org>
1591
1592	* docs/doxygen/run_doxygen:  Tighter search expression for sed.
1593	* docs/doxygen/stdheader.cc:  Handle the case of good headers.
1594
15952002-11-21  Phil Edwards  <pme@gcc.gnu.org>
1596
1597	* acinclude.m4:  Uniform formatting.
1598	* configure.in:  Warn when generic atomicity.h is used.
1599	* configure.target:  Fix comment.
1600	* aclocal.m4, configure:  Regenerate.
1601
16022002-11-21  Phil Edwards  <pme@gcc.gnu.org>
1603
1604	* include/bits/streambuf.tcc (basic_streambuf::sputbackc):  Prefix
1605	"this->" to call to pbackfail.
1606
16072002-11-21  Phil Edwards  <pme@gcc.gnu.org>
1608
1609	* docs/doxygen/style.css:  Update.
1610	* docs/doxygen/user.cfg.in:  Update.
1611	* docs/html/documentation.html:  Regenerate.
1612	* docs/html/17_intro/howto.html:  Tweak I/O sentry entry.
1613	* docs/html/27_io/howto.html:  New section on headers.
1614	* docs/html/faq/index.html:  Add i386 threading entry.
1615	* docs/html/faq/index.txt:  Regenerate.
1616
1617	* docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
1618	Import R23.
1619
16202002-11-21  Phil Edwards  <pme@gcc.gnu.org>
1621
1622	* docs/doxygen/TODO:  Note change in clause 27 docs.
1623	* include/bits/basic_ios.h, include/bits/fpos.h,
1624	include/bits/ios_base.h, include/bits/stl_deque.h,
1625	include/bits/stl_iterator_base_types.h, include/std/std_fstream.h,
1626	include/std/std_iomanip.h, include/std/std_iosfwd.h,
1627	include/std/std_iostream.h, include/std/std_istream.h,
1628	include/std/std_ostream.h, include/std/std_sstream.h,
1629	include/std/std_streambuf.h:  Doxygenate all I/O entities.
1630
16312002-11-20  Benjamin Kosnik  <bkoz@redhat.com>
1632            Jonathan Lennox  <lennox@cs.columbia.edu>
1633
1634	* include/bits/streambuf.tcc (__copy_streambufs):
1635	Revert previous fix for the interactive half of
1636	libstdc++/6745, use _M_buf_size_opt to set dynamically
1637	the correct buffer size.
1638
16392002-11-20  Jonathan Wakely  <redi@gcc.gnu.org>
1640
1641	* docs/html/21_strings/howto.html: Fix example code, cite Gaby's
1642	explanation of "<unknown type>" error with toupper/tolower.
1643	* docs/html/22_locale/howto.html: Be more consistent with
1644	example in 21_strings.
1645
16462002-11-19  John Gustafsson  <forgoil@rsn.bth.se>
1647
1648	* docs/html/20_util/howto.html: Fix typo.
1649
16502002-11-18  Jonathan Lennox  <lennox@cs.columbia.edu>
1651
1652	* include/bits/streambuf.tcc (__copy_streambufs): verify
1653	__sbin->gptr() + __bufsize < __sbin->egptr() before using.
1654	* testsuite/27_io/ostream_inserter_other.cc (test_buffer_4): Add.
1655	(test05): Use test_buffer_4.  Delete unused ostringstream
1656	variables.
1657
16582002-11-18  Paolo Carlini  <pcarlini@unitus.it>
1659
1660	PR libstdc++/6745 (continued)
1661	* include/bits/streambuf.tcc (__copy_streambufs):
1662	Deal with interactive input by using isatty as in the
1663	fix for libstdc++/8399.
1664
16652002-11-17  Jakub Jelinek  <jakub@redhat.com>
1666
1667	* config/linker-map.gnu: Export _S_construct even if size_t is
1668	unsigned long.  Collapse std::codecvt<char>::codecvt(size_t)
1669	and std::codecvt<wchar_t>::codecvt(size_t) into one export pattern.
1670
16712002-11-15  Benjamin Kosnik  <bkoz@redhat.com>
1672            Gabriel Dos Reis  <gdr@integrable-solutions.net>
1673
1674	PR libstdc++/8230
1675	* include/bits/stl_alloc.h: Use builtin_expect for the most
1676	obvious limit checks.
1677	(__default_alloc_template::allocate): Check for null, throw
1678	bad_alloc.
1679	* include/bits/vector.tcc: Formatting tweaks.
1680	* include/bits/stl_vector.h: Same.
1681	* testsuite/20_util/allocator_members.cc (test02): Add.
1682	* testsuite/23_containers/vector_capacity.cc (test03): Add.
1683
16842002-11-15  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1685
1686	* src/ios.cc [_GLIBCPP_HAVE_UNISTD_H]: Include unistd.h.
1687
16882002-11-15  Paolo Carlini  <pcarlini@unitus.it>
1689            Loren J. Rittle  <ljrittle@acm.org>
1690
1691	PR libstdc++/8399
1692	* acinclude.m4
1693	(GLIBCPP_CHECK_UNISTD_DECL_AND_LINKAGE_1): New macro to
1694	check for unistd.h functions.
1695	(GLIBCPP_CHECK_UNISTD_SUPPORT): New macro, check for isatty
1696	in unistd.h.
1697	* configure.in: Call here.
1698	* src/ios.cc (ios_base::Init::_S_ios_create(bool)):
1699	Use _GLIBCPP_HAVE_ISATTY: ifdef, in case of interactive
1700	input __in_size = 1 even when sync_with_stdio is false;
1701	otherwise fall back to __in_size = 1.
1702	* aclocal.m4: Regenerate.
1703	* config.h.in: Regenerate.
1704	* configure: Regenerate.
1705
17062002-11-13  Benjamin Kosnik  <bkoz@redhat.com>
1707
1708	* acconfig.h (HAVE_DRAND48): Add.
1709	(HAVE_GETPAGESIZE): Add.
1710	(HAVE_SETENV): Add.
1711	(HAVE_SIGSETJMP): Add.
1712	* config.h.in: Regenerate.
1713	* configure: Regenerate.
1714
17152002-11-13  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1716
1717	* config/os/hpux/os_defines.h (_GLIBCPP_INST_ATOMICITY_LOCK): Define
1718	on hppa when there is no weak support.
1719
17202002-11-13  Benjamin Kosnik  <bkoz@redhat.com>
1721
1722	PR libstdc++/8230
1723	* include/bits/vector.tcc (vector::reserve): Throw length_error if
1724	requested size is bigger than max_size().
1725	* include/bits/stl_bvector.h (vector<bool>::reserve): Same.
1726	* testsuite/23_containers/vector_capacity.cc (test02): Add.
1727
17282002-11-13  Benjamin Kosnik  <bkoz@redhat.com>
1729
1730	* config/linker-map.gnu: Export all _S_construct.
1731
17322002-11-13  Loren J. Rittle  <ljrittle@acm.org>
1733
1734	PR libstdc++/7445
1735	* src/locale.cc (std::locale::classic()): Weaken locking protocol.
1736
17372002-11-13  Jonathan Wakely  <redi@gcc.gnu.org>
1738
1739	* docs/html/install.html, docs/html/22_locale/locale.html: HTML fix.
1740
17412002-11-11  Benjamin Kosnik  <bkoz@redhat.com>
1742
1743        PR libstdc++/6746
1744        * include/bits/fstream.tcc (filebuf::open): Set input pointers.
1745	* config/io/basic_file_stdio.cc (__basic_file::_M_open_mode): Set
1746	__p_mode as well.
1747	(__basic_file::open): Set to non-block for input.
1748	* testsuite/27_io/istream_unformatted.cc (test12): Add.
1749	(test13): Same.
1750
17512002-11-11  Jonathan Wakely <redi@gcc.gnu.org>
1752
1753	* docs/html/17_intro/howto.html: Make "chapter 22 notes" a link.
1754	* docs/html/faq/index.html: Mention that GCC ships with a newer
1755	version of the library than the last snapshot. Make "see below" a
1756	link. Add missing <html> tag.
1757	* docs/html/faq/index.txt: Regenerate.
1758	* docs/html/22_locale/locale.html, docs/html/22_locale/messages.html,
1759	docs/html/23_containers/howto.html, docs/html/24_iterators/howto.html,
1760	docs/html/25_algorithms/howto.html, docs/html/26_numerics/howto.html,
1761	docs/html/27_io/howto.html, docs/html/ext/howto.html,
1762	docs/html/ext/sgiexts.html: Add missing <html> tag.
1763
17642002-11-07  Phil Edwards  <pme@gcc.gnu.org>
1765            Richard Earnshaw  <rearnsha@arm.com>
1766
1767	* config/cpu/generic/atomicity.h:  Provide atomic __exchange_and_add
1768	and __atomic_add.
1769
17702002-11-08  Paolo Carlini  <pcarlini@unitus.it>
1771
1772	* config/locale/gnu/monetary_members.cc
1773	(moneypunct<wchar_t, true>::_M_initialize_moneypunct(__c_locale,
1774	const char*),
1775	moneypunct<wchar_t, false>::_M_initialize_moneypunct(__c_locale,
1776	const char*)): Tweak parameters for glibc2.3 systems, thus
1777	avoiding unused parameter warnings.
1778
17792002-11-05  Jonathan Wakely  <cow@compsoc.man.ac.uk>
1780
1781	* include/std/std_sstream.h
1782	(basic_stringbuf::str(const __string_type&)):
1783	Prefer data() to c_str(), thus avoiding assigning the
1784	unnecessary NULL-terminator.
1785
17862002-11-05  Benjamin Kosnik  <bkoz@redhat.com>
1787
1788	PR libstdc++/8258
1789	* include/bits/istream.tcc (istream::readsome): Don't set eofbit
1790	for null buffer.
1791	(istream::operator>>(_CharT*)): Use traits_type.
1792	(istream::ws): Same.
1793	(istream::operator>>(string)): Same.
1794	* testsuite/27_io/istream_unformatted.cc (test11): Add.
1795
17962002-11-05  Paolo Carlini  <pcarlini@unitus.it>
1797
1798	PR libstdc++/8466
1799	* include/std/std_sstream.h
1800	(basic_stringbuf::str(const __string_type&)):
1801	Cannot use simple assignment since the COW-nature of v3
1802	basic_string is not taken into account in basic_stringbuf.
1803	* testsuite/27_io/stringstream_members.cc: Add test04 from PR.
1804
18052002-11-05  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1806
1807	* configure.target (hppa*): Define cpu_include_dir.
1808	* config/os/hpux/os_defines.h (_GLIBCPP_INST_ATOMICITY_LOCK): Define.
1809	* src/misc-inst.cc: Instantiate atomicity lock when
1810	_GLIBCPP_INST_ATOMICITY_LOCK is defined.
1811	* config/cpu/hppa/atomicity.h: New file.
1812
18132002-11-05  Benjamin Kosnik  <bkoz@redhat.com>
1814
1815	PR libstdc++/8463
1816	* include/bits/ios_base.h (~ios_base): Make virtual.
1817
18182002-11-04  Benjamin Kosnik  <bkoz@redhat.com>
1819
1820	* config/linker-map.gnu: Export string operator+.
1821	Export __default_alloc_template::_S_force_new.
1822	* testsuite/abi_check.cc: Output tweaks.
1823
18242002-11-01  Benjamin Kosnik  <bkoz@redhat.com>
1825
1826	PR libstdc++/8172
1827	* src/string-inst.cc: Add instantiation.
1828
18292002-11-01  Benjamin Kosnik  <bkoz@redhat.com>
1830
1831	PR libstdc++/7926
1832	* configure.target: Simplify.
1833	* config/cpu/i386/atomicity.h: Remove.
1834	* config/cpu/i386: Remove.
1835	* config/cpu/arm/atomicity.h: Remove.
1836	* config/cpu/arm: Remove.
1837	* config/cpu/x86-64/atomicity.h: Remove.
1838	* config/cpu/x86-64: Remove.
1839
18402002-11-01  Christian Ehrhardt  <ehrhardt@mathematik.uni-ulm.de>
1841
1842	PR libstdc++/8197
1843	* config/link-map.gnu: Export math stubbs.
1844
18452002-11-01  Benjamin Kosnik  <bkoz@redhat.com>
1846
1847	PR libstdc++/8318
1848	* include/std/std_iostream.h: Tweak.
1849	* include/std/std_iosfwd.h: Add _GLIBCPP_USE_WCHAR_T.
1850	* include/std/std_iomanip.h: Same.
1851	* include/bits/stringfwd.h: Same.
1852	* include/bits/basic_string.tcc: Same.
1853	* include/bits/sstream.tcc: Same.
1854	* include/bits/fstream.tcc: Same.
1855	* include/bits/basic_ios.tcc: Same.
1856	* include/bits/streambuf.tcc: Same.
1857	* include/bits/locale_facets.tcc: Same.
1858
18592002-11-01  John Carter  <john.carter@tait.co.nz>
1860
1861	PR libstdc++/7961
1862	* include/bits/basic_string.tcc
1863	(compare(const _CharT* __s)): Don't access __s past its length.
1864
18652002-10-31  Benjamin Kosnik  <bkoz@redhat.com>
1866
1867	PR libstdc++/8348
1868	* include/bits/istream.tcc (istream::tellg): Remove sentry bits.
1869	(istream::seekg): Same.
1870	* testsuite/27_io/istream_seeks.cc (test06): New.
1871
18722002-10-28  Jason Thorpe  <thorpej@wasabisystems.com>
1873
1874	* testsuite/thread/pthread5.cc: Include <unistd.h>
1875	if _GLIBCPP_HAVE_UNISTD_H is defined.
1876	(main): Only use pthread_attr_setscope if
1877	_POSIX_THREAD_PRIORITY_SCHEDULING is defined.
1878
18792002-10-28  Jason Thorpe  <thorpej@wasabisystems.com>
1880
1881	* testsuite/thread/pthread1.cc: Enable on *-*-netbsd*.
1882	* testsuite/thread/pthread2.cc: Likewise.
1883	* testsuite/thread/pthread3.cc: Likewise.
1884	* testsuite/thread/pthread4.cc: Likewise.
1885	* testsuite/thread/pthread5.cc: Likewise.
1886	* testsuite/thread/pthread6.cc: Likewise.
1887
18882002-10-27  Paolo Carlini  <pcarlini@unitus.it>
1889
1890	PR libstdc++/8347
1891	* include/bits/basic_string.tcc
1892	(string::_S_construct(_InIter, _InIter, const _Alloc&,
1893	forward_iterator_tag)): Do not throw logic error if
1894	__beg == NULL && __end == __beg.
1895	(string::string(const _CharT*, const _Alloc&)): Tweak.
1896	* testsuite/21_strings/ctor_copy_dtor.cc: Add test05 from PR.
1897
18982002-10-24  Hans-Peter Nilsson  <hp@bitrange.com>
1899
1900	PR other/3337
1901	PR bootstrap/6763
1902	PR bootstrap/8122
1903	* testsuite/testsuite_hooks.cc (__set_testsuite_memlimit): Use
1904	__typeof__ (r.rlim_cur), not rlim_t in declaration of limit.
1905
19062002-10-23  Jakub Jelinek  <jakub@redhat.com>
1907
1908	* testsuite/22_locale/num_put_members_char.cc (test01): Swap size
1909	and decimal_point arguments of find.
1910	* testsuite/22_locale/num_put_members_wchar_t.cc (test01): Likewise.
1911
19122002-10-22  Jakub Jelinek  <jakub@redhat.com>
1913
1914	* Makefile.am (check-abi, new-abi-baseline): Use @glibcpp_srcdir@
1915	instead of ${top_srcdir}.
1916	* Makefile.in: Rebuilt.
1917
19182002-10-22  Loren J. Rittle  <ljrittle@acm.org>
1919
1920	* testsuite/18_support/numeric_limits.cc (test_extrema<long double>):
1921	Remove specialization for FreeBSD systems.
1922
19232002-10-18  Loren J. Rittle  <ljrittle@acm.org>
1924
1925	* configure.target (freebsd*): Use abi_baseline_triplet.
1926	* config/abi/i386-unknown-freebsd4/baseline_symbols.txt: New file.
1927	* config/abi/i386-unknown-freebsd4.7/baseline_symbols.txt: Remove.
1928
1929	* testsuite/thread/pthread1.cc: Remove needless workaround
1930	for FreeBSD 5.
1931
19322002-10-18  Loren J. Rittle  <ljrittle@acm.org>
1933	    Brad Spencer  <spencer@infointeractive.com>
1934	    (provided alternate patch and improvements)
1935
1936	* docs/html/23_containers/howto.html (GLIBCPP_FORCE_NEW): Document
1937	new environment variable which replaces all uses of __USE_MALLOC
1938	macro.
1939	* docs/html/ext/howto.html (GLIBCPP_FORCE_NEW): Likewise.
1940	(__mem_interface): Remove all references to old internal typedef.
1941	* include/backward/alloc.h (__USE_MALLOC): Remove it and all
1942	guarded code.
1943	* include/bits/c++config (__USE_MALLOC): Update related error
1944	message and comment.
1945	* include/bits/stl_alloc.h (__USE_MALLOC): Remove it and all
1946	guarded code.  Update all related comments.
1947	(__mem_interface): Unconditionally replace it with __new_alloc.
1948	However, leave the typedef around in case anyone used it.
1949	(__default_alloc_template<>::_S_force_new): New class static.
1950	(__default_alloc_template<>::allocate, deallocate): Add
1951	run-time controlled feature similar to what __USE_MALLOC code
1952	path had provided.
1953	* src/stl-inst.cc (__USE_MALLOC): Remove it and all
1954	guarded code.
1955	* testsuite/21_strings/capacity.cc: Remove reference to __USE_MALLOC.
1956	Add documentation on GLIBCPP_FORCE_NEW environment variable.
1957	* testsuite/ext/allocators.cc: Likewise.
1958
19592002-10-18  Phil Edwards  <pme@gcc.gnu.org>
1960
1961	* configure.in:  Use target, not target_alias, when matching triplet
1962	patterns.
1963	* configure:  Regenerate.
1964
19652002-10-17  Momchil Velikov  <velco@fadata.bg>
1966	    Loren J. Rittle  <ljrittle@acm.org>
1967
1968	* configure.in: Add *-freebsd* to cross list.
1969	* configure: Rebuilt.
1970
19712002-10-16  Benjamin Kosnik  <bkoz@redhat.com>
1972
1973	* include/bits/locale_facets.h (__timepunct::__timepunct): Allocate
1974	_M_name_timepunct.
1975	(__timepunct::~__timepunct): Deallocate, remove specialization
1976	declarations.
1977	(messages::messages): Allocate _M_name_messages.
1978	(messages::~messages): Deallocate.
1979	(messages_byname): Same.
1980	* config/locale/gnu/time_members.cc (__timepunct::~__timepunct):
1981	Remove.
1982	* config/locale/generic/time_members.cc (__timepunct::~__timepunct):
1983	Remove.
1984
1985	* docs/html/install.html: Add es_MX, en_PH to required locales list.
1986
19872002-10-16  Benjamin Kosnik  <bkoz@redhat.com>
1988
1989	* config/linker-map.gnu: Add exports for codecvt constructors
1990	where size_t == unsigned long.
1991
19922002-10-14  Benjamin Kosnik  <bkoz@redhat.com>
1993
1994	* src/globals.cc (__gnu_cxx::c_locale_impl_compat): Add, alias to
1995	c_locale_impl.
1996	* testsuite/abi_check.cc (line_to_symbol_info): Collect size info.
1997	* docs/html/abi.txt: Update.
1998
19992002-10-14  Benjamin Kosnik  <bkoz@redhat.com>
2000
2001	* testsuite/22_locale/static_members.cc (test02): Less provincial.
2002
20032002-10-14  Benjamin Kosnik  <bkoz@redhat.com>
2004
2005	* testsuite/22_locale/static_members.cc (test02): Disable for
2006	systems without named locale support.
2007	* testsuite/22_locale/ctor_copy_dtor.cc (test04): Don't assume
2008	running the testsuites in "C" environment.
2009	Add new tests.
2010	* docs/html/22_locale/locale.html: Update.
2011
20122002-10-13  Danny Smith  <dannysmith@users.sourceforge.net>
2013
2014	* include/bits/stl_threads.h (_GLIBCPP_mutex,
2015	_GLIBCPP_mutex_init,_GLIBCPP_mutex_address,
2016	_GLIBCPP_mutex_address_init, _GLIBCPP_once):
2017	Declare in namespace __gnu_cxx.
2018	(_STL_mutex_lock::_M_initialize): Qualify __gnu_cxx
2019	names.
2020	Adjust copyright.
2021
20222002-10-12  Benjamin Kosnik  <bkoz@redhat.com>
2023
2024	* testsuite/abi_check.cc (hash<string>): Specialize.
2025	Simplify. Check compatible symbol versions.
2026	* config/linker-map.gnu: Clarify, explicitly export
2027	std::codecvt::c* symbols.
2028
2029	* testsuite/22_locale/static_members.cc (test02): Avoid null strings.
2030
20312002-10-12  Jonathan Wakely  <jw@kayari.org>
2032            Gabriel Dos Reis  <gdr@integrable-solutions.net>
2033
2034	* docs/html/21_strings/howto.html#5:  Correct nasting of XHTML
2035	elements.  Correct allocator-related text.
2036
20372002-10-11  Benjamin Kosnik  <bkoz@redhat.com>
2038
2039	* testsuite/22_locale/static_members.cc (test02): Fix.
2040
20412002-10-11  Benjamin Kosnik  <bkoz@redhat.com>
2042
2043	* acconfig.h (_GLIBCPP_SYMVER): Add.
2044	(_GLIBCPP_ASM_SYMVER): Add.
2045	* acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Define _GLIBCPP_SYMVER.
2046	* aclocal.m4: Regenerate.
2047	* config.h.in: Regenerate.
2048	* configure: Regenerate.
2049	* include/bits/c++config (_GLIBCPP_AT_AT): Define, as an expedient
2050	hack around m4 issues with quoting '@'.
2051	* src/locale.cc: Use _GLIBCPP_ASM_SYMVER.
2052	* src/globals.cc: Same.
2053
2054	* testsuite/22_locale/ctor_copy_dtor.cc (test04): Fix for
2055	non-glibc systems.
2056
20572002-10-10  Benjamin Kosnik  <bkoz@redhat.com>
2058
2059	* config/linker-map.gnu (GLIBCPP_3.2.1): Add.
2060	(GLIBCPP_3.2): Don't export locale::_S_*.
2061	* src/ios.cc: Move globals into __gnu_cxx. Make old exported
2062	symbols match.
2063	* src/locale.cc: Same.
2064	* src/localename.cc: Same.
2065	* src/globals.cc: Same.
2066
20672002-10-10  Phil Edwards  <pme@gcc.gnu.org>
2068
2069	* docs/html/21_strings/howto.html:  Write #5, char_traits.
2070	* docs/html/17_intro/porting.texi:  Expand on os_include_dir.
2071	* docs/html/17_intro/porting.html:  Regenerate.
2072
20732002-10-09  Benjamin Kosnik  <bkoz@redhat.com>
2074
2075	* src/locale.cc: Fix comments, move ctors together.
2076	* testsuite/22_locale/static_members.cc (test03): Add.
2077
20782002-10-08  Jonathan Lennox  <lennox@cs.columbia.edu>
2079
2080	PR libstdc++/8071, libstdc++/8127, libstdc++/6745
2081	* streambuf.tcc (__copy_streambufs): Handle cases where
2082	__sbin->in_avail() returns 0, or where __sbin doesn't set gptr().
2083	* testsuite/27_io/ostream_inserter_other.cc (test05): Add.
2084
20852002-10-08  Paolo Carlini  <pcarlini@unitus.it>
2086	    Benjamin Kosnik  <bkoz@redhat.com>
2087
2088	* include/bits/localefwd.h (class locale): Add static member
2089	_S_num_extra_categories, encoding the number of additional
2090	categories.
2091	Change _S_num_categories to _S_categories_size.
2092	(class locale::_Impl): Add _M_c_cats.
2093	(class locale::_Impl::_M_names): Change to array of chars.
2094	(class locale::_Impl::_M_check_same_name): Use
2095	_S_extra_categories_size, tweak.
2096	(locale::locale(const locale&, _Facet*)): Ditto.
2097	* src/locale.cc (locale::locale(const char* )): Rewrite to deal
2098	with the environment in a POSIX-compliant way while being thread
2099	safe.
2100	(locale::name()): Update to output POSIX environment strings.
2101	* src/localename.cc
2102	(locale::_Impl::_Impl(const _Impl&, size_t): Use
2103	_S_categories_size_*, tweak.
2104	(locale::_Impl::_Impl(facet**, size_t, bool)): Ditto.
2105	(locale::_Impl::_Impl(const char*, size_t)): Name each category
2106	individually.
2107	(locale::_Impl::_M_replace_categories): Use strcpy.
2108
2109	* include/bits/locale_facets.h (numpunct::_M_initialize_numpunct):
2110	Change default argument to NULL from _S_c_locale.
2111	(timepunct::_M_initialize_timepunct): Same.
2112	_S_c_locale cleanups.
2113	* src/codecvt.c: _S_c_locale simplification.
2114	* src/ctype.c: Same.
2115	* src/globals.cc: Add fake_name.
2116	* src/locale-inst.cc: Remove extra includes.
2117	* src/locale.cc: Remove extra includes.
2118	Add _S_extra_categories_size definition.
2119	Correct "C" initialization.
2120	(locale::facet::facet): Don't initialize _S_c_locale.
2121	(locale::facet::_M_remove_reference): Adjust.
2122	* src/localename: Use facet_vec, facet_name.
2123	(locale::_Impl::_Impl(facet** __f, size_t __refs, bool)): Set
2124	facet ref counts to one. Initialize _S_c_locale.
2125	(locale::_Impl::_M_install_facet(id*, facet*)): Adjust facet ref
2126	counts when installing unilaterally.
2127
2128	* config/locale/generic/c_locale.cc: Add _S_categories definition.
2129	* config/locale/generic/c_locale.h: Add _GLIBCPP_NUM_CATEGORIES macro.
2130	* config/locale/generic/time_members.cc: _S_c_locale cleanup.
2131
2132	* config/locale/gnu/c_locale.cc: Add _S_categories definition.
2133	(_S_destroy_c_locale): Move checks against _S_c_locale here.
2134	* config/locale/gnu/c_locale.h: Add _GLIBCPP_NUM_CATEGORIES macro.
2135	* config/locale/gnu/ctype_members.cc: Simplify _S_destroy_c_locale
2136	calls, _S_c_locale usage.
2137	* config/locale/gnu/monetary_members.cc: Same, tweaks.
2138	* config/locale/gnu/monetary_members.cc: Same.
2139	* config/locale/gnu/time_members.cc: Same.
2140	* config/os/gnu-linux/ctype_noninline.h: Use locale::classic().
2141
2142	* docs/html/22_locale/locale.html: Add bits about global locales
2143	and "C" setlocale.
2144
2145	* testsuite/22_locale/facet.cc (test02): Add.
2146	* testsuite/22_locale/static_members.cc (test02): Add.
2147	* testsuite/22_locale/ctor_copy_dtor.cc (test04): Add.
2148
21492002-10-07  Jonathan Wakely  <jw@kayari.org>
2150
2151	* docs/html/configopts.html, docs/html/documentation.html,
2152	docs/html/explanations.html, docs/html/install.html,
2153	docs/html/17_intro/contribute.html, docs/html/17_intro/howto.html,
2154	docs/html/17_intro/license.html, docs/html/18_support/howto.html,
2155	docs/html/19_diagnostics/howto.html, docs/html/20_util/howto.html,
2156	docs/html/21_strings/howto.html, docs/html/22_locale/codecvt.html,
2157	docs/html/22_locale/ctype.html, docs/html/22_locale/howto.html,
2158	docs/html/22_locale/locale.html, docs/html/22_locale/messages.html,
2159	docs/html/23_containers/howto.html, docs/html/24_iterators/howto.html,
2160	docs/html/25_algorithms/howto.html, docs/html/26_numerics/howto.html,
2161	docs/html/27_io/howto.html, docs/html/ext/howto.html,
2162	docs/html/ext/sgiexts.html, docs/html/faq/index.html:  Add DOCTYPEs.
2163
21642002-10-03  Richard Earnshaw  <rearnsha@arm.com>
2165
2166	PR libstdc++/3584
2167	* config/cpu/arm/atomicity.h (__exchange_and_add): Don't try to use
2168	ASM sequences that don't give us atomic addition operations.  Instead
2169	just add a comment explaining why it doesn't work.
2170	(__atomic_add): Just use __exchange_and_add.
2171	(__test_and_set, __always_swap): Delete.
2172
21732002-10-02  Andreas Jaeger  <aj@suse.de>
2174
2175	* config/abi/x86_64-unknown-linux-gnu/baseline_symbols.txt:
2176	New file.
2177
21782002-10-01  Phil Edwards  <pme@gcc.gnu.org>
2179
2180	* Makefile.am (check-abi):  Add @ to rule.
2181	* Makefile.in:  Regenerated.
2182
21832002-09-27  Paolo Carlini  <pcarlini@unitus.it>
2184
2185	* include/bits/locale_facets.tcc (num_put::_M_widen_int):
2186	Deal correctly with grouped, showbased (oct or hex) zero.
2187	* testsuite/22_locale/num_put_members_char.cc: Add test05.
2188	* testsuite/22_locale/num_put_members_wchar_t.cc: Ditto.
2189
21902002-09-27  Richard Henderson  <rth@redhat.com>
2191
2192	* config/os/hpux/cpu_limits.h: Remove.
2193
2194	* include/std/std_limits.h (numeric_limits<T>::is_iec559): False
2195	if denormals are not supported.
2196
21972002-09-25  Benjamin Kosnik  <bkoz@redhat.com>
2198
2199	* include/Makefile.am (target_headers): Remove cpu_limits.h.
2200	* include/Makefile.in: Regenerate.
2201	* configure.in (CPU_LIMITS_INC_SRCDIR): Remove
2202	* configure: Regenerate.
2203	* configure.target (CPULIMITS): Remove.
2204
2205	* include/std/std_limits.h: Remove cpu_limits.h include.
2206
2207	* config/os/solaris/solaris2.7/os_defines.h (__glibcpp_long_bits):
2208	Remove.
2209	* config/os/irix/irix6.5/os_defines.h
2210	(__glibcpp_long_double_bits): Remove.
2211	(__glibcpp_wchar_t_bits): Remove.
2212	(__glibcpp_long_bits): Remove.
2213	* config/os/irix/irix5.2/os_defines.h
2214	(__glibcpp_long_double_bits): Remove.
2215	(__glibcpp_long_bits): Remove.
2216	* config/os/hpux/os_defines.h (__glibcpp_wchar_t_is_signed): Remove.
2217	* config/os/bsd/freebsd/os_defines.h:
2218	(__glibcpp_long_double_bits): Remove.
2219	* config/os/aix/os_defines.h (__glibcpp_wchar_t_bits): Remove.
2220	(__glibcpp_wchar_t_is_signed): Remove.
2221	(__glibcpp_long_bits): Remove.
2222	* config/os/gnu-linux/os_defines.h (__glibcpp_long_bits): Remove.
2223	(__glibcpp_long_double_bits): Remove.
2224
2225	* config/os/osf/osf5.0/cpu_limits.h: Remove.
2226	* config/cpu/alpha/cpu_limits.h: Remove.
2227	* config/cpu/arm/cpu_limits.h: Remove.
2228	* config/cpu/cris/cpu_limits.h: Remove.
2229	* config/cpu/generic/cpu_limits.h: Remove.
2230	* config/cpu/generic/limits.h: Remove.
2231	* config/cpu/ia64/cpu_limits.h: Remove.
2232	* config/cpu/m68k/cpu_limits.h: Remove.
2233	* config/cpu/mmix/cpu_limits.h: Remove.
2234	* config/cpu/powerpc/cpu_limits.h: Remove.
2235	* config/cpu/S390/cpu_limits.h: Remove.
2236
22372002-09-25  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
2238
2239	* testsuite/18_support/numeric_limits.cc: Check the maximum and
2240	minimum values of the wchar_t type.
2241
22422002-09-25  Mark Mitchell  <mark@codesourcery.com>
2243
2244	* include/std/std_limits.h (numeric_limits<unsigned char>::digits):
2245	Fix typo.
2246
22472002-09-23  Richard Henderson  <rth@redhat.com>
2248
2249	* include/std/std_limits.h (__glibcpp_plain_char_is_signed,
2250	__glibcpp_wchar_t_is_signed, __glibcpp_s8_max, __glibcpp_s8_min,
2251	__glibcpp_s8_digits, __glibcpp_s8_digits10, __glibcpp_u8_min,
2252	__glibcpp_u8_max, __glibcpp_u8_digits, __glibcpp_u8_digits10,
2253	__glibcpp_s16_max, __glibcpp_s16_min, __glibcpp_s16_digits,
2254	__glibcpp_s16_digits10, __glibcpp_u16_min, __glibcpp_u16_max,
2255	__glibcpp_u16_digits, __glibcpp_u16_digits10, __glibcpp_s32_max,
2256	__glibcpp_s32_min, __glibcpp_s32_digits, __glibcpp_s32_digits10,
2257	__glibcpp_u32_min, __glibcpp_u32_max, __glibcpp_u32_digits,
2258	__glibcpp_u32_digits10, __glibcpp_s64_max, __glibcpp_s64_min,
2259	__glibcpp_s64_digits, __glibcpp_s64_digits10, __glibcpp_u64_min,
2260	__glibcpp_u64_max, __glibcpp_u64_digits, __glibcpp_u64_digits10,
2261	__glibcpp_bool_digits, __glibcpp_signed_char_min,
2262	__glibcpp_signed_char_max, __glibcpp_signed_char_digits,
2263	__glibcpp_signed_char_digits10, __glibcpp_unsigned_char_min,
2264	__glibcpp_unsigned_char_max, __glibcpp_unsigned_char_digits,
2265	__glibcpp_unsigned_char_digits10, __glibcpp_char_min,
2266	__glibcpp_char_max, __glibcpp_char_digits, __glibcpp_char_digits10,
2267	__glibcpp_signed_short_min, __glibcpp_signed_short_max,
2268	__glibcpp_signed_short_digits, __glibcpp_signed_short_digits10,
2269	__glibcpp_unsigned_short_min, __glibcpp_unsigned_short_max,
2270	__glibcpp_unsigned_short_digits, __glibcpp_unsigned_short_digits10,
2271	__glibcpp_signed_int_min, __glibcpp_signed_int_max,
2272	__glibcpp_signed_int_digits, __glibcpp_signed_int_digits10,
2273	__glibcpp_unsigned_int_min, __glibcpp_unsigned_int_max,
2274	__glibcpp_unsigned_int_digits, __glibcpp_unsigned_int_digits10,
2275	__glibcpp_signed_long_min, __glibcpp_signed_long_max,
2276	__glibcpp_unsigned_long_digits, __glibcpp_unsigned_long_digits10,
2277	__glibcpp_signed_long_long_min, __glibcpp_signed_long_long_max,
2278	__glibcpp_signed_long_long_digits, __glibcpp_signed_long_long_digits10,
2279	__glibcpp_wchar_t_min, __glibcpp_wchar_t_max, __glibcpp_wchar_t_digits,
2280	__glibcpp_wchar_t_digits10): Remove.
2281	(__glibcpp_byte, __glibcpp_word_bits, __glibcpp_word): Remove.
2282	(__float_storage, __double_storage, __long_double_storage): Remove.
2283	(__glibcpp_signed, __glibcpp_min, __glibcpp_max): New.
2284	(__glibcpp_digits, __glibcpp_digits10): New.
2285	(numeric_limits<T>::min): Use __glibcpp_min or limits.h builtins.
2286	(numeric_limits<T>::max): Use __glibcpp_max or limits.h builtins.
2287	(numeric_limits<T>::is_signed, T=char,wchar_t): Use __glibcpp_signed.
2288	(numeric_limits<T>::digits): Use __glibcpp_digits.
2289	(numeric_limits<T>::digits10): Use __glibcpp_digits10.
2290	* testsuite/18_support/numeric_limits.cc (test03): Don't use
2291	__glibcpp_s8_digits10 et al; check vs the installed versions
2292	of digits10 for particular sizes.
2293
2294        * include/std/std_limits.h (__glibcpp_float_is_modulo,
2295        __glibcpp_double_is_modulo, __glibcpp_long_double_is_modulo): Kill.
2296        (numeric_limits<T>::is_modulo, T floating): Use false.
2297
22982002-09-22  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2299
2300	* Makefile.am (all-multi): Fix multilib parallel build.
2301
23022002-09-22  Richard Henderson  <rth@redhat.com>
2303
2304	* include/std/std_limits.h (__glibcpp_f32_round_error,
2305	__glibcpp_f64_round_error, __glibcpp_f80_round_error,
2306	__glibcpp_f96_round_error, __glibcpp_f128_round_error,
2307	__glibcpp_float_round_error, __glibcpp_double_round_error,
2308	__glibcpp_long_double_round_error, __glibcpp_float_round_style,
2309	__glibcpp_double_round_style, __glibcpp_long_double_round_style): Kill.
2310	(numeric_limits<char>::epsilon, round_error): Use constant 0.
2311	(numeric_limits<float>::round_error): Use constant 0.5.
2312	(numeric_limits<float>::round_style): Use round_to_nearest.
2313	(numeric_limits<double>, numeric_limits<long double>): Similarly.
2314
2315	* include/std/std_limits.h (__glibcpp_f32_is_iec559,
2316	__glibcpp_f64_is_iec559, __glibcpp_f80_is_iec559,
2317	__glibcpp_f96_is_iec559, __glibcpp_f128_is_iec559,
2318	__glibcpp_float_is_iec559, __glibcpp_double_is_iec559,
2319	__glibcpp_long_double_is_iec559): Remove.
2320	(numeric_limits<float>::is_iec559): Use has_infinity & has_quiet_NaN.
2321	(numeric_limits<double>, numeric_limits<long double>): Similarly.
2322
2323	* include/std/std_limits.h (__glibcpp_integral_traps): New.
2324	(__glibcpp_char_traps, __glibcpp_short_traps, __glibcpp_int_traps,
2325	__glibcpp_long_traps, __glibcpp_wchar_t_traps,
2326	__glibcpp_long_long_traps, __glibcpp_plain_char_traps,
2327	__glibcpp_signed_char_traps, __glibcpp_unsigned_char_traps,
2328	__glibcpp_signed_short_traps, __glibcpp_unsigned_short_traps,
2329	__glibcpp_signed_int_traps, __glibcpp_unsigned_int_traps,
2330	__glibcpp_signed_long_traps, __glibcpp_unsigned_long_traps,
2331	__glibcpp_signed_long_long_traps, __glibcpp_unsigned_long_long_traps,
2332	__glibcpp_char_is_modulo, __glibcpp_signed_char_is_modulo,
2333	__glibcpp_signed_short_is_modulo, __glibcpp_signed_int_is_modulo,
2334	__glibcpp_signed_long_is_modulo, __glibcpp_signed_long_long_is_modulo,
2335	__glibcpp_wchar_t_is_modulo, __glibcpp_float_is_bounded,
2336	__glibcpp_double_is_bounded, __glibcpp_long_double_is_bounded): Kill.
2337	(numeric_limits<T>::traps, T integral): Use __glibcpp_integral_traps.
2338	(numeric_limits<T>::is_modulo, T integral): Use true.
2339	(numeric_limits<T>::is_bounded, T floating): Use true.
2340
23412002-09-18  Loren J. Rittle  <ljrittle@acm.org>
2342
2343	* testsuite/18_support/numeric_limits.cc (test_epsilon): New.
2344
23452002-09-18  Richard Henderson  <rth@redhat.com>
2346
2347	* testsuite/18_support/numeric_limits.cc: Add -mieee for alpha.
2348
23492002-09-16  Benjamin Kosnik  <bkoz@redhat.com>
2350
2351	* include/c_shadow: Remove.
2352	* include/bits/generic_shadow.h: Remove.
2353	* include/Makefile.am: Remove generic_shadow.h.
2354	* acinclude.m4: Remove c_shadow references.
2355	* aclocal.m4: Regenerate.
2356	* configure: Regenerate.
2357	* mkcshadow: Remove.
2358	* mkinclosure: Remove.
2359
23602002-09-16  Loren J. Rittle  <ljrittle@acm.org>
2361
2362	libstdc++/7922
2363	* include/ext/stl_rope.h (rope<>): Qualify dependent names
2364	with `typename'.
2365
23662002-09-16  Richard Henderson  <rth@redhat.com>
2367
2368	* include/std/std_limits.h (__glibcpp_f32_QNaN_bytes,
2369	__glibcpp_f32_has_QNaN, __glibcpp_f32_SNaN_bytes,
2370	__glibcpp_f32_has_SNaN, __glibcpp_f64_QNaN_bytes,
2371	__glibcpp_f64_has_QNaN, __glibcpp_f64_SNaN_bytes,
2372	__glibcpp_f64_has_SNaN, __glibcpp_f80_QNaN_bytes,
2373	__glibcpp_f80_has_QNaN, __glibcpp_f80_SNaN_bytes,
2374	__glibcpp_f80_has_SNaN, __glibcpp_f96_QNaN_bytes,
2375	__glibcpp_f96_has_QNaN, __glibcpp_f96_SNaN_bytes,
2376	__glibcpp_f96_has_SNaN, __glibcpp_f128_QNaN_bytes,
2377	__glibcpp_f128_has_QNaN, __glibcpp_f128_SNaN_bytes,
2378	__glibcpp_f128_has_SNaN, __glibcpp_float_QNaN_bytes,
2379	__glibcpp_float_has_QNaN, __glibcpp_float_SNaN_bytes,
2380	__glibcpp_float_has_SNaN, __glibcpp_double_QNaN_bytes,
2381	__glibcpp_double_has_QNaN, __glibcpp_double_SNaN_bytes,
2382	__glibcpp_double_has_SNaN, __glibcpp_long_double_QNaN_bytes,
2383	__glibcpp_long_double_has_QNaN, __glibcpp_long_double_SNaN_bytes,
2384	__glibcpp_long_double_has_SNaN): Remove.
2385	(__glibcpp_f128_is_iec559): True if IEEE.
2386	(__glibcpp_float_QNaN, __glibcpp_float_SNaN): Remove.
2387	(__glibcpp_double_QNaN, __glibcpp_double_SNaN): Remove.
2388	(__glibcpp_long_double_QNaN, __glibcpp_long_double_SNaN): Remove.
2389	(std::numeric_limits<float>::has_quiet_NaN): Use __builtin_nanf.
2390	(std::numeric_limits<float>::has_signaling_NaN): Mirror has_quiet_NaN.
2391	(std::numeric_limits<float>::quiet_NaN): Use __builtin_nanf.
2392	(std::numeric_limits<float>::signaling_NaN): Use __builtin_nansf.
2393	(std::numeric_limits<double>): Similarly.
2394	(std::numeric_limits<long double>): Similarly.
2395	* src/limits.cc (__glibcpp_float_QNaN, __glibcpp_float_SNaN): Remove.
2396	(__glibcpp_double_QNaN, __glibcpp_double_SNaN): Remove.
2397	(__glibcpp_long_double_QNaN, __glibcpp_long_double_SNaN): Remove.
2398
2399	* testsuite/18_support/numeric_limits.cc (test_infinity): New.
2400	(test_denorm_min, test_qnan, test_is_iec559): New.
2401
24022002-09-16  Phil Edwards  <pme@gcc.gnu.org>
2403
2404	* testsuite/abi_check.cc:  Pull shell fragments out into...
2405	* config/abi/extract_symvers:  ...here.  New file.
2406	* Makefile.am (check_abi):  Change to match.
2407	(new-abi-baseline):  New target.
2408	* Makefile.in:  Regenerated.
2409
24102002-09-16  Richard Henderson  <rth@redhat.com>
2411
2412	* include/std/std_limits.h (__glibcpp_f32_denorm_min_bytes,
2413	__glibcpp_f32_has_denorm, __glibcpp_f64_denorm_min_bytes,
2414	__glibcpp_f64_has_denorm, __glibcpp_f80_denorm_min_bytes,
2415	__glibcpp_f80_has_denorm, __glibcpp_f96_denorm_min_bytes,
2416	__glibcpp_f96_has_denorm, __glibcpp_f128_denorm_min_bytes,
2417	__glibcpp_f128_has_denorm, __glibcpp_float_denorm_min_bytes,
2418	__glibcpp_float_has_denorm, __glibcpp_double_denorm_min_bytes,
2419	__glibcpp_double_has_denorm, __glibcpp_long_double_denorm_min_bytes,
2420	__glibcpp_long_double_has_denorm): Remove.
2421	(__glibcpp_float_denorm_min, __glibcpp_double_denorm_min,
2422	__glibcpp_long_double_denorm_min): Remove.
2423	(std::numeric_limits<float>::has_denorm): Use __FLT_DENORM_MIN__.
2424	(std::numeric_limits<float>::denorm_min): Likewise.
2425	(std::numeric_limits<double>): Similarly.
2426	(std::numeric_limits<long double>): Similarly.
2427	* src/limits.cc (__glibcpp_float_denorm_min,
2428	__glibcpp_double_denorm_min, __glibcpp_long_double_denorm_min): Remove.
2429
24302002-09-13  Andy Felt  <afelt@uwsp.edu>
2431
2432	* docs/html/17_intro/howto.html:  Update link.
2433
24342002-09-13  Phil Edwards  <pme@gcc.gnu.org>
2435
2436	* docs/doxygen/run_doxygen:  Massage man page for Iterator_types.3.
2437	* docs/html/faq/index.html:  Whitespace fixes.
2438
24392002-09-12  Benjamin Kosnik  <bkoz@redhat.com>
2440
2441	* libmath/Makefile.am (LIBTOOL): Use --tag CC always for this
2442	directory.
2443	* libmath/Makefile.in: Regenerate.
2444	* src/Makefile.am: Tweak comment.
2445	* src/Makefile.in: Regenerate.
2446
2447	* config/locale/gnu/c_locale.h: Remove warnings.
2448	Inject __uselocale into __gnu_cxx.
2449	* config/locale/generic/c_locale.h: Match.
2450
24512002-09-11  Benjamin Kosnik  <bkoz@redhat.com>
2452
2453	* include/bits/locale_facets.tcc (__convert_from_v): Remove.
2454	* config/locale/gnu/c_locale.h (__convert_from_v): Add.
2455	* config/locale/generic/c_locale.h (__convert_from_v): Add.
2456
24572002-09-11  Paolo Carlini  <pcarlini@unitus.it>
2458
2459	* include/bits/locale_facets.tcc (__convert_from_v):
2460	Use __uselocale instead of setlocale for glibc 2.3+.
2461
24622002-09-10  Benjamin Kosnik  <bkoz@redhat.com>
2463
2464	* src/Makefile.am (sources): Edit.
2465	(target_sources): New.
2466	(target_sources_extra): New.
2467	* src/Makefile.in: Regenerate.
2468	* acinclude.m4: Set CCODECVT_CC.
2469	* aclocal.m4: Regenerate.
2470	* configure: Regenerate.
2471	* src/locale.cc: Move ctype definitions...
2472	* src/ctype.cc: ...here. New file.
2473	* src/locale.cc: Move codecvt definitions...
2474	* src/codecvt.cc: ...here.
2475	* config/generic/codecvt_members.cc: ...and here.
2476	* config/gnu/codecvt_members.cc: ...and here.
2477	* include/bits/codecvt.h: Tweak.
2478	* include/bits/locale_facets: Tweak.
2479
2480	* src/bitset.cc: Correct license text.
2481	* src/concept-inst.cc: Same.
2482	* src/strstream.cc: Same.
2483	* src/vterminate.cc: Same.
2484
24852002-09-10  Gabriel Dos Reis  <gdr@soliton.integrable-solutions.net>
2486
2487	* include/bits/stl_vector.h (vector<>): Don't use a name with
2488	different meanings before and after re-evaluation in the completed
2489	scope.
2490	* include/bits/basic_string.h (basic_string<>): Likewise.
2491	* include/bits/stl_bvector.h (vector<bool>): Likewise.
2492	* include/bits/stl_deque.h (std): Likewise.
2493	* include/bits/stl_list.h (list<>): Likewise.
2494	* include/bits/stl_tree.h (_Rb_tree<>): Likewise.
2495
24962002-09-10  Paolo Carlini  <pcarlini@unitus.it>
2497
2498	* include/bits/codecvt.h (class __codecvt_abstract_base):
2499	Add __c_locale type _M_c_locale_codecvt member.
2500	(class codecvt<char, char, mbstate_t>,
2501	class codecvt<wchar_t, char, mbstate_t>): Add new
2502	codecvt(__c_locale, size_t) constructor.
2503	(codecvt_byname::codecvt_byname): Update.
2504	* src/codecvt.cc (class codecvt<char, char, mbstate_t>,
2505	class codecvt<wchar_t, char, mbstate_t>): Update codecvt(size_t)
2506	constructor and ~codecvt() destructor; define
2507	codecvt(__c_locale, size_t) constructor.
2508	(codecvt::do_out): Switch to _M_c_locale_codecvt around wcsrtombs call.
2509	(codecvt::do_in): Ditto for mbsrtowcs call.
2510	* src/localename.cc (locale::_Impl::_Impl(const char*, size_t)):
2511	Tweak construction of codecvt facets.
2512
25132002-09-10  Danny Smith  <dannysmith@users.sourceforge.net>
2514
2515	* include/bits/locale_facets.tcc (__convert_from_v):
2516	Replace strdup with ISO malloc and strcpy.
2517
25182002-09-09  Benjamin Kosnik  <bkoz@redhat.com>
2519
2520	* docs/html/configopts.html: Change grouping. Note ABI impacts.
2521	Update information for locale model defaults.
2522	* docs/html/install.html: Update include directory
2523	information.
2524	Update testing information.
2525	Update linux issues for named locales.
2526	* docs/html/abi.txt: Fix typos.
2527	Add more info.
2528
2529	* src/misc-inst.cc: Add missing instantiations.
2530
2531	* testsuite/abi_check.cc: Make output results more verbose.
2532
2533	* config/os/gnu-linux/ctype_base.h: Remove shadow headers injections.
2534
25352002-09-07  Jakub Jelinek  <jakub@redhat.com>
2536
2537	* config/locale/generic/messages_members.cc: Add specialization for
2538	messages<wchar_t>.
2539	* config/locale/ieee_1003.1-20021/messages_members.cc: Likewise.
2540
25412002-09-06  Benjamin Kosnik  <bkoz@redhat.com>
2542
2543	* include/bits/localefwd.h: Tweak formatting.
2544	* docs/html/abi.txt: Add.
2545
25462002-09-06  Jakub Jelinek  <jakub@redhat.com>
2547
2548	* configure.target: Use cpu_include_dir="config/cpu/sparc" for all
2549	sparc targets.
2550	* config/cpu/sparc/atomicity.h: New file.
2551	* config/cpu/sparc/sparc32/atomicity.h: Removed.
2552	* config/cpu/sparc/sparc64/atomicity.h: Removed.
2553
25542002-09-06  Jakub Jelinek  <jakub@redhat.com>
2555
2556	* config/os/gnu-linux/ctype_noninline.h
2557	[_GLIBCPP_USE_SHADOW_HEADERS]: Remove using _C_legacy::__ctype_*.
2558	(ctype<char>::classic_table): If _GLIBCPP_C_LOCALE_GNU, return
2559	_S_c_locale->__ctype_b, otherwise temporarily switch to "C" locale
2560	and return __ctype_b.
2561	(ctype<char>::ctype(__c_locale, const mask*, bool, size_t)): If not
2562	_GLIBCPP_C_LOCALE_GNU, temporarily switch to "C" locale and
2563	initialize using __ctype_{b,tolower,toupper}.
2564	(ctype<char>::ctype(const mask*, bool, size_t)): If
2565	_GLIBCPP_C_LOCALE_GNU, initialize using
2566	_S_c_locale->__ctype_{b,tolower,toupper}, otherwise temporarily
2567	switch to "C" locale and initialize using __ctype_{b,tolower,toupper}.
2568
25692002-09-05  Paolo Carlini  <pcarlini@unitus.it>
2570	    Roland McGrath  <roland@redhat.com>
2571
2572	PR libstdc++/7811
2573	* src/locale.cc (locale::locale(__s)): Use getenv instead
2574	of setenv for the environment locale.
2575	* testsuite/22_locale/ctor_copy_dtor.cc (test03): New.
2576
25772002-09-05  Jakub Jelinek  <jakub@redhat.com>
2578
2579	* config/abi/ia64-unknown-linux-gnu: Add.
2580	* config/abi/ia64-unknown-linux-gnu/baseline_symbols.txt: New file.
2581	* config/abi/alphaev67-unknown-linux-gnu: Add.
2582	* config/abi/alphaev67-unknown-linux-gnu/baseline_symbols.txt: New file.
2583
25842002-09-05  Jonathan Wakely  <jw@kayari.org>
2585
2586	* docs/html/Makefile:  Use more portable shell wildcard.
2587	* docs/html/makedoc.awk:  Nest elements correctly for XHTML conversion.
2588	* docs/html/configopts.html, docs/html/documentation.html,
2589	docs/html/explanations.html, docs/html/install.html,
2590	docs/html/17_intro/contribute.html, docs/html/17_intro/howto.html,
2591	docs/html/17_intro/license.html, docs/html/18_support/howto.html,
2592	docs/html/19_diagnostics/howto.html, docs/html/20_util/howto.html,
2593	docs/html/21_strings/howto.html, docs/html/22_locale/codecvt.html,
2594	docs/html/22_locale/ctype.html, docs/html/22_locale/howto.html,
2595	docs/html/22_locale/locale.html, docs/html/22_locale/messages.html,
2596	docs/html/23_containers/howto.html, docs/html/24_iterators/howto.html,
2597	docs/html/25_algorithms/howto.html, docs/html/26_numerics/howto.html,
2598	docs/html/27_io/howto.html, docs/html/ext/howto.html,
2599	docs/html/ext/sgiexts.html, docs/html/faq/index.html:  Convert
2600	to XHTML.
2601	* docs/html/faq/index.txt:  Regenerate.
2602
26032002-09-05  Jakub Jelinek  <jakub@redhat.com>
2604
2605	* config/locale/gnu/ctype_members.cc (ctype<wchar_t>::do_widen(char)):
2606	Switch to _M_c_locale_ctype around btowc call.
2607	(ctype<wchar_t>::do_widen(const char*, const char *, wchar_t*)):
2608	Switch to _M_c_locale_ctype around mbsrtowcs call.
2609	(ctype<wchar_t>::do_narrow(char)): Switch to _M_c_locale_ctype around
2610	wctob call.
2611	(ctype<wchar_t>::do_narrow(const char*, const char *, wchar_t*)):
2612	Switch to _M_c_locale_ctype around wcsrtombs call.
2613
26142002-09-05  Jakub Jelinek  <jakub@redhat.com>
2615
2616	* config/locale/gnu/monetary_members.cc
2617	(moneypunct<wchar_t, true>::_M_initialize_moneypunct,
2618	moneypunct<wchar_t, false>::_M_initialize_moneypunct): Use
2619	__uselocale instead of setlocale for glibc 2.3.
2620
26212002-09-05  Jakub Jelinek  <jakub@redhat.com>
2622
2623	* config/locale/generic/c++locale_internal.h: New header.
2624	* config/locale/gnu/c++locale_internal.h: New header.
2625	* config/locale/gnu/c_locale.cc: Include it.
2626	* config/locale/gnu/collate_members.cc: Include it.
2627	* config/locale/gnu/ctype_members.cc: Include it.
2628	* config/locale/gnu/messages_members.cc: Include it.
2629	* config/locale/gnu/monetary_members.cc: Include it.
2630	* config/locale/gnu/numeric_members.cc: Include it.
2631	* config/locale/gnu/time_members.cc: Include it.
2632	(_M_put): Reorder __strftime_l and __wcsftime_l arguments to match
2633	glibc.
2634	(_M_initialize_timepunct): Initialize _M_c_locale_timepunct for
2635	C locale.
2636	* acinclude.m4: Include string.h when testing strcoll_l.
2637	For glibc 2.3 provide __-prefixed prototypes.
2638	(CLOCALE_INTERNAL_H): Set, add AC_LINK_FILES line.
2639	* aclocal.m4, configure: Rebuilt.
2640
26412002-09-05  Benjamin Kosnik  <bkoz@redhat.com>
2642
2643	* include/bits/locale_facets.h: Add declaration of specialization
2644	here.
2645	* config/locale/gnu/messages_members.cc: Add specialization for
2646	messages<wchar_t>.
2647	* config/locale/gnu/messages_members.h: Remove generic definition
2648	of do_get.
2649
26502002-09-04  Richard Henderson  <rth@redhat.com>
2651
2652	* include/std/std_limits.h (__glibcpp_f32_infinity_bytes,
2653	__glibcpp_f32_has_infinity, __glibcpp_f64_infinity_bytes,
2654	__glibcpp_f64_has_infinity, __glibcpp_f80_infinity_bytes,
2655	__glibcpp_f80_has_infinity, __glibcpp_f96_infinity_bytes,
2656	__glibcpp_f96_has_infinity, __glibcpp_f128_infinity_bytes,
2657	__glibcpp_f128_has_infinity, __glibcpp_float_infinity_bytes,
2658	__glibcpp_float_has_infinity, __glibcpp_double_infinity_bytes,
2659	__glibcpp_double_has_infinity, __glibcpp_long_double_infinity_bytes,
2660	__glibcpp_long_double_has_infinity): Remove.
2661	(std::numeric_limits<float>, std::numeric_limits<double>,
2662	std::numeric_limits<long double>): Use __builtin_huge_val
2663	to implement has_infinity and infinity().
2664	* src/limits.cc (__glibcpp_float_infinity, __glibcpp_double_infinity,
2665	__glibcpp_long_double_infinity): Remove.
2666
26672002-09-03  Richard Henderson  <rth@redhat.com>
2668
2669	* include/std/std_limits.h (__glibcpp_f32_min, __glibcpp_f32_max,
2670	__glibcpp_f32_digits, __glibcpp_f32_digits10, __glibcpp_f32_radix,
2671	__glibcpp_f32_epsilon, __glibcpp_f32_min_exponent,
2672	__glibcpp_f32_min_exponent10, __glibcpp_f32_max_exponent,
2673	__glibcpp_f32_max_exponent10, __glibcpp_f64_min, __glibcpp_f64_max,
2674	__glibcpp_f64_digits, __glibcpp_f64_digits10, __glibcpp_f64_radix,
2675	__glibcpp_f64_min_exponent, __glibcpp_f64_min_exponent10,
2676	__glibcpp_f64_max_exponent, __glibcpp_f64_max_exponent10,
2677	__glibcpp_f80_min, __glibcpp_f80_max, __glibcpp_f80_digits,
2678	__glibcpp_f80_digits10, __glibcpp_f80_radix, __glibcpp_f80_epsilon,
2679	__glibcpp_f80_min_exponent, __glibcpp_f80_min_exponent10,
2680	__glibcpp_f80_max_exponent, __glibcpp_f80_max_exponent10,
2681	__glibcpp_f96_min, __glibcpp_f96_max, __glibcpp_f96_digits,
2682	__glibcpp_f96_digits10, __glibcpp_f96_radix, __glibcpp_f96_epsilon,
2683	__glibcpp_f96_min_exponent, __glibcpp_f96_min_exponent10,
2684	__glibcpp_f96_max_exponent, __glibcpp_f96_max_exponent10,
2685	__glibcpp_f128_min, __glibcpp_f128_max, __glibcpp_f128_digits,
2686	__glibcpp_f128_digits10, __glibcpp_f128_radix, __glibcpp_f128_epsilon,
2687	__glibcpp_f128_min_exponent, __glibcpp_f128_min_exponent10,
2688	__glibcpp_f128_max_exponent, __glibcpp_f128_max_exponent10,
2689	__glibcpp_float_min, __glibcpp_float_max, __glibcpp_float_digits,
2690	__glibcpp_float_digits10, __glibcpp_float_radix,
2691	__glibcpp_float_epsilon, __glibcpp_float_min_exponent,
2692	__glibcpp_float_min_exponent10, __glibcpp_float_max_exponent,
2693	__glibcpp_float_max_exponent10, __glibcpp_double_min,
2694	__glibcpp_double_max, __glibcpp_double_digits,
2695	__glibcpp_double_digits10, __glibcpp_double_radix,
2696	__glibcpp_double_epsilon, __glibcpp_double_min_exponent,
2697	__glibcpp_double_min_exponent10, __glibcpp_double_max_exponent,
2698	__glibcpp_double_max_exponent10, __glibcpp_long_double_min,
2699	__glibcpp_long_double_max, __glibcpp_long_double_digits,
2700	__glibcpp_long_double_digits10, __glibcpp_long_double_radix,
2701	__glibcpp_long_double_epsilon, __glibcpp_long_double_min_exponent,
2702	__glibcpp_long_double_min_exponent10,
2703	__glibcpp_long_double_max_exponent,
2704	__glibcpp_long_double_max_exponent10): Remove macros.
2705	(std::numeric_limits<float>, std::numeric_limits<double>,
2706	std::numeric_limits<long double>): Use protected float.h macros.
2707
27082002-09-01  Phil Edwards  <pme@gcc.gnu.org>
2709
2710	* testsuite/Makefile.am:  Use LD_RUN_PATH when linking abi_check.
2711	Fix spelling in comment.
2712	* testsuite/Makefile.in:  Regenerate.
2713	* testsuite/abi_check.cc:  Use string literals to build 'cmd' rather
2714	than 'quote' and 'bslash'.
2715
27162002-08-31  Phil Edwards  <pme@gcc.gnu.org>
2717
2718	* acinclude.m4:  Minor comment tweaks.
2719
2720	* docs/html/makedoc.awk:  New file...
2721	* docs/html/Makefile:  ...called from here...
2722	* docs/html/documentation.html:  ...to help generate this.
2723
2724	* docs/html/21_strings/howto.html:  Prepare for new entry.
2725	* include/bits/basic_string.h:  Initial basic_stirng hook for
2726	doxygen.  Remove trailing whitespace.
2727	* include/bits/char_traits.h:  Point to onlinedocs for new entry.
2728	* include/bits/stringfwd.h:  Add doxygen hooks for string and
2729	wstring typedefs.
2730
27312002-08-29  Richard Earnshaw  <rearnshaw@arm.com>
2732
2733	* config/cpu/arm/cpu_limits.h: New file.
2734	* configure.target: Use config/cpu/arm for XScale and StrongARM
2735	configurations.
2736
27372002-08-28  Gabriel Dos Reis  <gdr@integrable-solutions.net>
2738
2739	* include/std/std_limits.h (__glibcpp_char_bits,
2740	__glibcpp_short_bits, __glibcpp_int_bits, __glibcpp_long_bits,
2741	__glibcpp_long_long_bits, __glibcpp_float_bits,
2742	__glibcpp_double_bits, __glibcpp_long_double_bits): Remove.  Use
2743	compiler predifined macros.
2744	(__glibcpp_wchar_t_is_signed): Define based on compiler predefined
2745	__WCHAR_UNSIGNED__.
2746
27472002-08-27  Gabriel Dos Reis  <gdr@integrable-solutions.net>
2748
2749	* include/std/std_limits.h (__glibcpp_f32_infinity_bytes,
2750	__glibcpp_f32_has_infinity, __glibcpp_f32_QNaN_bytes,
2751	__glibcpp_f32_has_QNaN, __glibcpp_f32_SNaN_bytes,
2752	__glibcpp_f32_has_SNaN, __glibcpp_f32_denorm_min_bytes,
2753	__glibcpp_f32_has_denorm, __glibcpp_f32_is_iec559,
2754	__glibcpp_f64_infinity_bytes,
2755	__glibcpp_f64_has_infinity, __glibcpp_f64_QNaN_bytes,
2756	__glibcpp_f64_has_QNaN, __glibcpp_f64_SNaN_bytes,
2757	__glibcpp_f64_has_SNaN, __glibcpp_f64_denorm_min_bytes,
2758	__glibcpp_f64_has_denorm, __glibcpp_f64_is_iec559,
2759	__glibcpp_f80_infinity_bytes,
2760	__glibcpp_f80_has_infinity, __glibcpp_f80_QNaN_bytes,
2761	__glibcpp_f80_has_QNaN, __glibcpp_f80_SNaN_bytes,
2762	__glibcpp_f80_has_SNaN, __glibcpp_f80_denorm_min_bytes,
2763	__glibcpp_f80_has_denorm, __glibcpp_f80_is_iec559,
2764	__glibcpp_f96_infinity_bytes,
2765	__glibcpp_f96_has_infinity, __glibcpp_f96_QNaN_bytes,
2766	__glibcpp_f96_has_QNaN, __glibcpp_f96_SNaN_bytes,
2767	__glibcpp_f96_has_SNaN, __glibcpp_f96_denorm_min_bytes,
2768	__glibcpp_f96_has_denorm, __glibcpp_f96_is_iec559,
2769	__glibcpp_f128_infinity_bytes,
2770	__glibcpp_f128_has_infinity, __glibcpp_f128_QNaN_bytes,
2771	__glibcpp_f128_has_QNaN, __glibcpp_f128_SNaN_bytes,
2772	__glibcpp_f128_has_SNaN, __glibcpp_f128_denorm_min_bytes,
2773	__glibcpp_f128_has_denorm, __glibcpp_f128_is_iec559,
2774	__glibcpp_float_infinity_bytes,
2775	__glibcpp_float_has_infinity, __glibcpp_float_QNaN_bytes,
2776	__glibcpp_float_has_QNaN, __glibcpp_float_SNaN_bytes,
2777	__glibcpp_float_has_SNaN, __glibcpp_float_denorm_min_bytes,
2778	__glibcpp_float_has_denorm, __glibcpp_float_is_iec559,
2779	__glibcpp_double_infinity_bytes,
2780	__glibcpp_double_has_infinity, __glibcpp_double_QNaN_bytes,
2781	__glibcpp_double_has_QNaN, __glibcpp_double_SNaN_bytes,
2782	__glibcpp_double_has_SNaN, __glibcpp_double_denorm_min_bytes,
2783	__glibcpp_double_has_denorm, __glibcpp_double_is_iec559,
2784	__glibcpp_long_double_infinity_bytes,
2785	__glibcpp_long_double_has_infinity, __glibcpp_long_double_QNaN_bytes,
2786	__glibcpp_long_double_has_QNaN, __glibcpp_long_double_SNaN_bytes,
2787	__glibcpp_long_double_has_SNaN, __glibcpp_long_double_denorm_min_bytes,
2788	__glibcpp_long_double_has_denorm, __glibcpp_long_double_is_iec559:
2789	New macros.
2790	(__glibcpp_word_bits, __glibcpp_word): Likewise.
2791	(__glibcpp_byte): New typedef.
2792	(__float_storage, __double_storage, __long_double_storage): New types.
2793	(__glibcpp_float_infinity, __glibcpp_float_QNaN,
2794	__glibcpp_float_SNaN, __glibcpp_float_denorm_min): Now
2795	objects. Declare.
2796	(__glibcpp_double_infinity, __glibcpp_double_QNaN,
2797	__glibcpp_double_SNaN, __glibcpp_double_denorm_min): Likewise.
2798	(__glibcpp_long_double_infinity, __glibcpp_long_double_QNaN,
2799	__glibcpp_long_double_SNaN, __glibcpp_long_double_denorm_min):
2800	Likewise.
2801
2802	* src/limits.cc (__glibcpp_float_infinity, __glibcpp_float_QNaN,
2803	__glibcpp_float_SNaN, __glibcpp_float_denorm_min): Define.
2804	(__glibcpp_double_infinity, __glibcpp_double_QNaN,
2805	__glibcpp_double_SNaN, __glibcpp_double_denorm_min): Likewise.
2806	(__glibcpp_long_double_infinity, __glibcpp_long_double_QNaN,
2807	__glibcpp_long_double_SNaN, __glibcpp_long_double_denorm_min):
2808	Likewise.
2809
28102002-08-25  Gabriel Dos Reis  <gdr@integrable-solutions.net>
2811
2812	* include/std/std_limits.h: Indent conditional macro definitions.
2813
28142002-08-23  Phil Edwards  <pme@gcc.gnu.org>
2815
2816	* Makefile.am (check-abi):  Specify current directory.
2817	* acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE):  Fix shell syntax, use
2818	abi_baseline_triplet in baseline_file.
2819	* Makefile.in, aclocal.m4, configure:  Regenerate.
2820	* configure.target:  Add abi_baseline_triplet with default.
2821	* testsuite/abi_check.cc:  More error checking.
2822
28232002-08-23  Phil Edwards  <pme@gcc.gnu.org>
2824
2825	* config/linker-map.gnu:  Verbose comments, clean up spacing.
2826	* include/bits/stl_alloc.h:  Fix indentation of 'if' bodies, return
2827	statements.
2828	__allocator:  Change class declaration to struct.
2829	* docs/html/17_intro/C++STYLE:  Fix typo.
2830	* include/bits/stl_deque.h, include/bits/stl_list.h,
2831	include/bits/stl_map.h, include/bits/stl_multimap.h,
2832	include/bits/stl_vector.h:  Fix fallout from typo.
2833
28342002-08-22  Benjamin Kosnik  <bkoz@redhat.com>
2835
2836	* acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Set
2837	GLIBCPP_BUILD_ABI_CHECK based on cross compiling, build, host
2838	variables.
2839	* aclocal.m4: Regenerate.
2840	* testsuite/Makefile.am (noinst_PROGRAMS): Make conditional on
2841	native compiling.
2842	* testsuite/Makefile.in: Regenerate.
2843
28442002-08-22  Loren J. Rittle <ljrittle@acm.org>
2845
2846	* testsuite/abi_check.cc: Enhance shell portability.
2847	Support older binutils/readelf.
2848	* config/abi/i386-unknown-freebsd4.6: Add.
2849	* config/abi/i386-unknown-freebsd4.6/baseline_symbols.txt: New file.
2850
28512002-08-22  Paolo Carlini  <pcarlini@unitus.it>
2852
2853	* docs/html/faq/index.html: Add Loren James Rittle and
2854	Paolo Carlini to the list of v3 maintainers.
2855	* docs/html/faq/index.txt: Ditto.
2856	* docs/html/17_intro/RELEASE-NOTES: Ditto.
2857
28582002-08-22  Benjamin Kosnik  <bkoz@redhat.com>
2859	    Phil Edwards  <pme@gcc.gnu.org>
2860	    Ulrich Drepper  <drepper@redhat.com>
2861
2862	* Makefile.am (check-abi): New rule.
2863	* Makefile.in: Regenerate.
2864	* acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Export baseline_file.
2865	* aclocal.m4: Regenerate.
2866	* configure: Regenerate.
2867	* testsuite/Makefile.am (noinst_PROGRAMS): Add abi_check.
2868	(abi_check_SOURCES): Add.
2869	* testsuite/Makefile.in: Regenerate.
2870	* testsuite/abi_check.cc: New file.
2871	* config/abi: Add.
2872	* config/abi/i686-pc-linux-gnu: Add.
2873	* config/abi/i686-pc-linux-gnu/baseline_symbols.txt: New file.
2874
28752002-08-19  Benjamin Kosnik  <bkoz@redhat.com>
2876
2877	* configure.in (libtool_VERSION): Update to 5:1:0.
2878	* configure: Regenerate.
2879
28802002-08-19  Jonathan Wakely  <jw@kayari.org>
2881
2882	* docs/html/configopts.html, docs/html/documentation.html,
2883	docs/html/install.html, docs/html/22_locale/codecvt.html,
2884	docs/html/22_locale/ctype.html, docs/html/22_locale/howto.html,
2885	docs/html/22_locale/locale.html,
2886	docs/html/22_locale/messages.html: Conform to HTML 4.01 standard.
2887
28882002-08-15  Benjamin Kosnik  <bkoz@redhat.com>
2889
2890	* include/ext/stdio_filebuf.h (stdio_filebuf): Explicitly set
2891	_M_buf_size_opt to zero when unbuffering.
2892	* include/bits/fstream.tcc (filebuf::showmanyc): Simplify.
2893	Consistency checks for _M_buf_size_opt.
2894
2895	Revert PR libstdc++/7445
2896	* src/locale.cc (locale::classic): Revert.
2897
2898	* docs/html/17_intro/TODO: Add.
2899
29002002-08-15  Phil Edwards  <pme@gcc.gnu.org>
2901
2902	* docs/html/documentation.html:  Update doxygen links for 3.2.
2903
29042002-08-15  Steve Ellcey  <sje@cup.hp.com>
2905
2906	* libsupc++/unwind-cxx.h (__cxa_exception): Change catchTemp
2907	type from void* to _Unwind_Ptr.
2908	* libsupc++/eh_personality.cc (PERSONALITY_FUNCTION):
2909	Do not cast landing_pad or base_of_encoded_value to (void *).
2910	* libsupc++/eh_throw.cc (__gxx_exception_cleanup):
2911	Accept _URC_NO_REASON as a valid reason code.
2912
29132002-08-14  Jonathan Wakely  <jw@kayari.org>
2914
2915	* docs/html/22_locale/messages.html:  Use HTML entities for
2916	punctuation.
2917
29182002-08-13  Jonathan Wakely  <jw@kayari.org>
2919	    Phil Edwards  <pme@gcc.gnu.org>
2920
2921	* docs/html/documentation.html:  Use HTML entities for punctuation.
2922
29232002-08-09  Phil Edwards  <pme@gcc.gnu.org>
2924
2925	* include/bits/deque.tcc, include/bits/list.tcc,
2926	include/bits/stl_deque.h, include/bits/stl_iterator_base_funcs.h,
2927	include/bits/stl_list.h, include/bits/stl_map.h,
2928	include/bits/stl_multimap.h, include/bits/stl_queue.h,
2929	include/bits/stl_stack.h, include/bits/stl_vector.h,
2930	include/bits/vector.tcc:  Re-indent contents of namespace std,
2931	re-wrap comment lines as necessary.
2932
29332002-08-08  Danny Smith  <dannysmith@users.sourceforge.net>
2934	    Benjamin Kosnik  <bkoz@redhat.com>
2935
2936	* include/bits/istream.tcc (basic_istream::ignore): Use sbumpc,
2937	not snextc.
2938	* testsuite/27_io/narrow_stream_objects.cc (test10): Add.
2939
29402002-08-07  John David Anglin  <dave@hiauly1.hia.nrc.ca>
2941
2942	* libsupc++/Makefile.am (LTCOMPILE): Add LIBSUPCXX_PICFLAGS.
2943	* libsupc++/Makefile.in: Regenerate.
2944
29452002-08-05  Gabriel Dos Reis  <gdr@nerim.net>
2946
2947	PR/7491
2948	* include/bits/slice_array.h(_DEFINE_VALARRAY_OPERATOR):
2949	Instantiate with new function objects.
2950	* include/bits/mask_array.h (_DEFINE_VALARRAY_OPERATOR): Likewise.
2951	Reformat.  Uglify.
2952	* include/bits/gslice_array.h: Likewise.
2953	* include/bits/indirect_array.h: Likewise.
2954
29552002-08-03  Gabriel Dos Reis  <gdr@nerim.net>
2956
2957	* testsuite/26_numerics/valarray_name_lookup.cc: Rename from
2958	testsuite/26_numerics/valarray_name_lookup.C
2959
2960	* include/bits/valarray_array.h (_DEFINE_ARRAY_FUNCTION): Use our
2961	object function surrogates.
2962	* include/bits/valarray_meta.h (__shift_left): Fix typo.
2963	(_BinFunClos<>): Remove.
2964	(_BinFunBase<>): Likewise.
2965	(_BinFunBase1<>):Likewise.
2966	(_BinFunBase2<>): Likewise.
2967	(_DEFINE_EXPR_RELATIONAL_OPERATOR): Likewise.
2968	(_DEFINE_EXPR_UNARY_OPERATOR): Adjust definition.
2969	(_DEFINE_EXPR_BINARY_OPERATOR): Likewise.
2970	(_DEFINE_EXPR_BINARY_FUNCTION): Likewise.
2971	* include/std/std_valarray.h: Dont #include <functional> anymore.
2972	(_Bitwise_or<>, _Bitwise_and<>, _Bitwise_xor<>, _Shift_left<>,
2973	_Shift_right<>): Remove.
2974	(_DEFINE_VALARRAY_AUGMENTED_ASSIGNMENT): Adjust instantiation.
2975	(_DEFINE_BINARY_OPERATOR): Tweak definition.
2976	(_DEFINE_LOGICAL_OPERATOR): Remove.
2977	* testsuite/26_numerics/valarray_name_lookup.C (main): Add more tests.
2978
29792002-08-02  Gabriel Dos Reis  <gdr@nerim.net>
2980
2981	* include/bits/valarray_meta.h (_UnFunBase<>): Remove.
2982	(_UnFunClos<>): Same.
2983	(_UnBase<>): Reformat.  Make first template-parameter non
2984	template.
2985	(_UnClos<>): Likewise.
2986	(_Expr<>): Reformate.  Adjust unary member operator return types.
2987	(_DEFINE_EXPR_UNARY_OPERATOR): Adjust definition.
2988	(_DEFINE_EXPR_UNARY_FUNCTION): Likewise.
2989	* include/std/std_valarray.h (_UnClos<>): Adjust declaration.
2990	(valarray<>::_UnaryOp<>):  New nested traits. Adjust unary member
2991	operator return types.  Reformat.
2992	(_Bitwise_not): Remove.
2993	(_DEFINE_VALARRAY_UNARY_OPERATOR): Adjust definition.
2994	* testsuite/26_numerics/valarray_name_lookup.C: New test.
2995
29962002-08-02  Danny Smith  <dannysmith@users.sourceforge.net>
2997
2998	* config/os/newlib/ctype_inline.h (is): Don't offset _M_table.
2999	(scan_is): Use this->is.
3000	(scan_not): Likewise.
3001
30022002-08-02  Benjamin Kosnik  <bkoz@redhat.com>
3003
3004	Revert PR libstdc++/6594
3005	* src/strstream.cc (strstreambuf): Revert.
3006	(strstreambuf::overflow): Same.
3007	(strstreambuf::~strstreambuf): Same.
3008	* testsuite/backward/strstream_members.cc (test02): Add.
3009
3010	* docs/html/abi.txt: Update. Spell check.
3011
3012	* testsuite/19_diagnostics/stdexceptions.cc (test04): Add bool test.
3013
3014	* testsuite/Makefile.am (INCLUDES): Add LIBSUPCXX_INCLUDES.
3015	* testsuite/Makefile.in: Regenerate.
3016	* testsuite/testsuite_hooks.h: Use __throw_exception_again,
3017	include functexcept.h so that -fno-exceptions will build.
3018
30192002-08-02  Gabriel Dos Reis  <gdr@nerim.net>
3020
3021	* include/bits/valarray_meta.h (__unary_plus, __negate,
3022	__bitwise_not, __plus, __minus, __multiplies, __divides,
3023	__modulus, __bitwise_xor, __bitwise_or, __bitwise_and,
3024	__shift_left, __shift_right, __logical_and, __logical_or,
3025	__logical_not, __equal_to, __not_equal_to, __less, __less_equal,
3026	__greater_equal, __greater, __atan2, __pow): New function object
3027	classes.
3028	(__fun<>):  New function traits class.
3029
30302002-08-01  Rick Danos  <rdanos@hotmail.com>
3031
3032	PR libstdc++/7461
3033	* config/os/newlib/ctype_noninline.h (classic_table): Add offset.
3034	* config/os/newlib/ctype_inline.h (is): Use static_cast.
3035
30362002-08-01  Neil Booth  <neil@daikokuya.co.uk>
3037
3038	* libsupc++/Makefile.am (LT_COMPILE): Remove C++ flags.
3039	* libsupc++/Makefile.in: Regenerate.
3040
30412002-08-01  Benjamin Kosnik  <bkoz@redhat.com>
3042	    Jakub Jelinek  <jakub@redhat.com>
3043
3044	* config/linker-map.gnu: Change CXXABI_1 to CXXABI_1.2,
3045	GLIBCPP_3.1 to GLIBCPP_3.2.
3046
30472002-07-31  Benjamin Kosnik  <bkoz@redhat.com>
3048	    Mark Mitchell  <mark@codesourcery.com>
3049
3050	PR libstdc++/7442
3051	* libsupc++/cxxabi.h (class __base_class_type_info::hwm_bit):
3052	Change to __hwm_bit.
3053	(__class_type_info): And here.
3054
30552002-07-31  Benjamin Kosnik  <bkoz@redhat.com>
3056
3057	PR libstdc++/7442
3058	* libsupc++/cxxabi.h
3059	(__base_class_info): Change to __base_class_type_info. 2.9.5p6c
3060	(__base_class_info::__base): Change to __base_type. 2.9.5p6c
3061	(__base_class_info::offset_shift): Change to __offset_shift. 2.9.5p6c
3062	(__vmi_class_type_info::__base_info): Don't make const, of type
3063	__base_class_type_info, as per 2.9.5p6c
3064	(__pbase_type_info::__qualifier_flags): Change to __flags, as per
3065	2.9.5p7.
3066	(__pbase_type_info::__qualifier_masks): Change to __masks, as per
3067	2.9.5p7.
3068	(__pointer_to_member_type_info::__context_class): Change member to
3069	__context, as per 2.9.5p9.
3070	* libsupc++/tinfo2.cc (__pointer_catch): Change __context_class to
3071	__context.
3072	* libsupc++/tinfo2.cc (__do_catch): Change __qualifier_flags to
3073	__flags.
3074	* libsupc++/tinfo.cc (__do_find_public_src): Change __base to
3075	__base_type.
3076	* libsupc++/tinfo.cc (__do_dyncast): Same.
3077	* libsupc++/tinfo.cc (__do_upcast): Same.
3078
30792002-07-31  Benjamin Kosnik  <bkoz@redhat.com>
3080
3081	* src/fstream.cc: Add _GLIBCPP_USE_WCHAR_T guards.
3082
30832002-07-31  Simon Whomsley  <whomsley@avacadcam.com>
3084
3085	* docs/html/22_locale/howto.html: Fix.
3086
30872002-07-31  Alex Kompel  <shurik@sequoiap.com>
3088
3089	PR libstdc++/7445
3090	* src/locale.cc (locale::classic): Move locks inside !_S_classic
3091	block.
3092
30932002-07-31  Benjamin Kosnik  <bkoz@redhat.com>
3094
3095	* docs/html/abi.txt: Update.
3096
30972002-07-30  Benjamin Kosnik  <bkoz@redhat.com>
3098	    Gabriel Dos Reis  <gdr@nerim.net>
3099
3100	* include/bits/char_traits.h: Remove generic definitions.
3101	* include/bits/streambuf_iterator.h (istreambuf_iterator): Use
3102	eof, not -2.
3103	* include/bits/istream.tcc (istream::readsome): Don't check
3104	against eof, instead use constants.
3105	(istream::sync): Same.
3106	(istream::sentry::sentry): Use eq_int_type.
3107	(istream::get): Same.
3108	* include/bits/ostream.tcc: Change __pad to
3109	__pad<_CharT, _Traits>::_S_pad.
3110	* include/bits/locale_facets.h: Add __pad_traits generic and
3111	ostreambuf_iterator specialization.
3112	* include/bits/locale_facets.tcc: Change __pad into struct __pad
3113	with a _CharT and _Traits template parameter and _S_pad static
3114	member function.
3115	* src/locale-inst.cc: Update __pad instantiations.
3116
3117	* include/std/std_fstream.h: Declare _M_underflow_common
3118	specializations.
3119	* src/fstream.cc: New. Add _M_underflow_common specializations.
3120	* include/bits/fstream.tcc (filebuf::close): Use traits_type.
3121	(filebuf::_M_underflow_common(bool)): Remove generic version, as
3122	sys_ungetc and custom int_types don't get along.
3123	* include/std/std_streambuf.h: Add _M_pos.
3124	* src/Makefile.am (sources): Add fstream.cc.
3125	* src/Makefile.in: Regenerate.
3126
3127	* testsuite/21_strings/capacity.cc: Add char_traits specializations.
3128	* testsuite/22_locale/codecvt_members_unicode_char.cc: Same.
3129	* testsuite/22_locale/codecvt_members_unicode_wchar_t.cc: Same.
3130	* testsuite/22_locale/ctor_copy_dtor.cc: Same.
3131	* testsuite/27_io/filebuf_virtuals.cc (test07): Move to...
3132	* testsuite/27_io/filebuf.cc: ...here.
3133	* testsuite/testsuite_hooks.h: Add gnu_char, gnu_int, char_traits
3134	specialization for both.
3135	* testsuite/27_io/streambuf.cc: Add instantiation test,
3136	testsuite_hooks include.
3137	* testsuite/27_io/istream.cc: Same.
3138	* testsuite/27_io/ostream.cc: Same.
3139	* testsuite/27_io/fstream.cc: Same.
3140	* testsuite/27_io/stringstream.cc: Same.
3141	* testsuite/27_io/filebuf.cc: Same.
3142	* testsuite/27_io/stringbuf.cc: Same.
3143
31442002-07-29  Alan Modra  <amodra@bigpond.net.au>
3145
3146	* config/cpu/powerpc/cpu_limits.h (__glibcpp_long_bits): Define.
3147	* configure.target (cpu_include_dir): Use cpu/powerpc for powerpc64.
3148	* config/cpu/powerpc/atomicity.h (__always_swap): Remove.
3149	(__test_and_set): Remove.
3150	(_STWCX): Define and use.
3151
31522002-07-26  Phil Edwards  <pme@gcc.gnu.org>
3153
3154	* libsupc++/new (placement delete):  Remove unused parameter names.
3155
31562002-07-25  Benjamin Kosnik  <bkoz@redhat.com>
3157
3158	PR libstdc++/7216
3159	* include/std/std_istream.h (basic_iostream): Add typedefs for
3160	char_type, int_type, pos_type, off_type, and traits_type.
3161	* testsuite/27_io/iostream.cc (test01): Add typedef tests.
3162	* testsuite/27_io/istream.cc: Same.
3163	* testsuite/27_io/ostream.cc: Same.
3164	* testsuite/27_io/filebuf.cc: Same.
3165	* testsuite/27_io/stringbuf.cc: Replace content, move to...
3166	* testsuite/27_io/stringbuf_members.cc: ...here.
3167	* testsuite/27_io/streambuf.cc: Replace content, move to...
3168	* testsuite/27_io/streambuf_members.cc: ...here.
3169	* testsuite/27_io/stringstream.cc: Replace content, move to...
3170	* testsuite/27_io/stringstream_members.cc: ...here.
3171	* testsuite/27_io/ios.cc: New file.
3172	* testsuite/27_io/fstream.cc: New file.
3173	* testsuite/27_io/ifstream.cc: New file.
3174	* testsuite/27_io/ofstream.cc: New file.
3175	* testsuite/27_io/istringstream.cc: New file.
3176	* testsuite/27_io/ostringstream.cc: New file.
3177
31782002-07-25  Benjamin Kosnik  <bkoz@redhat.com>
3179
3180	PR libstdc++/7220
3181	* include/bits/istream.tcc (istream::ignore): Don't extract on
3182	zero.
3183	* testsuite/27_io/istream_unformatted.cc (test10): Add.
3184
31852002-07-25  Benjamin Kosnik  <bkoz@redhat.com>
3186
3187	* testsuite/27_io/ios_base_type.cc: Move to...
3188	* testsuite/27_io/ios_base_types.cc: ...here.
3189
31902002-07-24  Benjamin Kosnik  <bkoz@redhat.com>
3191
3192	PR libstdc++/7222
3193	* src/locale.cc (locale::locale(const char*)): Use setlocale NULL.
3194	* testsuite/22_locale/ctor_copy_dtor.cc (test02): New.
3195
31962002-07-24  Benjamin Kosnik  <bkoz@redhat.com>
3197
3198	PR libstdc++/7230
3199	* config/linker-map.gnu: Revert strstream patch from 2002-07-01.
3200	* include/Makefile.am (backward_headers): Use strstream, not
3201	strstream.h.
3202	* include/Makefile.in: Regenerate.
3203	* include/backward/strstream: Revert.
3204	* include/backward/strstream.h: Remove.
3205	* src/strstream.cc: Revert.
3206	* testsuite/backward/strstream_members.cc: Change include.
3207
32082002-07-24  Benjamin Kosnik  <bkoz@redhat.com>
3209
3210	PR libstdc++/7219
3211	* include/bits/ios_base.h (ios_base::streampos): Add.
3212	(ios_base::streamoff): Add.
3213	* testsuite/27_io/ios_base_type.cc: New.
3214
32152002-07-24  Benjamin Kosnik  <bkoz@redhat.com>
3216
3217	PR libstdc++/7286
3218	* libsupc++/new: Add placement delete.
3219	* testsuite/18_support/new_delete_placement.cc: New.
3220
3221	* docs/html/abi.txt: Fix typos.
3222
32232002-07-23  Benjamin Kosnik  <bkoz@redhat.com>
3224
3225	* docs/html/documentation.html: Remove libstdc++-v3.0.86 links,
3226	confusing usage of "latest."
3227	De-tangle contributor information from introductory notes.
3228	Move abi.txt link placement, activate.
3229	Re-organize.
3230	Move chapter info into old FAQ format.
3231	* docs/html/organization.html: Removed, obsoleted by doxygen work.
3232	* docs/html/abi.txt: Add notes on testing ABI changes.
3233
32342002-07-20  Phil Edwards  <pme@gcc.gnu.org>
3235
3236	* docs/html/abi.txt:  New file.
3237	* docs/html/23_containers/howto.html:  Tweak vector-overhead text.
3238	* docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
3239	Import from upstream, R22.
3240
3241	* include/bits/char_traits.h, include/bits/stl_iterator.h,
3242	include/bits/stl_iterator_base_types.h, libsupc++/exception,
3243	libsupc++/new, libsupc++/typeinfo:  Use @brief markup.
3244
3245	* include/bits/deque.tcc, include/bits/stl_alloc.h,
3246	include/bits/stl_deque.h, include/bits/stl_list.h:  Postpone removal
3247	of deprecated functions until 3.4.  (Same timeframe, different text.)
3248	* include/bits/stl_vector.h:  Ditto.  Also do the same cleanups that
3249	the other sequence classes received.
3250
32512002-07-18  Brendan Kehoe  <brendan@zen.org>
3252
3253	* bits/slice_array.h (_DEFINE_VALARRAY_OPERATOR): Fix typo of
3254	_Nname to _Name.
3255
32562002-07-19  Gabriel Dos Reis  <gdr@nerim.net>
3257
3258	DR/123
3259	* include/bits/slice_array.h
3260	(slice_array<T>::operator=(const T&)): Constify.
3261	* include/bits/gslice_array.h
3262	(gslice_array<T>::operator=(const T&)):  Likewise.
3263	* include/bits/mask_array.h
3264	(mask_array<T>::operator=(const T&)): Likewise.
3265	* include/bits/indirect_array.h
3266	(indirect_array<T>::operator=(const T&): Likewise.
3267
32682002-07-17  Phil Edwards  <pme@gcc.gnu.org>
3269
3270	* docs/doxygen/run_doxygen:  Remove template parameter names from
3271	"Compound List" summary page.  Reformat.
3272	* docs/html/documentation.html:  XHTML fixes.
3273
32742002-07-16  Andreas Schwab  <schwab@suse.de>
3275
3276	* libsupc++/new (set_new_handler): Declare to not throw any
3277	exceptions.
3278	* libsupc++/new_handler.cc (set_new_handler): Likewise.
3279
32802002-07-16  Gabriel Dos Reis  <gdr@nerim.net>
3281
3282	* include/Makefile.am (bits_headers): Remove slice.h
3283	* include/Makefile.in: Regenerate.
3284	* include/bits/slice.h (slice): move to include/bits/slice_array.h
3285	* include/bits/slice.h Remove.
3286	* include/std/std_valarray.h: Don't #include bits/slice.h anymore.
3287	* include/bits/slice_array.h: Comply to official coding styles.
3288	* testsuite/26_numerics/slice.cc: New test.
3289
32902002-07-15  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
3291
3292	* config/os/solaris/solaris2.5/ctype_base.h (ctype_base): Fix
3293	print to match vendor <ctype.h>.
3294
32952002-07-15  Phil Edwards  <pme@gcc.gnu.org>
3296
3297	* docs/html/faq/index.html:  Fix download links.
3298	* docs/html/faq/index.txt:  Regenerate.
3299	* docs/html/17_intro/porting.html:  Regenerate from earlier changes.
3300
33012002-07-11  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
3302
3303	* configure.target (target_os switch): Allow for irix6*o32
3304	configurations.
3305
33062002-07-10  Gabriel Dos Reis  <gdr@nerim.net>
3307
3308	* include/bits/valarray_meta.h (_UnFunBase): Take a second
3309	template parameter. Remove _M_func data member.
3310	(_UnFunClos): Take a third template parameter.
3311	(__abs, __cos, __acos, __cosh, __sin, __asin, __sinh, __tan,
3312	__atan, __tanh, __exp, __log, __log10, __sqrt): New classes.
3313	(_DEFINE_EXPR_UNARY_OPERATOR): Adjust definition.
3314
33152002-07-08  Eric Christopher  <echristo@redhat.com>
3316
3317	* configure.target: Fix comment for mips atomicity. Add
3318	mips*-*-linux* target, enable atomic operations there.
3319	* config/cpu/mips/atomicity.h: Fix comments, remove
3320	#ifndef/#endif. Add push/pop mips2.
3321
33222002-07-08  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
3323
3324	* include/bits/stl_deque.h (_Deque_alloc_base):  Change order of
3325	member declarations to avoid compiler warnings and restore 3.1 ABI.
3326
33272002-07-08  Phil Edwards  <pme@gcc.gnu.org>
3328
3329	* docs/html/23_containers/howto.html:  Link to dk_std::vector paper
3330	and homepage.
3331
33322002-07-07  Paolo Carlini  <pcarlini@unitus.it>
3333
3334	PR libstdc++/7186
3335	* include/bits/stl_deque.h (_Deque_iterator::operator-):
3336	Make non-member, as already happens for the comparison
3337	operators in accord with DR179 (Ready).
3338	* testsuite/23_containers/deque_operators.cc: Add test02.
3339
33402002-07-04  Benjamin Kosnik  <bkoz@redhat.com>
3341	    Jack Reeves  <jackw_reeves@hotmail.com>
3342
3343	* include/std/std_streambuf.h (basic_streambuf::_M_buf): Change to
3344	size_t, from int_type.
3345	(basic_streambuf::_M_buf_size_opt): Same.
3346	(basic_streambuf::_S_pback_sizex): Same.
3347	* include/bits/streambuf.tcc: Same.
3348	* include/std/std_streambuf.h (basic_streambuf::snextc): Use
3349	eq_int_type.
3350	(basic_streambuf::uflow): Same.
3351	* include/bits/sstream.tcc (basic_stringbuf::overflow): Use
3352	to_char_type.
3353	* include/bits/basic_ios.tcc (basic_ios::init): Use _CharT().
3354	* include/bits/streambuf.tcc (basic_streambuf::xsgetn): Use
3355	eq_int_type.
3356	(basic_streambuf::xsputn): Same.
3357	(__copy_streambufs): Same.
3358
33592002-07-03  Benjamin Kosnik  <bkoz@redhat.com>
3360
3361	* include/std/std_memory.h: Fix formatting.
3362	* testsuite/20_util/auto_ptr_neg.cc: New.
3363	* testsuite/20_util/auto_ptr.cc: Tweaks.
3364	* testsuite/23_containers/map_operators.cc (test01): Split into..
3365	* testsuite/23_containers/map_operators_neg.cc (test01): ...this. New.
3366	* testsuite/23_containers/set_operators.cc: Move to...
3367	* testsuite/23_containers/set_operators_neg.cc: ...here.
3368	* testsuite/README: Add some more naming rules.
3369
33702002-07-03  Steev Wilcox  <steev@paradigmds.com>
3371
3372	PR libstdc++/7057
3373	* include/ext/stl_hashtable.h: Fix.
3374	* testsuite/ext/hash_map.cc: New.
3375
33762002-07-03  Jack Reeves  <jackw_reeves@hotmail.com>
3377	    Kenny Simpson  <theonetruekenny@yahoo.com>
3378	    Phil Edwards  <pme@gcc.gnu.org>
3379
3380	PR libstdc++/3946
3381	* testsuite/20_util/auto_ptr.cc (test08):  New test.
3382	* include/std/std_memory.h (auto_ref_ptr):  Make constructor explicit.
3383	(auto_ptr::operator auto_ptr_ref):  Fix typo.
3384	General reformatting and doxygenating of the whole file.
3385
33862002-07-03  Benjamin Kosnik  <bkoz@redhat.com>
3387
3388	PR libstdc++/7097
3389	* include/c/std_cwchar.h: Fix.
3390
33912002-07-02  Benjamin Kosnik  <bkoz@redhat.com>
3392
3393	PR libstdc++/6410
3394	* include/bits/locale_facets.h (moneypunct::moneypunct): Add const
3395	char* name parameter.
3396	* config/locale/gnu/monetary_members.cc: Use it.
3397	* config/locale/generic/monetary_members.cc: Same.
3398	* src/localename.cc (_Impl::_Impl(const char*, size_t)): Use it.
3399
3400	* include/backward/strstream.h: Update date.
3401
34022002-07-02  Paolo Carlini  <pcarlini@unitus.it>
3403
3404	PR libstdc++/6642
3405	* include/bits/stl_iterator.h
3406	(__normal_iterator::operator-(const __normal_iterator&)):
3407	Make non-member, as already happens for the comparison
3408	operators in accord with DR179 (Ready).
3409	* testsuite/24_iterators/iterator.cc: Add test from the PR.
3410
34112002-07-02  Phil Edwards  <pme@gcc.gnu.org>
3412
3413	PR libstdc++/7173
3414	* acinclude.m4:  Simplify determination of gcc_version, and move
3415	up to GLIBCPP_CONFIGURE.
3416	* configure.in (release_VERSION):  Really remove.
3417	(AM_INIT_AUTOMAKE, AM_CONFIG_HEADER):  Move after GLIBCPP_CONFIGURE.
3418	* aclocal.m4, configure:  Regenerate.
3419
34202002-07-02  Phil Edwards  <pme@gcc.gnu.org>
3421
3422	* docs/html/configopts.html, docs/html/install.html:  Tweaks.
3423	* include/ext/algorithm, include/ext/hash_map, include/ext/hash_set,
3424	include/ext/iterator, include/ext/numeric, include/ext/rb_tree,
3425	include/ext/slist, include/ext/stl_rope.h:  Add doxygen hooks.
3426
34272002-07-01  Benjamin Kosnik  <bkoz@redhat.com>
3428
3429	* include/backward/strstream: Remove namespace std. Transfer to...
3430	* include/backward/strstream.h: ...here. Qualify std names.
3431	* src/strstream.cc: Remove namespace std.
3432	* include/Makefile.am (backward_headers): Remove strstream.h.
3433	* include/Makefile.in: Regenerate.
3434	* config/linker-map.gnu: Export strstream bits.
3435
3436	* src/fstream-inst.cc: Tweak.
3437	* src/io-inst.cc: Same.
3438	* src/istream-inst.cc: Same.
3439	* src/misc-inst.cc: Same.
3440	* src/ostream-inst.cc: Same.
3441	* src/sstream-inst.cc: Same.
3442	* src/valarray-inst.cc: Same.
3443	* src/misc-inst.cc: Remove unused instantiations.
3444
34452002-07-01  Benjamin Kosnik  <bkoz@redhat.com>
3446
3447	* configure.in (libtool_VERSION): Bump to 5:0:0.
3448	* configure: Regenerate.
3449
34502002-06-28  Phil Edwards  <pme@gcc.gnu.org>
3451
3452	PR libstdc++/7157, PR libstdc++/7158, PR libstdc++/7161
3453	* include/std/std_queue.h:  Include deque.tcc, vector.tcc.
3454	* include/std/std_stack.h:  Include deque.tcc.
3455	* testsuite/23_containers/adaptors.cc:  New file.
3456
34572002-06-27  Phil Edwards  <pme@gcc.gnu.org>
3458
3459	* include/bits/stl_alloc.h:  Deprecate all 'reallocate' memfns.
3460	* docs/html/ext/howto.html:  Update allocator notes.
3461
34622002-06-26  Benjamin Kosnik  <bkoz@redhat.com>
3463
3464	* configure.in (INTERFACE): Remove.
3465	(release_VERSION): Remove.
3466	* acinclude.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Change include placement.
3467	(libstdcxx_interface): Change. Use gcc methods to determine version.
3468	* configure: Regenerate.
3469	* aclocal.m4: Regenerate.
3470
34712002-06-25  DJ Delorie  <dj@redhat.com>
3472
3473	* acinclude.m4 (GLIBCPP_CONFIGURE): Split out
3474	GLIBCPP_TOPREL_CONFIGURE.
3475	* aclocal.m4: Likewise.
3476	* configure.in: Call it before AC_CANONICAL_SYSTEM.
3477	* configure: Regenerate.
3478
34792002-06-25  Jessica Han  <jessica@cup.hp.com>
3480
3481	* config/os/hpux/os_defines.h Define _GLIBCPP_VTABLE_PADDING
3482	* libsupc++/tinfo.cc Handle the 8 byte aligned vtable entries when
3483	_GLIBCPP_VTABLE_PADDING is defined.
3484
34852002-06-25  Benjamin Kosnik  <bkoz@redhat.com>
3486
3487	* include/bits/stl_alloc.h: Additional formatting.
3488
34892002-06-24  Phil Edwards  <pme@gcc.gnu.org>
3490
3491	* include/bits/stl_alloc.h:  Reformat as per C++STYLE.
3492
34932002-06-24  Phil Edwards  <pme@gcc.gnu.org>
3494
3495	* config/cpu/*/bits/*:  Move header files up a level.  Remove bits.
3496	* config/os/*/bits/*:  Likewise.
3497	* configure.in:  Update.
3498	* configure:  Regenerate.
3499	* configure.target:  Update.
3500	* docs/html/17_intro/porting.texi:  Update.
3501
35022002-06-21  Phil Edwards  <pme@gcc.gnu.org>
3503
3504	* include/bits/stl_map.h, include/bits/stl_multimap.h,
3505	include/bits/stl_queue.h, include/bits/stl_stack.h:  Reformat and
3506	complete doxygenation.
3507	* include/bits/boost_concept_check.h:  Minor comment.
3508
35092002-06-21  Benjamin Kosnik  <bkoz@redhat.com>
3510
3511	* include/c_compatibility: New.
3512	* include/c_compatibility/assert.h: New.
3513	* include/c_compatibility/ctype.h: New.
3514	* include/c_compatibility/errno.h: New.
3515	* include/c_compatibility/float.h: New.
3516	* include/c_compatibility/iso646.h: New.
3517	* include/c_compatibility/limits.h: New.
3518	* include/c_compatibility/locale.h: New.
3519	* include/c_compatibility/math.h: New.
3520	* include/c_compatibility/setjmp.h: New.
3521	* include/c_compatibility/signal.h: New.
3522	* include/c_compatibility/stdarg.h: New.
3523	* include/c_compatibility/stddef.h: New.
3524	* include/c_compatibility/stdio.h: New.
3525	* include/c_compatibility/stdlib.h: New.
3526	* include/c_compatibility/string.h: New.
3527	* include/c_compatibility/time.h: New.
3528	* include/c_compatibility/wchar.h: New.
3529	* include/c_compatibility/wctype.h: New.
3530
3531	* include/c/std_cerrno.h: Get out of the way... define errno.
3532	* include/c/std_cmath.h: Add abs, modf overloads.
3533	Undefine C99 isms. Still not sure how to deal with this sanely.
3534	* include/c/std_csetjmp.h: Tweak.
3535	* include/c/std_cwchar.h: Include cstddef for size_t.
3536
3537	* include/c_std/std_cmath.h: Remove extra function.
3538
3539	Pendantic std usage in testsuites.
3540	* testsuite/17_intro/header_cstdlib.cc (test01): Qualify ldiv_t
3541	with std.
3542	* testsuite/17_intro/header_cwchar.cc: Tweak.
3543	* testsuite/22_locale/codecvt_members_char_char.cc (test03): Use
3544	std::setlocale.
3545	* testsuite/22_locale/ctype_to_wchar_t.cc (test05): Same.
3546	* testsuite/22_locale/ctype_to_char.cc (test05): Same.
3547	* testsuite/22_locale/ctype_is_wchar_t.cc (test05): Same.
3548	* testsuite/22_locale/ctype_is_char.cc (test05): Same.
3549	* testsuite/22_locale/codecvt_members_wchar_t_char.cc (test03): Same.
3550	* testsuite/22_locale/time_get_members_wchar_t.cc (test08): Same.
3551	* testsuite/22_locale/time_get_members_char.cc (test08): Same.
3552	* testsuite/22_locale/time_put_members_wchar_t.cc (test04): Same.
3553	* testsuite/22_locale/time_put_members_char.cc (test04): Same.
3554	* testsuite/22_locale/num_put_members_wchar_t.cc (test04): Same.
3555	* testsuite/22_locale/num_put_members_char.cc (test04): Same.
3556	* testsuite/22_locale/numpunct_members_wchar_t.cc (test03): Same.
3557	* testsuite/22_locale/numpunct_members_char.cc (test03): Same.
3558	* testsuite/22_locale/num_get_members_wchar_t.cc: Same.
3559	* testsuite/22_locale/num_get_members_char.cc: Same.
3560	* testsuite/22_locale/money_put_members_wchar_t.cc (test07): Same.
3561	* testsuite/22_locale/money_put_members_char.cc (test07): Same.
3562	* testsuite/22_locale/moneypunct_members_wchar_t.cc (test03): Same.
3563	* testsuite/22_locale/moneypunct_members_char.cc (test03): Same.
3564	* testsuite/22_locale/money_get_members_wchar_t.cc (test08): Same.
3565	* testsuite/22_locale/money_get_members_char.cc (test08): Same.
3566	* testsuite/22_locale/messages_members_char.cc (test03): Same.
3567	* testsuite/22_locale/collate_members_wchar_t.cc (test04): Same.
3568	* testsuite/22_locale/collate_members_char.cc (test04): Same.
3569	* testsuite/26_numerics/fabs_inline.cc: Use std::printf.
3570	* testsuite/27_io/istream_seeks.cc (test02): Qualify abort.
3571	* testsuite/27_io/istream_extractor_arith.cc (test11): Qualify strtol.
3572
35732002-06-20  Benjamin Kosnik  <bkoz@redhat.com>
3574
3575	* libsupc++/Makefile.am (libsupc__convenience_la_SOURCES): Add
3576	c_sources.
3577
35782002-06-20  Benjamin Kosnik  <bkoz@redhat.com>
3579
3580	* src/ext-inst.cc (__gnu_cxx): Use instead of std:: for extensions.
3581	Use size_type instead of unsigned long.
3582
35832002-06-20  Steve Ellcey  <sje@cup.hp.com>
3584
3585	* src/ext-inst.cc (_S_fetch): Add explicit templates for char and
3586	wchar types.
3587	(_S_min_len): Ditto.
3588
35892002-06-20  Benjamin Kosnik  <bkoz@redhat.com>
3590
3591	* include/Makefile.am: Add rules.
3592	* include/Makefile.in: Regenerate.
3593
3594	* acinclude.m4: Define GLIBCPP_C_HEADERS_COMPATIBILITY.
3595	* aclocal.m4: Regenerate.
3596	* configure: Regenerate.
3597	* configure.target (c_model, c_compatibility): Add.
3598
3599	* libsupc++/Makefile.am (c_sources): New.
3600	(libsupc___la_SOURCES): Add c_sources.
3601	(LTCOMPILE): Remove INCLUDES.
3602	(GCC_INCLUDES): New.
3603	(C_COMPILE): New, like COMPILE but without INCLUDES.
3604	(cxa_demangle.o): Use C_COMPILE.
3605	(dyn-string.o): Use C_COMPILE.
3606
3607	* include/c/std_cstdarg.h: Define __need___va_list.
3608	* include/c/std_cstddef.h: Define need_size_t, need_ptrdiff_t,
3609	need_NULL, need_offsetof.
3610
36112002-06-19  Steve Ellcey  <sje@cup.hp.com>
3612
3613	* configure.in (HAVE_FINITE*, HAVE_ISINF*, HAVE_ISNAN*):  Remove
3614	definitions in hpux11 cross-build because these functions do
3615	not exist on hpux11 (but some exist on hpux10); move defaults out
3616	into existing sections.
3617	* configure:  Regenerate.
3618
36192002-06-18  Benjamin Kosnik  <bkoz@redhat.com>
3620
3621	* include/c/std_cwchar.h: Guard. Add mbstate_t bits.
3622	* include/c/std_cwctype.h: Guard.
3623
3624	* libsupc++/eh_alloc.cc: Tweak include order.
3625	* libsupc++/pure.cc: Use cstdio.
3626	* libsupc++/new_op.cc: Remove malloc forward declaration, as
3627	cstdlib brings it in. Use std::malloc.
3628
3629	* src/Makefile.am (sources): Remove cmath.cc.
3630	* src/Makefile.in: Regenerate.
3631	* src/cmath.cc: Remove.
3632
36332002-06-18  Phil Edwards  <pme@gcc.gnu.org>
3634
3635	* configure.target:  Force mips to use the generic cpu routines.
3636
36372002-06-18  Phil Edwards  <pme@gcc.gnu.org>
3638
3639	* configure.host:  Delete file.
3640	* configure.target:  More documentation.  Factor out common parts of
3641	script into "intelligent" settings about defaults.  Remove redundancy.
3642
3643	* acinclude.m4:  Update comments.  Do not call configure.host.
3644	(GLIBCPP_ENABLE_SYMVERS):  If disabled, do not bother checking for
3645	libgcc_s.
3646	* configure.in:  Slight reformatting, more comments.  Factor out
3647	"config/" from all the directories.
3648	* docs/html/17_intro/porting.texi:  Update and expand.
3649	* testsuite/Makefile.am (AM_RUNTESTFLAGS):  Move empty setting
3650	from configure.host.
3651
3652	* aclocal.m4, configure, docs/html/17_intro/porting.html,
3653	testsuite/Makefile.in:  Regenerate.
3654
36552002-06-16  Phil Edwards  <pme@gcc.gnu.org>
3656
3657	* docs/doxygen/TODO:  Update.
3658	* docs/doxygen/tables.html:  Uncomment magical middle column.
3659	* docs/doxygen/user.cfg.in:  Kludge to ignore function-like macros.
3660	* include/bits/stl_queue.h:  Doxygenate and reformat.
3661	* include/bits/ios_base.h, include/std/std_streambuf.h:  Add comment
3662	for deprecated names required by the standard.
3663
36642002-06-14  J.T. Conklin  <jtc@acorntoolworks.com>
3665
3666	* configure.in (target_alias): Fix.
3667	* configure: Regenerate.
3668	* aclocal.m4: Regenerate.
3669
36702002-06-12  Phil Edwards  <pme@gcc.gnu.org>
3671
3672	* include/Makefile.am:  Add new files.
3673	* include/Makefile.in:  Regenerate.
3674
3675	* include/bits/stl_deque.h, include/bits/stl_list.h,
3676	include/bits/stl_vector.h:  Clean up, reformat.  Move definitions...
3677	* include/bits/deque.tcc, include/bits/list.tcc,
3678	include/bits/vector.tcc:  ...to here.  New files.
3679
3680	* include/ext/stl_hashtable.h:  Inclide correct full headers.
3681	* include/std/std_deque.h:  Include .tcc files for now.
3682	* include/std/std_list.h:  Likewise.
3683	* include/std/std_vector.h:  Likewise.
3684
36852002-06-12  Daniel Jacobowitz  <drow@mvista.com>
3686
3687	* Makefile.am: Add FLAGS_TO_PASS.
3688	* Makefile.in: Regenerated.
3689
36902002-06-11  J.T. Conklin  <jtc@acorntoolworks.com>
3691	    Benjamin Kosnik  <bkoz@redhat.com>
3692
3693	* configure.target: Set os_include_dir to config/os/qnx/qnx6.1
3694	under *-qnx6.[12]*.
3695	* configure.in: Add support for *-qnx6.[12]*.
3696	* configure: Regenerate.
3697
3698	* config/os/qnx, config/os/qnx/qnx6.1, config/os/qnx/qnx6.1/bits:
3699	New directories.
3700	* config/os/qnx/qnx6.1/bits/ctype_base.h, ctype_inline.h,
3701	ctype_noninline.h, os_defines.h: New files.
3702
37032002-06-10  Loren J. Rittle <ljrittle@acm.org>
3704
3705	* acinclude.m4 (GLIBCPP_CHECK_SETRLIMIT_ancilliary): Reorder and
3706	include all required headers for test against older POSIX standard.
3707	(GLIBCPP_CHECK_SETRLIMIT): Likewise.
3708	(ac_setrlimit): Likewise.
3709	* aclocal.m4: Regenerate.
3710	* configure: Regenerate.
3711	* testsuite/testsuite_hooks.cc: Reorder and include all
3712	required headers for use against older POSIX standard.
3713
37142002-06-08  Paolo Carlini  <pcarlini@unitus.it>
3715
3716	* testsuite/backwards/strstream_members.cc: New.
3717
37182002-06-08  Benjamin Kosnik  <bkoz@redhat.com>
3719
3720	* include/backwards/strstream: Format.
3721	* src/strstream.cc: Format.
3722
37232002-06-08  Andreas Schwab  <schwab@suse.de>
3724
3725	* src/strstream.cc (strstreambuf::overflow): Set _M_buf,
3726	_M_buf_size and _M_buf_size_opt to the new buffer and size.
3727
37282002-06-08  Benjamin Kosnik  <bkoz@redhat.com>
3729
3730	* config/os/generic/bits/ctype_noninline.h: Tweak format.
3731
37322002-06-07  Steve Ellcey  <sje@cup.hp.com>
3733
3734	* src/locale-inst.cc (__codecvt_abstract_base):
3735	Put inside _GLIBCPP_USE_WCHAR_T ifdef.
3736	* include/bits/istream.tcc (basic_istream): Ditto.
3737	(ws) Ditto.
3738	(operator>>) Ditto.
3739	* include/bits/ostream.tcc (basic_ostream): Ditto.
3740	(endl): Ditto.
3741	(ends): Ditto.
3742	(flush): Ditto.
3743	(operator<<): Ditto.
3744
37452002-06-07  Phil Edwards  <pme@gcc.gnu.org>
3746
3747	* mkcheck.in:  Link against local testsuite library.
3748	* testsuite/testsuite_hooks.h (__set_testsuite_memlimit):  Move null
3749	implementation out...
3750	* testsuite/testsuite_hooks.cc:  ...to here.
3751
37522002-06-06  Loren J. Rittle <ljrittle@acm.org>
3753
3754	* src/Makefile.am (AUTOMAKE_OPTIONS): Use cygnus-style generation.
3755	* include/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
3756	* testsuite/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
3757	* src/Makefile.in: Regenerate (explicitly with --cygnus option).
3758	* testsuite/Makefile.in: Likewise.
3759
37602002-06-05  David Edelsohn  <edelsohn@gnu.org>
3761
3762	* config/os/aix/bits/ctype_noninline.h (do_toupper,do_tolower):
3763	Call external symbol.
3764
37652002-06-04  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
3766
3767	* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3_target_compile):
3768	Search correct multilib testsuite dir for libv3test.
3769
37702002-06-04  Paolo Carlini  <pcarlini@unitus.it>
3771	    Gaby Dos Reis  <gdr@codesourcery.com>
3772
3773	* include/bits/basic_string.tcc
3774	(basic_string::_S_construct(forward_iterator_tag):
3775	Fix typo in null pointer check.
3776	* testsuite/21_strings/ctor_copy_dtor.cc: Add test04.
3777
37782002-06-04  Paolo Carlini  <pcarlini@unitus.it>
3779
3780	* testsuite/22_locale/money_get_members_char.cc
3781	(test02): Add decimal point to long double constants.
3782	* testsuite/22_locale/money_get_members_wchar_t.cc
3783	(test02): Likewise.
3784	* testsuite/22_locale/money_put_members_char.cc
3785	(test02, test03, test06): Likewise.
3786	* testsuite/22_locale/money_put_members_wchar_t.cc:
3787	(test02, test03, test06): Likewise.
3788	* testsuite/22_locale/num_get_members_char.cc:
3789	(test02, test01): Likewise; suffix long long constants with LL.
3790	* testsuite/22_locale/num_get_members_wchar_t.cc:
3791	(test02, test01): Likewise.
3792	* testsuite/22_locale/num_put_members_char.cc:
3793	(test02, test01): Likewise.
3794	* testsuite/22_locale/num_put_members_wchar_t.cc:
3795	(test02, test01): Likewise.
3796
37972002-06-03  Marc Espie  <espie@openbsd.org>
3798
3799	* config/cpu/m68k/bits/atomicity.h(__exchange_and_add): Fix inline
3800	assembly for old assemblers.
3801
38022002-06-03  Phil Edwards  <pme@gcc.gnu.org>
3803
3804	* include/bits/stl_bvector.h (swap(_Bit_reference,_Bit_reference)):
3805	Move/rename...
3806	(vector<bool>::swap(reference,reference)): ...to this.
3807
38082002-06-03  Phil Edwards  <pme@gcc.gnu.org>
3809
3810	* docs/doxygen/TODO:  Update.
3811	* docs/doxygen/user.cfg.in (SORT_MEMBER_DOCS):  Set to off, now that
3812	some class members are in 14882 order.
3813	* docs/html/ext/howto.html:  3.1 is in the past now, not the future.
3814
3815	* include/std/std_bitset.h:  Update comment.
3816	* src/bitset.cc:  Update comments, clean up spacing.
3817
3818	* src/Makefile.am (sources):  Alphabetize for convenience.
3819	* src/Makefile.in:  Regenerate.
3820
38212002-06-03  Phil Edwards  <pme@gcc.gnu.org>
3822
3823	* include/bits/stl_deque.h, include/bits/stl_list.h,
3824	include/bits/stl_vector.h:  Reformat to (mostly) match C++STYLE.
3825	Reorder to match 14882.  Doxygen blocks for all public members.
3826
38272002-05-31  Marcus Meissner  <meissner@suse.de>
3828
3829	PR libstdc++/6886
3830	* include/bits/stl_bvector.h:  Use UL suffix for unsigned longs.
3831	* testsuite/23_containers/vector_bool.cc (test02):  New test.
3832
38332002-05-30  Marc Espie  <espie@openbsd.org>
3834
3835	* configure.in: Always check for sys/types.h
3836	* configure: Regenerate.
3837
38382002-05-28  Nick Clifton  <nickc@cambridge.redhat.com>
3839
3840	* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init):
3841	Rebuild the wrapper file every time this proc is called.
3842
38432002-05-28  Phil Edwards  <pme@gcc.gnu.org>
3844
3845	* testsuite/Makefile.am (noinst_LIBRARIES):  New target.  Pull in
3846	CXX/INCLUDES.
3847	* testsuite/Makefile.in:  Regenerate.
3848	* testsuite/testsuite_hooks.h (gnu_copy_tracker):  Move from
3849	list_modifiers.cc and rename from 'T'.  Move code bodies...
3850	* testsuite/testsuite_hooks.cc:  ...to here.  New file.
3851	* testsuite/23_containers/list_modifiers.cc:  Move 'T' class out.
3852	* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3_target_compile):
3853	Add libv3test.a to link options.
3854
38552002-05-27  Benjamin Kosnik  <bkoz@redhat.com>
3856
3857	* src/misc-inst.cc: Define unnecessary algorithm
3858	instantiations. Break apart instantiations into groupings below.
3859	* src/fstream-inst.cc: New.
3860	* src/io-inst.cc: New.
3861	* src/istream-inst.cc: New.
3862	* src/ostream-inst.cc: New.
3863	* src/streambuf-inst.cc: New.
3864	* src/sstream-inst.cc: New.
3865	* src/Makefile.am (sources): Add files.
3866	* src/Makefile.in: Regenerate.
3867
3868	* acinclude.m4: Work around automake 1.4-p5 bug, change
3869	AM_GNU_GETTEXT in comments to AM-GNU-GETTEXT.
3870
38712002-05-27  Benjamin Kosnik  <bkoz@redhat.com>
3872
3873	PR libstdc++/6795.
3874	* config/os/solaris/solaris2.6/bits/ctype_noninline.h
3875	(classic_table): Fix.
3876	* config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.
3877
38782002-05-27  Benjamin Kosnik  <bkoz@redhat.com>
3879
3880	* testsuite/22_locale/ctype_is_wchar_t.cc: Guard with
3881	_GLIBCPP_USE_WCHAR_T.
3882	* testsuite/22_locale/ctype_narrow_wchar_t.cc: Same.
3883	* testsuite/22_locale/ctype_to_wchar_t.cc: Same.
3884	* testsuite/22_locale/ctype_widen_wchar_t.cc: Same.
3885
38862002-05-26  Carlo Wood  <carlo@alinoe.com>
3887	    Paolo Carlini  <pcarlini@unitus.it>
3888
3889	PR libstdc++/6811
3890	* config/locale/ieee_1003.1-2001/codecvt_specializations.h
3891	(__enc_traits::operator=): add missing return statement.
3892
38932002-05-24  Phil Edwards  <pme@gcc.gnu.org>
3894
3895	PR libstdc++/6282
3896	* include/std/std_bitset.h (_Base_biteset<0>):  New specialization.
3897	(operator>>):  If nothing was extracted, don't fail in the
3898	zero-length case.
3899	* testsuite/23_containers/bitset_ctor.cc (test02):  New test.
3900
39012002-05-24  Benjamin Kosnik  <bkoz@redhat.com>
3902
3903	PR libstdc++/6701
3904	* testsuite/22_locale/ctype_narrow_char.cc: New.
3905	* testsuite/22_locale/ctype_narrow_wchar_t.cc: New.
3906	* testsuite/22_locale/ctype_widen_char.cc: New.
3907	* testsuite/22_locale/ctype_widen_wchar_t.cc: New.
3908	* testsuite/22_locale/ctype_members_char.cc: Move some bits into...
3909	* testsuite/22_locale/ctype_is_char.cc: ...this.
3910	* testsuite/22_locale/ctype_to_char.cc: ...and this.
3911	* testsuite/22_locale/ctype_members_wchar_t.cc: Move some bits into...
3912	* testsuite/22_locale/ctype_is_wchar_t.cc: ...this.
3913	* testsuite/22_locale/ctype_to_wchar_t.cc: ...and this.
3914
3915	* testsuite/22_locale/ctype_scan_wchar_t.cc: Should pass.
3916
39172002-05-24  Dale Peakall <dale@peakall.net>
3918
3919	PR libstdc++/6701
3920	* config/locale/gnu/ctype_members.cc (ctype<wchar_t>::do_narrow): Fix.
3921	* config/locale/generic/ctype_members.cc: Same.
3922
39232002-05-24  Benjamin Kosnik  <bkoz@redhat.com>
3924
3925	PR libstdc++/6750
3926	* include/bits/ostream.tcc (ostream::operator<<(const char*)): Fix
3927	for empty string literal.
3928	(ostream::operator<<(const _CharT*)): Same.
3929	(ostream<char>::operator<<(const char*)): Same.
3930	(ostream<char>::operator<<(streambuf*)): Same.
3931	* testsuite/27_io/ostream_inserter_char.cc (test08): Add tests.
3932	* testsuite/27_io/ostream_inserter_other.cc (test02): Modify.
3933
39342002-05-23  Benjamin Kosnik  <bkoz@redhat.com>
3935
3936	* configure.in (release_VERSION): Update to 3.1.1.
3937	(libtool_VERSION): Update to 4:1:0.
3938	* configure: Regenerate.
3939
39402002-05-21  Phil Edwards  <pme@gcc.gnu.org>
3941
3942	* include/bits/stl_pair.h:  Tweak comment markup.
3943
39442002-05-21  Phil Edwards  <pme@gcc.gnu.org>
3945
3946	* include/ext/stdio_filebuf.h:  Add header guards.  Doxygenate.
3947
39482002-05-21  Phil Edwards  <pme@gcc.gnu.org>
3949
3950	* docs/doxygen/user.cfg.in (EXCLUDE):  Add 'CVS'.
3951
39522002-05-21  Phil Edwards  <pme@gcc.gnu.org>
3953
3954	* include/bits/stl_vector.h:  Reformat to follow C++STYLE.
3955	Doxygenate all public members.  Reorder to follow 14882.
3956	(vector::push_back(void)):  Remove previously-deprecated fn.
3957	(vector::insert(iterator), vector::_M_insert_aux(iterator)):
3958	Deprecate for removal in 3.3.
3959
39602002-05-20  Phil Edwards  <pme@gcc.gnu.org>
3961
3962	* docs/html/faq/index.html (5.4):  Recommend against -I options for
3963	finding the ext headers.
3964	* docs/html/faq/index.txt:  Regenerate.
3965
39662002-05-19  Paolo Carlini  <pcarlini@unitus.it>
3967
3968	* testsuite/23_containers/deque_operators.cc (test01):
3969	Fix minor typo in last commit.
3970
39712002-05-18  Paolo Carlini  <pcarlini@unitus.it>
3972
3973	PR libstdc++/6503
3974	* include/bits/stl_deque.h (_Deque_iterator::operator==,
3975	operator!=, operator<, operator>, operator>=, operator<=):
3976	Make non-member functions, to allow comparing const and
3977	non-const iterators in any order.
3978	* testsuite/23_containers/deque_operators.cc: New testfile.
3979
39802002-05-16  Phil Edwards  <pme@gcc.gnu.org>
3981
3982	* docs/html/faq/index.html:  Update not-a-bug list with basic_file.h.
3983	* docs/html/faq/index.txt:  Regenerate.
3984
39852002-05-16  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
3986
3987	* Makefile.am: Allow for PWDCMD to override hardcoded pwd.
3988	* acinclude.m4: Likewise.
3989	* docs/html/Makefile: Likewise.
3990	* aclocal.m4: Regenerate.
3991	* configure: Regenerate.
3992	* Makefile.in: Regenerate.
3993
39942002-05-15  Loren J. Rittle <ljrittle@acm.org>
3995
3996	libstdc++/6641
3997	* include/bits/c++config (__USE_MALLOC): Report case where
3998	the user improperly defined it on the command line.
3999
40002002-05-15  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
4001
4002	* testsuite/testsuite_hooks.h (__set_testsuite_memlimit):
4003	Retrieve current limits before setting.
4004
40052002-05-15  Benjamin Kosnik  <bkoz@redhat.com>
4006
4007	PR libstdc++/6518
4008	* include/bits/ostream.tcc (ostream::operator<<(const char*)): Fix
4009	for null case.
4010	(ostream::operator<<(const _CharT*)): Same.
4011	(ostream<char>::operator<<(const char*)): Same.
4012	* testsuite/27_io/ostream_inserter_char.cc (test07): Add test.
4013
40142002-05-15  Benjamin Kosnik  <bkoz@redhat.com>
4015
4016	PR libstdc++/6594
4017	* src/strstream.cc (strstreambuf): Fix leak.
4018
40192002-05-15  Paolo Carlini  <pcarlini@unitus.it>
4020
4021	PR libstdc++/6648
4022	* include/bits/istream.tcc (istream::getline, ignore):
4023	Upon __idelim (__delim) call sbumpc() not snextc().
4024	* testsuite/27_io/narrow_stream_objects.cc:
4025	Add test08 and test09.
4026
40272002-05-13  Benjamin Kosnik  <bkoz@redhat.com>
4028
4029	* testsuite/22_locale/ctype_scan_char.cc: Tweak.
4030	* testsuite/22_locale/ctype_scan_wchar_t.cc: New.
4031
4032	* docs/html/install.html: Fix.
4033
40342002-05-13  Benjamin Kosnik  <bkoz@redhat.com>
4035
4036	* include/bits/fstream.tcc
4037	(basic_filebuf::_M_allocate_internal_buffer): Remove extraneous
4038	try/catch blocks.
4039	* src/localename.cc (locale::_Impl::_M_install_facet): Same.
4040
4041	* docs/html/install.html: Tweak, add bits about required locales
4042	for the 22_locale tests when using the gnu model.
4043
4044	* testsuite/27_io/istream_sentry.cc: Tweak.
4045
40462002-05-13  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
4047
4048	* config/os/irix/irix5.2/bits/ctype_inline.h (scan_is, scan_not):
4049	Fix typo, use this->is() rather than manually (and perhaps
4050	incorrectly) inlining it.
4051	* config/os/irix/irix6.5/bits/ctype_inline.h (scan_is, scan_not):
4052	Likewise.
4053	* testsuite/22_locale/ctype_scan_char.cc: New file.
4054
40552002-05-13  Paolo Carlini  <pcarlini@unitus.it>
4056	    Jakub Jelinek  <jakub@redhat.com>
4057
4058	* testsuite/22_locale/money_get_members_char.cc
4059	(test01, test02, test04): Use the de_DE@euro named locale
4060	instead of de_DE to allow for an uniform behaviour with
4061	both old and Euro-era localedata; tweak some tests.
4062	* testsuite/22_locale/money_get_members_wchar_t.cc
4063	(test01, test02, test04): Likewise.
4064	* testsuite/22_locale/money_put_members_char.cc
4065	(test01, test02, test04): Likewise.
4066	* testsuite/22_locale/money_put_members_wchar_t.cc
4067	(test01, test02, test04): Likewise.
4068
40692002-05-13  Paolo Carlini  <pcarlini@unitus.it>
4070
4071	* testsuite/22_locale/codecvt_members_char_char.cc
4072	(test03): Robustify wrt localedata.
4073	* testsuite/22_locale/codecvt_members_wchar_t_char.cc (test03): Likewise.
4074	* testsuite/22_locale/collate_members_char.cc (test04): Likewise.
4075	* testsuite/22_locale/collate_members_wchar_t.cc (test04): Likewise.
4076	* testsuite/22_locale/ctype_members_char.cc (test05): Likewise.
4077	* testsuite/22_locale/ctype_members_wchar_t.cc (test04): Likewise.
4078	* testsuite/22_locale/messages_members_char.cc (test03): Likewise.
4079	* testsuite/22_locale/money_get_members_char.cc (test08): Likewise.
4080	* testsuite/22_locale/money_get_members_wchar_t.cc (test08): Likewise.
4081	* testsuite/22_locale/money_put_members_char.cc (test07): Likewise.
4082	* testsuite/22_locale/money_put_members_wchar_t.cc (test07): Likewise.
4083	* testsuite/22_locale/moneypunct_members_char.cc (test03): Likewise.
4084	* testsuite/22_locale/moneypunct_members_wchar_t.cc (test03): Likewise.
4085	* testsuite/22_locale/num_get_members_char.cc (test06): Likewise.
4086	* testsuite/22_locale/num_get_members_wchar_t.cc (test06): Likewise.
4087	* testsuite/22_locale/num_put_members_char.cc (test04): Add comment.
4088	* testsuite/22_locale/num_put_members_wchar_t.cc (test04): Likewise.
4089	* testsuite/22_locale/numpunct_members_char.cc (test03): Likewise.
4090	* testsuite/22_locale/numpunct_members_wchar_t.cc (test03): Likewise.
4091	* testsuite/22_locale/time_get_members_char.cc (test08): Likewise.
4092	* testsuite/22_locale/time_get_members_wchar_t.cc (test08): Likewise.
4093	* testsuite/22_locale/time_put_members_char.cc (test04): Likewise.
4094	* testsuite/22_locale/time_put_members_wchar_t.cc (test04): Likewise.
4095
40962002-05-12  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
4097
4098	* config/os/irix/irix5.2/bits/os_defines.h: Revert 2002-05-06
4099	change.
4100
41012002-05-11  John David Anglin  <dave@hiauly1.hia.nrc.ca>
4102
4103	* config/os/gnu-linux/bits/os_defines.h (__glibcpp_long_bits): Define
4104	to 64 for hppa 64-bit port.
4105	(__glibcpp_long_double_bits): Define to 64 for all hppa ports.
4106
41072002-05-10  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
4108
4109	* acinclude.m4 (enable_symvers): Quote $LD.
4110	* aclocal.m4: Regenerate.
4111	* configure: Likewise.
4112
41132002-05-09  Jakub Jelinek  <jakub@redhat.com>
4114
4115	* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Append all
4116	multilib dirs containing libgcc_s*.so.1 below gcc object dir to
4117	LD_LIBRARY_PATH.
4118
41192002-05-08  Alexandre Oliva  <aoliva@redhat.com>
4120
4121	* configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at
4122	script entry, and set LD to it when configuring multilibs.
4123	* configure: Rebuilt.
4124
41252002-05-07  Mark Mitchell  <mark@codesourcery.com>
4126
4127	* configure.in: Add support for WindISS.
4128	* configure: Regenerated.
4129	* configure.target: Add support for WindISS.
4130	* config/os/windiss/bits/ctype_base.h: New file.
4131	* config/os/windiss/bits/ctype_inline.h: Likewise.
4132	* config/os/windiss/bits/ctype_noninline.h: Likewise.
4133	* config/os/windiss/bits/os_defines.h: Likewise.
4134
41352002-05-06  Paolo Carlini  <pcarlini@unitus.it>
4136
4137	Test all the facets for the temporary "C" locale switch issue.
4138	* testsuite/22_locale/codecvt_members_char_char.cc: Add test03.
4139	* testsuite/22_locale/codecvt_members_wchar_t_char.cc: Likewise.
4140	* testsuite/22_locale/collate_members_char.cc: Add test04.
4141	* testsuite/22_locale/collate_members_wchar_t.cc: Likewise.
4142	* testsuite/22_locale/ctype_members_char.cc: Add test05.
4143	* testsuite/22_locale/ctype_members_wchar_t.cc: Add test04.
4144	* testsuite/22_locale/messages_members_char.cc: Add test03.
4145	* testsuite/22_locale/money_get_members_char.cc: Add test08.
4146	* testsuite/22_locale/money_get_members_wchar_t.cc: Likewise.
4147	* testsuite/22_locale/money_put_members_char.cc: Add test07.
4148	* testsuite/22_locale/money_put_members_wchar_t.cc: Likewise.
4149	* testsuite/22_locale/moneypunct_members_char.cc: Add test03.
4150	* testsuite/22_locale/moneypunct_members_wchar_t.cc: Likewise.
4151	* testsuite/22_locale/num_get_members_char.cc: Add test06.
4152	* testsuite/22_locale/num_get_members_wchar_t.cc: Likewise.
4153	* testsuite/22_locale/numpunct_members_char.cc: Add test03.
4154	* testsuite/22_locale/numpunct_members_wchar_t.cc: Likewise.
4155	* testsuite/22_locale/time_get_members_char.cc: Add test08.
4156	* testsuite/22_locale/time_get_members_wchar_t.cc: Likewise.
4157	* testsuite/22_locale/time_put_members_char.cc: Add test04.
4158	* testsuite/22_locale/time_put_members_wchar_t.cc: Likewise.
4159
4160	* testsuite/22_locale/num_put_members_char.cc (test04): Add comment.
4161	* testsuite/22_locale/num_put_members_wchar_t.cc (test04): Likewise.
4162
41632002-05-06  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
4164
4165	* config/os/irix/irix5.2/bits/os_defines.h (_SGI_SOURCE,
4166	__EXTENSIONS__): Ensure they are always defined.
4167
41682002-05-06  Phil Edwards  <pme@gcc.gnu.org>
4169
4170	* docs/html/documentation.html:  Fix broken link.
4171
41722002-05-04  Benjamin Kosnik  <bkoz@redhat.com>
4173	    Paolo Carlini  <pcarlini@unitus.it>
4174
4175	* testsuite/22_locale/num_put_members_char.cc: Add test04(),
4176	testing for the locale_facets.tcc entry of the previous commit.
4177	* testsuite/22_locale/num_put_members_wchar_t.cc: Likewise.
4178
41792002-05-04  Takeshi Kobayakawa  <tskoba@mte.biglobe.ne.jp>
4180
4181	* config/locale/generic/c_locale.cc
4182	(__convert_to_v(float, double, long double)):
4183	Fix the temporary switch to the "C" locale, saving and
4184	restoring in the proper way the current locale.
4185	* config/locale/generic/time_members.cc
4186	(__timepunct<char, wchar_t>::_M_put): Likewise.
4187	* config/locale/gnu/messages_members.cc
4188	(messages<char>::do_get): Likewise.
4189	* config/locale/gnu/messages_members.h
4190	(messages<_CharT>::do_get): Likewise.
4191	* config/locale/gnu/time_members.cc
4192	(__timepunct<char, wchar_t>::_M_put): Likewise.
4193	* include/bits/locale_facets.tcc (__convert_from_v): Likewise.
4194
41952002-05-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
4196
4197	* configure.in (AC_CHECK_HEADERS): Check for string.h & stdlib.h.
4198	* libsupc++/Makefile.am (LTCOMPILE): Add $(DEFS).
4199
4200	* Makefile.in, config.h.in, configure: Regenerate.
4201
42022002-05-03  Benjamin Kosnik  <bkoz@redhat.com>
4203
4204	PR libstdc++/6549.
4205	* include/bits/fstream.tcc (filebuf::_M_underflow_common): Revert.
4206	* testsuite/27_io/narrow_stream_objects.cc (test07): Add.
4207
42082002-05-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
4209
4210	* config/os/irix/irix5.2/bits/ctype_noninline.h (classic_table):
4211	Return __ctype + 1.
4212	(ctype:_M_table): Initialize to classic_table(), not __ctype.
4213
42142002-05-03  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
4215
4216	* configure.in: Update local install.html, configopts.html paths.
4217	* configure: Regenerate.
4218
42192002-05-02  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
4220
4221	* config/os/irix/irix5.2/bits/os_defines.h
4222	(__glibcpp_long_double_bits, __glibcpp_long_bits): Define.
4223
4224	* config/os/irix/irix5.2/bits/ctype_inline.h: Cast to unsigned
4225	char.
4226
42272002-05-02  Phil Edwards  <pme@gcc.gnu.org>
4228
4229	* docs/html/faq/index.html:  Update list in #4.1.
4230	* docs/html/faq/index.txt:  Regenerated.
4231
42322002-05-02  Benjamin Kosnik  <bkoz@redhat.com>
4233
4234	* docs/html/17_intro/RELEASE-NOTES (New): Update.
4235
42362002-05-01  Phil Edwards  <pme@gcc.gnu.org>
4237
4238	* include/std/std_bitset.h:  Fix doxygen comments.
4239	* docs/html/documentation.html:  Minor tweaks for 3.1.
4240	* docs/html/27_io/howto.html:  Likewise.
4241	* docs/html/ext/howto.html:  Likewise, mention stdio_filebuf.
4242	* docs/html/faq/index.html:  Likewise.
4243	* docs/html/faq/index.txt:  Regenerated.
4244
42452002-05-01  Benjamin Kosnik  <bkoz@redhat.com>
4246
4247	PR libstdc++/6533
4248	* include/bits/streambuf_iterator.h (istreambuf_iterator::_M_get): New.
4249	(istreambuf_iterator::equal): Use it.
4250	(istreambuf_iterator::operator*): Use it.
4251
42522002-05-01  Paolo Carlini  <pcarlini@unitus.it>
4253
4254	PR libstdc++/6513
4255	* include/bits/stl_uninitialized.h
4256	(uninitialized_copy(_InputIter, _InputIter, _ForwardIter)):
4257	Fix typo in 2001-07-17 commit: typedef _ValueType to
4258	iterator_traits<_ForwardIter> not <_InputIter>.
4259	* testsuite/23_containers/vector_ctor.cc: Add test04.
4260
42612002-04-30  John David Anglin  <dave@hiauly1.hia.nrc.ca>
4262
4263	PR libstdc++/6501
4264	* include/c_std/std_cctype.h: Include bits/c++config.h.
4265	* config/os/hpux/bits/os_defines.h (_SB_CTYPE_MACROS): Define.
4266
42672002-04-30  Benjamin Kosnik  <bkoz@redhat.com>
4268
4269	* include/ext/stdio_filebuf.h: New file.
4270	* include/ext/enc_filebuf.h: New file.
4271	* config/io/basic_file_stdio.h (__basic_file::sys_open): Add fd ctor.
4272	* config/io/basic_file_stdio.cc: Same.
4273	* include/bits/fstream.tcc (filebuf::_M_allocate_internal_buffer):
4274	Remove _M_unbuf hacks.
4275	(filebuf::_M_destroy_internal_buffer): Same.
4276	(filebuf::filebuf(cfile, openmode, int_type): Remove definition.
4277	(filebuf::fd): Remove.
4278	* include/std/std_fstream.h (filebuf::_M_unbuf): Remove.
4279	(filebuf::filebuf(__c_file*, openmode, int_type)): Remove.
4280	(filebuf::fd): Remove.
4281	* src/ios.cc (ios_base::_S_ios_create): Change to use specialized
4282	filebufs.
4283	(ios_base::_S_ios_destroy): Same.
4284	* src/misc-inst.cc (file_filebuf<char>): Add instantiation.
4285	* include/Makefile.am (ext_headers): Add ext_filebuf.h,
4286	stdio_filebuf.h.  * include/Makefile.in: Regenerate.
4287
42882002-04-30  Benjamin Kosnik  <bkoz@redhat.com>
4289
4290	PR libstdc++/6511
4291	* config/os/solaris/solaris2.7/bits/ctype_noninline.h: Fix typo.
4292
42932002-04-29  Benjamin Kosnik  <bkoz@redhat.com>
4294
4295	PR libstdc++/5820
4296	* include/bits/fstream.tcc (basic_filebuf::_M_underflow_common):
4297	Check for eof.
4298	* include/bits/streambuf_iterator.h: Match stream_iterator.h.
4299	(istreambuf_iterator::operator++): Invalidate on eof.
4300	(istreambuf_iterator::operator++(int)): Same.
4301	(istreambuf_iterator::operator*): Same.
4302
43032002-04-29  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
4304
4305	* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Set all
4306	of LD_LIBRARY_PATH, SHLIB_PATH, LD_LIBRARYN32_PATH,
4307	LD_LIBRARY64_PATH.
4308
43092002-04-28  Benjamin Kosnik  <bkoz@redhat.com>
4310
4311	PR libstdc++/5820
4312	* config/io/basic_file_stdio.h (__basic_file::sys_getc): Return int.
4313	(__basic_file::sys_ungetc): Take int.
4314	* config/io/basic_file_stdio.cc (__basic_file::sys_ungetc): Same.
4315	* include/bits/fstream.tcc (basic_filebuf::_M_underflow_common):
4316	Use sys_getc for unbuffered input.
4317	* testsuite/27_io/narrow_stream_objects.cc (test06): New.
4318
4319	* src/ios.cc (_M_grow_words): Adjust error checking.
4320	* testsuite/27_io/ios_base_storage.cc: Same.
4321
43222002-04-28  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
4323
4324	* include/ext/stl_hashtable.h: Import __iterator_category
4325
43262002-04-28  Paolo Carlini  <pcarlini@unitus.it>
4327	    Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
4328
4329	* testsuite/ext/hash_set.cc: New testfile.
4330
43312002-04-27  Benjamin Kosnik  <bkoz@redhat.com>
4332
4333	* config/os/solaris/solaris2.5/bits/os_defines.h: Remove
4334	_G_USING_THUNKS.
4335	* config/os/solaris/solaris2.6/bits/os_defines.h: Same.
4336	* config/os/solaris/solaris2.7/bits/os_defines.h: Same.
4337
43382002-04-26  Paolo Carlini  <pcarlini@unitus.it>
4339
4340	* include/bits/basic_string.h (replace(__pos, __n1, __s, __n2):
4341	Fix and tighten __throw_length_error check.
4342	* testsuite/21_strings/replace.cc (test05): New.
4343	* testsuite/21_strings/replace.cc (test02, test03, test04): Tweak.
4344
43452002-04-23  Loren J. Rittle <ljrittle@acm.org>
4346
4347	* include/std/std_fstream.h (basic_filebuf::sync): Hoist
4348	unconditional flush on lower-layer handle to here...
4349	* include/bits/fstream.tcc (basic_filebuf::_M_really_overflow):
4350	...from here.  Optimize remaining _M_file.sync() call pattern.
4351	* testsuite/27_io/narrow_stream_objects.cc (test04): New test.
4352	(test05): Likewise.
4353
43542002-04-23  Jason Merrill  <jason@redhat.com>
4355
4356	* include/bits/fstream.tcc (basic_filebuf::seekoff): Fix for
4357	output-only filebufs.
4358	* include/std/std_fstream.h (basic_filebuf::_M_set_indeterminate):
4359	Likewise.
4360	(basic_filebuf::_M_set_determinate): Likewise.
4361
4362	PR libstdc++/6414
4363	* include/bits/fstream.tcc (basic_filebuf::seekoff): Adjust return
4364	value properly in the trivial case.
4365	* testsuite/27_io/istream_seeks.cc (test04): Make sure that
4366	tellg() returns the right value after a read.
4367
43682002-04-23  Hans-Peter Nilsson  <hp@bitrange.com>
4369
4370	* config/cpu/mmix/bits/cpu_limits.h: New file.
4371	* configure.target (CPULIMITSH): Use it.
4372
43732002-04-22  Loren J. Rittle <ljrittle@acm.org>
4374
4375	* docs/html/17_intro/porting.texi (_GLIBCPP_AVOID_FSEEK): Remove.
4376	* docs/html/17_intro/porting.html: Rebuilt.
4377
43782002-04-20  Jason Merrill  <jason@redhat.com>
4379
4380	PR libstdc++/4150
4381	* include/std/std_streambuf.h (basic_streambuf::_M_set_indeterminate):
4382	Move to filebuf.
4383	(basic_streambuf::_M_set_determinate): Likewise.
4384	(basic_streambuf::_M_is_indeterminate): Likewise.
4385	* include/bits/std_fstream.h (basic_filebuf::_M_filepos): New
4386	non-static data member.
4387	(basic_filebuf::_M_underflow_common): New non-static member function.
4388	(basic_filebuf::_M_underflow, _M_uflow): Call it.
4389	(basic_filebuf::sync): Avoid useless seeking.
4390	(basic_filebuf::_M_set_indeterminate): Move here from streambuf.
4391	Set _M_filepos.
4392	(basic_filebuf::_M_set_determinate): Likewise.
4393	(basic_filebuf::_M_is_indeterminate): Likewise.
4394	* include/bits/fstream.tcc (basic_filebuf::_M_really_overflow): Seek
4395	back to _M_out_beg if necessary.
4396	(basic_filebuf::seekoff): Likewise.
4397	(basic_filebuf::_M_underflow_common): Generalization of old
4398	underflow().  Don't seek back to _M_in_beg.
4399	* src/ios.cc: Lose _GLIBCPP_AVOID_FSEEK stuff.
4400	* config/os/solaris/solaris2.?/bits/os_defines.h: Likewise.
4401	* config/os/bsd/freebsd/bits/os_defines.h: Likewise.
4402	* config/os/mingw32/bits/os_defines.h: Likewise.
4403	* testsuite/27_io/filebuf_virtuals.cc (test05): Don't overspecify
4404	ungetc test.
4405
44062002-04-22  Benjamin Kosnik  <bkoz@redhat.com>
4407
4408	* include/bits/istream.tcc (istream::read): Fix.
4409	* testsuite/27_io/istream_unformatted.cc (main): Add.
4410
44112002-04-20  Benjamin Kosnik  <bkoz@redhat.com>
4412
4413	PR libstdc++/6360
4414	* include/bits/istream.tcc (istream::ignore): Streamline, use
4415	delimiter as is.
4416	* include/bits/streambuf.tcc: Use this->gptr.
4417	* testsuite/27_io/istream_unformatted.cc (test08): Add test.
4418
44192002-04-18  Benjamin Kosnik  <bkoz@redhat.com>
4420
4421	* include/bits/localefwd.h (locale::id::_M_id): Do this correctly,
4422	as type safety is important, especially on solaris.
4423	* include/bits/istream.tcc (istream::read): Clean.
4424	(istream::readsome): Same.
4425	* locale.cc: Wrap lines.
4426
4427	* testsuite/21_strings/inserters_extractors.cc: Tweaks.
4428	* testsuite/27_io/instantiations.cc (test): Add bool variable...
4429	* testsuite/21_strings/capacity.cc: Clean.
4430
44312002-04-17  Phil Edwards  <pme@gcc.gnu.org>
4432
4433	* docs/doxygen/doxygroups.cc:  New group on binary searching.
4434	* include/bits/stl_algo.h:  Document binary searches and merges.
4435	* include/bits/stl_deque.h:  The 'map' member is not the 'map' class.
4436
44372002-04-17  Phil Edwards  <pme@gcc.gnu.org>
4438
4439	* docs/doxygen/mainpage.html:  Doxygen logo is now a PNG file.
4440	* docs/doxygen/run_doxygen:  Bump required version.
4441	* docs/doxygen/user.cfg.in:  Revert accidental change.
4442	* docs/html/faq/index.html:  Reindent a block of links.
4443	(4.4):  New note on using dlsym.
4444	* docs/html/faq/index.txt:  Regenerated.
4445
44462002-04-17  Phil Edwards  <pme@gcc.gnu.org>
4447
4448	* testsuite_flags.in (cxxflags):  Also pass @EXTRA_CXX_FLAGS@.
4449
44502002-04-17  Benjamin Kosnik  <bkoz@redhat.com>
4451
4452	* config/linker-map.gnu (__malloc_alloc_template): Add.
4453	(__default_alloc_template): Same.
4454	* include/bits/stl_alloc.h (__malloc_alloc_template): Add extern
4455	template.
4456	(__default_alloc_template): Same.
4457
44582002-04-17  Benjamin Kosnik  <bkoz@redhat.com>
4459
4460	* testsuite/27_io/filebuf_virtuals.cc: Add _S_pback_size instantiation.
4461
44622002-04-16  Benjamin Kosnik  <bkoz@redhat.com>
4463
4464	* src/concept-inst.cc (vector<locale::facet*>): Remove instantiations.
4465	* src/stl-inst.cc (vector::_M_insert_aux): Remove instantiation.
4466	(__malloc_alloc_template): Conditionalize.
4467
4468	* include/bits/istream.tcc: Remove sputbackc calls.
4469
4470	* testsuite/19_diagnostics/stdexceptions.cc: Fix comment.
4471
44722002-04-16  Paolo Carlini <pcarlini@unitus.it>
4473
4474	* testsuite/24_iterators/rel_ops.cc: New test.
4475
44762002-04-16  Gabriel Dos Reis  <gdr@merlin.codesourcery.com>
4477
4478	* include/bits/type_traits.h (__normal_iterator): Declare in
4479	__gnu_cxx.  Adjust use at global namespace.
4480	* include/bits/stl_iterator.h (__normal_iterator): Move definition
4481	into __gnu_cxx::. Add more operator overloads.  Tidy existing ones.
4482	* include/bits/basic_string.h (basic_string): Adjust use of
4483	__normal_iterator.
4484	* include/bits/stl_vector.h (_Alloc>): Likewise.
4485	* src/concept-inst.cc (__gnu_cxx): __normal_iterator<> is now here.
4486	* src/string-inst.cc (operator==): Instantiate in __gnu_cxx.
4487
44882002-04-15  Benjamin Kosnik  <bkoz@redhat.com>
4489
4490	PR libstdc++/4164
4491	Valgrind fixes.
4492	* config/io/basic_file_stdio.cc (__basic_file::~__basic_file):
4493	Call close.
4494	(__basic_file::close): Call fflush. Correct return if fclose ok.
4495	(__basic_file::is_open): Make const.
4496	Change __c_file_type to __c_file.
4497	* config/io/basic_file_stdio.h: Change __c_file_type to __c_file.
4498	(__basic_file::is_open): Make const.
4499	* config/io/c_io_stdio.h: Change __c_file_type to __c_file.
4500	* include/std/std_fstream.h (filebuf::_M_allocate_file): Remove.
4501	(filebuf::_M_unbuf): Add.
4502	(filebuf::_M_file): Change to non-pointer.
4503	(filebuf::_M_allocate_pback_buffer): Remove.
4504	* include/bits/fstream.tcc (filebuf::_M_allocate_file): Remove.
4505	(filebuf::_M_allocate_internal_buffer): Use _M_unbuf.
4506	Change initialization list for _M_file change.
4507	(filebuf::_M_allocate_pback_buffer): Remove.
4508	Change _M_file usage to reflect non-pointer data member.
4509
4510	* config/locale/generic/c_locale.cc
4511	(locale::facet::_S_create_c_locale): Add parameter.
4512	* config/locale/generic/collate_members.cc: Change
4513	_M_compare_helper to _M_compare.
4514	Change _M_transform_helper to _M_transform.
4515	* config/locale/generic/monetary_members.cc: Changeup data types.
4516	Add dtors.
4517	* config/locale/generic/numeric_members.cc: Add dtors.
4518	* config/locale/generic/time_members.cc: Add dtors.
4519	* config/locale/gnu/c_locale.cc: Add parameter.
4520	* config/locale/gnu/collate_members.cc:Change
4521	_M_compare_helper to _M_compare.
4522	Change _M_transform_helper to _M_transform.
4523	* config/locale/gnu/ctype_members.cc: Better error checking.
4524	* config/os/gnu-linux/bits/ctype_noninline.h: Better error checking.
4525	* config/locale/gnu/messages_members.cc: Tweak comment.
4526	* config/locale/gnu/monetary_members.cc: Change data types.
4527	Add dtors.
4528	* config/locale/gnu/numeric_members.cc: Add dtors, better error
4529	checking.
4530	* config/locale/gnu/time_members.cc: Same.
4531	* config/locale/ieee_1003.1-2001/c_locale.cc
4532	(locale::facet::_S_create_c_locale): Add parameter.
4533	* config/locale/ieee_1003.1-2001/c_locale.h: Correct typedef.
4534	* config/locale/ieee_1003.1-2001/codecvt_specializations.h: Remove
4535	bogus ctor.
4536
4537	* include/bits/locale_facets.h (moneypunct): Use string literals.
4538	Don't define dtor.
4539	(numpunct): Same.
4540	(__timepunct): Same.
4541	(locale::_Impl::_M_facets): Change from vector to array.
4542	(locale::_Impl::_M_names): Change from array of strings to array
4543	of string literals.
4544	(locale::facet::_S_create_c_locale): Add parameter.
4545	(locale::locale::_S_num_facets): Move to...
4546	(locale::_Impl::_M_facets_size): Here.
4547	* include/bits/locale_facets.tcc: Fixups for _M_facets, _M_name
4548	changes.
4549	* include/bits/localefwd.h: (locale::id::_M_id): Add member function.
4550	(locale::_Impl::_Impl(facet**, size_t, bool)): Add.
4551	(locale::_Impl::_Impl(string, size_t)): Change to
4552	(locale::_Impl::_Impl(const char*, size_t)): This.
4553
4554	* include/bits/streambuf.tcc (streambuf::_S_pback_size): Define.
4555	* include/std/std_streambuf.h (streambuf::_M_pback_size): Change to
4556	(streambuf::_S_pback_size): This.
4557
4558	* src/globals.cc: Add pre-allocations for "C" facets.
4559	* src/locale-inst.cc: Remove vector instantiations.
4560	* src/locale.cc: Remove vector include. Fixups for _M_names,
4561	_M_facets changes.
4562	* src/localename.cc: Same.
4563
4564	* include/bits/stl_vector.h: Fix odd formatting.
4565
4566	* include/bits/basic_string.tcc: Tweak comment.
4567
4568	* libsupc++/new: Make sure parameters are uglified.
4569	* libsupc++/typeinfo: Same.
4570
4571	* testsuite/22_locale/num_get_members_char.cc: Fixup.
4572	* testsuite/22_locale/num_get_members_wchar_t.cc: Same.
4573	* testsuite/27_io/filebuf_members.cc: Same.
4574
45752002-04-12  Steve Ellcey  <sje@cup.hp.com>
4576
4577	* gcc/libstdc++-v3/config/os/hpux/bits/os_defines.h
4578	(strtoll, strtoull): In 64 bit mode HP-UX (IA64 and HPPA)
4579	does not define strtoll or strtoull, but does define strtol
4580	and strtoul which are the same since in 64 bit mode
4581	sizeof(long) == sizeof(long long).
4582
45832002-04-12  Phil Edwards  <pme@gcc.gnu.org>
4584
4585	* include/std/std_bitset.h:  Doxygenate std::bitset<>.  Clean up
4586	trailing spaces, indentation, and macro names.  Make exception
4587	messages more informative.
4588
45892002-04-11  Richard Henderson  <rth@redhat.com>
4590
4591	* include/bits/fstream.tcc (basic_filebuf<>::open): Fix & ordering.
4592	* include/bits/ostream.tcc (basic_ostream<>::operator<<(long)): Same.
4593	(basic_ostream<>::operator<<(long long)): Same.
4594
45952002-04-11  Richard Henderson  <rth@redhat.com>
4596
4597	* config/linker-map.gnu: Add __gxx_personality_sj0.
4598
45992002-04-09  Benjamin Kosnik  <bkoz@redhat.com>
4600
4601	libstdc++/1072
4602	* include/bits/localefwd.h (locale::_Impl::_M_facets): Change from
4603	pointer to vector.
4604	Remove forward declaration of vector.
4605	Include vector.
4606	* include/bits/locale_facets.tcc: Remove vector include.
4607	(use_locale): Adjust.
4608	(has_locale): Adjust.
4609	* src/locale.cc: Adjust.
4610	* src/localename.cc: Same.
4611
46122002-04-09  Benjamin Kosnik  <bkoz@redhat.com>
4613	    Richard Henderson  <rth@redhat.com>
4614
4615	* include/bits/sstream.tcc: Clean up bit ops.
4616	* include/bits/fstream.tcc: Same.
4617
46182002-04-09  Jakub Jelinek  <jakub@redhat.com>
4619
4620	* include/bits/locale_facets.h (__num_base::_S_scale_hex): Remove.
4621	(__num_base::_S_scale_oct): Remove.
4622	* src/locale.cc (__num_base::_S_scale_hex): Remove.
4623	(__num_base::_S_scale_oct): Remove.
4624
46252002-04-09  Benjamin Kosnik  <bkoz@redhat.com>
4626
4627	libstdc++/6124
4628	* testsuite/23_containers/bitset_members.cc: New test.
4629	* include/std/std_bitset.h (_Bit_count::_S_bit_count): Move..
4630	(_S_bit_count): Here.
4631	(_First_one::_S_first_one): Move...
4632	(_S_first_one): Here.
4633	Format.
4634	* src/bitset.cc: Adjust.
4635	* config/linker-map.gnu: Export.
4636
46372002-04-08  Benjamin Kosnik  <bkoz@redhat.com>
4638
4639	libstdc++/5180
4640	* include/bits/fstream.tcc (filebuf::seekpos): Fix.
4641	* include/std/std_fstream.h: Clean.
4642	* include/bits/ostream.tcc: Remove extraneous variables.
4643	* include/bits/sstream.tcc (stringbuf::seekoff): Be strict about
4644	open modes and which modes.
4645	(stringbuf::seekpos): Same.
4646	* testsuite/27_io/stringbuf_virtuals.cc: New tests.
4647
46482002-04-05  Jonathan Wakely <jw@kayari.org>
4649
4650	* include/bits/stl_algo.h (unique_copy, __gcd, rotate, rotate_copy,
4651	random_shuffle, partition, stable_partition, sort, stable_sort,
4652	partial_sort, partial_sort_copy, nth_element):  Doxygenate.
4653
46542002-04-05  David S. Miller  <davem@redhat.com>
4655
4656	* config/os/gnu-linux/bits/os_defines.h
4657	(__glibcpp_long_double_bits): Set to 64 on 32-bit Sparc.
4658
46592002-04-04  Benjamin Kosnik  <bkoz@redhat.com>
4660
4661	libstdc++/3457
4662	via gawrilow@math.tu-berlin.de
4663	* acinclude.m4 (version_specific_libs): Fix combo usage with
4664	--with-gxx-include-dir.
4665	* aclocal.m4: Regenerate.
4666	* configure: Same.
4667
46682002-04-03  Benjamin Kosnik  <bkoz@redhat.com>
4669
4670	As per DR 184, libstdc++/3139
4671	* include/std/std_limits.h (__glibcpp_bool_digits): Change to 1.
4672	(numeric_limits<bool>::is_iec559): False.
4673	(numeric_limits<bool>::is_modulo): False.
4674
4675	* testsuite/27_io/ios_init.cc: Add instantiations.
4676
46772002-04-02  Benjamin Kosnik  <bkoz@redhat.com>
4678
4679	libstdc++/5268
4680	* src/ios.cc: (ios_base::Init::_S_ios_destroy): Remove flush calls.
4681	* testsuite/27_io/ios_init.cc (tests04): Add test.
4682
4683	libstdc++/3983
4684	* include/bits/basic_ios.h (basic_ios::_M_get_fctype_ios): Remove.
4685	(basic_ios::_M_ios_fctype): Consistently name to _M_fctype.
4686	* include/bits/basic_ios.tcc: Same. Remove outdated comments.
4687	* include/bits/istream.tcc: Use _M_fctype, make consistent with
4688	ostream.
4689	* testsuite/27_io/ios_init.cc (tests03): Add test.
4690
46912002-04-02  Phil Edwards  <pme@gcc.gnu.org>
4692
4693	* include/Makefile.am (install-data-local):  Use mkinstalldirs.
4694	* include/Makefile.in:  Regenerate.
4695
46962002-04-02  Paolo Carlini  <pcarlini@unitus.it>
4697	    Nathan Myers  <ncm@cantrip.org>
4698	    Philip Martin  <philip@codematters.co.uk>
4699
4700	* include/bits/basic_string.h
4701	(replace(i1, i2, _CharT* k1, _CharT* k2),
4702	replace(i2, i2, const _CharT* k1, const _CharT* k2),
4703	replace(i1, i2, iterator k1, iterator k2,
4704	replace(i1, i2, const_iterator k1, const_iterator k2):
4705	New specializations to optimize for the common cases of
4706	pointers and iterators.
4707	(replace(pos, n1, s, n2)): Tweak.
4708	* include/bits/basic_string.tcc: Tweak comments.
4709	* testsuite/21_strings/replace.cc (test04): New tests.
4710
47112002-04-01  Benjamin Kosnik  <bkoz@redhat.com>
4712
4713	libstdc++/5542
4714	* acinclude: More extensive checks for msgfmt, --enable-nls.
4715	* aclocal.m4: Regenerate.
4716	* configure: Regenerate.
4717
47182002-04-01  Phil Edwards  <pme@gcc.gnu.org>
4719
4720	* libsupc++/exception (__verbose_terminate_handler):  Point to docs.
4721	* docs/doxygen/doxygroups.cc:  Doxygen hooks for abi::__cxa_demangle.
4722	* docs/html/18_support/howto.html:  Document the demangler.
4723	* docs/html/17_intro/howto.html:  And link to it.
4724
4725	* docs/doxygen/mainpage.html:  Describe user-vs-maintainer docs.
4726	* docs/doxygen/run_doxygen:  Print user-vs-maintainer.
4727
47282002-04-01  Phil Edwards  <pme@gcc.gnu.org>
4729
4730	* config/linker-map.gnu:  Export __verbose_terminate_handler.
4731	* libsupc++/Makefile.am (sources):  Add cxa_demangle.c, dyn-string.c.
4732	Make new LTCOMPILE variable, use it in new special build rules.
4733	* libsupc++/Makefile.in:  Rebuild.
4734	* src/vterminate.cc (__verbose_terminate_handler):  Enable use of
4735	runtime __cxa_demangle.
4736
4737	* docs/html/install.html:  Update prereqs and instructions.
4738	* docs/html/19_diagnostics/howto.html:  Bring naming for
4739	verbose_terminate_handler into line with reality.
4740
47412002-04-01  Benjamin Kosnik  <bkoz@redhat.com>
4742
4743	libstdc++/3129
4744	* include/bits/basic_ios.h (basic_ios::_M_exception): Move.
4745	(basic_ios::_M_streambuf_state): Move.
4746	* include/bits/ios_base (ios_base): To here.
4747	* include/bits/ios_base.h (ios_base::_S_local_words): To
4748	_S_local_word_size.
4749	(ios_base::_M_word_array): To _M_local_word.
4750	(ios_base::_M_words_limit): To _M_word_size.
4751	(ios_base::_M_words): To _M_word.
4752	Comment.
4753	* include/bits/basic_ios.tcc: Adjust.
4754	* src/ios.cc (ios_base::_M_grow_words): Tweak.
4755	* testsuite/27_io/ios_base_storage.cc: Add tests.
4756
4757	libstdc++/5207
4758	Kenny Simpson <theonetruekenny@yahoo.com>
4759	* include/bits/ios_base.h: Fix.
4760
4761	Richard Henderson  <rth@redhat.com>
4762	* include/bits/ostream.tcc (ostream::operator<<(_CharT)): Correct
4763	last change.
4764
4765	* include/bits/basic_string.h: Tweak formatting.
4766
47672002-04-01  Paolo Carlini  <pcarlini@unitus.it>
4768
4769	* config/locale/ieee_1003.1-2001/codecvt_specializations.h
4770	(codecvt::do_out, codecvt::do_unshift, codecvt::do_in):
4771	By definition, sizeof(char) == 1.
4772	* include/bits/locale_facets.tcc (money_get::do_get,
4773	money_put::do_put): Ditto.
4774	* testsuite/21_strings/inserters_extractors.cc
4775	(test04): Ditto.
4776
47772002-03-30  Richard Henderson  <rth@redhat.com>
4778
4779	PR c++/3719
4780	* libsupc++/eh_personality.cc (__cxa_call_unexpected): Copy handler
4781	data out of the exception struct before calling unexpectedHandler.
4782
47832002-03-28  Roger Sayle  <roger@eyesopen.com>
4784
4785	* include/c_std/std_cmath.h:  To prevent problems overloading
4786	g++ builtins, use the double variants from the global namespace
4787	before defining float and long double variants in std::.
4788
47892002-03-28  Loren J. Rittle <ljrittle@acm.org>
4790
4791	* testsuite/18_support/numeric_limits.cc (test_extrema): Fix typo.
4792
47932002-03-28  Paolo Carlini  <pcarlini@unitus.it>
4794
4795	* testsuite/24_iterators/istream_iterator.cc
4796	(test02): New tests.
4797
47982002-03-28  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
4799	    Paolo Carlini  <pcarlini@unitus.it>
4800
4801	* testsuite/22_locale/codecvt_members_unicode_wchar_t.cc
4802	(test01): Protect the test with _GLIBCPP_USE_WCHAR_T;
4803	fix i_lit_base e_lit_base arrays, making them independent
4804	from the endianness of the platform; tweak UCS4 to UCS-4BE.
4805
48062002-03-27  Benjamin Kosnik  <bkoz@redhat.com>
4807
4808	* include/bits/ostream.tcc (ostream::operator<<(_CharT)): Always
4809	allocate at least a byte.
4810
4811	* testsuite/18_support/numeric_limits.cc (test_extrema): Make
4812	debugger-friendly.
4813	* testsuite/27_io/streambuf.cc (test07): Fix.
4814	(test06): Enable.
4815
48162002-03-27  Phil Edwards  <pme@gcc.gnu.org>
4817
4818	* docs/doxygen/Intro.3:  Date tweak.
4819	* docs/doxygen/TODO:  Update.
4820	* docs/doxygen/doxygroups.cc:  Point to tables.html.
4821	* docs/doxygen/mainpage.html:  Date tweak.
4822	* docs/doxygen/run_doxygen:  Version tweak.  Copy tables.html over.
4823	* docs/doxygen/tables.html:  Fill in the blanks.
4824
4825	* docs/doxygen/user.cfg.in (ALIASES):  Remove maint and endmaint.
4826	* include/bits/stl_algo.h:  Likewise; use expanded form.
4827	* include/bits/stl_alloc.h:  Likewise.
4828	* include/bits/stl_construct.h:  Likewise.
4829	* include/bits/stl_deque.h:  Likewise.
4830	* include/bits/stl_iterator_base_types.h:  Likewise.
4831	* include/bits/stl_list.h:  Likewise.
4832	* include/bits/stl_relops.h:  Likewise.
4833	* include/bits/stl_tempbuf.h:  Likewise.
4834	* include/bits/stl_vector.h:  Likewise.
4835	* include/std/std_memory.h:  Likewise.
4836
4837	* include/bits/stl_deque.h:  Point into tables.html and add @ingroup.
4838	* include/bits/stl_list.h:  Likewise.
4839	* include/bits/stl_vector.h:  Likewise.
4840
48412002-03-26  Benjamin Kosnik  <bkoz@redhat.com>
4842
4843	* include/c/: Guard with _CPP_.
4844	* include/c_std/: Same.
4845	* include/Makefile.am: Fixup install, link routines for null
4846	c_base_headers_extra scenarios.
4847	* include/Makefile.in: Regerate.
4848
48492002-03-25  Paolo Carlini <pcarlini@unitus.it>
4850	    Richard Henderson  <rth@redhat.com>
4851
4852	* testsuite/22_locale/codecvt_members_unicode_char.cc
4853	(test01, test02): make sure that the i_lit_base array
4854	is sufficiently aligned.
4855
48562002-03-25  Benjamin Kosnik  <bkoz@redhat.com>
4857
4858	* config/os/newlib/bits/ctype_noninline.h (ctype::classic): Set to
4859	_ctype_.
4860
48612002-03-25  Paolo Carlini  <pcarlini@unitus.it>
4862
4863	* testsuite/22_locale/collate_byname.cc
4864	(test01): compare the result of collate::compare with
4865	that of collate::transform + string::compare, not with
4866	that of collate::transform + collate::compare; values
4867	returned by collate::compare are normalized, therefore
4868	test against +-1.
4869
48702002-03-25  Benjamin Kosnik  <bkoz@redhat.com>
4871	    Jakub Jelinek  <jakub@redhat.com>
4872
4873	* config/locale/gnu/messages_members.h: Correct conditional.
4874	* config/locale/gnu/messages_members.cc: Same.
4875	* config/locale/gnu/time_members.cc: Same.
4876
48772002-03-25  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
4878	    Paolo Carlini  <pcarlini@unitus.it>
4879
4880	* testsuite/22_locale/codecvt_members_unicode_char.cc
4881	(test01, test02): Fix i_lit_base arrays, making them
4882	independent from the endianness of the platform.
4883
48842002-03-22  Benjamin Kosnik  <bkoz@redhat.com>
4885
4886	* acinclude.m4 (GLIBCPP_CHECK_COMPLEX_MATH_SUPP): Just test for
4887	signbit and __signbit directly.
4888	* aclocal.m4: Regenerate.
4889	* configure: Regenerate.
4890	* config.h.in: Regenerate.
4891	* libmath/Makefile.am: Simplify.
4892	* libmath/Makefile.in: Regenerate.
4893	* include/c_std/std_cmath.h: Update paths for include of cmath.tcc.
4894
4895	* include/Makefile.am: Clean up handling of extra "C" header files.
4896	Add hooks for "C" compatibility headers.
4897	* include/Makefile.in: Regenerate.
4898
4899	* include/c/*: Formatting tweaks, cleanups.
4900	* include/c_std/*: Same.
4901
49022002-03-22  Benjamin Kosnik  <bkoz@redhat.com>
4903
4904	* config/locale/gnu/messages_members.h: Add __uselocale bits.
4905	* config/locale/gnu/messages_members.cc: Same.
4906	* config/locale/gnu/time_members.cc: Same.
4907
49082002-03-22  Benjamin Kosnik  <bkoz@redhat.com>
4909
4910	* src/vterminate.cc: Format, -fno-exceptions cleanup.
4911
49122002-03-21  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
4913
4914	* acinclude.m4 (GLIBCPP_CHECK_STDLIB_DECL_AND_LINKAGE_3): New.
4915	(GLIBCPP_CONFIGURE_TESTSUITE): Use it to check for setenv.
4916	* aclocal.m4: Regenerate.
4917	* configure: Likewise.
4918
49192002-03-19  Paolo Carlini  <pcarlini@unitus.it>
4920	    Ulrich Drepper  <drepper@redhat.com>
4921
4922	* src/locale-inst.cc (__convert_from_v): Add an additional
4923	__size parameter in the declarations.
4924	* include/bits/locale_facets.tcc
4925	(__convert_from_v): When available (that is,
4926	_GLIBCPP_USE_C99 defined) use snprintf instead of sprintf.
4927	(num_put::_M_convert_float): Depending on _GLIBCPP_USE_C99
4928	being defined or not, call and use __convert_from_v in the
4929	appropriate way.
4930	(num_put::_M_convert_int): Same here.
4931	(money_put::do_put(long double)): Same here.
4932
49332002-03-19  Phil Edwards  <pme@gcc.gnu.org>
4934
4935	* docs/html/faq/index.html (#3.6):  Rewrap and close <a href> tags.
4936	* docs/html/faq/index.txt:  Regenerate.
4937
49382002-03-19  Steve Ellcey  <sje@cup.hp.com>
4939
4940	* acinclude.m4 (GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS): Define
4941	GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS to set LIBUNWIND_FLAG if
4942	--enable-libunwind-exceptions is set.
4943	* configure.in (GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS): Call new
4944	macro to check for libunwind.
4945	* configure: Regenerate.
4946	* src/Makefile.am (libstdc___la_LDFLAGS): Add
4947	LIBUNWIND_FLAG to libstdc link line.
4948	* src/Makefile.in: Regenerate.
4949
49502002-03-19  Benjamin Kosnik  <bkoz@redhat.com>
4951
4952	* docs/html/faq/index.html: Add OS X workaround.
4953	* docs/html/17_intro/TODO: Update.
4954
49552002-03-18  Paolo Carlini  <pcarlini@unitus.it>
4956
4957	* include/bits/locale_facets.tcc
4958	(money_put::do_put(long double)): Fix dimensioning of
4959	temporary buffers to avoid risk of overruns.
4960	(money_put::do_put(string)): Same for the buffer used to
4961	add the grouping chars.
4962	* testsuite/22_locale/money_put_members_char.cc: Add test06.
4963	* testsuite/22_locale/money_put_members_wchar_t.cc: Ditto.
4964
4965	* include/bits/locale_facets.tcc
4966	(collate::do_transform): Simplify.
4967
49682002-03-18  Phil Edwards  <pme@gcc.gnu.org>
4969
4970	* acinclude.m4 (GLIBCPP_CONFIGURE):  Make indentation/spacing uniform.
4971	* configure.in:  Add comments pointing the way for autoconf 2.5x.
4972	* aclocal.m4, config.h.in, configure:  Regenerate.
4973
49742002-03-18  Philipp Thomas  <pthomas@suse.de>
4975
4976	* include/backward/hash_map.h: hash, hashtable, hash_map and
4977	hash_multimap are in namespace __gnu_cxx.
4978	include/backward/hash_set.h: hash, hashtable, hash_set and
4979	hash_multiset are in namespace __gnu_cxx.
4980	include/backward/hashtable.h: hash and hashtable are in
4981	namespace __gnu_cxx.
4982	include/backward/rope.h: char_producer, sequence_buffer,
4983	rope, crope and wrope are in namespace __gnu_cxx.
4984	include/backward/slist.h: slist is in namespace __gnu_cxx.
4985	* testsuite/backward/header_hash_map_h.cc
4986	testsuite/backward/header_hash_set_h.cc
4987	testsuite/backward/header_hashtable_h.cc
4988	testsuite/backward/header_rope_h.cc
4989	testsuite/backward/header_slist_h.cc
4990	testsuite/backward/header_tempbuf_h.cc: New tests for
4991	checking that we're using the correct namespace.
4992
49932002-03-17  Jason Merrill  <jason@redhat.com>
4994
4995	PR c++/4381
4996	* libsupc++/eh_personality.cc (get_adjusted_ptr): New static fn.
4997	(check_exception_spec): Call it.  Take the thrown pointer.
4998	(__cxa_call_unexpected): Pass it.
4999	(PERSONALITY_FUNCTION): Likewise.  Use get_adjusted_ptr.
5000
50012002-03-15  Anthony Green  <green@redhat.com>
5002
5003	* configure.in: Remove useless is_mingw32.
5004	* configure: Rebuilt.
5005
50062002-03-15  Paolo Carlini  <pcarlini@unitus.it>
5007
5008	* testsuite/22_locale/collate_members_char.cc
5009	(test01): compare the result of collate::compare with
5010	that of collate::transform + string::compare, not with
5011	that of collate::transform + collate::compare.
5012	(test01): values returned by collate::compare are
5013	normalized, therefore test against +-1.
5014	* testsuite/22_locale/collate_members_wchar_t.cc: Ditto.
5015
50162002-03-12  Loren Rittle  <ljrittle@acm.org>
5017
5018	reported by Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
5019	* testsuite/thread/pthread4.cc: Lower nominal iteration counter.
5020
50212002-03-12  Benjamin Kosnik  <bkoz@redhat.com>
5022	    Per Liboriussen  <liborius@stofanet.dk>
5023
5024	* config/os/gnu-linux/bits/ctype_noninline.h: Cast to
5025	unsigned char.
5026	* config/os/gnu-linux/bits/ctype_inline.h: Same.
5027
5028	* config/os/irix/irix6.5/bits/ctype_inline.h: Same.
5029
5030	* config/os/solaris/solaris2.5/bits/ctype_inline.h: Same.
5031	* config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.
5032
5033	* config/os/solaris/solaris2.6/bits/ctype_inline.h: Same.
5034	* config/os/solaris/solaris2.6/bits/ctype_noninline.h: Same.
5035
5036	* config/os/solaris/solaris2.7/bits/ctype_inline.h: Same.
5037	* config/os/solaris/solaris2.7/bits/ctype_noninline.h: Same.
5038
5039	* testsuite/22_locale/ctype_members_char.cc (main): Add tests.
5040
50412002-03-12  Benjamin Kosnik  <bkoz@redhat.com>
5042
5043	* include/bits/basic_string.tcc (string::_S_construct(_InIter,
5044	_InIter, const _Alloc&, forward_iterator_tag): Check for null.
5045	(string::basic_string(const _CharT* __s, const _Alloc& __a)): Same.
5046	* testsuite/21_strings/ctor_copy_dtor.cc (test01): Re-enable, now
5047	that memory limits are in place.
5048	(test03): Add tests.
5049
50502002-03-11  Benjamin Kosnik  <bkoz@redhat.com>
5051
5052	* acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Check for wctype.h.
5053	* aclocal.m4: Regenerate.
5054	* config.h.in: Regenerate.
5055	* configure: Regenerate.
5056	* include/c_std/std_cwctype.h: Guard.
5057
50582002-03-11  Chris Demetriou  <cgd@broadcom.com>
5059
5060	* acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Enhance check for
5061	whether GLIBCPP_CHECK_LINKER_FEATURES has been used.
5062	* aclocal.m4: Regenerate.
5063	* configure: Regenerate.
5064
50652002-03-11  Benjamin Kosnik  <bkoz@redhat.com>
5066
5067	* include/bits/stl_bvector.h: Fix warning.
5068
50692002-03-11  Richard Henderson  <rth@redhat.com>
5070
5071	* include/bits/stl_bvector.h (_Bit_type): New.  Use throughout.
5072
50732002-03-11  Phil Edwards  <pme@gcc.gnu.org>
5074
5075	* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-list-sourcefiles):
5076	New function.  Build the list of tests to run in testsuite_files.
5077	* testsuite/libstdc++-v3.dg/dg.exp:  Use it.
5078
50792002-03-11  Phil Edwards  <pme@gcc.gnu.org>
5080
5081	* testsuite/21_strings/capacity.cc:  Only explicitly instantiate on
5082	platforms with no weak support.
5083	* testsuite/27_io/ios_init.cc:  Likewise.
5084
50852002-03-10  Paolo Carlini  <pcarlini@unitus.it>
5086
5087	* include/bits/locale_facets.tcc (time_put::do_put):
5088	Consider sizeof(char_type) in allocating the buffer.
5089
5090	* include/bits/locale_facets.tcc (collate::do_tranform):
5091	Remove redundant variable.
5092
50932002-03-10  Ulrich Drepper  <drepper@redhat.com>
5094	    Paolo Carlini  <pcarlini@unitus.it>
5095
5096	* config/locale/generic/collate_members.cc
5097	(collate<char,wchar_t>::_M_compare_helper): normalize
5098	values returned by strcoll and wcscoll.
5099	* config/locale/gnu/collate_members.cc
5100	(collate<char,wchar_t>::_M_compare_helper): ditto
5101	for __strcoll_l and __wcscoll_l.
5102
51032002-03-10  Anthony Green  <green@redhat.com>
5104
5105	* configure.in: Support cross builds to mingw32 target.
5106	* configure: Rebuilt.
5107
51082002-03-09  Paolo Carlini  <pcarlini@unitus.it>
5109
5110	* include/bits/locale_facets.tcc (collate::do_transform):
5111	Rewrite to fix problems with long transformed strings.
5112
51132002-03-08  Benjamin Kosnik  <bkoz@redhat.com>
5114
5115	* c_locale_generic.cc: Move to...
5116	* generic/c_locale.cc
5117	* c_locale_generic.h: Move to...
5118	* generic/c_locale.h
5119	* codecvt_specializations_generic.h: Move to...
5120	* generic/codecvt_specializations.h
5121	* collate_members_generic.cc: Move to...
5122	* generic/collate_members.cc
5123	* ctype_members_generic.cc: Move to...
5124	* generic/ctype_members.cc
5125	* messages_members_generic.cc: Move to...
5126	* generic/messages_members.cc
5127	* messages_members_generic.h: Move to...
5128	* generic/messages_members.h
5129	* moneypunct_members_generic.cc: Move to...
5130	* generic/monetary_members.cc
5131	* numpunct_members_generic.cc: Move to...
5132	* generic/numeric_members.cc
5133	* time_members_generic.cc: Move to...
5134	* generic/time_members.cc
5135	* c_locale_gnu.cc: Move to...
5136	* gnu/c_locale.cc
5137	* c_locale_gnu.h: Move to...
5138	* gnu/c_locale.h
5139	* collate_members_gnu.cc: Move to...
5140	* gnu/collate_members.cc
5141	* ctype_members_gnu.cc: Move to...
5142	* gnu/ctype_members.cc
5143	* messages_members_gnu.cc: Move to...
5144	* gnu/messages_members.cc
5145	* messages_members_gnu.h: Move to...
5146	* gnu/messages_members.h
5147	* moneypunct_members_gnu.cc: Move to...
5148	* gnu/monetary_members.cc
5149	* numpunct_members_gnu.cc: Move to...
5150	* gnu/numeric_members.cc
5151	* time_members_gnu.cc: Move to...
5152	* gnu/time_members.cc
5153	* c_locale_ieee_1003.1-200x.cc: Move to...
5154	* ieee_1003.1-2001/c_locale.cc
5155	* c_locale_ieee_1003.1-200x.h: Move to...
5156	* ieee_1003.1-2001/c_locale.h
5157	* codecvt_specializations_ieee_1003.1-200x.h: Move to...
5158	* ieee_1003.1-2001/codecvt_specializations.h
5159	* messages_members_ieee_1003.1-200x.cc: Move to...
5160	* ieee_1003.1-2001/messages_members.cc
5161	* messages_members_ieee_1003.1-200x.h: Move to...
5162	* ieee_1003.1-2001/messages_members.h
5163
5164	* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Make consistent.
5165	* aclocal.m4: Regenerate.
5166	* configure: Regenerate.
5167	* src/Makefile.am (sources): Change to monetary and numeric.
5168	* src/Makefile.in: Regenerate.
5169	* docs/html/configopts.html: Update to ieee_1003.1-2001.
5170
51712002-03-08  scott snyder  <snyder@fnal.gov>
5172
5173	libstdc++/5875
5174	* include/bits/locale_facets.tcc (num_put::_M_convert_float):
5175	Allow one more digit of precision.
5176	* testsuite/27_io/ostream_inserter_arith.cc: Test that we can
5177	write a double and read back in the same value.
5178
51792002-03-08  Benjamin Kosnik  <bkoz@redhat.com>
5180
5181	* include/std/std_limits.h: Move static const data members out of
5182	generic template, into base class __numeric_limits_base.
5183	* src/limits.cc: Add definitions.
5184	* config/linker-map.gnu: Add __numeric_limits_base.
5185	* testsuite/18_support/numeric_limits.cc: Declare test in scope.
5186
51872002-03-07  Benjamin Kosnik  <bkoz@redhat.com>
5188
5189	* include/bits/stl_alloc.h: Add extern implicit allocator
5190	instantiations.
5191	* include/bits/basic_string.tcc: Tweak.
5192	* include/bits/locale_facets.tcc: Remove default args. Add
5193	has_facet, use_facet extern instantiations.
5194	* src/stl-inst.cc: Add explicit instantiation.
5195	* src/locale-inst.cc: Clean. Remove locale member template
5196	instantiations.
5197
5198	* testsuite/22_locale/operators.cc (test02): Enable.
5199
52002002-03-06  Benjamin Kosnik  <bkoz@redhat.com>
5201	    Stephen M. Webb  <stephen.webb@bregmasoft.com>
5202
5203	* include/bits/stl_tree.h (_S_rb_tree_red): Make enum.
5204	(_S_rb_tree_black): Make enum.
5205	Clean. Format.
5206	* include/bits/stl_bvector.h (__WORD_BIT): To _M_word_bit, enum.
5207	* include/bits/stl_algo.h (__stl_chunk_size): _M_chunk_size, enum.
5208	(__stl_threshold): _M_threshold, enum.
5209	* src/stl-inst.cc: Same.
5210	* config/linker-map.gnu: Remove.
5211
5212	* testsuite/23_containers/vector_bool.cc: New.
5213
52142002-03-06  Phil Edwards  <pme@gcc.gnu.org>
5215
5216	* docs/doxygen/user.cfg.in:  Also document deprecated entries.
5217	* docs/html/Makefile:  Example rule to rebuild porting-howto.html.
5218	* docs/html/17_intro/howto.html:  "gcc"->"GCC" changes, when
5219	referring to the collection as a whole.  New section on which macros
5220	can be redefined by the user.
5221	* docs/html/19_diagnostics/howto.html:  Update note for concepts.
5222	* docs/html/20_util/howto.html:  Update link to SGI.
5223	* docs/html/faq/index.html:  Update snapshot versions.  New entry
5224	on why g++ (but not gcc) must currently predefine certain macros.
5225	* docs/html/faq/index.txt:  Regenerated.
5226
5227	* include/bits/basic_string.h (basic_string::_S_construct):  Fix
5228	names in declaration.
5229	(basic_string::compare):  These are no longer optional.
5230	* include/bits/ostream.tcc:  Tweak closing brace placement.
5231	* include/bits/stl_algo.h:  Lots of initial doxygen comment hooks.
5232	* include/std/std_sstream.h:  Fix typo in comment.
5233	* include/bits/locale_facets.tcc:  Remove unneeded header inclusion.
5234	* src/locale.cc:  Likewise.
5235
52362002-03-06  Phil Edwards  <pme@gcc.gnu.org>
5237
5238	PR libstdc++/5734
5239	* include/bits/stl_vector.h (vector::push_back()):  Guard with
5240	_GLIBCPP_DEPRECATED.
5241
52422002-03-06  Phil Edwards  <pme@gcc.gnu.org>
5243
5244	* include/bits/c++config:  Fix misplaced leading blanks on first line.
5245
52462002-03-05  Benjamin Kosnik  <bkoz@redhat.com>
5247
5248	* docs/html/17_intro/RELEASE-NOTES: Fix usage.
5249	* README (libmath): Make clear.
5250
52512002-03-05  Jakub Jelinek  <jakub@redhat.com>
5252
5253	* acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Check for version
5254	script globbing in ld.
5255	* aclocal.m4: Rebuilt.
5256	* configure: Rebuilt.
5257
52582002-03-05  Benjamin Kosnik  <bkoz@redhat.com>
5259
5260	* docs/html/17_intro/RELEASE-NOTES: Update.
5261	* README: Format subdirectories.
5262
52632002-03-05  Paolo Carlini  <pcarlini@unitus.it>
5264
5265	libstdc++/5816
5266	* include/bits/locale_facets.tcc
5267	(num_get::_M_extract_float): Fix the parsing of __dec, since
5268	the standard prescribes that if no grouping characters are
5269	seen, no grouping check is applied.
5270	* testsuite/22_locale/num_get_members_char.cc: Add test05
5271	distilled from the PR.
5272	* testsuite/22_locale/num_get_members_wchar_t.cc: Ditto.
5273
52742002-03-04  Craig Rodrigues  <rodrigc@gcc.gnu.org>
5275
5276	* docs/html/17_intro/porting-howto.xml: Refer to
5277	http://www.oasis-open.org for docbookx.dtd.
5278	* docs/html/17_intro/porting-howto.html: Regenerated.
5279
52802002-03-03  Phil Edwards  <pme@gcc.gnu.org>
5281
5282	PR libstdc++/3955
5283	* include/std/std_sstream.h:  Remove trailing spaces.
5284	(basic_stringbuf::_M_stringbuf_init):  Also check for ios_base::app.
5285	* testsuite/27_io/stringbuf.cc (test05, test06):  New tests.
5286
52872002-03-02  Paolo Carlini  <pcarlini@unitus.it>
5288
5289	* testsuite/22_locale/num_get_members_char.cc (test04):
5290	Use a named locale expecting grouping (de_DE).
5291	* testsuite/22_locale/num_get_members_wchar_t.cc (test04):
5292	Ditto.
5293	* testsuite/27_io/ios_manip_basefield.cc (test01):
5294	Extend coverage, uniform treatment of hexs and octs.
5295
52962002-02-28  Richard Henderson  <rth@redhat.com>
5297
5298	* config/linker-map.gnu: Export operator new with unsigned long,
5299	and with std::nothrow_t.  Likewise operator delete.
5300
53012002-02-28  Paolo Carlini  <pcarlini@unitus.it>
5302
5303	* include/bits/locale_facets.tcc (num_get::_M_extract_int):
5304	Admit grouping for octals and hexadecimals too.
5305	* testsuite/22_locale/num_get_members_char.cc: Add test04.
5306	(test01): Tweak "." -> "," in void* test.
5307	* testsuite/22_locale/num_get_members_wchar_t.cc: Ditto.
5308
5309	* testsuite/27_io/ios_manip_basefield.cc: Remove static keyword.
5310	* testsuite/27_io/ios_manip_fmtflags.cc: Remove two of them.
5311
53122002-02-27  Paolo Carlini  <pcarlini@unitus.it>
5313
5314	* testsuite/27_io/ios_manip_basefield.cc (test01):
5315	Fix for 64 bit machines.
5316
53172002-02-26  Benjamin Kosnik  <bkoz@redhat.com>
5318
5319	libstdc++/3983
5320	* include/bits/basic_ios.tcc (basic_ios::init): Set _M_fill to zero.
5321	Adjust comment.
5322	* include/bits/basic_ios.h (basic_ios::_M_fill): Make mutable.
5323	(basic_ios::_M_fill_init): New.
5324	(basic_ios::fill()): Delay dealing with _M_fill.
5325	Adjust comment.
5326	* ios.cc (ios_base::ios_base()): Initialize _M_callbacks, _M_words.
5327	(ios_base::_M_call_callbacks): Adjust.
5328	* testsuite/27_io/ios_init.cc (test02): Adjust testcase.
5329
53302002-02-26  Loren Rittle  <ljrittle@acm.org>
5331
5332	* include/Makefile.am (thread_target_headers): Unconditionally
5333	stage and install gthr-posix.h.
5334	(${target_builddir}/gthr-posix.h): New rule cloned off
5335	${target_builddir}/gthr-default.h.
5336	(${target_builddir}/gthr-default.h): Support chained inclusion
5337	of gthr support headers.
5338	* include/Makefile.in: Rebuilt.
5339
53402002-02-26  Paolo Carlini  <pcarlini@unitus.it>
5341
5342	* include/bits/locale_facets.tcc (num_put::_M_widen_int):
5343	Group all the integral types, not only decs.
5344	* testsuite/27_io/ios_manip_basefield.cc (test01): Tweak existing
5345	tests, add a few more.
5346
53472002-02-25  Benjamin Kosnik  <bkoz@redhat.com>
5348
5349	* src/ios.cc (ios_base::~ios_base): Tweak.
5350	(ios_base::_M_call_callbacks): Deal with null __p.
5351	(ios_base::ios_base): Set _M_callbacks.
5352	* include/bits/basic_ios.tcc (basic_ios::init): Adjust comment.
5353	* testsuite/27_io/ios_init.cc (test02): Fix.
5354
5355	* mkcheck.in (static_fail): Failed links go to output file.
5356
53572002-02-25  Phil Edwards  <pme@gcc.gnu.org>
5358
5359	* docs/html/faq/index.html:  Update.
5360	* docs/html/faq/index.txt:  Regenerate.
5361
53622002-02-22  Phil Edwards  <pme@gcc.gnu.org>
5363
5364	* acinclude.m4 (GLIBCPP_ENABLE_SYMVERS):  Fix comment.
5365	* aclocal.m4:  Regenerate.
5366	* docs/html/configopts.html:  Document --enable-symvers.
5367	* config/linker-map.gnu:  Break libsupc++ symbols out to their own tag.
5368
53692002-02-22  Philipp Thomas  <pthomas@suse.de>
5370
5371	* include/backward/tempbuf.h: get_temporary_buffer and
5372	return_temporary_buffer are in namespace std, not in __gnu_cxx.
5373
53742002-02-21  Benjamin Kosnik  <bkoz@redhat.com>
5375
5376	* configure.in (target_alias): Default to yes.
5377	* acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Add check for shared
5378	libgcc to default case.
5379
53802002-02-20  Phil Edwards  <pme@gcc.gnu.org>
5381
5382	* acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES):  Also check version.
5383	(GLIBCPP_ENABLE_SYMVERS):  Redo logic, use linker version.
5384	* configure.in (GLIBCPP_ENABLE_SYMVERS):  Move later in the script.
5385	* aclocal.m4:  Regenerate.
5386	* configure:  Regenerate.
5387	* config/linker-map.dummy:  New file.  Contains nothing useful.
5388
53892002-02-20  Benjamin Kosnik  <bkoz@redhat.com>
5390
5391	* testsuite/22_locale/money_put_members_char.cc: Fix.
5392	* testsuite/22_locale/money_put_members_wchar_t.cc: Fix.
5393
5394	* testsuite/27_io/standard_manipulators.cc: New file.
5395
5396	* testsuite/27_io/ios_manip_basefield.cc: Check results, now failing.
5397	* testsuite/27_io/ios_manip_fmtflags.cc: Use locale::classic().
5398
53992002-02-20  Danny Smith  <dannysmith@users.sourceforge.net>
5400
5401	* config/os/mingw32/bits/ctype_noninline.h
5402	(ctype<char>::ctype): Remove default args from parm list.
5403	* config/os/djgpp/bits/ctype_noninline.h: Same.
5404
54052002-02-19  Benjamin Kosnik  <bkoz@redhat.com>
5406
5407	* include/std/std_iomanip.h: Inline, tweaks.
5408	* config/linker-map.gnu: Remove hacks.
5409
5410	* testsuite/21_strings/capacity.cc: Add explicit instantiations.
5411	* testsuite/27_io/ios_init.cc: Same.
5412	* testsuite/22_locale/money_get_members_char.cc (test07): Fix.
5413	* testsuite/22_locale/money_get_members_wchar_t.cc (test07): Same.
5414
54152002-02-19  Benjamin Kosnik  <bkoz@redhat.com>
5416
5417	* config/linker-map.gnu: Export global vtable, typeinfo, guard
5418	variable, and thunk info as per CXXABI docs.
5419
54202002-02-19  Loren Rittle <ljrittle@acm.org>
5421
5422	* include/Makefile.am: Use CONFIG_HEADER instead of ad hoc names.
5423	* include/Makefile.in: Rebuilt.
5424
54252002-02-18  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
5426
5427	* testsuite/22_locale/collate_byname.cc (test01): Replace size4
5428	  with size3 for the string collations of str5.
5429
54302002-02-18  Paolo Carlini  <pcarlini@unitus.it>
5431
5432	libstdc++/5708
5433	* include/bits/locale_facets.tcc (money_put::do_put):
5434	For the space field use __fill instead of ' ', uniformly.
5435	* testsuite/22_locale/money_put_members_char.cc:
5436	Add test05 distilled from PR.
5437	(test01-02-03): Trim some '*' to ' '.
5438	* testsuite/22_locale/money_put_members_wchar_t.cc: Ditto.
5439
54402002-02-18  Loren Rittle <ljrittle@acm.org>
5441
5442	libstdc++/5697
5443	* include/Makefile.am (thread_builddir): Remove (map all
5444	existing uses to target_builddir).
5445	(thread_headers): Rename to...
5446	(thread_target_headers): ...this.
5447	(stamp-thread): Remove.
5448	(stamp-target): Correctly state the position as built.
5449	Update all dependencies to match the new reality.  Remove all
5450	dependency calculations on directories.
5451	* include/Makefile.in: Rebuilt.
5452
54532002-02-16   Benjamin Kosnik  <bkoz@redhat.com>
5454
5455	* include/bits/locale_facets.tcc: Add pragma GCC system_header.
5456	* include/bits/fstream.tcc: Same.
5457	* include/bits/sstream.tcc: Same.
5458	* include/bits/ostream.tcc: Same.
5459	* include/bits/istream.tcc: Same.
5460	* include/bits/streambuf.tcc: Same.
5461	* include/bits/basic_ios.tcc: Same.
5462	* include/bits/basic_string.tcc: Same.
5463
54642002-02-15  Benjamin Kosnik  <bkoz@redhat.com>
5465
5466	* include/std/std_iosfwd.h: Don't guard typedefs with
5467	_GLIBCPP_USE_WCHAR_T
5468	* include/bits/stringfwd.h: Same.
5469
54702002-02-15  Benjamin Kosnik  <bkoz@redhat.com>
5471
5472	* src/locale.cc (moneypunct_byname): Remove definitions.
5473	* include/std/std_streambuf.h (streambuf::operator=): Return.
5474
54752002-02-15  Benjamin Kosnik  <bkoz@redhat.com>
5476
5477	Tune for size.
5478	* src/string-inst.cc (string::_Rep::_S_terminal): Remove redundant
5479	explicit instantiation.
5480	(string::_Rep::_S_max_size): Same.
5481	* include/bits/basic_string.tcc: Add extern explicit
5482	instantiations for string, wstring.
5483	* include/bits/basic_ios.tcc: Add extern explicit instantiations
5484	for ios, wios.
5485	* include/bits/streambuf.tcc: Same, for streambuf, wstreambuf.
5486	* include/bits/istream.tcc: Same, for istream, wistream.
5487	* include/bits/ostream.tcc: Same for ostream, wostream, iostream,
5488	wiostream.
5489	* include/bits/sstream.tcc: Same, for stringbuf, wstringbuf,
5490	istringstream, wistringstream, ostringstream, wostringstream,
5491	stringstream, wstringstream.
5492	* include/bits/fstream.tcc: Same, for filebuf, wfilebuf, ifstream,
5493	wifstream, ofstream, wofstream, fstream, wfstream.
5494	* src/misc-inst.cc: Correct comments.
5495	Add iomanip instantiations for wide streams.
5496	* include/std/std_iomanip.h: Same.
5497	* include/bits/locale_facets.tcc: Same.
5498
5499	* include/std/std_streambuf.h: Correct
5500	_GLIBCPP_FULLY_COMPLIANT_HEADERS guard.
5501	* include/std/std_sstream.h: Same.
5502	* include/std/std_ostream.h: Same.
5503	* include/std/std_istream.h: Same.
5504	* include/std/std_fstream.h: Same.
5505
5506	* include/std/std_streambuf.h: Add definitions for private copy
5507	ctor and assignment operator.
5508	* include/std/std_istream.h: Remove declared but undefined copy
5509	ctor and assignment operator. This is taken care of in ios_base,
5510	so adding it in the derived class as well is superfluous.
5511	* include/std/std_ostream.h: Same.
5512
5513	* include/bits/basic_ios.h (basic_ios::clear): Don't inline.
5514	* include/bits/basic_ios.tcc (basic_ios::clear): Move definition here.
5515
55162002-02-14  Benjamin Kosnik  <bkoz@redhat.com>
5517
5518	* config/linker-map.gnu: Change tag from GCC_3.1 to GLIBCPP_3.1.
5519	Add typeinfo bits. Smooth.
5520	* aclocal.m4: Regenerate.
5521	* configure: Same.
5522	* src/Makefile.in: Same.
5523
55242001-02-14  Joel Sherrill  <joel@OARcorp.com>
5525
5526	* config/cpu/m68k/bits/atomicity.h: Corrected for RTEMS targets
5527	which do not have a CAS instruction.
5528
55292002-02-14  Phil Edwards  <pme@gcc.gnu.org>
5530
5531	* acinclude.m4 (GLIBCPP_ENABLE_SYMVERS):  New macro, initial revision.
5532	* configure.in:  Call it.
5533	* config/linker-map.gnu:  New file, initial incomplete revision.
5534	* src/Makefile.am:  Optionally pass version script to the linker.
5535	* aclocal.m4:  Regenerate.
5536	* configure:  Regenerate.
5537	* src/Makefile.in:  Regenerate.
5538
55392002-02-13  Benjamin Kosnik  <bkoz@redhat.com>
5540
5541	* src/localename.cc: Remove stdexcept include.
5542	* src/locale-inst.cc: Same.
5543	* src/locale.cc: Same.
5544	* src/functexcept.cc: Remove string includes.
5545	* include/std/std_bitset.h: Remove stdexcept include.
5546	* testsuite/23_containers/bitset_members.cc: Add stdexcept.
5547	* testsuite/23_containers/bitset_ctor.cc: Same.
5548
55492002-02-11  Benjamin Kosnik  <bkoz@redhat.com>
5550
5551	* include/bits/stl_algo (__stl_threshold): Declare external.
5552	(__stl_chunk_size): Same.
5553	* include/bits/stl_bvector.h (__WORD_BIT): Same.
5554	* include/bits/stl_tree.h (_S_rb_tree_red): Same.
5555	(_S_rb_tree_black): Same.
5556	* src/stl-inst.cc (__stl_threshold): Define.
5557	(__stl_chunk_size): Same.
5558	(__WORD_BIT): Same.
5559	(_S_rb_tree_red): Same.
5560	(_S_rb_tree_black): Same.
5561
5562	* config/io/basic_file_libio.h (__basic_file): Add declarations.
5563	* include/bits/basic_file.h: Remove.
5564	* config/io/c_io_stdio.h: Remove _GLIBCPP_BASIC_FILE_ENCAPSULATION
5565	Declare generic types, specialization.
5566	* config/io/basic_file_stdio.cc: Definitions.
5567	* config/io/c_io_libio.h: Remove _GLIBCPP_BASIC_FILE_INHERITANCE.
5568	Declare generic types.
5569	* include/Makefile.am (bits_headers): Remove basic_file.h.
5570	(extra_target_headers): Change basic_file_model.h to basic_file.h.
5571	(stamp-target): Same.
5572
5573	* include/bits/stl_alloc.h: Tweaks.
5574	* include/bits/localefwd.h: Same.
5575
55762002-02-11  Aaron W LaFramboise  <AWLaFramboise@aol.com>
5577
5578	* include/bits/locale_facets.tcc (collate::do_hash): Fix.
5579	* testsuite/22_locale/collate_members_char.cc (test03): New test.
5580	* testsuite/22_locale/collate_members_wchar_t.cc (test03): Same.
5581
55822002-02-10  Phil Edwards  <pme@gcc.gnu.org>
5583
5584	* include/bits/stl_algo.h (transform (both signatures), generate_n):
5585	Use __typeof__ in concept checks.
5586
55872002-02-10  Jonathan Wakely  <cow@compsoc.man.ac.uk>
5588
5589	* include/bits/stl_algo.h (__median, for_each, find, find_if,
5590	adjacent_find, count, count_if, search, search_n, swap_ranges,
5591	transform, replace, replace_if, replace_copy, replace_copy_if,
5592	generate, generate_n, remove_copy, remove_copy_if, remove, remove_if,
5593	unique, unique_copy, reverse, reverse_copy):  Doxygenate.
5594
55952002-02-08  Benjamin Kosnik  <bkoz@redhat.com>
5596
5597	* include/bits/locale_facets.h
5598	(numpunct<_CharT>::_M_initialize_numpunct): Remove definition.
5599	(__timepunct<_CharT>::_M_initialize_timepunct): Same.
5600	(__timepunct<_CharT>::_M_put_helper): Same.
5601	(moneypunct<_CharT, _Intl>::_M_initialize_moneypunct): Same.
5602
5603	* include/bits/fstream.tcc (filebuf::underflow): Remove
5604	__codecvt_type typedef.
5605	(filebuf::_M_convert_to_external): Same.
5606
56072002-02-08  Phil Edwards  <pme@gcc.gnu.org>
5608
5609	* docs/doxygen/TODO:  Update.
5610	* docs/doxygen/doxygroups.cc:  Tweak __gnu_cxx description.
5611	* docs/doxygen/mainpage.html:  Add TODO list link.
5612	* docs/doxygen/user.cfg.in:  Add @doctodo hook.
5613	* docs/doxygen/tables.html:  New file, emoty structure only.
5614
5615	* include/bits/stl_iterator.h:  Doxygenate just about everything.
5616	* include/bits/stl_iterator_base_funcs.h:  Ditto, clean up spaces.
5617	* include/bits/stl_iterator_base_types.h:  Add notes.
5618
56192002-02-07  Stephan Buys  <sbproxy@icon.co.za>
5620
5621	* include/bits/stl_map.h:  Tweak doxygen markup.
5622	* include/bits/stl_multimap.h:  Doxygenate and remove extra spaces.
5623	* include/bits/stl_vector.h:  Likewise.
5624
56252002-02-07  Benjamin Kosnik  <bkoz@redhat.com>
5626
5627	libstdc++/5286
5628	libstdc++/3860
5629	* include/std/std_fstream.h (filebuf::__file_type): Change to
5630	__basic_file<char>.
5631	(filebuf::_M_convert_to_external): Declare.
5632	* include/bits/fstream.tcc (filebuf::_M_convert_to_external): Define
5633	codecvt bits for wide streams.
5634	(filebuf::_M_really_overflow): Use it.
5635	(filebuf::underflow): Use codecvt.
5636	* config/locale/codecvt_specializations_ieee_1003.1-200x.h:
5637	(codecvt<__enc_traits>::do_out): Deal with partial.
5638	(codecvt<__enc_traits>::do_encoding): Return something useful.
5639	* src/codecvt.cc (codecvt<wchar_t>::do_encoding): Return sizeof
5640	wchar_t.
5641	* testsuite/22_locale/codecvt_members_unicode_char.cc (test01):
5642	Change expected encoding output.
5643	(test02): Same.
5644	* testsuite/22_locale/codecvt_members_wchar_t_char.cc (test01): Same.
5645	(test02): Same.
5646
56472002-02-07  Benjamin Kosnik  <bkoz@redhat.com>
5648	    Wolfgang Bangerth  <wolfgang.bangerth@iwr.uni-heidelberg.de>
5649
5650	* include/bits/basic_ios.tcc (basic_ios::narrow): Add default value.
5651	(basic_ios::widen): Same.
5652
56532002-02-07  Paolo Carlini  <pcarlini@unitus.it>
5654
5655	* testsuite/22_locale/money_get_members_char.cc:
5656	Add comment, tidy up.
5657	(test01): more "en_HK" tests (without showbase).
5658	* testsuite/22_locale/money_get_members_wchar_t.cc: Ditto.
5659
56602002-02-06  Loren Rittle <ljrittle@acm.org>
5661
5662	* config/locale/c_locale_generic.cc: Do not trust
5663	_GLIBCPP_HAVE_STRTOF or _GLIBCPP_HAVE_STRTOLD as
5664	set by configure.
5665
56662002-02-06  Loren Rittle <ljrittle@acm.org>
5667
5668	* acinclude.m4: Add C++ linkage check for strtof.
5669	* aclocal.m4: Rebuilt.
5670	* config.h.in: Rebuilt.
5671	* configure: Rebuilt.
5672	* config/locale/c_locale_generic.cc: Conditionally include
5673	<ieeefp.h>.  Improve handling and error checking of float
5674	and long double input for non-C99 configurations.
5675
56762002-02-06  Paolo Carlini  <pcarlini@unitus.it>
5677
5678	* include/bits/locale_facets.tcc (money_get::do_get(string)):
5679	In case money_base::symbol deal properly with multi-char sign
5680	for patterns {X,Y,Z,symbol} and {X,Y,symbol,none}.
5681	* testsuite/22_locale/money_get_members_char.cc: Add test07.
5682	* testsuite/22_locale/money_get_members_wchar_t.cc: Add test07.
5683
56842002-02-05  Paolo Carlini  <pcarlini@unitus.it>
5685
5686	* include/bits/locale_facets.tcc (money_get::do_get(string)):
5687	First construct a tentative returned string, then, only if the
5688	parsing succeeds, copy it into the string passed by reference.
5689	* testsuite/22_locale/money_get_members_char.cc: Add test06.
5690	* testsuite/22_locale/money_get_members_wchar_t.cc: Add test06.
5691
56922002-02-04  Phil Edwards  <pme@gcc.gnu.org>
5693
5694	* docs/doxygen/TODO:  Impl-defined behavior now documented...
5695	* docs/html/17_intro/howto.html:  ...here.
5696	* docs/doxygen/mainpage.doxy:  Remove, rename...
5697	* docs/doxygen/mainpage.html:  ...to this.  Tweak HTML, add license.
5698	* docs/doxygen/style.css:  Add small text.
5699	* docs/doxygen/run_doxygen:  Adjust for new mainpage.
5700	* docs/doxygen/user.cfg.in:  Likewise.
5701
57022002-02-04  Stephan Buys  <sbproxy@icon.co.za>
5703
5704	* include/bits/stl_map.h:  Initial doxygen markup.
5705	* include/std/std_fstream.h:  Initial doxygen markup.
5706
57072002-02-04  Paolo Carlini  <pcarlini@unitus.it>
5708
5709	libstdc++/5579
5710	* include/bits/locale_facets.tcc (money_get::do_get(string)):
5711	Deal correctly with !(__io.flags() & ios_base::showbase)
5712	for case money_base::symbol.
5713	* testsuite/22_locale/money_get_members_char.cc: Add test05.
5714	* testsuite/22_locale/money_get_members_wchar_t.cc: Add test05.
5715
57162002-02-02  Paolo Carlini  <pcarlini@unitus.it>
5717
5718	* testsuite/22_locale/operators.cc
5719	(gnu_collate::do_compare()): Add return statement to
5720	suppress "no return statement" warning.
5721
57222002-02-01  Paolo Carlini  <pcarlini@unitus.it>
5723
5724	* testsuite/27_io/ostream_manip.cc: Enable test02.
5725
57262002-02-01  Phil Edwards  <pme@gcc.gnu.org>
5727
5728	* docs/html/documentation.html:  Update for 3.0.96.
5729	* docs/html/faq/index.html:  Update for 3.0.96.
5730	* docs/html/faq/index.txt:  Regenerated.
5731	* docs/doxygen/TODO:  Update notes.
5732	* docs/html/17_intro/howto.html:  Initial impl-specific listing.
5733
57342002-01-31  Benjamin Kosnik  <bkoz@redhat.com>
5735
5736	* config/locale/codecvt_specializations_ieee_1003.1-200x.h:
5737	Initialize all data members in copy ctor. Make ctors explicit.
5738	(__enc_traits::__enc_traits()): Default ctor does nothing.
5739	(__enc_traits::_M_init): Guard against multiple iconv_opens.
5740	* include/std/std_sstream.h (basic_stringbuf): Make data members
5741	protected.
5742	* include/std/std_fstream.h (basic_filebuf): Same.
5743	* include/std/std_streambuf.h: Tweak.
5744	* include/bits/streambuf.tcc: Same.
5745	* include/bits/sstream.tcc: Same.
5746	* include/bits/fstream.tcc: Same.
5747
57482002-01-31  Loren Rittle <ljrittle@acm.org>
5749
5750	* testsuite/22_locale/codecvt_members_char_char.cc: Do not
5751	allow NULL argument to be passed to setenv().
5752	* testsuite/22_locale/codecvt_members_wchar_t_char.cc: Likewise.
5753	* testsuite/22_locale/collate_members_char.cc: Likewise.
5754	* testsuite/22_locale/collate_members_wchar_t.cc: Likewise.
5755	* testsuite/22_locale/ctype_members_char.cc: Likewise.
5756	* testsuite/22_locale/ctype_members_wchar_t.cc: Likewise.
5757	* testsuite/22_locale/messages_members_char.cc: Likewise.
5758	* testsuite/22_locale/money_get_members_char.cc: Likewise.
5759	* testsuite/22_locale/money_get_members_wchar_t.cc: Likewise.
5760	* testsuite/22_locale/money_put_members_char.cc: Likewise.
5761	* testsuite/22_locale/money_put_members_wchar_t.cc: Likewise.
5762	* testsuite/22_locale/moneypunct_members_char.cc: Likewise.
5763	* testsuite/22_locale/moneypunct_members_wchar_t.cc: Likewise.
5764	* testsuite/22_locale/num_get_members_char.cc: Likewise.
5765	* testsuite/22_locale/num_get_members_wchar_t.cc: Likewise.
5766	* testsuite/22_locale/num_put_members_char.cc: Likewise.
5767	* testsuite/22_locale/num_put_members_wchar_t.cc: Likewise.
5768	* testsuite/22_locale/numpunct_members_char.cc: Likewise.
5769	* testsuite/22_locale/numpunct_members_wchar_t.cc: Likewise.
5770	* testsuite/22_locale/time_get_members_char.cc: Likewise.
5771	* testsuite/22_locale/time_get_members_wchar_t.cc: Likewise.
5772	* testsuite/22_locale/time_put_members_char.cc: Likewise.
5773	* testsuite/22_locale/time_put_members_wchar_t.cc: Likewise.
5774
57752002-01-30  Benjamin Kosnik  <bkoz@redhat.com>
5776
5777	* config/locale/c_locale_gnu.cc: Same errno fixes as generic.
5778
5779	* ChangeLog-2001: Fix spelling errors...
5780	* docs/html/17_intro/RELEASE-NOTES: Update.
5781	* docs/html/17_intro/TODO: Update.
5782	* README (file): Update.
5783
57842002-01-30  Loren Rittle <ljrittle@acm.org>
5785
5786	* config/locale/c_locale_generic.cc: Check errno for ERANGE
5787	instead of non-zero to aid portability.
5788
57892002-01-30  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
5790
5791	* docs/html/22_locale/messages.html: Fix example code.
5792
57932002-01-30  Richard Henderson  <rth@redhat.com>
5794
5795	* testsuite/27_io/ostream_inserter_arith.cc (test03_check): Break
5796	out from test03 and templatize.
5797	(test03): Use it.
5798
57992002-01-30  Paolo Carlini  <pcarlini@unitus.it>
5800
5801	* config/locale/numpunct_members_gnu.cc
5802	(numpunct<char, wchar_t>::_M_initialize_numpunct()):
5803	Fix initialization of _M_grouping for locales which have
5804	_M_thousands_sep == '\0'(L'\0', respectively).
5805	* testsuite/22_locale/numpunct_byname.cc (test02): Add test.
5806
58072002-01-30  Paolo Carlini  <pcarlini@unitus.it>
5808
5809	* testsuite/27_io/ostream_inserter_arith.cc (test03):
5810	Better fix for 32/64 bit architectures, avoiding the
5811	implicit assumption that CHAR_BIT == 8.
5812
58132002-01-28  Phil Edwards  <pme@gcc.gnu.org>
5814
5815	* Makefile.am (doxygen, doxygen-maint, doxygen-man):  Tweak targets.
5816	* Makefile.in:  Regenerate.
5817
5818	* docs/doxygen/run_doxygen:  Update, mostly for man pages.
5819	* docs/doxygen/Intro.3:  Update.
5820	* docs/doxygen/TODO:  Update.
5821	* docs/doxygen/doxygroups.cc:  Add namespace hook for __gnu_cxx.
5822	* docs/doxygen/mainpage.doxy:  Update.
5823	* docs/doxygen/user.cfg.in:  Update for header rename.  Also
5824	regenerate comments and variables with 1.2.12.
5825	* docs/doxygen/maint.cfg.in:  Remove file.
5826
5827	* include/bits/stl_relops.h:  Doxygenate.
5828	* include/bits/stl_tempbuf.h (std::_Temporary_buffer):  Likewise.
5829
5830	* include/c_std/std_cassert.h, include/c_std/std_cctype.h,
5831	include/c_std/std_cerrno.h, include/c_std/std_cfloat.h,
5832	include/c_std/std_ciso646.h, include/c_std/std_climits.h,
5833	include/c_std/std_clocale.h, include/c_std/std_cmath.h,
5834	include/c_std/std_csetjmp.h, include/c_std/std_csignal.h,
5835	include/c_std/std_cstdarg.h, include/c_std/std_cstddef.h,
5836	include/c_std/std_cstdio.h, include/c_std/std_cstdlib.h,
5837	include/c_std/std_cstring.h, include/c_std/std_ctime.h,
5838	include/c_std/std_cwchar.h, include/c_std/std_cwctype.h,
5839	include/ext/algorithm, include/ext/functional, include/ext/hash_map,
5840	include/ext/hash_set, include/ext/iterator, include/ext/memory,
5841	include/ext/numeric, include/ext/rb_tree, include/ext/rope,
5842	include/ext/ropeimpl.h, include/ext/slist, include/ext/stl_hash_fun.h,
5843	include/ext/stl_hashtable.h, include/ext/stl_rope.h,
5844	include/std/std_algorithm.h, include/std/std_bitset.h,
5845	include/std/std_complex.h, include/std/std_deque.h,
5846	include/std/std_fstream.h, include/std/std_functional.h,
5847	include/std/std_iomanip.h, include/std/std_ios.h,
5848	include/std/std_iosfwd.h, include/std/std_iostream.h,
5849	include/std/std_istream.h, include/std/std_iterator.h,
5850	include/std/std_limits.h, include/std/std_list.h,
5851	include/std/std_locale.h, include/std/std_map.h,
5852	include/std/std_memory.h, include/std/std_numeric.h,
5853	include/std/std_ostream.h, include/std/std_queue.h,
5854	include/std/std_set.h, include/std/std_sstream.h,
5855	include/std/std_stack.h, include/std/std_stdexcept.h,
5856	include/std/std_streambuf.h, include/std/std_string.h,
5857	include/std/std_utility.h, include/std/std_valarray.h,
5858	include/std/std_vector.h:  Add/correct @file doxygen hook.
5859
5860	* include/ext/memory:  Doxygenate most of rest of file.
5861	* libsupc++/exception:  Doxygen output formatting.
5862	* libsupc++/new:  Say which header it is.
5863
5864	* testsuite/lib/libstdc++-v3-dg.exp:  Fix spacing.
5865	* docs/html/19_diagnostics/howto.html:  Describe concept-checks switch.
5866	* docs/html/23_containers/howto.html:  Describe O(n) list::size().
5867	* docs/html/27_io/howto.html:  Also link to Langer and Kreft text.
5868
58692002-01-28  Paolo Carlini  <pcarlini@unitus.it>
5870	    Charles Leggett <CGLeggett@lbl.gov>
5871
5872	* testsuite/27_io/filebuf_members.cc (test_05): Add test.
5873
58742002-01-28  Paolo Carlini  <pcarlini@unitus.it>
5875
5876	* testsuite/27_io/ostream_inserter_arith.cc (test03):
5877	Fix to deal correctly with both 32 bit and 64 bit architectures
5878
58792002-01-25  Loren Rittle <ljrittle@acm.org>
5880
5881	* testsuite/thread/pthread1.cc: Use one condition variable
5882	per predicate instead of tricky use of one condition variable.
5883
58842002-01-25  Benjamin Kosnik  <bkoz@redhat.com>
5885
5886	* include/bits/fstream.tcc (filebuf::close()): Fix close for input
5887	streams.
5888	(filebuf::_M_really_overflow): Match indeterminate and sync calls.
5889	* testsuite/27_io/filebuf.cc: Compile only.
5890	* testsuite/27_io/filebuf_members.cc: Move tests to here.
5891	* testsuite/27_io/filebuf_virtuals.cc: And here.
5892	Revert sungetc, sync changes for expected values.
5893	* testsuite/27_io/filebuf-*: Move to...
5894	* testsuite/27_io/filebuf_virtuals-*: ...here.
5895	* testsuite/27_io/istream.cc: Compile only, activate.
5896	* testsuite/27_io/ostream.cc: Same.
5897	* testsuite/27_io/iostream.cc: New.
5898	* testsuite/27_io/iostream_members.cc: New.
5899
59002002-01-25  David Billinghurst <David.Billinghurst@riotinto.com>
5901
5902	* testsuite/thread/pthread1.cc: Enable on cygwin.
5903	* testsuite/thread/pthread2.cc: Likewise.
5904	* testsuite/thread/pthread3.cc: Likewise.
5905	* testsuite/thread/pthread4.cc: Likewise.
5906	* testsuite/thread/pthread5.cc: Likewise.
5907	* testsuite/thread/pthread6.cc: Likewise.
5908
59092002-01-24  Benjamin Kosnik  <bkoz@redhat.com>
5910
5911	* testsuite/27_io/ostream_inserter_char.cc (test07): New.
5912
59132002-01-24  Benjamin Kosnik  <bkoz@redhat.com>
5914
5915	* include/bits/basic_ios.h (basic_ios::_M_check_facet): Make
5916	const, tweak.
5917	(basic_ios::fill(char_type)): Use fill().
5918	* include/bits/basic_ios.tcc (basic_ios::widen): Use _M_check_facet.
5919	(basic_ios::narrow): Same.
5920	(basic_ios::_M_cache_facets): Explicitly set cached facets to zero
5921	if they are invalid.
5922	(basic_ios::init): Comment.
5923	* testsuite/27_io/ios_init.cc (test02): New.
5924
59252002-01-24  Phil Edwards  <pme@gcc.gnu.org>
5926
5927	* include/bits/stl_tempbuf.h (_Temporary_buffer):  Add doxygen hook.
5928	* include/bits/stl_algo.h:  Include stl_tempbuf.h.
5929	* include/ext/memory:  Do not include stl_tempbuf.h.
5930	(temporary_buffer):  Add doxygen hook.
5931	(__get_temporary_buffer, get_temporary_buffer,
5932	return_temporary_buffer):  Move back to std:: header...
5933	* include/std/std_memory.h:  ...here.  Do not include stl_tempbuf.h.
5934	* include/ext/rope:  Do not include stl_tempbuf.h.
5935	* include/ext/stl_hashtable.h:  Likewise.
5936	* include/std/std_algorithm.h:  Likewise.
5937	* testsuite/20_util/temporary_buffer.cc:  New file.
5938
59392002-01-24  andrew@andypo.net
5940	    (tweaks, test and commit by Loren J. Rittle  <ljrittle@acm.org>)
5941
5942	libstdc++/5432
5943	* include/bits/ios_base.h: Use _Atomic_word for reference counts.
5944	* include/bits/localefwd.h: Likewise.
5945	Also use for std::locale::id::_S_highwater.
5946	* src/ios.cc (ios_base::xalloc): Use _Atomic_word.
5947	* src/locale.cc: Support new usage of _Atomic_word.
5948	(std::locale::classic): Guard entire function against reentry.
5949	* src/localename.cc: Support new usage of _Atomic_word.
5950
59512002-01-24   Benjamin Kosnik  <bkoz@redhat.com>
5952
5953	* testsuite/22_locale/num_put_members_wchar_t.cc (test03): Use
5954	_GLIBCPP_HAVE_SETENV.
5955	* testsuite/22_locale/codecvt_members_wchar_t_char.cc (test02): Same.
5956	* testsuite/22_locale/collate_members_char.cc (test02): Same.
5957	* testsuite/22_locale/ctype_members_char.cc (test03): Same.
5958	* testsuite/22_locale/ctype_members_wchar_t.cc (test03): Same.
5959	* testsuite/22_locale/messages_members_char.cc (test02): Same.
5960	* testsuite/22_locale/moneypunct_members_char.cc (test02): Same.
5961	* testsuite/22_locale/moneypunct_members_wchar_t.cc (test02): Same.
5962	* testsuite/22_locale/money_put_members_char.cc (test04): Same.
5963	* testsuite/22_locale/money_put_members_wchar_t.cc (test04): Same.
5964	* testsuite/22_locale/num_get_members_char.cc (test03): Same.
5965	* testsuite/22_locale/num_get_members_wchar_t.cc (test03): Same.
5966	* testsuite/22_locale/numpunct_members_char.cc (test02): Same.
5967	* testsuite/22_locale/numpunct_members_wchar_t.cc (test02): Same.
5968	* testsuite/22_locale/time_get_members_char.cc (test07): Same.
5969	* testsuite/22_locale/time_get_members_wchar_t.cc (test07): Same.
5970	* testsuite/22_locale/time_put_members_char.cc (test03): Same.
5971	* testsuite/22_locale/time_put_members_wchar_t.cc (test03): Same.
5972	* testsuite/22_locale/num_put_members_char.cc (test03): Same.
5973	* acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Check for setenv.
5974	* aclocal.m4: Regenerate.
5975	* configure: Regenerate.
5976	* config.h.in: Regenerate.
5977
59782002-01-23  Loren Rittle <ljrittle@acm.org>
5979
5980	* testsuite/thread/pthread1.cc: New test.
5981	* testsuite/thread/pthread2.cc: New test adapted from libstdc++/5347.
5982	* testsuite/thread/pthread3.cc: Likewise.
5983	* testsuite/thread/pthread4.cc: New test adapted from
5984	http://gcc.gnu.org/ml/gcc-bugs/2002-01/msg00679.html
5985	* testsuite/thread/pthread5.cc: New test adapted from libstdc++/5464.
5986	* testsuite/thread/pthread6.cc: New test adapted from libstdc++/5444.
5987
59882002-01-23  Richard Henderson  <rth@redhat.com>
5989
5990	PR libstdc++/5198
5991	* config/cpu/m68k/bits/atomicity.h (__exchange_and_add): Only use
5992	CAS on the cpu variants that support it.  Add versions that use
5993	TAS and that disable interrupts.
5994	(__atomic_add): Use __exchange_and_add to guarantee atomicity.
5995
59962002-01-23  Matt Kraai  <kraai@alumni.cmu.edu>
5997
5998	* include/bits/locale_facets.tcc: Remove old comments.
5999
60002002-01-23  Andreas Tobler  <toa@pop.agri.ch>
6001
6002	* include/bits/locale_facets.tcc (__convert_to_v): Change template
6003	parameter to _Tv.
6004	(__convert_from_v): Same.
6005
60062002-01-23  Benjamin Kosnik  <bkoz@redhat.com>
6007
6008	* include/bits/locale_facets.h (num_get::_M_extract_int): Change
6009	prototype.
6010	* include/bits/locale_facets.tcc (num_get::_M_extract_int): Remove
6011	__max_digits checks, adjust arguments.
6012	(num_get::do_get(*)): Changeup.
6013
60142002-01-23  Loren Rittle <ljrittle@acm.org>
6015
6016	* config/locale/c_locale_generic.cc: Fix typename usage.
6017
60182002-01-22  Benjamin Kosnik  <bkoz@redhat.com>
6019
6020	* config/locale/c_locale_generic.cc: Fix.
6021
60222002-01-22  Benjamin Kosnik  <bkoz@redhat.com>
6023
6024	* docs/html/22_locale/messages.html: Remove angle brackets.
6025	* docs/html/17_intro/TODO: Add.
6026
60272002-01-22  Paolo Carlini  <pcarlini@unitus.it>
6028
6029	* testsuite/27_io/ios_manip_basefield.cc: Enable test02.
6030	* testsuite/27_io/ostream_inserter_arith.cc: Enable test03.
6031	* testsuite/27_io/ostream_inserter_char.cc: Enable test01.
6032	* testsuite/27_io/ostream_inserter_other.cc: Enable test04.
6033
60342002-01-22  Benjamin Kosnik  <bkoz@redhat.com>
6035
6036	Audit for LANG independence.
6037	* include/bits/localefwd.h: Tweaks.
6038	* include/bits/locale_facets.tcc (money_get::do_get(long double)):
6039	Use __convert_to_v.
6040	(time_get::do_get_year): Same.
6041	(__convert_from_v): Add.
6042	(num_put::_M_convert_float): Use.
6043	(num_put::_M_convert_int): Same.
6044	(money_put::do_put): Same.
6045
6046	* src/locale-inst.cc: Add instantiations for __convert_from_v.
6047	* config/locale/time_members_gnu.cc: Cleanup setlocale usage.
6048	* config/locale/time_members_generic.cc:
6049	* config/locale/messages_members_gnu.cc: Same.
6050	* config/locale/messages_members_gnu.h: Same.
6051
6052	* testsuite/22_locale/codecvt_members_wchar_t_char.cc (test02): New.
6053	* testsuite/22_locale/codecvt_members_char_char.cc (test02): New.
6054	* testsuite/22_locale/collate_members_wchar_t.cc (test02): New.
6055	* testsuite/22_locale/collate_members_char.cc (test02): New.
6056	* testsuite/22_locale/ctype_members_wchar_t.cc (test03): New.
6057	* testsuite/22_locale/ctype_members_char.cc (test03): New.
6058	* testsuite/22_locale/messages_members_char.cc (test02): New.
6059	* testsuite/22_locale/moneypunct_members_wchar_t.cc (test02): New.
6060	* testsuite/22_locale/moneypunct_members_char.cc (test02): New.
6061	* testsuite/22_locale/money_get_members_wchar_t.cc (test04): New.
6062	* testsuite/22_locale/money_get_members_char.cc (test04): New.
6063	* testsuite/22_locale/money_put_members_wchar_t.cc (test04): New.
6064	* testsuite/22_locale/money_put_members_char.cc (test04): New.
6065	* testsuite/22_locale/numpunct_members_wchar_t.cc (test02): New.
6066	* testsuite/22_locale/numpunct_members_char.cc (test02): New.
6067	* testsuite/22_locale/time_put_members_wchar_t.cc (test03): New.
6068	* testsuite/22_locale/time_put_members_char.cc (test03): New.
6069	* testsuite/22_locale/time_get_members_wchar_t.cc (test07): New.
6070	* testsuite/22_locale/time_get_members_char.cc (test07): New.
6071	* testsuite/22_locale/num_get_members_wchar_t.cc (test03): New.
6072	* testsuite/22_locale/num_get_members_char.cc (test03): New.
6073	* testsuite/22_locale/num_put_members_wchar_t.cc (test03): New.
6074	* testsuite/22_locale/num_put_members_char.cc (test03): New.
6075
6076	* testsuite/22_locale/time_get_members_char.cc: Fixups for global
6077	locale issues.
6078	* testsuite/22_locale/time_get_members_char.cc: Same.
6079
60802002-01-22  Benjamin Kosnik  <bkoz@redhat.com>
6081
6082	libstdc++/5280
6083	* include/bits/localefwd.h: Tweak comments.
6084	* include/bits/locale_facets.h (__convert_to_v): Add.
6085	* include/bits/locale_facets.tcc (num_get::do_get(double)): Use it.
6086	(num_get::do_get(float)): Same.
6087	(num_get::do_get(long double)): Same.
6088	(num_get::do_get(bool)): Same.
6089	(num_get::do_get(long)): Same.
6090	(num_get::do_get(long long)): Same.
6091	(num_get::do_get(unsigned int)): Same.
6092	(num_get::do_get(unsigned short)): Same.
6093	(num_get::do_get(unsigned long)): Same.
6094	(num_get::do_get(unsigned long long)): Same.
6095	* config/locale/c_locale_gnu.cc (__convert_to_v): Specialize.
6096	* config/locale/c_locale_generic.cc: Same.
6097
60982002-01-22  Loren Rittle <ljrittle@acm.org>
6099
6100	* include/Makefile.am (c_base_builddir): Remove redundant slash.
6101	(std_builddir): Likewise.
6102	(std_headers_rename): Fix cut-n-paste typo.
6103	(install-data-local): Concat path per element instead of once to
6104	first element of list.
6105	* include/Makefile.in: Rebuilt.
6106
61072002-01-22  Benjamin Kosnik  <bkoz@redhat.com>
6108
6109	* config/os/aix/bits/ctype_noninline.h: Fix formatting.
6110	* config/os/bsd/netbsd/bits/ctype_noninline.h: Fix typo.
6111	* config/os/bsd/freebsd/bits/ctype_noninline.h: Fix formatting.
6112
61132002-01-20  Benjamin Kosnik  <bkoz@redhat.com>
6114
6115	* include/bits/locale_facets.h (ctype<char>::classic_table):
6116	Remove definition.
6117	(ctype<char>::_S_ctable): Remove.
6118	* config/os/gnu-linux/bits/ctype_noninline.h
6119	(ctype<char>::_S_table): Remove definition.
6120	(ctype<char>::classic_table): Define.
6121	(ctype<char>::ctype): Replace _S_ctable with classic_table().
6122	* config/os/aix/bits/ctype_noninline.h: Same.
6123	* config/os/bsd/freebsd/bits/ctype_noninline.h: Same.
6124	* config/os/bsd/netbsd/bits/ctype_noninline.h: Same.
6125	* config/os/djgpp/bits/ctype_noninline.h: Same.
6126	* config/os/generic/bits/ctype_noninline.h: Same.
6127	* config/os/gnu-linux/bits/ctype_noninline.h: Same.
6128	* config/os/hpux/bits/ctype_noninline.h: Same.
6129	* config/os/irix/irix5.2/bits/ctype_noninline.h: Same.
6130	* config/os/irix/irix6.5/bits/ctype_noninline.h: Same.
6131	* config/os/mingw32/bits/ctype_noninline.h: Same.
6132	* config/os/newlib/bits/ctype_noninline.h: Same.
6133	* config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.
6134	* config/os/solaris/solaris2.6/bits/ctype_noninline.h: Same.
6135	* config/os/solaris/solaris2.7/bits/ctype_noninline.h: Same.
6136
61372002-01-20  Danny Smith  <dannysmith@users.sourceforge.net>
6138
6139	* config/os/mingw32/bits/ctype_noninline.h: Declare _ctype instead
6140	of _pctype. Use to define _S_ctable.  Add definition for alternate
6141	ctor.  Initialise _M_ctable to _S_ctable in ctors.
6142	(do_toupper, do_tolower): Use inline code appropriate for C-locale
6143	rather than ::toupper, ::tolower.
6144
61452002-01-18  Loren Rittle <ljrittle@acm.org>
6146
6147	* testsuite/18_support/numeric_limits.cc (test_extrema<long double>):
6148	Add specialization for FreeBSD systems only to avoid losing test
6149	only due to extra precision unmentioned in system headers.
6150
61512002-01-18  David Billinghurst <David.Billinghurst@riotinto.com>
6152
6153	* config/os/irix/irix6.5/bits/ctype_noninline.h: Fix typo
6154
61552002-01-17  Nick Clifton  <nickc@cambridge.redhat.com>
6156
6157	* testsuite/testsuite_hooks.h: Fix comment typo.  Memory
6158	limiting is only attempted if _GLIBCPP_MEM_LIMIT is defined.
6159
61602002-01-17  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
6161
6162	* testsuite/22_locale/ctor_copy_dtor.cc: Remove check.
6163
61642002-01-17  David Edelsohn  <edelsohn@gnu.org>
6165
6166	* configure.target: Define OPT_LDFLAGS for AIX case.
6167
61682002-01-17  Gabriel Dos Reis  <gdr@merlin.codesourcery.com>
6169
6170	* include/std/std_limits.h (__glibcpp_float_has_quiet_NaN,
6171	__glibcpp_double_has_quiet_NaN): Correct mispelling.
6172
61732002-01-17  Andreas Tobler  <toa@pop.agri.ch>
6174
6175	* config/os/solaris/solaris2.6/bits/ctype_noninline.h: Fix.
6176
61772002-01-16  David Edelsohn  <dje@watson.ibm.com>
6178
6179	* acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Do not clear
6180	SECTION_LDFLAGS and OPT_LDFLAGS.  Fix ac_sectionLDflags type.
6181	* aclocal.m4: Regenerate.
6182	* configure: Regenerate.
6183
61842002-01-16  Benjamin Kosnik  <bkoz@redhat.com>
6185
6186	* include/Makefile.am (c_base_headers_rename): New.
6187	(c_base_headers_extra): New.
6188	(stamp-c_base): Modify.
6189	(install-data-local): Use both.
6190	* include/Makefile.in: Regenerate.
6191	* include/c/[cctype ciso646 cmath cstdarg cstdlib cerrno climits
6192	csetjmp cstddef cstring cwchar cassert cfloat clocale csignal
6193	cstdio ctime cwctype]: Move to..
6194	* include/c/std_*: Here.
6195	* include/c_std/[cctype ciso646 cmath cstdarg cstdlib cerrno climits
6196	csetjmp cstddef cstring cwchar cassert cfloat clocale csignal
6197	cstdio ctime cwctype]: Move to..
6198	* include/c_std/std_*: Here.
6199
6200	Alexandre Oliva  <aoliva@redhat.com>
6201	* include/Makefile.am (.PRECIOUS): Add rule.
6202	* include/Makefile.in: Regenerate.
6203
62042002-01-16  Benjamin Kosnik  <bkoz@redhat.com>
6205	    Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
6206
6207	* include/bits/stl_iterator.h (reverse_iterator::_M_current):
6208	Deuglify, should be current.
6209	(back_insert_iterator::_M_container): Deuglify, should be container.
6210	(front_insert_iterator::_M_container): Same.
6211	(insert_iterator::_M_container): Same.
6212	* testsuite/24_iterators/reverse_iterator.cc: Add check.
6213	* testsuite/24_iterators/back_insert_iterator.cc: Add check.
6214	* testsuite/24_iterators/front_insert_iterator.cc: Same.
6215	* testsuite/24_iterators/insert_iterator.cc: Same.
6216
62172002-01-16  Benjamin Kosnik  <bkoz@redhat.com>
6218
6219	* include/bits/locale_facets.h (ctype<char>::classic_table): Make
6220	static.
6221	(ctype<char>::_M_ctable): Make static, change name to _S_ctable.
6222	* config/os/gnu-linux/bits/ctype_noninline.h: Define _S_ctable.
6223	* config/os/solaris/solaris2.7/bits/ctype_noninline.h: Same.
6224	* config/os/solaris/solaris2.6/bits/ctype_noninline.h: Same.
6225	* config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.
6226	* config/os/newlib/bits/ctype_noninline.h: Same.
6227	* config/os/irix/irix6.5/bits/ctype_noninline.h: Same.
6228	* config/os/irix/irix5.2/bits/ctype_noninline.h: Same.
6229	* config/os/hpux/bits/ctype_noninline.h: Same.
6230	* config/os/djgpp/bits/ctype_noninline.h: Same.
6231	* config/os/bsd/netbsd/bits/ctype_noninline.h: Same.
6232	* config/os/bsd/freebsd/bits/ctype_noninline.h: Same.
6233	* config/os/aix/bits/ctype_noninline.h: Same.
6234
6235	Testcase by Dietmar K�hl via Peter Schmid
6236	* testsuite/22_locale/ctype_members_char.cc (char>): Add test for
6237	classic_table().
6238
62392002-01-16  Benjamin Kosnik  <bkoz@redhat.com>
6240
6241	* libmath/signbitl.c: Copyright years as list, not range.
6242	* libmath/Makefile.am: Same.
6243	* libmath/Makefie.in: Regenerate.
6244	* libmath/signbit.c: Same.
6245	* libmath/nan.c: Same.
6246	* libmath/copysignf.c: Same.
6247	* libmath/signbitf.c: Same.
6248	* testsuite/22_locale/money_get_members_char.cc: Same.
6249	* testsuite/22_locale/money_get_members_wchar_t.cc: Same.
6250	* testsuite/22_locale/money_put_members_char.cc: Same.
6251	* testsuite/22_locale/money_put_members_wchar_t.cc: Same.
6252	* testsuite/22_locale/time_get_members_char.cc: Same.
6253	* testsuite/22_locale/time_get_members_wchar_t.cc: Same.
6254	* testsuite/22_locale/time_put_members_char.cc: Same.
6255	* testsuite/22_locale/time_put_members_wchar_t.cc: Same.
6256	* testsuite/21_strings/nonmember.cc: Same.
6257	* testsuite/21_strings/compare.cc: Same.
6258	* testsuite/27_io/stringstream.cc: Same.
6259	* testsuite/27_io/stringbuf.cc: Same.
6260	* testsuite/27_io/filebuf.cc: Same.
6261	* testsuite/27_io/ios_manip_basefield.cc: Same.
6262	* testsuite/27_io/ios_manip_fmtflags.cc: Same.
6263	* include/bits/cpp_type_traits.h: Same.
6264	* include/bits/generic_shadow.h: Same.
6265	* include/bits/gslice_array.h: Same.
6266	* include/bits/gslice.h: Same.
6267	* include/bits/indirect_array.h: Same.
6268	* include/bits/slice_array.h: Same.
6269	* include/bits/sstream.tcc: Same.
6270	* include/bits/streambuf_iterator.h: Same.
6271	* include/bits/valarray_array.tcc: Same.
6272	* include/bits/valarray_meta.h: Same.
6273	* include/bits/valarray_array.h: Same.
6274	* config/os/mingw32/bits/ctype_noninline.h: Same.
6275	* config/os/mingw32/bits/ctype_base.h: Same.
6276	* config/os/hpux/bits/ctype_noninline.h: Same.
6277	* config/os/hpux/bits/ctype_base.h: Same.
6278	* config/os/gnu-linux/bits/ctype_noninline.h: Same.
6279	* config/os/gnu-linux/bits/ctype_base.h: Same.
6280	* config/os/generic/bits/ctype_noninline.h: Same.
6281	* config/os/generic/bits/ctype_base.h: Same.
6282
6283	* libsupc++/tinfo.h: Tweaks.
6284
62852002-01-15  Benjamin Kosnik  <bkoz@redhat.com>
6286
6287	* testsuite/22_locale/num_put_members_wchar_t.cc (test02): Same.
6288	* testsuite/22_locale/num_put_members_char.cc (test01): Tweak.
6289	* testsuite/22_locale/ctype_members_char.cc: Tweak.
6290
62912002-01-15  Benjamin Kosnik  <bkoz@redhat.com>
6292
6293	* include/bits/locale_facets.tcc (num_put::do_put(bool): Fix.
6294	(num_put::do_put(void*)): Fix.
6295	* testsuite/22_locale/num_put_members_char.cc (test02): Add.
6296	* testsuite/22_locale/num_put_members_wchar_t.cc (test02): Add.
6297	* testsuite/22_locale/num_get_members_char.cc (test02): Add
6298	long double, void, bool types.
6299	* testsuite/22_locale/num_get_members_wchar_t.cc (test02): Add.
6300
63012002-01-15  Benjamin Kosnik  <bkoz@redhat.com>
6302	    Alexandre Oliva  <aoliva@redhat.com>
6303
6304	* libmath/Makefile.am (LINK): Add --tag CC.
6305	* libmath/Makefile.in: Regenerate.
6306
63072002-01-15  John David Anglin  <dave@hiauly1.hia.nrc.ca>
6308
6309	* config/os/hpux/bits/ctype_noninline.h: Use __SB_masks for address
6310	of character to attribute mapping table.
6311
63122002-01-15  David Billinghurst <David.Billinghurst@riotinto.com>
6313
6314	* testsuite/26_numerics/c99_classification_macros_c.cc
6315	Remove dg-error and dg-excess-errors comments.
6316
63172002-01-14  Benjamin Kosnik  <bkoz@redhat.com>
6318
6319	* include/bits/locale_facets.tcc (time_put::put): Correct output
6320	iterator positions.
6321	* testsuite/22_locale/time_put_members_char.cc (test02): Add.
6322	* testsuite/22_locale/time_put_members_wchar_t.cc (test02): Add.
6323	* testsuite/22_locale/time_get_members_wchar_t.cc (test06): Add.
6324	* testsuite/22_locale/time_get_members_char.cc (test06): Add.
6325
63262002-01-14  Craig Rodrigues  <rodrigc@gcc.gnu.org>
6327
6328	* docs/html/17_intro/porting-howto.xml: Update filebuf section.
6329
63302002-01-14  Paolo Carlini  <pcarlini@unitus.it>
6331	    Nathan Myers  <ncm@cantrip.org>
6332
6333	* include/bits/basic_string.h
6334	(replace(__pos, __n1, __s, __n2)): Optimize by avoiding
6335	temporaries (i.e., call _M_replace_safe) when possible.
6336	(replace(__pos, __n, __str)): Call replace(__pos, __n1, __s, __n2).
6337	(replace(__pos, __n1, __s)): Call replace(__pos, __n1, __s , __n2).
6338	(replace(__i1, __i2, __str)): Call replace(__i1, __i2, __s, __n).
6339	(replace(__i1, __i2, __s)): Call replace(__i1, __i2, __s, __n).
6340	(replace(__i1, __i2, __s, __n)): Call replace(__pos1, __n1, __s, __n2).
6341	* include/bits/basic_string.tcc
6342	(replace(__pos1, __n1, __str, __pos2, __n2)): Call
6343	replace(__pos, __n1, __s, __n2).
6344	* testsuite/21_strings/replace.cc (test03): New testcases.
6345
6346	* include/bits/basic_string.h (insert(__pos, __s, __n)):
6347	Adjust comparison wrt overflow.
6348
63492002-01-12  Benjamin Kosnik  <bkoz@redhat.com>
6350
6351	* include/Makefile.am (std_headers_rename): New variable.
6352	(install-data-local): Use it.
6353	* include/Makefile.in: Regenerate.
6354
63552002-01-12  Benjamin Kosnik  <bkoz@redhat.com>
6356
6357	* include/bits/locale_facets.tcc (money_put::do_put(string):
6358	Correct output iterator value.
6359	* testsuite/22_locale/money_put_members_char.cc (test03): Add.
6360	* testsuite/22_locale/money_put_members_wchar_t.cc: Same.
6361
63622002-01-11  Phil Edwards  <pme@gcc.gnu.org>
6363
6364	* include/Makefile.am, include/Makefile.in (stamp-std):  Fix typo from
6365	previous commit.
6366
63672002-01-11  Phil Edwards  <pme@gcc.gnu.org>
6368
6369	* include/Makefile.am (std_headers):  Update list with new names.
6370	(stamp-std):  Link to standardized name.
6371	* include/Makefile.in:  Regenerate.
6372
6373	* include/std/algorithm, include/std/bitset, include/std/complex,
6374	include/std/deque, include/std/fstream, include/std/functional,
6375	include/std/iomanip, include/std/ios, include/std/iosfwd,
6376	include/std/iostream, include/std/istream, include/std/iterator,
6377	include/std/limits, include/std/list, include/std/locale,
6378	include/std/map, include/std/memory, include/std/numeric,
6379	include/std/ostream, include/std/queue, include/std/set,
6380	include/std/sstream, include/std/stack, include/std/stdexcept,
6381	include/std/streambuf, include/std/string, include/std/utility,
6382	include/std/valarray, include/std/vector:  Rename to...
6383
6384	* include/std/std_algorithm.h, include/std/std_bitset.h,
6385	include/std/std_complex.h, include/std/std_deque.h,
6386	include/std/std_fstream.h, include/std/std_functional.h,
6387	include/std/std_iomanip.h, include/std/std_ios.h,
6388	include/std/std_iosfwd.h, include/std/std_iostream.h,
6389	include/std/std_istream.h, include/std/std_iterator.h,
6390	include/std/std_limits.h, include/std/std_list.h,
6391	include/std/std_locale.h, include/std/std_map.h,
6392	include/std/std_memory.h, include/std/std_numeric.h,
6393	include/std/std_ostream.h, include/std/std_queue.h,
6394	include/std/std_set.h, include/std/std_sstream.h,
6395	include/std/std_stack.h, include/std/std_stdexcept.h,
6396	include/std/std_streambuf.h, include/std/std_string.h,
6397	include/std/std_utility.h, include/std/std_valarray.h,
6398	include/std/std_vector.h:  ...this.
6399
64002002-01-11  Loren Rittle <ljrittle@acm.org>
6401
6402	* include/Makefile.am (extra_target_headers): New list of all
6403	target files built with ad hoc naming rules.
6404	(stamp-*): Handle LN_S failure in manner portable across make
6405	implementations.
6406	(install-data-local): Install header files from human-maintained
6407	file lists and directory components instead of non-robust find.
6408	* include/Makefile.in: Rebuilt.
6409
64102002-01-11  Benjamin Kosnik  <bkoz@redhat.com>
6411
6412	* include/bits/locale_facets.tcc (money_get::do_get(string)):
6413	Check for zero-length negative sign before adding it to output
6414	string.
6415	(money_get::do_get(long double)): Return beg.
6416	* testsuite/22_locale/money_get_members_char.cc (test02): Add
6417	iterator checks.
6418	* testsuite/22_locale/money_get_members_wchar_t.cc: Same.
6419
64202002-01-10  David Seymour  <seymour_dj@yahoo.com>
6421
6422	libstdc++/5331
6423	* include/bits/locale_facets.h (num_get<>): Return advanced iterator
6424	for _M_extract_float and _M_extract_int
6425	* include/bits/locale_facets.tcc (num_get<>::_M_extract_float)
6426	(num_get<>::_M_extract_int): Likewise, all callers changed
6427	* testsuite/22_locale/num_get_members_char.cc: Testcase
6428
64292002-01-09  Paolo Carlini <pcarlini@unitus.it>
6430
6431	* libsupc++/exception (bad_exception): Add comment.
6432	* libsupc++/new (bad_alloc): Same.
6433	* libsupc++/typeinfo (bad_cast, bad_typeid): Same.
6434
64352002-01-09  Paolo Carlini <pcarlini@unitus.it>
6436
6437	libstdc++/3150: revert 2001-11-30 commit. DR266 only means
6438	that the destructors should be removed from the descriptions
6439	in the standard: writing them explicitly allows the vtable
6440	heuristic to work. For additional information see:
6441	http://gcc.gnu.org/ml/libstdc++/2002-01/msg00090.html
6442	http://gcc.gnu.org/ml/libstdc++/2002-01/msg00110.html
6443	http://gcc.gnu.org/ml/libstdc++/2002-01/msg00155.html
6444	* libsupc++/exception (bad_exception::~bad_exception()):
6445	Reintroduce declaration.
6446	* libsupc++/new (bad_alloc::~bad_alloc()): Same.
6447	* libsupc++/typeinfo (bad_cast::~bad_cast()): Same.
6448	(bad_typeid::~bad_typeid()): Same.
6449	* libsupc++/eh_exception.cc (bad_exception::~bad_exception()):
6450	Reintroduce definition.
6451	* libsupc++/new_handler.cc (bad_alloc::~bad_alloc()): Same.
6452	* libsupc++/tinfo.cc (bad_cast::~bad_cast()): Same.
6453	(bad_typeid::~bad_typeid()): Same.
6454
64552002-01-09  Benjamin Kosnik  <bkoz@redhat.com>
6456
6457	* include/Makefile.am (c_base_srcdir): Remove duplicate '/'.
6458	* include/Makefile.in: Regenerate.
6459
64602002-01-09  Bo Thorsen  <bo@suse.co.uk>
6461
6462	* config/cpu/x86-64/bits/cpu_limits.h (__glibcpp_long_bits): Add
6463	definition.
6464
64652002-01-08  Benjamin Kosnik  <bkoz@redhat.com>
6466
6467	libstdc++/2913
6468	libstdc++/4879
6469	* include/bits/fstream.tcc (filebuf::_M_really_overflow): Test
6470	return value of _M_file->sync().
6471	(filebuf::showmanyc): Check for is_open.
6472	* include/std/fstream (filebuf::sync): Tweak.
6473	* testsuite/27_io/filebuf.cc: Tweak.
6474
64752002-01-08  John Fardo  <jfardo@laurelnetworks.com>
6476	    Brad Garcia  <garsh@attbi.com>
6477
6478	* testsuite/27_io/filebuf_members.cc: Add test.
6479
64802002-01-07  Benjamin Kosnik  <bkoz@redhat.com>
6481	    Craig Rodrigues  <rodrigc@mediaone.net>
6482
6483	libstdc++/5174
6484	* po/Makefile.am (mkinstalldirs): Add.
6485	* po/Makefile.in: Regenerate.
6486
64872002-01-07  David Billinghurst  <David.Billinghurst@riotinto.com>
6488
6489	* testsuite_flags.in: Add -fmessage-length=0 to CXXFLAGS *
6490	testsuite/lib/prune.exp: Delete lines ":In function ..."  from
6491	compiler output.
6492	* testsuite/23_containers/map_operators.cc: Remove
6493	dg-excess-errors comment.
6494	* testsuite/23_containers/set_operators.cc: Likewise.
6495
64962002-01-06  Paolo Carlini  <pcarlini@unitus.it>
6497
6498	* include/bits/stl_function.h:  Remove two lines of comments;
6499	adjust copyright years.
6500
65012002-01-04  Benjamin  Kosnik  <bkoz@redhat.com>
6502
6503	* include/Makefile.am (std_headers): Remove cXXX from list.
6504	(c_base_srcdir): No bits subdirectory.
6505	(c_base_builddir): Same.
6506	(c_base_headers): Adjust names, add ciso646.
6507	(bits_headers): Remove std_xxx.h headers.
6508	* include/Makefile.in: Regenerate.
6509
6510	* include/ext/iterator: Adjust includes.
6511	* include/ext/ropeimpl.h: Same.
6512	* include/ext/stl_hash_fun.h: Same.
6513	* include/ext/algorithm: Same.
6514
6515	* include/backward/bvector.h: Adjust includes.
6516	* include/backward/vector.h: Same.
6517	* include/backward/strstream: Same.
6518	* include/backward/streambuf.h: Same.
6519	* include/backward/stack.h: Same.
6520	* include/backward/set.h: Same.
6521	* include/backward/queue.h: Same.
6522	* include/backward/multiset.h: Same.
6523	* include/backward/multimap.h: Same.
6524	* include/backward/map.h: Same.
6525	* include/backward/list.h: Same.
6526	* include/backward/iterator.h: Same.
6527	* include/backward/iostream.h: Same.
6528	* include/backward/iomanip.h: Same.
6529	* include/backward/fstream.h: Same.
6530	* include/backward/deque.h: Same.
6531	* include/backward/complex.h: Same.
6532
6533	* include/bits/std_algorithm.h: Move to...
6534	* include/std/algorithm: ...here.
6535	* include/bits/std_iosfwd.h, std_locale.h, std_stack.h,
6536	std_bitset.h, std_ios.h, std_map.h, std_stdexcept.h,
6537	std_complex.h, std_iostream.h, std_memory.h, std_streambuf.h,
6538	std_deque.h, std_istream.h, std_numeric.h, std_string.h,
6539	std_fstream.h, std_ostream.h, std_utility.h, std_iterator.h,
6540	std_queue.h, std_valarray.h, std_functional.h, std_limits.h,
6541	std_set.h, std_vector.h, std_iomanip.h, std_list.h, std_sstream.h:
6542	Same.
6543
6544	* include/c_std/bits/std_cassert.h: Move to...
6545	* include/c_std/cassert: Here.
6546	* include/c_std/std_cctype.h, std_cerrno.h, std_cfloat.h,
6547	std_climits.h, std_clocale.h, std_cmath.h, std_csetjmp.h,
6548	std_csignal.h, std_cstdarg.h, std_cstddef.h, std_cstdio.h,
6549	std_cstdlib.h, std_cstring.h, std_ctime.h, std_cwchar.h,
6550	std_cwctype.h: Same.
6551	* include/c_std/cmath: Adjust cmath.tcc include.
6552	* include/c_std/cstdlib: Adjust includes.
6553	* include/c_std/cwchar: Same.
6554	* include/c_std/ctime: Same.
6555	* include/c_std/cstring: Same.
6556	* include/c_std/cstdio: Same.
6557	* include/c_std/bits: Remove directory.
6558
6559	* include/c/bits/std_cassert.h: Move to...
6560	* include/c/cassert: Here.
6561	* include/c/std_cctype.h, std_cerrno.h, std_cfloat.h,
6562	std_climits.h, std_clocale.h, std_cmath.h, std_csetjmp.h,
6563	std_csignal.h, std_cstdarg.h, std_cstddef.h, std_cstdio.h,
6564	std_cstdlib.h, std_cstring.h, std_ctime.h, std_cwchar.h,
6565	std_cwctype.h: Same.
6566	* include/c/bits: Remove directory.
6567
6568	* include/std/cwctype: Remove.
6569	* include/std/cwchar: Remove.
6570	* include/std/ctime: Remove.
6571	* include/std/cstring: Remove.
6572	* include/std/cstdlib: Remove.
6573	* include/std/cstdio: Remove.
6574	* include/std/cstddef: Remove.
6575	* include/std/cstdarg: Remove.
6576	* include/std/csignal: Remove.
6577	* include/std/csetjmp: Remove.
6578	* include/std/cmath: Remove.
6579	* include/std/clocale: Remove.
6580	* include/std/climits: Remove.
6581	* include/std/ciso646: Remove.
6582	* include/std/cfloat: Remove.
6583	* include/std/cerrno: Remove.
6584	* include/std/cctype: Remove.
6585	* include/std/cassert: Remove.
6586
6587	* include/bits/fpos.h: Adjust includes, removing <bits/std_xxx.h>
6588	files and subsituting <xxx>.
6589	* include/bits/valarray_array.h: Same.
6590	* include/bits/stl_uninitialized.h: Same.
6591	* include/bits/stl_alloc.h: Same.
6592	* include/bits/stl_algobase.h: Same.
6593	* include/bits/sstream.tcc: Same.
6594	* include/bits/pthread_allocimpl.h: Same.
6595	* include/bits/ostream.tcc: Same.
6596	* include/bits/localefwd.h: Same.
6597	* include/bits/locale_facets.tcc: Same.
6598	* include/bits/locale_facets.h: Same.
6599	* include/bits/istream.tcc: Same.
6600	* include/bits/char_traits.h: Same.
6601	* include/bits/boost_concept_check.h: Same.
6602	* include/bits/basic_file.h: Same.
6603	* include/std/bitset: Same.
6604	* include/std/complex: Same.
6605	* include/std/fstream: Same.
6606	* include/std/functional: Same.
6607	* include/std/ios: Same.
6608	* include/std/iostream: Same.
6609	* include/std/ostream: Same.
6610	* include/std/sstream: Same.
6611	* include/std/streambuf: Same.
6612	* include/std/string: Same.
6613	* include/std/iterator: Same.
6614	* include/std/valarray: Same.
6615
6616	* src/ios.cc: Adjust includes.
6617	* src/valarray-inst.cc: Same.
6618	* src/string-inst.cc: Same.
6619	* src/stl-inst.cc: Same.
6620	* src/stdexcept.cc: Same.
6621	* src/misc-inst.cc: Same.
6622	* src/localename.cc: Same.
6623	* src/locale-inst.cc: Same.
6624	* src/locale.cc: Same.
6625	* src/limits.cc: Same.
6626	* src/concept-inst.cc: Same.
6627	* src/complex_io.cc: Same.
6628	* src/codecvt.cc: Same.
6629	* src/bitset.cc: Same.
6630	* src/cmath.cc: Same.
6631
66322002-01-04  Paolo Carlini  <pcarlini@unitus.it>
6633
6634	* include/bits/stl_tree.h (rb_tree):  Move to...
6635	* include/ext/rb_tree:  ...here, new file.
6636	* include/Makefile.am (ext_headers):  Add new file.
6637	* include/Makefile.in:  Regenerate.
6638	* include/bits/stl_tempbuf.h (get_temporary_buffer + helper,
6639	return_temporary_buffer, struct temporary_buffer):  Move to...
6640	* include/ext/memory:  ...here.
6641	* testsuite/ext/headers.cc:  Include <ext/rb_tree>.
6642	* include/backward/tempbuf.h:  Include <ext/memory>, tweak.
6643	* include/backward/tree.h:  Include <ext/rb_tree), tweak.
6644
66452002-01-03  Paolo Carlini  <pcarlini@unitus.it>
6646
6647	* include/bits/stl_numeric.h (power + helpers, iota):  Move to...
6648	* include/ext/numeric:  ...here, new file.
6649	* include/bits/stl_function.h (identity_element, unary_compose,
6650	binary_compose, compose1, compose2, identity, select1st,
6651	select2nd, project1st + helper, project2nd + helper,
6652	constant_void_fun + helper, constant_unary_fun + helper,
6653	costant_binary_fun + helper, constant0, constant1, constant2,
6654	subtractive_rng, mem_fun1, mem_fun1_ref):  Move to...
6655	* include/ext/functional:  ...here, new file.
6656	* include/Makefile.am (ext_headers):  Add new files.
6657	* include/Makefile.in:  Regenerate.
6658	* testsuite/ext/headers.cc:  Include <ext/numeric> and
6659	<ext/functional>.
6660	* include/backward/algo.h:  Include <ext/numeric>, tweak.
6661	* include/backward/function.h:  Include <ext/functional>, tweak.
6662	* include/ext/ropeimpl.h:  Include <ext/numeric>.
6663
66642002-01-03  Jeffrey A Law  <law@redhat.com>
6665
6666	* config/os/hpux/bits/os_defines.h: Prefix __strtoll and
6667	__strtoull declarations with __extension__.
6668
66692002-01-03  David Billinghurst <David.Billinghurst@riotinto.com>
6670
6671	* testsuite/lib/prune.exp: Correct regular expression for
6672	-ffunction-sections
6673
66742002-01-02  Phil Edwards  <pme@gcc.gnu.org>
6675
6676	* include/bits/stl_algo.h (upper_bound, equal_range, binary_search):
6677	Change concept checks, as with lower_bound and PR 2054.
6678	* testsuite/ext/concept_checks.cc:  Expand test to include those.
6679
66802002-01-02  Phil Edwards  <pme@gcc.gnu.org>
6681
6682	* include/bits/boost_concept_check.h:  Import some changes from
6683	upsteam (Boost) version.
6684
66852002-01-02  Paolo Carlini  <pcarlini@unitus.it>
6686
6687	* include/bits/stl_algobase.h (copy_n + helpers,
6688	lexicographical_compare_3way + helpers):  Move to...
6689	* include/ext/algorithm:  ...here.
6690	* include/bits/stl_uninitialized.h (uninitialized_copy_n +
6691	helpers):  Move to...
6692	* include/ext/memory:  ...here, new file.
6693	* include/Makefile.am (ext_headers):  Add new file.
6694	* include/Makefile.in:  Regenerate.
6695	* testsuite/ext/headers.cc:  Include <ext/memory>.
6696	* include/backward/algobase.h:  Include <ext/memory> and
6697	<ext/algorithm>, tweak.
6698	* include/ext/ropeimpl.h:  Include <ext/memory>, tweak.
6699	* include/ext/stl_rope.h:  Include <ext/memory>, tweak.
6700
67012002-01-01  Roger Sayle <roger@eyesopen.com>
6702
6703	* libmath/stubs.c (sinf,cosf): Implement stubs to enable the
6704	equivalent ___builtin__ versions.
6705
6706	* include/c_shadow/bits/std_cmath.h: All __builtin math functions
6707	are available in libstdc++ as the necessary stub implementations
6708	are provided by libmath/stubs.c.
6709
67102002-01-01  Jason Thorpe  <thorpej@wasabisystems.com>
6711
6712	* configure.in: Add support for NetBSD cross compiles.
6713	* configure: Regenerate.
6714