summaryrefslogtreecommitdiff
path: root/regexec.c
diff options
context:
space:
mode:
authorviralpraxis <[email protected]>2025-04-10 11:56:25 +0300
committergit <[email protected]>2025-04-12 17:43:57 +0000
commit543dd77cc39d16a45693d35af670995f7e66ce36 (patch)
treeba848f882153f6965f9d2a0e287f9d28d4449e29 /regexec.c
parenta35a101b4cd393aa4947eea872c71f0f7f0cd3f0 (diff)
[ruby/prism] Fix parsing rescued exception via indexed assignment
Given this code ```ruby begin raise '42' rescue => A[] end ``` Prism fails with this backtrace ``` Error: test_unparser/corpus/literal/rescue.txt(Prism::ParserTest): NoMethodError: undefined method `arguments' for nil prism/lib/prism/translation/parser/compiler.rb:1055:in `visit_index_target_node' prism/lib/prism/node.rb:9636:in `accept' prism/lib/prism/compiler.rb:30:in `visit' prism/lib/prism/translation/parser/compiler.rb:218:in `visit_begin_node' ``` Seems like ```diff - visit_all(node.arguments.arguments), + visit_all(node.arguments&.arguments || []), ``` fixes the problem. https://github.com/ruby/prism/commit/76d01aeb6c
Diffstat (limited to 'regexec.c')
0 files changed, 0 insertions, 0 deletions