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
2
lox.t/while/class_in_body.lox
Normal file
2
lox.t/while/class_in_body.lox
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
// [line 2] Error at 'class': Expect expression.
|
||||
while (true) class Foo {}
|
||||
19
lox.t/while/closure_in_body.lox
Normal file
19
lox.t/while/closure_in_body.lox
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
var f1;
|
||||
var f2;
|
||||
var f3;
|
||||
|
||||
var i = 1;
|
||||
while (i < 4) {
|
||||
var j = i;
|
||||
fun f() { print j; }
|
||||
|
||||
if (j == 1) f1 = f;
|
||||
else if (j == 2) f2 = f;
|
||||
else f3 = f;
|
||||
|
||||
i = i + 1;
|
||||
}
|
||||
|
||||
f1(); // expect: 1
|
||||
f2(); // expect: 2
|
||||
f3(); // expect: 3
|
||||
2
lox.t/while/fun_in_body.lox
Normal file
2
lox.t/while/fun_in_body.lox
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
// [line 2] Error at 'fun': Expect expression.
|
||||
while (true) fun foo() {}
|
||||
10
lox.t/while/return_closure.lox
Normal file
10
lox.t/while/return_closure.lox
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
fun f() {
|
||||
while (true) {
|
||||
var i = "i";
|
||||
fun g() { print i; }
|
||||
return g;
|
||||
}
|
||||
}
|
||||
|
||||
var h = f();
|
||||
h(); // expect: i
|
||||
9
lox.t/while/return_inside.lox
Normal file
9
lox.t/while/return_inside.lox
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
fun f() {
|
||||
while (true) {
|
||||
var i = "i";
|
||||
return i;
|
||||
}
|
||||
}
|
||||
|
||||
print f();
|
||||
// expect: i
|
||||
21
lox.t/while/syntax.lox
Normal file
21
lox.t/while/syntax.lox
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
// Single-expression body.
|
||||
var c = 0;
|
||||
while (c < 3) print c = c + 1;
|
||||
// expect: 1
|
||||
// expect: 2
|
||||
// expect: 3
|
||||
|
||||
// Block body.
|
||||
var a = 0;
|
||||
while (a < 3) {
|
||||
print a;
|
||||
a = a + 1;
|
||||
}
|
||||
// expect: 0
|
||||
// expect: 1
|
||||
// expect: 2
|
||||
|
||||
// Statement bodies.
|
||||
while (false) if (true) 1; else 2;
|
||||
while (false) while (true) 1;
|
||||
while (false) for (;;) 1;
|
||||
2
lox.t/while/var_in_body.lox
Normal file
2
lox.t/while/var_in_body.lox
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
// [line 2] Error at 'var': Expect expression.
|
||||
while (true) var foo;
|
||||
Loading…
Add table
Add a link
Reference in a new issue