Re: [PATCH] Remove more gcc extension usage.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Quoting Jan-Benedict Glaw <jbglaw@xxxxxxxxxx>:

> Why should we jump through the hoops to support an obsolete standard
> because proprietary compilers don't stand today's standards?

Because we want git to run on such systems, and asking to compile gcc first is
too much to ask for.

There are still missing or broken C99 features in the current gcc:
http://gcc.gnu.org/c99status.html

Why do we want to avoid C99 features broken in gcc?  Because we want users to be
able to compile git with today's gcc, and installing a different compiler
(proprietary or even free) to compile git is too much to ask for.

Maybe if cvsup compiled with gcc, we would be using cvsup backend for git now. 
Or maybe cvsup would develop to take the niche currently occupied by git.  But
cvsup was written in Modula 3, perhaps a superior language compared to C.  You
would have to compile a Modula 3 compiler and a Modula 3 library just to be
able to compile cvsup.  The necessary software was free, but compiling it was
not trivial.  Let's see, where is cvsup now?  How popular is it?

After all, it's a trade-off between ease of coding and ease of installing.  Make
coding too hard, and the developers will go elsewhere.  Make installation too
hard, and the project starts losing users.  And who wants to contribute to an
unpopular project?

Going all the way to strict c89 could be too much, but fixing initializers in a
few places is a minor issue.  Users of the Sun's compiler can expect us to do
such changes, just like users of gcc would ask to fix a program that uses c99
features not yet available in gcc.

--
Regards,
Pavel Roskin
-
: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]