Why is missing semicolon a runtime error?

I’m stuck on Stage #xy1

I’m confused as to why this test is a runtime error and not a syntax error (missing semi colon). As it is failing in the parsing stage, shouldn’t this be syntax error? (65)

Here are my logs:

[tester::#IB5] [test-1] [test.lox] "baz" < true
[tester::#IB5] [test-1] $ ./your_program.sh evaluate test.lox
[your_program] [line 1]: Error at : Expect ';' after expression.
[tester::#IB5] [test-1] expected exit code 70, got 65

The test is failing because the tester in stage #IB5 and all the previous stages is expecting an expression, not a statement. I had to write the program to expect statements for the run command and an expression for evaluate and parse.

If it’s expecting an expression, this would be a parse error since both operands should be numbers.

1 Like

Makes sense, thanks!

I think we can improve this by adding a brief description of each test - will keep open until we’ve done that!