diff --git a/ShellCheck/Parser.hs b/ShellCheck/Parser.hs index 0212dc1..51afcd5 100644 --- a/ShellCheck/Parser.hs +++ b/ShellCheck/Parser.hs @@ -1364,6 +1364,7 @@ prop_readForClause4 = isOk readForClause "for((i=0; i<10; i++)); do echo $i; don prop_readForClause5 = isOk readForClause "for ((i=0;i<10 && n>x;i++,--n))\ndo \necho $i\ndone" prop_readForClause6 = isOk readForClause "for ((;;))\ndo echo $i\ndone" prop_readForClause7 = isOk readForClause "for ((;;)) do echo $i\ndone" +prop_readForClause8 = isOk readForClause "for ((;;)) ; do echo $i\ndone" readForClause = called "for loop" $ do pos <- getPosition (T_For id) <- g_For @@ -1381,7 +1382,8 @@ readForClause = called "for loop" $ do z <- readArithmeticContents spacing string "))" - readSequentialSep <|> disregard spacing + spacing + optional $ readSequentialSep >> spacing return $ \id group -> (return $ T_ForArithmetic id x y z group) readRegular = do