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: GCC Needs a backend cleanup and complete rewrite


On Thursday 22 February 2001 02:57, Phil Edwards wrote:
> On Thu, Feb 22, 2001 at 05:53:33PM -0800, James Buchanan wrote:
> > Nice little bombshell for ya. GCC is a bloody mess. Just where is one
> > supposed to start in building a new front end is a pressing one, since
> > even the scant documentation available doesn't really shed much light on
> > the issue.
>
> Nobody knows.  The few people who have managed to figure it out voluntarily
> had themselves committed to an asylum shortly after code checkin.
>
> > Maybe an object-oriented, Standard C++ implemented GCC release 5 which is
> > a complete rewrite is called for, with teams of volunteers coordinated by
> > RMS for design, specs, coding, documentation, testing, debugging, API
> > design, etc.
>
> I would love to see this.  Maybe not in C++, but along the same lines.
> One of the many difficulties in changing the implementation language is
> that FSF requires GCC to be buildable on just about any machine that ever
> worked, even if it only has a K&R compiler from the previous century. 
> (Okay, that was a lame shot, sorry.)  We cannot assume the existence of a
> bootstrapping C++/whatever compiler the same way as we can assume a C
> compiler.

If GCC had a C backend the implementation language wouldn't matter so much. 
Then each front-end could be implemented in the most suitable language. This 
would also be helpful for front-ends written in C++, because "Standard C++" 
is sadly nonexistant - instead GNU C++ could be used and GCC developers would 
not have to worry so much about the efficiencies or strictness of the native 
C++ compiler.

	Doug Gregor
	gregod@cs.rpi.edu


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