<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ruby.git/test/prism/fixtures/command_method_call.txt, branch v4.0.4</title>
<subtitle>The Ruby Programming Language</subtitle>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/'/>
<entry>
<title>[ruby/prism] Revert "Reject `p(p a, &amp;block =&gt; value)` and similar"</title>
<updated>2025-11-23T21:36:19+00:00</updated>
<author>
<name>Kevin Newton</name>
<email>kddnewton@gmail.com</email>
</author>
<published>2025-11-23T21:35:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=b75cf83a333ab4e321e89cdefb94e684f6648033'/>
<id>b75cf83a333ab4e321e89cdefb94e684f6648033</id>
<content type='text'>
https://github.com/ruby/prism/commit/fef2c20777
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/ruby/prism/commit/fef2c20777
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/prism] Reject `p(p a, &amp;block =&gt; value)` and similar</title>
<updated>2025-11-23T18:15:15+00:00</updated>
<author>
<name>Earlopain</name>
<email>14981592+Earlopain@users.noreply.github.com</email>
</author>
<published>2025-11-18T08:33:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=2870b7d7df30bc227f40a4c04c97050b90f1f25b'/>
<id>2870b7d7df30bc227f40a4c04c97050b90f1f25b</id>
<content type='text'>
They were being parsed as `p((p a, &amp;block) =&gt; value)`.
When we get to this point, we must not just have parsed a command call, always consuming the `=&gt;` is not correct.

Closes [Bug #21622]

https://github.com/ruby/prism/commit/796ab0edf4
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
They were being parsed as `p((p a, &amp;block) =&gt; value)`.
When we get to this point, we must not just have parsed a command call, always consuming the `=&gt;` is not correct.

Closes [Bug #21622]

https://github.com/ruby/prism/commit/796ab0edf4
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/prism] Add test cases</title>
<updated>2023-12-05T15:16:42+00:00</updated>
<author>
<name>TSUYUSATO Kitsune</name>
<email>make.just.on@gmail.com</email>
</author>
<published>2023-11-30T17:28:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=3260ed7e5eeb7313411a682d9734f48920be9691'/>
<id>3260ed7e5eeb7313411a682d9734f48920be9691</id>
<content type='text'>
https://github.com/ruby/prism/commit/e91f8dbb99
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/ruby/prism/commit/e91f8dbb99
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/prism] Fix some corner cases</title>
<updated>2023-12-05T15:16:41+00:00</updated>
<author>
<name>TSUYUSATO Kitsune</name>
<email>make.just.on@gmail.com</email>
</author>
<published>2023-11-30T09:25:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=3d4a4b252917ef2a76c92333eaeb76448b56d7ba'/>
<id>3d4a4b252917ef2a76c92333eaeb76448b56d7ba</id>
<content type='text'>
https://github.com/ruby/prism/commit/d5453f168e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/ruby/prism/commit/d5453f168e
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/prism] Fix to parse command-style method calls more correctly</title>
<updated>2023-12-05T15:16:40+00:00</updated>
<author>
<name>TSUYUSATO Kitsune</name>
<email>make.just.on@gmail.com</email>
</author>
<published>2023-11-30T08:42:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=dcd75fd49dd879f4931b1c5b1bd65990a92badb5'/>
<id>dcd75fd49dd879f4931b1c5b1bd65990a92badb5</id>
<content type='text'>
Fix https://github.com/ruby/prism/pull/1468
Fix https://github.com/ruby/prism/pull/1575

To decide command-style method calls are allowed, this introduce a new
parameter `accepts_command_call` to `parse_expression` and some
functions.

Although one think this can be solved by operator precedence, it is
hard or impossible, because the precedence of command-style calls is skewed
(e.g. `! bar 1 ` is accepted, but `foo = ! bar 1` is rejected.)

One of the most complex examples is that:
(1) even though `foo = bar = baz 1` and `foo, bar = baz 1` is accepted,
(2) `foo, bar = baz = fuzz 1` is rejected.
To implement this behavior, this introduces a new binding power
`PM_BINDING_POWER_MULTI_ASSIGNMENT` and uses it for distinguish which single
assignments or multi assignments at their RHS.

https://github.com/ruby/prism/commit/d4dd49ca81
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix https://github.com/ruby/prism/pull/1468
Fix https://github.com/ruby/prism/pull/1575

To decide command-style method calls are allowed, this introduce a new
parameter `accepts_command_call` to `parse_expression` and some
functions.

Although one think this can be solved by operator precedence, it is
hard or impossible, because the precedence of command-style calls is skewed
(e.g. `! bar 1 ` is accepted, but `foo = ! bar 1` is rejected.)

One of the most complex examples is that:
(1) even though `foo = bar = baz 1` and `foo, bar = baz 1` is accepted,
(2) `foo, bar = baz = fuzz 1` is rejected.
To implement this behavior, this introduces a new binding power
`PM_BINDING_POWER_MULTI_ASSIGNMENT` and uses it for distinguish which single
assignments or multi assignments at their RHS.

https://github.com/ruby/prism/commit/d4dd49ca81
</pre>
</div>
</content>
</entry>
</feed>
