This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: 2.7.2.3 and STL
- To: sb at metis dot no (Steinar Bang)
- Subject: Re: 2.7.2.3 and STL
- From: Joe Buck <jbuck at synopsys dot COM>
- Date: Tue, 22 May 2001 11:59:42 -0700 (PDT)
- Cc: gcc at gcc dot gnu dot org
> >> On Mon, 21 May 2001, MALETA,MAREK (A-Germany,ex1) wrote:
> >> > Does gcc 2.7.2.3 support STL ?
> >>
> >> Yes, it supported an old version which you had to install using an extra
> >> package libstdc++ (or was it still part of libg++ back then)?
I wrote:
> > That is incorrect.
>
> > No, libstdc++ 2.7.2.x did not contain the STL in any form. There was a
> > port of the SGI STL that worked with gcc 2.7.2.x, sort of (STLport).
Steinar Bang writes:
> I belive this is incorrect.
I was referring only to libstdc++, not libg++.
> I still have gcc-2.7.2.1 and libg++-2.7.2 installed on a Solaris box,
> under my own home-grown package system. And here include files like
> eg. <vector>, and <set> shows up as installed with libg++-2.7.2 on
> September 26 1996.
>
> No STLPort involved. As far as I can remember this STL implementation
> was based on Stephanov's original HP STL (predecessor of SGI STL?),
> modified to compile with g++.
I don't remember the full details of its origin Unfortunately, the version
you're referring to was rather limited and had many problems. Anyone
stuck with g++ 2.7.2.x should use STLport instead. It's still partly
broken (there's a limit to what you can make g++ 2.7.x compile), but it's
much closer to a full implementation and I did make it work in a serious
application I did in '96 or so.
> Side note/trivia: The <string> class, which is from the Standard C++
> Library rather than STL, was libg++'s own homegrown, refcounting,
> non-thread-safe, implementation of the standard library string, which
> I think is the one that has been with us all the way up to (but not
> including) the libstdc++-v3 library.
Actually, the libstdc++v2 <string> in 2.95.x does have thread-safety on
some architectures (it has atomic updates of the reference count for ia32
and sparc instruction sets, and possibly others).