We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
This code seems to be parsed incorrectly:
def bar foo = 2 ..foo end
Calling bar returns ..2, but Parser parser this as:
bar
..2
s(:def, :bar, s(:args), s(:lvasgn, :foo, s(:irange, s(:int, 2), s(:lvar, :foo))))
I would expect this to be parser identically to
def bar foo = 2; ..foo end
This version is parsed by Parser as:
s(:def, :bar, s(:args), s(:begin, s(:lvasgn, :foo, s(:int, 2)), s(:irange, nil, s(:lvar, :foo))))
The text was updated successfully, but these errors were encountered:
Yes, looks like a bug, tDOT2 is emitted instead of tBDOT2 and it's reduced to a normal range
tDOT2
tBDOT2
Sorry, something went wrong.
Successfully merging a pull request may close this issue.
This code seems to be parsed incorrectly:
Calling
bar
returns..2
, but Parser parser this as:I would expect this to be parser identically to
This version is parsed by Parser as:
The text was updated successfully, but these errors were encountered: