This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [tree-ssa RFC/RFA?] Stop compilation earlier when syntax error has been hit
- From: Jan Hubicka <hubicka at ucw dot cz>
- To: Diego Novillo <dnovillo at redhat dot com>
- Cc: Jan Hubicka <jh at suse dot cz>,"gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>,Richard Henderson <rth at redhat dot com>
- Date: Thu, 26 Feb 2004 18:51:56 +0100
- Subject: Re: [tree-ssa RFC/RFA?] Stop compilation earlier when syntax error has been hit
- References: <20040222010151.GU24652@kam.mff.cuni.cz> <1077817574.16194.455.camel@localhost.localdomain>
> On Sat, 2004-02-21 at 20:01, Jan Hubicka wrote:
> > Hi,
> > while working on the CFG expansion I've again hit the problem of RTL expansion
> > going crazy when given a function with undefined labels. What about the attached
> > patch? It brings failures of
> >
> > g++.old-deja/g++.other/vaarg3.C (test for errors, line 23)
> > g++.old-deja/g++.other/vaarg3.C (test for errors, line 26)
> > gcc.dg/20020919-1.c (test for errors, line 105)
> > gcc.dg/20020919-1.c (test for errors, line 114)
> > gcc.dg/20020919-1.c (test for errors, line 123)
> > gcc.dg/20020919-1.c (test for errors, line 132)
> > gcc.dg/20020919-1.c (test for errors, line 141)
> > gcc.dg/20020919-1.c (test for errors, line 159)
> > gcc.dg/20020919-1.c (test for errors, line 177)
> > gcc.dg/20020919-1.c (test for errors, line 195)
> > gcc.dg/20020919-1.c (test for errors, line 222)
> > gcc.dg/20020919-1.c (test for errors, line 231)
> > gcc.dg/20020919-1.c (test for errors, line 244)
> > gcc.dg/20020919-1.c (test for errors, line 89)
> > gcc.dg/cleanup-1.c (test for excess errors)
> >
> > These testcases checks for errors/warnings output during RTL expansion after
> > parse error has been hit. I can deal with this by splitting the testcases into
> > multiple ones so they don't hit multiple types of errors. Would that sound
> > acceptable?
> >
> I don't follow. Wouldn't this mean that we are losing warnings?
Yes, we are skipping certain warnings/errors produced by backend when
there already is error issued. Feeding backend by incorrectly built
function resulting from error recovery is causing all sorts of problems.
But we've been discussing this with RTH and it looks feasibe to simply
fix the funcion body by adding the missing labels/removing the wrongly
formed gotos during tree CFG building pass so we can proceed.
I will make patch for this soon (probably at tuesday)
Honza
>
>
> Diego.