This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Using of parse tree externally
- To: kenner at vlsi1 dot ultra dot nyu dot edu, gcc at gcc dot gnu dot org
- Subject: Re: Using of parse tree externally
- From: Linus Torvalds <torvalds at transmeta dot com>
- Date: Thu, 12 Oct 2000 12:19:27 -0700
- Newsgroups: linux.egcs
In article <10010121834.AA02856@vlsi1.ultra.nyu.edu> you write:
> I'm sure the GCC license could be modified in such a way to say, in
> effect, "In addition to re-use of GCC source code, any code which
> utilizes, in any way, any intermediate output of the compiler, such as
> the parse tree or RTL, or any code which links against sections of
> GCC, shall fall under the GPL".
>
>What is your legal basis that such a clause would be enforeable?
Even more importantly - _if_ such a clause would be enforcable, it would
be a law that the FSF, the EFF, and anybody with an ounce of selfrespect
should try to overturn.
Proprietary file formats are _evil_. And they are evil whoever creates
them: the FSF would be extremely hypocritical if it were to claim that
"it's not evil because it's proprietary only to non-GPL'd programs".
On the other hand, I do personally hope that the FSF will end up
re-considering some of these issues, because of the technical problems
and limitations that the current stance holds. If somebody were to
generate a good internal tree representation that the gcc backend could
use, that would be a good thing, and would probably help gcc itself.
Look at all the current Ada discussion, and imagine if it could be
solved by having a nice intermediate format that would allow people to
work together without having to work on the same repository.
There's also obviously the simple legal issue: if somebody actually
wants to fork gcc, and create a gcc that prints out the parse tree
externally, the FSF simply doesn't have any legal power to stop them.
The GPL notion of "freedom" works both ways, something that some people
seem to have a hard time accepting. True freedom means that not
everybody has to agree. Once somebody were to start using such a
modified gcc, the cat would be out of the bag, and the FSF would look
rather silly to try to suppress it.
Of course, that doesn't mean that the FSF/Cygnus/RedHat would want to
_help_ such an effort. But look at where too much inflexibility took gcc
a few years ago - and I hope people are less inflexible these days. I
think the egcs split was all to the best, but making a habit of
splitting is probably not a good idea.
[ That said, I pretty much agree with the FSF stance, I just think it's
an opinion held a bit too religiously. Generating an efficient and
good intermediate format is damned hard, if not impossible. So there
are probably good technical reasons why people don't want to go down
that path ]
Linus