Fix a few mistakes
authorMatthew Pickering <matthewtpickering@gmail.com>
Sat, 23 Mar 2019 13:15:33 +0000 (13:15 +0000)
committerMatthew Pickering <matthewtpickering@gmail.com>
Sat, 23 Mar 2019 13:15:33 +0000 (13:15 +0000)
compiler/deSugar/MatchLit.hs
libraries/base/GHC/Real.hs

index 0115952..428b519 100644 (file)
@@ -49,7 +49,7 @@ import DynFlags
 import Util
 import FastString
 import qualified GHC.LanguageExtensions as LangExt
-import GHC.Real
+import GHC.Real hiding (FractionalExponentBase(..))
 
 import Control.Monad
 import Data.Int
@@ -115,7 +115,8 @@ dsRational (n :% d) = do
   dcn <- dsLookupDataCon ratioDataConName
   cn <- mkIntegerExpr n
   dn <- mkIntegerExpr d
-  return $ mkCoreConApps dcn [cn, dn]
+  t <- mkTyConTy <$> dsLookupTyCon integerTyConName
+  return $ mkCoreConApps dcn [Type t, cn, dn]
 
 
 dsOverLit :: HsOverLit GhcTc -> DsM CoreExpr
index 4e00ad6..cb88934 100644 (file)
@@ -801,14 +801,14 @@ data FractionalExponentBase
   deriving (Show)
 
 mkRationalBase2 :: Rational -> Integer -> Rational
-mkRationalBase2 r e = mkRationalWithExponentBase i j e Base2
+mkRationalBase2 r e = mkRationalWithExponentBase r e Base2
 
 mkRationalBase10 :: Rational -> Integer -> Rational
-mkRationalBase10 r e = mkRationalWithExponentBase i j e Base10
+mkRationalBase10 r e = mkRationalWithExponentBase r e Base10
 
 mkRationalWithExponentBase :: Rational -> Integer
                            -> FractionalExponentBase -> Rational
-mkRationalWithExponentBase r feb = r * (eb ^^ e)
+mkRationalWithExponentBase r feb = r * (eb ^^ e)
   where eb = case feb of Base2 -> 2 ; Base10 -> 10
 
 -- Note [fractional exponent bases] For hexadecimal rationals of