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

import "dart:async";

static method main() → asy::Future<dynamic> async {
  dynamic d;
  core::List<core::int> l0 = await<core::int>[d as{TypeError} core::int];
  core::List<core::int> l1 = await asy::Future::value<core::List<core::int>>(<core::int>[d as{TypeError} core::int]);
}
