From e0c90199c996c53db41611bc7fcb9b68a1ae9c64 Mon Sep 17 00:00:00 2001 From: eileencodes Date: Tue, 16 Jan 2024 15:31:24 -0500 Subject: [Prism] Implement defined? for PM_INTERPOLATED_SYMBOL_NODE Ruby code: ```ruby defined?(:"1 #{1 + 2} 1") ``` Instructions: ``` "********* Ruby *************" == disasm: #@:1 (1,0)-(59,25)> 0000 putobject "expression" ( 59)[Li] 0002 leave "********* PRISM *************" == disasm: #@:58 (58,0)-(58,25)> 0000 putobject "expression" ( 58)[Li] 0002 leave ``` Related: ruby/prism#2188 --- test/ruby/test_compile_prism.rb | 1 + 1 file changed, 1 insertion(+) (limited to 'test/ruby') diff --git a/test/ruby/test_compile_prism.rb b/test/ruby/test_compile_prism.rb index 3865fb1b3f..abef12d90a 100644 --- a/test/ruby/test_compile_prism.rb +++ b/test/ruby/test_compile_prism.rb @@ -222,6 +222,7 @@ module Prism assert_prism_eval("defined?(next)") assert_prism_eval("defined?(break)") assert_prism_eval("defined?(defined?(a))") + assert_prism_eval('defined?(:"#{1}")') end def test_GlobalVariableReadNode -- cgit v1.2.3