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

class Foo extends core::Object {
  const constructor •(core::List<core::String> l) → void
    : super core::Object::•()
    ;
}
static method test() → void {
  function f(@self::Foo::•(const <dynamic>[]) dynamic x) → void {}
  dynamic x = (@self::Foo::•(const <dynamic>[]) dynamic x) → dynamic {};
}
static method main() → dynamic {}
