diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2018-07-11 15:09:57 +0900 |
|---|---|---|
| committer | GitHub <[email protected]> | 2018-07-11 15:09:57 +0900 |
| commit | e3bc680d9864ca5bb454f80c728210484647998f (patch) | |
| tree | ac1bdf921c231f401678c6b8550e1aa23975f50d /mrbgems/mruby-compiler/core | |
| parent | ea435f99da3aa5ba1dc6bf5cb7f48d9565bed1a6 (diff) | |
| parent | a921b936d6370794d4d66c23a4863507e013becb (diff) | |
| download | mruby-e3bc680d9864ca5bb454f80c728210484647998f.tar.gz mruby-e3bc680d9864ca5bb454f80c728210484647998f.zip | |
Merge pull request #4068 from yurie/mrbc
add mrbc option `--remove-lv`
Diffstat (limited to 'mrbgems/mruby-compiler/core')
| -rw-r--r-- | mrbgems/mruby-compiler/core/codegen.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/mrbgems/mruby-compiler/core/codegen.c b/mrbgems/mruby-compiler/core/codegen.c index f71de9b4b..fec747f0c 100644 --- a/mrbgems/mruby-compiler/core/codegen.c +++ b/mrbgems/mruby-compiler/core/codegen.c @@ -3092,3 +3092,18 @@ mrb_generate_code(mrb_state *mrb, parser_state *p) { return generate_code(mrb, p, VAL); } + +void +mrb_irep_remove_lv(mrb_state *mrb, mrb_irep *irep) +{ + int i; + + if (irep->lv) { + mrb_free(mrb, irep->lv); + irep->lv = NULL; + } + + for (i = 0; i < irep->rlen; ++i) { + mrb_irep_remove_lv(mrb, irep->reps[i]); + } +} |
