New GCC Runtime Library Exception

Ian Lance Taylor iant@google.com
Thu Jan 29 16:16:00 GMT 2009


Florian Weimer <fw@deneb.enyo.de> writes:

> * Ian Lance Taylor:
>
>> Florian Weimer <fw@deneb.enyo.de> writes:
>>
>>> The difference is that the front end does not work on source code, but
>>> Java bytecode, which seems closer to intermediate representation than
>>> to a "high-level, non-intermediate language".
>>
>> I think it is clear that Java bytecode, which can even be executed
>> directly by some microprocessors, is not a "compiler intermediate
>> representation."
>
> It is often used as some form of portable IR, to implement additional
> functionality on the Java platform.

An IR is not the same as a "compiler intermediate representation."


>>> Other cases are rather unclear, too.  A hypothetical QPL-licensend
>>> compiler which links against libgcc (Objective Caml apparently
>>> doesn't) cannot produce an Eligible Compilation Process because it is
>>> a work based on GCC (thanks to libgcc), and not everything is
>>> GPL-licensed.  Interpreters capable of producing ELF binaries might
>>> also be affected by a similar issue.
>>
>> Your argument here seems to be that linking against libgcc makes a
>> program be covered by the definition of "GCC" in the runtime library
>> license.
>
> Right.  Why do you think this would not be the case?  libgcc is part
> of GCC, so a program linking to libgcc is a derivative work of libgcc,
> and therefore GCC.  That's precisely why we need an exception in the
> first place because this outcome is not desired (a free operating
> system could not distribute compiled binaries of C++ programs using
> OpenSSL, for instance--in contrast to proprietary operating systems,
> the system library exception cannot be used).

That is the cycle which the runtime library license is intended to
break, so now I'm just confused.

Ian



More information about the Gcc mailing list