blob: e4784b68c6d3cd7991dd6aa03b67e67e480d7ab8 [file] [log] [blame]
library test /*isNonNullableByDefault*/;
import self as self;
import "dart:core" as core;
class Test1 extends core::Object {
field core::int prop = 0;
field core::int? prop2 = null;
synthetic constructor •() self::Test1
: super core::Object::•()
;
static method test(self::Test1 t) void {
core::int v1 = t.{self::Test1::prop} = self::getInt();
core::int v4 = let final self::Test1 #t1 = t in let final core::int? #t2 = #t1.{self::Test1::prop2}{core::int?} in #t2 == null ?{core::int} #t1.{self::Test1::prop2} = self::getInt() : #t2{core::int};
core::int v7 = let final self::Test1 #t3 = t in #t3.{self::Test1::prop} = #t3.{self::Test1::prop}{core::int}.{core::num::+}(self::getInt()){(core::num) → core::int};
core::int v10 = let final self::Test1 #t4 = t in #t4.{self::Test1::prop} = #t4.{self::Test1::prop}{core::int}.{core::num::+}(1){(core::num) → core::int};
core::int v11 = let final self::Test1 #t5 = t in let final core::int #t6 = #t5.{self::Test1::prop}{core::int} in let final core::int #t7 = #t5.{self::Test1::prop} = #t6.{core::num::+}(1){(core::num) → core::int} in #t6;
}
}
class Test2 extends core::Object {
field core::num prop = 0;
field core::num? prop2 = null;
synthetic constructor •() self::Test2
: super core::Object::•()
;
static method test(self::Test2 t) void {
core::int v1 = t.{self::Test2::prop} = self::getInt();
core::num v2 = t.{self::Test2::prop} = self::getNum();
core::double v3 = t.{self::Test2::prop} = self::getDouble();
core::num v4 = let final self::Test2 #t8 = t in let final core::num? #t9 = #t8.{self::Test2::prop2}{core::num?} in #t9 == null ?{core::num} #t8.{self::Test2::prop2} = self::getInt() : #t9{core::num};
core::num v5 = let final self::Test2 #t10 = t in let final core::num? #t11 = #t10.{self::Test2::prop2}{core::num?} in #t11 == null ?{core::num} #t10.{self::Test2::prop2} = self::getNum() : #t11{core::num};
core::num v6 = let final self::Test2 #t12 = t in let final core::num? #t13 = #t12.{self::Test2::prop2}{core::num?} in #t13 == null ?{core::num} #t12.{self::Test2::prop2} = self::getDouble() : #t13{core::num};
core::num v7 = let final self::Test2 #t14 = t in #t14.{self::Test2::prop} = #t14.{self::Test2::prop}{core::num}.{core::num::+}(self::getInt()){(core::num) → core::num};
core::num v8 = let final self::Test2 #t15 = t in #t15.{self::Test2::prop} = #t15.{self::Test2::prop}{core::num}.{core::num::+}(self::getNum()){(core::num) → core::num};
core::double v9 = let final self::Test2 #t16 = t in #t16.{self::Test2::prop} = #t16.{self::Test2::prop}{core::num}.{core::num::+}(self::getDouble()){(core::num) → core::double};
core::num v10 = let final self::Test2 #t17 = t in #t17.{self::Test2::prop} = #t17.{self::Test2::prop}{core::num}.{core::num::+}(1){(core::num) → core::num};
core::num v11 = let final self::Test2 #t18 = t in let final core::num #t19 = #t18.{self::Test2::prop}{core::num} in let final core::num #t20 = #t18.{self::Test2::prop} = #t19.{core::num::+}(1){(core::num) → core::num} in #t19;
}
}
class Test3 extends core::Object {
field core::double prop = 0.0;
field core::double? prop2 = null;
synthetic constructor •() self::Test3
: super core::Object::•()
;
static method test3(self::Test3 t) void {
core::double v3 = t.{self::Test3::prop} = self::getDouble();
core::double v6 = let final self::Test3 #t21 = t in let final core::double? #t22 = #t21.{self::Test3::prop2}{core::double?} in #t22 == null ?{core::double} #t21.{self::Test3::prop2} = self::getDouble() : #t22{core::double};
core::double v7 = let final self::Test3 #t23 = t in #t23.{self::Test3::prop} = #t23.{self::Test3::prop}{core::double}.{core::double::+}(self::getInt()){(core::num) → core::double};
core::double v8 = let final self::Test3 #t24 = t in #t24.{self::Test3::prop} = #t24.{self::Test3::prop}{core::double}.{core::double::+}(self::getNum()){(core::num) → core::double};
core::double v9 = let final self::Test3 #t25 = t in #t25.{self::Test3::prop} = #t25.{self::Test3::prop}{core::double}.{core::double::+}(self::getDouble()){(core::num) → core::double};
core::double v10 = let final self::Test3 #t26 = t in #t26.{self::Test3::prop} = #t26.{self::Test3::prop}{core::double}.{core::double::+}(1){(core::num) → core::double};
core::double v11 = let final self::Test3 #t27 = t in let final core::double #t28 = #t27.{self::Test3::prop}{core::double} in let final core::double #t29 = #t27.{self::Test3::prop} = #t28.{core::double::+}(1){(core::num) → core::double} in #t28;
}
}
static method getInt() core::int
return 0;
static method getNum() core::num
return 0;
static method getDouble() core::double
return 0.0;
static method main() dynamic {}