`respond_to_missing?` doesn't raise when called from `defined?`
I'm not sure whether or not this is expected behavior, but if
respond_to_missing? is called from
defined?, it won't raise an exception.
class Foo def respond_to_missing?(*args) puts "hi" raise end end foo = Foo.new p defined?(foo.bar)
If you run this program, the output is this:
$ ruby -v test.rb ruby 3.1.0dev (2021-03-16T19:10:11Z master 58660e9434) [x86_64-darwin20] hi nil
But I would expect this to raise an exception. Is the current behavior the desired behavior?