diff options
Diffstat (limited to 'src/lib/bignum.go')
-rwxr-xr-x | src/lib/bignum.go | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/lib/bignum.go b/src/lib/bignum.go index a4ea8c973..cc4d4df89 100755 --- a/src/lib/bignum.go +++ b/src/lib/bignum.go @@ -1261,8 +1261,12 @@ export func RatFromString(s string, base uint, slen *int) (*Rational, uint) { alen++; b, base = NatFromString(s[alen : len(s)], abase, &blen); assert(base == abase); - f := Nat(base).Pow(uint(blen)); - a = MakeInt(a.sign, a.mant.Mul(f).Add(b)); + //BUG f := Nat(base).Pow(uint(blen)); + na := Nat(base); + f := na.Pow(uint(blen)); + //BUG a = MakeInt(a.sign, a.mant.Mul(f).Add(b)); + nb := a.mant.Mul(f); + a = MakeInt(a.sign, nb.Add(b)); b = f; } } |