From: Sako Hiroshi Date: 2002-05-07T01:59:36+09:00 Subject: [ruby-list:34993] Re: BigFloat の to_i メソッドについて 小林様; 酒匂と申します。 早速のご対応有難うございました。 At 21:35 02/05/06 +0900, Shigeo Kobayashi wrote: >to_i 処理の中にバグがありました。 > >BigFloatの方は、後ほどRAAに登録するとして、とりあえず >http://www.ruby-lang.org/~knu/cgi-bin/cvsweb.cgi/rough/ext/bigdecimal/ >の bigdecimal.c を修正しました。 修正個所はBigDecimal_to_i(BigFloat_to_iと >同じ) 変更を取り込み、手元のテストケースを試したところ、 こちらでも確かに思った通りの動作となりました。 お手数をおかけしました。 重ねて御礼申し上げます。 * * * ところで最早無用の長物ですが、私の仕事仲間が 以下のような修正を試み、同じような目的を達成しました。 この修正では VpNmlz() の中で一行追加しています。 手が入った場所が違うのに同じ結果になっているため、 なんとなく気持ちが悪いので、 あくまでもご参考までに、ご報告致します。 =================================================================== RCS file: RCS/bigfloat.c,v retrieving revision 1.1 diff -r1.1 bigfloat.c 3302a3303 > a->frac[ind_a] = 0; /* 2002/05/06 */ [sakoh@voice bigfloat-1.1.9]$ rcsdiff -c bigfloat.c =================================================================== RCS file: RCS/bigfloat.c,v retrieving revision 1.1 diff -c -r1.1 bigfloat.c *** bigfloat.c 2002/05/06 15:48:05 1.1 --- bigfloat.c 2002/05/06 16:41:48 *************** *** 3300,3305 **** --- 3300,3306 ---- ++i; ++j; } + a->frac[ind_a] = 0; /* 2002/05/06 */ } #ifdef _DEBUG if(gfCheckVal) VpVarCheck(a); ----------------------------------------------------------------------- mailto:sakoh@ba2.so-net.ne.jp tel: +81-042-749-3169, fax: 020-4669-2655(in Japan) mailto:sakoh@d2.to Designers' Den Corporation http://www02.so-net.ne.jp/~sakoh/ -----------------------------------------------------------------------