From 9dec3c70d9b167de5fefe824ea1b7ef5370b8778 Mon Sep 17 00:00:00 2001 From: simonpj Date: Mon, 27 Oct 2003 14:04:28 +0000 Subject: [PATCH] [project @ 2003-10-27 14:04:28 by simonpj] Eliminate bogus warning --- ghc/compiler/coreSyn/Subst.lhs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ghc/compiler/coreSyn/Subst.lhs b/ghc/compiler/coreSyn/Subst.lhs index 2fba197..dee369c 100644 --- a/ghc/compiler/coreSyn/Subst.lhs +++ b/ghc/compiler/coreSyn/Subst.lhs @@ -43,6 +43,7 @@ import CoreSyn ( Expr(..), Bind(..), Note(..), CoreExpr, Unfolding(..) ) import CoreFVs ( exprFreeVars ) +import CoreUtils ( exprIsTrivial ) import TypeRep ( Type(..), TyNote(..) ) -- friend import Type ( ThetaType, PredType(..), tyVarsOfType, tyVarsOfTypes, mkAppTy, @@ -798,8 +799,10 @@ substWorker subst (HasWorker w a) = case lookupIdSubst subst w of (DoneId w1 _) -> HasWorker w1 a (DoneEx (Var w1)) -> HasWorker w1 a - (DoneEx other) -> WARN( True, text "substWorker: DoneEx" <+> ppr w ) + (DoneEx other) -> WARN( not (exprIsTrivial other), text "substWorker: DoneEx" <+> ppr w ) NoWorker -- Worker has got substituted away altogether + -- This can happen if it's trivial, + -- via postInlineUnconditionally (ContEx se1 e) -> WARN( True, text "substWorker: ContEx" <+> ppr w <+> ppr e) NoWorker -- Ditto -- 1.7.10.4