On Wed, Nov 5, 2008 at 10:21 AM, Joerg Schilling
<Joerg.Schilling at fokus.fraunhofer.de> wrote:
> Alfred Peng <Alfred.Peng at Sun.COM> wrote:
>
>> Martin Bochnig wrote:
>> > I like gcc because it has repeatedly helped me to get things working,
>> > which not only would first need to be ported to Studio, but which in
>> > some cases cannot even be ported to Studio at all. Another example is
>> > Qemu.
>> >
>> gcc is the choice for a lot of open source projects on *NIX world. It
>> has so many de facto standards which have been used in development and
>> makes the efforts to port projects to Studio hard. As we go along the
>
> GCC is also the reason for many non-portable software. Software that is 
> written
> in clean C has no problems with Sun Studio. It may cause wrong warnings from
> GCC.
>
> J?rg
>
> --
>  EMail:joerg at schily.isdn.cs.tu-berlin.de (home) J?rg Schilling D-13353 
> Berlin
>       js at cs.tu-berlin.de                (uni)
>       schilling at fokus.fraunhofer.de     (work) Blog: 
> http://schily.blogspot.com/
>  URL:  http://cdrecord.berlios.de/private/ ftp://ftp.berlios.de/pub/schily
>


Sure, I agree with you. That's what GCC(1) offers the [-std=standard]
options for (of course Studio has a limited similar functionality,
which supports less standards unfortunately). However, it is not
GCC(1)'s fault if many folks tend to write code that includes the GNU
extensions, rather than being ansi or cNN clean. Everybody has the
choice. I think blaming GCC(1) for this would be scapegoating. You are
talking about defined dedicated standards. But what I have been
talking about are today's _de-facto_ standards which the GNU/Linux
world has agreed upon, dictates, pushes through and spreads day by
day. What is better, a compiler that adheres to formal standards that
many if not most open-src applications no longer 100% respect anymore,
or a compiler that works out of the box with most free programs
(simply because their authors also use GCC(1) in the first place for
development).
Whether the GNU-extensions are part of a formal standards definition
by whatever official standardization entity, or not: Most of this
world's developers use and rely on them. It is a de-facto standard.
All you and I can do is writing c99 compliant code ourselves. But I
have given up trying to change the entire world at once. So I think
GCC(1) is a quite practical and convenient tool to compile unported
stuff of _most_ others, stuff which may have been written on (and
maybe even exclusively for, which is another problem, sigh) Linux_x86
or *BSD.

In cases where the performance boost of SUNWspro vs. GCC(1) is
astounding, then ok: There (and only there) it might be worth to port
the application. But in my personal experience those cases are hard to
find (I'm not talking about gains of <= 5% here).

%martin

Reply via email to