diff options
Diffstat (limited to 'compiler/specialise/SpecConstr.lhs')
-rw-r--r-- | compiler/specialise/SpecConstr.lhs | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/compiler/specialise/SpecConstr.lhs b/compiler/specialise/SpecConstr.lhs index 12492836ab..d2c07bcc1b 100644 --- a/compiler/specialise/SpecConstr.lhs +++ b/compiler/specialise/SpecConstr.lhs @@ -31,6 +31,7 @@ import CoreUtils import CoreUnfold ( couldBeSmallEnoughToInline ) import CoreFVs ( exprsFreeVars ) import CoreMonad +import Literal ( litIsLifted ) import HscTypes ( ModGuts(..) ) import WwLib ( mkWorkerArgs ) import DataCon @@ -1714,7 +1715,8 @@ argsToPats env in_scope val_env args occs \begin{code} isValue :: ValueEnv -> CoreExpr -> Maybe Value isValue _env (Lit lit) - = Just (ConVal (LitAlt lit) []) + | litIsLifted lit = Nothing + | otherwise = Just (ConVal (LitAlt lit) []) isValue env (Var v) | Just stuff <- lookupVarEnv env v |