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

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