From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 4621E3858012; Tue, 30 Mar 2021 20:24:48 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 4621E3858012 From: "mpolacek at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug c++/99833] [8/9/10/11 Regression] structured binding + if init + generic lambda = internal compiler error Date: Tue, 30 Mar 2021 20:24:48 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: c++ X-Bugzilla-Version: 11.0 X-Bugzilla-Keywords: ice-on-valid-code X-Bugzilla-Severity: normal X-Bugzilla-Who: mpolacek at gcc dot gnu.org X-Bugzilla-Status: NEW X-Bugzilla-Resolution: X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: 8.5 X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: cf_reconfirmed_on keywords target_milestone bug_status short_desc cc everconfirmed 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 X-BeenThere: gcc-bugs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-bugs mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Mar 2021 20:24:48 -0000 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D99833 Marek Polacek changed: What |Removed |Added ---------------------------------------------------------------------------- Last reconfirmed| |2021-03-30 Keywords| |ice-on-valid-code Target Milestone|--- |8.5 Status|UNCONFIRMED |NEW Summary|structured binding + if |[8/9/10/11 Regression] |init + generic lambda =3D |structured binding + if |internal compiler error |init + generic lambda =3D | |internal compiler error CC| |mpolacek at gcc dot gnu.org Ever confirmed|0 |1 --- Comment #1 from Marek Polacek --- Confirmed. $ xg++-7 -c 99833.C -std=3Dc++17 -fconcepts # ok $ xg++-8 -c 99833.C -std=3Dc++17 -fconcepts 99833.C: In instantiation of =E2=80=98f(auto:1&&) [with auto:1 =3D int]:: [with auto:2 =3D {}]=E2=80=99: 99833.C:8:10: required from =E2=80=98auto f(auto:1&&) [with auto:1 =3D in= t]=E2=80=99 99833.C:12:13: required from here 99833.C:6:32: internal compiler error: in tsubst_decomp_names, at cp/pt.c:1= 6673 if constexpr (auto [_, z] =3D y; requires { z; }) ^~~~~~ 0xa44cc6 tsubst_decomp_names /home/mpolacek/src/gcc8/gcc/cp/pt.c:16673 0xa46041 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) /home/mpolacek/src/gcc8/gcc/cp/pt.c:16837 0xa4b103 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) /home/mpolacek/src/gcc8/gcc/cp/pt.c:17512 0xa46e75 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) /home/mpolacek/src/gcc8/gcc/cp/pt.c:16961 0xa45012 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) /home/mpolacek/src/gcc8/gcc/cp/pt.c:16714 0xa475be tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) /home/mpolacek/src/gcc8/gcc/cp/pt.c:17014 0xa475be tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) /home/mpolacek/src/gcc8/gcc/cp/pt.c:17014 0xa45012 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) /home/mpolacek/src/gcc8/gcc/cp/pt.c:16714 0xa475be tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) /home/mpolacek/src/gcc8/gcc/cp/pt.c:17014 0xa68a40 instantiate_decl(tree_node*, bool, bool) /home/mpolacek/src/gcc8/gcc/cp/pt.c:24161 0x90b1e3 maybe_instantiate_decl /home/mpolacek/src/gcc8/gcc/cp/decl2.c:5211 0x90bb8a mark_used(tree_node*, int) /home/mpolacek/src/gcc8/gcc/cp/decl2.c:5312 0x814c71 build_over_call /home/mpolacek/src/gcc8/gcc/cp/call.c:8286 0x804e91 build_op_call_1 /home/mpolacek/src/gcc8/gcc/cp/call.c:4589 0x805053 build_op_call(tree_node*, vec**, int) /home/mpolacek/src/gcc8/gcc/cp/call.c:4618 0xa9a847 finish_call_expr(tree_node*, vec**, b= ool, bool, int) /home/mpolacek/src/gcc8/gcc/cp/semantics.c:2567 0xa503bf tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, boo= l, bool) /home/mpolacek/src/gcc8/gcc/cp/pt.c:18594 0xa4b422 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) /home/mpolacek/src/gcc8/gcc/cp/pt.c:17530 0xa4512d tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) /home/mpolacek/src/gcc8/gcc/cp/pt.c:16728 0xa45012 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) /home/mpolacek/src/gcc8/gcc/cp/pt.c:16714=