[ruby-core:122820] [Ruby Bug#21139] Prism and parse.y parses `it = it` differently
From:
"Eregon (Benoit Daloze) via ruby-core" <ruby-core@...>
Date:
2025-07-18 20:21:50 UTC
List:
ruby-core #122820
Issue #21139 has been updated by Eregon (Benoit Daloze).
@tenderlovemaking From matz's latest reply in https://bugs.ruby-lang.org/issues/21139#note-6:
> But It was due to my misunderstanding. it = it should initialize the local variable named it and the value should be nil,
Which means it should be the parse.y behavior in the OP example, and so Prism should behave the same as parse.y here, which I suppose is why Kevin re-assigned to prism.
----------------------------------------
Bug #21139: Prism and parse.y parses `it = it` differently
https://bugs.ruby-lang.org/issues/21139#change-114107
* Author: tompng (tomoya ishida)
* Status: Feedback
* Assignee: prism
* ruby -v: ruby 3.5.0dev (2025-02-14T16:49:52Z master ee181d1bb7) +PRISM [x86_64-linux]
* Backport: 3.1: UNKNOWN, 3.2: UNKNOWN, 3.3: UNKNOWN, 3.4: UNKNOWN
----------------------------------------
~~~
# ruby --parser=parse.y -e "42.tap { it = it; p it }"
nil
# ruby --parser=prism -e "42.tap { it = it; p it }"
42
~~~
---Files--------------------------------
clipboard-202503081702-idzz2.png (22.6 KB)
--
https://bugs.ruby-lang.org/
______________________________________________
ruby-core mailing list -- ruby-core@ml.ruby-lang.org
To unsubscribe send an email to ruby-core-leave@ml.ruby-lang.org
ruby-core info -- https://ml.ruby-lang.org/mailman3/lists/ruby-core.ml.ruby-lang.org/