blob: 06282c4c2484265024b48e48189c7336cb227148 [file] [log] [blame]
library;
import self as self;
static field dynamic v;
static method main(dynamic arguments) dynamic {
final Vector #context = MakeVector(2);
#context[1] = null;
(MakeClosure<(dynamic) dynamic>(self::closure#main#function, #context)).call(87);
if(!self::v.==(87)) {
throw "Unexpected value in v: ${self::v}";
}
if(!(#context[1]).==(87)) {
throw "Unexpected value in w: ${#context[1]}";
}
self::v = true;
(MakeClosure<() dynamic>(self::closure#main#function#1, #context)).call();
if(!self::v.==(false)) {
throw "Unexpected value in v: ${self::v}";
}
if(!(#context[1]).==(false)) {
throw "Unexpected value in w: ${#context[1]}";
}
}
static method closure#main#function(Vector #contextParameter, dynamic x) → dynamic {
return self::v = #contextParameter[1] = x;
}
static method closure#main#function#1(Vector #contextParameter) → dynamic {
for (; #contextParameter[1] = self::v; ) {
self::v = false;
}
}