This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

RE: breaking compatibility


My appologies for letting this thread languish for as long as I did, but I
didn't believe I could make a usefull contribution until I could site
practicle examples of code that used to compile that doesn't any longer... I
had a good idea of what some of these were, but shortly after I wrote this
initial post the gcc/linux port of our product broke, and I just recently
got a chance to get it compiling again with the old compiler.  Now that I
have a building code-base to work from, I feel I am now equipped to
highlight problems that will positively benifit gcc's development...

Unless I hear otherwise (and for my personal convienience) I will bring up
problems (and possible solutions) one at a time... (as I encounter them)...

The first problem I'm having is that I can no longer forward declare istream
as:

	class istream;

since it is now declared as:

	typedef class std::basic_istream<char, std::char_traits<char> > istream;

The easiest work around I can think of for this problem would be to,
instead, declare istream:

	class istream : public std::basic_istream<char, std::char_traits<char> >
{};

This might seem a bit odd, but I am anaware of any problems that it would
present.

All comments welcome,

Loren Osborn
Reflexive Entertainment, Programmer.

-----Original Message-----
From: libstdc++-owner@gcc.gnu.org [mailto:libstdc++-owner@gcc.gnu.org]On
Behalf Of Michael Sokolov
Sent: Tuesday, February 13, 2001 7:10 PM
To: libstdc++@gcc.gnu.org
Subject: Re: breaking compatibility


On Tue, Feb 13, 2001 at 06:16:52PM -0800, Loren Osborn wrote:
> I hate to write in and complain, because I know that gcc is a great piece
of
> software, and know how much it has plowed the way for other open-sourced
> projects, but I've run into some persisting issues with gcc (as it is in
> CVS) that are really starting to annoy me.
>
> I am a computer game developer... I recently ported our current title
> (including the engine that most of our games are based on) to gcc...
> This is not a complete port to a new environment as of yet, but getting
> it to compile and run using gcc is our first step toward cross-platform
> development. The port was non-trivial, but I feel it was well worth the
> effort. (It helped us shake some bugs and ambiguities out of our code.)
>
> Our current source-code tree builds perfectly find with a CVS gcc I have
> at home, from last October... (There are some issues with -O, but that's
> a specific compiler bug... not what I'm writing in about right now)
> At the office I have been building current CVS builds of gcc for the last
> few months, trying to get one to work... (Unfortunately, the template
> support in the current stable gcc isn't advanced enough to handle our
> blitter code, so we are confined to CVS builds).
>
> Beside occasional compiler bugs (which are to be expected with an
> active development tree) most of the reason why our code doesn't
> compile with the current CVS gcc has to do with the folding of
> libstdc++v3 that's begun to be folded into the mainstream over
> the last few months.
>
> It frustrates me greatly that either I'm forced to use old, broken
> versions of gcc, or port our code-base to gcc once again.
>
> Any usefull response welcome,
>
> Loren Osborn
> Reflexive Entertainment, Programmer.

Nathan Myers <ncm@nospam.cantrip.org> wrote:

> You have a third choice: the old, buggy libstdc++-v2 is (IINM) still
there.

Wrong, it has been removed from the tree right before the 3.0 branch.

--
Michael Sokolov
Public Service Agent
International Engineering and Science Task Force

1351 VINE AVE APT 27		Phone: +1-714-738-5409
FULLERTON CA 92833-4291 USA	(home office)

E-mail: msokolov@ivan.Harhan.ORG (ARPA TCP/SMTP)


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]