Even after applying the patch, I see a difference between 1.8 and 1.9: In 1.8, defined? 3+foo evaluates to nil when foo is undefined. In the patched 1.9 snapshot, it evaluates to "method", even when foo is undefined. I assume that this is a bug, and not an intentional change. David Yukihiro Matsumoto wrote: > Hi, > > In message "Re: defined? operator changed in ruby 1.9: bug or feature?" > on Thu, 5 Apr 2007 13:45:51 +0900, Nobuyoshi Nakada <nobu / ruby-lang.org> writes: > > |At Thu, 5 Apr 2007 08:51:10 +0900, David Flanagan wrote in [ruby-core:10867]: > |> The behavior of the defined? operator is different in current ruby 1.9 > |> snapshots than it is in 1.8.5. Anyone know whether this is a bug or a > |> feature? > | > |Bug. > > Can you commit? > > matz. >