mirror of
https://github.com/MorizzG/MLox.git
synced 2025-12-06 04:22:41 +00:00
added lox test files
This commit is contained in:
parent
821f5c62bc
commit
0f3d0a15f0
268 changed files with 7497 additions and 3 deletions
50
lox.t/for/syntax.lox
Normal file
50
lox.t/for/syntax.lox
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
// Single-expression body.
|
||||
for (var c = 0; c < 3;) print c = c + 1;
|
||||
// expect: 1
|
||||
// expect: 2
|
||||
// expect: 3
|
||||
|
||||
// Block body.
|
||||
for (var a = 0; a < 3; a = a + 1) {
|
||||
print a;
|
||||
}
|
||||
// expect: 0
|
||||
// expect: 1
|
||||
// expect: 2
|
||||
|
||||
// No clauses.
|
||||
fun foo() {
|
||||
for (;;) return "done";
|
||||
}
|
||||
print foo(); // expect: done
|
||||
|
||||
// No variable.
|
||||
var i = 0;
|
||||
for (; i < 2; i = i + 1) print i;
|
||||
// expect: 0
|
||||
// expect: 1
|
||||
|
||||
// No condition.
|
||||
fun bar() {
|
||||
for (var i = 0;; i = i + 1) {
|
||||
print i;
|
||||
if (i >= 2) return;
|
||||
}
|
||||
}
|
||||
bar();
|
||||
// expect: 0
|
||||
// expect: 1
|
||||
// expect: 2
|
||||
|
||||
// No increment.
|
||||
for (var i = 0; i < 2;) {
|
||||
print i;
|
||||
i = i + 1;
|
||||
}
|
||||
// expect: 0
|
||||
// expect: 1
|
||||
|
||||
// Statement bodies.
|
||||
for (; false;) if (true) 1; else 2;
|
||||
for (; false;) while (true) 1;
|
||||
for (; false;) for (;;) 1;
|
||||
Loading…
Add table
Add a link
Reference in a new issue