From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 43ABB3858037; Wed, 26 Oct 2022 10:17:18 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 43ABB3858037 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1666779438; bh=q9bEHjZHdK+Lsy7J5l8samIgEkJz6Jom3oaQ93vKflA=; h=From:To:Subject:Date:In-Reply-To:References:From; b=iL5VSv+4uxtP9DIiDYr9S0nOCHph6vZGvs/ZO5c9xyv8CL/DdPWKBBq3wrgjxnn63 1252gg2zCK+erkj1BZcW9c2ATINTem7tlbGIYwiDRVB7ewH//tgs2jN43+d4JPELIi rM/xqOpGgOss+qPto1gEoOin0pg6jLPNAZUvgiPM= From: "jakub at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug other/107379] [13 regression] g++.dg/modules/adl-3_c.C and adl-4_b.C break as of r13-2887-gb04208895fed34 Date: Wed, 26 Oct 2022 10:17:17 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: other X-Bugzilla-Version: 13.0 X-Bugzilla-Keywords: ice-on-valid-code, testsuite-fail X-Bugzilla-Severity: normal X-Bugzilla-Who: jakub at gcc dot gnu.org X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Resolution: X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: 13.0 X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 List-Id: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D107379 --- Comment #2 from Jakub Jelinek --- In (untested) patch form: --- gcc/cp/name-lookup.cc.jj 2022-10-12 17:51:00.912944731 +0200 +++ gcc/cp/name-lookup.cc 2022-10-26 12:06:38.177590655 +0200 @@ -8596,6 +8596,13 @@ push_namespace (tree name, bool make_inl /* This should find the slot created by pushdecl. */ gcc_checking_assert (slot && *slot =3D=3D ns); } + else + { + /* pushdecl could have expanded the hash table, so + slot might be invalid. */ + slot =3D find_namespace_slot (current_namespace, name); + gcc_checking_assert (slot); + } make_namespace_finish (ns, slot); /* Add the anon using-directive here, we don't do it in which fixes the ICE for me on the cross-compiler.=