From 44e8466c448691f4bcf37d6b20d9083830ce1094 Mon Sep 17 00:00:00 2001 From: Wang Renxin Date: Fri, 17 Nov 2017 19:01:00 +0800 Subject: [PATCH] *fixed a variable lookup issue with a ranged FOR loop. --- HISTORY | 3 +++ core/my_basic.c | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/HISTORY b/HISTORY index 9ea7e76..1d16fee 100755 --- a/HISTORY +++ b/HISTORY @@ -1,3 +1,6 @@ +Nov. 17 2017 +Fixed a variable lookup issue with a ranged FOR loop + Nov. 16 2017 Fixed a clearing issue of intermediate values in forked scope chain diff --git a/core/my_basic.c b/core/my_basic.c index 5174b4f..15a6673 100755 --- a/core/my_basic.c +++ b/core/my_basic.c @@ -11165,6 +11165,10 @@ static int _execute_ranged_for_loop(mb_interpreter_t* s, _ls_node_t** l, _var_t* mb_assert(s && l && var_loop); running = s->running_context; +#ifdef MB_ENABLE_CLASS + if(var_loop->pathing) + var_loop = _search_var_in_scope_chain(s, var_loop); +#endif /* MB_ENABLE_CLASS */ old_val = var_loop->data; range_ptr = ⦥ _MAKE_NIL(range_ptr);