2000-02-17 Zack Weinberg <zack@wolery.cumb.org>
[official-gcc.git] / libio / NEWS
blob1f3b7781e226799d6e853e17ceb9785bded22c6d
1 *** Major changes in libio for egcs:
3 * Better support for Linux.
5 * Dejagnu testsuite.
7 *** Major changes in libio version 2.7.0:
9 * The data representations of _IO_FILE and streambufs have been modified.
10   The layout of the jump-table table _IO_jumps_t has been re-arranged
11   to match that of a virtual function table of a streambuf.  Therefore,
12   we no longer need a separate _IO_FILE::_jumps pointer;  instead it can
13   be shared with the virtual function table pointer.  In addition to
14   saving space, this also removes the overhead when double indirection
15   was needed, and there are many simplificatons (e.g. we no longer need
16   the builtinbuf class.
18 * The streambuf::uflow virtual has been added, to match the standard.
20 * The ifstream, ofstream, and fstream classes now include the filebuf
21   as a member, rather than being pointed to it.  Various related changes.
23 * Version number changed to generally follow libg++ (and gcc).
25 *** Major changes in libio version 0.66 (released with libg++ 2.6.1):
27 * Some documentation and an example in iostream.texi on how to derive
28  your own class from streambuf.
30 * New functions added to stdio:  getline, detdelim, snprintf, vsnprintf.
31   This is for compatibility with the GNU C library.
33 *** Major changes in libio version 0.65 (released with libg++ 2.6):
35 * _IO_getline and streambuf::sgetline no longer write a '\0' at the end.
37 * A number of improvements to get closer to the ANSI/ISO C++ working
38 paper, such as:
39 - Added (preliminary support for) new ANSI streambuf::uflow virtual.
40 - Added istdiostream and ostdiostream classes.
41 - Added ostream::operator<<(bool) and istream::operator>>(bool&).
43 * More robust (and faster) initialization and cleanup of standard streambufs.
45 * Many small bug fixes, portability improvements, and random enhancements.
47 *** Major changes in libio version 0.63 (released with libg++ 2.5.3):
49 * There is a g++ bug that causes inconsistent name mangling for the
50 assembler name of the virtual function table for the istream class.
51 A work-around has been put into streambuf.h, which will make g++
52 always do the right thing.  Note that this may require you to
53 recompile programs that were incorrectly compiled by g++.
55 * Functions that do printf-style formatting to the unbuffered
56 streams have been optimized to write to a temporary buffer.