diff --git a/Data/FixedPoint.lhs b/Data/FixedPoint.lhs
--- a/Data/FixedPoint.lhs
+++ b/Data/FixedPoint.lhs
@@ -253,8 +253,8 @@
 >               in W128 rh rl
 >       a * b = go 0 0
 >         where
->         go 64 r = r
->         go i  r
+>         go 128 r = r
+>         go i   r
 >               | testBit b i  = go (i+1) (r + (a `shiftL` i))
 >               | otherwise    = go (i+1) r
 >       negate a = 0 - a
diff --git a/FixedPoint-simple.cabal b/FixedPoint-simple.cabal
--- a/FixedPoint-simple.cabal
+++ b/FixedPoint-simple.cabal
@@ -1,5 +1,5 @@
 Name:                FixedPoint-simple
-Version:             0.3
+Version:             0.3.1
 Synopsis:            Fixed point, large word, and large int numerical representations (types and common class instances)
 Description:         This library uses elementary techniques to implement fixed point types in terms
                      of basic integrals such as Word64.  All mathematical operations are implemented
