https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86200
Bug ID: 86200 Summary: [8/9 Regression] ICE in dependent_type_p, at cp/pt.c:24634 Product: gcc Version: 9.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: gs...@t-online.de Target Milestone: --- Changed between 20180211 and 20180218. Derived from g++.dg/cpp0x/lambda/lambda-variadic1.C : $ cat z1.cc template<typename ... Args> static void foo() { [](Args, int x) { x; }; } int main() { foo(); } $ gcc-9-20180617 -c z1.cc z1.cc: In instantiation of 'void foo() [with Args = {}]': z1.cc:10:7: required from here z1.cc:4:3: internal compiler error: in dependent_type_p, at cp/pt.c:24634 [](Args, int x) { ^ 0x7163e0 dependent_type_p(tree_node*) ../../gcc/cp/pt.c:24634 0x67bff8 require_complete_types_for_parms ../../gcc/cp/decl.c:12556 0x67bff8 check_function_type ../../gcc/cp/decl.c:14722 0x67bff8 start_preparsed_function(tree_node*, tree_node*, int) ../../gcc/cp/decl.c:14936 0x6b2df4 start_lambda_function(tree_node*, tree_node*) ../../gcc/cp/lambda.c:1420 0x71a577 tsubst_lambda_expr(tree_node*, tree_node*, int, tree_node*) ../../gcc/cp/pt.c:17620 0x71b748 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool, bool) ../../gcc/cp/pt.c:18928 0x720357 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) ../../gcc/cp/pt.c:17396 0x71ede5 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) ../../gcc/cp/pt.c:16597 0x7201ec tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) ../../gcc/cp/pt.c:16583 0x72005d tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) ../../gcc/cp/pt.c:16880 0x71e961 instantiate_decl(tree_node*, bool, bool) ../../gcc/cp/pt.c:24027 0x739e0b instantiate_pending_templates(int) ../../gcc/cp/pt.c:24141 0x698f23 c_parse_final_cleanups() ../../gcc/cp/decl2.c:4707