From cfad19784438b87afe1809d29ed97d16ba3c4aa9 Mon Sep 17 00:00:00 2001
From: sof <unknown>
Date: Sun, 3 Aug 1997 02:16:28 +0000
Subject: [PATCH] [project @ 1997-08-03 02:16:28 by sof] derivingOccurrences:
 added occurrence info (return and zero) for Ix

---
 ghc/compiler/prelude/PrelInfo.lhs | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/ghc/compiler/prelude/PrelInfo.lhs b/ghc/compiler/prelude/PrelInfo.lhs
index 0dab7976b596..5b841972069d 100644
--- a/ghc/compiler/prelude/PrelInfo.lhs
+++ b/ghc/compiler/prelude/PrelInfo.lhs
@@ -494,7 +494,12 @@ deriving_occ_info
 			 showParen_RDR, showSpace_RDR, showList___RDR])
     , (readClassKey,	[intTyCon_RDR, numClass_RDR, ordClass_RDR, append_RDR, 
 			 lex_RDR, readParen_RDR, readList___RDR])
-    , (ixClassKey,	[intTyCon_RDR, numClass_RDR, and_RDR, map_RDR, enumFromTo_RDR])
+    , (ixClassKey,	[intTyCon_RDR, numClass_RDR, and_RDR, map_RDR, enumFromTo_RDR, 
+			 returnM_RDR, zeroM_RDR])
+			     -- the last two are needed to force returnM, thenM and zeroM
+			     -- in before typechecking the list(monad) comprehension
+			     -- generated for derived Ix instances (range method)
+			     -- of single constructor types.  -- SOF 8/97
     ]
 	-- intTyCon: Practically any deriving needs Int, either for index calculations, 
 	--		or for taggery.
-- 
GitLab