diff options
author | Alan Wu <XrXr@users.noreply.github.com> | 2021-04-09 19:08:23 -0400 |
---|---|---|
committer | Alan Wu <XrXr@users.noreply.github.com> | 2021-10-20 18:19:33 -0400 |
commit | b69951cf55a3bbd50a4d6e84185ee0f687946530 (patch) | |
tree | b84366ced362483817be96cfc95e1c4b2d33b466 /bootstraptest | |
parent | 476a3f4be783d021a4a8b9aacd9486498d155ec8 (diff) |
add a couple of getivar tests for symbols
Diffstat (limited to 'bootstraptest')
-rw-r--r-- | bootstraptest/test_yjit.rb | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/bootstraptest/test_yjit.rb b/bootstraptest/test_yjit.rb index 858e3906d0..fcda5476ea 100644 --- a/bootstraptest/test_yjit.rb +++ b/bootstraptest/test_yjit.rb @@ -578,3 +578,40 @@ assert_equal '42', %q{ run run } + +# getinstancevariable on Symbol +assert_equal '[nil, nil]', %q{ + # @foo to exercise the getinstancevariable instruction + public def get_foo + @foo + end + + dyn_sym = ("a" + "b").to_sym + sym = :static + + # compile get_foo + dyn_sym.get_foo + dyn_sym.get_foo + + [dyn_sym.get_foo, sym.get_foo] +} + +# attr_reader on Symbol +assert_equal '[nil, nil]', %q{ + class Symbol + attr_reader :foo + end + + public def get_foo + foo + end + + dyn_sym = ("a" + "b").to_sym + sym = :static + + # compile get_foo + dyn_sym.get_foo + dyn_sym.get_foo + + [dyn_sym.get_foo, sym.get_foo] +} |