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

--- Comment #2 from Nathan Sidwell <nathan at gcc dot gnu.org> ---
Author: nathan
Date: Tue Feb 27 20:52:15 2018
New Revision: 258042

URL: https://gcc.gnu.org/viewcvs?rev=258042&root=gcc&view=rev
Log:
[PR c++/84426] ICE after conflicting member decl

https://gcc.gnu.org/ml/gcc-patches/2018-02/msg01529.html
        PR c++/84426
        * name-lookup.h (get_member_slot): Rename ...
        (find_member_slot): ... here.
        (add_member_slot): New.
        * name-lookup.c (member_vec_linear_search): No need to check for
        NULL slot.
        (get_member_slot): Rename ...
        (find_member_slot): ... here.  Don't add slot for incomplete class.
        (add_member_slot): New.
        * class.c (add_method): Adjust get_member_slot rename.  Bail out
        if push_class_level_binding fails.  Create slot and grok
        properties once we're committed to insertion.

        PR c++/84426
        * g++.dg/lookup/pr84426.C: New.

Added:
    trunk/gcc/testsuite/g++.dg/lookup/pr84426.C
Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/class.c
    trunk/gcc/cp/name-lookup.c
    trunk/gcc/cp/name-lookup.h
    trunk/gcc/testsuite/ChangeLog

Reply via email to