Change 12001 by jhi@alpha on 2001/09/11 11:40:51
Retract #11984: div() being redefined, and 1397
failing on 64-bit platforms.
Affected files ...
... //depot/perl/lib/Math/BigInt/Calc.pm#6 edit
Differences ...
==== //depot/perl/lib/Math/BigInt/Calc.pm#6 (text) ====
Index: perl/lib/Math/BigInt/Calc.pm
--- perl/lib/Math/BigInt/Calc.pm.~1~ Tue Sep 11 05:45:05 2001
+++ perl/lib/Math/BigInt/Calc.pm Tue Sep 11 05:45:05 2001
@@ -8,7 +8,7 @@
use vars qw/@ISA $VERSION/;
@ISA = qw(Exporter);
-$VERSION = '0.11';
+$VERSION = '0.10';
# Package to store unsigned big integers in decimal and do math with them
@@ -19,8 +19,7 @@
# - fully remove funky $# stuff (maybe)
# USE_MUL: due to problems on certain os (os390, posix-bc) "* 1e-5" is used
-# instead of "/ 1e5" at some places, (marked with USE_MUL). Other platforms
-# BS2000, some Crays need USE_DIV instead.
+# instead of "/ 1e5" at some places, (marked with USE_MUL).
# The BEGIN block is used to determine which of the two variants gives the
# correct result.
@@ -30,7 +29,9 @@
# constants for easier life
my $nan = 'NaN';
-my ($BASE,$RBASE,$BASE_LEN);
+my $BASE_LEN = 7;
+my $BASE = int("1e".$BASE_LEN); # var for trying to change it to 1e7
+my $RBASE = abs('1e-'.$BASE_LEN); # see USE_MUL
BEGIN
{
@@ -45,17 +46,6 @@
$BASE_LEN = $e-1;
$BASE = int("1e".$BASE_LEN);
$RBASE = abs('1e-'.$BASE_LEN); # see USE_MUL
- if (int($BASE * $RBASE) == 0) # should be 1
- {
- # USE_DIV instead
- *{_mul} = \&_mul_use_div;
- *{_div} = \&_div_use_div;
- }
- else
- {
- *{_mul} = \&_mul_use_mul;
- *{_div} = \&_div_use_mul;
- }
}
# for quering and setting, to debug/benchmark things
@@ -218,7 +208,7 @@
}
}
-sub _mul_use_mul
+sub _mul
{
# (BINT, BINT) return nothing
# multiply two numbers in internal representation
End of Patch.