projects
/
ghc-hetmet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
The Big INLINE Patch: totally reorganise way that INLINE pragmas work
[ghc-hetmet.git]
/
compiler
/
deSugar
/
DsExpr.lhs
diff --git
a/compiler/deSugar/DsExpr.lhs
b/compiler/deSugar/DsExpr.lhs
index
6d7d762
..
94009fd
100644
(file)
--- a/
compiler/deSugar/DsExpr.lhs
+++ b/
compiler/deSugar/DsExpr.lhs
@@
-51,6
+51,7
@@
import StaticFlags
import CostCentre
import Id
import Var
import CostCentre
import Id
import Var
+import VarSet
import PrelInfo
import DataCon
import TysWiredIn
import PrelInfo
import DataCon
import TysWiredIn
@@
-210,7
+211,9
@@
dsExpr (HsVar var) = return (Var var)
dsExpr (HsIPVar ip) = return (Var (ipNameName ip))
dsExpr (HsLit lit) = dsLit lit
dsExpr (HsOverLit lit) = dsOverLit lit
dsExpr (HsIPVar ip) = return (Var (ipNameName ip))
dsExpr (HsLit lit) = dsLit lit
dsExpr (HsOverLit lit) = dsOverLit lit
-dsExpr (HsWrap co_fn e) = dsCoercion co_fn (dsExpr e)
+dsExpr (HsWrap co_fn e) = do { co_fn' <- dsCoercion co_fn
+ ; e' <- dsExpr e
+ ; return (co_fn' e') }
dsExpr (NegApp expr neg_expr)
= App <$> dsExpr neg_expr <*> dsLExpr expr
dsExpr (NegApp expr neg_expr)
= App <$> dsExpr neg_expr <*> dsLExpr expr
@@
-645,7
+648,6
@@
makes all list literals be generated via the simple route.
\begin{code}
\begin{code}
-
dsExplicitList :: PostTcType -> [LHsExpr Id] -> DsM CoreExpr
-- See Note [Desugaring explicit lists]
dsExplicitList elt_ty xs
dsExplicitList :: PostTcType -> [LHsExpr Id] -> DsM CoreExpr
-- See Note [Desugaring explicit lists]
dsExplicitList elt_ty xs