import FiniteMap
import PrelNames ( pRELUDE, isUnboundName, main_RDR_Unqual )
-import Module ( Module, moduleUserString, unitModuleEnv,
+import Module ( Module, moduleString, unitModuleEnv,
lookupModuleEnv, moduleEnvElts, foldModuleEnv )
import Name ( Name, nameSrcLoc, nameOccName, nameModule, isWiredInName,
nameParent, nameParent_maybe, isExternalName,
isBuiltInSyntax )
import NameSet
import NameEnv
-import OccName ( srcDataName, isTcOcc, occNameFlavour, OccEnv,
- mkOccEnv, lookupOccEnv, emptyOccEnv, extendOccEnv )
+import OccName ( srcDataName, isTcOcc, pprNonVarNameSpace,
+ occNameSpace,
+ OccEnv, mkOccEnv, lookupOccEnv, emptyOccEnv,
+ extendOccEnv )
import HscTypes ( GenAvailInfo(..), AvailInfo,
HomePackageTable, PackageIfaceTable,
unQualInScope,
; this_mod = tcg_mod gbl_env
; imports = emptyImportAvails {
imp_env = unitModuleEnv this_mod $
- mkNameSet filtered_names
+ mkNameSet filtered_names
}
}
- ; rdr_env' <- extendRdrEnvRn this_mod (tcg_rdr_env gbl_env) names
+ ; rdr_env' <- extendRdrEnvRn (tcg_rdr_env gbl_env) names
; returnM (gbl_env { tcg_rdr_env = rdr_env',
tcg_imports = imports `plusImportAvails` tcg_imports gbl_env })
}
-extendRdrEnvRn :: Module -> GlobalRdrEnv -> [Name] -> RnM GlobalRdrEnv
+extendRdrEnvRn :: GlobalRdrEnv -> [Name] -> RnM GlobalRdrEnv
-- Add the new locally-bound names one by one, checking for duplicates as
-- we do so. Remember that in Template Haskell the duplicates
-- might *already be* in the GlobalRdrEnv from higher up the module
-extendRdrEnvRn mod rdr_env names
+extendRdrEnvRn rdr_env names
= foldlM add_local rdr_env names
where
add_local rdr_env name
| otherwise
= return (extendGlobalRdrEnv rdr_env new_gre)
where
- new_gre = GRE {gre_name = name, gre_prov = prov}
-
- prov = LocalDef mod
+ new_gre = GRE {gre_name = name, gre_prov = LocalDef}
\end{code}
@getLocalDeclBinders@ returns the names for an @HsDecl@. It's
new_simple rdr_name = newTopSrcBinder mod Nothing rdr_name
- sig_hs_bndrs = [nm | L _ (Sig nm _) <- val_sigs]
+ sig_hs_bndrs = [nm | L _ (TypeSig nm _) <- val_sigs]
val_hs_bndrs = collectHsBindLocatedBinders val_decls
for_hs_bndrs = [nm | L _ (ForeignImport nm _ _ _) <- foreign_decls]
, Just deprec_txt <- lookupDeprec hpt pit name
= setSrcSpan (importSpecLoc imp_spec) $
addWarn (sep [ptext SLIT("Deprecated use of") <+>
- occNameFlavour (nameOccName name) <+>
+ pprNonVarNameSpace (occNameSpace (nameOccName name)) <+>
quotes (ppr name),
(parens imp_msg) <> colon,
(ppr deprec_txt) ])
(vcat (map ppr_mod_ie mod_ies)) })
}
where
- mkFilename this_mod = moduleUserString this_mod ++ ".imports"
+ mkFilename this_mod = moduleString this_mod ++ ".imports"
ppr_mod_ie (mod_name, ies)
| mod_name == pRELUDE
= empty