import HsSyn
import HsPragmas
import HsTypes ( hsTyVarNames, pprHsContext )
-import RdrName ( RdrName, isRdrDataCon, rdrNameOcc, isRdrTyVar, mkRdrNameWkr )
+import RdrName ( RdrName, isRdrDataCon, rdrNameOcc, mkRdrNameWkr )
import RdrHsSyn ( RdrNameContext, RdrNameHsType, RdrNameConDecl,
extractRuleBndrsTyVars, extractHsTyRdrTyVars,
- extractHsTysRdrTyVars, extractHsCtxtRdrTyVars
+ extractHsCtxtRdrTyVars
)
import RnHsSyn
import HsCore
-import RnBinds ( rnTopBinds, rnMethodBinds, renameSigs, unknownSigErr )
-import RnEnv ( bindTyVarsRn, lookupTopBndrRn, lookupOccRn, newIPName,
- lookupOrigName, lookupOrigNames, lookupSysBinder,
- bindLocalsRn, bindLocalRn, bindLocalsFVRn, bindUVarRn,
+import RnBinds ( rnTopBinds, rnMethodBinds, renameSigs )
+import RnEnv ( lookupTopBndrRn, lookupOccRn, newIPName,
+ lookupOrigNames, lookupSysBinder,
+ bindLocalsFVRn, bindUVarRn,
bindTyVarsFVRn, bindTyVarsFV2Rn, extendTyVarEnvFVRn,
bindCoreLocalFVRn, bindCoreLocalsFVRn, bindLocalNames,
checkDupOrQualNames, checkDupNames,
import FunDeps ( oclose )
import Class ( FunDep )
-
-import Name ( Name, OccName,
- ExportFlag(..), Provenance(..),
- nameOccName, NamedThing(..)
- )
+import Name ( Name, OccName, nameOccName, NamedThing(..) )
import NameSet
-import OccName ( mkDefaultMethodOcc )
import FiniteMap ( elemFM )
-import PrelInfo ( derivableClassKeys, cCallishClassKeys,
- deRefStablePtr_RDR, makeStablePtr_RDR,
+import PrelInfo ( derivableClassKeys, cCallishClassKeys )
+import PrelNames ( deRefStablePtr_RDR, makeStablePtr_RDR,
bindIO_RDR, returnIO_RDR
)
import Bag ( bagToList )
import Unique ( Uniquable(..) )
import ErrUtils ( Message )
import CStrings ( isCLabelString )
-import Maybes ( maybeToBool, catMaybes )
import Util
\end{code}
rnBangTy doc ty2 `thenRn` \ (new_ty2, fvs2) ->
returnRn (InfixCon new_ty1 new_ty2, fvs1 `plusFV` fvs2)
-rnConDetails doc locn (NewCon ty mb_field)
- = rnHsType doc ty `thenRn` \ (new_ty, fvs) ->
- rn_field mb_field `thenRn` \ new_mb_field ->
- returnRn (NewCon new_ty new_mb_field, fvs)
- where
- rn_field Nothing = returnRn Nothing
- rn_field (Just f) =
- lookupTopBndrRn f `thenRn` \ new_f ->
- returnRn (Just new_f)
-
rnConDetails doc locn (RecCon fields)
= checkDupOrQualNames doc field_names `thenRn_`
mapFvRn (rnField doc) fields `thenRn` \ (new_fields, fvs) ->
rnIdInfo (HsUnfold inline expr) = rnCoreExpr expr `thenRn` \ (expr', fvs) ->
returnRn (HsUnfold inline expr', fvs)
rnIdInfo (HsArity arity) = returnRn (HsArity arity, emptyFVs)
-rnIdInfo (HsUpdate update) = returnRn (HsUpdate update, emptyFVs)
rnIdInfo HsNoCafRefs = returnRn (HsNoCafRefs, emptyFVs)
rnIdInfo HsCprInfo = returnRn (HsCprInfo, emptyFVs)
(ptext SLIT("In") <+> doc))
}
-forAllErr doc ty tyvar
- = addErrRn (
- sep [ptext SLIT("The constrained type variable") <+> quotes (ppr tyvar),
- nest 4 (ptext SLIT("does not appear in the type") <+> quotes (ppr ty))]
- $$
- (ptext SLIT("In") <+> doc))
-
badRuleLhsErr name lhs
= sep [ptext SLIT("Rule") <+> ptext name <> colon,
nest 4 (ptext SLIT("Illegal left-hand side:") <+> ppr lhs)]