library test;
import self as self;
import "dart:core" as core;

static field core::bool* t = true;
static field dynamic a = throw 0;
static field core::int* b = (throw 0) ?{core::int*} 1 : 2;
static field core::int* c = self::t ?{core::int*} throw 1 : 2;
static field core::int* d = self::t ?{core::int*} 1 : throw 2;
static method main() → dynamic {}
