From: audreyt@audreyt.org Date: Fri, 22 Sep 2006 04:06:18 +0000 (+0000) Subject: Repair "ghci" under FC+AT by handling AnnCast in bytecode generator. X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;h=844fa86873b806594191043afdea638472f45619;p=ghc-hetmet.git Repair "ghci" under FC+AT by handling AnnCast in bytecode generator. --- diff --git a/compiler/ghci/ByteCodeGen.lhs b/compiler/ghci/ByteCodeGen.lhs index 725ba6a..db4e18c 100644 --- a/compiler/ghci/ByteCodeGen.lhs +++ b/compiler/ghci/ByteCodeGen.lhs @@ -424,6 +424,9 @@ schemeE d s p (AnnCase scrut bndr _ alts) schemeE d s p (AnnNote note (_, body)) = schemeE d s p body +schemeE d s p (AnnCast (_, body) _) + = schemeE d s p body + schemeE d s p other = pprPanic "ByteCodeGen.schemeE: unhandled case" (pprCoreExpr (deAnnotate' other)) diff --git a/compiler/iface/IfaceSyn.lhs b/compiler/iface/IfaceSyn.lhs index cef2bf1..75ba52f 100644 --- a/compiler/iface/IfaceSyn.lhs +++ b/compiler/iface/IfaceSyn.lhs @@ -754,7 +754,7 @@ type EqEnv = UniqFM FastString -- Tracks the mapping from L-variables to R-varia eqIfOcc :: EqEnv -> FastString -> FastString -> IfaceEq eqIfOcc env n1 n2 = case lookupUFM env n1 of Just n1 -> bool (n1 == n2) - Nothing -> bool (n1 == n2) + Nothing -> bool (show n1 == show n2) extendEqEnv :: EqEnv -> FastString -> FastString -> EqEnv extendEqEnv env n1 n2 | n1 == n2 = env diff --git a/compiler/typecheck/TcRnDriver.lhs b/compiler/typecheck/TcRnDriver.lhs index 86061be..875d4f6 100644 --- a/compiler/typecheck/TcRnDriver.lhs +++ b/compiler/typecheck/TcRnDriver.lhs @@ -563,6 +563,7 @@ missingBootThing thing = ppr thing <+> ptext SLIT("is defined in the hs-boot file, but not in the module") bootMisMatch thing boot_decl real_decl = ppr thing <+> ptext SLIT("has conflicting definitions in the module and its hs-boot file") + $+$ (ppr boot_decl) $+$ (ppr real_decl) instMisMatch inst = hang (ppr inst) 2 (ptext SLIT("is defined in the hs-boot file, but not in the module"))