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

static method test() → dynamic {
  dynamic f = () → asy::Stream<dynamic> async* {
    yield 1;
    asy::Stream<core::double> s;
    yield* s;
  };
  asy::Stream<core::num> g = f.call();
  asy::Stream<core::int> h = f.call();
}
static method main() → dynamic {}
