LD Changes To Implicit DSO Linking Update

Kevin Kofler kevin.kofler at chello.at
Thu Feb 11 05:23:33 UTC 2010


Ryan Rix wrote:

> On Wed 10 February 2010 7:00:42 pm Kevin Kofler wrote:
>> It's not in the interest of the GNU project (which GCC is supposed to be
>> a part of) to make it easy to compile code with other compilers!
> 
> If that is the case it is extremely short sighted of them.

That was a statement of fact, not of policy.

The GCC project's policies used to be based on that when it was controlled 
more directly by the FSF, but since the EGCS merge, the "follow standards" 
camp has basically taken over, which is IMHO quite counterproductive.

A compiler should accept as much code as possible. As long as it UNDERSTANDS 
standards-compliant code (real-world standards-compliant code, not some 
obscure corner-case designed especially to detect the absence of some 
extension which nobody would actually write in a real program), there's no 
need to ENFORCE standards compliance. All such enforcement does is:
* make it easy to migrate to a proprietary compiler,
* make it harder to migrate away from a proprietary compiler, as some of 
them do accept things like lvalue casts (M$VC supports them, for example),
* gratuitously break backwards compatibility,
* make real programmers (who get errors for obscure standardese reasons they 
don't understand when it should be clear what their code is intended to 
mean) angry just to make pedantic language lawyers happy.

As a general rule, it's in a compiler's best interest to accept as much code 
as possible so it's easy to migrate TO that compiler and hard to migrate 
AWAY FROM that compiler. And what's good for GCC is good for Free Software.

        Kevin Kofler



More information about the devel mailing list