diff options
Diffstat (limited to 'compiler/deSugar/Desugar.hs')
-rw-r--r-- | compiler/deSugar/Desugar.hs | 19 |
1 files changed, 4 insertions, 15 deletions
diff --git a/compiler/deSugar/Desugar.hs b/compiler/deSugar/Desugar.hs index aa24ee0a5d..aa9748ee35 100644 --- a/compiler/deSugar/Desugar.hs +++ b/compiler/deSugar/Desugar.hs @@ -149,8 +149,7 @@ deSugar hsc_env keep_alive <- readIORef keep_var ; let (rules_for_locals, rules_for_imps) = partition isLocalRule all_rules final_prs = addExportFlagsAndRules target export_set keep_alive - mod rules_for_locals - (fromOL all_prs) + rules_for_locals (fromOL all_prs) final_pgm = combineEvBinds ds_ev_binds final_prs -- Notice that we put the whole lot in a big Rec, even the foreign binds @@ -284,9 +283,9 @@ deSugarExpr hsc_env tc_expr = do { -} addExportFlagsAndRules - :: HscTarget -> NameSet -> NameSet -> Module -> [CoreRule] + :: HscTarget -> NameSet -> NameSet -> [CoreRule] -> [(Id, t)] -> [(Id, t)] -addExportFlagsAndRules target exports keep_alive mod rules prs +addExportFlagsAndRules target exports keep_alive rules prs = mapFst add_one prs where add_one bndr = add_rules name (add_export name bndr) @@ -319,20 +318,10 @@ addExportFlagsAndRules target exports keep_alive mod rules prs -- simplification), and retain them all in the TypeEnv so they are -- available from the command line. -- - -- Most of the time, this can be accomplished by use of - -- targetRetainsAllBindings, which returns True if the target is - -- HscInteractive. However, there are cases when one can use GHCi with - -- a target other than HscInteractive (e.g., with the -fobject-code - -- flag enabled, as in #12091). In such scenarios, - -- targetRetainsAllBindings can return False, so we must fall back on - -- isInteractiveModule to be doubly sure we export entities defined in - -- a GHCi session. - -- -- isExternalName separates the user-defined top-level names from those -- introduced by the type checker. is_exported :: Name -> Bool - is_exported | targetRetainsAllBindings target - || isInteractiveModule mod = isExternalName + is_exported | targetRetainsAllBindings target = isExternalName | otherwise = (`elemNameSet` exports) {- |