blob: e63647261be9c2793128a5d64129f62868b9ee13 [file] [log] [blame] [edit]
library;
import self as self;
import "dart:core" as core;
@#C3
@#C5
@#C7
static method opaqueVal() core::int
return core::int::parse("42");
@#C3
@#C5
@#C7
static method callClosure(positional-parameter func) void/* scope=[
#ctx1: not-captured VariableContext([
positional-parameter func;
]),
] */ {
if(self::opaqueVal() =={core::num::==}{(core::Object) core::bool} 1)
func(){() void};
}
static method foo42() void /* scope=[
#ctx2: direct-captured VariableContext([
local-variable a;
local-variable b;
local-variable c;
local-variable d;
]),
] */ {
a := self::opaqueVal();
b := self::opaqueVal();
c := self::opaqueVal();
d := self::opaqueVal();
self::callClosure(() /* #ctx2 */ void {
core::print(a);
core::print(b);
core::print(d);
});
self::callClosure(() /* #ctx2 */ void {
core::print(b);
core::print(c);
});
#L1:
while (true)/* scope=[
#ctx3: direct-captured VariableContext([
local-variable e;
local-variable f;
local-variable g;
]),
] */ {
e := 50;
f := 60;
g := 70;
self::callClosure(() /* #ctx2 */ void {
d = d.{core::num::+}(41){(core::num) core::int};
});
self::callClosure(() /* #ctx3 */ void {
e = e.{core::num::+}(51){(core::num) core::int};
f = f.{core::num::+}(61){(core::num) core::int};
});
self::callClosure(() /* #ctx3 */ void {
f = f.{core::num::+}(62){(core::num) core::int};
g = g.{core::num::+}(72){(core::num) core::int};
});
core::print(d);
core::print(e);
core::print(f);
core::print(g);
if(self::opaqueVal() =={core::num::==}{(core::Object) core::bool} 1)
break #L1;
}
for /* scope=[
#ctx4: direct-captured VariableContext([
local-variable i;
local-variable h;
]),
] */ (i := 0; i.{core::num::<}(10){(core::num) core::bool}; i = i.{core::num::+}(1){(core::num) core::int}) {
h := self::opaqueVal();
self::callClosure(() /* #ctx4 */ void {
core::print(h);
core::print(i);
});
for /* scope=[
#ctx5: direct-captured VariableContext([
local-variable j;
local-variable k;
]),
] */ (j := 0; j.{core::num::<}(10){(core::num) core::bool}; j = j.{core::num::+}(1){(core::num) core::int}) {
k := 90;
self::callClosure(() /* #ctx5 */ void {
j = j.{core::num::+}(2){(core::num) core::int};
k = k.{core::num::+}(91){(core::num) core::int};
});
core::print(k);
}
}
}
constants {
#C1 = "vm:never-inline"
#C2 = null
#C3 = core::pragma {name:#C1, options:#C2}
#C4 = "wasm:never-inline"
#C5 = core::pragma {name:#C4, options:#C2}
#C6 = "dart2js:noInline"
#C7 = core::pragma {name:#C6, options:#C2}
}
Constructor coverage from constants:
org-dartlang-testcase:///foo42.dart:
- pragma._ (from org-dartlang-sdk:///sdk/lib/core/annotations.dart)
- Object. (from org-dartlang-sdk:///sdk/lib/core/object.dart)