From: matz@... (Yukihiro Matsumoto) Date: 2003-01-01T09:44:27+09:00 Subject: [ruby-dev:19260] Re: [ruby-cvs] ruby: * node.h (struct RNode): Change argc from int to long. Otherwize まつもと ゆきひろです In message "[ruby-dev:19258] Re: [ruby-cvs] ruby: * node.h (struct RNode): Change argc from int to long. Otherwize" on 03/01/01, "Akinori MUSHA" writes: |> * node.h (struct RNode): Change argc from int to long. Otherwize |> NEW_CFUNC() sets argc to a wrong value on platforms where |> sizeof(int) != sizeof(long) and the byte order is big-endian. |> This fixes breakage on FreeBSD/sparc64. |> |> Revision Changes Path |> 1.39 +3 -3 ruby/node.h |> http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/node.h?cvsroot=src&r1=1.38&r2=1.39 | | これですが、 rev 1.12 (ruby 1.4.5 の前)で int -> long になって |以来ずっと long だったが、 1.7 の途中、 rev 1.31 で int に戻った |ようです。 | |http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/node.h#rev1.31 | |ChangeLog を見ても理由が見あたらないのですが、意図は何だったか |心当たりはありませんか? うーん、使う側でargcがintだから型を合わせた程度の意図しかな いのではないかと推測します。自分でやっといて「推測します」っ てのも情けない話ではあるのですが。longだから困ることがあるわ けではないと思うので、戻すべきでしょう。