| library test; | 
 | import self as self; | 
 | import "dart:core" as core; | 
 |  | 
 | class C<E extends core::Object> extends core::Object { | 
 |   default constructor •() → void | 
 |     : super core::Object::•() | 
 |     ; | 
 |   method barA([(self::C::E, self::C::E) → core::int cmp = null]) → void { | 
 |     self::foo<dynamic>(this, let final dynamic #t1 = cmp in #t1.==(null) ? self::C::_default : #t1); | 
 |   } | 
 |   method barB([(self::C::E, self::C::E) → core::int cmp = null]) → void { | 
 |     self::foo<dynamic>(this, let final dynamic #t2 = cmp in #t2.==(null) ? self::C::_default as (self::C::E, self::C::E) → core::int : #t2); | 
 |   } | 
 |   method barC([(self::C::E, self::C::E) → core::int cmp = null]) → void { | 
 |     (self::C::E, self::C::E) → core::int v = self::C::_default; | 
 |     self::foo<dynamic>(this, let final dynamic #t3 = cmp in #t3.==(null) ? v : #t3); | 
 |   } | 
 |   method barD([(self::C::E, self::C::E) → core::int cmp = null]) → void { | 
 |     self::foo<self::C::E>(this, let final dynamic #t4 = cmp in #t4.==(null) ? self::C::_default : #t4); | 
 |   } | 
 |   method barE([(self::C::E, self::C::E) → core::int cmp = null]) → void { | 
 |     self::foo<dynamic>(this, cmp.==(null) ? self::C::_default : cmp); | 
 |   } | 
 |   method barF([(self::C::E, self::C::E) → core::int cmp = null]) → void { | 
 |     self::foo<dynamic>(this, !cmp.==(null) ? cmp : self::C::_default); | 
 |   } | 
 |   static method _default(dynamic a, dynamic b) → core::int { | 
 |     return 1.unary-(); | 
 |   } | 
 | } | 
 | static method foo<E extends core::Object>(self::C<self::foo::E> c, (self::foo::E, self::foo::E) → core::int cmp) → void {} | 
 | static method main() → dynamic {} |