This commit is contained in:
Бондарев Иван 2018-03-11 18:08:25 +01:00
parent d471e79465
commit 4f417eaefd
2 changed files with 13 additions and 1 deletions

11
TestSuite/lambda_exit.pas Normal file
View file

@ -0,0 +1,11 @@
begin
var i := 0;
var p: procedure := procedure ->
begin
i := 1;
exit;
i := 2;
end;
p;
assert(i = 1);
end.

View file

@ -165,7 +165,8 @@ namespace TreeConverter.LambdaExpressions.Closure
var acceptableVarType = si.sym_info.semantic_node_type == semantic_node_type.local_variable ||
si.sym_info.semantic_node_type == semantic_node_type.local_block_variable ||
si.sym_info.semantic_node_type == semantic_node_type.common_parameter ||
si.sym_info.semantic_node_type == semantic_node_type.class_field;
si.sym_info.semantic_node_type == semantic_node_type.class_field ||
si.sym_info.semantic_node_type == semantic_node_type.basic_function_node && idName == "exit";
if (!(acceptableVarType) && InLambdaContext)
{