From 13dccaba4d840021ef72358a76db76b019500f71 Mon Sep 17 00:00:00 2001 From: Adam Sampson Date: Wed, 2 May 2007 13:18:41 +0000 Subject: [PATCH] Fix "? CASE tag" parsing in ALTs --- fco2/Parse.hs | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/fco2/Parse.hs b/fco2/Parse.hs index a52873a..755980e 100644 --- a/fco2/Parse.hs +++ b/fco2/Parse.hs @@ -1778,15 +1778,13 @@ alternative -- These are special cases to deal with c ? CASE inside ALTs -- the normal -- guards are below. <|> do m <- md - (b, c) <- tryVXVXX booleanExpr sAmp channel sQuest sCASE + (b, c) <- tryVXVXX booleanExpr sAmp channel sQuest (sCASE >> eol) nts <- caseInputItems c - eol vs <- maybeIndentedList m "empty ? CASE" (variant nts) return $ A.OnlyA m (A.AlternativeCond m b c (A.InputCase m $ A.Several m vs) (A.Skip m)) <|> do m <- md - c <- tryVXX channel sQuest sCASE + c <- tryVXX channel sQuest (sCASE >> eol) nts <- caseInputItems c - eol vs <- maybeIndentedList m "empty ? CASE" (variant nts) return $ A.OnlyA m (A.Alternative m c (A.InputCase m $ A.Several m vs) (A.Skip m)) <|> guardedAlternative