This is the mail archive of the libstdc++@sourceware.cygnus.com mailing list for the libstdc++ project. See the libstdc++ home page for more information.


[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index] [Subject Index] [Author Index] [Thread Index]

libstdc++-2.90.2 announcement



October 30, 1998

We are pleased to announce the third snapshot of the rewritten 
Egcs Standard C++ Library v3.  This is mainly a developer snapshot.  
The following is abstracted from the release notes.

------------------------------------------------------

This is the third snapshot of the libstdc++ rewrite.  It is still 
incomplet and incorrekt.  

This snapshot is exciting because it is actually usable, more or
less.  A configure/make/make install will actually create something
you can build real programs against.  "hello, world" works! 

It requires a recent snapshot version of Egcs.  (E.g. Egcs-1.1 may 
be insufficient.)  

Basic output operations now work, including integer output formatting 
(operator<< via num_put<>::put) but input has not been implemented yet. 
We have an efficient and usable copy-on-write basic_string<>. The STL 
is mostly unchanged from the last snapshot.  Gabriel Dos Reis's valarray 
has had minor improvements.

What works: (noted with the chapter # of the draft standard)
-----------

 - exceptions, op new etc. (18, 19)
 - SGI-STL release 3.11 utilities, containers, algorithms, and iterators.
   (20,23,24,25), and ostreambuf_iterator<>.
 - basic_string<> (21)
 - locale, some facets (ctype, num_put, collate), stubs for the rest. (22)
 - Gabriel dos Reis's valarray<>, and Drepper's complex<>.  (However, 
   note that numeric_limits<> is not tailored for your target.  You 
   must do that by hand.) (26)
 - ios_base, basic_ios<>, basic_streambuf<>, ostream<>, operator<<
   for integers, strings. (27)

What doesn't:
-------------

 - istream, stringstream, operator>>, op<<(double), etc. (27)
 - Most facet implementations are stubs.  (22)
 - No optimizations for small-footprint/low-overhead. (22,27)
 - C headers are not wrapped in std:: namespace; C macros are
   not shadowed.
 - It has not been audited for standard conformance in the areas that
   do work.
 - It has not been made thread-safe.
 - There has been some work to wrap the C headers in namespace std::,
   but it is not complete yet, and probably depends on compiler changes
   that may appear in -fnew-abi.

How to participate:
-------------------

Read:

 - RELEASE_NOTES - this file
 - README        - directory structure
 - HEADER_POLICY - header naming and sub-include structure
 - DESIGN        - overview of the implementation plan
 - TODO          - tasks
 - C++STYLE      - coding style by example
 - BADNAMES      - names to avoid because of potential collisions
 - LICENSE.STD   - the terms of use

The license is similar to, but weaker than, LGPL.  This weakening 
is necessary because the LGPL terms don't work for a library which 
is substantially composed of inline functions and templates; there's 
no simple boundary to make it easy to say "this is library, this is
program".  Thus, like the LGPL it permits linking with the library 
without publishing source code for the whole program, but it does 
not require that users of a program be able to relink with their own 
version of the library.  However, unlike the BSD license, it doesn't 
allow embargoing changes.  Subsequent releases may be under a license
more like LGPL/Gnat's, but details are still being worked out.

The STL portion of the library, under the stl/ directory, is under
a much weaker license specified by HP and SGI, that only requires
that the copyright notices not be stripped off.

Any patches accepted must be assigned under the same copyright terms.
Please contact Brendan Kehoe <brendan@cygnus.com> for further details.

Contact:
--------

Places have changed from previous snapshots.  The web page is now at

  http://sourceware.cygnus.com/libstdc++/

You can join the mailing list by sending "subscribe" to

  libstdc++-v3-request@cygnus.com
   
Obtain the library snapshot (including these release notes) from

  ftp://sourceware.cygnus.com/pub/libstdc++/

The library is maintained by Benjamin Kosnik, Nathan Myers and 
Ulrich Drepper.  Correspondence will be handled on the mailing
list.  We plan to have a separate announcement list soon and, once 
we get the license terms wrestled down, a public CVS archive.