| OLD | NEW | 
 | (Empty) | 
|    1 library; |  | 
|    2 import self as self; |  | 
|    3 import "dart:core" as core; |  | 
|    4  |  | 
|    5 class A extends core::Object { |  | 
|    6   field dynamic a; |  | 
|    7   field dynamic b; |  | 
|    8   field dynamic c; |  | 
|    9   field dynamic d; |  | 
|   10   final field dynamic f; |  | 
|   11   constructor •() → self::A |  | 
|   12     : super core::Object::•(); |  | 
|   13   get e() → dynamic |  | 
|   14     return null; |  | 
|   15   set g(dynamic _) → dynamic {} |  | 
|   16   get h() → dynamic |  | 
|   17     return null; |  | 
|   18   set h(dynamic _) → dynamic {} |  | 
|   19   get i() → dynamic |  | 
|   20     return null; |  | 
|   21   operator [](dynamic _) → dynamic |  | 
|   22     return null; |  | 
|   23   operator []=(dynamic a, dynamic b) → dynamic {} |  | 
|   24   operator ~() → dynamic |  | 
|   25     return 117; |  | 
|   26   operator unary-() → dynamic |  | 
|   27     return 117; |  | 
|   28   operator ==(dynamic other) → dynamic |  | 
|   29     return true; |  | 
|   30   method m() → void {} |  | 
|   31   method n() → void {} |  | 
|   32   set n(dynamic _) → dynamic {} |  | 
|   33 } |  | 
|   34 class B extends self::A { |  | 
|   35   final field dynamic d; |  | 
|   36   constructor •() → self::B |  | 
|   37     : super self::A::•(); |  | 
|   38   get b() → dynamic |  | 
|   39     return null; |  | 
|   40   set c(dynamic x) → dynamic {} |  | 
|   41   set i(dynamic x) → dynamic {} |  | 
|   42 } |  | 
|   43 class C extends self::B { |  | 
|   44   constructor •() → self::C |  | 
|   45     : super self::B::•(); |  | 
|   46   method test() → dynamic { |  | 
|   47     super.{self::A::~}(); |  | 
|   48     self::use(super.{self::A::~}()); |  | 
|   49     super.{self::A::unary-}(); |  | 
|   50     self::use(super.{self::A::unary-}()); |  | 
|   51     invalid-expression; |  | 
|   52     self::use(invalid-expression); |  | 
|   53     super.{self::A::==}(87); |  | 
|   54     self::use(super.{self::A::==}(87)); |  | 
|   55     !super.{self::A::==}(87); |  | 
|   56     self::use(!super.{self::A::==}(87)); |  | 
|   57     super.{self::A::a}; |  | 
|   58     self::use(super.{self::A::a}); |  | 
|   59     super.{self::B::b}; |  | 
|   60     self::use(super.{self::B::b}); |  | 
|   61     super.{self::A::c}; |  | 
|   62     self::use(super.{self::A::c}); |  | 
|   63     super.{self::B::d}; |  | 
|   64     self::use(super.{self::B::d}); |  | 
|   65     super.{self::A::e}; |  | 
|   66     self::use(super.{self::A::e}); |  | 
|   67     super.{self::A::f}; |  | 
|   68     self::use(super.{self::A::f}); |  | 
|   69     super.g; |  | 
|   70     self::use(super.g); |  | 
|   71     super.{self::A::h}; |  | 
|   72     self::use(super.{self::A::h}); |  | 
|   73     super.{self::A::i}; |  | 
|   74     self::use(super.{self::A::i}); |  | 
|   75     super.{self::A::[]}(87); |  | 
|   76     self::use(super.{self::A::[]}(87)); |  | 
|   77     super.{self::A::m}; |  | 
|   78     self::use(super.{self::A::m}); |  | 
|   79     throw core::_unresolvedSuperGetterError(this, #n, <dynamic>[], <dynamic, dyn
     amic>{}, null); |  | 
|   80     self::use(throw core::_unresolvedSuperGetterError(this, #n, <dynamic>[], <dy
     namic, dynamic>{}, null)); |  | 
|   81     super.{self::A::a} = super.{self::A::a}.+(1); |  | 
|   82     self::use(let final dynamic #t1 = super.{self::A::a} in let final dynamic #t
     2 = super.{self::A::a} = #t1.+(1) in #t1); |  | 
|   83     super.{self::A::b} = super.{self::B::b}.+(1); |  | 
|   84     self::use(let final dynamic #t3 = super.{self::B::b} in let final dynamic #t
     4 = super.{self::A::b} = #t3.+(1) in #t3); |  | 
|   85     super.{self::B::c} = super.{self::A::c}.+(1); |  | 
|   86     self::use(let final dynamic #t5 = super.{self::A::c} in let final dynamic #t
     6 = super.{self::B::c} = #t5.+(1) in #t5); |  | 
|   87     super.d = super.{self::B::d}.+(1); |  | 
|   88     self::use(let final dynamic #t7 = super.{self::B::d} in let final dynamic #t
     8 = super.d = #t7.+(1) in #t7); |  | 
|   89     super.e = super.{self::A::e}.+(1); |  | 
|   90     self::use(let final dynamic #t9 = super.{self::A::e} in let final dynamic #t
     10 = super.e = #t9.+(1) in #t9); |  | 
|   91     super.f = super.{self::A::f}.+(1); |  | 
|   92     self::use(let final dynamic #t11 = super.{self::A::f} in let final dynamic #
     t12 = super.f = #t11.+(1) in #t11); |  | 
|   93     throw core::_unresolvedSuperGetterError(this, #g, <dynamic>[], <dynamic, dyn
     amic>{}, null); |  | 
|   94     self::use(throw core::_unresolvedSuperGetterError(this, #g, <dynamic>[], <dy
     namic, dynamic>{}, null)); |  | 
|   95     super.{self::A::h} = super.{self::A::h}.+(1); |  | 
|   96     self::use(let final dynamic #t13 = super.{self::A::h} in let final dynamic #
     t14 = super.{self::A::h} = #t13.+(1) in #t13); |  | 
|   97     super.{self::B::i} = super.{self::A::i}.+(1); |  | 
|   98     self::use(let final dynamic #t15 = super.{self::A::i} in let final dynamic #
     t16 = super.{self::B::i} = #t15.+(1) in #t15); |  | 
|   99     let final dynamic #t17 = 87 in super.{self::A::[]=}(#t17, super.{self::A::[]
     }(#t17).+(1)); |  | 
|  100     self::use(let final dynamic #t18 = 87 in let final dynamic #t19 = super.{sel
     f::A::[]}(#t18) in let final dynamic #t20 = super.{self::A::[]=}(#t18, #t19.+(1)
     ) in #t19); |  | 
|  101     super.m = super.{self::A::m}.+(1); |  | 
|  102     self::use(let final dynamic #t21 = super.{self::A::m} in let final dynamic #
     t22 = super.m = #t21.+(1) in #t21); |  | 
|  103     throw core::_unresolvedSuperGetterError(this, #n, <dynamic>[], <dynamic, dyn
     amic>{}, null); |  | 
|  104     self::use(throw core::_unresolvedSuperGetterError(this, #n, <dynamic>[], <dy
     namic, dynamic>{}, null)); |  | 
|  105     super.{self::A::a} = super.{self::A::a}.+(1); |  | 
|  106     self::use(super.{self::A::a} = super.{self::A::a}.+(1)); |  | 
|  107     super.{self::A::b} = super.{self::B::b}.+(1); |  | 
|  108     self::use(super.{self::A::b} = super.{self::B::b}.+(1)); |  | 
|  109     super.{self::B::c} = super.{self::A::c}.+(1); |  | 
|  110     self::use(super.{self::B::c} = super.{self::A::c}.+(1)); |  | 
|  111     super.d = super.{self::B::d}.+(1); |  | 
|  112     self::use(super.d = super.{self::B::d}.+(1)); |  | 
|  113     super.e = super.{self::A::e}.+(1); |  | 
|  114     self::use(super.e = super.{self::A::e}.+(1)); |  | 
|  115     super.f = super.{self::A::f}.+(1); |  | 
|  116     self::use(super.f = super.{self::A::f}.+(1)); |  | 
|  117     throw core::_unresolvedSuperGetterError(this, #g, <dynamic>[], <dynamic, dyn
     amic>{}, null); |  | 
|  118     self::use(throw core::_unresolvedSuperGetterError(this, #g, <dynamic>[], <dy
     namic, dynamic>{}, null)); |  | 
|  119     super.{self::A::h} = super.{self::A::h}.+(1); |  | 
|  120     self::use(super.{self::A::h} = super.{self::A::h}.+(1)); |  | 
|  121     super.{self::B::i} = super.{self::A::i}.+(1); |  | 
|  122     self::use(super.{self::B::i} = super.{self::A::i}.+(1)); |  | 
|  123     let final dynamic #t23 = 87 in super.{self::A::[]=}(#t23, super.{self::A::[]
     }(#t23).+(1)); |  | 
|  124     self::use(let final dynamic #t24 = 87 in let final dynamic #t25 = super.{sel
     f::A::[]}(#t24).+(1) in let final dynamic #t26 = super.{self::A::[]=}(#t24, #t25
     ) in #t25); |  | 
|  125     super.m = super.{self::A::m}.+(1); |  | 
|  126     self::use(super.m = super.{self::A::m}.+(1)); |  | 
|  127     throw core::_unresolvedSuperGetterError(this, #n, <dynamic>[], <dynamic, dyn
     amic>{}, null); |  | 
|  128     self::use(throw core::_unresolvedSuperGetterError(this, #n, <dynamic>[], <dy
     namic, dynamic>{}, null)); |  | 
|  129     super.{self::A::a}.call(); |  | 
|  130     self::use(super.{self::A::a}.call()); |  | 
|  131     super.{self::B::b}.call(); |  | 
|  132     self::use(super.{self::B::b}.call()); |  | 
|  133     super.{self::A::c}.call(); |  | 
|  134     self::use(super.{self::A::c}.call()); |  | 
|  135     super.{self::B::d}.call(); |  | 
|  136     self::use(super.{self::B::d}.call()); |  | 
|  137     super.{self::A::e}.call(); |  | 
|  138     self::use(super.{self::A::e}.call()); |  | 
|  139     super.{self::A::f}.call(); |  | 
|  140     self::use(super.{self::A::f}.call()); |  | 
|  141     super.g.call(); |  | 
|  142     self::use(super.g.call()); |  | 
|  143     super.{self::A::h}.call(); |  | 
|  144     self::use(super.{self::A::h}.call()); |  | 
|  145     super.{self::A::i}.call(); |  | 
|  146     self::use(super.{self::A::i}.call()); |  | 
|  147     super.{self::A::[]}(87).call(); |  | 
|  148     self::use(super.{self::A::[]}(87).call()); |  | 
|  149     super.{self::A::m}(); |  | 
|  150     self::use(super.{self::A::m}()); |  | 
|  151     super.{self::A::m}(87); |  | 
|  152     self::use(super.{self::A::m}(87)); |  | 
|  153     throw core::_unresolvedSuperMethodError(this, #n, <dynamic>[87], <dynamic, d
     ynamic>{}, null); |  | 
|  154     self::use(throw core::_unresolvedSuperMethodError(this, #n, <dynamic>[87], <
     dynamic, dynamic>{}, null)); |  | 
|  155     super.{self::A::a} = 42; |  | 
|  156     self::use(super.{self::A::a} = 42); |  | 
|  157     super.{self::A::b} = 42; |  | 
|  158     self::use(super.{self::A::b} = 42); |  | 
|  159     super.{self::B::c} = 42; |  | 
|  160     self::use(super.{self::B::c} = 42); |  | 
|  161     super.d = 42; |  | 
|  162     self::use(super.d = 42); |  | 
|  163     super.e = 42; |  | 
|  164     self::use(super.e = 42); |  | 
|  165     super.f = 42; |  | 
|  166     self::use(super.f = 42); |  | 
|  167     super.{self::A::g} = 42; |  | 
|  168     self::use(super.{self::A::g} = 42); |  | 
|  169     super.{self::A::h} = 42; |  | 
|  170     self::use(super.{self::A::h} = 42); |  | 
|  171     super.{self::B::i} = 42; |  | 
|  172     self::use(super.{self::B::i} = 42); |  | 
|  173     super.{self::A::[]=}(87, 42); |  | 
|  174     self::use(let final dynamic #t27 = 87 in let final dynamic #t28 = 42 in let 
     final dynamic #t29 = super.{self::A::[]=}(#t27, #t28) in #t28); |  | 
|  175     super.m = 42; |  | 
|  176     self::use(super.m = 42); |  | 
|  177     throw core::_unresolvedSuperSetterError(this, #n, <dynamic>[42], <dynamic, d
     ynamic>{}, null); |  | 
|  178     self::use(throw core::_unresolvedSuperSetterError(this, #n, <dynamic>[42], <
     dynamic, dynamic>{}, null)); |  | 
|  179     super.{self::A::a}.==(null) ? super.{self::A::a} = 42 : null; |  | 
|  180     self::use(let final dynamic #t30 = super.{self::A::a} in #t30.==(null) ? sup
     er.{self::A::a} = 42 : #t30); |  | 
|  181     super.{self::B::b}.==(null) ? super.{self::A::b} = 42 : null; |  | 
|  182     self::use(let final dynamic #t31 = super.{self::B::b} in #t31.==(null) ? sup
     er.{self::A::b} = 42 : #t31); |  | 
|  183     super.{self::A::c}.==(null) ? super.{self::B::c} = 42 : null; |  | 
|  184     self::use(let final dynamic #t32 = super.{self::A::c} in #t32.==(null) ? sup
     er.{self::B::c} = 42 : #t32); |  | 
|  185     super.{self::B::d}.==(null) ? super.d = 42 : null; |  | 
|  186     self::use(let final dynamic #t33 = super.{self::B::d} in #t33.==(null) ? sup
     er.d = 42 : #t33); |  | 
|  187     super.{self::A::e}.==(null) ? super.e = 42 : null; |  | 
|  188     self::use(let final dynamic #t34 = super.{self::A::e} in #t34.==(null) ? sup
     er.e = 42 : #t34); |  | 
|  189     super.{self::A::f}.==(null) ? super.f = 42 : null; |  | 
|  190     self::use(let final dynamic #t35 = super.{self::A::f} in #t35.==(null) ? sup
     er.f = 42 : #t35); |  | 
|  191     throw core::_unresolvedSuperGetterError(this, #g, <dynamic>[], <dynamic, dyn
     amic>{}, null); |  | 
|  192     self::use(throw core::_unresolvedSuperGetterError(this, #g, <dynamic>[], <dy
     namic, dynamic>{}, null)); |  | 
|  193     super.{self::A::h}.==(null) ? super.{self::A::h} = 42 : null; |  | 
|  194     self::use(let final dynamic #t36 = super.{self::A::h} in #t36.==(null) ? sup
     er.{self::A::h} = 42 : #t36); |  | 
|  195     super.{self::A::i}.==(null) ? super.{self::B::i} = 42 : null; |  | 
|  196     self::use(let final dynamic #t37 = super.{self::A::i} in #t37.==(null) ? sup
     er.{self::B::i} = 42 : #t37); |  | 
|  197     let final dynamic #t38 = 87 in super.{self::A::[]}(#t38).==(null) ? super.{s
     elf::A::[]=}(#t38, 42) : null; |  | 
|  198     self::use(let final dynamic #t39 = 87 in let final dynamic #t40 = super.{sel
     f::A::[]}(#t39) in #t40.==(null) ? let final dynamic #t41 = 42 in let final dyna
     mic #t42 = super.{self::A::[]=}(#t39, #t41) in #t41 : #t40); |  | 
|  199     super.{self::A::m}.==(null) ? super.m = 42 : null; |  | 
|  200     self::use(let final dynamic #t43 = super.{self::A::m} in #t43.==(null) ? sup
     er.m = 42 : #t43); |  | 
|  201     throw core::_unresolvedSuperGetterError(this, #n, <dynamic>[], <dynamic, dyn
     amic>{}, null); |  | 
|  202     self::use(throw core::_unresolvedSuperGetterError(this, #n, <dynamic>[], <dy
     namic, dynamic>{}, null)); |  | 
|  203     super.{self::A::a} = super.{self::A::a}.+(42); |  | 
|  204     self::use(super.{self::A::a} = super.{self::A::a}.+(42)); |  | 
|  205     super.{self::A::b} = super.{self::B::b}.+(42); |  | 
|  206     self::use(super.{self::A::b} = super.{self::B::b}.+(42)); |  | 
|  207     super.{self::B::c} = super.{self::A::c}.+(42); |  | 
|  208     self::use(super.{self::B::c} = super.{self::A::c}.+(42)); |  | 
|  209     super.d = super.{self::B::d}.+(42); |  | 
|  210     self::use(super.d = super.{self::B::d}.+(42)); |  | 
|  211     super.e = super.{self::A::e}.+(42); |  | 
|  212     self::use(super.e = super.{self::A::e}.+(42)); |  | 
|  213     super.f = super.{self::A::f}.+(42); |  | 
|  214     self::use(super.f = super.{self::A::f}.+(42)); |  | 
|  215     throw core::_unresolvedSuperGetterError(this, #g, <dynamic>[], <dynamic, dyn
     amic>{}, null); |  | 
|  216     self::use(throw core::_unresolvedSuperGetterError(this, #g, <dynamic>[], <dy
     namic, dynamic>{}, null)); |  | 
|  217     super.{self::A::h} = super.{self::A::h}.+(42); |  | 
|  218     self::use(super.{self::A::h} = super.{self::A::h}.+(42)); |  | 
|  219     super.{self::B::i} = super.{self::A::i}.+(42); |  | 
|  220     self::use(super.{self::B::i} = super.{self::A::i}.+(42)); |  | 
|  221     let final dynamic #t44 = 87 in super.{self::A::[]=}(#t44, super.{self::A::[]
     }(#t44).+(42)); |  | 
|  222     self::use(let final dynamic #t45 = 87 in let final dynamic #t46 = super.{sel
     f::A::[]}(#t45).+(42) in let final dynamic #t47 = super.{self::A::[]=}(#t45, #t4
     6) in #t46); |  | 
|  223     super.m = super.{self::A::m}.+(42); |  | 
|  224     self::use(super.m = super.{self::A::m}.+(42)); |  | 
|  225     throw core::_unresolvedSuperGetterError(this, #n, <dynamic>[], <dynamic, dyn
     amic>{}, null); |  | 
|  226     self::use(throw core::_unresolvedSuperGetterError(this, #n, <dynamic>[], <dy
     namic, dynamic>{}, null)); |  | 
|  227     super.{self::A::a} = super.{self::A::a}.-(42); |  | 
|  228     self::use(super.{self::A::a} = super.{self::A::a}.-(42)); |  | 
|  229     super.{self::A::b} = super.{self::B::b}.-(42); |  | 
|  230     self::use(super.{self::A::b} = super.{self::B::b}.-(42)); |  | 
|  231     super.{self::B::c} = super.{self::A::c}.-(42); |  | 
|  232     self::use(super.{self::B::c} = super.{self::A::c}.-(42)); |  | 
|  233     super.d = super.{self::B::d}.-(42); |  | 
|  234     self::use(super.d = super.{self::B::d}.-(42)); |  | 
|  235     super.e = super.{self::A::e}.-(42); |  | 
|  236     self::use(super.e = super.{self::A::e}.-(42)); |  | 
|  237     super.f = super.{self::A::f}.-(42); |  | 
|  238     self::use(super.f = super.{self::A::f}.-(42)); |  | 
|  239     throw core::_unresolvedSuperGetterError(this, #g, <dynamic>[], <dynamic, dyn
     amic>{}, null); |  | 
|  240     self::use(throw core::_unresolvedSuperGetterError(this, #g, <dynamic>[], <dy
     namic, dynamic>{}, null)); |  | 
|  241     super.{self::A::h} = super.{self::A::h}.-(42); |  | 
|  242     self::use(super.{self::A::h} = super.{self::A::h}.-(42)); |  | 
|  243     super.{self::B::i} = super.{self::A::i}.-(42); |  | 
|  244     self::use(super.{self::B::i} = super.{self::A::i}.-(42)); |  | 
|  245     let final dynamic #t48 = 87 in super.{self::A::[]=}(#t48, super.{self::A::[]
     }(#t48).-(42)); |  | 
|  246     self::use(let final dynamic #t49 = 87 in let final dynamic #t50 = super.{sel
     f::A::[]}(#t49).-(42) in let final dynamic #t51 = super.{self::A::[]=}(#t49, #t5
     0) in #t50); |  | 
|  247     super.m = super.{self::A::m}.-(42); |  | 
|  248     self::use(super.m = super.{self::A::m}.-(42)); |  | 
|  249     throw core::_unresolvedSuperGetterError(this, #n, <dynamic>[], <dynamic, dyn
     amic>{}, null); |  | 
|  250     self::use(throw core::_unresolvedSuperGetterError(this, #n, <dynamic>[], <dy
     namic, dynamic>{}, null)); |  | 
|  251   } |  | 
|  252 } |  | 
|  253 static method use(dynamic x) → dynamic { |  | 
|  254   if(x.==(new core::DateTime::now().millisecondsSinceEpoch)) |  | 
|  255     throw "Shouldn't happen"; |  | 
|  256 } |  | 
|  257 static method main() → dynamic { |  | 
|  258   new self::C::•().test(); |  | 
|  259 } |  | 
| OLD | NEW |