From 81f57f1ed26c47f0af83b2bc8c9be71fffef2638 Mon Sep 17 00:00:00 2001 From: Twan van Laarhoven Date: Sun, 3 Feb 2008 21:12:53 +0000 Subject: [PATCH] Fixed warnings in deSugar/DsListComp, except for incomplete pattern matches --- compiler/deSugar/DsListComp.lhs | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/compiler/deSugar/DsListComp.lhs b/compiler/deSugar/DsListComp.lhs index 35ff21f..a908c78 100644 --- a/compiler/deSugar/DsListComp.lhs +++ b/compiler/deSugar/DsListComp.lhs @@ -6,7 +6,7 @@ Desugaring list comprehensions and array comprehensions \begin{code} -{-# OPTIONS -w #-} +{-# OPTIONS -fno-warn-incomplete-patterns #-} -- The above warning supression flag is a temporary kludge. -- While working on this module you are encouraged to remove it and fix -- any warnings in the module. See @@ -15,11 +15,12 @@ Desugaring list comprehensions and array comprehensions module DsListComp ( dsListComp, dsPArrComp ) where +-- XXX This define is a bit of a hack, and should be done more nicely +#define FAST_STRING_NOT_NEEDED 1 #include "HsVersions.h" import {-# SOURCE #-} DsExpr ( dsLExpr, dsLocalBinds ) -import BasicTypes import HsSyn import TcHsSyn import CoreSyn @@ -37,7 +38,6 @@ import Match import PrelNames import PrelInfo import SrcLoc -import Panic import Outputable import Control.Monad ( liftM2 ) @@ -294,6 +294,12 @@ deListComp (BindStmt pat list1 _ _ : quals) body core_list2 = do -- rule A' abov \begin{code} +deBindComp :: OutPat Id + -> CoreExpr + -> [Stmt Id] + -> LHsExpr Id + -> CoreExpr + -> DsM (Expr Id) deBindComp pat core_list1 quals body core_list2 = do let u3_ty@u1_ty = exprType core_list1 -- two names, same thing @@ -623,6 +629,7 @@ dePArrComp (ParStmt _ : _) _ _ _ = -- where -- {x_1, ..., x_n} = DV (qs) -- +dePArrParComp :: [([LStmt Id], [Id])] -> LHsExpr Id -> DsM CoreExpr dePArrParComp qss body = do (pQss, ceQss) <- deParStmt qss dePArrComp [] body pQss ceQss -- 1.7.10.4