From: matz@... (Yukihiro Matsumoto) Date: 2003-03-25T17:12:42+09:00 Subject: [ruby-dev:19903] Re: Proc#call parameter assignment まつもと ゆきひろです In message "[ruby-dev:19902] Re: Proc#call parameter assignment" on 03/03/25, "NAKAMURA, Hiroshi" writes: |> * eval.c (avalue_to_svalue): avalue_to_svalue([[1,2]]) should be |> [[1,2]], not [1,2] to wrap-around. |> |> が怪しいですね。ただ、問題が起きる時の状態(渡した値と受け取 |> る左辺値)が特定できないと直せないですねえ。 | |こんなのは役に立ちます? 役に立ちます。問題はだいたい把握できたので、ちょっと考察して みます。とりあえず、 | f = lambda { |var2| | raise if var2[0].class == Array | } の部分を | f = lambda { |var2,| | raise if var2[0].class == Array | } に変更してください(コンマを追加)。