Added chained imports test

This commit is contained in:
Mattia Giambirtone 2022-08-16 14:23:49 +02:00
parent 9a19fad1ad
commit fc14cfec2d
3 changed files with 11 additions and 3 deletions

View File

@ -688,7 +688,7 @@ proc forEachStmt(self: Parser): Statement =
self.currentLoop = enclosingLoop
proc parse*(self: Parser, tokens: seq[Token], file: string, lines: seq[tuple[start, stop: int]], source: string): seq[Declaration]
proc parse*(self: Parser, tokens: seq[Token], file: string, lines: seq[tuple[start, stop: int]], source: string, persist: bool = false): seq[Declaration]
proc findOperators(self: Parser, tokens: seq[Token])
@ -1250,7 +1250,7 @@ proc findOperators(self: Parser, tokens: seq[Token]) =
self.error("invalid state: found malformed tokenizer input while looking for operators (missing EOF)", token)
proc parse*(self: Parser, tokens: seq[Token], file: string, lines: seq[tuple[start, stop: int]], source: string): seq[Declaration] =
proc parse*(self: Parser, tokens: seq[Token], file: string, lines: seq[tuple[start, stop: int]], source: string, persist: bool = false): seq[Declaration] =
## Parses a sequence of tokens into a sequence of AST nodes
self.tokens = tokens
self.file = file
@ -1258,7 +1258,8 @@ proc parse*(self: Parser, tokens: seq[Token], file: string, lines: seq[tuple[sta
self.currentLoop = LoopContext.None
self.currentFunction = nil
self.scopeDepth = 0
self.operators = newOperatorTable()
if not persist:
self.operators = newOperatorTable()
self.tree = @[]
self.source = source
self.lines = lines

4
tests/a.pn Normal file
View File

@ -0,0 +1,4 @@
import std;
import b;
print("a");

3
tests/b.pn Normal file
View File

@ -0,0 +1,3 @@
import std;
print("b");