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

static field dynamic h = null;
static method foo((core::Object) → core::int f) → void {}
static method test() → dynamic {
  dynamic f = (core::Object x) → dynamic => null;
  core::String y = f.call(42);
  f = (dynamic x) → dynamic => "hello";
  dynamic g = null;
  g = "hello";
  g.foo();
  self::h = "hello";
  self::h.foo();
  self::foo((dynamic x) → dynamic => null);
  self::foo((dynamic x) → dynamic => throw "not implemented");
}
static method main() → dynamic {}
