diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2022-01-10 15:44:15 +0900 |
|---|---|---|
| committer | Yukihiro "Matz" Matsumoto <[email protected]> | 2022-01-10 15:44:15 +0900 |
| commit | 5dfbfb3ecd788bd029d6ce000ba0649b9ec11e90 (patch) | |
| tree | 1053a7fa73dcdf6becc1314409e9f0cb27f91574 /mrbgems/mruby-compiler/core/parse.y | |
| parent | 8c7b99596260efa58480ffc23545264282b90049 (diff) | |
| download | mruby-5dfbfb3ecd788bd029d6ce000ba0649b9ec11e90.tar.gz mruby-5dfbfb3ecd788bd029d6ce000ba0649b9ec11e90.zip | |
parse.y: `p->nvar` (numbered argument index list) may be `NULL`.
Diffstat (limited to 'mrbgems/mruby-compiler/core/parse.y')
| -rw-r--r-- | mrbgems/mruby-compiler/core/parse.y | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/mrbgems/mruby-compiler/core/parse.y b/mrbgems/mruby-compiler/core/parse.y index de905e33f..579d4291a 100644 --- a/mrbgems/mruby-compiler/core/parse.y +++ b/mrbgems/mruby-compiler/core/parse.y @@ -712,9 +712,10 @@ new_cvar(parser_state *p, mrb_sym sym) static node* new_nvar(parser_state *p, int num) { - int nvars = intn(p->nvars->car); - - p->nvars->car = nint(nvars > num ? nvars : num); + if (p->nvars) { + int nvars = intn(p->nvars->car); + p->nvars->car = nint(nvars > num ? nvars : num); + } return cons((node*)NODE_NVAR, nint(num)); } |
