From: matz@... (Yukihiro Matsumoto) Date: 1998-07-10T18:29:52+09:00 Subject: [ruby-list:8684] Re: can't build 1.1b9_28 on digital-unix まつもと ゆきひろです In message "[ruby-list:8669] Re: can't build 1.1b9_28 on digital-unix" on 98/07/10, Go Nakagawa writes: |中川です。 |> |> % ruby -e 'p 1<<1014' |> |> % ruby -e 'p 2**1014' |> |> こちらも教えて下さいね. | |1.1b9_29, 1.1b9_29+[ruby-list:8660]のパッチ、1.1b9_30 で同じ |結果になりました。 ありがとうございます.お手数かけます.うちのalphaマシンが動 くようになれば64bitアーキテクチャのテストも出来るんでしょう けど(今はビデオカードがない). |% ruby -e 'p (-1<<32)' |0 おかしいですね.このパッチはどうでしょう.関係ないかな. --- numeric.c 1998/07/09 08:40:18 1.1.1.2.2.24 +++ numeric.c 1998/07/10 09:11:42 @@ -1096,8 +1096,9 @@ { - long val, width; + long val; + int width; val = NUM2LONG(x); - width = NUM2LONG(y); + width = NUM2INT(y); if (width > (sizeof(VALUE)*CHAR_BIT-1) - || (unsigned long)val>>(sizeof(VALUE)*CHAR_BIT-1-width) > 0) { + || ((unsigned long)val)>>(sizeof(VALUE)*CHAR_BIT-1-width) > 0) { return big_lshift(int2big(val), y); |% ruby -e 'p 2**1014' |0 げ.おかしいなあ.b9_30ではlongに依存する部分はなくしたと思っ たのになあ.