[PATCH] Fix crash when both Parser::ExpectAndConsume and ConsumeAnyToken throw a diagnostic

Olivier Goffart ogoffart at kde.org
Sat Feb 22 10:44:40 PST 2014


On Saturday 22 February 2014 18:31:34 Alp Toker wrote:
> On 22/02/2014 14:08, Olivier Goffart wrote:
> > Hi,
> > 
> > I believe this is a regression from r198270
> 
> Indeed the lifetime of the DiagnosticBuilder shouldn't have overlapped
> the call to ConsumeAnyToken().
> 
> > --- /dev/null
> > +++ b/test/Parser/diag-crash.c
> > @@ -0,0 +1,5 @@
> > +// RUN: %clang_cc1 -fsyntax-only -verify %s
> > +
> > +// Don't crash if the preprocessor is throwing a diagnostic from
> > Parser::ExceptAndConsume
> Typo in the comment.
> 
> > +int foo: // expected-error {{expected ';' after top level declarator}}
> > +#endif   // expected-error {{#endif without #if}}
> > \ No newline at end of file
> 
> Looks good otherwise, do you have commit access?

No, I don't have commit access.

-- 
Olivier



More information about the cfe-commits mailing list