diff options
author | Nobuyoshi Nakada <nobu@ruby-lang.org> | 2022-01-06 23:08:56 +0900 |
---|---|---|
committer | Nobuyoshi Nakada <nobu@ruby-lang.org> | 2022-01-07 09:23:38 +0900 |
commit | 83b987054a801405673266ba47c6f38e33efee0e (patch) | |
tree | 33212dd2369b57d6a1c243d07a2baad7c8375bc7 /parse.y | |
parent | ae0d67d762a0849cc629a004c2ae9182292b19bd (diff) |
Explicitly pass $/ when loop mode
Get rid of depending on using $/ internally in ARGF.gets.
Notes
Notes:
Merged: https://github.com/ruby/ruby/pull/5403
Diffstat (limited to 'parse.y')
-rw-r--r-- | parse.y | 4 |
1 files changed, 3 insertions, 1 deletions
@@ -13114,6 +13114,8 @@ parser_append_options(struct parser_params *p, NODE *node) } if (p->do_loop) { + NODE *irs = NEW_LIST(NEW_GVAR(rb_intern("$/"), LOC), LOC); + if (p->do_split) { ID ifs = rb_intern("$;"); ID fields = rb_intern("$F"); @@ -13130,7 +13132,7 @@ parser_append_options(struct parser_params *p, NODE *node) node = block_append(p, chomp, node); } - node = NEW_WHILE(NEW_VCALL(idGets, LOC), node, 1, LOC); + node = NEW_WHILE(NEW_FCALL(idGets, irs, LOC), node, 1, LOC); } return node; |