From 9d8141c569200a03fac6b6e07f3d8b5f68017a1e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Grubbstr=C3=B6m=20=28Grubba=29?= <grubba@grubba.org> Date: Thu, 7 Jan 2016 12:34:33 +0100 Subject: [PATCH] Compiler: Fixed internal compiler error with implicit lambdas. Implicit lambdas do not have a declared return type, so use the push_compiler_frame variant for lambdas. Thanks to Chris Angelico <rosuav@gmail.com> for the report and test case. Fixes [bug 7616]/[LysLysKOM 21578942]. --- src/language.yacc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/language.yacc b/src/language.yacc index 56ad073f21..1c622cbc58 100644 --- a/src/language.yacc +++ b/src/language.yacc @@ -3424,7 +3424,7 @@ expr3: expr4 optional_block: /* EMPTY */ { $$=0; } | '{' line_number_info /* FIXME: Use implicit_identifier to make __func__ point to the lambda? */ - push_compiler_frame0 + push_compiler_frame1 { debug_malloc_touch(Pike_compiler->compiler_frame->current_return_type); if(Pike_compiler->compiler_frame->current_return_type) -- GitLab