Change 31413 by [EMAIL PROTECTED] on 2007/06/18 08:49:30
Subject: Re: Math::BigInt 1.87 problems? Re: FAIL DBI-1.56 i686-linux
2.4.27-3-686 [PATCH]
From: Tels <[EMAIL PROTECTED]>
Date: Fri, 15 Jun 2007 19:56:10 +0200
Message-Id: <[EMAIL PROTECTED]>
Affected files ...
... //depot/perl/ext/Math/BigInt/FastCalc/FastCalc.xs#8 edit
... //depot/perl/ext/Math/BigInt/FastCalc/t/bigintfc.t#3 edit
Differences ...
==== //depot/perl/ext/Math/BigInt/FastCalc/FastCalc.xs#8 (text) ====
Index: perl/ext/Math/BigInt/FastCalc/FastCalc.xs
--- perl/ext/Math/BigInt/FastCalc/FastCalc.xs#7~31309~ 2007-05-30
00:38:30.000000000 -0700
+++ perl/ext/Math/BigInt/FastCalc/FastCalc.xs 2007-06-18 01:49:30.000000000
-0700
@@ -59,11 +59,10 @@
/* create the array */
RETVAL = newAV();
sv_2mortal((SV*)RETVAL);
- /* cur = SvPV(x, len); printf ("input '%s'\n", cur); */
- if (SvIOK(x) && SvIV(x) < XS_BASE)
+ if (SvIOK(x) && SvUV(x) < XS_BASE)
{
/* shortcut for integer arguments */
- av_push (RETVAL, newSViv( SvIV(x) ));
+ av_push (RETVAL, newSVuv( SvUV(x) ));
}
else
{
==== //depot/perl/ext/Math/BigInt/FastCalc/t/bigintfc.t#3 (text) ====
Index: perl/ext/Math/BigInt/FastCalc/t/bigintfc.t
--- perl/ext/Math/BigInt/FastCalc/t/bigintfc.t#2~31172~ 2007-05-08
09:40:51.000000000 -0700
+++ perl/ext/Math/BigInt/FastCalc/t/bigintfc.t 2007-06-18 01:49:30.000000000
-0700
@@ -9,7 +9,7 @@
chdir 't' if -d 't';
unshift @INC, '../lib'; # for running manually
unshift @INC, '../blib/arch'; # for running manually
- plan tests => 359;
+ plan tests => 361;
}
use Math::BigInt::FastCalc;
@@ -32,6 +32,14 @@
ok (ref($x),'ARRAY'); ok ($C->_str($x),123); ok ($C->_str($y),321);
###############################################################################
+# _new(0xffffffff) (the test is important for 32 bit Perls)
+
+my $ff = $C->_new(0xffffffff);
+
+ok ($C->_str($ff),"4294967295"); # must not be -1
+ok (scalar @{ $ff }, 2); # must be two parts
+
+###############################################################################
# _add, _sub, _mul, _div
ok ($C->_str($C->_add($x,$y)),444);
ok ($C->_str($C->_sub($x,$y)),123);
End of Patch.