From: Florian Gilcher Date: 2008-11-25T18:28:32+09:00 Subject: [ruby-core:20088] [Bug #791] Fiber using a Proc object with a parameter having default value doesn't work Bug #791: Fiber using a Proc object with a parameter having default value doesn't work http://redmine.ruby-lang.org/issues/show/791 Author: Florian Gilcher Status: Open, Priority: Normal Category: core If you pass a Proc with a default value on a parameter into a Fiber, the default value is ignored. Example by Wolfgang N��dasi-Donner: irb(main):001:0> p = ->(i=4){i+5} => # irb(main):002:0> p[] => 9 irb(main):003:0> Fiber.new(&p).resume NoMethodError: undefined method `+' for nil:NilClass from (irb):1:in `block (3 levels) in irb_binding' A more useful example is... irb(main):001:0> f = Fiber.new(&(->(i=5){loop{Fiber.yield i+=1}})) => # irb(main):002:0> f.resume NoMethodError: undefined method `+' for nil:NilClass from (irb):1:in `block (4 levels) in irb_binding' from (irb):1:in `loop' from (irb):1:in `block (3 levels) in irb_binding' Regards, Florian Gilcher ---------------------------------------- http://redmine.ruby-lang.org