Bug #9083

BasicObject#method_missing does not always raise NoMethodError for missing methods

Added by First Last over 1 year ago.

[ruby-core:58182]
Status:Open
Priority:Normal
Assignee:-
ruby -v:ruby 2.0.0p247 (2013-06-27 revision 41674) [i686-linux] Backport:1.9.3: UNKNOWN, 2.0.0: UNKNOWN

Description

def method_missing(name, *)
super
rescue NoMethodError => e

end

if the method is called without the receiver, it will raise just a NameError (variable or method missing)

the text of the error can differ depending on the presence of the receiver, but it seems counter-intuitive to not receive a NoMethodError when you are clearly attempting to call a non-existent method.

Also available in: Atom PDF