こんにちは、なかむら(う)です。

In message "[ruby-cvs:28896] Ruby:r21678 (trunk): * array.c (take_items), enum.c (enum_zip): tries to convert to"
    on Jan.20,2009 06:47:50, <nobu / ruby-lang.org> wrote:
> nobu	2009-01-20 06:47:48 +0900 (Tue, 20 Jan 2009)
> 
>   New Revision: 21678
> 
>   http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=21678
> 
>   Log:
>     * array.c (take_items), enum.c (enum_zip): tries to convert to
>       array first.  [ruby-core:21442]

たぶん、arrayへの変換を試し、ダメならeachで回す、というのが意
図だろうと思うのですが、Enumerable#zipは大丈夫ですがArray#zip
がそうなっていません。

Index: array.c =================================================================== --- array.c (revision 21699) +++ array.c (working copy) @@ -2209,7 +2209,7 @@ take_i(VALUE val, VALUE *args, int argc, static VALUE take_items(VALUE obj, long n) { - VALUE result = to_ary(obj); + VALUE result = rb_check_array_type(obj); VALUE args[2]; if (!NIL_P(result)) return rb_ary_subseq(result, 0, n);
それでは。 -- U.Nakamura <usa / garbagecollect.jp>