11999-12-26  Phil Edwards  <pme@sourceware.cygnus.com>
2
3	* docs/gentop/status:  Add snapshot version column, update
4	  for Solaris 7.
5	* docs/status.html:  Regenerated.
6
71999-12-26  Phil Edwards  <pme@sourceware.cygnus.com>
8
9	* docs/faq/index.html:  Turn README and RELEASE-NOTES into links
10          from installation FAQ, and specify location of text files.
11	* docs/faq/index.txt:  Regenerated.
12
131999-12-23  Phil Edwards  <pme@sourceware.cygnus.com>
14
15	* docs/gentop/download:  Add links to prebuilds for Cygwin/Mingw32.
16	* docs/download.html:  Regenerated.
17
181999-12-22  Phil Edwards  <pme@sourceware.cygnus.com>
19
20	* docs/faq/index.html:  Update 'what works' for .7 snapshot,
21	  clean up various links.
22	* docs/faq/index.txt:  Regenerated.
23	* docs/gentop/gentop:  Smarter regeneration script.
24	* docs/gentop/{head,foot}chunk.html:  Updated with new
25	  contributors link and mod date.
26	* docs/gentop/index:  Snapshot relase date.
27	* docs/gentop/thanks:  New contributors page added.
28	* docs/{download,how,index,links,mail,status,thanks}.html:
29	  Regenerated from gentop; thanks.html created.
30
311999-12-21  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
32
33	* bits/c++config.h.in (__GLIBCPP__): 19991221.
34	* docs/index.html: Add correct information.	
35
36	* config/irix: New directory.
37	* config/irix/ctype.cc: Add irix-6.5 info. Not tested.
38	* config/irix/bits/ctype_base.h: And here.
39
40	* config/aix: New directory.
41	* config/aix/ctype.cc: Add aix-4.2 info. Not tested.
42	* config/aix/bits/ctype_base.h: And here.
43	
441999-12-21  Philip Martin  <pm@corris.dircon.co.uk>
45
46        * bits/basic_string.h: Add special case handling for integral
47	"iterators".
48        * bits/std_string.h: include type_traits.h
49	* testsuite/21_strings/ctor_copy_dtor.cc: Tweak.
50	
511999-12-21  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
52
53	* bits/fstream.tcc (seekoff): Output buffer based on _M_*_in and
54	_M_*_end now.
55	* bits/std_fstream.h (sync): And here.
56	* testsuite/27_io/filebuf.cc: Revisions.
57	* testsuite/27_io/filebuf-2.tst: Correct, remove weird character
58	at the end of the file.
59	* testsuite/27_io/filebuf-3.tst: Correct.
60	
611999-12-21  Phil Edwards  <pedwards@jaj.com>
62
63	* docs/gentop/index:  Hold off on .7 announcement date.
64	* docs/index.html:  Regenerate.
65
661999-12-21  Benjamin Kosnik  <bkoz@kcygnus.com>
67
68	* bits/std_fstream.h (sync): Move _M_file->sync() to
69	_M_really_overflow().
70	* bits/fstream.tcc (seekoff): Call sync, not _M_really_overflow so
71	as to get the _M_file->sync action, which forces the external
72	buffer to update itself.
73	(underflow): Same here.
74
751999-12-21  Phil Edwards  <pedwards@jaj.com>
76
77	* bits/c++config.h.in:  Uncomment _GLIBCPP_USE_NAMESPACES and move...
78	* acconfig.h:  ...to here.
79	* config.h.in:  Regenerate from aclocal.
80	* acinclude.m4:  Add GLIBCPP_ENABLE_DEBUG, GLIBCPP_ENABLE_NAMESPACES.
81	* aclocal.m4:  Regenerate from acinclude.
82	* configure.in:  Use ENABLE macros here.
83	* configure:  Regenerate.
84	* src/Makefile.am:  Use results from ENABLE macros.
85	* src/Makefile.in:  Regenerate.
86
871999-12-20  Benjamin Kosnik  <bkoz@cygnus.com>
88	
89	* mkcheck (SRC_DIR): Now have to include config/* dir if "make
90	check" and not "make check-install." Temporarily hack in linux
91	support.
92	
93	* bits/std_streambuf.h: Tweaks.
94	* bits/streambuf.tcc (xsgetn): Tweaks.
95	* bits/std_fstream.h (sync): Make _M_really_overflow consistent.
96	* bits/fstream.tcc (filebuf::underflow): Simplify.
97	* bits/std_sstream.h (streambuf::underflow): Minor change to make
98	checks for read position precisely implement the standard.
99	* bits/basic_file.h (filepos_cur): Base this on _offset.
100	* testsuite/21_strings/inserters_extractors.cc (test05): Tweaks.
101	* testsuite/27_io/filebuf.cc: Tweak.
102
1031999-12-20  Benjamin Kosnik  <bkoz@cygnus.com>
104
105	* docs/17_intro/RELEASE-NOTES: Fix typos.
106
107	* bits/locale_facets.h (ctype): Modify, use __to_type to abstract
108	out platform-specific bits.
109	* config/default/ctype.cc: And here.
110	* config/defaults/bits/ctype_base.h: And here.
111	* config/linux/ctype.cc: And here.
112	* config/linux/bits/ctype_base.h (ctype_base): And here.
113	* config/solaris/bits/ctype_base.h (ctype_base): Add
114	__to_type. Comment, as it looks like this is for solaris2.6 and
115	above: solaris2.5.1 doesn't seem to have the same definitions.
116	* config/solaris/ctype.cc: And here.
117
1181999-12-19  Benjamin Kosnik  <bkoz@cygnus.com>
119            Ulrich Drepper  <drepper@cygnus.com>
120	
121	* acconfig.h: Remove _GLIBCPP_USE_CTYPE_ISBIT.
122
123	* src/locale.cc: Take out platform-specific hacks.
124	* config/linux/ctype.cc: Put here.
125	* config/solaris/ctype.cc: Put here.
126	* config/default/ctype.cc: Put here.	
127
128	* bits/locale_facets.h: Take out platform-specific hacks.
129	* config/linux/bits/ctype_base.h: Put here.
130	* config/solaris/bits/ctype_base.h: Put here.
131	* config/default/bits/ctype_base.h: Put here.	
132
133	* configure.in: Bump version.
134	Add tests for top-level config directory.
135	* configure: Regenerated.
136	* src/Makefile.am (INCLUDES): Add platform-specific dir.
137	* src/Makefile: Regenerate.
138	
1391999-12-19  Benjamin Kosnik  <bkoz@cygnus.com>
140	    Ulrich Drepper  <drepper@cygnus.com>
141
142        * bits/locale_facets.h: Hack in solaris support.
143        * src/locale.cc: Here too.
144
1451999-12-18  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
146
147	* docs/17_intro/TODO: Update
148	* docs/17_intro/RELEASE-NOTES (New): Update.
149
1501999-12-17  Benjamin Kosnik  <bkoz@milou.cygnus.com>
151
152	* bits/c++config.h.in (__GLIBCPP__): Bump.
153	* docs/17_intro/RELEASE-NOTES: Update, Gaby please add your stuff.
154	* docs/17_intro/TODO: Update.	
155
156	* bits/locale_facets.h: Touch this too.
157	* bits/localefwd.h: Add typedefs for loooooong vector names.
158	* bits/locale_facets.tcc (locale::operator()): Need parens.
159	(has_facet): Simplify.
160	* src/locale-inst.cc: Add instantiations.
161	* src/locale.cc: Tweaks.
162	
163	* bits/std_streambuf.h: Move indeterminates into. . 
164	* bits/std_fstream.h: Here.	
165	* bits/fstream.tcc (underflow): Rewind just for ios_base::out
166	streams.
167	* bits/sstream.tcc: Very minor formatting tweaks.
168	* bits/std_streambuf.h (_M_set_determinate): If exclusively an
169	input buffer, set _M_buf to offset.
170	* bits/istream.tcc (std): Tweaks.
171	* testsuite/27_io/istream_unformatted.cc (test05): More tweaks,
172	include fstream.
173	* testsuite/27_io/filebuf.cc: Tweaks.
174	
1751999-12-17  Phil Edwards  <pedwards@jaj.com>
176
177	* configure.in:  Add OPTLEVEL, -O2 for gcc 2.96+, nothing otherwise.
178	* configure:  Regenerate.
179	* src/Makefile.am:  Use OPTLEVEL in CXXFLAGS.
180	* src/Makefile.in:  Regenerate.  Also picks up OTHER_CXXFLAGS rename
181	  to OPTIMIZE_CXXFLAGS from a previous revision (1.96) to Makefile.am.
182
1831999-12-17  Phil Edwards  <pedwards@jaj.com>
184
185	* docs/21_strings/stringtok_std_h.txt:  New algorithm
186	  suggested by Chris King.
187	* docs/21_strings/howto.html:  Link to new version.
188
1891999-12-16  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
190
191	* bits/valarray_array.h (__valarray_sum): Use operator+=, not
192	operator+.
193	* docs/17_intro/TODO: Update.
194
1951999-12-15  Phil Edwards  <pme@sourceware.cygnus.com>
196
197	* docs/gentop/footchunk.html:  Updated, fixed CRLFs.
198	* docs/gentop/gentop:  Ditto.
199	* docs/gentop/headchunk.html:  Ditto.
200	* docs/*.html:  Regenerated from gentop.
201	* docs/*/howto.html:  Updated as test.
202	* docs/faq/index.html:  Updated, fixed CRLFs.
203	* docs/faq/index.txt:  Regenerated.
204
2051999-12-15  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
206
207	* mknumeric_limits (OUT_C): restart only if $OUT_C is present.
208
209	* bits/std_complex.h 
210	(complex<float>::complex(const complex<double>&),
211 	complex<float>::complex(const complex<long double>&)): Define.
212
213	* docs/17_intro/TODO: Update.
214
2151999-12-13  Benjamin Kosnik  <bkoz@cygnus.com>
216
217	* bits/istream.tcc (seekg): Don't set _M_gcount.
218	(tellg): Same.
219	* bits/fstream.tcc (filebuf::underflow): Re-sync
220	external byte sequence's input buffer only. . .
221	* testsuite/27_io/istream_unformatted.cc (test04): New tests for
222	tellg, seekg and filebufs.
223	(test05): Same for stringbufs.
224	* testsuite/27_io/istream_unformatted-2.tst: New file.
225	* testsuite/27_io/istream_unformatted-1.tst: New file.
226	* testsuite/27_io/istream_unformatted-1.txt: New file.	
227	* testsuite/21_strings/inserters_extractors.cc (test05): Change
228	output file.
229
2301999-12-13  Phil Edwards  <pedwards@jaj.com>
231
232        * docs/gentop/*:  New directory, containing bits for the homepages.
233        * docs/*.html:  Regenerated from gentop.
234        * docs/*/*.html:  Entries added and regenerated.
235
2361999-12-13  Benjamin Kosnik  <bkoz@gnu.org>
237
238	Efforts to get -O2 to work with -Winline -Werrors.
239	* bits/valarray_array.h (__valarray_fill(_Tp*, size_t, const
240	_Tp&): Remove inline declaration, as cannot be inlined and
241	-Winline -Werror complains. An interesting question is why this
242	cannot be inlined, as I can see no real reason to disqualify it.
243	(__valarray_product(const _Tp*, const _Tp*)): Same here.
244	* bits/std_valarray.h (valarray::operator[](size_t)): Same here.
245	
246	* docs/17_intro/TODO: Update.
247
2481999-12-12  Benjamin Kosnik  <bkoz@gnu.org>
249
250	* bits/std_fstream.h (seekpos): Tweaks, fixes. Move definition to
251	fstream.tcc.
252	* bits/basic_file.h (filepos_cur()): Make pointers themselves be
253	the resultant position.
254	* bits/fstream.tcc (seekoff): Explicitly set return value to
255	resultant external byte sequence position, not value returned from
256	_M_file->seekoff. Need to make 
257	(seekpos): New definition.
258	
259	* bits/istream.tcc (seekg): As per Library Issues List 136, set to
260	just istream. Necessary, or else tellg will give an invalid stream
261	position, but seekg will return a valid stream position, which is
262	not groovy: see testcase addition.
263	* bits/ostream.tcc (seekp): Same.
264	
265	* bits/streambuf.tcc (_S_copy_streambufs): Simplify.
266	* bits/sstream.tcc: Tweaks.
267	* bits/locale_facets.tcc: Tweaks.
268	(num_put::do_put(iter_type, ios_base, char_type, const void*)):
269	Re-write in a way that is easier for the inliner to work with.
270	* bits/ios_base.h: Use explicit static_cast<int>(...) notation.
271
2721999-12-10  Benjamin Kosnik  <bkoz@cygnus.com>
273
274	* bits/locale_facets.tcc: Tweaks.
275	* bits/locale_facets.h (use_facet): Can't inline, remove inline
276	from declaration.
277	* bits/localefwd.h: And here.
278	* bits/std_ostream.h: Tweaks, sentry ctor can't be inlined.
279	* bits/ostream.tcc: Put here.
280	
281	Frank Ch. Eigler  <fche@cygnus.com> 
282	* src/Makefile.am: Adjust CXXFLAGS, add AM_CXXFLAGS. 
283
2841999-12-08  Benjamin Kosnik  <bkoz@cygnus.com>
285
286	* bits/sstream.tcc (stringbuf::seekoff): Long overdue revamp. Make
287	in and out buffers update independently.
288
289	* bits/basic_ios.h: Minor formatting.
290	* bits/fstream.tcc (std): Fix indentation.
291
2921999-12-08  Chip Salzenberg  <chip@valinux.com>
293
294        * bits/char_traits.h (char_traits<>): Move not_eof() functions
295        after corresponding eof() functions, so they're easier for the
296        compiler to inline.
297        * bits/locale_facets.h (money_base::__default_pattern): Move
298        static variable out of inline functions.
299        (_Moneypunct<>::do_{pos,neg}_format): Use it.
300        * src/locale-inst.cc (money_base::__default_pattern): Define it.
301
3021999-12-08  Benjamin Kosnik  <bkoz@cygnus.com>
303
304	* bits/std_fstream.h (filebuf::open): Tweak.
305	* bits/fstream.tcc (filebuf::seekoff): Simplify, fix.
306	* bits/std_ios.h: Minor tweaks for headers.
307
3081999-12-06  Benjamin Kosnik  <bkoz@gnu.org>
309
310	* bits/c++config.h.in (_GLIBCPP_FULLY_COMPLIANT_HEADERS): New macro.
311	* src/string-inst.cc: Add guards . . .
312	* src/misc-inst.cc: And here.
313	* bits/std_sstream.h: And here.
314	* bits/std_fstream.h: And here.
315	* bits/std_streambuf.h: And here.
316	* bits/std_istream.h: And here.
317	* bits/std_ostream.h: And here.
318
3191999-12-06  Scott Snyder  <snyder@fnal.gov>
320
321        * bits/istream.tcc (basic_istream::read): Try to handle __n == 0
322        case.
323	(basic_istream::readsome): And here as well.
324        * testsuite/27_io/istream_unformatted.cc: Test a zero-length
325        read().
326
3271999-12-06  Mumit Khan  <khan@xraylith.wisc.edu>
328
329        * bits/istream.tcc (basic_istream::ignore): streamsize is not 
330        necessarily an `int'.
331
3321999-12-06  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
333
334	* mknumeric_limits: Don't use $CXXFLAGS when building
335	gen-num-limits. It's definitely wrong to use it since $CXXFLAGS
336	generally instructs the compiler not to emit template
337	instantiations and we end up with undefined symbols. Sigh.
338
3391999-12-05  Benjamin Kosnik  <bkoz@gnu.org>
340
341	* bits/locale_facets.tcc: Tweak.
342	(_S_format_long): Adjust showpos formatting for hex and oct.
343	* bits/std_ostream.h (operator<<(short)): Correctly deal with hex
344	and oct by formatting as unsigned.
345	(operator<<(int)): Same here.
346	* bits/ostream.tcc (operator<<(long)): Same.
347	(operator<<(long long)): Same.
348	(_S_pad_char): Actually treat ios_base::internal as something
349	worth doing correctly. Remove const designation on ios argument.
350	* testsuite/27_io/ios_manip_basefield.cc (test02): Add tests.
351	* testsuite/27_io/ostream_inserter_arith.cc (test03): Add tests.
352	
3531999-12-04  Benjamin Kosnik  <bkoz@gnu.org>
354
355	* bits/std_sstream.h (streambuf::underflow): Check for mode == in.
356
3571999-12-03  Benjamin Kosnik  <bkoz@gnu.org>
358
359	* bits/locale_facets.tcc (num_put::do_put(bool): Fix.
360
361	* bits/sstream.tcc (streambuf::seekoff): Add parens.
362	* bits/istream.tcc (istream::get(sb)): Handle exceptional events.
363	(operator>>(istream, _CharT*)): Change streamsize to int_type.
364	(operator>>(istream, _CharT&)): Fix typedef'd type to be _CharT.
365	* bits/ostream.tcc (ostream::operator<<(const char*)): Stub out
366	unused argument.
367	(ostream::operator<<(_CharT)): Fix.
368	
369	* bits/std_sstream.h: Temporarily disable including sstream.tcc to
370	see if this will increase compile speed.
371	* bits/std_ostream.h: Likewise. . .
372	* bits/std_istream.h: And here.
373	* bits/std_fstream.h: And here.
374	* src/misc-inst.cc: Add relevant header file includes for
375	instantiation purposes.
376	* src/string-inst.cc: And here.
377	* testsuite/27_io/ostream_inserter_arith.cc: Add test case.
378	
3791999-12-02  Benjamin Kosnik  <bkoz@gnu.org>
380
381	* testsuite/27_io/istream_unformatted.cc (test03): Add tests.
382	* bits/istream.tcc (get(streambuf)): More fixes. 
383	(istream::ignore): Get specific about numeric_limits<int>::max()
384	requirements.
385
386	* bits/fstream.tcc (filebuf::open): Tweaks for _M_last_overflowed.
387	(filebuf::close): Same.
388	* testsuite/27_io/filebuf.cc: Add tests for ios_base::ate.
389	
3901999-12-01  Phil Edwards  <pedwards@jaj.com>
391
392        * mkcheck:  Support for compilation/execution timing.
393	* testsuite/printnow.c: New file.
394	
3951999-12-01  Phil Edwards  <pedwards@jaj.com>
396
397        * bits/std_cwchar.h:  Test for _GLIBCPP_USE_WCHAR_T.
398        * configure.in:  Test for presence of wchar.h before testing
399          for any of its features.
400        * configure:  Regenerate.
401
4021999-11-30  Benjamin Kosnik  <bkoz@gnu.org>
403
404	Preliminary istream validations complete.
405	* bits/istream.tcc (istream::getline): Fixes. Tweaks to make
406	formatting more consistent. Removal of if-statements inside of for
407	loops.
408	(ignore): Fix.
409	(get): Same.
410	(putback): Same.
411	* bits/std_istream.h: Same.
412	* bits/sstream.tcc (stringbuf::pbackfail): Fix.
413	* testsuite/27_io/stringbuf.cc: Tweak.
414	* testsuite/27_io/istream_unformatted.cc (test02): Mo' tests.	
415
416	* bits/ostream.tcc (ostream::operator<<(arith)): Set badbit, not
417	failbit on failure, as per 27.6.2.5.2.
418
419	* stl/bits/std_vector.h: Allow bool specializations. Should move
420	ext/std_bvector to bits, not ext, maybe.
421
4221999-11-30  Mumit Khan  <khan@xraylith.wisc.edu>
423
424        * configure.in: Fix checks for mbstate_t and WCHAR_MIN/MAX.
425	* configure: Regenerate.
426	
4271999-11-29  Benjamin Kosnik  <bkoz@gnu.org>
428
429	* bits/istream.tcc (get(streambuf, char)): Fix.
430	* testsuite/27_io/istream_unformatted.cc (test03): Add tests.
431	
4321999-11-29  Scott Snyder  <snyder@fnal.gov>
433
434        * bits/basic_string.h (append(const _Char*, size_type)): The
435        length of the appended string is given exactly by the second arg,
436        regardless of the data in the character array.
437        * bits/string.tcc (basic_string(const _CharT*, size_type, const
438        _Alloc&)): Likewise.
439        * testsuite/21_strings/append.cc (test01): Remove erroneous test
440        of basic_string::append.
441
4421999-11-29  Chip Salzenberg  <chip@valinux.com>
443
444	* Makefile.in: Tweaks for CXXFLAGS.
445	* */Makefile.in: Same.
446
4471999-11-29  Mumit Khan  <khan@xraylith.wisc.edu>
448
449        * conficd bgure.in: Check for wide character support.
450        * bits/c++config.h.in (_GLIBC_USE_WCHAR_T): Move from here ...
451        * acconfig.h (_GLIBC_USE_WCHAR_T): to here.
452        * bits/string.tcc (wstring::_S_find): Guard wchar_t specialization.
453	
4541999-11-29  Mumit Khan  <khan@xraylith.wisc.edu>
455
456        * acinclude.m4: Fix typo.
457        * src/complex.cc: Fix macro line continuation.
458	
4591999-11-29  Petter Urkedal  <petter@matfys.lth.se>
460
461        * src/Makefile.am (CXXFLAGS): Add -Wno-format to allow non-
462        string literals in format, as used in locale-facets.tcc.
463
4641999-11-28  Benjamin Kosnik  <bkoz@gnu.org>
465
466	* testsuite/27_io/istream_unformatted.cc (test03): Add tests.
467	* bits/istream.tcc (istream::get): Extract to argument minus one.
468	Various tweaks and fixes.
469	
4701999-11-22  Mumit Khan  <khan@xraylith.wisc.edu>
471
472        * bits/locale_facets.tcc: Workaround for compiler crash on
473        ix86-*-mingw32.
474
4751999-11-21  Mumit Khan  <khan@xraylith.wisc.edu>
476
477        * acinclude.m4: New file. New _GLIBCPP_CHECK_FLOAT_SUPPORT macro.
478        * configure.in: Use.
479        * acconfig.h: New _GLIBCPP_BUGGY_FLOAT_COMPLEX macro.
480        * src/complexf.cc: New _GLIBCPP_FLOAT_SPECIALIZATION macro.
481        * bits/std_complex.h: Use.
482        * src/complex.cc: Use.
483
4841999-11-19  Mumit Khan  <khan@xraylith.wisc.edu>
485
486        * testsuite/18_support/numeric_limits.cc: Add missing std:: prefix.
487        * testsuite/21_strings/inserters_extractors.cc: Likewise.
488        * testsuite/22_locale/ctype.cc: Likewise.
489        * testsuite/23_containers/multiset.cc: Likewise.
490        * testsuite/23_containers/vector_ctor.cc: Likewise.
491        * testsuite/26_numerics/binary_closure.cc: Likewise.
492        * testsuite/27_io/fpos.cc: Likewise.
493        * testsuite/27_io/ios_base_callbacks.cc: Likewise.
494        * testsuite/27_io/istream_extractor_arith.cc: Likewise.
495        * testsuite/27_io/istream_extractor_char.cc: Likewise.
496        * testsuite/27_io/istream_extractor_other.cc: Likewise.
497        * testsuite/27_io/istream_sentry.cc: Likewise.
498        * testsuite/27_io/ostream_inserter_char.cc: Likewise.
499        * testsuite/27_io/ostream_inserter_other.cc: Likewise.
500        * testsuite/27_io/streambuf.cc: Likewise.
501        * testsuite/27_io/stringstream.cc: Likewise.
502
5031999-11-19 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
504
505        * bits/valarray_meta.h: Don't forget to define tanh
506
5071999-11-18  Philip Martin  <pm@corris.dircon.co.uk>
508 
509       * src/stl-inst.cc: Use typedef to refer to iterator
510       * stl/bits/stl_algobase.h: Add traits based dispatch for
511       __normal_iterator in the copy()algorithm
512       * stl/bits/type_traits.h: Add _Is_normal_iterator trait support
513
5141999-11-18  Kevin Ediger  <kediger@licor.com>
515
516        * src/locale.cc (locale::_Imp::_Imp): Use auto_ptr to make
517	constructors for locale::_Impl exception safe.
518
5191999-11-18  Scott Snyder  <snyder@fnal.gov>
520
521        * stl/bits/stl_queue.h: The C++ standard gives the default for the
522        _Sequence template argument of priority_queue<> as vector<>, not
523        deque<>.
524
5251999-11-18  Benjamin Kosnik  <bkoz@gnu.org>
526
527	* bits/std_sstream.h (stringbuf::_M_really_sync): Add __iend as a
528	parameter.
529	* bits/sstream.tcc: Adjust here too.
530	
5311999-11-17  Benjamin Kosnik  <bkoz@gnu.org>
532
533	* bits/sbuf_iter.h (istreambuf_iter::equal): Tweak.
534	* bits/istream.tcc (operator>>): Replace iostate(0) with
535	iostate(ios_base::goodbit), which is the same thing, but hopefully
536	a bit clearer.
537	* bits/locale_facets.tcc (do_get(bool)): Streamline, deal with
538	libraries issue list 17.
539	(do_gets): Don't set goodbit explicitly, instead only set on
540	failures as good bit is the default setting.
541	* bits/ios_base.h (setf): Set correctly.
542	* bits/fstream.tcc: Tweak.
543	* bits/std_sstream.h (_M_really_sync): Fix ibuffer positioning for
544	in|out bufs that are empty. . .
545	* testsuite/27_io/istream_extractor_arith.cc (test03): Add.
546	
5471999-11-16  Benjamin Kosnik  <bkoz@gnu.org>
548
549	* testsuite/27_io/streambuf.cc (class testbuf): Don't set _M_buf_size.
550	* bits/std_streambuf.h (setp): Set _M_buf_size, _M_mode.
551	Add comments "all about _M_buf."
552	(setg): Set _M_mode.
553
5541999-11-16  Kevin Ediger  <kediger@licor.com>
555
556	* bits/locale_facets.tcc (_S_build_float_format): New function.
557	(_S_output_float): New function.
558	(num_put::do_put(double)): Use 'em.
559        (num_put::do_put(long double)): Use 'em.
560	* testsuite/27_io/ostream_inserter_arith.cc: New file.
561
5621999-11-15  Scott Snyder  <snyder@fnal.gov>
563
564        * bits/basic_file.h: Type of __off parm should be __c_streampos, to
565        match how libio is calling us.
566        * src/basic_file.cc (sys_seek): Likewise.
567        * bits/std_fstream.h (basic_filebuf::sync): Restore sync call.
568
5691999-11-15  Benjamin Kosnik  <bkoz@gnu.org>
570
571	* docs/17_intro/contribute.html: Add link to assignment form.
572	* docs/17_intro/libstdc++-assign.txt: New file.
573
574	* mkcheck (TESTS_FILE): Move a copy of test files as well as
575	output files.
576
577	* bits/std_streambuf.h (_M_buf_bump): New function.
578	* bits/streambuf.tcc: Mods to support _M_buf_bump.
579	(xsputn): Here. Also add checks for output valid.
580	(xsgetn): Add checks for input valid.
581	(sputc): Here.
582	(sgetc): Set _M_in_end to _M_buf + _M_buf_end.
583	* bits/std_sstream.h (_M_really_sync): Set _M_buf.
584	Set _M_out_end to variable-length-end.
585	* bits/sstream.tcc (overflow): Use _M_buf_bump.
586	(seekpos): Same.
587	(seekoff): Same.
588	* bits/fstream.tcc (std): Tweak formatting.
589	(filebuf::overflow): Simplify.
590	(filebuf::showmanyc): Same.
591	(filebuf::underflow): Same.
592	* testsuite/27_io/filebuf.cc: Fix.
593	* testsuite/27_io/ostream_inserter_other.cc: Fix.
594	* testsuite/27_io/ostream_inserter_other-2.tst: New file.
595	* testsuite/27_io/stringbuf.cc: Tweak.	
596	* testsuite/27_io/streambuf.cc: Tweak.	
597	* testsuite/27_io/istream_extractor_other.cc: Fix.
598
5991999-11-11  Matthias Klose  <doko@cs.tu-berlin.de>
600
601	* stl_deque.h: Use static_casts<size_type>(signed_type).
602
6031999-11-11  Benjamin Kosnik  <bkoz@gnu.org>
604
605	Cleanups for callbacks, more regression hunting. Remaining
606	failures (1) due to last unresolved stringstream issues, not
607	regressions per se.
608	* bits/std_fstream.h: Revert. Disable call to _M_file->sync as
609	killing 27_io/filebuf.cc tests. . . need another solution.
610
611	* bits/streambuf.tcc (_S_copy_streambufs): Fix.
612	* testsuite/27_io/istream_extractor_other.cc: Tweak comments.
613
614	* bits/basic_ios.h: Add cached facets here. UGH. The standard
615	foils all attempts at a graceful, minimal implementation.
616	* bits/basic_ios.tcc: Tweaks.
617	* bits/istream.tcc: Fix.
618	* bits/ostream.tcc: Fix.
619	* bits/std_istream.h: Fix.
620	* bits/std_ostream.h: Fix.
621	* src/ios.cc (ios_base::imbue): Set _M_locale_ios before calling
622	callbacks.
623	* bits/locale_facets.tcc (std): Minor, minor formatting tweak.
624	(_S_pad_numeric): Make comprehensible.
625
6261999-11-10  Benjamin Kosnik  <bkoz@cygnus.com>
627
628	* bits/std_ostream.h: Add callbacks for _M_fnumput.
629	(_S_ostream_fcache): New function.
630	Move functions out-of-line.
631	* bits/ostream.tcc: Put here.
632
633	* bits/std_istream.h: Add callbacks for _M_fnumget.
634	(_S_istream_fcache): New function.
635	Move functions out-of-line.
636	* bits/istream.tcc: Put here.
637	
638	* bits/basic_ios.tcc (basic_ios::imbue): Tweaks, remove call to
639	_M_call_callbacks(), as ios_base::imbue does this already.
640	* src/ios.cc (register_callback): Clean.
641	(_M_call_callbacks): Same.
642	* bits/ios_base.h: Callback work.
643	* testsuite/27_io/ios_base_callbacks.cc (test01): New file.
644	
6451999-11-10  Benjamin Kosnik  <bkoz@cygnus.com>	
646	    Matthias Klose  <doko@cs.tu-berlin.de>
647
648	* stl/ext/stl_rope.h: Fix initialization order.
649
6501999-11-09  Scott Snyder  <snyder@fnal.gov>
651
652        * bits/std_fstream.h (basic_filebuf::sync): Unconditionally call
653        _M_file->sync() so that redirection works correctly.
654
6551999-11-09  Benjamin Kosnik  <bkoz@gnu.org>
656
657	* bits/istream.tcc: Re-order.
658	* bits/std_istream.h: Fix getline problems.
659	* testsuite/27_io/istream_unformatted.cc: New tests.
660	
661	Clean up regressions.
662	* bits/std_sstream.h: Set initial stringbufs correctly.
663
6641999-11-09  Scott Snyder <snyder@fnal.gov>
665
666        * stl_vector.h (_M_range_insert): Fix mixing pointers and
667        vector::iterator.
668	* testsuite/23_containers/vector_modifiers.cc (test01): New file,
669	tests.
670	
6711999-11-09  Benjamin Kosnik  <bkoz@cygnus.com>
672
673	* src/Makefile.am (CXXFLAGS): Add -Winline.
674	* src/Makefile.in: Regenerate.
675
6761999-11-05  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
677
678	* bits/valarray_meta.h (_DEFINE_EXPR_UNARY_FUNCTION): When
679	building meta-expressions don't forget to take the contained
680	closures. 
681
6821999-11-02  Benjamin Kosnik  <benjamin@cygnus.com>
683
684	* configure: Regenerate.
685	
6861999-11-02  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
687
688	* bits/valarray_meta.h (_Expr<>::sum): Tweak. Use copy-initialization
689 	syntax.
690	* bits/valarray_meta.h (min): Likewise.
691	* bits/valarray_meta.h (max): Likewise.
692
6931999-11-01  Benjamin Kosnik  <bkoz@cygnus.com>
694
695	* bits/std_sstream.h (_M_really_sync): Take into account in | out bufs.
696	* bits/std_streambuf.h (_S_copy_streambufs): New function.
697	* bits/streambuf.tcc: Define.
698	* bits/istream.tcc (istream::operator>>(streambuf)): Rewrite.
699	* bits/ostream.tcc (ostream::operator<<(streambuf)): Rewrite.
700	* testsuite/27_io/ostream_inserter_other.cc: Add tests.
701	* testsuite/27_io/ostream_inserter_other-1.tst: New file.
702
703	* bits/basic_string.h: Explicitly cast npos to unsigned type,
704	reported by Richard Atterer.
705	* bits/char_traits.h: For consistency's sake, here too.
706	
707	* configure.in: Bump version to 2.90.7.
708	
7091999-10-31  Benjamin Kosnik  <bkoz@cygnus.com>
710
711	* testsuite/27_io/ostream_inserter_char-1.tst: Check file output.
712	* testsuite/27_io/ostream_inserter_char.cc (test05, test01): Add tests.
713	* bits/streambuf.tcc (xsputn): Treat--size const char for long loops.
714	(xsgetn): Same.
715	* bits/sstream.tcc (seekpos): Tricks, mostly: check _M_mode before
716	writing into buffer.
717	(seekoff): Same.
718	
7191999-10-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
720
721	* bits/valarray_array.h (__valarray_sum): New function.
722	* bits/valarray_array.h (__valarray_product): Same.
723
724	* bits/std_valarray.h (valarray<T>::product): Comment out.
725	* bits/std_valarray.h (valarray<T>::sum): Use __valarray_sum
726	instead of accumulate. 
727
728	* src/valarray-inst.cc: Remove explicit intantiation of
729	class multiplies<size_t>, accumulate, valarray<size_t>::product. 
730	* src/valarray-inst.cc (__valarray_product): Instantiate
731	explicitly. 
732	* src/valarray-inst.cc (__valarray_product(const
733	valarray<size_t>&)): New function.   
734	* src/valarray-inst.cc (gslice::_Indexer::_Indexer): Don't use
735	valarray<size_t>::product. Use __valarray_product instead.
736	
737
7381999-10-25  Benjamin Kosnik  <bkoz@cygnus.com>
739
740	* bits/std_ostream.h (ostream.inserters.char): Correctly pad output.
741	(_S_pad_char): New function. Not done: ios_base::internal.
742	* bits/ostream.tcc: Clean for above.
743	* bits/locale_facets.tcc (_S_fill): Remove ostreambufiterator
744	specialization that was commented out, as ostreams now have to
745	correctly deal with padding.
746	* testsuite/27_io/ostream_inserter_char.cc (main): Add tests.
747	
748	* testsuite/21_strings/ctor_copy_dtor.cc(test02): Add test case
749	from mailing list. This is a bug, and should be fixed.
750	* testsuite/21_strings/inserters_extractors.cc (main): Tweak, fix typo.
751	
7521999-10-22  Petter Urkedal  <petter@matfys.lth.se>
753
754        * stl/bits/stl_numeric.h (__power): Replaced argument name `__opr'
755        to avoid conflict with gcc name mangling.
756        * stl/bits/stl_algo.h (__transform): Same.
757
7581999-10-21  Benjamin Kosnik  <bkoz@cygnus.com>
759
760	* bits/ios_base.h: Change argument names.
761	* docs/17_intro/BADNAMES: Add __opr.
762	
7631999-10-20  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
764	
765	Work on compilation slowdowns from 10-5 to 10-12, which are
766 	related to the _Callback_list inlining/merge-ifcation, which is
767 	still a pending issue, but this stuff is necessary cleanup anyway.
768
769	* src/ios.cc: Re-arrange.
770	* bits/ios_base.h: Tweak.
771	* bits/basic_ios.tcc: Move out of line definitions here, move
772 	small out-of-line definitions inline.
773	* bits/basic_ios.h: From here.
774	
775	* bits/streambuf.tcc (pbackfail, overflow): Move back inline.
776	* bits/std_streambuf.h: From here.
777
7781999-10-19  Benjamin Kosnik  <bkoz@cygnus.com>
779
780	* testsuite/27_io/istream_extractor_char.cc: Add tests.
781	* bits/std_istream.h: Tweaks--set eofbit on eof condition.
782	* bits/istream.tcc (operator>>(istream&, string&): Remove
783	vestigial issspace hacks and use ctype::is instead.
784	(getline): Remove unnecessary loops, fortify and pasteurize.
785	(ws): Same.
786	
7871999-10-18  Benjamin Kosnik  <bkoz@cygnus.com>
788
789	* bits/istream.tcc (operator>>): Tweak.
790	* bits/std_istream.h: Fix according to library issues list 68.
791	Add typedefs.
792
793	* bits/locale_facets.h: Fix table_size to be non-zero.
794
7951999-10-18  Vadim Egorov  <egorovv@HotPOP.com>
796
797        * src/basic_file.cc: ifdef instead of comment for binary mode
798
7991999-10-18  Russell Davidson  <russell@qed.econ.queensu.ca>
800
801	* bits/std_sstream.h: Stringbuf initialization based on actual,
802	not allocated, size.
803	* testsuite/21_strings/inserters_extractors.cc (test06): Add test
804	case.
805	
8061999-10-17  Benjamin Kosnik  <bkoz@cygnus.com>
807
808	* testsuite/26_numerics/c_math.cc (test03): Tweak.
809	* testsuite/27_io/istream_manip.cc (test01): Corrections due to
810	sentry change.
811	* testsuite/21_strings/inserters_extractors.cc (test01): Same.
812
8131999-10-14  Benjamin Kosnik  <bkoz@cygnus.com>
814
815	* bits/std_istream.h: Tweaks.
816	* bits/istream.tcc (istream::sentry::sentry()): Simplify, correct
817	as per issues list addition--set failbit, eof on empty buffers.
818	* testsuite/27_io/istream_sentry.cc: New file.
819	
8201999-10-12  Chris Prince <prince@wcug.wwu.edu> 
821
822	* bits/std_cstdio.h: Remove Solaris hacks.
823
8241999-10-12  Phil Edwards  <philip.edwards@sn.wpafb.af.mil>
825
826        * docs/index.html:  Fix minor typos and tweaks.
827        * docs/17_intro/contribute.html:  Ditto.
828        * docs/*/howto.html:  Ditto.  More "EGCS"->"GCC" conversion, notes on
829        thread safety and binary I/O, links to external sites.
830        * docs/faq/index.html: EGCS/GCC cleanup, new entries for Cygwin
831 	and MT.
832
8331999-10-12  Petter Urkedal  <petter@matfys.lth.se>
834
835        * bits/std_cmath.h (abs(float)): When ::absf is not present, call
836        ::fabs(double) rather than ::abs(int).
837
8381999-10-11  Benjamin Kosnik  <bkoz@milou.cygnus.com>
839
840	* bits/std_streambuf.h: Fix minor blip--should explicitly return
841	*gptr(), not the result of underflow.
842	(pbackfail): Conform to default behavior.
843	(overflow): Same.
844	* bits/streambuf.tcc: Add out-of-line streambuf members.
845	(xsputn): Tweak.
846	(xsgetn): Tweak.
847	* testsuite/27_io/streambuf.cc: New file.
848	* testsuite/27_io/filebuf.cc: Correct test.
849
8501999-10-08  Benjamin Kosnik  <bkoz@haight.constant.com>
851
852	* bits/std_cmath.h: Correctly cast int to double.
853	* testsuite/26_numerics/c_math.cc: Add test.
854
855	* mknumeric_limits (OUT_C): Tweaks.
856	* src/gen-num-limits.cc: Checks for WCHAR_MIN, WCHAR_MAX before
857	trying to instantiate type_traits<wchar_t>.
858	* acconfig.h: Add _GLIBCPP_HAS_WCHAR_MIN_MAX.
859	* configure.in (LIBS): Plus checks for WCHAR_MIN, WCHAR_MAX.
860	* configure: Regenerate.
861	
8621999-10-06  Benjamin Kosnik  <bkoz@milou.cygnus.com>
863
864	* bits/streambuf.tcc (streambuf::xsgetn): Rewrite.
865	(streambuf::xsputn): Put in break.
866	Aiming for parity between these two (mostly) similar functions.
867	Need to re-write tests.
868	
869	* bits/ios_base.h (ios_base::_M_copy_base): Remove declaration.
870	Make data members protected, not private.
871	* src/ios.cc (ios_base::_M_copy_base): Move _Callback_list into
872	ios_base.h. As called only once, collapse into . . .
873	* bits/basic_ios.h (basic_ios::copyfmt): Fix.
874	(basic_ios::clear): Throw ios_base::failure on occasion.
875	(basic_ios::exceptions): Fix.
876	* testsuite/27_io/ios_members.cc (test02): Add tests.
877	
878	* bits/fpos.h: Default initialize.
879	* testsuite/27_io/fpos.cc (test03): Add test.
880
8811999-10-04  Russell Davidson <russell@qed.econ.queensu.ca> 
882
883	* src/basic_file.cc: Fix open modes.
884	
8851999-10-04  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
886
887	* bits/locale_facets.tcc (num_get<>::do_get): Fix typo.
888
8891999-09-23  Benjamin Kosnik  <bkoz@milou.cygnus.com>
890
891	* bits/streambuf.tcc: Yea. Fix this for real.
892	* testsuite/27_io/ostream_inserter_other.cc: Add file.
893	* src/Makefile.*: Regenerate.
894
8951999-09-22  Benjamin Kosnik  <bkoz@milou.cygnus.com>
896
897	* bits/std_cstdlib.h: Add more linux-specif hacks to the header
898	files so that stdtof and strtold will be declared. Some hacks
899	already exits in bits/std_cctype.h -- these should all be removed
900	at a later date.
901	* bits/locale_facets.tcc: Add cstring.h include.
902	_S_format_long: Use long, not int.
903	Add std_limits.h include, for numeric_limits.
904	* testsuite/27_io/istream.cc: Make instantiations work when using
905	-fhonor-std.  
906	* testsuite/27_io/ostream.cc: Same.
907	
9081999-09-21  Benjamin Kosnik  <bkoz@milou.cygnus.com>
909
910	* bits/fpos.h (fpos::operator streamoff): Make const, don't return
911	a reference. Same for operators == and !=.
912	* testsuite/27_io/fpos.cc: Add tests.
913
9141999-09-21  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
915
916	* bits/valarray_array.h: Fix typo.
917
918	* mknumeric_limits: Make sure we are regenerating things from
919	scratch.  Otherwise things get redefined.  Not good.
920
9211999-09-20  Benjamin Kosnik  <bkoz@milou.cygnus.com>
922
923	* bits/std_ostream.h: Fix typo.
924	* bits/std_istream.h: Same.
925	* bits/std_iomanip.h: Same.
926
927	* bits/istream.tcc (sentry::sentry()): Remove optional tie with
928	ostream, as happens with underflow anyway.
929	* testsuite/27_io/istream.cc (main): New file.
930	* testsuite/27_io/ostream.cc (main): New file.
931	* testsuite/27_io/istream_unformatted.cc: Add tests.
932
933	* src/Makefile.am (headers): Add new file.
934	* src/Makefile.in (headers): Regenerated.
935
936	* bits/basic_ios.h: Remove local-related files.
937	* bits/basic_ios.tcc: New file, add locale-related items.
938	* src/misc-inst.cc: Add include of basic_ios.tcc, as a hack for now.
939	* testsuite/27_io/ios_members_static.cc: Change to
940	* testsuite/27_io/ios_base_members_static.cc: This.
941	* testsuite/27_io/ios_members.cc: New file.
942	* testsuite/27_io/stdios_basefield_manip: Change to
943	* testsuite/27_io/ios_manip_basefield.cc: This.
944	* testsuite/27_io/stdios_fmtflags_manip: Change to
945	* testsuite/27_io/ios_manip_fmtflags.cc: This.
946	
947	* bits/fpos.h: Fix discarding qualifiers on this when
948	using _M_position with a const fpos.
949	* bits/std_iosfwd.h: Tweak.
950	* testsuite/27_io/fpos.cc: New file.
951
9521999-09-17  Benjamin Kosnik  <bkoz@milou.cygnus.com>
953
954	* bits/streambuf.tcc (streambuf::xsputn): Tweak.
955	* bits/ostream.tcc: Tweak.
956	* testsuite/21_strings/inserters_extractors.cc (test04, test05):
957 	Add new regressions.
958	
9591999-09-16  Benjamin Kosnik  <bkoz@milou.cygnus.com>
960
961	* bits/basic_ios.h: Inline, tweak.
962	* bits/fstream.tcc (basic_filebuf::_M_really_overflow): Tweak,
963 	pass back accurate return value to basic_filebuf::overflow.
964	* bits/streambuf.tcc (streambuf::xsputn): Fix overflow accounting.
965  	This fixes sstream problems reported in libstdc++/9, but screws up
966 	filebufs. That solution is pending.
967
9681999-09-15  Vadim Egorov  <egorovv@1c.ru>
969
970        * bits/streambuf.tcc (basic_streambuf::xsputn): Add check for 
971	zero count puts.
972	* testsuite/21_strings/inserters_extractors.cc (test01): Add test.
973	
9741999-09-08  Benjamin Kosnik  <bkoz@milou.cygnus.com>
975
976	* bits/c++config.h.in: Add emacs hints.
977
978	* stl/bits/stl_range_errors.h: Don't define here, for now define
979	in stdexcept.cc along with string inlines __length_error, etc.
980	* src/stdexcept.cc: Define here.
981	* stl/bits/stl_config.h (__STL_CAN_THROW_RANGE_ERRORS): Enable, so
982	at(size_t) will be declared/defined.
983	(__STL_THREADS): Fix mess surrounding use of this, enable.
984
9851999-08-31  Benjamin Kosnik  <bkoz@milou.cygnus.com>
986
987	* testsuite/27_io/istream_extractor_arith.cc: Fix.
988	* src/localename.cc: Tweak formatting, fix assignment to
989	const compiler errors.
990
9911999-08-25  Benjamin Kosnik  <bkoz@cygnus.com>
992
993	* acconfig.h: Add absf, cosf.
994	* configure.in (use_builtin_sinf): Same.
995	* configure: Regenerate.
996	* bits/std_cmath.h: Add mess of defines.
997	* testsuite/26_numerics/modf_float.cc: Change to
998	* testsuite/26_numerics/c_math.cc: This.
999	
1000	* src/locale.cc: Change.
1001	* bits/locale_facets.h: Fix.
1002	* testsuite/22_locale/ctype.cc: Add temporary tests.
1003	
10041999-08-24  Benjamin Kosnik  <bkoz@cygnus.com>
1005
1006	* bits/fpos.h: Test.
1007
1008	* docs/index.html: Add powerpc-linux-gnu results with gcc-2.95.1.
1009	Fix database name for "libstdc++".
1010
10111999-08-23  Benjamin Kosnik  <bkoz@cygnus.com>
1012
1013	* mknumeric_limits (numeric_limits): Add default definitions to
1014	member functions.
1015	* testsuite/18_support/numeric_limits.cc: New file.
1016
10171999-08-18  Benjamin Kosnik  <bkoz@cygnus.com>
1018
1019	* bits/std_istream.h: Correct initialization.
1020	* bits/std_ostream.h: Likewise.
1021	* bits/std_sstream.h: Likewise.
1022	* bits/std_fstream.h: Likewise. 
1023	* testsuite/27_io/stringstream.cc: Add test case.
1024	
1025	* bits/std_sstream.h: Replace ____string_type with __string_type.
1026	* bits/basic_ios.h (basic_ios::rdbuf(sb*): Call clear(), as required.
1027	* bits/std_ostream.h: Tweak dtor.
1028
10291999-08-17  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
1030
1031	* src/Makefile.am (CXXFLAGS): Add -O2.
1032	* src/Makefile.in: Likewise.
1033	
1034	* src/gen-num-limits.cc: Conditionally allow wchar_t. See what
1035	this breaks. . .
1036	* mknumeric_limits (numeric_limits): Uglify.
1037
1038	* bits/std_istream.h: Fix warnings.
1039	* bits/locale_facets.tcc: Collateral damage from
1040	char_traits<char>::int_type change.
1041
1042	* testsuite/27_io/istream_extractor_char.cc: Terminate strings.
1043
10441999-08-17  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
1045
1046	* docs/index.html: Add mailing list form.
1047	* docs/27_io/howto.html: Add link to iostreams_hierarchy.pdf.
1048
10491999-08-16  Benjamin Kosnik  <bkoz@cygnus.com>
1050
1051	* bits/streambuf.tcc (streambuf::xsputn): Allow copies to continue
1052	if overflow successfully allocates more space.
1053	* bits/std_sstream.h: Adjust comments.
1054	* bits/sstream.tcc (stringbuf::overflow): Copy buffer into string
1055	before overflow forces a resize.
1056	* testsuite/27_io/ostream_inserter_char.cc: New file.
1057	
1058	* bits/std_fstream.h: Remove declaration.
1059	* bits/fstream.tcc: Move uflow.
1060	* bits/std_streambuf.h: To here.
1061	* bits/streambuf.tcc: Make consistent.
1062	
1063	* src/Makefile.am (WERROR): Enable.
1064	* src/Makefile.in: Regenerate.
1065	* bits/sbuf_iter.h: Tweak.
1066	* bits/char_traits.h: (char_traits<wchar_t>::eof): Use WEOF.
1067	Use unsigned int as char_traits<char>::int_type.
1068
1069	* bits/ostream.tcc (ostream::putc(char)): Tweak.
1070	* testsuite/27_io/iostream_objects.cc: Terminate string.
1071	Move cin::operator>>(char*) test to extractor_char.cc.
1072	* testsuite/27_io/stringstream.cc: Add stringstream instantiation.
1073	* bits/std_istream.h (basic_iostream): Make explicit definition
1074	for default ctor.
1075	* bits/std_sstream.h: Fix typos.
1076	* bits/fstream.tcc (_M_init_filebuf): Set to indeterminate for
1077	basic_filebuf ctor with fileno open arguments. Thus, filebufs are
1078	initialized in a consistent manner, no matter if the underlying
1079	FILE/bit bucket is a tty or a text file or some other imaginary
1080	construct. This and setting _M_buf_size to 1 for cin allows
1081	istream::get(char) to work in a manner consistent with what others
1082	expect.
1083
1084	* docs/index.html: Link Stroustrup's C++ page.
1085	
10861999-08-12  Michael Cook  <cook@sightpath.com>
1087
1088	* bits/fstream.tcc: Fix signed/unsigned -Wall warning.
1089	* bits/istream.tcc: ditto.
1090	* bits/sbuf_iter.h: ditto.
1091	* bits/std_istream.h: ditto.
1092	* src/Makefile.am: Add -Wall to CXXFLAGS.
1093	* src/Makefile.in: ditto.
1094
10951999-08-12  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
1096	    Russell Davidson <russell@ehess.cnrs-mrs.fr> 
1097
1098	* bits/locale_facets.tcc (_M_extract): Finish off patch from yesterday.
1099	* src/Makefile.am (myinstallheaders): Tweak, remove PHONY.
1100	
11011999-08-11  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
1102
1103	* testsuite/27_io/istream_unformatted.cc: New file.
1104
1105	* testsuite/27_io/istream_extractor_arith.cc (test02): Add more
1106	elaborate tests for int types with noskipws.
1107
1108	* testsuite/27_io/istream_extractor_other-1.txt: New file.
1109	* testsuite/27_io/istream_extractor_other-1.tst: New file.
1110	* testsuite/27_io/istream_extractor_other-2.tst: New file.	
1111	* testsuite/27_io/istream_extractor_other.cc: Add tests.
1112	* bits/istream.tcc: Fix operator>>(streambuf*).
1113
1114	* testsuite/23_containers/vector_ctor.cc (test01): Add.
1115
1116	* docs/index.html: Remove references to egcs.
1117	* docs/17_intro/DESIGN: Same.
1118	* docs/17_intro/contribute.html: Same.
1119	* docs/17_intro/RELEASE-NOTES: Ditto.
1120	* docs/17_intro/howto.html: Same here.
1121
1122	Russell Davidson <russell@ehess.cnrs-mrs.fr>
1123	* stl/bits/stl_vector.h (_M_insert_aux): 
1124	* bits/locale_facets.tcc (_M_extract): Tweaks for preliminary
1125	decimal/floating point support.
1126	* bits/locale_facets.h: Change _M_extract prototype.
1127	* bits/char_traits.h (char_traits::to_int_type): Cast to unsigned.
1128	* bits/std_istream.h (istream::read(char_type, streamsize)): Fix.
1129	
11301999-08-10  Michael Cook  <cook@sightpath.com>
1131
1132	* bits/fstream.tcc: Fix for unused variable warning (-Wall).
1133	* bits/ios_base.h: ditto.
1134	* bits/istream.tcc: ditto.
1135	* bits/locale_facets.h: ditto.
1136	* bits/locale_facets.tcc: ditto.
1137	* bits/std_streambuf.h: ditto.
1138	* src/basic_file.cc: ditto.
1139	* src/locale.cc: ditto.
1140	* src/localename.cc: ditto.
1141
11421999-08-10  Kirat Singh  <singhki@jany.gs.com> 
1143
1144	* bits/std_iomanip.h: Inline.
1145	
11461999-08-10  Alfred Minarik <a8601248@unet.univie.ac.at>
1147	
1148	* bits/std_streambuf.h: Correct member initialization order.
1149	* src/ios.cc: Add definitions for ios_base data members.
1150	
11511999-08-06  Phil Edwards  <pedwards@ball.com>
1152	
1153	* docs/index.html:  Seventh snapshot updates.  Minor tweaks.
1154	* docs/faq/index.html: Ditto.  Removed bugs sections that have
1155	been fixed for a long time...  Lots of "egcs" references still
1156	exist.
1157	* docs/faq/index.txt:  Regenerated.
1158
11591999-08-05  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
1160	    Andreas Amann <amann@physik.tu-berlin.de>
1161
1162	* testsuite/26_numerics/binary_closure.cc (main): new test.
1163
11641999-07-29  Andreas Amann <amann@physik.tu-berlin.de>
1165
1166	* bits/valarray_meta.h: (_BinClos<>::_Binclos): fix typo causing
1167	segmentation fault.
1168
11691999-08-04  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
1170
1171	* docs/index.html (host): Put in testing status.
1172
11731999-08-03  Benjamin Kosnik  <bkoz@cygnus.com>
1174
1175	* docs/index.html: Update for libstdc++-2.90.6 release.
1176	* docs/17_intro/RELEASE-NOTES (New): Update.
1177	* docs/17_intro/BUGS: Update.
1178	* bits/c++config.h.in (__GLIBCPP__): Bump version number.
1179	* README (file): Update.
1180
11811999-08-03  Benjamin Kosnik  <bkoz@cygnus.com>
1182
1183	* src/Makefile.am (generated_headers): Remove bits/c++config.h as
1184	a target.
1185	($(generated_headers)): Same.
1186	* src/gen-c++config.cc: Remove, rename to
1187	* bits/c++config.h.in: New file. Bump version number.
1188	* configure.in: Generate bits/c++config.h at configure time. 
1189	* math/mathconf.h: include bits/c++config.h, not config.h.
1190	
1191	* bits/std_cmath.h: Fix remaining link error for solaris shared
1192	builds.  _GLIBCPP_HAS_BUILTIN_SINF has to be disabled for the time
1193	being, as on Solaris this silently calls sinf, which does not
1194	exist.
1195	
1196	* src/complex.cc: More tweaks.
1197
11981999-08-03  Benjamin Kosnik  <bkoz@cygnus.com>
1199
1200	* src/complex.cc: Same.
1201	* math/complex-stub.h: Change.
1202	* math/c_log10*.c: Change back to clog10*.c.
1203
1204	* configure.in (NEED_C_LOG10): Delete.
1205	* configure: Regenerate.
1206	* math/Makefile.am: Change.
1207	
12081999-07-30  Benjamin Kosnik  <bkoz@cygnus.com>
1209
1210	* math/Makefile.am: Fix, for real.
1211	* configure.in (use_builtin_sinf): Ok, make autoconf solution.
1212	* math/clog.c: Move to c_log.c.
1213	* math/clog*: Ditto.
1214	* math/c_log10l.c (c_log10l): Change function name.
1215	* math/c_log10f.c (c_log10f): Change function name.
1216	* math/c_log10.c (c_log10): Change function name.
1217	
1218	* math/complex-stub.h: Change to c_log* variants.
1219	* src/complex.cc: And here. 
1220	
12211999-07-29  Benjamin Kosnik  <bkoz@cygnus.com>
1222
1223	* testsuite/27_io/istream_extractor_other.cc: Correct last test.
1224	* bits/sstream.tcc (stringbuf::overflow): Don't update the input
1225	sequence, just the output sequence.
1226	* bits/std_sstream.h (stringbuf::str()): Only in stringbufs return
1227	the original string, all others use complicated heuristic.
1228
1229	* src/complex.cc: Assume c_log10.
1230	* math/Makefile.am (EXTRA_yes): Fix c_log/c_logf unresolved
1231	symbols in shared libraries by making c_log/c_log10 part of the
1232	"must cmpile" sources. This may not work on solaris, must check.
1233
12341999-07-29  Benjamin Kosnik <bkoz@cygnus.com>
1235
1236	* bits/istream.tcc (operator>>(streambuf*)): Re-do.
1237	* bits/std_istream.h: Fix char extractors.
1238	* testsuite/27_io/istream_extractor_char.cc: Change.
1239	* testsuite/27_io/istream_extractor_other.cc: Add tests.
1240	
12411999-07-28  Benjamin Kosnik <bkoz@cygnus.com>
1242
1243	* bits/std_cctype.h: Fix for solaris2.6 builds. 
1244
1245	* bits/istream.tcc: Fix, thanks Alfred.
1246	* bits/std_istream.h: Formatting changes.
1247
1248	* libio/Makefile.am (libio_la_SOURCES): Remove cleanup.c, so that
1249	_IO_cleanup will not be undefined.
1250	* libio/*: Regenerate.
1251	
1252	* bits/basic_string.h: More namespace-safety stuff.
1253	* testsuite/27_io/istream_extractor_char.cc: Fix.
1254	* testsuite/27_io/istream_extractor_arith.cc: Fix.
1255	* testsuite/27_io/iostream_objects.cc: Fix.
1256	* testsuite/27_io/ios_ctor.cc: Fix.
1257	* testsuite/27_io/istream_manip.cc: Make namespace safe.
1258	* testsuite/27_io/istream_extractor_other.cc: New file.
1259
1260	* mkcheck (TESTS_FILE): Tweaks.
1261
12621999-07-27  Benjamin Kosnik  <bkoz@cygnus.com>
1263
1264	* src/gen-c++config.cc: Note here, change version.
1265	* acconfig.h( _GLIBCPP_USE_CTYPE_ISBIT): New macro.
1266	* src/locale.cc: Used here.
1267	* configure.in (use_builtin_sinf): Check for _ISBit using autoconf.
1268
1269	* aclocal.m4: Regenerate by running `aclocal -I m4.`
1270	
1271	* bits/istream.tcc: Fix.
1272	* bits/std_istream.h: More changes to extractors.
1273
1274	* testsuite/27_io/istream_extractor_char.cc: More.
1275	* testsuite/21_strings/inserters_extractors.cc (test01): Fix logic
1276	error in testsuite construction.
1277
1278	* bits/std_istream.h: Partially revert.
1279	* bits/std_ostream.h: Same.
1280	* bits/std_sstream.h: Revert. 
1281
12821999-07-26  Benjamin Kosnik  <bkoz@cygnus.com>
1283
1284	* bits/std_sstream.h: Change initialization.
1285	* bits/std_ostream.h: Make default ctor/assign/operator= private.
1286	* bits/std_istream.h: Same, also correct sentry args.
1287	* bits/istream.tcc: Add correct sentry args.
1288	
1289	* testsuite/27_io/istream_extractor_char.cc: New file.
1290	* testsuite/27_io/istream_extractor_arith.cc: New file, old file,
1291	name changes making me dizzy.
1292
12931999-07-26  Ulrich Drepper  <drepper@happy.cygnus.com>
1294            Benjamin Kosnik  <bkoz@cygnus.com>
1295
1296	* aclocal.m4, config.guess, config.sub, ltconfig ltmain.sh: Update
1297	to libtool 1.3.3.
1298
12991999-07-26 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
1300
1301	* bits/std_complex.h: Tweak. Make the primary template class
1302	complex work with user-defined numerical types.  Provide member
1303	definitions.  Restructure.
1304	(class complex<float>): Uglify.  Remove  __value().  Rename __val
1305	to _M_value.  Rename __complex_value_type to _ComplexT. Make it
1306	private.  Remove dependency on __value().  Fix various explicit
1307	specialization syntax.  Declare a some functions friend.  Now the
1308	implementation is nearly comforming.
1309	(class complex<double>): Likewise.
1310	(class complex<long double>): Likewise.
1311
1312	* src/complex.cc: Tweak.  Remove dependency on complex::__value().
1313	(sin, sinh, tan, than): Fix call to corresponding C9x function
1314	syntax. 
1315
13161999-07-24  Benjamin Kosnik  <bkoz@fidel.cygnus.com>
1317
1318	* bits/istream.tcc (ws): Fix error with failbit being set.
1319
1320	Disabled due to egcs/gcc-2_95 internal compiler errors.
1321	* src/Makefile.am (CXXFLAGS): Add -fsquangle -fhonor-std
1322	-fnew-exceptions. Compiling with namespaces enabled will now be
1323	the default.
1324	* mkcheck (CXX_FLAG): Same.
1325	* src/gen-c++config.cc (_GLIBCPP_USE_NAMESPACES): Yup. New macro.
1326	* bits/std_cctype.h: Not enough to just define in namespace std if
1327	ctype-isms are macros. Need to also define in namespace std:: if
1328	the C functions are just plain functions.
1329
1330	* src/gen-num-limits.cc: Fix spelling inconsistencies.
1331	
13321999-07-24  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
1333
1334	* docs/18_support/howto.html: Start documentation.  Need to keep
1335	track of the ongoing discussion in th LWG reflector.
1336
1337	* src/gen-num-limits.cc: Tweak.
1338	(class predicate): New class.
1339	(class value): Likewise.
1340	Make the whole machinery more flexible. Add comments.
1341
13421999-07-23  Benjamin Kosnik  <bkoz@fidel.cygnus.com>
1343
1344	* bits/ios_base.h: Move state/exception functions into basic_ios. 
1345	* bits/basic_ios.h: Same.
1346	* src/ios.cc: And here. Callbacks don't attempt to reset
1347	state now.  
1348
1349	* bits/std_streambuf.h: Separate ios and streambuf locale data
1350	members and cached facets. Using this convention: _M_locale_buf for
1351	the streambuf-related classes, and _M_locale_ios for the ios
1352	hierarchy.
1353	* bits/fstream.tcc: And here.
1354	* bits/basic_ios.h: And here. Also, add cached ctype.
1355	* src/ios.cc: Ditto.
1356	* bits/ios_base.h: Ditto.
1357	* bits/std_istream.h: Use cached ctype facet.
1358	* docs/27_io/iostreams_hierarchy.pdf: Update for new data member
1359	arraignment.
1360
1361	* testsuite/27_io/ios_ctor.cc: New file.
1362	* src/ios.cc: Move _M_state init to basic_ios::init().
1363	* bits/basic_ios.h: To here.
1364	
1365	Attempt for some consistency in naming for testsuite/27_io/*.cc.
1366	* testsuite/27_io/boolfmt.cc: Rename to stdios_fmtflags_manip.cc
1367	* testsuite/27_io/octfmt.cc: Rename to stdios_basefield_manip.cc
1368	* testsuite/27_io/istream_manip.cc: Rename to istringstream_manip.cc.
1369	* testsuite/27_io/ostream_manip.cc: Rename to ostringstream_manip.cc.
1370	
13711999-07-22  Benjamin Kosnik  <bkoz@fidel.cygnus.com>
1372	
1373	* src/ios.cc: Tweak initializations of standard iostream
1374	objects to closely match the standard. Tie cin/wcin, set flags on
1375	cerr/wcerr
1376	* bits/char_traits.h: Change from size_t to int_type, as per
1377	standard. As per wide streams.
1378	* bits/basic_ios.h: Infect with __ctype_type, as a preparation
1379	for caching a bunch of ctype info. For instance, ctype_base::space
1380	info needs to be stored somewhere, somehow.
1381	* bits/std_istream.h: Also here.
1382	* bits/std_ostream.h: Ditto.
1383	* bits/std_istream.h (operator>>(istream, char): Aggh. Fixup.
1384	* testsuite/27_io/iostream_objects.cacc (test01): Oh yeah. Fix
1385	stream states.
1386
1387	* bits/istream.tcc (ws): Fix.
1388	* testsuite/27_io/istream_manip.cc: New file, test ws.
1389	* testsuite/27_io/ostream_manip.cc: New file, test endl, ends, flush.
1390
1391 	* bits/basic_string.h: Provide a specialized member function for
1392	_S_find<char> using strchr.
1393	* src/string-inst.cc: Put specializations here.
1394	* bits/string.tcc: Small fix for find, remove typo.
1395	* testsuite/21_strings/find.cc (test01): Add tests to catch this
1396	find bug. . .
1397
13981999-07-20  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>	
1399
1400	* bits/basic_ios.h: Put into basic_ios namespace.
1401	Tweak widen/narrow.
1402
14031999-07-19  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>	
1404
1405	* bits/std_sstream.h (stringbuf::sync): Change to _M_really_sync,
1406 	adjust _M_*_cur pointers inside the function, so callee doesn't
1407 	have to adjust.
1408	* bits/sstream.tcc (stringbuf::overflow): Tweak.
1409
1410	* mkcheck: Tweak. Add execution time field, even though it is not
1411 	implemented yet. Simplify pass/fail status notation.
1412
14131999-07-18  Mumit Khan  <khan@xraylith.wisc.edu>
1414
1415        * configure.in: Check for float.h and underscored version of 
1416        math functions.
1417        * acconfig.h: Add @BOTTOM@ section for handling underscored
1418        math functions.
1419        * configure: Regenerate.
1420        * config.h.in: Regenerate. 
1421        * math/mathconf.h (float.h): Include conditionally.
1422        (M_PI): Define conditionally.
1423        (INFINITE_P): Define for Mingw.
1424        * bits/locale_facets.tcc: Workaround for compiler crash on
1425        ix86-*-mingw32.
1426        * bits/std_cwchar.h (bits/std_cstddef.h): Include.
1427        * src/locale.cc (bits/std_istream.h): Include.
1428        (bits/std_ostream.h): Likewise.
1429
14301999-07-18  Phil Edwards  <pedwards@ball.com>
1431
1432	* docs/faq/index.html:  Updated __black_count notes, fixed typos.
1433	* docs/faq/index.txt:  Regenerated.
1434
14351999-07-15  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
1436
1437	* testsuite/27_io/stringbuf.cc: Cccchanges, latent bugs.
1438
1439	* bits/sstream.tcc (stringbuf::overflow): Modify accounting of
1440 	newly-allocated buffer.
1441	* bits/streambuf.tcc (streambuf::xsgetn): Aaaaaah. Fix final
1442 	overflow condition bits.
1443
14441999-07-14  Benjamin Kosnik  <bkoz@cygnus.com>
1445
1446	* bits/std_sstream.h (stringbuf::_M_init_stringbuf): Set
1447	_M_buf_size to initial _M_string.size(), even though for
1448	ostringstreams it is pretty pointless. It's necessary for
1449	istringstreams.
1450	(stringbuf::str()): Adjust. 
1451	(stringbuf::str()): Adjust, call _M_init_stringbuf.
1452	* bits/streambuf.tcc (streambuf::xsgetn): Adjust return value for
1453	overflow's possible success.
1454	(streambuf::xsputn): Adjust.
1455	
1456	* testsuite/27_io/filebuf.cc: Adjust for the xsgetn re-write from
1457	yesterday.
1458	* testsuite/27_io/stringbuf.cc: Tweak.
1459	* testsuite/21_strings/inserters_extractors.cc (test01): Remove
1460	notes to myself.
1461	* testsuite/23_containers/vector_cons.cc: Rename to be consistent
1462	with other constructor tests to. . .
1463	* testsuite/23_containers/vector_ctor.cc: New file.
1464	
14651999-07-14  Alfred Minarik <a8601248@unet.univie.ac.at>
1466
1467	* testsuite/*: Changes to make the testsuit compilable with
1468	-fhonor-std. Contains direct qualification of library names with
1469	std::.
1470
14711999-07-13  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
1472
1473	* bits/streambuf.tcc: Tweaks.
1474	(streambuf::xsputn): Optimize, fix for sstreams.
1475	(streambuf::xsgetn): Same.
1476	* bits/sstream.tcc (stringbuf::overflow): Adjust _M_buf_size
1477 	correctly, handle overflow/reallocate conditions correctly.
1478	* bits/std_sstream.h: Fix typo.
1479	_M_init_stringbuf(): Fix _M_buf_size initialization.
1480	(stringbuf::str()): Construct return string if output has occurred.
1481
1482	* bits/basic_string.h: Fix typo from yesterday's patch.
1483
14841999-07-12  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
1485
1486        * bits/string.tcc: _M_mutate - clear _M_state again.
1487        * bits/basic_string.h: In the three functions that return
1488	an iterator set _M_state to -1 before return.
1489	Also optimized two cases of operator+.
1490	
14911999-07-12  Phil Edwards  <pedwards@ball.com>
1492
1493        * docs/index.html:  Expand egcs-1.1.2 notes/links.
1494        * docs/faq/index.html:  And here.  Add links to LWG issues-list.
1495        * docs/faq/index.txt:  Regenerate.  (lynx rocks)
1496        * docs/21_strings/howto.html:  Fix notes on case conversion.
1497        * docs/21_strings/stringtok_h.txt:  Goodly spelling...
1498        * docs/23_containers/howto.html:  Stub for bitmasks.
1499	* docs/27_io/howto.html: Add section on buffering, stub binary.
1500	
15011999-07-12  Nathan Myers <ncm@cantrip.org>
1502
1503	* stl/bits/stl_tree.h (__black_count): Optimize.
1504
15051999-07-09  Vadim Egorov  <egorovv@1c.ru>
1506
1507        * src/basic_file.cc: Cleanup in __basic_file destructor.
1508
15091999-07-08  Benjamin Kosnik  <bkoz@cygnus.com>
1510
1511	* bits/std_streambuf.h: Changes. . .
1512	* bits/streambuf.tcc: Merge xsputn from filebuf into xsputn in
1513	basic_streambuf, to be used for both filebufs and streambufs.
1514	* bits/std_fstream.h (_M_init_filebuf): New function.
1515	Take out specialized xsputn, put into basic_streambuf.
1516	* bits/fstream.tcc: Define, call from both ctors.
1517	* bits/std_sstream.h (_M_init_stringbuf): New function.
1518	* bits/sstream.tcc: Tweak.
1519	
1520	* docs/27_io/iostreams_hierarchy.pdf: New file.
1521	
1522	* docs/17_intro/CHECKLIST (basic_string<char>): Validation and
1523	acceptance. Wooo-hoo!
1524
1525	* bits/char_traits.h: Change int_type for char_traits general
1526	template, so that 21_strings/capacity.cc will compile.
1527	* testsuite/21_strings/capacity.cc: Add operators.
1528	
1529	* bits/string.tcc (string::compare): Clean up, re-implement.
1530	* testsuite/21_strings/compare.cc: Tweak.
1531	
1532	* bits/string.tcc (string:_M_mutate): Keep leaked value in
1533	_M_state, which means that whenever begin() or end() has been
1534	called, the string is unshareable, period. By doing this, insert
1535	and erase member functions that return iterators can remain
1536	footloose and fancy free. 
1537	* testsuite/21_strings/invariants.cc: Update.
1538
1539        * bits/basic_string.h (string::append): Fix self-referential
1540	problems, ie when "this" is also an argument to a member function.
1541        * bits/string.tcc: Tweak, same.
1542        * testsuite/21_strings/append.cc: New file.
1543
15441999-07-07  Benjamin Kosnik  <bkoz@cygnus.com>
1545
1546	* bits/char_traits.h: Tweaks.
1547	* bits/basic_string.h: Tweak.
1548	* bits/fstream.tcc: Remove warning for _M_buf_size assignment.
1549
15501999-07-06  Benjamin Kosnik  <bkoz@cygnus.com>
1551
1552	* bits/std_streambuf.h: Absorb/acquire data members previously
1553 	working in basic_filebuf.
1554	* bits/streambuf.tcc: Tweaks.
1555	* bits/fstream.tcc: Adjust.
1556	* bits/std_fstream.h: Move and rename the following functions:
1557 	_M_set_ideterminate, _M_is_indeterminate, _M_set_determinate are
1558 	now declared and defined in the base class, basic_streambuf.  Oh
1559 	fuck it, move data members _M_buf, and _M_buf_size into
1560 	basic_streambuf as well.
1561
1562	* bits/ostream.tcc: Tweak.
1563	* bits/locale_facets.tcc: Fix typo in comments.
1564
1565	* testsuite/21_strings/inserters_extractors.cc (test01): Change
1566 	state from good to not good, as eof() is set.
1567
15681999-07-05  Benjamin Kosnik  <bkoz@cygnus.com>
1569
1570	* bits/char_traits.h (char_traits::compare). Fix.
1571
1572	* config.guess, config.sub: Update.
1573
15741999-07-02  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
1575
1576        * bits/string.tcc: Check the __res_arg for a length error.
1577
15781999-07-01  Benjamin Kosnik  <bkoz@nabi.net>
1579
1580	* bits/std_streambuf.h: Tweaks. Need to move _M_is_indeterminate
1581	and related functions into basic_streambuf, from basic_filebuf to
1582	take care of ostringstreams and empty strings. So that's groovy,
1583	or will be groovy.
1584	* bits/std_istream.h: Tweaks.
1585	* bits/istream.tcc: Implement ws, getline, operator>> for string.
1586	* bits/std_ostream.h: And here.
1587	* bits/ostream.tcc: Same.
1588	* src/misc-inst.cc: Add instantiations for ws.
1589	
1590	* src/string-inst.cc: Add instantiations for inserters and
1591	extractors (operators << and >>, getline).
1592
1593	* testsuite/21_strings/inserters_extractors.cc: Amazingly enough,
1594	a testcase for getline and operators << and >>. Ostream tests are
1595	failing right now, but istream tests should work. . .
1596
1597	* bits/string.tcc: Change _S_max_size, as GNU malloc won't budge.
1598	* bits/std_sstream.h: Revert.
1599
1600	* testsuite/17_intro: header_[iosfwd, ios, iostream, iomanip,
1601	istream, ostream, streambuf, fstream, sstream].cc: New files.
1602	
16031999-06-30  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
1604
1605	* bits/std_sstream.h (stringbuf::sync): Don't use string::begin()
1606	and string::end().
1607	
1608        * bits/basic_string.h (basic_string<>::_S_copy_chars): Add
1609	specializations for _CharT*, iterator and const_iterator.
1610	* src/string-inst.cc: Remove explicit instantiation, as
1611	now explicitly specialized.
1612
1613	* bits/basic_string.h: Add a size_type parameter to _M_clone with
1614	a default value set to 0.
1615        * bits/string.tcc: In _M_clone by the call of _S_create add the
1616	value of the new parameter to _M_length.  In reserve check
1617	_M_state and use _M_clone instead of _M_mutate.
1618
16191999-06-30  Benjamin Kosnik  <bkoz@happy.cygnus.com>	
1620
1621	* bits/basic_string.h: Fix _S_max_size.
1622	* bits/string.tcc: Add def here.
1623	* testsuite/21_strings/insert.cc: Fix.
1624	
1625	* bits/sbuf_iter.h: Remove detritus.
1626	* testsuite/24_iterators/istreambuf_iterator.cc: Add tests.
1627
1628	* src/locale-inst.cc: Elaborate iterator/locale instantiations
1629	to resolve alpha-osf4 build problems.
1630
16311999-06-29  Benjamin Kosnik  <bkoz@happy.cygnus.com>	
1632
1633	* bits/string.tcc: Fix signed/unsigned issues in compares.
1634	* stl/bits/stl_deque.h: And here.
1635	* stl/bits/stl_string_fwd.h: Remove __get_c_string.
1636
16371999-06-29  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
1638 
1639         * bits/string.tcc: New implementation and interface of _M_mutate.
1640           Adapt the change in all functions that call _M_mutate.
1641         * bits/basic_string.h: And here.
1642
16431999-06-29  Benjamin Kosnik  <bkoz@happy.cygnus.com>
1644
1645	* testsuite/21_strings/capacity.cc (test01): Fix.
1646
16471999-06-29  Phil Edwards  <pedwards@ball.com>
1648
1649        * mknumeric_limits:  Exit script if gen-num-limits isn't built.
1650	
16511999-06-29  Andreas Gruenbacher  <agruenba@pent224.infosys.tuwien.ac.at> 
1652
1653	* stl/bits/stl_vector.h: Fix.
1654	* testsuite/23_containers/vector_cons.cc: Add.
1655	
16561999-06-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
1657
1658	* mknumeric_limits (LDFLAGS): fix.
1659
16601999-06-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
1661
1662	* mknumeric_limits (LDFLAGS): set it according to the system.
1663
1664	* math/mathconf.h (NAN): Check whether host is running under
1665	Cygwin and make the appropriate definition.
1666	* math/complex-stub.h (nan): protect declaration.
1667
16681999-06-28  Benjamin Kosnik  <bkoz@haight.constant.com>
1669
1670	* bits/sbuf_iter.h: Rename internal data structure to prevent
1671	confusion between basic_ios and istreambuf_iterators internal
1672	basic_streambuf data member.
1673	* testsuite/24_iterators/istreambuf_iterator.cc: New file.
1674
1675	* bits/basic_string.h: Remove conditionals, add input_iterator
1676	version of S_construct again.
1677	* bits/string.tcc: Same.
1678	* src/string-inst.cc: And add explicit instantiation here.
1679	
1680	* src/gen-c++config.cc (_GNU_SOURCE): Take out both _GNU_SOURCE
1681	and __USE_GNU macro defines, as single __USE_GNU use leading to
1682	confusion on glibc2.1 systems (ie, RedHat 6.0).
1683	
1684	* src/Makefile.am (headers): Add std_utility to installed headers.
1685
16861999-06-25  John Potter  <jpotter@eagle.lhup.edu>
1687
1688	* stl/bits/stl_tree.h (insert_unique): Revert, just fix insert_equal.
1689
16901999-06-25  Gilles Zunino  <Gilles.Zunino@hei.fr>
1691
1692	* mknumeric_limits (LDFLAGS): Swap -lc and -lgcc.
1693
16941999-06-24  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
1695
1696	* src/gen-c++config.cc (_GLIBCPP_*): Change all
1697	macros to include _GLIBCPP as a distinct namespace.
1698	* bits/*: And here.
1699	* src/*: And here.
1700	
1701	* stl/bits/std_stdexcept.h: Forward-declare __Named_exception ctor.
1702	* bits/basic_string.h: Remove __get_c_string.
1703	* src/stdexcept.cc: Define ctor here.
1704	* bits/ios_base.h: And fix ios_base::failure as well.
1705	* src/ios.cc: Define here. 
1706	
1707	* bits/std_streambuf.h: Add a private copy ctor and assignment
1708	operator wrapped in _G_RESOLVE_LIB_DEFECTS.
1709	* bits/ios_base.h: And here too.
1710	
1711	* bits/basic_string.h: Tweak.
1712	* testsuite/21_strings/nonmember.cc: Add operator+ tests.
1713
1714	* src/valarray.cc: Rename to. . .
1715	* src/valarray-inst.cc: This.
1716	* src/Makefile.am (sources): Change here.
1717	* src/Makefile.in: Regenerated.
1718	
17191999-06-24  Vadim Egorov  <egorovv@1c.ru>
1720
1721        * bits/string.tcc(basic_string<>::_Rep::_S_create): Fixed
1722        allocated size
1723
17241999-06-24  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
1725            Tom Tromey  <tromey@cygnus.com>
1726	
1727	* configure.in (use_glibc2): Eek, correct for non-glibc systems.
1728	Use AM_CONDITIONAL to get us out of this jam. . 
1729	* libio/Makefile.am: Same.
1730	* */Makefile: Regenerated.
1731
17321999-06-24  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
1733            John Potter  <jpotter@eagle.lhup.edu>
1734
1735	* stl/bits/stl_tree.h (insert_equal): Fix.
1736	* testsuite/23_containers/multiset.cc: New file.
1737	
17381999-06-23  Benjamin Kosnik  <bkoz@cygnus.com>
1739
1740	* configure.in (test for glibc2): Correct AC_TRY_COMPILE so that
1741	this works correctly on glibc-2 systems. This should allow
1742	simplified linking on these systems, and successful linking on Red
1743	Hat 6.0 systems.
1744	* configure, Makefile: Regenerate.
1745	
1746	* bits/std_cwctype.h: Add missing 'w' to _S_iswpunct_helper name. 
1747	
1748	* testsuite/ext: New directory.
1749	* testsuite/ext/headers.cc: New file.
1750
17511999-06-23  Vadim Egorov  <egorovv@1c.ru>
1752
1753        * stl/ext/hash_set: include missing headers
1754        * stl/ext/hash_map: Same
1755        * stl/ext/slist: Same
1756
17571999-06-17  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
1758
1759	* bits/std_cmath.h: comment out modf. Kills build on hpux10.20
1760
17611999-06-15  Benjamin Kosnik  <bkoz@cygnus.com>
1762
1763	* src/Makefile.am (sources): Regenerate.
1764	* mkcheck: Add TESTS_FILE as a way of controlling what testcases
1765	are run.
1766
17671999-06-14  Benjamin Kosnik  <bkoz@cygnus.com>
1768
1769	* src/string-inst.cc: Change _S_construct signature, to
1770	track requested allocation size versus valid input iterator range.
1771	* bits/basic_string.h: Here too.
1772	* bits/string.tcc: And here.
1773
17741999-06-12  Benjamin Kosnik  <bkoz@cygnus.com>
1775
1776	* mkcheck (LOG_FILE): Correctly append errors. 
1777
1778	* stl/bits/stl_iterator.h: Revert previous, delirious, change.
1779
1780	* bits/basic_string.h: Change _Rep::_M_data to _Rep::_M_refdata,
1781	to clarify differences between basic_string::_M_data() calls and
1782	_Rep::_M_data() calls.
1783	* bits/std_string.h: Fix.
1784	Put in check for out_of_range in substr.
1785	* bits/string.tcc:  Fix for _S_find.
1786
1787	* testsuite/21_strings/compare.cc: Add tests.
1788	* testsuite/21_strings/find.cc: New file.
1789	* testsuite/21_strings/substr: New file.
1790	* testsuite/21_strings/replace.cc: New file.
1791	
17921999-06-11  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
1793
1794	* bits/valarray_array.h: __restrict__ify pointers.
1795
1796	* bits/std_valarray.h: Tweak.
1797	(valarray<T>::cshift, valarray<T>::shift): use __builtin_alloca.
1798
1799	* bits/gslice_array.h: Tweak. Reflect changes in bits/gslice.h
1800
1801	* bits/gslice.h: Tweak.
1802	(class gslice::_Indexer): new class.
1803	(gslice::gslice(const gslice&)): implement copy-ctor to support
1804	ref-counted index. 
1805	(gslice::operator=(const gslice&)): support ref-counted index.
1806	(gslice::_M_convert_to_index): delete.
1807
1808	* src/valarray.cc: New file.
1809	(__gslice_to_index): turn a gslice into a valarray<size_t>
1810	(ctor gslice::_Indexer::_Indexer): implement.
1811
1812	* src/Makefile.am (sources): add valarray.cc
1813	* src/Makefile.in: regenerate.
1814
18151999-06-08  Benjamin Kosnik  <bkoz@cygnus.com>
1816
1817	* stl/bits/stl_iterator.h (__normal_iterator::const_iterator
1818	ctor): Put in a const_cast.
1819
1820	* testsuite/21_strings/invariants.cc: New file.
1821
1822	* testsuite/21_strings/insert.cc: Add exception handling bits.
1823	* testsuite/21_strings/ctor_copy_dtor.cc: Same.
1824
1825	* src/wstring-inst.cc: Add c++config.h include.
1826
1827	* bits/basic_string.h: Fix const operator[] for size == pos.
1828	Add _M_leak for rbegin, non-const.
1829	Add _M_leak for rend, non-const.
1830	Make member function at standards conformant.
1831	Add _S_terminal to _Rep for operator[] const, add this into
1832	c_str() as well.
1833	* bits/string.tcc: Add static member definition here,
1834	temporarily.
1835	
1836	* testsuite/21_strings/element_access.cc: Add tests.
1837
18381999-06-08  Vadim Egorov  <egorovv@1c.ru>
1839
1840         * bits/fstream.tcc (_M_really_overflow): Fixed size of
1841         conversion buffer.
1842
18431999-06-08  Phil Edwards  <pedwards@ball.com>
1844
1845        * bits/fstream.tcc (basic_filebuf::xsputn):  Fix off-by-one count
1846          caused when __testinit is true.
1847        * bits/ostream.tcc (basic_ostream::op<<(streambuf*)):  Write buffer
1848          using rdbuf()->sputn rather than _M_fnumput->put.
1849
18501999-06-08  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
1851
1852	* testsuite/23_containers/bitset_ctor.cc: New file.
1853	* stl/bits/std_bitset.h (__BITSET_WORDS): Fix integration bug.
1854
18551999-06-08  Phil Edwards  <pedwards@ball.com>
1856
1857        * bits/fstream.tcc (basic_filebuf::underflow):  Fix, rename local vars.
1858
18591999-06-07  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
1860
1861	* testsuite/21_strings/element_access.cc: Finish off these tests.
1862	* testsuite/21_strings/insert.cc (test01): Uncomment.
1863	* testsuite/21_strings/ctor_copy_dtor.cc (test01): Finish off ctors.
1864	* bits/basic_string.h: Tweak, okay, fix for real this time.
1865	* bits/string.tcc: Same.
1866	* bits/char_traits.h: Tweak.
1867
18681999-06-07  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
1869
1870	* bits/std_cmath.h: Example of how to use the generated macro.
1871	* acconfig.h: Add macro for sinf here.
1872	* configure.in (LIBS): Add test for builtin math function sinf.
1873	* configure: Regenerated.
1874	
1875	* bits/basic_string.h: Fix _S_max_size.
1876
18771999-06-06  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
1878
1879	* bits/basic_string.h: Fixes for out-of-memory segv for large strings.
1880	Remove _S_construct signature for forward_iterator_tag and
1881	input_iterator_tag.
1882	Clean _M_fold.
1883	* src/string-inst.cc: Same, tweaks. 
1884	* bits/string.tcc: Same, tweaks.
1885
1886	* testsuite/21_strings/ctor_copy_dtor.cc: Add/clarify tests.
1887	* mkcheck (LOG_FILE): Fix filebuf-[2,3].tst checks.
1888	* mknumeric_limits (LD_FLAGS): Add -nodefaultlibs -lc -lgcc as per
1889	Gaby.
1890
1891	* src/locale.cc: Final separation for char/wchar_t bits.
1892
18931999-06-05  Phil Edwards  <pedwards@ball.com>
1894
1895        * docs/index.html:  Added link to book upon request'n'agreement.
1896        * docs/23_containers/wrappers_h.txt:  Added.
1897        * docs/{23_containers,27_io}/howto.html:  Added sections.
1898
1899	* bits/std_fstream.h: Tweak.
1900	
19011999-06-05  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
1902
1903	* src/ios.cc: Same here.
1904	* bits/std_iosfwd.h: More wchar_t defines.
1905
1906	* bits/basic_string.h: Tweaks. 
1907	* bits/string.tcc: Tweak. Fix _S_construct to check for max_size
1908	when doing error checking, as per LWG defect #83.
1909	
1910	* src/gen-c++config.cc: Fix comment.
1911	
1912	* testsuite/21_strings/ctor_copy_dtor.cc: New file, checks ctors,
1913	assignments, dtors.
1914	* testsuite/21_strings/element_access.cc: New file, checks for
1915	operator[], at(...).
1916	* testsuite/21_strings/insert.cc: New file, tests string::insert.
1917	* testsuite/21_strings/char_traits.cc: New file, tests
1918	for char_traits<char>.
1919	
1920	* bits/utility.h: Remove, again.
1921	* src/Makefile.am (std_headers): Remove utility.h.
1922	* src/Makefile.in (std_headers): Regenerate.
1923
1924	Alfred Minarik <a8601248@unet.univie.ac.at>
1925	* bits/basic_string.h: Move __out_of_range and __length_error into
1926	namespace std.
1927
19281999-06-05  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
1929
1930	* testsuite/26_numerics/modf_float.cc: New file.
1931
1932	* bits/std_cmath.h (modf(float, float*)): Fix signature. Correct
1933	typo: use ::modff, not ::modf.
1934
19351999-06-03  Vadim Egorov  <egorovv@1c.ru>
1936
1937        * bits/string.tcc (basic_string::_M_mutate): Fixed memory
1938        allocation error
1939	* testsuite/21_strings/capacity.cc (test01): Test.
1940	
19411999-06-03  Phil Edwards  <pedwards@ball.com>
1942
1943        * bits/fstream.tcc:  Re-order inits to stop warnings.  Comment/move
1944          unused variables to within #if 0 blocks to do the same.
1945        * bits/std_fstream.h:  Fix typos (one prevents compilation).
1946
19471999-06-03  Benjamin Kosnik <bkoz@pacifica.cygnus.com>
1948
1949	* src/wstring-inst.cc: Fix.
1950
19511999-06-02  Benjamin Kosnik <bkoz@madcow.cygnus.com>
1952
1953	* bits/char_traits.h: Add _G_USE_WCHAR_T macro guards.
1954	* stl/bits/stl_string_fwd.h: Same.
1955	* bits/locale_facets.h: Same.
1956	* bits/locale_facets.tcc: Same.
1957	* src/wstring-inst.cc: And here.
1958	
1959	* src/gen-c++config.cc: Comment _G_USE_WCHAR_T. Leading to
1960 	problems on HPUX 10.20.  
1961	* your-build-directory-here/bits/c++config.h: Just kidding, do it
1962 	here as a temporary hack till the compiler/host problems get
1963 	worked out.
1964
1965	* bits/locale_facets.tcc (num_get::do_get): Change from ifdef
1966 	HAVE_STRTOLD to HAVE_STRTOLD && !(__hpux). Apparently, problems
1967 	converting "long double" to struct long_double. Probably should be
1968 	done with one macro (HAVE_STRTOLD) at configure time.
1969
1970	* bits/std_cmath.h: Comment out pow(double, int) definition as
1971 	gives re-declaration under hpux10.20. Revert previous change, as
1972 	kills linux/x86, solaris 2.7, hpux builds. These should be done
1973 	using autoconf, see std_cctype.h and the solutions started in
1974 	configure.in (see config.h for the generated file.)
1975
1976	* mknumeric_limits (LDFLAGS): Remove '-nodefaultlibs -lc', as
1977 	-nodefaultlibs prevents linking under HPUX 10.20 as __main is not
1978 	defined.
1979
1980	* docs/index.html: Add some useful links.
1981	* docs/17_intro/contribute.html: Fix broken links.
1982
19831999-06-02  Benjamin Kosnik <bkoz@rhino.cygnus.com>
1984
1985	* mkcheck (LOG_FILE): Add !/bin/bash instead of cygnus-style
1986	paths. The rest of the world should be able to run this script
1987	now.
1988
1989	* src/Makefile.am ($(generated_headers)): Remove comment.
1990	* Makefile*: Regenerate.
1991	
1992	* bits/std_locale.h: Remove detritus.
1993	* bits/localefwd.h: Add <cctype> include to undefine the isspace
1994	macro.
1995
19961999-06-01  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
1997
1998	* src/gen-c++config.cc: New file. Making c++config.h at configure
1999	time by catting this file (nee bits/config.h) with the build
2000	directories config.h. This is not a complete or perfect solution
2001	but is better than what was in place previously. 
2002	* bits/c++config.h: Rename/move to above.
2003	* src/Makefile.am (headers): Remove c++config.h.
2004	(myinstallheaders). Add.
2005	* Makefile*: Regenerated.
2006
2007	* bits/std_cwchar.h: Add include of c++config.h for HAVE_*
2008	definitions, so that wmemcmp, wcslen, wmemchr, etc are properly
2009	declared only if not present in the host's wchar.h.
2010
2011	* bits/locale_facets.tcc (std): Change _G_USE_STRTO* to HAVE_STRTO*.
2012	
2013	* bits/std_cmath.h: Define out, for the moment. Linux has no
2014	__buitin_fsqrtl? Probably need some kind of configure trickery
2015	here as well.
2016
2017	* src/Makefile.*: Regenerate.
2018	* bits/c++config.h: Add config.h include.
2019
2020	* bits/std_cwchar.h: Remove remaining #error guard.
2021	
2022	* acconfig.h: Add bits for HAVE_LC_MESSAGES.
2023
2024	* configure.in (LIBS): Replace previous effort for mbstate_t and
2025	strtold/strtof with this implementation.
2026
20271999 06-01  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
2028
2029	* bits/std_cmath.h: Tweak. Add more functions. Use __builtin_xxx
2030	whenever possible.
2031
20321999-05-28  Benjamin Kosnik  <bkoz@cygnus.com>
2033
2034	* bits/locale_facets.tcc (std): Eek: this left in. Autoconf bits
2035	for determining mbstate_t differences across various hosts not
2036	finished. 
2037
20381999-05-26  Benjamin Kosnik  <bkoz@nabi.net>
2039
2040	* bits/locale_facets.tcc: Change to ifdef.
2041
2042	* bits/std_sstream.h (stringbuf::setbuf): Remove dynamic_cast.
2043	* bits/std_fstream.h (filebuf::setbuf): Same.
2044
2045	* bits/std_istream.h: Add ws declaration.
2046	* bits/istream.tcc: Stub out definition.
2047	
2048	* docs/index.html: Fix broken link for design.txt.
2049
2050	* configure.in: Test for mbstate_t. If wchar.h doesn't have it,
2051	then set _G_NEED_MBSTATE_T.
2052	* configure: Regenerate.
2053	* bits/c++config.h: Move mbstate_t define.
2054	* bits/std_cwchar.h: To here.
2055
20561999-05-25  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
2057
2058        * bits/std_sstream.h:
2059          basic_stringbuf<>::basic_stringbuf: fix.
2060          basic_stringbuf<>::setbuf: 
2061          remove the temporary __string_type object,
2062          remove the unnecessary dynymic_cast in the return value,
2063          change the type of the returned value from __streambuf_type*
2064          to basic_stringbuf<_CharT, _Traits, _Alloc>*.
2065
20661999-05-25  Phil Edwards  <pedwards@ball.com>
2067
2068	* bits/std_streambuf.h (streambuf::setbuf): Always return streambuf*. 
2069
20701999-04-25  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
2071
2072	* bits/std_cmath.h: Tweak. Add float versions of the math functions
2073	in <math.h>.  <cmath> still incomplete and incorrekt.
2074
20751999-05-24  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
2076
2077	* mknumeric_limits (LDFLAGS): set appropriate link flags.
2078	
20791999-05-23  Phil Edwards  <pedwards@ball.com>
2080
2081	* docs/17_intro/howto.html:  Added links to text docs,
2082	e.g., BUGS. 
2083	* docs/21_strings/howto.html:  Updated sections and links.
2084	* docs/21_strings/{gotw29a.txt,stringtok_h.txt}:  Added.
2085	* docs/faq/index.html:  Updated what-works for sixth
2086	snapshot. Also a number of "internal" links have been
2087	fixed, now that the web pages are the docs directory...
2088	* docs/faq/index.txt: Regenerated.
2089	
20901999-05-21   Benjamin Kosnik  <bkoz@tintin.cygnus.com>
2091
2092	* bits/basic_string.h: Add Nathan's documentation on the string class.
2093
2094	* testsuite/27_io/ios_members_static.cc: New file, for testing
2095 	ios_base::sync_with_stdio.
2096
20971999-05-21   Benjamin Kosnik  <bkoz@tintin.cygnus.com>
2098
2099	* bits/std_locale.h: Simplify includes.
2100	* bits/loccore.h: Delete.
2101	* bits/localefwd.h: Renamed, trimmed.
2102	* bits/locfacets.h: Delete.
2103	* bits/locale_facets.h: Rename, expanded.
2104	* bits/loccore.tcc: Deleted.
2105	* bits/locfacets.tcc: Deleted.
2106	* bits/locale_facets.tcc: Resultant merge.
2107	* bits/std_fstream.h: Modify include.
2108	* bits/ostream.tcc: Same.
2109	* bits/istream.tcc: Same.
2110
2111	* src/locale-inst.cc: And here.
2112	* src/locale.cc: Ditto. 
2113	* src/Makefile.am: Updated.
2114	* src/Makefile.in: Rengenerated.
2115
2116	* bits/std_istream.h: Move istream::sentry ctor definition.
2117	* bits/istream.tcc: Move istream::sentry ctor here.
2118	Add more detailed locale include here for ctype member functions.
2119	* bits/ostream.tcc (std): And here.
2120
2121	* bits/sbuf_iter.h: Include std_streambuf.h
2122
2123	* bits/locfacets.h: Start separating this into a localeimp.h file.
2124	* bits/loccore.h: Start separating this into a localefwd.h file.
2125	Add std_climits for CHAR_BIT.
2126	
2127	* bits/ios_base.h (ios_base::sync_with_stdio): Stub in.
2128
2129	* bits/char_traits.h: Tweak.
2130
2131	* bits/ios_base.h: Remove INT_MAX, use 1<<16.
2132
2133	* bits/std_ostream.h: Remove c++config.h include.
2134	* bits/std_istream.h: Same.
2135	* bits/std_streambuf.h: Same.
2136	* bits/std_fstream.h: Same.
2137	* bits/std_sstream.h: And here.
2138	
2139	* bits/std_iosfwd.h: Add _G_RESOLVE_LIB_DEFECTS here for streampos.
2140	* bits/char_traits.h: Add include of std_cwchar.h for mbstate_t.
2141	* bits/fpos.h: Tweak, format.
2142
2143	* std/ciso646: New file.
2144	* bits/std_ciso646.h: New file.
2145	* src/Makefile.am (std_headers): Add ciso646.
2146	(headers): Add bits/std_ciso646.h.
2147	* src/Makefile.in: Regenerate.
2148	* testsuite/17_intro/header_ciso646.cc: New file, disable
2149	equivalance tests.
2150	
2151	* bits/fpos.h: Remove libio.h include.
2152	* bits/basic_file.h: And here.
2153	* bits/std_ios.h: Put here.
2154
2155	* src/ios.cc: Simplify includes, tweak.
2156        * bits/std_ios.h: Simplify include order. 
2157	* bits/ios_base.h: Modify ios_base::failure.
2158
2159	* stl/bits/std_numeric.h: Change include from stl_iterator to
2160	std_iterator.
2161	
21621999-05-19  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
2163
2164	* std/iostream: Remove static member __ioint.
2165	* bits/std_iostream.h: Put here.
2166
2167	* stl/bits/std_numeric.h: Remove unneccessary std_iostream.h include.
2168	* stl/bits/stl_algobase.h: Same.
2169	* testsuite/27_io/iostream_objects.cc: Regression tests.
2170	* testsuite/27_io/hello.cc: Remove, subset of above.
2171	
21721999-05-19  Phil Edwards  <pedwards@ball.com>
2173	
2174	* docs/index.html: Tweak, update.
2175
21761999-05-18  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
2177
2178	* docs/17_intro/RELEASE-NOTES: remove outdated
2179	documentation about numeric_limits. Correct CXXINCLUDE setting
2180	documentation.
2181
21821999-05-18  Phil Edwards  <pedwards@ball.com>
2183
2184        * docs/{17_intro,18_support,19_diagnostics,20_util,21_strings,
2185          22_locale,23_containers,24_iterators,25_algorithms,26_numerics,
2186          27_io}/howto.html:  Created, with some initial entries.
2187        * docs/faq/index.html:  Fixed some links.
2188        * docs/faq/index.txt:  Regenerated.
2189
21901999-05-18  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
2191
2192	* bits/c++config.h (__GLIBCPP__): Set version to 19990518.
2193
2194	* docs/17_intro/RELEASE-NOTES: Update.
2195	* docs/index.html: Correct link to mailing list help page, update News.
2196	* docs/faq/index.html: Change fifth to sixth for snapshot.
2197	
2198	* src/Makefile.am (myinstallheaders): Bring over Gaby's changes to
2199 	install $(top_builddir)/bits/std_limits.h into
2200 	$(myincludepfx)/bits. This was mistakenly omitted from yesterday's
2201 	Makefile.am changes.
2202	* *Makefile*: Regenerate using automake.
2203
2204	* mkcheck (LOG_FILE): Fix filebuf directory oddness.
2205	* testsuite/27_io/filebuf.cc: Same.
2206
22071999-05-18  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
2208
2209	* docs/17_intro/CHECKLIST: update.
2210	* docs/17_intro/TODO: update.
2211
22121999-05-17  Phil Edwards  <pedwards@ball.com>
2213
2214	* docs/{17_intro,18_support,19_diagnostics,20_util,21_strings,
2215	  22_locale,23_containers,24_iterators,25_algorithms,26_numerics,
2216	  27_io}/howto.html:  Created, with some initial entries.
2217	* docs/faq/index.html:  Fixed some links.
2218	* docs/faq/index.txt:  Regenerated.
2219	
22201999-05-17  Benjamin Kosnik  <bkoz@unhappy.cygnus.com>
2221
2222	* src/Makefile.am (myinstallheaders): Missed removing missing.h. 
2223	* Makefile.in*: Regenerate.
2224
22251999-05-17  Benjamin Kosnik  <bkoz@happy.cygnus.com>
2226
2227	* bits/std_streambuf.h: Same.
2228
2229	* bits/loccore.h (_Bad_use_facet): Remove bits warned about.
2230	* bits/locfacets.h (std): Same.
2231	* bits/sstream.tcc: Same.
2232	* testsuite/27_io/stringstream.cc: Tweak.
2233
2234	* testsuite/27_io/filebuf.cc: Adjust.
2235	* testsuite/21_strings/capacity.cc (test01): Add more
2236	string::reserve tests.
2237
2238	* bits/c++config.h: Remove broken CCTYPE.
2239	* bits/std_cctype.h: Tweak, remove de-macroization, enable
2240	sequestered topper implementation.	
2241	* bits/std_cwctype.h: Same.
2242	
2243	* bits/missing.h: Remove.
2244	* bits/std_locale.h: Remove missing.h include.
2245	
2246	* stl/bits/std_bitset.h (bitset::bitset(string): Tweak to compile.
2247	
2248	* src/Makefile.am (headers): Add bits/std_cwctype.h.
2249	INCLUDES: Add top_builddir. 
2250	* src/Makefile.in: Regenerate.
2251
2252	* Makefile.am: Add check and check-install as new targets.
2253	* testsuite/make_check_libfree++: Move to. . .
2254	* mkcheck: Here.
2255	* configure.in: Tweak versions.
2256	* mknumeric_limits: Set paths correctly.
2257	
22581999-05-17  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
2259	
2260	* src/Makefile.in (myinstallheaders): add rule to install
2261	std_limits.h. 
2262	
2263	* bits/slice.h (class slice): don't const-qualify data members
2264	since the copy and assignment operator is implicitly used. The
2265	valarray specification is definitively a bad one.
2266	
2267	* Makefile.in (generate-limits-sources): fix typo.
2268	
2269	* docs/text/TODO: update.
2270	* docs/text/CHECKLIST: update.
2271
2272	* bits/gslice.h (gslice): fix bugglet.
2273	(gslice::gslice): set _M_index_size to 0 whenever given lengths
2274	(lj) of size zero.
2275
2276	* src/Makefile.am (libstdc___la_SOURCES): add gen-num-limits.
2277	* src/Makefile.in (libstdc___la_SOURCES): keep in sync.
2278	[Note: **/Makefile.in should be generated from the corresponding
2279	Makefile.am.  The current situation is a litte chaotic.  ]
2280
22811999-05-16 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
2282
2283	* mknumeric_limits: tweak.
2284
2285	* Makefile.in (all): add target generate-limits-sources.
2286	(generate-limits-sources): make a directory bits/ in top_builddir
2287	where the generated std_limits.h is put; generate limitsMEMBERs.cc
2288	directly under $(top_builddir)/src. Remains to put the appropriate
2289	rule for installing std_limits.h.
2290	
2291	* src/Makefile.in (headers): remove bits/std_limits.h to this list.
2292	(INCLUDES): add -I$(top_builddir) for bits/std_limits.h which is
2293	now generated at build-time in the build directory
2294	(libstdc___la_SOURCES): remove limitsMEMBERS.cc form this list
2295	* src/Makefile.am: reflect changes in src/Makefile.in
2296
22971999-05-12  Phil Edwards  <pedwards@ball.com>
2298
2299	* docs/faq/index.html: Add more entries (5.4,5.5), finish
2300	all but one empty entry.  Add links for HOWTOs, but no files yet.
2301	(Corrected HOWTO links are for bkoz's new scheme.)
2302	* docs/faq/index.txt: Regenerated.
2303	
23041999-05-12  Benjamin Kosnik  <bkoz@happy.cygnus.com>
2305
2306	* testsuite/17_intro/headers.cc: New file.
2307	* stl/bits/std_queue.h: Change stl_bvector.h include path.
2308	* bits/std_cwctype.h: New file.
2309	
2310	* testsuite/27_io/filebuf.cc: Need to tweak directory structure.
2311
23121999-05-11  Benjamin Kosnik  <bkoz@loony.cygnus.com>
2313
2314	* stl/bits/stl_config.h (__USE_MALLOC): Change underlying allocator.
2315	Check __USE_MALLOC before defining specializations containing
2316	__default_alloc_template.
2317	* src/stl-inst.cc: Here too.
2318
2319	* bits/basic_string.h: Change.
2320
2321	* testsuite/make_check_libfree++: More tweaks.
2322	* testsuite/21/capacity.cc: New file.
2323	
2324	* src/string.cc: Rename to be consistent with other inst files. 
2325	Rename to string-inst.cc.
2326	* src/string*.cc: Change include.
2327	* src/wstring.cc: Rename to wstring-inst.cc.
2328	* src/wstring*.cc: Ditto.
2329	* src/Makefile.in: Also here.
2330	* src/Makefile.am: Ditto.
2331
2332	* src/traits.cc: Remove.
2333	* src/wtraits.cc: Same.
2334
2335	Try a new way of organizing documentation, one with synchronicity
2336	between testsuites and docs subdirectories, and see who yelps.
2337	* docs/html: Remove, use chapter and subject specific directories
2338	instead of forcing things immediately into format of
2339	documentation.
2340	* docs/text: Same.
2341	* docs/image: Same.
2342	* docs/faq/text, docs/faq/html: Remove, put in the docs/faq
2343	directory and sort by filename and extension.
2344	* docs/17_intro, 18_support, 19_diagnostics, 20_util, 21_strings,
2345	22_locale, 23_containers, 24_iterators, 25_algorithms,
2346	26_numerics, 27_io: Add.
2347	* docs/17_intro/*: Populate with all the text files. . .
2348	* docs/index.html: Construct.
2349	
2350	* testsuite/*: Update with same names as the docs subdir.
2351	* testsuite/results: Where to stash conformance results for the
2352	different snapshots, so that progress/size/speed issues can be
2353	tracked over time.
2354	
23551999-05-10  Benjamin Kosnik  <bkoz@loony.cygnus.com>
2356	
2357	* src/string.cc: Add _S_copy_chars instantiation, as well as
2358 	string::binary operators !=, ==, etc.
2359
2360	* src/Makefile.am (CXXFLAGS): Remove -fvtable-thunks.
2361	* src/Makefile.in (CXXFLAGS): Same here.
2362	* testsuite/make_check_libfree++ (CXX_FLAG): And here.
2363	
23641999-05-07  Benjamin Kosnik  <bkoz@cygnus.com>
2365
2366	* src/string.cc:  Add missing member functions to instantiation list.
2367
23681999-05-07  Benjamin Kosnik  <bkoz@cygnus.com>
2369
2370	* src/misc-inst.cc: Remove unused string instantiations.
2371
2372	* bits/string.tcc: Tweak, fix.
2373	* bits/basic_string.h: Format. Fix reported error with c_str().
2374
2375	* testsuite/make_check_libfree++: Tweak for shared builds.
2376	* testsuite/21/operations.cc: New file for testing c_str() etc.
2377
23781999-05-06  Benjamin Kosnik  <bkoz@cygnus.com>
2379            Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
2380
2381        * stl/bits/stl_vector.h: Fix the code of vector<> for usage with
2382	an iterator class.  Delineate pointer versus iterator differences
2383	in implementation.
2384	* 23/vector_capacity.cc: New file, tests for above.
2385	
23861999-05-06 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
2387
2388	* mknumeric_limits: Fix typo. 'unsigned lont' should read
2389	'unsigned long'.
2390	* src/Makefile.am (libstdc___la_SOURCES): add limitsMEMBERS.cc,
2391	generated by mknumeric_limits to the list. Now std_limits.h is
2392	basically working. 
2393	* src/Makefile.in (generate-numeric-limits): new target to handle
2394	automatic generation of bits/std_limits.h and src/limitsMEMBERS.cc.
2395	(all): add target generate-numeric-limits.
2396	(libstdc___la_OBJECTS): add limitsMEMBERS.lo
2397	(libstdc___la_SOURCES): add limitsMEMBERS.cc
2398
23991999-05-05  Benjamin Kosnik  <bkoz@cygnus.com>
2400
2401	Irix build issues.
2402	* bits/c++config.h (_G_USE_CTYPE_ISBIT): Defines new macro for
2403	mask values in ctype_base. Move hacks for _ISBit to locfacets.h.
2404	* bits/locfacts.h: Here.
2405
24061999-05-05  Benjamin Kosnik  <bkoz@cygnus.com>
2407	    Ulrich Drepper <drepper@cygnus.com> 
2408
2409	Solaris build issues.
2410	* bits/c++config.h: Define new macros, _G_USE_STRTOF and
2411 	_G_USE_STRTOLD.
2412	
2413	* bits/locfacets.tcc (num_get::do_get): Tweak long double and
2414 	float overloads to use the above macros. Account for the lack of
2415 	strtold on some systems, and revert back to using sscanf.
2416
24171999-05-04  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
2418
2419        * bits/locfacets.tcc (num_get::do_get): Check the errno variable.
2420	Use strtoul/strtoull for unsigned types.  Check the ranges for
2421	short/unsigned short and if necessary for int/unsigned int.
2422
24231999-05-04  Benjamin Kosnik  <bkoz@cygnus.com>
2424
2425	* src/gen-num-limits.cc (round_style): Need to use mknumericlimits
2426	to generate bits/std_limits.h now, as the SGI std_limits.h is
2427	being depricated. Not done, but should be done immediately: need
2428	to make sure this script is run as part of the configuration
2429	process, because without it "make" in a configured build directory
2430	will fail. Also tweaked: added a space for float_round_style, and
2431	used static_cast of zero to default-initialize, which should be ok
2432	according to the standard. (see 8.5 p5 and 20.1.3).
2433	* mknumeric_limits (OUT_C): Need this for x86 long
2434	double extensions.
2435	
2436	* bits/basic_file.h: Include libio.h, not libioP.h.
2437	* src/basic_file.cc: And add libioP.h include here, so that
2438	_IO_init, et. al are well-declared.
2439
2440	* testsuite/make_check_libfree++ (LIB_PATH): Test installed
2441	headers, not source directory headers.
2442
2443	* src/Makefile.am (headers): Add stl_range_errors.h, also adjust
2444	for ext/*.  Also add basic_file.h.
2445	* src/Makefile.in (headers): Same.
2446	
2447	* bits/std_string.h: Reduce dependencies for faster
2448	pre-processing. Move istream and ostream specific defines into
2449	istream.tcc and ostream.tcc respectively.
2450	* bits/string.tcc: And here.
2451	* bits/basic_string.h: Move getline inline out-of-line, and to
2452	istream.tcc.
2453	* bits/istream.tcc: Move string::getline and operator>> here.
2454	* bits/ostream.tcc: And here too.
2455
2456	* bits/utility.h: Remove, as clashes with a standard header. Put
2457	__OUTOFRANGE and __LENGTHERROR macros into string.tcc for the time
2458	being, until this can be combined with SGI's approach.
2459	* bits/string.tcc: Add macros, as above.
2460	* bits/loccore.h: Add _Count_ones defines.
2461	* bits/std_string.h: And here too.
2462	* bits/std_locale.h: And here.
2463	* bits/std_ios.h: Take out include here.
2464	* src/Makefile.am (headers): Remove utility.h
2465	* src/Makefile.in (headers): Remove utility.h
2466
2467	* stl/bits/*: Update to SGI STL 3.20.
2468	* stl/ext/pthread_alloc: Delete this file.
2469	
24701999-05-04 Phil Edwards <pedwards@ball.com>
2471
2472	* docs/faq/html/index.html: Add more entries
2473	* docs/faq/html/index.txt: regenerated.
2474
24751999-05-04 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
2476
2477	* src/gen-num-limits.cc (DO_DEFINE_MIN_MAX): fix typo.
2478
24791999-04-29  Benjamin Kosnik  <bkoz@haight.cygnus.com>
2480
2481	* bits/locfacets.tcc (num_get::do_get): Re-implement, with input
2482	from Ulrich and Nathan. Remove extraneous string class usage,
2483	tweak, clean, simplify and consolidate with a eye towards removing
2484	duplcate code. Use strto[l, ll, f, d, ld] instead of sscanf.
2485	Not done: dealing with leading zeros, wchar_t work.
2486	* bits/locfacets.h: And here too.
2487
2488	* doc: Remove.
2489	
24901999-04-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
2491
2492	* docs/: add a FAQ.
2493 	* docs/faq/: New directory.
2494	* docs/faq/html/: Likewise.
2495	* docs/faq/text/: Likewise.
2496	* docs/faq/html/index.html: New file.
2497	* docs/faq/html/index.txt: Likewise. Generated from 
2498	docs/faq/html/index.html by lynx.
2499
25001999-04-28  Benjamin Kosnik  <bkoz@happy.cygnus.com>
2501	    Ryszard Kabatek and Branko Cibej 
2502
2503	* bits/locfacets.tcc: Modify.
2504
25051999-04-27  Benjamin Kosnik  <bkoz@happy.cygnus.com>
2506
2507	* bits/sbuf_iter.h: Clean, fix istreambuf_iterator, make
2508	conformant to 14882, wrap non-standard extensions with
2509	_G_RESOLVE_LIB_DEFECTS, remove detritus and cruft, rennovate.
2510	* bits/locfacets.tcc (num_get::do_get(bool)): Return correct iterator.
2511	
2512	* testsuite/27/istringstream_formatted.cc: Add tests.
2513	
2514	* bits/locfacets.h: Remove cruft from _Format_cache, continue
2515	commenting, simplify.
2516	* bits/locfacets.tcc: Same.
2517
2518	1999-04-27  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
2519        * bits/locfacets.tcc (num_get::do_get):
2520        Fix the sscanf format parameter 
2521        for long long 'll' (as in C9X) instead of 'l'.
2522        Fix the order of sscanf format parameters: "%dl" --> "%ld".
2523        Change the type of the local variable '__conv' from 'string'
2524        to 'const char*' and adapt the change.
2525	
25261999-04-26  Benjamin Kosnik  <bkoz@happy.cygnus.com>
2527
2528	* bits/locfacets.h: Document _Format_cache, and name data members
2529 	after the corresponding functions in numpunct. For instance:
2530 	_M_grsep -> _M_thousands_sep, and _M_decsep -> _M_decimal_point.
2531	Break apart _M_boolnames{2] into _M_truename and _M_falsename.
2532	* bits/locfacets.tcc: Same.
2533
2534	* bits/locfacets.h (num_get::_M_extract): Don't allow groupings to
2535 	stop parsing--store for later analysis.
2536	* testsuite/27/istringstream_formatted.cc: Add cases.
2537	
25381999-04-25  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
2539
2540	* bits/valarray_meta.h: tweak.
2541	(_UnFunBase, _BinFunBase, _BinFunBase1, _BinFunBase2, _BinBase1,
2542	_BinFunBase2): rename typedef-name _Tp to _Vt to keep the compiler
2543	happy -- boggus warning.
2544	* bits/std_valarray.h: Fix.
2545	(valarray<T>::shift): Fix. Update comment.
2546	(valarray<T>::cshift): Fix. 
2547
25481999-04-23  Benjamin Kosnik  <bkoz@cygnus.com>
2549	
2550	* testsuite/27filebuf-2.txt: Delete.
2551	* testsuite/27/filebuf.cc: Put output files directly into the
2552	correct subdirectory (27).
2553
2554        Alexandre Petit-Bianco <apbianco@cygnus.com>
2555	* testsuite/make_check_libfree++: Check generated (*.txt) file
2556	against stored results file (*.tst).
2557
25581999-04-22  Benjamin Kosnik  <bkoz@nabi.net>
2559
2560	* bits/locfacets.tcc: Fix.
2561
2562	* bits/fstream.tcc (filebuf::seekoff): Output current out pointer.
2563	(filebuf::overflow): Simplify.
2564	(filebuf::xsputn): Correctly handle indeterminate state.
2565
2566	* testsuite/27/istringstream_formatted.cc: Tweak.
2567	* testsuite/27/filebuf.cc: Tweak.
2568	* testsuite/27/filebuf-3.tst: Correct: this is the canonical
2569	results file, please use this in the future to guarantee filebuf
2570	positioning accuracy.
2571	* testsuite/27/filebuf-2.tst: Same.
2572	
25731999-04-21  Benjamin Kosnik  <bkoz@cygnus.com>
2574
2575	* bits/fstream.tcc (filebuf::xsputn): Add.
2576	* bits/std_fstream.h: Declare.
2577	
2578	* src/basic_file.cc (__basic_file::open): Add O_CREAT to open
2579	calls using ios_base::trunc.
2580
2581	* bits/sstream.tcc (streambuf::overflow): Fix crasher.
2582	
2583	* testsuite/make_check_libfree++ (LOG_FILE): Ugh. Another fix.
2584	* testsuite/27/27stringstream.cc: Same.
2585	* testsuite/27/27stringbuf.cc: More tweaks.
2586	* testsuite/27/27filebuf-2.txt: Remove.
2587
2588	* testsuite/27/27filebuf-1.tst: Append, to force byte size over
2589	BUFSIZE so that overflows/underflow can be tested with default
2590	buffer setting.  
2591	* testsuite/27/27filebuf-1.tst: Add.
2592
2593	* testsuite/*/*: Remove pre-pended chapter names, as they
2594	duplicate the chapter info contained in the enclosing directory
2595	anyway.
2596	
25971999-04-20  Benjamin Kosnik  <bkoz@cygnus.com>
2598
2599	* bits/streambuf.tcc (streambuf::xsputn): Re-implement to conform
2600	to sputc conditions.
2601
2602	* bits/ios_base.h: Define here.
2603	* src/ios.cc (ios_base::_M_clear): Remove hack.
2604	* bits/basic_ios.h: Fix rdstate().
2605
2606	* bits/sstream.tcc (streambuf::seekoff): Fix.
2607	* bits/fstream.tcc (filebuf::seekoff): Tweak comments.
2608
2609	* testsuite/make_check_libfree++ (LOG_FILE): More c-c-c-changes.
2610	* testsuite/24/24iterator.cc: Add/Fixes for DEBUG_ASSERT.
2611	* testsuite/27/27stringstream.cc: Same. 
2612	* testsuite/27/27stringbuf.cc: Same.
2613	* testsuite/27/27istringstream_formatted.cc: Same.
2614	* testsuite/27/27filebuf.cc: Same.
2615	
2616	* bits/locfacets.h: Remove specializations for messages<char> and
2617	messages<wchar_t> ctors. Same for moneypunct. Not required, not used.
2618	* src/locale.cc: Remove definitions for above.
2619	* src/misc-inst.cc: Revert, take out iomanip.h include. 
2620	* bits/std_iomanip.h: Tweak, format.
2621	
26221999-04-19  Benjamin Kosnik  <bkoz@cygnus.com>
2623
2624	* bits/loccore.h: Format, move inline.
2625	* bits/locfacets.tcc: Same.
2626	* bits/locfacets.h: Same.
2627
2628	Ulrich Drepper  <drepper@cygnus.com>
2629	* aclocal.m4: Re-generate.
2630	* configure, configure.in: Same.
2631	* m4/lc_messages.m4: New file.
2632
26331999-04-18  Benjamin Kosnik  <bkoz@cygnus.com>
2634
2635	* bits/std_ostream.h: Fix typedef for wchar_t instantiations.
2636	* bits/sstream.tcc: Tweak.
2637
2638	* std/iostream: Put __ioinit inside macro guards.
2639	
2640	* src/stlinst.cc: Delete and move to . . .
2641	* src/stl-inst.cc: New file, plus wrapping in namespace std.
2642	* src/Makefile.in: Change.
2643	* src/Makefile.am: Same.
2644	* src/misc-inst.cc: Add istringstream/ostringstream instantiations.
2645
2646	* testsuite/make_check_libfree++: Efficiently format for minimal
2647	space. Enforce stricter execution tests by enabling
2648	-DDEBUG_ASSERT.
2649	
26501999-04-16  Benjamin Kosnik  <bkoz@cygnus.com>
2651
2652	* docs/text/RELEASE-NOTES: Fix include typo.
2653
2654	* src/Makefile.am (headers): Add istream.tcc. 
2655	* src/Makefile.in (headers): Add istream.tcc. 
2656
2657	* ltconfig, ltmain.sh, libtool: Update to libtool-1.2g.
2658	
26591999-04-16  Benjamin Kosnik  <bkoz@cygnus.com>
2660
2661	* bits/locfacets.tcc (num_get::do_get(long)): Finish roughing in.
2662	* bits/locfacets.h (num_get::_M_extract): New functin:
2663	consolidate logic for do_get(...) members.
2664
2665	* bits/sbuf_iter.h (istreambuf_iterator::operator++()): Fix.
2666	* testsuite/27/27istringstream_formatted.cc: Add.
2667
26681999-04-16  Martin v. Loewis  <martin@mira.isdn.cs.tu-berlin.de>
2669
2670	* src/basic_file.cc (__basic_file::open): Fix thinko in
2671	_G_HAVE_IO_FILE_OPEN bits.
2672	* bits/std_istream.h (sentry::sentry(istream, bool)): Fix isspace bug.
2673	* bits/std_cmath.h: Add stdlib.h include for ldiv_t.
2674        * src/complex.cc (FCT): Qualify all functions with global namespace.
2675        * src/locale.cc: Don't qualify memcpy and setlocale.
2676        * src/stdexcept.cc (__out_of_range): Qualify out_of_range with std::.
2677        (__length_error): Likewise, for length_error.
2678        * src/stlinst.cc: Qualify instantiations with std::.
2679
26801999-04-15   Benjamin Kosnik  <bkoz@cygnus.com>
2681
2682	* C++STYLE: Add ChangeLog guidelines for member functions.
2683
2684	* doc/* : Delete.  
2685	* BADNAMES, BUGS, C++STYLE, CHECKLIST, COPYING,
2686	DESIGN, HEADER_POLICY, PROBLEMS, RELEASE-NOTES, TODO: Moved into
2687	docs/text and made less strident.
2688	
2689	* bits/fstream.tcc: Change non-standard ctor to match Sun's sematics.
2690	* bits/std_fstream.h: Same.
2691	* src/ios.cc: Same.
2692
2693	* bits/locfacets.h: Touch. 
2694	
26951999-04-15  Ulrich Drepper  <drepper@cygnus.com>
2696
2697	* math/cexp.c (cexp): Use NAN instead of nan("").
2698	Reported by joel reed <joelreed@yahoo.com>.
2699
2700	* libio/libioP.h: Define _IO_seek_fpos_t and _IO_seek_off_t based on
2701	_G_IO_IO_FILE_VERSION.  Use these types in the prototypes.
2702	* libio/fileops.c: Use _IO_seek_fpos_t and _IO_seek_off_t types
2703	instead of #if cascades.
2704	* libio/genops.c: Likewise.
2705	* libio/ioseekoff.c: Likewise.
2706	* libio/ioseekpos.c: Likewise.
2707	* libio/strops.c: Likewise.
2708	Patch by Chip Salzenberg <chip@perlsupport.com>.
2709
27101999-04-15  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
2711
2712	* docs: New directory.
2713	* docs/html: Likewise.
2714	* docs/text: Likewise.
2715	* docs/image: Likewise.
2716
2717	* bits/std_cmath.h: Add new functions.
2718	(abs): overload for long and double.
2719	(div): overload for long.
2720
2721	* bits/valarray_array.h: Fix.
2722	* bits/gslice.h: Adjust friend.
2723	* bits/slice_array.h: likewise.
2724	* bits/valarray_meta.h: likewise.
2725
27261999-04-13   Benjamin Kosnik  <bkoz@tintin.cygnus.com>
2727
2728	* bits/locfacets.h: More changes, for num_get for insertion
2729	operators for integral types. Comment fields in _Format_cache.
2730	* bits/locfacets.tcc: And here too: add preliminary long version.
2731	* testsuite/27/27istringstream_formatted.cc: Add cases.
2732
27331999-04-13   Mark Elbrecht  <snowball3@usa.net>
2734
2735	* configure.in: Add locale.h to AC_CHECK_HEADERS argument. Call
2736	AC_LC_MESSAGES macro.
2737	* aclocal.m4 (AC_LC_MESSAGES): New. Determines if a target
2738	supports LC_MESSAGES.
2739	* config.h.in: Add entry for HAVE_LC_MESSAGES.
2740	* src/locale.cc (locale::_S_normalize_category): Use the
2741	HAVE_LC_MESSAGES macro to check for LC_MESSAGES support instead of
2742	_G_NO_CLOCALE_HAS_MESSAGES.
2743	* aclocal.m4 (AM_PROG_LD): For DOS style paths, simplify test to
2744	'?:' from '?:\\' so any path beginning with a drive name matches.
2745
27461999-04-12   Mark Elbrecht  <snowball3@usa.net>
2747
2748	* src/basic_file.cc(sys_open) [O_BINARY]: Declare __testb.
2749
27501999-04-12   Benjamin Kosnik  <bkoz@tintin.cygnus.com>
2751
2752	* bits/locfacets.h: Tweak.
2753	* bits/locfacets.tcc(do_get): Clean/fix bool method.
2754
2755	* testsuite/21/21nonmember.cc: Same.
2756	* testsuite/21/21compare.cc: Fix license.
2757	* testsuite/27/27istringstream_formatted.cc: New file.
2758
27591999-04-12  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
2760
2761	* bits/valarray_meta.h: _BinFunBase1, _BinFunBase2, _BinBase1,
2762	_BinBase2: new template classes; put in there to work around a
2763	compiler limitation. The whole valarray architecture is now
2764	working.
2765
27661999-04-08  Benjamin Kosnik  <bkoz@haight.constant.com>
2767
2768	* bits/locfacets.tcc: Fix, format.
2769	* bits/locfacets.h: Fix.
2770	* src/locale.cc: Same, plus format.
2771
2772	* bits/basic_string.h: Re-add definition here.
2773	* src/string.cc: Take out.
2774
27751999-04-08  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
2776
2777	* bits/std_valarray.h: tweak.
2778	* bits/valarray_array.h tweak. use _Expr.
2779	* bits/slice_array.h: likewise.
2780	* bits/gslice_array.h: likewise.
2781	* bits/mask_array.h: likewise.
2782	* bits/indirect_array.h: likewise.
2783	* bits/valarray_meta.h: tweak.
2784	_UnFunBase, _UnFunClos, _BinFunBase, _FunBase, _ValFunClos,
2785	_RefFunClos, _UnBase, _UnClos, _BinBase, _BinClos, _SClos, _GClos,
2786	_IClos: new template classes.
2787	_Meta: renamed to _Expr. Made template with args.
2788	_Constant: made template with two args.
2789
27901999-04-05  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
2791
2792	* bits/valarray_array.h: tweak.
2793
27941999-04-06  Benjamin Kosnik  <bkoz@cygnus.com>
2795
2796	* bits/basic_string.h: Whoops--fix blip.
2797
27981999-04-06  Benjamin Kosnik  <bkoz@cygnus.com>
2799
2800	Update to SGI STL 3.13
2801	* bits/basic_string.h: Add __get_c_string definition.
2802	* stl/bits/stl_range_errors.h: New file.
2803	* stl/bits/std_bvector.h: Same.
2804	* stl/bits/*: Update.
2805
28061999-04-04 1999  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
2807
2808	* bits/slice_array.h: tweak.
2809	* bits/gslice_array.h: tweak.
2810	* bits/mask_array.h: tweak.
2811	* bits/indirect_array.h: tweak.
2812	* bits/valarray_array.h: tweak.
2813	(__valarray_copy): replace copy with memcpy.
2814	* bits/std_valarray.h: use __valarray_copy whenever possible.
2815	use __valarray_fill instead of fill.
2816
28171999-04-02  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
2818
2819	* src/gen-num-limits.cc: new file
2820	* mknumeric_limits: Ditto.
2821
28221999-03-30  Benjamin Kosnik  <bkoz@cygnus.com>
2823
2824	* bits/locfacets.tcc: Do a stub version of num_get for short, int,
2825	and long types.
2826	* bits/locfacets.h: Add num_get::get methods overloaded for int
2827	and short, to resolve ambiguous overloads in istream insertion
2828	operators.
2829
28301999-03-30  Benjamin Kosnik  <bkoz@cygnus.com>
2831
2832	* bits/std_istream.h: Fix.
2833	* bits/istream.tcc: Fix.
2834
28351999-03-30  Philip Martin  <pm@corris.dircon.co.uk>
2836
2837	* testsuite/24/24iterator.cc: fix ++/-- tests
2838
28391999-03-29  Benjamin Kosnik  <bkoz@cygnus.com>
2840
2841	* bits/std_ostream.h: Looks like this, actually: Fix up eh-isms.
2842	* bits/ostream.tcc: Same.
2843
2844	* bits/std_istream.h: Bring over ostream changes, implement member
2845	functions. Baseline.
2846	* bits/istream.tcc: New file.
2847
28481999-03-26  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
2849
2850	* bits/gslice.h (class gslice): fix friends template.
2851
28521999-03-23  Benjamin Kosnik  <bkoz@cygnus.com>
2853
2854	* bits/std_ostream.h: Fix sentry objects, implement seekp, tellp,
2855	delete cruft, etc.
2856	* bits/ostream.tcc: Same.
2857
2858	* bits/std_istream.h: Minor tweaks.
2859
28601999-03-18  Benjamin Kosnik  <bkoz@cygnus.com>
2861
2862	* src/locale-inst.cc: Remove duplicate instantiations.
2863	* bits/locfacets.tcc: Tweak definitions of static member.
2864
28651999-03-18  Benjamin Kosnik  <bkoz@cygnus.com>
2866
2867	* bits/std_fstream.h: Format: prepend "__" in front of
2868	non-standard typedefs.
2869	* bits/fstream.tcc: Match.
2870	* bits/std_streambuf.h: Format: prepend "__" in front of
2871	non-standard typedefs.
2872
2873	* bits/sstream.tcc: Match.
2874	* bits/std_istream.h: Format.
2875	* src/locale-inst.cc: Add num_get instantiations.
2876
2877	* bits/std_sstream.h: Fix crash in stringstreams. Remove member
2878	_M_sb, a basic_stringbuf object, and use the basic_ios pointer
2879	_M_streambuf instead. Make initializations sane. Fix
2880	allocation/deallocation of _M_streambuf.
2881	* bits/std_ostream.h: Fix initialization code.
2882	(ctor): Eliminate redundant this->init(), let base class initialize.
2883	(default ctor): New. Assume base classes already initialzed.
2884	* bits/std_istream.h: Parallel work to ostream.
2885	(ctor): Eliminate redundant this->init(), let base class initialize.
2886	(default ctor): New. Assume base classes already initialzed.
2887	Fix initialization of basic_iostream.
2888
2889	* bits/std_fstream.h: While we're at it, make initializations sane
2890	here too. Now matches sstream.h.
2891
2892	* bits/string.tcc: Fix crash in basic_string::compare.
2893	* bits/basic_string.h: And here.
2894	* bits/c++config.h: Add comment about _G_USE_EXCEPTIONS.
2895
2896	* testsuite/make_check_libfree++: Check shared as well.
2897	* testsuite/27/27stringstream.cc: Add bits.
2898	* testsuite/27/27boolfmt.cc: Add bits.
2899	* testsuite/27/27octfmt.cc: Add bits.
2900
29011999-03-17  Benjamin Kosnik  <bkoz@happy.cygnus.com>
2902
2903	* configure.in (USE_LONG_DOUBLE): signbitl link error.
2904
2905	* bits/locfacets.h: Fix errors that cause build problems
2906	with current egcs (template parameters have class scope).
2907	* bits/locfacets.tcc: Same.
2908	* src/locale-inst.cc: Same, clean.
2909	* src/misc-inst.cc: Same, clean.
2910
29111999-03-17  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
2912
2913	* stl/bits/std_memory.h:  Modify auto_ptr::reset to reflect the
2914	standard. Re-apply this previous patch.
2915
29161999-03-17  Philip Martin  <pm@corris.dircon.co.uk>
2917
2918	* bits/basic_string.h: Use __normal_iterator<> for iterators.
2919	* bits/std_sstream.h: Support __normal_iterator<> iterators.
2920	* bits/string.tcc: Ditto.
2921	* src/misc-inst.cc: Ditto.
2922	* src/locale-inst.cc: Ditto.
2923	* stl/bits/stl_iterator.h: Add __normal_iterator<>.
2924	* stl/bits/stl_vector.h: Use __normal_iterator<> for iterators.
2925	* testsuite/24/24iterator.cc: Add test cases for basic_string and
2926	vector iterators.
2927
29281999-03-16  Benjamin Kosnik  <bkoz@cygnus.com>
2929
2930	* bits/locfacets.tcc: Remove macro hack.
2931	* bits/locfacets.h: Tweaks.
2932	* src/misc-inst.cc: Weed out locale-related instantiations.
2933	* src/locale-inst.cc: Same.
2934
2935	* RELEASE-NOTES: Make more changes.
2936	* bits/c++config.h: Bump version number.
2937
2938	* testsuite/make_check_libfree++: Collect diagnostics.
2939
2940	* bits/std_ostream.h: Fix ostream initialization/destruction
2941	problem, related to dtor cleanup and new cached facets, agggggggh.
2942	* bits/ostream.tcc: Tweak.
2943	* bits/locfacets.h: Remove all friends of iostream classes.
2944	* bits/ios_base.h: Same.
2945	* bits/streambuf.tcc: Tweak.
2946	* bits/std_streambuf.h: Tweak.
2947	* bits/std_fstream.h: Tweak.
2948	* bits/fstream.tcc: Tweak.
2949	* src/stdstreams.cc: Tweak.
2950	* src/ios.cc: Close streams.
2951
2952	* math/Makefile.in: Add missing files for shared link errors.
2953	* math/Makefile.am: Same.
2954
29551999-03-15  Benjamin Kosnik  <bkoz@cygnus.com>
2956
2957	* src/locale-inst.cc: More wchar_t instantiations.
2958	* src/misc-inst.cc: Missed a few bits.
2959	* testsuite/make_check_libfree++: Add static and shared runs.
2960	* src/ios.cc: Add clarity to ios_base::Init::~Init().
2961
29621999-03-15  Benjamin Kosnik  <bkoz@cygnus.com>
2963
2964	* bits/std_ostream.h: Format, expunge, simplify. Add cached
2965	facets. Resolve link errors.
2966	* bits/ostream.tcc: Same.
2967	* src/misc-inst.cc: Add ostream, wostream instantiations.
2968	* src/Makefile.am: Add missing bits for stdstreams.cc.
2969	* src/Makefile.in: Same.
2970	* bits/std_iosfwd.h: Format.
2971	* bits/locfacets.h (num_put): Add basic_ostream as a friend to
2972	num_put so that cached _M_fnumput pointer can be deleted in
2973	basic_ostream's dtor. Now everybody plays nice.
2974
29751999-03-12  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
2976
2977	* bits/gslice.h (class gslice): Make friends valarray,
2978	gslice_array and _GliceExpression.
2979
29801999-03-11  Benjamin Kosnik  <bkoz@cygnus.com>
2981
2982	* RELEASE-NOTES: Update.
2983	* src/ios.cc: Use do proper init.
2984	* bits/std_streambuf.h: Tweak.
2985	* bits/std_iostream.h: Take out static member.
2986	* std/iostream: Put here.
2987	* bits/std_ostream.h: Non-default ctor shouldn't smash _M_streambuf.
2988	* bits/std_istream.h: Ditto.
2989	* bits/basic_ios.h: Format.
2990	* bits/ostream.tcc(write): Fix.
2991	* bits/fstream.tcc: Fix stdstreams ctor to do a proper
2992	initialization of the fstream class.
2993	* src/stdstreams.cc: I'm baaaaaaaack.
2994
29951999-03-10  Benjamin Kosnik  <bkoz@rhino.cygnus.com>
2996
2997	* bits/ios_base.h: Correct comments. Add ios_base::init()
2998	functionality. Format, tweak, expunge, clean, bathe, and hang to dry.
2999	* src/misc-inst.cc: Add instantiations here.
3000	* src/ios.cc: Clean.
3001	* bits/std_iostream.h: Add wrappers, global ios_base::Init object.
3002	* src/stdstreams.cc: Delete this file, as now unnecessary.
3003	* bits/fstream.tcc: Add missing initialization bits for ctor.
3004	* src/Makefile.am (libstdc___la_SOURCES): Delete here as well.
3005	* src/Makefile.in (libstdc___la_OBJECTS): And here.
3006
3007	* bits/streambuf.tcc: Tweak.
3008	* bits/sstream.tcc: Here too.
3009
3010	* bits/fstream.tcc: And change definition as well.
3011	* bits/std_fstream.h: Change ctor.
3012	* src/basic_file.cc (sys_open): Add call that opens a specific fileno.
3013	* bits/basic_file.h: Add declarations.
3014
3015	* testsuite/27/27hello.cc: New file.
3016
3017	* bits/std_ostream.h: Move flush() inline.
3018	* bits/ostream.tcc: From here.
3019
3020	* bits/char_traits.h: Add include of fpos.h for streamoff/streampos.
3021	* bits/std_ios.h: Change include libio to only when necessary.
3022	* bits/fpos.h: Like here.
3023	* ios_base.h: And here.
3024
3025	* bits/locfacets.h: Change _Iostate to _Ios_Iostate.
3026	* bits/locfacets.tcc: Same.
3027	* bits/std_locale.h: Include std_ios.h not std_iosfwd.h.
3028	* bits/std_iosfwd.h: Move _Ios_Iostate to ios_base.h
3029
30301999-03-09  Benjamin Kosnik  <bkoz@rhino.cygnus.com>
3031
3032	* bits/basic_ios.h: Change _M_ctype to _M_fctype.
3033
3034	* bits/std_streambuf.h: Clean, tweak.
3035	* bits/std_fstream.h: Same.
3036	* bits/std_sstream.h: Same.
3037	* bits/streambuf.tcc: Move most member functions out-of-line.
3038	* bits/fstream.tcc: Same.
3039	* bits/streambuf.tcc: Same.
3040
3041	* bits/basic_file.h(filepos_cur): Set correctly.
3042	(filepos_beg): Same.
3043	(seekpos): Change to __c_streampos.
3044	* src/basic_file.cc (std): Change to __c_streampos.
3045
3046	* testsuite/27/27filebuf.cc: Round one is finished.
3047	* testsuite/27/27filebuf-2.tst: New file, final output should match.
3048	* testsuite/27/27filebuf-3.tst: Same.
3049
30501999-03-08  Benjamin Kosnik  <bkoz@rhino.cygnus.com>
3051
3052	* bits/basic_file.h: Fix typo, add comments about what to expect
3053	from the various member functions in __basic_file.
3054
3055	* bits/std_fstream.h: Re-do sync/underflow to work
3056	together. Change from sys_read to xsgetn and from sys_write to
3057	xsputn. As it should have been from the beginning. . .
3058
30591999-03-06  Benjamin Kosnik  <bkoz@haight.constant.com>
3060
3061	* bits/c++config.h (__GLIBCPP__): Add versioning macro.
3062
3063	* bits/basic_file.h(file_beg): New function.
3064	(file_cur): Ditto.
3065
3066	* testsuite/27/27filebuf.cc: Test in, out, in | out.
3067	* bits/std_fstream.h: More _M_mode refinements.
3068	(synch): Add bits for out mode only.
3069	* bits/std_streambuf.h(xsputn): Correct for filebufs.
3070	* bits/std_sstream.h: Ditto.
3071
30721999-03-03  Benjamin Kosnik  <bkoz@cygnus.com>
3073
3074	* bits/std_fstream.h: Fix _M_mode AND with ios_base::openmode.
3075	* testsuite/27/27filebuf.cc: Modify.
3076	* bits/c++config.h: Fix.
3077
30781999-03-02  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
3079
3080	* bits/c++config.h: New macro, _G_RESOLVE_LIB_DEFECTS, used to put
3081	code in place that diverges from the final standard, but has been
3082	brought up on the library mailing list.
3083
3084	* bits/std_fstream.h(underflow): Position all three internal
3085	buffer pointers at the same initial position. Re-implement with
3086	basic_filebuf abstraction.
3087	(overflow): Ditto.
3088	(seekoff): Ditto.
3089	(seekpos): Ditto.
3090	* bits/std_sstream.h: Move _M_mode down into base class
3091	basic_streambuf.
3092	* bits/sstream.tcc: Ditto.
3093	* bits/std_streambuf.h: Ditto.
3094
3095	* testsuite/27/27filebuf.cc: Tweak.
3096
30971999-02-27  Benjamin Kosnik  <bkoz@slap-happy.cygnus.com>
3098
3099	* bits/std_sstream.h: Ditto.
3100	* bits/std_fstream.h: Fix blip.
3101
31021999-02-26  Benjamin Kosnik  <bkoz@happy.cygnus.com>
3103
3104	* C++STYLE: Add cases.
3105	* bits/std_fstream.h: Format.
3106	* bits/std_streambuf.h: Ditto.
3107	* bits/std_sstream.h: Ditto.
3108
3109	* src/basic_file.cc(sys_seek): Fix stack delirium, by keeping
3110	return type for _IO_file_seek and __basic_file::seek the same size.
3111	* bits/basic_file.h: Ditto.
3112
31131999-02-26  Benjamin Kosnik  <bkoz@happy.cygnus.com>
3114
3115	* bits/fstream.tcc: Add include guards.
3116	* src/misc-inst.cc: Add instantiations for shared libes.
3117	* src/locale-inst.cc: Add instantiaions for use_facet.
3118	* bits/loccore.h: Remove specialization foward decls for
3119	use_facet<ctype>: perhaps add the whole lot of them later on.
3120	* bits/std_fstream.h: Fix.
3121	* bits/locfacets.h: Ditto.
3122	* src/stdstreams.cc: Disable wide streams for now.
3123
3124	* src/Makefile.am (CXXFLAGS): Change up.
3125	* src/Makefile.in (CXXFLAGS): Ditto.
3126
31271999-02-25  Benjamin Kosnik  <bkoz@happy.cygnus.com>
3128
3129	* src/basic_file.cc: Change to ios_base::seekdir from int.
3130	* bits/basic_file.h: Ditto.
3131	* bits/locfacets.h : Fix blip with new guard macros.
3132
31331999-02-25  Benjamin Kosnik  <bkoz@cygnus.com>
3134
3135	* stl/bits/stl_config.h (__STL_USE_STD_ALLOCATORS): Minor tweaking.
3136	* bits/c++config.h: Clean. Remove _G_NO_STREAMBUF_ITERATORS and
3137	_G_USE_NAMESPACE.
3138	* amm1/locale: Remove unused defines.
3139	* generic/locale: Ditto.
3140	* src/ios.cc: Ditto.
3141	* src/locale.cc: Ditto.
3142	* src/locale-inst.cc: Ditto.
3143	* src/localename.cc: Ditto.
3144	* src/stdstreams.cc: And here.
3145
3146	* bits/c++config.h (_G_USE_WCHAR_T): Fix.
3147	* bits/loccore.h: Simplify, clean, add wchar_t guards.
3148	* bits/loccore.tcc: Ditto.
3149	* bits/locfacets.h: Ditto.
3150	* src/locale-inst.cc: Ditto.
3151	* bits/locfacets.tcc: Add do_put long long here.
3152
31531999-02-24  Benjamin Kosnik  <bkoz@cygnus.com>
3154
3155	* bits/std_streambuf.h: Add cached ctype facet, _M_ctype.
3156	* bits/basic_ios.h: Clean. Replace _M_strbuf with
3157	_M_streambuf. Use cached _M_cvt in basic_streambuf.
3158	* bits/std_istream.h: Replace _M_strbuf with _M_streambuf.
3159	* bits/std_fstream.h: Tweak.
3160
3161	* bits/char_traits.h: Remove fpos definitions from here. . .
3162	* bits/fpos.h: New file, put them here. Eventually, this may allow
3163	the severing of char_traits and fpos dependencies.
3164	* src/Makefile.in: Add fpos.h.
3165	* src/Makefile.am: Ditto.
3166	* bits/std_string.h: Add fpos.h include here.
3167	* bits/std_ios.h: And here.
3168
3169	* bits/std_streambuf.h: Change _M_init to _M_initialized.
3170	* bits/ios_base.h: Remove cstdio include.
3171	* bits/std_ios.h: ... Place here.
3172
31731999-02-23  Benjamin Kosnik  <bkoz@loony.cygnus.com>
3174
3175	* src/Makefile.in (CXXFLAGS): Re-add -fvtable-thunks.
3176	* src/Makefile.am (CXXFLAGS): Re-add -fvtable-thunks.
3177
3178	* bits/basic_file.h: Comment, adjust arguments.
3179	* src/basic_file.cc: Ditto.
3180
3181	* bits/std_fstream.h(seekoff): Error is of fpos type, not integral
3182	type: check and convert accordingly. Re-interpet "resultant stream
3183	position" to indicate external byte sequence location, not internal
3184	buffer info.
3185
31861999-02-22  Benjamin Kosnik  <bkoz@loony.cygnus.com>
3187
3188	* mkcshadow: And change copyright here.
3189	* src/Makefile.am (CXXFLAGS): Add -g -O2. Add new header
3190	dependencies for stl_pthread_alloc.h, pthread_allocimpl.h,
3191	stl_thread.h, and stl_iterator_base.h.
3192	* src/Makefile.in (CXXFLAGS): Ditto.
3193	* stl/backward/pthread_alloc.h: Remove.
3194
31951999-02-19  Benjamin Kosnik  <bkoz@loony.cygnus.com>
3196
3197	* bits/std_streambuf.h (sungetc): Use standard defs for putback
3198	position.
3199	* bits/std_fstream.h (pbackfail): Correct.
3200	(sungetc): Test.
3201	(seekoff): Implement.
3202	(seekpos): Re-do.
3203	* testsuite/27/27filebuf.cc: Add test cases.
3204
32051999-02-18  Benjamin Kosnik  <bkoz@loony.cygnus.com>
3206
3207	* bits/std_fstream.h: Go with basic_file's interfaces for dealing
3208	with the external buffers, and stop mucking around with setting
3209	and re-setting the external buf's pointers. Aka, clarity and
3210	simplicity rule the day.
3211	* src/locale.cc: Use memcpy in codecvt::do_in and codecvt::do_out.
3212	Remove partial result and support code.
3213
32141999-02-18  Ulrich Drepper  <drepper@cygnus.com>
3215
3216	* configure.in: Add hypot, hypotf, atan2f, expf, and copysignf to
3217	list of function which have to be replaced.
3218	Remove expf from list of functions to test for.
3219	Define USE_LONG_DOUBLE in case the libm has partial support for long
3220	doubles.
3221	* Makefile.in: Regenerated.
3222	* config.h.in: Likewise.
3223	* configure: Likewise.
3224	* libio/Makefile.am (LIBIO_SRCS): Add missing backslash.
3225	* libio/Makefile.in: Regenerated.
3226	* src/Makefile.in: Regenerated.
3227	* string/Makefile.in: Regenerated.
3228	* math/Makefile.am (EXTRA_DIST): Add hypot.c, hypotf.c, hypotl.c,
3229	atan2f.c, expf.c, and $(EXTRA_yes).
3230	(EXTRA_yes): Add signbitl.c mycabsl.c.
3231	(libmath_la_LIBADD): Add $(EXTRA_$(USE_LONG_DOUBLE)).
3232	(libmath_la_SOURCES): remove long double versions.
3233	* math/Makefile.in: Regnerated.
3234	* math/atan2f.c: New file.
3235	* math/copysignf.c: New file.
3236	* math/expf.c: New file.
3237	* math/hypot.c: New file.
3238	* math/hypotf.c: New file.
3239	* math/hypotl.c: New file.
3240	* math/cargf.c: Use correct function and macro names.
3241	* math/ccos.c: Likewise.
3242	* math/ccosh.c: Likewise.
3243	* math/ccoshf.c: Likewise.
3244	* math/ccoshl.c: Likewise.
3245	* math/cexp.c: Likewise.
3246	* math/cexpf.c: Likewise.
3247	* math/cexpl.c: Likewise.
3248	* math/clog.c: Likewise.
3249	* math/clog10.c: Likewise.
3250	* math/clog10f.c: Likewise.
3251	* math/clog10l.c: Likewise.
3252	* math/clogf.c: Likewise.
3253	* math/clogl.c: Likewise.
3254	* math/copysignf.c: Likewise.
3255	* math/csin.c: Likewise.
3256	* math/csinf.c: Likewise.
3257	* math/csinh.c: Likewise.
3258	* math/csinhf.c: Likewise.
3259	* math/csinhl.c: Likewise.
3260	* math/csinl.c: Likewise.
3261	* math/csqrt.c: Likewise.
3262	* math/csqrtf.c: Likewise.
3263	* math/csqrtl.c: Likewise.
3264	* math/ctan.c: Likewise.
3265	* math/ctanf.c: Likewise.
3266	* math/ctanh.c: Likewise.
3267	* math/ctanhf.c: Likewise.
3268	* math/ctanhl.c: Likewise.
3269	* math/ctanl.c: Likewise.
3270
32711999-02-17  Benjamin Kosnik  <bkoz@cygnus.com>
3272
3273	* testsuite/27/27filebuf.cc: Add cases.
3274	* testsuite/27/27filebuf-1.txt: Remove inadvertent garbage.
3275	* bits/std_streambuf.h: Simplify, always have one return statement.
3276	* bits/std_fstream.h: Tweak comments in underflow.
3277
32781999-02-17  Ulrich Drepper  <drepper@cygnus.com>
3279
3280	* ltmain.sh: Update from libtool 1.2d and fix Solaris problems.
3281	* ltconfig: Likewise.
3282
32831999-02-16  Christophe Pierret  <cpierret@businessobjects.com>
3284
3285	* src/locale.cc: Fix assert.
3286
32871999-02-16  Benjamin Kosnik  <bkoz@cygnus.com>
3288
3289	FIXME: Still need some kind of solution for undefined math symbols.
3290	* src/Makefile.in (locale-inst.lo): Compile with
3291	-fimplicit-templates to fix Solaris link problem.
3292	* src/Makefile.am: Ditto.
3293	* libio/Makefile.in: Add stdfiles.c so that _IO_list_all is defined.
3294	* libio/Makefile.am: Ditto.
3295	* src/locale.cc: Provide some kind of def for _S_tolower.
3296	* bits/locfacets.h: Fix declarations of ctype<wchar_t> to
3297	match ctype<char> for _S_tolower, _S_toupper, _S_table.
3298
32991999-02-10  Benjamin Kosnik  <bkoz@cygnus.com>
3300
3301	* bits/loccore.tcc: Move member-template ctor inline...
3302	* bits/loccore.h: ...here.
3303	* src/locale-inst.cc: Add instantiation here.
3304
3305	* testsuite/27/27stringstream.cc: Tweak.
3306
3307	* bits/ostream.tcc: Include sbuf_iter.h.
3308
3309	* bits/ostream.tcc: Convert *this to ostreambuf_iterator before
3310	passing to num_put, as num_put's first argument is an interator,
3311	not basic_ostream.
3312
3313	* testsuite/make_check_libfree++: New file, runs through the
3314	existing test files in the testsuite directory and makes sure
3315	they link.
3316
33171999-02-10  Brendan Kehoe  <brendan@cygnus.com>
3318
3319	* testsuite/21/21compare.cc: Fix typo.
3320	* src/locale.cc (ctype<wchar_t>::_S_{toupper,tolower,table}):
3321	Don't try to provide non-linux versions, since it's impossible to
3322	initialize their const references with the integer 0, no matter
3323	how we try to cast it.
3324
33251999-02-10  Benjamin Kosnik  <bkoz@cygnus.com>
3326
3327	* bits/std_locale.h: Move std_vector.h dependency.
3328	* bits/std_ios.h: ...from here.
3329	* bits/std_string.h: ...and here.
3330	* src/locale.cc: ..to here.
3331	* bits/loccore.h: Ditto, add vector forward declaration,
3332	make locale::_Impl data members pointers not containers.
3333	* bits/loccore.tcc: Move out-of-line for now.
3334	* bits/locfacets.h: Move vector dependency from here...
3335	* bits/locfacets.tcc: ...to here.
3336	* src/localename.cc: ..and here.
3337	* src/locale-inst.cc: Add include of locfacets.tcc here.
3338
3339	* stl/bits/stl_string_fwd.h: Make __get_c_string non-static.
3340	* bits/basic_string.h: Can't use sizeof on an incomplete type.
3341	* bits/string.tcc: Tweak.
3342	* src/string.cc: And add __get_c_string def here.
3343
3344	* bits/std_fstream.h: Yeah, comment the fill_n idea out as impractical.
3345
3346	* src/stlinst.cc: Add include of stl_config.h.
3347
33481999-02-09  Benjamin Kosnik  <bkoz@cygnus.com>
3349
3350	* stl/bits/std_bitset.h: Update to SGI STL 3.12.
3351	* stl/bits/stl_config.h: Tweak, update.
3352	* stl/bits/std_stdexcept.h: Ditto, change stl_exception to
3353	std_exception.
3354	* stl/bits/std_memory.h: Reconstructed auto_ptr, Ditto.
3355	* stl/bits/std_functional.h: Ditto.
3356
3357	* stl/bits/stl_string.h: New file, SGI's string
3358	implementation. For reference only, corresponding to string in
3359	3.12 source.
3360	* stl/bits/stl_char_traits.h: As above.
3361
3362	* stl/bits/pthread_allocimpl.h: New file corresponding to
3363	pthread_alloc.
3364	* stl/bits/stl_pthread_alloc.h: New file corresponding to
3365	pthread_alloc.h
3366	* stl/bits/stl_threads.h: New file.
3367
3368	Note that SGI STL 3.12's file iterator.h is not used.
3369	* stl/bits/std_iterator.h: Ditto.
3370	* stl/bits/stl_iterator.h: Drop in replace.
3371	* stl/bits/stl_iterator_base.h: New file, drop in replace.
3372
3373	* stl/bits/stl_queue.h, stl_rope.h, stl_set.h, stl_stack.h,
3374	stl_string_fwd.h, stl_tempbuf.h, stl_tree.h, stl_vector.h,
3375	stl_pair.h, stl_multimap.h, stl_multiset.h, stl_list.h,
3376	stl_hashtable.h, stl_hash_set.h, stl_hash_map.h, stl_function.h,
3377	stl_deque.h, stl_alloc.h, stl_algo.h, stl_algobase.h, ropeimpl.h:
3378	Drop-in replace (ie, stop changing __SGI_STL_* to _CPP_BITS_* for
3379	preprocessor guards, but fixup include paths and names according
3380	to new directory layout).
3381
33821999-02-05  Benjamin Kosnik  <bkoz@cygnus.com>
3383
3384	* bits/std_fstream.h: Remove _M_open data member.
3385	* bits/fstream.tcc: Ditto.
3386
3387	* src/locale.cc: Tweak.
3388
3389	* bits/std_sstream.h: Simplify.
3390
3391	* bits/std_streambuf.h: Simplify.
3392	(sputc): Use correct definition of "write area."
3393
3394	* bits/std_fstream.h: Fix uflow.
3395	* src/basic_file.cc: Tweak.
3396	* testsuite/27/27filebuf.cc: Add tests.
3397	* testsuite/27/27filebuf-3.txt: Rename to *-2.txt.
3398
33991999-02-02  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
3400
3401	* bits/ios_base.h: Make protected.
3402
34031999-02-01  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
3404
3405	* bits/ios_base.h: Changes in the class ios_base:
3406	Rename _M_exceptions member to _M_exceptions_data.
3407	Make the member functions rdstate(), clear(), exceptions()
3408	and exceptions(iostate) protected and add the "_M_" prefix.
3409	* src/ios.cc: Ditto.
3410	* bits/basic_ios.h: Adapt the changes from ios_base.
3411
34121999-01-29  Benjamin Kosnik  <bkoz@cygnus.com>
3413
3414	* bits/std_fstream.h: Remove _M_flags, _M_equilibrate  as unnecessary.
3415	* bits/fstream.tcc: Ditto.
3416
3417	* bits/std_fstream.h (underflow): Resize deallocates memory and
3418	resets pointers in the internal cache according to new _M_buf. . dooh!
3419	* src/locale.cc: Mas changes with codecvt::do_in, do_out.
3420
34211999-01-29  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
3422
3423	* stl/bits/std_memory.h:  Modify auto_ptr::reset to reflect the
3424	standard.
3425
34261999-01-28  Benjamin Kosnik  <bkoz@cygnus.com>
3427
3428	* src/locale.cc (codecvt::do_in): Finer-grained tuning to take
3429	into account partial returns.
3430	(codecvt::do_out): Likewise.
3431
3432	* bits/char_traits.h: Change streamsize to be a signed type, as
3433	required by 27.4.1 Types p 2. (Changing to _IO_ssize_t.)
3434	* bits/std_streambuf.h: Make
3435	in_avail() and showmanyc() have streamsize as return types, so
3436	that showmanyc()'s return of eof won't underflow in_avail's return
3437	value and give a bogus result.
3438	* src/misc-inst.cc: And more changes. . .
3439
3440	* bits/std_streambuf.h (basic_streambuf): Add _M_buf_unified to keep
3441	track of joint in/out pointers into the internal buffer.
3442	(sbumpc): Add check for _M_buf_unified.
3443	(sputbackc): Ditto.
3444	(sungetc): Ditto.
3445
3446	* testsuite/27/27filebuf.cc: Add cases.
3447	* testsuite/27/27stringbuf.cc: Add showmanyc case.
3448
3449	* bits/std_fstream.h (close): Fix logic error.
3450	(open): Initialize internal pointers based on _M_buf and _M_buf_size.
3451	(showmanyc): Add underflow component, to match the standard.
3452
3453	* bits/fstream.tcc: Ditto.
3454
34551999-01-27  Benjamin Kosnik  <bkoz@cygnus.com>
3456
3457	* bits/basic_file.h: Match vtables w/ _IO_FILE_plus.
3458	* src/basic_file.cc: Ditto.
3459	* src/Makefile.in: Add -fvtable-thunks to CXXFLAGS: preferred
3460	format for dealing with _IO_file in libio.
3461
34621999-01-27  Ulrich Drepper  <drepper@cygnus.com>
3463
3464	* src/basic_file.cc: Include fcntl.h.
3465
34661999-01-27  Benjamin Kosnik  <bkoz@cygnus.com>
3467
3468	* libio/Makefile.in: Add fileops.lo, genops.lo to objects to debug
3469	libio calls.
3470	* bits/std_streambuf.h: Redefine read posion.
3471
3472	* bits/std_fstream.h: Temporary hack to get vtables working again.
3473	* bits/basic_file.h: Revert.
3474	* src/basic_file.cc: Ditto.
3475	* testsuite/27/27filebuf.cc: Tweak.
3476
34771999-01-26  Benjamin Kosnik  <bkoz@cygnus.com>
3478
3479	* bits/basic_file.h: Add showmanyc, underflow. .
3480	* src/basic_file.cc: Ditto.
3481
3482	* bits/std_fstream.h (showmanyc): Add bits to ping libio to see if more
3483	chars can be read.
3484
3485	* testsuite/27/27filebuf.cc: Add testcases.
3486	* src/basic_file.cc: Add O_CREAT to open calls with
3487	ios_base::trunc as part of the open mode.
3488
34891999-01-26  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
3490
3491	* bits/basic_ios.h: fix basic_ios::exceptions(iostate)
3492
34931999-01-25  Benjamin Kosnik  <bkoz@nabi.net>
3494
3495	* src/ios.cc (clear): Correct typo.
3496	* bits/ios_base.h: Tweak spacing.
3497
34981999-01-25  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
3499
3500	* bits/basic_ios.h: fix basic_ios::fail()
3501
35021999-01-25  Benjamin Kosnik  <bkoz@loony.cygnus.com>
3503
3504	* bits/basic_file.h: Include libioP.h from libio instead of here.
3505	* bits/iolibio.h: Remove.
3506	* bits/libio.h: Remove.
3507
35081999-01-22  Benjamin Kosnik  <bkoz@lunatic.cygnus.com>
3509
3510	* bits/std_fstream.h: Tweak cvt-> in call for newer egcs compilers.
3511
35121999-01-22  Ulrich Drepper  <drepper@cygnus.com>
3513
3514	* Makefile.am (SUBDIRS): Add libio.
3515	* configure.in: Add rule to test for glibc2.
3516
3517	* src/Makefile.am (INCLUDES): Add -I to libio subdir.
3518	(libstdc___la_LIBADD): Add libio.la.
3519
35201999-01-21  Benjamin Kosnik  <bkoz@cygnus.com>
3521
3522	* bits/basic_file.h: Make new abstraction for underlying C library
3523	FILE, named __basic_file.
3524	* src/basic_file.cc: New file.
3525	* bits/os_raw.h: Delete.
3526	* src/os_raw.cc: Delete.
3527	* src/Makefile.in: Tweak.
3528	* src/Makefile.am: Tweak.
3529	* bits/iolibio.h: Add this here, for the time being.
3530	* bits/libioP.h: Ditto.
3531
3532	* bits/ios_base.h: Delete unused defines.
3533	* src/locale.cc (codecvt<char, char, mbstate_t>::do_in): Use
3534	strcpy to copy between the two buffers.
3535
3536	* testsuite/27/27stringbuf.cc: Change license, fix in_avail tests.
3537	* testsuite/27/27filebuf.cc: New file.
3538	* testsuite/27/27filebuf-1.txt: Data file for above test.
3539	* testsuite/27/27filebuf-2.txt: Ditto.
3540
3541	* bits/std_streambuf.h (uflow): Re-implement default.
3542	* bits/std_fstream.h: Set _M_buf_size based on cstdio's BUFSIZ.
3543	Re-implement virtual functions.
3544	* bits/fstream.tcc: Delete unused mf's.
3545
3546