git.iko.soy/rowtype-yoga/purescript-native
on golang help sign in
Do not allow empty case statement

Fixes #1435

commitdfa1ce476b39b3cea6e10c76ede50dec8ad28d5b authorKonstantin Zudov <konstantin@anche.no> dateSat 29 Aug 2015, 08:55 (11 years ago) parentdd260bd
2 files changed+5−1
examples/failing/EmptyCase.purs+4 src/Language/PureScript/Parser/Declarations.hs+1−1
examples/failing/EmptyCase.pursnew file+4
@@ -0,0 +1,4 @@
1+-- @shouldFailWith ErrorParsingModule
2+module Main where
3+
4+error err = case err of \_ -> 1
src/Language/PureScript/Parser/Declarations.hs+1−1
@@ -366,7 +366,7 @@ parseConstructor = Constructor <$> C.parseQualified C.properName
366366
367367parseCase :: TokenParser Expr
368368parseCase = Case <$> P.between (P.try (reserved "case")) (C.indented *> reserved "of") (return <$> parseValue)
369− <*> (C.indented *> C.mark (P.many (C.same *> C.mark parseCaseAlternative)))
369+ <*> (C.indented *> C.mark (P.many1 (C.same *> C.mark parseCaseAlternative)))
370370
371371parseCaseAlternative :: TokenParser CaseAlternative
372372parseCaseAlternative = CaseAlternative <$> (return <$> parseBinder)