This is the mail archive of the gcc-patches@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]
Other format: [Raw text]

Re: [PATCH] detect unknown type names in declaration


On Sat, Nov 13, 2010 at 8:18 AM, Paolo Bonzini <bonzini@gnu.org> wrote:
> On 11/13/2010 03:15 PM, H.J. Lu wrote:
>>
>> On Sat, Oct 30, 2010 at 6:24 AM, Paolo Bonzini<bonzini@gnu.org> ?wrote:
>>>
>>> This patch improves GCC error detection so that some cases of
>>> declarations with unknown type names are detected. ?This also
>>> allows GCC to do better on cascading errors, because the variables
>>> that are declared enter the symbol table.
>>>
>>> Bootstrapped/regtested x86_64-pc-linux-gnu, ok?
>>>
>>> 2010-10-30 ?Paolo Bonzini<bonzini@gnu.org>
>>>
>>> ? ? ? ?* c-parser.c (c_parser_next_token_starts_declaration): Rename
>>> to...
>>> ? ? ? ?(c_parser_next_tokens_start_declaration): ... this. ?Handle 2nd
>>> ? ? ? ?token lookahead.
>>> ? ? ? ?(c_parser_compound_statement_nostart, c_parser_label,
>>> ? ? ? ?c_parser_for_statement, c_parser_omp_for_loop): Adjust calls.
>>> ? ? ? ?(c_parser_declaration_or_fndef): Detect the case now matched by
>>> ? ? ? ?c_parser_next_tokens_start_declaration, give error and correct it.
>>>
>>
>> This caused:
>>
>> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46462
>
> I'm committing the attached testsuite patch, which simply adjust the errors
> (they are now more precise). ?I'll post shortly a small adjustment to the C
> parser to unbreak Objective-C foreach and improve error recovery further.

There is one ICE:

FAIL: gcc.dg/pr14963.c (internal compiler error)
FAIL: gcc.dg/pr14963.c (test for excess errors)

It looks like a real bug.

-- 
H.J.


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