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

class C<T extends core::Object> extends core::Object {
  field self::C::T t = null;
  constructor •() → void
    : super core::Object::•()
    ;
  static factory named<T extends core::Object>(self::C::named::T t) → self::C<self::C::named::T> {
    dynamic x = new self::C::•<self::C::named::T>();
    x.t = t;
    return x;
  }
}
static method main() → dynamic {
  dynamic x = self::C::named<dynamic>(42);
}
