Project

General

Profile

Bug #10702

Updated by nobu (Nobuyoshi Nakada) over 9 years ago

https://gist.github.com/kwstannard/c0f722976ba023cc5755 

 ```ruby 
 module `module A 
   module B 
   end 
 end 

 module C 
   include A 

   puts B.inspect # => A::B 

   class D 
     puts B.inspect rescue puts 'failed' # => failed 
   end 

   B = B 

   class E 
     puts B.inspect # => A::B 
   end 
 end 
 ``` ` 

 When you include a module you gain access to that module's constants as seen in line 9. Line 19 shows that you can get constants defined in the nested module when the constant is defined within the module itself. 

 Line 12 is the bug. Shouldn't class `D` D be able to access module `B` B since the previous line shows that module `C` C has access to Module `B`? B?

Back