mirror of
https://github.com/nim-lang/Nim.git
synced 2026-05-02 12:04:44 +00:00
fixed another semicolon related parsing bug
This commit is contained in:
@@ -1798,10 +1798,9 @@ proc parseStmt(p: var TParser): PNode =
|
||||
if p.tok.indent == p.currInd:
|
||||
nil
|
||||
elif p.tok.tokType == tkSemicolon:
|
||||
while p.tok.tokType == tkSemicolon:
|
||||
getTok(p)
|
||||
if p.tok.indent < 0 or p.tok.indent == p.currInd: discard
|
||||
else: return
|
||||
getTok(p)
|
||||
if p.tok.indent < 0 or p.tok.indent == p.currInd: discard
|
||||
else: break
|
||||
else:
|
||||
if p.tok.indent > p.currInd:
|
||||
parMessage(p, errInvalidIndentation)
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
discard """
|
||||
output: '''Success'''
|
||||
"""
|
||||
|
||||
const romanNumbers1 =
|
||||
[
|
||||
@@ -22,3 +25,18 @@ const romanNumbers4 = [
|
||||
]
|
||||
|
||||
|
||||
proc main =
|
||||
var j = 0
|
||||
while j < 10:
|
||||
inc(j);
|
||||
|
||||
if j == 5: doAssert false
|
||||
|
||||
var j = 0
|
||||
while j < 10:
|
||||
inc(j);
|
||||
|
||||
if j == 5: doAssert false
|
||||
|
||||
main()
|
||||
echo "Success"
|
||||
Reference in New Issue
Block a user