TigerPython-Parser
TigerPython-Parser copied to clipboard
Global keyword followed by nothing causes an exception
If you try to run on code like this:
def func():
global
Then TigerPython throws an exception like this:
java.lang.NullPointerException: Cannot invoke "tigerpython.parser.lexer.Token.pos()" because the return value of "tigerpython.parser.lexer.TokenBuffer.head()" is null
at tigerpython.parser.parsing.ExpressionParser.parseNameList(ExpressionParser.scala:166)
at tigerpython.parser.parsing.Parser.parseSmallStatement(Parser.scala:962)
at tigerpython.parser.parsing.Parser.parseSimpleStatement(Parser.scala:634)
at tigerpython.parser.parsing.Parser._parseStatements(Parser.scala:611)
at tigerpython.parser.parsing.Parser.parseStatements(Parser.scala:359)
at tigerpython.parser.parsing.Parser.parseSuite(Parser.scala:308)
at tigerpython.parser.parsing.Parser.$anonfun$parseBody$3(Parser.scala:1029)
It should instead cope with this and give a suitable error. (PR incoming, just making this bug for completeness.)