Improve error reports for kind checking (Trac #2994)
[ghc-hetmet.git] / compiler / typecheck / TcSplice.lhs
index 49f1bf8..309874b 100644 (file)
@@ -381,7 +381,6 @@ runAnnotation target expr = do
     expr_ty <- newFlexiTyVarTy liftedTypeKind
     
     -- Find the classes we want instances for in order to call toAnnotationWrapper
-    _typeable_class <- tcLookupClass typeableClassName
     data_class <- tcLookupClass dataClassName
     
     -- Check the instances we require live in another module (we want to execute it..)
@@ -566,7 +565,7 @@ kcTopSpliceType expr
        ; let doc = ptext (sLit "In the spliced type") <+> ppr hs_ty2
        ; hs_ty3 <- checkNoErrs (rnLHsType doc hs_ty2)
 
-       ; kcHsType hs_ty3 }
+       ; kcLHsType hs_ty3 }
 \end{code}
 
 %************************************************************************
@@ -826,11 +825,7 @@ lookupThName_maybe th_name
             ; rdr_env <- getLocalRdrEnv
             ; case lookupLocalRdrEnv rdr_env rdr_name of
                 Just name -> return (Just name)
-                Nothing | not (isSrcRdrName rdr_name)  -- Exact, Orig
-                        -> do { name <- lookupImportedName rdr_name
-                              ; return (Just name) }
-                        | otherwise                    -- Unqual, Qual
-                        -> lookupSrcOcc_maybe rdr_name }
+                Nothing   -> lookupGlobalOccRn_maybe rdr_name }
 
 tcLookupTh :: Name -> TcM TcTyThing
 -- This is a specialised version of TcEnv.tcLookup; specialised mainly in that
@@ -877,7 +872,7 @@ reifyThing (AGlobal (AnId id))
   = do { ty <- reifyType (idType id)
        ; fix <- reifyFixity (idName id)
        ; let v = reifyName id
-       ; case globalIdDetails id of
+       ; case idDetails id of
            ClassOpId cls    -> return (TH.ClassOpI v ty (reifyName cls) fix)
            _                -> return (TH.VarI     v ty Nothing fix)
     }