# Singleton class extended by a module with module\_function

**URL:** <https://www.ruby-forum.com/t/singleton-class-extended-by-a-module-with-module-function/131559>\
**Category:** Development\
**Created:** [March 11, 2008, 11:42am UTC](https://www.ruby-forum.com/t/singleton-class-extended-by-a-module-with-module-function/131559 "2008-03-11T11:42:04Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Tanaka\_A](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/c67d28/32.png) [@Tanaka\_A](https://www.ruby-forum.com/u/Tanaka_A)\
**Post date:** [March 11, 2008, 11:42am UTC](https://www.ruby-forum.com/t/singleton-class-extended-by-a-module-with-module-function/131559/1 "2008-03-11T11:42:04Z")

</div>

e$B0J2\<$N%W%m%0%i%`$N5sF0$,e(B 1.8 e$B$He(B 1.9  
e$B$G0[$J$j$^$9$,!"0U?^E\*$Je(B  
e$B$b$N$G$7$g$&$+e(B?

% cat z.rb  
module M  
module\_function  
def m  
p :m  
end  
end

class C  
end

class \<\< C  
include M  
end

C.m  
% ruby -v z.rb  
ruby 1.9.0 (2008-03-11 revision 15748) [i686-linux]  
:m  
% ruby-1.8 -v z.rb  
ruby 1.8.6 (2008-03-11 patchlevel 5000) [i686-linux]  
z.rb:15: private method `m’ called for C:Class (NoMethodError)

e$B\>e5-$N$h$&$K!"e(B1.8 e$B$G$Oe(B NoMethodError e$B$H$J$k$b$N$,e(B 1.9  
e$B$G$O$=e(B  
e$B$N$^$^8F$S=P$7$K@.8y$7$^$9!#e(B
