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

--- Comment #4 from Marek Polacek <mpolacek at gcc dot gnu.org> ---
Author: mpolacek
Date: Tue Sep 10 23:22:37 2019
New Revision: 275617

URL: https://gcc.gnu.org/viewcvs?rev=275617&root=gcc&view=rev
Log:
        PR c++/91673 - ICE with noexcept in alias-declaration.
        * parser.c (CP_PARSER_FLAGS_DELAY_NOEXCEPT): New parser flag.
        (cp_parser_lambda_declarator_opt): Pass CP_PARSER_FLAGS_NONE to
        cp_parser_exception_specification_opt.
        (cp_parser_direct_declarator): Adjust a call to
        cp_parser_exception_specification_opt.
        (cp_parser_member_declaration): Pass CP_PARSER_FLAGS_DELAY_NOEXCEPT
        to cp_parser_declarator if not processing a friend or typedef
        declaration.
        (cp_parser_late_noexcept_specifier): Adjust a call to
        cp_parser_noexcept_specification_opt.
        (cp_parser_noexcept_specification_opt): New parameter for parser flags,
        drop the FRIEND_P parameter.  Use the new parameter.
        (cp_parser_exception_specification_opt): Likewise.
        (cp_parser_transaction): Adjust a call to
        cp_parser_noexcept_specification_opt.
        (cp_parser_transaction_expression): Likewise.

        * g++.dg/cpp1z/using7.C: New test.
        * g++.dg/cpp1z/using8.C: New test.

Added:
    trunk/gcc/testsuite/g++.dg/cpp1z/using7.C
    trunk/gcc/testsuite/g++.dg/cpp1z/using8.C
Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/parser.c
    trunk/gcc/testsuite/ChangeLog

Reply via email to