NEWS   [plain text]

*** Major changes in libio for egcs:

* Better support for Linux.

* Dejagnu testsuite.

*** Major changes in libio version 2.7.0:

* The data representations of _IO_FILE and streambufs have been modified.
  The layout of the jump-table table _IO_jumps_t has been re-arranged
  to match that of a virtual function table of a streambuf.  Therefore,
  we no longer need a separate _IO_FILE::_jumps pointer;  instead it can
  be shared with the virtual function table pointer.  In addition to
  saving space, this also removes the overhead when double indirection
  was needed, and there are many simplificatons (e.g. we no longer need
  the builtinbuf class.

* The streambuf::uflow virtual has been added, to match the standard.

* The ifstream, ofstream, and fstream classes now include the filebuf
  as a member, rather than being pointed to it.  Various related changes.

* Version number changed to generally follow libg++ (and gcc).

*** Major changes in libio version 0.66 (released with libg++ 2.6.1):

* Some documentation and an example in iostream.texi on how to derive
 your own class from streambuf.

* New functions added to stdio:  getline, detdelim, snprintf, vsnprintf.
  This is for compatibility with the GNU C library.

*** Major changes in libio version 0.65 (released with libg++ 2.6):

* _IO_getline and streambuf::sgetline no longer write a '\0' at the end.

* A number of improvements to get closer to the ANSI/ISO C++ working
paper, such as:
- Added (preliminary support for) new ANSI streambuf::uflow virtual.
- Added istdiostream and ostdiostream classes.
- Added ostream::operator<<(bool) and istream::operator>>(bool&).

* More robust (and faster) initialization and cleanup of standard streambufs.

* Many small bug fixes, portability improvements, and random enhancements.

*** Major changes in libio version 0.63 (released with libg++ 2.5.3):

* There is a g++ bug that causes inconsistent name mangling for the
assembler name of the virtual function table for the istream class.
A work-around has been put into streambuf.h, which will make g++
always do the right thing.  Note that this may require you to
recompile programs that were incorrectly compiled by g++.

* Functions that do printf-style formatting to the unbuffered
streams have been optimized to write to a temporary buffer.