Tue Mar 10 18:12:57 1992  Per Bothner  (bothner@cygnus.com)

	* Makefile.in:  Make version 0.70 for libg++ release.

Fri Mar  6 16:51:35 1992  K. Richard Pixley  (rich@cygnus.com)

	* Makefile.in: bump version to .69  (good number).

Fri Mar  6 15:01:10 1992  Per Bothner  (bothner@cygnus.com)

	* filebuf.C:  Include <sys/types>.
	* strstream.C:  Add casts to avoid compiler warnings.
	* stdio/stdio.h (putc):  Fix to evaluate char argument once only.

Thu Mar  5 18:07:47 1992  Per Bothner  (bothner@cygnus.com)

	* setvform.C:  Some minor changes to remove compiler warnings.

Tue Mar  3 16:50:36 1992  Per Bothner  (bothner@cygnus.com)

	* iostream.C:  Include stdio.h.

	* __vsbprintf.C renamed to sbufvform.C.
	* __vsbscanf.C renanmed to sbufvscan.C.
	* Makefile.in:  Reflect previous changes.
	* TODO:  Update.

Sun Mar  1 16:48:08 1992  Per Bothner  (bothner@cygnus.com)

	* __vsbscanf.C:  Add some initializations to avoid compiler
	warnings.
	* iostream.C (read_int):  Fix two logic errors.
	* streambuf.h:  Add macros to avoid duplicating magic numbers.
	* streambuf.C:  Move definitions of standard streambufs
	and streams to new files stdstrbufs.C and stdstreams.C.
	* Makefile.in:  Add stdstrbufs.o and stdstreams.o.
	* stdio/stdio.h:  Add define of size_t, and fix that of fpos_t.
	* stdio/vfprintf.C:  Fix use of __STDIO_VA to _G_va_list.

Thu Feb 27 06:14:33 1992  K. Richard Pixley  (rich@rtl.cygnus.com)

	* Makefile.in: removed a stray rm -f

Wed Feb 26 12:05:17 1992  Per Bothner  (bothner at cygnus.com)

	* filebuf.C:  On close(), don't zero *all* the flags.
	* ioconfig.h, streambuf.C: Configuration tweeaks.
	* streambuf.h:  Use _G_config.h to get configuration
	parameters.
	* streambuf.h:  Change _width and width() to
	take/return ints, not longs.
	* makebuf.C:  Replace test for VMS by generic NO_ST_BLKSIZE.
	* igetline.C:  istream::get and istream::getline
	should set the failbit it no characters are extracted.
	* sgetline.C, __vsbscanf.C:  Add some casts.
	* iostream.h:  Complicate istream::get() and istream::peek()
	to set and test state flags.
	* iostream.h:  Add hex(), dec(), and oct() manipulators.
	* iostream.h:  Add 'extern' or 'inline', as appropriate.
	* streambuf.h, iostream.h, iostream.C, strstream.C, strstream.h,
	__vsbprintf.C, __vsbscanf.C:  Use _G_size_t and _G_va_list
	macros from _G_config.h.
	* strstream.C, strstream.h: Add strstreambuf::underflow().
	* strstream.C:  Always set get pointers when constructing.
	* Makefile.in:  Copy in _G_config.h when making a distribution.

Thu Feb 20 21:22:38 1992  Per Bothner  (bothner at cygnus.com)

	* stdio/Makefile, test/Makefile:  Use new IO_RELPATH and
	IO_SRCDIR macros (useful for standalone distributions of
	iostreams without the rest of libg++).

	Add various methods to enable compilation of InterViews.
	* iostream.h, iostream.C:  Add istream::ignore method
	and iostream::iostream(streambuf* sb, ostream* tied).
	* iostream.h:  Add {i,io}stream::peek methods.
	* streambuf.h:  Make filebuf::sync() public.
	* streambuf.h:  Add input, output, and append enum
	values in _STREAM_COMPAT mode.
	* strstream.{h,C}:  Add strstream class.

Wed Feb 19 16:14:17 1992  Per Bothner  (bothner at cygnus.com)

	* Makefile.in:  Bumped to version 0.62.  Hack 'dist' rule.
	* README:  Minor updates. (More needed.)
	* ioprivate.h:  Replace #include <std.h> by standard includes.
	* parsestream.C, fstream.C:  Remove redundant #include <std.h>.
	* streambuf.h, fstream.h:  Made a number of methods 'const'.
	* indstream.C:  Added missing indirectbuf::seekpos.
	* ioconfig.h, makebuf.C:  Some fixes for rs6000 and VMS.
	* strstream.[hC]:  Removed unneeded indirection
	for various fields of strstreambuf.
	* strstreambuf.C (strstreambuf constructor):  Re-wrote
	and commented kludge for handling negative size argument.
	* strstream.[hC]:  Added strstreambuf::seekoff method.
	* streambuf.C:  Allow _vt.filebuf as well as _vt$filebuf
	as assembler label of filebuf's virtual table.
	* __vsbprint.C:  Handle write errors.

Sat Feb 15 12:50:09 1992  Per Bothner  (bothner at cygnus.com)

	* fstream.h:  Remove #pragma once.

	* Makefile.in:  Bump to version 0.61.
	* stream.[Ch]:  Change format arg from (char*) to (const char*).

	* fstream.h:  Fix typo __GNU_G__ -> __GNUG__.

Sat Feb  8 13:39:04 1992  Per Bothner  (bothner at cygnus.com)

	* iostream.C (ws):  This time it should work!

Fri Feb  7 11:27:13 1992  Per Bothner  (bothner at cygnus.com)

	* Makefile.in:  Bumped version number to 0.60.
	Re-write 'dist' rule to work better within libg++ source tree
	(e.g. use $(srcdir); add configure).
	* iostream.h (istream::ipfx()):  Set ios::failbit if !good().
	* iostream.C (ws):  Re-write to use ipfx1().

Tue Feb  4 16:42:15 1992  Per Bothner  (bothner at cygnus.com)

	* iostream.C (read_int):  If eof and no values,
	set eofbit as well as failbit.
	* iostream.C (ws):  On eof, set failbit as well as eofbit.

	* editbuf.[Ch]: New method edit_streambuf::set_current().
	* streambuf.h, iostream.[Ch], __vsbscanf.C, __vsbprintf.C:
	Define and use _IO_VA_LIST instead of va_list.
	(Using va_list causes namespace problems.)
	* streambuf.[Ch]:  Make streambuf::flush_all() return an int
	(for the benefit of stdio/fflush()).
	* Makefile.in:  Also make stdio.

Sat Feb  1 12:44:36 1992  Per Bothner  (bothner at cygnus.com)

	* igetline.C (istream::gets):  Set failbit if eof and no data.

	* iostream.{h,C}:  Add istream::read(void*,int) and
	ostream::write(const void*,int).  Flesh out
	istream::read(char*, int) and ostream::write(const char*,int)
	a bit, move them to iostream.C, and make the other
	overloaded variants be inline functions with casts.

Fri Jan 31 17:02:53 1992  Per Bothner  (bothner at cygnus.com)

	* filebuf.C (filebuf::close()):  _un_link() a file
	when closing it.

Thu Jan 30 23:32:02 1992  Per Bothner  (bothner at cygnus.com)

	* streambuf.C:  Move #pragma implementation earlier in the file.
	* Makefile.in (install-include-files):  Re-write;
	the previous form broke for some reason under Ultrix..	

Wed Jan 29 12:01:58 1992  Per Bothner  (bothner at cygnus.com)

	* fvwrite.[hC]:  Removed.
	* __vsbprintf.C:  Removed __sbvwrite, __sbprint, and all
	of the struct __suio junk (from the BSD stdio implementation).
	* ioprivate.h:  Use new/delete for buffers, not malloc/free.
	* stream.C:  Remove default argument duplication (makes
	cfont happier).
	* streambuf.h:  Added protected methods to access the privately
	inherited __streambuf fields.  This should remove most of
	visibility violations (reported by a cfront user).
	* filebuf.C, strstream.C:  Use these new protected methods.
	* streambuf.[Ch]:  Make flush_all a static member of
	streambuf, and added streambuf::flush_all_linebuffered().
	* iostream.h:  Add struct Iostream_init for AT&T compatibility.
	* strstream.C (strstreambuf::overflow):  Minor tweaking.
	* iostream.[hC], strstream.[Ch], parsestream.[Ch], editbuf.[Ch]:
	Surround #pragmas by #ifdef __GNUG__.

Sun Jan 26 19:20:26 1992  Per Bothner  (bothner at cygnus.com)

	* iostream.h, igetline.C:  Add istream::gets().

Fri Jan 24 23:53:24 1992  Per Bothner  (bothner at cygnus.com)

	* SFile.C, SFile.h:  New files, based on old stream-based versions.
	* Makefile.in, depend, configure.in:  Move some make rules to
	../Make.defs.  Use 'make depend.'
	* iostream.[hC]:  Define an iostream class.  This uses coercions
	(that might not work on all compilers), instead of virtual bases.
	* fstream.[hC]:  Derive fstream from iostream.
	* iostream.[hc}, PlotFile.C: Changed all operator<< and operator>>
	unary member functions into binary non-member functions.
	* streambuf.[Ch], editbuf.[Ch], indstream.[Ch]: Correct return
	type of streamuf::seekoff and ::seekpos virtual methods
	to streampos (was streamoff).
	* filebuf.C (filebuf::seekoff):  Major changes.  Now
	it should work most of the time ...
	* iostream.[Ch]:  Add seek[pg] and tell[pg] methods.
	* iostream:  Made count value for read() and write() methods
	consistently have type 'int' (until ANSI changes it to size_t)!
	* streambuf.h, iostream.C:  Replace {i,o,io}stream::close()
	methods with a 	single ios::close method (that is only enabled
	if _STREAM_COMPAT).
	* __vsbprintf.C (__cvt_double):  Fixed bug in %g format.
	* __vsbscanf.C:  Fix casts to use fully prototyped types.
	* fstream.h, iostream.[Ch], streambuf.[Ch]: Add some
	more _STREAM_COMPAT compatibilty functions.
	* strtoul.C:  Change type of variable to avoid warnings.
	* streambuf.C (streambuf::sputn, streambuf::sgetn):  Made more
	robust (don't assume that _epptr >= _pptr -- which isn't true for
	line-buffered filebufs).

Thu Jan 16 17:07:46 1992  Per Bothner  (bothner at cygnus.com)

	* __vsbprintf.C, streambuf.h, iostream.C, stream.C: Change
	__vsbprintf to streambuf::vform method.
	* __vsbscanf.C, streambuf.h, iostream.C: Change __vsbscanf to
	streambuf::vscan method.
	* __vsbprintf.C, iostream.C:  Added helper class help_streambuf,
	used by new function help_vform.  This is used to give a
	temporary buffer to an unbuffered file.
	* instream.h, indstream.C:  New indirectbuf subclass of streambuf
	is just a "forwarding pointer" to another streambuf.
	* Makefile.in:  Add new indstream.[Ch].
	* iostream.C:  Use streambuf::set(XX) instead of
	streambuf::clear(rdstate()|XX) in various places.
	* streambuf.h, streambuf.C, iostream.h, iostream.C, editbuf.C:
	Rename streambuf::xsputn and streambuf::xsgetn back to sputn
	and sgetn.  I seem to have been misled by a typo in the ANSI draft.
	* streambuf.h, filebuf.C: Add filebuf::sputn and filebuf::sgetn
	as hooks for future optimization.
	* streambuf.C (streambuf::sputn and streambuf::sgetn):
	Re-write to be more efficient.
	* streambuf.C, iostream.C:  Define the _STREAM_COMPAT macro
	before 	including ioprivate.h to force compilation of out-lined
	functions that might be needed by libg++.
	* strtoul.C:  Use 'base' in place of 'radix' variable.
	Fix in various minor ways for ANSI compliance.
	* fstream.C (open methods and constructors):  Made sure to
	set(ios::badbit) if open failed.
	* ioprivate.h:  Remove declarations of removed functions.
	* filebuf.C (filebuf::~filebuf):  Fix '=' for '=='.

Sun Jan  5 01:18:06 1992  Per Bothner  (bothner at cygnus.com)

	* Makefile.in (install_include_files):  Various fixes.

Sat Jan  4 23:44:55 1992  Per Bothner  (bothner at cygnus.com)

	* Makefile.in:  Add install-include-files rule,
	and tweak the *clean rules.
	* fstream.h, fstream.C:  Make filename parameter (in constructors
	and open() methods) be const, following ANSI,
	* streambuf.h, streambuf.C, iostream.h, iostream.C, editbuf.C,
	__vsbprintf.C, __vsbscanf.C: Rename  streambuf::xsput() -> xsputn()
	and sgetn() to xsgetn(), and make them virtual, following ANSI draft.
	* streambuf.h, streambuf.C: Add streambuf::ungetfail() (from ANSI).
	* PlotFile.h, PlotFile.C:  Quickie translations of old
	stream-based version of PlotFile class.	

Fri Jan  3 16:14:07 1992  Per Bothner  (bothner at cygnus.com)

	* Makefile.in:  List include files in three categories:
	INTERNAL_INCLUDES (private to the implementation),
	COMPAT_INCLUDES (to improve compatibility with olf stream
	library), and USER_INCLUDES (new public interface files).
	These, and the new put_io_files rule will help to a libg++
	that incorporates the iostream library.
	* stream.h:  Add _STREAM_COMPAT flag to request
	maximum compatility with old libg++ stream library.
	Add WS as a synonym for ws.
	* streambuf.h, iostream.h: Add extra junk if _STREAM_COMPAT
	flag is set (presumably by stream.h).
	* istream.h, ostream.h:  Added for compatibility with old
	libg++ stream library.
	* streambuf.h, streambuf.C, iostream.h: Add streambuf::sungetc()
	and istream::unget() (recently added to ANSI C+ library draft).

Thu Jan  2 22:51:25 1992  John Gilmore  (gnu at cygnus.com)

	* Makefile.in:  Set .SUFFIXES, and make "clean" recurse.  Ordinary
	builds do not recurse yet, FIXME, since I don't know what is
	intended here.

Tue Dec 31 16:48:38 1991  Per Bothner  (bothner at cygnus.com)

	Accumulated bug-fixes, many sugested by various net-people.
	* streambuf.h, streambuf.C:  Push data fields of ios into a new
	super-class _ios_fields.  This makes it cleaner to define
	cin/cout/cerr without duplication.
	* streambuf.h, filebuf.C, parsestream.h, parsestream.C,
	editbuf.h, editbuf.C, stdio/fseek.C:  Change use of seek_dir
	type to _seek_dir typedef, because while the correct type is
	ios::seek_dir, some compilers (including g++ version 1.xx)
	can't hack that.
	* streambuf.h (ios::setf):  Fix semantics to return complete
	old value, not just the masked part.
	* ioprivate.h, streambuf.C, filebuf.C, strstream.C, parsestream.C,
	makebuf.C:  Use new USE_MALLOC_BUF/ALLOC_BUF/FREE_BUF macros to
	control if streambuf buffers should use malloc/free or new/delete.
	For now the default is to use malloc/free, but that will change.
	* streambuf.C, filebuf.C, fstream.C, strstream.C, igetline.C,
	parsestream.C;  Removed duplicate default parameter values
	(to make cfront happy).
	* iostream.C (ios::basefield, ios::floatfield, ios::adjustfield):
	Remove duplicate (and technically illegal) static prefix.
	* iostream.C (read_int):  Fix test for when none of the
	dec/oct/hex flags are set.
	* iosteam.C (write_int):  Fix bugs.
	* iosteam.C (ws):  Set eofbit on EOF.
	* ioconfig.h, streambuf.C:  Provide more portable hook to filebuf
	vtable. (Now handles both cfront and g++.)
	* sgetline.C (streambuf::sgetline), __vsbprintf.C, __vsbscanf.C:
	Add/fix casts.
	* local.h:  Remove obsolete file.
	* editbuf.h, editbuf.C:  Change edit_mark::new_mark method to
	be edit_mark::edit_mark constructor.
	* __vsbscanf.C:  Add missing *p++ = c.
	* makebuf.C:  Re-formatted.
	* Makefile.in, configure.in:  New files, to fit into
	general libg++ configuration.
