blob: 8e6804cb184fc79cd7f7ff5f1fdeba6982f10a6e [file] [log] [blame]
library /*isNonNullableByDefault*/;
import self as self;
import "dart:core" as core;
import "dart:async" as asy;
static method foo() dynamic {
try {
return;
}
finally {
core::print("Hello from finally block!");
}
}
static method bar(dynamic d) dynamic async* {
await for (dynamic x in d as{TypeError,ForDynamic,ForNonNullableByDefault} asy::Stream<dynamic>) {
yield x;
yield* x as{TypeError,ForDynamic,ForNonNullableByDefault} asy::Stream<dynamic>;
}
}
static method main() dynamic {
do {
core::print("Hello from do-while!");
}
while (false)
do {
void x = core::print("Hello from do-while!");
}
while (false)
for (core::String s in <core::String>["Hello from for-in!"]) {
core::print(s);
}
for (core::String s in <core::String>["Hello from for-in without block!"])
core::print(s);
dynamic s;
for (final dynamic #t1 in <dynamic>["Hello from for-in without decl!"]) {
s = #t1;
core::print(s);
}
for (final dynamic #t2 in <dynamic>["Hello from for-in without decl and block!"]) {
s = #t2;
core::print(s);
}
core::print("Hello from labeled statement!");
try {
try {
throw "Hello from rethrow!";
}
on core::Object catch(final core::Object e) {
rethrow;
}
}
on core::Object catch(final core::Object e) {
core::print(e);
}
self::foo();
core::bool done = false;
while (!done) {
done = true;
core::print("Hello from while!");
}
;
assert(true);
assert(true, "Hello from assert!");
try {
assert(false, "Hello from assert!");
}
on core::Object catch(final core::Object e) {
core::print(e);
}
#L1:
switch(1) {
#L2:
case #C1:
case #C2:
{
core::print("Hello from switch case!");
break #L1;
}
#L3:
default:
{
break #L1;
}
}
#L4:
switch(4) {
#L5:
case #C2:
{
core::print("Hello from case 2!");
break #L4;
}
#L6:
case #C1:
{
core::print("Hello from case 1!");
continue #L5;
}
#L7:
case #C3:
{
core::print("Hello from case 0!");
continue #L6;
}
#L8:
case #C4:
{
core::print("Hello from case 4!");
continue #L9;
}
#L9:
default:
{
continue #L7;
}
}
#L10:
switch(4) {
#L11:
case #C1:
{
core::print("Hello from next case 1");
break #L10;
}
#L12:
default:
{
continue #L11;
}
}
core::int i = 0;
#L13:
do
#L14:
{
core::print("Hello from do-while!");
if((i = i.{core::num::+}(1){(core::num) core::int}).{core::num::<}(3){(core::num) core::bool})
break #L14;
break #L13;
}
while (true)
i = 0;
#L15:
while (true)
#L16:
{
core::print("Hello from while!");
if((i = i.{core::num::+}(1){(core::num) core::int}).{core::num::<}(3){(core::num) core::bool})
break #L16;
break #L15;
}
}
constants {
#C1 = 1
#C2 = 2
#C3 = 0
#C4 = 4
}