summaryrefslogtreecommitdiff
path: root/ghc/compiler/compMan/CompManager.lhs
diff options
context:
space:
mode:
authorsimonpj <unknown>2002-12-02 17:10:13 +0000
committersimonpj <unknown>2002-12-02 17:10:13 +0000
commitaa78876d2949ebd4565e9b88ce64cedad581b60f (patch)
tree42ec3ab1ffc6dcabab980abbd43ff83900b83044 /ghc/compiler/compMan/CompManager.lhs
parentbd87e78712f1383979e9502dc9045d74e9b2e651 (diff)
downloadhaskell-aa78876d2949ebd4565e9b88ce64cedad581b60f.tar.gz
[project @ 2002-12-02 17:10:13 by simonpj]
Use the right PackageIfaceTable in cmInfoThing
Diffstat (limited to 'ghc/compiler/compMan/CompManager.lhs')
-rw-r--r--ghc/compiler/compMan/CompManager.lhs9
1 files changed, 5 insertions, 4 deletions
diff --git a/ghc/compiler/compMan/CompManager.lhs b/ghc/compiler/compMan/CompManager.lhs
index f026f5bb29..6dc4c6efd3 100644
--- a/ghc/compiler/compMan/CompManager.lhs
+++ b/ghc/compiler/compMan/CompManager.lhs
@@ -256,16 +256,17 @@ cmModuleIsInterpreted cmstate str
cmInfoThing :: CmState -> DynFlags -> String -> IO (CmState, [(TyThing,Fixity)])
cmInfoThing cmstate dflags id
= do (new_pcs, things) <- hscThing hsc_env pcs icontext id
- let pairs = map (\x -> (x, getFixity new_pcs (getName x))) things
+ let new_pit = eps_PIT (pcs_EPS new_pcs)
+ pairs = map (\x -> (x, getFixity new_pit (getName x))) things
return (cmstate{ pcs=new_pcs }, pairs)
where
CmState{ hpt=hpt, pcs=pcs, ic=icontext } = cmstate
hsc_env = HscEnv { hsc_mode = Interactive,
hsc_dflags = dflags,
hsc_HPT = hpt }
- pit = eps_PIT (pcs_EPS pcs)
- getFixity :: PersistentCompilerState -> Name -> Fixity
- getFixity pcs name
+
+ getFixity :: PackageIfaceTable -> Name -> Fixity
+ getFixity pit name
| isExternalName name,
Just iface <- lookupIface hpt pit (nameModule name),
Just (FixitySig _ fixity _) <- lookupNameEnv (mi_fixities iface) name