library test;
import self as self;
import "dart:core" as core;

class C<T extends core::Object = dynamic> extends core::Object {
  generic-covariant-impl field self::C::T t;
  constructor •(self::C::T t) → void
    : self::C::t = t, super core::Object::•()
    ;
  constructor named(core::List<self::C::T> t) → void
    : this self::C::•(t.{core::List::[]}(0))
    ;
}
static method main() → dynamic {
  self::C<core::int> x = new self::C::named<core::int>(<core::int>[42]);
}
