[project @ 2003-02-06 10:41:10 by ross]
authorross <unknown>
Thu, 6 Feb 2003 10:41:10 +0000 (10:41 +0000)
committerross <unknown>
Thu, 6 Feb 2003 10:41:10 +0000 (10:41 +0000)
Hugs-only: special definitions of fromInt & fromDouble.

Data/Complex.hs

index c9f8334..3b15691 100644 (file)
@@ -43,6 +43,10 @@ import Prelude
 import Data.Dynamic
 #endif
 
+#ifdef __HUGS__
+import Hugs.Prelude(Num(fromInt), Fractional(fromDouble))
+#endif
+
 infix  6  :+
 
 -- -----------------------------------------------------------------------------
@@ -106,6 +110,9 @@ instance  (RealFloat a) => Num (Complex a)  where
     signum 0           =  0
     signum z@(x:+y)    =  x/r :+ y/r  where r = magnitude z
     fromInteger n      =  fromInteger n :+ 0
+#ifdef __HUGS__
+    fromInt n          =  fromInt n :+ 0
+#endif
 
 instance  (RealFloat a) => Fractional (Complex a)  where
     {-# SPECIALISE instance Fractional (Complex Float) #-}
@@ -117,6 +124,9 @@ instance  (RealFloat a) => Fractional (Complex a)  where
                                 d   = x'*x'' + y'*y''
 
     fromRational a     =  fromRational a :+ 0
+#ifdef __HUGS__
+    fromDouble a       =  fromDouble a :+ 0
+#endif
 
 instance  (RealFloat a) => Floating (Complex a)        where
     {-# SPECIALISE instance Floating (Complex Float) #-}