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

static method main() → dynamic async {
  dynamic f = () → asy::Future<dynamic> async {
    return null;
  };
  asy::Future<dynamic> y = f.call();
  asy::Future<core::String> z = f.call();
  core::String s = await f.call();
}
