blob: 618388b7eca148c6d2bbeb9c984b63bac5f176b8 [file] [log] [blame]
library;
//
// Problems in library:
//
// pkg/front_end/testcases/extension_types/method_access.dart:27:10: Error: The getter 'setter' isn't defined for the class 'InlineClass'.
// Try correcting the name to the name of an existing getter, or defining a getter or field named 'setter'.
// this.setter; // Error, should not resolve to extension method.
// ^^^^^^
//
// pkg/front_end/testcases/extension_types/method_access.dart:28:5: Error: The getter 'setter' isn't defined for the class 'InlineClass'.
// Try correcting the name to the name of an existing getter, or defining a getter or field named 'setter'.
// setter; // Error, should not resolve to extension method.
// ^^^^^^
//
// pkg/front_end/testcases/extension_types/method_access.dart:29:10: Error: The setter 'getter' isn't defined for the class 'InlineClass'.
// Try correcting the name to the name of an existing setter, or defining a setter or field named 'getter'.
// this.getter = 42; // Error, should not resolve to extension method.
// ^^^^^^
//
// pkg/front_end/testcases/extension_types/method_access.dart:30:5: Error: The setter 'getter' isn't defined for the class 'InlineClass'.
// Try correcting the name to the name of an existing setter, or defining a setter or field named 'getter'.
// getter = 42; // Error, should not resolve to extension method.
// ^^^^^^
//
// pkg/front_end/testcases/extension_types/method_access.dart:73:6: Error: The getter 'setter' isn't defined for the class 'InlineClass'.
// Try correcting the name to the name of an existing getter, or defining a getter or field named 'setter'.
// ic.setter; // Error, should not resolve to extension method.
// ^^^^^^
//
// pkg/front_end/testcases/extension_types/method_access.dart:74:6: Error: The setter 'getter' isn't defined for the class 'InlineClass'.
// Try correcting the name to the name of an existing setter, or defining a setter or field named 'getter'.
// ic.getter = 42; // Error, should not resolve to extension method.
// ^^^^^^
//
import self as self;
import "dart:core" as core;
extension /* unnamed */ _extension#0 on core::Object {
get setter = self::_extension#0|get#setter;
set getter = self::_extension#0|set#getter;
}
extension type InlineClass(core::int it) {
abstract extension-type-member representation-field get it() core::int;
method test = self::InlineClass|test;
method tearoff test = self::InlineClass|get#test;
operator + = self::InlineClass|+;
operator unary- = self::InlineClass|unary-;
operator [] = self::InlineClass|[];
operator []= = self::InlineClass|[]=;
get getter = self::InlineClass|get#getter;
method method = self::InlineClass|method;
method tearoff method = self::InlineClass|get#method;
method genericMethod = self::InlineClass|genericMethod;
method tearoff genericMethod = self::InlineClass|get#genericMethod;
method call = self::InlineClass|call;
method tearoff call = self::InlineClass|get#call;
set setter = self::InlineClass|set#setter;
constructor = self::InlineClass|constructor#;
constructor tearoff = self::InlineClass|constructor#_#new#tearOff;
}
static extension-member method _extension#0|get#setter(lowered final core::Object #this) → core::int
return 42;
static extension-member method _extension#0|set#getter(lowered final core::Object #this, core::int value) → void {}
static extension-type-member method InlineClass|constructor#(core::int it) → self::InlineClass% /* erasure=core::int, declared=! */ {
lowered final self::InlineClass% /* erasure=core::int, declared=! */ #this = it;
return #this;
}
static extension-type-member method InlineClass|constructor#_#new#tearOff(core::int it) → self::InlineClass% /* erasure=core::int, declared=! */
return self::InlineClass|constructor#(it);
static extension-type-member method InlineClass|test(lowered final self::InlineClass% /* erasure=core::int, declared=! */ #this) → dynamic {
core::int a = self::InlineClass|+(#this, 2);
core::int b = self::InlineClass|unary-(#this);
core::int c = self::InlineClass|[](#this, 2);
core::int d = let final core::int #t1 = 3 in let final core::int #t2 = 42 in let final void #t3 = self::InlineClass|[]=(#this, #t1, #t2) in #t2;
core::int e1 = self::InlineClass|get#getter(#this);
core::int e2 = self::InlineClass|get#getter(#this);
() core::int f1 = self::InlineClass|get#method(#this);
() core::int f2 = self::InlineClass|get#method(#this);
core::int g1 = let final core::int #t4 = 42 in let final void #t5 = self::InlineClass|set#setter(#this, #t4) in #t4;
core::int g2 = let final core::int #t6 = 42 in let final void #t7 = self::InlineClass|set#setter(#this, #t6) in #t6;
self::InlineClass|set#setter(#this, 87);
self::InlineClass|set#setter(#this, 87);
(core::int) core::int h1 = self::InlineClass|get#genericMethod(#this)<core::int>;
(core::int) core::int h2 = self::InlineClass|get#genericMethod(#this)<core::int>;
invalid-expression "pkg/front_end/testcases/extension_types/method_access.dart:27:10: Error: The getter 'setter' isn't defined for the class 'InlineClass'.
Try correcting the name to the name of an existing getter, or defining a getter or field named 'setter'.
this.setter; // Error, should not resolve to extension method.
^^^^^^" in #this{<unresolved>}.setter;
invalid-expression "pkg/front_end/testcases/extension_types/method_access.dart:28:5: Error: The getter 'setter' isn't defined for the class 'InlineClass'.
Try correcting the name to the name of an existing getter, or defining a getter or field named 'setter'.
setter; // Error, should not resolve to extension method.
^^^^^^" in #this{<unresolved>}.setter;
invalid-expression "pkg/front_end/testcases/extension_types/method_access.dart:29:10: Error: The setter 'getter' isn't defined for the class 'InlineClass'.
Try correcting the name to the name of an existing setter, or defining a setter or field named 'getter'.
this.getter = 42; // Error, should not resolve to extension method.
^^^^^^" in #this.{<unresolved>}getter = 42;
invalid-expression "pkg/front_end/testcases/extension_types/method_access.dart:30:5: Error: The setter 'getter' isn't defined for the class 'InlineClass'.
Try correcting the name to the name of an existing setter, or defining a setter or field named 'getter'.
getter = 42; // Error, should not resolve to extension method.
^^^^^^" in #this.{<unresolved>}getter = 42;
core::int i1 = self::InlineClass|method(#this);
core::int i2 = self::InlineClass|method(#this);
core::num j1 = self::InlineClass|genericMethod<core::num>(#this, 0);
core::num j2 = self::InlineClass|genericMethod<core::num>(#this, 0);
core::int k1 = self::InlineClass|genericMethod<core::int>(#this, 0);
core::int k2 = self::InlineClass|genericMethod<core::int>(#this, 0);
core::num l1 = self::InlineClass|genericMethod<core::num>(#this, 0);
core::num l2 = self::InlineClass|genericMethod<core::num>(#this, 0);
core::int m = self::InlineClass|call(#this);
core::int n1 = self::InlineClass|call(#this);
core::int n2 = self::InlineClass|call(#this);
}
static extension-type-member method InlineClass|get#test(lowered final self::InlineClass% /* erasure=core::int, declared=! */ #this) → () → dynamic
return () dynamic => self::InlineClass|test(#this);
static extension-type-member method InlineClass|+(lowered final self::InlineClass% /* erasure=core::int, declared=! */ #this, core::int other) → core::int
return 42;
static extension-type-member method InlineClass|unary-(lowered final self::InlineClass% /* erasure=core::int, declared=! */ #this) → core::int
return 87;
static extension-type-member method InlineClass|[](lowered final self::InlineClass% /* erasure=core::int, declared=! */ #this, core::int index) → core::int
return 123;
static extension-type-member method InlineClass|[]=(lowered final self::InlineClass% /* erasure=core::int, declared=! */ #this, core::int index, core::int value) → void {}
static extension-type-member method InlineClass|get#getter(lowered final self::InlineClass% /* erasure=core::int, declared=! */ #this) → core::int
return 42;
static extension-type-member method InlineClass|method(lowered final self::InlineClass% /* erasure=core::int, declared=! */ #this) → core::int
return 42;
static extension-type-member method InlineClass|get#method(lowered final self::InlineClass% /* erasure=core::int, declared=! */ #this) → () → core::int
return () core::int => self::InlineClass|method(#this);
static extension-type-member method InlineClass|set#setter(lowered final self::InlineClass% /* erasure=core::int, declared=! */ #this, core::int value) → void {}
static extension-type-member method InlineClass|genericMethod<T extends core::Object? = dynamic>(lowered final self::InlineClass% /* erasure=core::int, declared=! */ #this, self::InlineClass|genericMethod::T% t) → self::InlineClass|genericMethod::T%
return t;
static extension-type-member method InlineClass|get#genericMethod(lowered final self::InlineClass% /* erasure=core::int, declared=! */ #this) → <T extends core::Object? = dynamic>(T%) → T%
return <T extends core::Object? = dynamic>(T% t) T% => self::InlineClass|genericMethod<T%>(#this, t);
static extension-type-member method InlineClass|call(lowered final self::InlineClass% /* erasure=core::int, declared=! */ #this) → core::int
return 321;
static extension-type-member method InlineClass|get#call(lowered final self::InlineClass% /* erasure=core::int, declared=! */ #this) → () → core::int
return () core::int => self::InlineClass|call(#this);
static method test(self::InlineClass% /* erasure=core::int, declared=! */ ic) dynamic {
core::int a = self::InlineClass|+(ic, 2);
core::int b = self::InlineClass|unary-(ic);
core::int c = self::InlineClass|[](ic, 2);
core::int d = let final self::InlineClass% /* erasure=core::int, declared=! */ #t8 = ic in let final core::int #t9 = 3 in let final core::int #t10 = 42 in let final void #t11 = self::InlineClass|[]=(#t8, #t9, #t10) in #t10;
core::int e = self::InlineClass|get#getter(ic);
() core::int f = self::InlineClass|get#method(ic);
core::int g = let final core::int #t12 = 42 in let final void #t13 = self::InlineClass|set#setter(ic, #t12) in #t12;
self::InlineClass|set#setter(ic, 87);
(core::int) core::int h = self::InlineClass|get#genericMethod(ic)<core::int>;
invalid-expression "pkg/front_end/testcases/extension_types/method_access.dart:73:6: Error: The getter 'setter' isn't defined for the class 'InlineClass'.
Try correcting the name to the name of an existing getter, or defining a getter or field named 'setter'.
ic.setter; // Error, should not resolve to extension method.
^^^^^^" in ic{<unresolved>}.setter;
invalid-expression "pkg/front_end/testcases/extension_types/method_access.dart:74:6: Error: The setter 'getter' isn't defined for the class 'InlineClass'.
Try correcting the name to the name of an existing setter, or defining a setter or field named 'getter'.
ic.getter = 42; // Error, should not resolve to extension method.
^^^^^^" in ic.{<unresolved>}getter = 42;
core::int i = self::InlineClass|method(ic);
core::num j = self::InlineClass|genericMethod<core::num>(ic, 0);
core::int k = self::InlineClass|genericMethod<core::int>(ic, 0);
core::num l = self::InlineClass|genericMethod<core::num>(ic, 0);
core::int m = self::InlineClass|call(ic);
core::int n = self::InlineClass|call(ic);
}