From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id DE8163858C98; Thu, 29 Feb 2024 16:11:14 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org DE8163858C98 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1709223074; bh=RelZEvkNzt1hp+5v8z8qxeYVbAD8Voy0i+RjFs0IXGU=; h=From:To:Subject:Date:In-Reply-To:References:From; b=KbcGUVd+ThV2LBUFCIPIaOR5fnmsFVGmeMUtt6KYUe92v/4/UzsuatAOyqhpNGT9s FfVu+qc24Cti1c1/bh6homwtpbM6yeFf4edyUogiMUSgRkNV7Mbir9OfgJTqd/UQ10 TZwFhAieuAM/JXFt/Ue+NkPr9wb7K3wp0UFPCOco= From: "mpolacek at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug c++/107457] ICE when template lambda alias used as default template argument Date: Thu, 29 Feb 2024 16:11:12 +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: 12.2.0 X-Bugzilla-Keywords: c++-lambda, 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: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: cc 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=3D107457 Marek Polacek changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |mpolacek at gcc dot gnu.org --- Comment #2 from Marek Polacek --- Another test for the same problem: ``` template using LambdaType =3D decltype([] {}); template > class S; ``` 107457.C:3:25: internal compiler error: Segmentation fault 3 | using lambda =3D decltype([]() {}); | ^~~~~~~ 0x1ac234a crash_signal /home/mpolacek/src/gcc/gcc/toplev.cc:319 0x7fd3f489099f ??? =20=20=20=20=20=20=20 /usr/src/debug/glibc-2.38-16.fc39.x86_64/signal/../sysdeps/unix/sysv/linux/= x86_64/libc_sigaction.c:0 0xeda764 begin_function_body() /home/mpolacek/src/gcc/gcc/cp/decl.cc:18398 0xf4eb05 start_lambda_function(tree_node*, tree_node*) /home/mpolacek/src/gcc/gcc/cp/lambda.cc:1700 0x1106d94 tsubst_lambda_expr(tree_node*, tree_node*, int, tree_node*) /home/mpolacek/src/gcc/gcc/cp/pt.cc:19748 0x11119fc tsubst_expr(tree_node*, tree_node*, int, tree_node*) /home/mpolacek/src/gcc/gcc/cp/pt.cc:21684 0x10f5523 tsubst(tree_node*, tree_node*, int, tree_node*) /home/mpolacek/src/gcc/gcc/cp/pt.cc:16895 0x10ef6e0 tsubst_decl /home/mpolacek/src/gcc/gcc/cp/pt.cc:15531 0x1113f4e instantiate_template(tree_node*, tree_node*, int) /home/mpolacek/src/gcc/gcc/cp/pt.cc:22100 0x1114a20 instantiate_alias_template /home/mpolacek/src/gcc/gcc/cp/pt.cc:22198 0x10f21c7 tsubst(tree_node*, tree_node*, int, tree_node*) /home/mpolacek/src/gcc/gcc/cp/pt.cc:16193 0x10cea1f lookup_template_class(tree_node*, tree_node*, tree_node*, tree_no= de*, int, int) /home/mpolacek/src/gcc/gcc/cp/pt.cc:10204 0x116c376 finish_template_type(tree_node*, tree_node*, int) /home/mpolacek/src/gcc/gcc/cp/semantics.cc:3948 0x103d7eb cp_parser_template_id /home/mpolacek/src/gcc/gcc/cp/parser.cc:19048 0x104d762 cp_parser_class_name /home/mpolacek/src/gcc/gcc/cp/parser.cc:26655 0x1023508 cp_parser_qualifying_entity /home/mpolacek/src/gcc/gcc/cp/parser.cc:7400 0x10229d6 cp_parser_nested_name_specifier_opt /home/mpolacek/src/gcc/gcc/cp/parser.cc:7082 0x1040456 cp_parser_simple_type_specifier /home/mpolacek/src/gcc/gcc/cp/parser.cc:20491 0x103f70d cp_parser_type_specifier /home/mpolacek/src/gcc/gcc/cp/parser.cc:20142 0x104a146 cp_parser_type_specifier_seq /home/mpolacek/src/gcc/gcc/cp/parser.cc:25175=