From: J2M Date: 2006-12-05T08:04:33+09:00 Subject: How do I catch a missing method on a passed block? I would like to invoke method_missing on baz in this code; x = Foo.new x.bar { baz } I tried the following, and although the method is added to the proc objects singleton class, the method_missing method never gets called. Is there any way to achieve this? My current code (that doesn't work) is below; class Foo def bar(*values, &block) if block_given? class << block def method_missing(m, *args, &block) puts "missing #{m}" end end block.call end end end