blob: ad2be8724758c18364b23fb1c64dc5c7ad3e60fc [file] [log] [blame]
library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/patterns/variable_names.dart:24:23: Error: The getter name is not specified explicitly, and the pattern is not a variable. Try specifying the getter name explicitly, or using a variable pattern.
// } else if (x case A(: [1, 2])) { // Error
// ^
//
// pkg/front_end/testcases/patterns/variable_names.dart:26:22: Error: The getter name is not specified explicitly, and the pattern is not a variable. Try specifying the getter name explicitly, or using a variable pattern.
// } else if (x case (: [1, 2])) { // Error
// ^
//
import self as self;
import "dart:core" as core;
import "dart:_internal" as _in;
abstract class A extends core::Object {
synthetic constructor •() self::A
: super core::Object::•()
;
abstract get foo() core::int?;
abstract get bar() core::int;
abstract get baz() core::int?;
abstract get boz() core::num;
abstract get qux() core::bool;
abstract get quux() core::String;
abstract get foobar() core::int;
}
static method test(dynamic x, dynamic y, dynamic z) dynamic {
dynamic qux;
dynamic quux;
{
core::int foo;
core::int bar;
core::int baz;
core::double boz;
core::int foobar;
final synthesized dynamic #3#0 = x;
function ##3#2#initializer() → core::int?
return #3#0{self::A}.{self::A::foo}{core::int?};
late final synthesized core::int? #3#2 = ##3#2#initializer(){() → core::int?};
function ##3#5#initializer() → core::int?
return #3#0{self::A}.{self::A::baz}{core::int?};
late final synthesized core::int? #3#5 = ##3#5#initializer(){() → core::int?};
function ##3#7#initializer() → core::num
return #3#0{self::A}.{self::A::boz}{core::num};
late final synthesized core::num #3#7 = ##3#7#initializer(){() → core::num};
if(#3#0 is{ForNonNullableByDefault} self::A && (let final core::int? #t1 = #3#2! in let final core::int? #t2 = foo = #3#2! in true) && (let final core::int #t3 = bar = #3#0{self::A}.{self::A::bar}{core::int} in true) && (!(#3#5 == null) ?{core::bool} let final core::int #t4 = baz = #3#5{core::int} in true : false) && (let final core::double #t5 = #3#7 as{ForNonNullableByDefault} core::double in let final core::double #t6 = boz = #3#7 as{ForNonNullableByDefault} core::double in true) && (let final core::int #t7 = foobar = #3#0{self::A}.{self::A::foobar}{core::int} in true)) {
return 0;
}
else {
dynamic foo;
dynamic bar;
dynamic baz;
core::double boz;
dynamic foobar;
final synthesized dynamic #2#0 = x;
function ##2#2#initializer() → core::Object?
return #2#0{(core::Object?, {bar: core::Object?, baz: core::Object?, foo: core::Object?, foobar: core::Object?})}.foo{core::Object?};
late final synthesized core::Object? #2#2 = ##2#2#initializer(){() → core::Object?};
function ##2#5#initializer() → core::Object?
return #2#0{(core::Object?, {bar: core::Object?, baz: core::Object?, foo: core::Object?, foobar: core::Object?})}.baz{core::Object?};
late final synthesized core::Object? #2#5 = ##2#5#initializer(){() → core::Object?};
function ##2#7#initializer() → core::Object?
return #2#0{(core::Object?, {bar: core::Object?, baz: core::Object?, foo: core::Object?, foobar: core::Object?})}.$1{core::Object?};
late final synthesized core::Object? #2#7 = ##2#7#initializer(){() → core::Object?};
if(#2#0 is{ForNonNullableByDefault} (core::Object?, {bar: core::Object?, baz: core::Object?, foo: core::Object?, foobar: core::Object?}) && (let final core::Object? #t8 = #2#2! in let final core::Object? #t9 = foo = #2#2! in true) && (let final core::Object? #t10 = bar = #2#0{(core::Object?, {bar: core::Object?, baz: core::Object?, foo: core::Object?, foobar: core::Object?})}.bar{core::Object?} in true) && (!(#2#5 == null) ?{core::bool} let final core::Object? #t11 = baz = #2#5 in true : false) && (let final core::double #t12 = #2#7 as{ForNonNullableByDefault} core::double in let final core::double #t13 = boz = #2#7 as{ForNonNullableByDefault} core::double in true) && (let final core::Object? #t14 = foobar = #2#0{(core::Object?, {bar: core::Object?, baz: core::Object?, foo: core::Object?, foobar: core::Object?})}.foobar{core::Object?} in true)) {
return 1;
}
else {
final synthesized dynamic #1#0 = x;
if(#1#0 is{ForNonNullableByDefault} self::A) {
return 2;
}
else {
final synthesized dynamic #0#0 = x;
if(#0#0 is{ForNonNullableByDefault} (core::Object?) && invalid-expression "pkg/front_end/testcases/patterns/variable_names.dart:26:22: Error: The getter name is not specified explicitly, and the pattern is not a variable. Try specifying the getter name explicitly, or using a variable pattern.
} else if (x case (: [1, 2])) { // Error
^") {
return 3;
}
}
}
}
}
block {
final synthesized dynamic #4#0 = y;
if(!(#4#0 is{ForNonNullableByDefault} self::A && (let final core::bool #t15 = qux = #4#0{self::A}.{self::A::qux}{core::bool} in true) && (let final core::String #t16 = quux = #4#0{self::A}.{self::A::quux}{core::String} in true)))
throw new _in::ReachabilityError::•();
} =>#4#0;
block {
final synthesized dynamic #5#0 = z;
if(!(#5#0 is{ForNonNullableByDefault} (core::Object?, {quux: core::Object?}) && (let final core::Object? #t17 = qux = #5#0{(core::Object?, {quux: core::Object?})}.$1{core::Object?} in true) && (let final core::Object? #t18 = quux = #5#0{(core::Object?, {quux: core::Object?})}.quux{core::Object?} in true)))
throw new _in::ReachabilityError::•();
} =>#5#0;
}