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

class Foo extends core::Object {
  const constructor •(dynamic l) → self::Foo
    : super core::Object::•()
    ;
}
static method test() → void {
  const core::int x = 0;
  @self::Foo::•(const <core::int>[x]) dynamic y;
  @self::Foo::•(const <core::int>[x])
  function bar() → void {}
  function baz(@self::Foo::•(const <core::int>[x]) dynamic formal) → void {}
}
static method main() → dynamic {}
