diff options
author | Ben Gamari <ben@smart-cactus.org> | 2016-10-13 19:04:12 -0400 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2016-10-13 19:09:13 -0400 |
commit | 37cca2646e4503c572fd386f47479b24aadd1711 (patch) | |
tree | 92e77c0479a301c96683ba9c0251a9b58ab95a44 /compiler/iface/IfaceEnv.hs | |
parent | 82f3f6c68018d93b855d808c36865ce6046514bb (diff) | |
download | haskell-wip/names3.tar.gz |
Fix DFun renamingwip/names3
Diffstat (limited to 'compiler/iface/IfaceEnv.hs')
-rw-r--r-- | compiler/iface/IfaceEnv.hs | 23 |
1 files changed, 3 insertions, 20 deletions
diff --git a/compiler/iface/IfaceEnv.hs b/compiler/iface/IfaceEnv.hs index 581aa1f393..46bc0e9905 100644 --- a/compiler/iface/IfaceEnv.hs +++ b/compiler/iface/IfaceEnv.hs @@ -255,27 +255,10 @@ extendIfaceEnvs tcvs thing_inside ************************************************************************ -} +-- | Look up a top-level name from the current Iface module lookupIfaceTop :: OccName -> IfL Name --- Look up a top-level name from the current Iface module -lookupIfaceTop occ = do - lcl_env <- getLclEnv - -- NB: this is a semantic module, see - -- Note [Identity versus semantic module] - mod <- getIfModule - case if_nsubst lcl_env of - -- NOT substNameShape because 'getIfModule' returns the - -- renamed module (d'oh!) - Just nsubst -> - case lookupOccEnv (ns_map nsubst) occ of - Just n' -> - -- I thought this would be help but it turns out - -- n' doesn't have any useful information. Drat! - -- return (setNameLoc n' (nameSrcSpan n)) - return n' - -- This case can occur when we encounter a DFun; - -- see Note [Bogus DFun renamings] - Nothing -> lookupOrig mod occ - _ -> lookupOrig mod occ +lookupIfaceTop occ + = do { env <- getLclEnv; lookupOrig (if_mod env) occ } newIfaceName :: OccName -> IfL Name newIfaceName occ |