[Bug c++/84426] [8 Regression] ICE with conflicting class member names
nathan at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Tue Feb 27 20:53:00 GMT 2018
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
More information about the Gcc-bugs
mailing list