compile.c: invalid yield in main
* compile.c (iseq_compile_each): yield cannot be in the main context as well as a top context. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57312 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
58935eb8bd
commit
257fd90166
@ -5530,7 +5530,8 @@ iseq_compile_each(rb_iseq_t *iseq, LINK_ANCHOR *const ret, NODE *node, int poppe
|
|||||||
struct rb_call_info_kw_arg *keywords = NULL;
|
struct rb_call_info_kw_arg *keywords = NULL;
|
||||||
|
|
||||||
INIT_ANCHOR(args);
|
INIT_ANCHOR(args);
|
||||||
if (iseq->body->type == ISEQ_TYPE_TOP) {
|
if (iseq->body->type == ISEQ_TYPE_TOP ||
|
||||||
|
iseq->body->type == ISEQ_TYPE_MAIN) {
|
||||||
COMPILE_ERROR(ERROR_ARGS "Invalid yield");
|
COMPILE_ERROR(ERROR_ARGS "Invalid yield");
|
||||||
goto ng;
|
goto ng;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user