mirror of
https://github.com/MorizzG/rlox.git
synced 2025-12-06 12:22:42 +00:00
15 lines
399 B
Lox
15 lines
399 B
Lox
|
|
// This is a regression test. There was a bug where if an upvalue for an
|
||
|
|
// earlier local (here "a") was captured *after* a later one ("b"), then it
|
||
|
|
// would crash because it walked to the end of the upvalue list (correct), but
|
||
|
|
// then didn't handle not finding the variable.
|
||
|
|
|
||
|
|
fun f() {
|
||
|
|
var a = "a";
|
||
|
|
var b = "b";
|
||
|
|
fun g() {
|
||
|
|
print b; // expect: b
|
||
|
|
print a; // expect: a
|
||
|
|
}
|
||
|
|
g();
|
||
|
|
}
|
||
|
|
f();
|