Change in constant lookup path from 1.9.2 vs. 1.9.3

Hello all,

I’m observing a chance in the way constants are looked up between
1.9.2-head and 1.9.3-head. Please see below (and comment if it’s
expected or a regression?):

module M
X = 100

def m1
puts X
end
end

class C
extend M

def self.m2
puts X
end
end

def C.m3
puts X
end

C.m1 # works in 1.9.2 and 1.9.3
C.m3 # works in 1.9.2, generates missing constant exception in 1.9.3
C.m2 # generates missing constant exception in 1.9.2 and 1.9.3

it’s my understanding that a change is expected, I’m not sure what the
change is supposed to be to though.

Gist for this issue too: https://gist.github.com/1127872

Hi,

On Fri, Aug 5, 2011 at 10:58 PM, Ryan LeCompte [email protected]
wrote:

Gist for this issue too: https://gist.github.com/1127872

I think, this is related to,

http://redmine.ruby-lang.org/issues/3422

But you may want to file it as a bug. AFAIK, if it wasn’t mentioned in
Changelogs this must be a regression.


Let them talk of their oriental summer climes of everlasting
conservatories; give me the privilege of making my own summer with my
own coals.

http://gnufied.org
http://twitter.com/gnufied