summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2021-10-12 09:56:58 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2021-10-12 20:16:36 +0900
commit5004d9a282145488dd8f32668805145b02977be1 (patch)
treec68ad45218fd2aba9aa83a9464b97d70aaa8c934
parentdccd66f9efecd0a974b735c62836fe566015cf37 (diff)
downloadmruby-5004d9a282145488dd8f32668805145b02977be1.tar.gz
mruby-5004d9a282145488dd8f32668805145b02977be1.zip
codegen.c: should not assign negative number to `ainfo` (`size_t`).
-rw-r--r--mrbgems/mruby-compiler/core/codegen.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/mrbgems/mruby-compiler/core/codegen.c b/mrbgems/mruby-compiler/core/codegen.c
index 1374fff07..b7a9c2666 100644
--- a/mrbgems/mruby-compiler/core/codegen.c
+++ b/mrbgems/mruby-compiler/core/codegen.c
@@ -2839,7 +2839,8 @@ codegen(codegen_scope *s, node *tree, int val)
case NODE_ZSUPER:
{
codegen_scope *s2 = s;
- int lv = 0, ainfo = 0;
+ int lv = 0;
+ size_t ainfo = 0;
int n = CALL_MAXARGS;
int sp = cursp();
@@ -2899,7 +2900,7 @@ codegen(codegen_scope *s, node *tree, int val)
if (!s2) break;
}
if (s2) {
- ainfo = s2->ainfo;
+ ainfo = (int)s2->ainfo;
}
if (ainfo < 0) codegen_error(s, "invalid yield (SyntaxError)");
push();
@@ -3612,7 +3613,7 @@ scope_new(mrb_state *mrb, codegen_scope *prev, node *nlv)
s->mpool = pool;
if (!prev) return s;
s->prev = prev;
- s->ainfo = -1;
+ s->ainfo = 0;
s->mscope = 0;
scope_add_irep(s);