library test /*isNonNullableByDefault*/;
import self as self;
import "dart:core" as core;

class C<T extends core::Object? = dynamic> extends core::Object {
  constructor named(core::List<self::C::T%> t) → self::C<self::C::T%>
    : super core::Object::•()
    ;
}
static method main() → dynamic {
  self::C<core::int> x = new self::C::named<core::int>(core::_GrowableList::•<core::int>(0));
}
