From 4c7846e8a0336f71d5c16798e103980f83532c30 Mon Sep 17 00:00:00 2001 From: "andy@galois.com" Date: Tue, 1 May 2007 15:57:29 +0000 Subject: [PATCH] Stopping tick boxes for being removed round calls to error. --- compiler/simplCore/Simplify.lhs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/compiler/simplCore/Simplify.lhs b/compiler/simplCore/Simplify.lhs index 25dc2ba..cab6460 100644 --- a/compiler/simplCore/Simplify.lhs +++ b/compiler/simplCore/Simplify.lhs @@ -1165,6 +1165,9 @@ rebuildCase env scrut case_bndr [(con,bndrs,rhs)] cont -- The case binder is going to be evaluated later, -- and the scrutinee is a simple variable var_demanded_later (Var v) = isStrictDmd (idNewDemandInfo case_bndr) + && not (isTickBoxOp v) + -- ugly hack; covering this case is what + -- exprOkForSpeculation was intended for. var_demanded_later other = False -- 1.7.10.4