| library /*isNonNullableByDefault*/; |
| import self as self; |
| import "dart:core" as core; |
| import "dart:_internal" as _in; |
| import "dart:_late_helper" as _la; |
| import "late_statics_lib.dart" as lat; |
| additionalExports = (lat::c, |
| lat::c, |
| lat::d, |
| lat::a, |
| lat::b) |
| |
| import "org-dartlang-testcase:///late_statics_lib.dart" as lib; |
| export "org-dartlang-testcase:///late_statics_lib.dart"; |
| |
| class Statics extends core::Object { |
| static final field _la::_Cell a = new _la::_Cell::•(); |
| static final field _la::_Cell b = new _la::_Cell::•(); |
| static field core::int? _#c = null; |
| static field core::int? _#d = null; |
| synthetic constructor •() → self::Statics |
| : super core::Object::•() |
| ; |
| static get c() → core::int |
| return let final core::int? #t1 = self::Statics::_#c in #t1 == null ?{core::int} self::Statics::_#c = 1.{core::int::unary-}(){() → core::int} : #t1{core::int}; |
| static set c(core::int #t2) → void |
| self::Statics::_#c = #t2; |
| static get d() → core::int |
| return let final core::int? #t3 = self::Statics::_#d in #t3 == null ?{core::int} let final core::int #t4 = 1.{core::int::unary-}(){() → core::int} in self::Statics::_#d == null ?{core::int} self::Statics::_#d = #t4 : throw new _in::LateError::fieldADI("d") : #t3{core::int}; |
| } |
| static method main() → void { |
| self::testUninitializedNonFinalStaticField(); |
| self::testUninitializedFinalStaticField(); |
| self::testInitializedNonFinalStaticField(); |
| self::testInitializedFinalStaticField(); |
| self::testUninitializedNonFinalTopLevelField(); |
| self::testUninitializedFinalTopLevelField(); |
| self::testInitializedNonFinalTopLevelField(); |
| self::testInitializedFinalTopLevelField(); |
| } |
| static method testUninitializedNonFinalStaticField() → void { |
| core::print(self::Statics::a.{_la::_Cell::readField}<core::int>(){() → core::int}); |
| self::Statics::a.{_la::_Cell::value} = 42; |
| core::print(self::Statics::a.{_la::_Cell::readField}<core::int>(){() → core::int}); |
| } |
| static method testUninitializedFinalStaticField() → void { |
| core::print(self::Statics::b.{_la::_Cell::readField}<core::int>(){() → core::int}); |
| self::Statics::b.{_la::_Cell::finalFieldValue} = 42; |
| core::print(self::Statics::b.{_la::_Cell::readField}<core::int>(){() → core::int}); |
| } |
| static method testInitializedNonFinalStaticField() → void { |
| core::print(self::Statics::c); |
| self::Statics::c = 42; |
| core::print(self::Statics::c); |
| } |
| static method testInitializedFinalStaticField() → void { |
| core::print(self::Statics::d); |
| } |
| static method testUninitializedNonFinalTopLevelField() → void { |
| core::print(lat::a.{_la::_Cell::readField}<core::int>(){() → core::int}); |
| lat::a.{_la::_Cell::value} = 42; |
| core::print(lat::a.{_la::_Cell::readField}<core::int>(){() → core::int}); |
| } |
| static method testUninitializedFinalTopLevelField() → void { |
| core::print(lat::b.{_la::_Cell::readField}<core::int>(){() → core::int}); |
| lat::b.{_la::_Cell::finalFieldValue} = 42; |
| core::print(lat::b.{_la::_Cell::readField}<core::int>(){() → core::int}); |
| } |
| static method testInitializedNonFinalTopLevelField() → void { |
| core::print(lat::c); |
| lat::c = 42; |
| core::print(lat::c); |
| } |
| static method testInitializedFinalTopLevelField() → void { |
| core::print(lat::d); |
| } |
| |
| library /*isNonNullableByDefault*/; |
| import self as lat; |
| import "dart:core" as core; |
| import "dart:_internal" as _in; |
| import "dart:_late_helper" as _la; |
| |
| static final field _la::_Cell a = new _la::_Cell::•(); |
| static final field _la::_Cell b = new _la::_Cell::•(); |
| static field core::int? _#c = null; |
| static field core::int? _#d = null; |
| static get c() → core::int |
| return let final core::int? #t5 = lat::_#c in #t5 == null ?{core::int} lat::_#c = 1.{core::int::unary-}(){() → core::int} : #t5{core::int}; |
| static set c(core::int #t6) → void |
| lat::_#c = #t6; |
| static get d() → core::int |
| return let final core::int? #t7 = lat::_#d in #t7 == null ?{core::int} let final core::int #t8 = 1.{core::int::unary-}(){() → core::int} in lat::_#d == null ?{core::int} lat::_#d = #t8 : throw new _in::LateError::fieldADI("d") : #t7{core::int}; |
| |
| |
| Extra constant evaluation status: |
| Evaluated: InstanceInvocation @ org-dartlang-testcase:///late_statics.dart:22:23 -> DoubleConstant(-1.0) |
| Evaluated: InstanceInvocation @ org-dartlang-testcase:///late_statics.dart:23:29 -> DoubleConstant(-1.0) |
| Evaluated: VariableGet @ org-dartlang-testcase:///late_statics.dart:23:25 -> DoubleConstant(-1.0) |
| Evaluated: InstanceInvocation @ org-dartlang-testcase:///late_statics_lib.dart:7:14 -> DoubleConstant(-1.0) |
| Evaluated: InstanceInvocation @ org-dartlang-testcase:///late_statics_lib.dart:8:20 -> DoubleConstant(-1.0) |
| Evaluated: VariableGet @ org-dartlang-testcase:///late_statics_lib.dart:8:16 -> DoubleConstant(-1.0) |
| Extra constant evaluation: evaluated: 108, effectively constant: 6 |