shithub: MicroHs

Download patch

ref: 1841a9ade05abfdc3ca6aa4186cc45ad6adda3c3
parent: 27165dac44e115db691d938428cefecc19226791
author: Lennart Augustsson <lennart.augustsson@epicgames.com>
date: Mon Mar 25 07:45:19 EDT 2024

Allow optional ';' before 'else'

--- a/src/MicroHs/Parse.hs
+++ b/src/MicroHs/Parse.hs
@@ -576,7 +576,7 @@
 pDo = EDo <$> ((Just <$> pQualDo) <|< (Nothing <$ pKeyword "do")) <*> pBlock pStmt
 
 pIf :: P Expr
-pIf = EIf <$> (pKeyword "if" *> pExpr) <*> (pKeyword "then" *> pExpr) <*> (pKeyword "else" *> pExpr)
+pIf = EIf <$> (pKeyword "if" *> pExpr) <*> (pKeyword "then" *> pExpr) <*> (eoptional (pSpec ';') *> pKeyword "else" *> pExpr)
 
 pQualDo :: P Ident
 pQualDo = do
--