| library; |
| import self as self; |
| import "dart:core" as core; |
| import "dart:_internal" as _in; |
| |
| class A extends core::Object { |
| field core::int? f1 = null; |
| field core::double? f2 = null; |
| synthetic constructor •() → self::A |
| : super core::Object::•() |
| ; |
| @#C3 |
| method foo() → core::String { |
| return block { |
| core::String #t1; |
| final synthesized(core::int?, core::double?) #0#0 = (this.{self::A::f1}{core::int?}, this.{self::A::f2}{core::double?}); |
| synthesized core::int? #0#1; |
| synthesized core::bool #0#1#isSet = false; |
| synthesized core::bool #0#4; |
| synthesized core::bool #0#4#isSet = false; |
| synthesized core::double? #0#2; |
| synthesized core::bool #0#2#isSet = false; |
| #L1: |
| { |
| { |
| final hoisted core::int? f1; |
| if(true) { |
| f1 = #0#1#isSet ?{core::int?} #0#1{core::int?} : let final core::bool* #t2 = #0#1#isSet = true in #0#1 = #0#0.$1{core::int?}; |
| #t1 = "${f1}"; |
| break #L1; |
| } |
| } |
| { |
| final hoisted core::double? f2; |
| if(#0#4#isSet ?{core::bool} #0#4{core::bool} : let final core::bool* #t3 = #0#4#isSet = true in #0#4 = (#0#1#isSet ?{core::int?} #0#1{core::int?} : let final core::bool* #t4 = #0#1#isSet = true in #0#1 = #0#0.$1{core::int?}) == null) { |
| f2 = #0#2#isSet ?{core::double?} #0#2{core::double?} : let final core::bool* #t5 = #0#2#isSet = true in #0#2 = #0#0.$2{core::double?}; |
| #t1 = "${f2}"; |
| break #L1; |
| } |
| } |
| { |
| if((#0#4#isSet ?{core::bool} #0#4{core::bool} : let final core::bool* #t6 = #0#4#isSet = true in #0#4 = (#0#1#isSet ?{core::int?} #0#1{core::int?} : let final core::bool* #t7 = #0#1#isSet = true in #0#1 = #0#0.$1{core::int?}) == null) && (#0#2#isSet ?{core::double?} #0#2{core::double?} : let final core::bool* #t8 = #0#2#isSet = true in #0#2 = #0#0.$2{core::double?}) == null) { |
| #t1 = "?"; |
| break #L1; |
| } |
| } |
| throw{for-error-handling} new _in::ReachabilityError::•("`null` encountered as case in a switch expression with a non-nullable type."); |
| } |
| } =>#t1; |
| } |
| } |
| static method main() → void { |
| core::print(new self::A::•().{self::A::foo}(){() → core::String}); |
| } |
| |
| constants { |
| #C1 = "vm:never-inline" |
| #C2 = null |
| #C3 = core::pragma {name:#C1, options:#C2} |
| } |
| |
| |
| Constructor coverage from constants: |
| org-dartlang-testcase:///issue53804.dart: |
| - pragma._ (from org-dartlang-sdk:///sdk/lib/core/annotations.dart) |
| - Object. (from org-dartlang-sdk:///sdk/lib/core/object.dart) |