[project @ 2000-05-28 20:45:45 by panne]
authorpanne <unknown>
Sun, 28 May 2000 20:45:45 +0000 (20:45 +0000)
committerpanne <unknown>
Sun, 28 May 2000 20:45:45 +0000 (20:45 +0000)
commit33aaa8a620d2036d88ad78bd3cffcb62c43b6625
tree835365f01d9ed13669423a6c651d8df36b7caa17
parentdd6234ccf703f266a8c7e6e764765c6f39e2a4a2
[project @ 2000-05-28 20:45:45 by panne]
Rewrote RULES for gcd and lcm without forall. The old versions *did
not* always fire because of a strange interaction with automatically
generated specialisations for gcd! Example for this misbehaviour:

   main :: IO ()
   main = do
      print (gcd             15675            156750 :: Integer)
      print (gcd 12345678987651075            156750 :: Integer)
      print (gcd            156750 12345678987651075 :: Integer)
      print (gcd  2469135797530215 12345678987651075 :: Integer)

I don't understand why the new version works and the old one did not,
so somebody else should probably have a look at this phenomenon.

*please merge* (like all my commits in the last few days :-}
ghc/lib/std/PrelReal.lhs