public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* Convergence of GCC - slightly off topic
@ 2002-10-02 13:09 yabada badoo
  2002-10-02 19:30 ` kwall
                   ` (3 more replies)
  0 siblings, 4 replies; 9+ messages in thread
From: yabada badoo @ 2002-10-02 13:09 UTC (permalink / raw)
  To: gcc

Hi all

Not wanting to start any flames, but I was
wondering what is the experts take on the
likelyhood of convergence of the various
versions of gcc in the varous linux distributions,
now that 3.2 is getting consistent positive appraise.

The reason for this question is that I do not
consider myself an expert in neither c nor c++,
but I am quite comfortable with both in most
high level situations.

I was hoping to get feedback from seasoned (battered
battle faces :-) c and c++ folks that are more seasoned in dealing with 
sitiations that might expose some of the more thornier aspects of 3.2 with 
respect to the other (older) gcc versions shipped with various linux 
distros.

I am not looking for comments on the ABI changes,
but rather on situations where you know that the older versions give better 
support than 3.2 in terms of language, runtime support and libriaries etc.

Information like this is handy for anyone researching
development and deployment platform strategies.

As I have the luxury of starting with a clean slate
I wanted to tip my toe into this gcc water and see if
any muddy skeletons would be stirred up, or whether
all corpses [have been/can be] given proper burial with
3.2

Would your comments be any different if one was
maintaining some legacy c/c++ project?

What about gcc on other OS that linux?

Thanks for all your valuable help.
Rgds,
Frid

p.s.
#1
I am using hotmail account for practical/personal reasons, I hope you do not 
read anything into it
or feel offended in any way.

#2
(I know that gcc selection for the various distros
is not in the power of anyone but the respective
distros - I am looking for the gcc experts opinions,
not for distro religions. )


_________________________________________________________________
Send and receive Hotmail on your mobile device: http://mobile.msn.com

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Convergence of GCC - slightly off topic
  2002-10-02 13:09 Convergence of GCC - slightly off topic yabada badoo
@ 2002-10-02 19:30 ` kwall
  2002-10-02 19:44 ` Phil Edwards
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 9+ messages in thread
From: kwall @ 2002-10-02 19:30 UTC (permalink / raw)
  To: gcc

On Wed, Oct 02, 2002 at 06:47:28PM +0000, yabada badoo wrote:
> Hi all
> 
> Not wanting to start any flames, but I was
> wondering what is the experts take on the
> likelyhood of convergence of the various
> versions of gcc in the varous linux distributions,
> now that 3.2 is getting consistent positive appraise.

Not an expert, but...

At work, we have BSPs that ship with toolchains using 2.95, 3.0.x, 
and 3.1.x. I'm not aware of any that yet ship with 3.2.x, but that
doesn't mean there aren't any, just that I don't know. "Convergence"
in the sense of "shipping the same version in all the BSPs" would
be nice, in theory, but it isn't even on the map in terms of
possibility. For us, the compiler doesn't stand alone, if you'll
pardon the pun. It depends heavily on GCC's s level of support for 
the target, and how well the compiler, the kernel, and the C library
all play together. 

Kurt
-- 
You're at the end of the road again.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Convergence of GCC - slightly off topic
  2002-10-02 13:09 Convergence of GCC - slightly off topic yabada badoo
  2002-10-02 19:30 ` kwall
@ 2002-10-02 19:44 ` Phil Edwards
  2002-10-02 20:00 ` Hans-Peter Nilsson
  2002-10-03 16:34 ` Joe Buck
  3 siblings, 0 replies; 9+ messages in thread
From: Phil Edwards @ 2002-10-02 19:44 UTC (permalink / raw)
  To: yabada badoo; +Cc: gcc

On Wed, Oct 02, 2002 at 06:47:28PM +0000, yabada badoo wrote:
> Not wanting to start any flames, but I was
> wondering what is the experts take on the
> likelyhood of convergence of the various
> versions of gcc in the varous linux distributions,
> now that 3.2 is getting consistent positive appraise.

One of the goals of 3.2 was precisely that.  Whether the distros do so is
up to them.


> I was hoping to get feedback from seasoned (battered
> battle faces :-) c and c++ folks that are more seasoned in dealing with 
> sitiations that might expose some of the more thornier aspects of 3.2 with 
> respect to the other (older) gcc versions shipped with various linux 
> distros.

The key point is in C++.  Every release of GCC 3.x has been more conformant
to the ISO C++ standard than the release before it.  Programs which predate
the standard may not actually be legal C++ code anymore.

More info on http://gcc.gnu.org/bugs.html#known


Phil

-- 
I would therefore like to posit that computing's central challenge, viz. "How
not to make a mess of it," has /not/ been met.
                                                 - Edsger Dijkstra, 1930-2002

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Convergence of GCC - slightly off topic
  2002-10-02 13:09 Convergence of GCC - slightly off topic yabada badoo
  2002-10-02 19:30 ` kwall
  2002-10-02 19:44 ` Phil Edwards
@ 2002-10-02 20:00 ` Hans-Peter Nilsson
  2002-10-03 16:34 ` Joe Buck
  3 siblings, 0 replies; 9+ messages in thread
From: Hans-Peter Nilsson @ 2002-10-02 20:00 UTC (permalink / raw)
  To: yabada badoo; +Cc: gcc

Even more off-topic answer.  Well, most of it.  You have been
warned.

On Wed, 2 Oct 2002, yabada badoo wrote:
> I was hoping to get feedback from seasoned (battered
> battle faces :-) c and c++ folks that are more seasoned in dealing with
> sitiations that might expose some of the more thornier aspects of 3.2 with
> respect to the other (older) gcc versions shipped with various linux
> distros.
>
> I am not looking for comments on the ABI changes,
> but rather on situations where you know that the older versions give better
> support than 3.2 in terms of language, runtime support and libriaries etc.

Yes.  They are all better.  The GCC team uses a decreasing
quality development model: Any newer release is worse than any
older release. ;-)

Other than that, correct your asm:s, don't cast around, and
don't use naked new-lines in asms.  And don't use ## to stop
macro argument evaluation; only use it to concatenate parts that
become *one* token.

> As I have the luxury of starting with a clean slate
> I wanted to tip my toe into this gcc water and see if
> any muddy skeletons would be stirred up, or whether
> all corpses [have been/can be] given proper burial with
> 3.2

Consider a carreer in horror movie scripts. :-)
(Incidentally, does any of the Jason's here live in Crystal Lake?)

> p.s.
> #1
> I am using hotmail account for practical/personal reasons, I hope you do not
> read anything into it
> or feel offended in any way.

It looks like a spammer account name but other than that I have
nothing against it. :-)

brgds, H-P

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Convergence of GCC - slightly off topic
  2002-10-02 13:09 Convergence of GCC - slightly off topic yabada badoo
                   ` (2 preceding siblings ...)
  2002-10-02 20:00 ` Hans-Peter Nilsson
@ 2002-10-03 16:34 ` Joe Buck
  2002-10-04  8:46   ` David O'Brien
  3 siblings, 1 reply; 9+ messages in thread
From: Joe Buck @ 2002-10-03 16:34 UTC (permalink / raw)
  To: yabada badoo; +Cc: gcc


> Not wanting to start any flames, but I was
> wondering what is the experts take on the
> likelyhood of convergence of the various
> versions of gcc in the varous linux distributions,
> now that 3.2 is getting consistent positive appraise.

We expect that almost all of the GNU/Linux distributions will shortly
(for various definitions of "shortly") be going to a 3.2-compatible
compiler.  I say "compatible" because I expect that each distributor
will probably apply one or more patches to address local problems; in
many cases, those patches are obtained direct from GCC's CVS tree,
or are sitting in gcc-patches waiting for approval, so any forks are
only a temporary matter.

> I was hoping to get feedback from seasoned (battered
> battle faces :-) c and c++ folks that are more seasoned in dealing with 
> sitiations that might expose some of the more thornier aspects of 3.2 with 
> respect to the other (older) gcc versions shipped with various linux 
> distros.

The chief gotcha is that if you have code that has never been compiled by
any compiler other than g++ 2.x or egcs, it probably makes assumptions
that aren't valid C++, such as that the standard classes are in the
global namespace rather than the std:: namespace, or uses interfaces
in libstdc++ that diverged from the standard and have since been removed.
If you have code that already compiles with more than one C++ compiler
you'll have far less trouble.

Because of the more complete standard C++ headers and because performance
tuning isn't complete, 3.2.x (the compiler itself) runs more slowly than
2.95.  The effect is most noticeable for small programs that include
standard headers like <iostream>: you may have just written "Hello, world"
but the compiler has to process tens of thousands of lines of headers.

3.2.1 has a number of bugfixes, many that were found by the people at the
various distros as they tried to build complete distributions with 3.2.
It is planned for Oct 15 release, but that's only a target; don't be
surprised if it is a few days off from that.

> What about gcc on other OS that linux?

There have been more problems on OSes whose object file formats don't
support weak symbols, such as AIX.  The situation there is improving
compared to early 3.x releases.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Convergence of GCC - slightly off topic
  2002-10-03 16:34 ` Joe Buck
@ 2002-10-04  8:46   ` David O'Brien
  0 siblings, 0 replies; 9+ messages in thread
From: David O'Brien @ 2002-10-04  8:46 UTC (permalink / raw)
  To: Joe Buck; +Cc: gcc

On Wed, Oct 02, 2002 at 03:26:31PM -0700, Joe Buck wrote:
> 3.2.1 has a number of bugfixes, many that were found by the people at the
> various distros as they tried to build complete distributions with 3.2.
> It is planned for Oct 15 release, but that's only a target; don't be
> surprised if it is a few days off from that.

With the release coming up so fast, it would be most helpful if one
could get 3.2_branch snapshots.  sourceware only has 3.3 snapshots. :-(

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Convergence of GCC - slightly off topic
  2002-10-03 12:18 Joe Buck
@ 2002-10-03 14:38 ` Matt Austern
  0 siblings, 0 replies; 9+ messages in thread
From: Matt Austern @ 2002-10-03 14:38 UTC (permalink / raw)
  To: Joe Buck; +Cc: yabadabadoo123, gcc

On Thursday, October 3, 2002, at 11:40 AM, Joe Buck wrote:

> Because of the more complete standard C++ headers and because 
> performance
> tuning isn't complete, 3.2.x (the compiler itself) runs more slowly 
> than
> 2.95.  The effect is most noticeable for small programs that include
> standard headers like <iostream>: you may have just written "Hello, 
> world"
> but the compiler has to process tens of thousands of lines of headers.

An addendum: there's active work on the compile time issue;
lots of people care about it, but Apple is especially interested.

One line of attack is making sure that if you have a project with
a hundred files in it then the tens of thousands of lines of code
get processed once when compiling the project, not once for
each file.  Another line of attack is making sure that the time
spent on compiling a source file is proportional to the code that
the user wrote, not proportional to the code in the header.   And
then, as Joe pointed out, there's also ordinary performance
tuning.

We can reasonably expect that future versions of g++ will be much
faster than 3.2 is.

			--Matt

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Convergence of GCC - slightly off topic
@ 2002-10-03 12:18 Joe Buck
  2002-10-03 14:38 ` Matt Austern
  0 siblings, 1 reply; 9+ messages in thread
From: Joe Buck @ 2002-10-03 12:18 UTC (permalink / raw)
  To: yabadabadoo123, gcc

yabadabadoo123@hotmail.com (yabada badoo) writes:

> Not wanting to start any flames, but I was
> wondering what is the experts take on the
> likelyhood of convergence of the various
> versions of gcc in the varous linux distributions,
> now that 3.2 is getting consistent positive appraise.

I expect that almost all of the GNU/Linux distributions will shortly
(for various definitions of "shortly") be going to a 3.2-compatible
compiler.  I say "compatible" because I expect that each distributor
will probably apply one or more patches to address local problems; in
many cases, those patches are obtained direct from GCC's CVS tree,
or are sitting in gcc-patches waiting for approval, so any forks are
only a temporary matter.

> I was hoping to get feedback from seasoned (battered
> battle faces :-) c and c++ folks that are more seasoned in dealing with 
> sitiations that might expose some of the more thornier aspects of 3.2 with 
> respect to the other (older) gcc versions shipped with various linux 
> distros.

The chief gotcha is that if you have code that has never been compiled by
any compiler other than g++ 2.x or egcs, it probably makes assumptions
that aren't valid C++, such as that the standard classes are in the global
namespace rather than the std:: namespace, or uses interfaces in libstdc++
that diverged from the standard and have since been removed.  This means
that you may need to fix your code.  If you have code that already
compiles with more than one C++ compiler you'll have far less trouble.

Because of the more complete standard C++ headers and because performance
tuning isn't complete, 3.2.x (the compiler itself) runs more slowly than
2.95.  The effect is most noticeable for small programs that include
standard headers like <iostream>: you may have just written "Hello, world"
but the compiler has to process tens of thousands of lines of headers.

3.2.1 has a number of bugfixes, many that were found by the people at the
various distros as they tried to build complete distributions with 3.2.
It is planned for Oct 15 release, but that's only a target; don't be
surprised if it is a few days off from that.

> What about gcc on other OS that linux?

There have been more problems on OSes whose object file formats don't
support weak symbols, such as AIX.  The situation there is improving
compared to early 3.x releases.  3.2.1 has a number of powerpc-specific
bugfixes.


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Convergence of GCC - slightly off topic
@ 2002-10-02 14:50 Robert Dewar
  0 siblings, 0 replies; 9+ messages in thread
From: Robert Dewar @ 2002-10-02 14:50 UTC (permalink / raw)
  To: gcc, yabadabadoo123

<<Not wanting to start any flames, but I was
wondering what is the experts take on the
likelyhood of convergence of the various
versions of gcc in the varous linux distributions,
now that 3.2 is getting consistent positive appraise.
>>

Sounds like you shoudl ask the various GNU/Linux (note terminology please)
vendors this question, since it has to do with their commercial requirements
and perspectives.

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2002-10-04 15:22 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-10-02 13:09 Convergence of GCC - slightly off topic yabada badoo
2002-10-02 19:30 ` kwall
2002-10-02 19:44 ` Phil Edwards
2002-10-02 20:00 ` Hans-Peter Nilsson
2002-10-03 16:34 ` Joe Buck
2002-10-04  8:46   ` David O'Brien
2002-10-02 14:50 Robert Dewar
2002-10-03 12:18 Joe Buck
2002-10-03 14:38 ` Matt Austern

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).