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

Alp Toker alp at nuanti.com
Sat Feb 22 19:51:34 PST 2014


On 22/02/2014 18:44, Olivier Goffart wrote:
> 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.
>

Landed in r201965 (including Aaron's newline), thanks!

-- 
http://www.nuanti.com
the browser experts




More information about the cfe-commits mailing list