summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKevin Newton <kddnewton@gmail.com>2025-01-14 11:01:39 -0500
committergit <svn-admin@ruby-lang.org>2025-01-14 16:01:46 +0000
commit12fa76b3e57ea6deb89c7b28fc79eef78df9739e (patch)
treef6b953024bbfc5d55e099eed330305ec212e2b8b
parent23fc0fc22d0f066938387f3397fb8ee9358744e5 (diff)
[ruby/prism] Fix parse.y translation for locals test
https://github.com/ruby/prism/commit/c8037dfaed
-rw-r--r--test/prism/locals_test.rb19
1 files changed, 11 insertions, 8 deletions
diff --git a/test/prism/locals_test.rb b/test/prism/locals_test.rb
index 2c0036289c..c48b295a49 100644
--- a/test/prism/locals_test.rb
+++ b/test/prism/locals_test.rb
@@ -140,14 +140,17 @@ module Prism
case node
when BlockNode, DefNode, LambdaNode
names = node.locals
- params =
- if node.is_a?(DefNode)
- node.parameters
- elsif node.parameters.is_a?(NumberedParametersNode)
- nil
- else
- node.parameters&.parameters
- end
+ params = nil
+
+ if node.is_a?(DefNode)
+ params = node.parameters
+ elsif node.parameters.is_a?(NumberedParametersNode)
+ # nothing
+ elsif node.parameters.is_a?(ItParametersNode)
+ names << AnonymousLocal
+ else
+ params = node.parameters&.parameters
+ end
# prism places parameters in the same order that they appear in the
# source. CRuby places them in the order that they need to appear