| library test; |
| // |
| // Problems in library: |
| // |
| // pkg/front_end/testcases/inference/for_each_downcast_iterable.dart:5:1: Error: The specified language version is too low. The lowest supported language version is 2.12. |
| // // @dart=2.9 |
| // ^^^^^^^^^^^^ |
| // |
| import self as self; |
| import "dart:core" as core; |
| import "dart:async" as asy; |
| |
| static method test(dynamic o) → dynamic async /* emittedValueType= dynamic */ { |
| { |
| synthesized core::Iterator<dynamic> :sync-for-iterator = (o as{TypeError,ForDynamic} core::Iterable<dynamic>).{core::Iterable::iterator}{core::Iterator<dynamic>}; |
| for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { |
| dynamic x = :sync-for-iterator.{core::Iterator::current}{dynamic}; |
| {} |
| } |
| } |
| { |
| synthesized asy::Stream<dynamic> :stream = o as{TypeError,ForDynamic} asy::Stream<dynamic>; |
| synthesized asy::_StreamIterator<dynamic>? :for-iterator = new asy::_StreamIterator::•<dynamic>(:stream); |
| try |
| while (let dynamic #t1 = asy::_asyncStarMoveNextHelper(:stream) in await :for-iterator.{asy::_StreamIterator::moveNext}(){() → asy::Future<core::bool>}) { |
| dynamic x = :for-iterator.{asy::_StreamIterator::current}{dynamic}; |
| {} |
| } |
| finally |
| if(!(:for-iterator.{asy::_StreamIterator::_subscription}{asy::StreamSubscription<dynamic>?} == null)) |
| await :for-iterator.{asy::_StreamIterator::cancel}(){() → asy::Future<dynamic>}; |
| } |
| core::int y; |
| { |
| synthesized core::Iterator<dynamic> :sync-for-iterator = (o as{TypeError,ForDynamic} core::Iterable<dynamic>).{core::Iterable::iterator}{core::Iterator<dynamic>}; |
| for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { |
| final dynamic #t2 = :sync-for-iterator.{core::Iterator::current}{dynamic}; |
| { |
| y = #t2 as{TypeError,ForDynamic} core::int; |
| } |
| } |
| } |
| { |
| synthesized asy::Stream<dynamic> :stream = o as{TypeError,ForDynamic} asy::Stream<dynamic>; |
| synthesized asy::_StreamIterator<dynamic>? :for-iterator = new asy::_StreamIterator::•<dynamic>(:stream); |
| try |
| while (let dynamic #t3 = asy::_asyncStarMoveNextHelper(:stream) in await :for-iterator.{asy::_StreamIterator::moveNext}(){() → asy::Future<core::bool>}) { |
| final dynamic #t4 = :for-iterator.{asy::_StreamIterator::current}{dynamic}; |
| { |
| y = #t4 as{TypeError,ForDynamic} core::int; |
| } |
| } |
| finally |
| if(!(:for-iterator.{asy::_StreamIterator::_subscription}{asy::StreamSubscription<dynamic>?} == null)) |
| await :for-iterator.{asy::_StreamIterator::cancel}(){() → asy::Future<dynamic>}; |
| } |
| } |
| static method main() → dynamic {} |