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

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