This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [C++ Patch] PR 84611 ("[6/7/8 Regression] ICE in operator[], at vec.h:826 (local_class_index())")
- From: Jason Merrill <jason at redhat dot com>
- To: Paolo Carlini <paolo dot carlini at oracle dot com>
- Cc: gcc-patches List <gcc-patches at gcc dot gnu dot org>
- Date: Thu, 19 Apr 2018 13:44:18 +0000
- Subject: Re: [C++ Patch] PR 84611 ("[6/7/8 Regression] ICE in operator[], at vec.h:826 (local_class_index())")
- References: <1d1c94a7-3b20-47b8-b477-aee3ac66bf35@oracle.com>
Ok.
On Thu, Apr 19, 2018, 2:25 AM Paolo Carlini <paolo.carlini@oracle.com>
wrote:
> Hi,
>
> the below is a rather low-key fix for this error-recovery regression:
> simply notice that pushtag is returning error_mark_node and avoid ICEing
> later. IMHO opinion it's correct and we may as well have it for 8.1.0
> but looking forward we really want a single error in such cases,
> probably by checking first the return value of
> cp_parser_check_type_definition in cp_parser_class_specifier_1.
> Unfortunately, not regressing in terms of error-recovery quality on,
> say, g++.old-deja/g++.jason/cond.C or g++.dg/parse/no-type-defn1.C seems
> pretty tough, I don't think it's 8.1.0 material. Tested x86-64-linux.
>
> Thanks! Paolo.
>
> /////////////////////
>
>