|  | library test; | 
|  | import self as self; | 
|  | import "dart:core" as core; | 
|  | import "dart:async" as asy; | 
|  |  | 
|  | import "dart:async"; | 
|  |  | 
|  | class A extends core::Object { | 
|  | synthetic constructor •() → self::A | 
|  | : super core::Object::•() | 
|  | ; | 
|  | } | 
|  | class B extends self::A { | 
|  | synthetic constructor •() → self::B | 
|  | : super self::A::•() | 
|  | ; | 
|  | } | 
|  | class C extends self::A { | 
|  | synthetic constructor •() → self::C | 
|  | : super self::A::•() | 
|  | ; | 
|  | } | 
|  | static method main() → dynamic async /* emittedValueType= dynamic */ { | 
|  | asy::Future<self::B> b = asy::Future::value<self::B>(new self::B::•()); | 
|  | asy::Future<self::C> c = asy::Future::value<self::C>(new self::C::•()); | 
|  | core::List<asy::Future<self::A>> lll = <asy::Future<self::A>>[b, c]; | 
|  | core::List<self::A> result = await asy::Future::wait<self::A>(lll); | 
|  | core::List<self::A> result2 = await asy::Future::wait<self::A>(<asy::Future<self::A>>[b, c]); | 
|  | core::List<self::A> list = result; | 
|  | list = result2; | 
|  | } |