[Bug c++/84642] [6/7 Regression] ICE: segfault reading through NULL current_template_parms in synthesize_implicit_template_parm

aoliva at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Fri Mar 23 01:19:00 GMT 2018


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84642

--- Comment #6 from Alexandre Oliva <aoliva at gcc dot gnu.org> ---
Author: aoliva
Date: Fri Mar 23 01:18:48 2018
New Revision: 258790

URL: https://gcc.gnu.org/viewcvs?rev=258790&root=gcc&view=rev
Log:
Disable auto_is_implicit_function_template_parm_p while parsing attributes

We don't want functions to become implicit templates just because of
random uses of auto in unexpected places.  Disabling the special
handling of auto while parsing attributes, for example, makes for
more sensible errors.


for  gcc/cp/ChangeLog

        PR c++/84610
        PR c++/84642
        PR c++/84942
        * cp-tree.h (temp_override): New template class, generalizing
        a cleanup that was only used...
        * parser.c (cp_parser_parameter_declaration_clause):
        ... here for auto_is_implicit_function_template_parm_p.
        (cp_parser_gnu_attributes_opt): Use it here as well.
        (cp_parser_std_attribute): Likewise.

Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/cp-tree.h
    trunk/gcc/cp/parser.c


More information about the Gcc-bugs mailing list