This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Using of parse tree externally


> > I would personally love to see the front end be made available in an API
> > for work on tools such as the AST Toolkit or ASTLOG
> 
> The organization that owns gcc fears nothing more than making gcc's front
> ends available as an API.  The reason is that gcc is the most demonstrable
> example of the "GNU public virus" in action: organizations that originally
> did not want to make their code free made it free because there wasn't
> another practical choice.  That's why GNU has a free C++ and Objective-C
> compiler today, and that's also why a number of the free back ends exist.
> RMS feels that if we do what you want, we will quickly see proprietary
> processor-specific backends that outperform gcc on specific processors
> (not hard if you make a non-portable compiler) using the GNU front ends.

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".

Without such a clause, there is _nothing_ stopping any entity from
creating a patch to GCC which provides said intermediate output, GPL'ing
_that_, and then using the front ends in a proprietary manner such as
you describe.  The mere non-existence of an API or compiler option to
generate intermediate output such as parse trees or some such really
does not prevent your nightmare scenario.  Only the license could do
that.

--
George T. Talbot
<george at moberg dot com>

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]