| library; |
| // |
| // Problems in library: |
| // |
| // pkg/front_end/testcases/extension_types/aliased_member_access.dart:55:9: Error: Couldn't find constructor 'A.method'. |
| // new A.method(2); // Error |
| // ^^^^^^ |
| // |
| // pkg/front_end/testcases/extension_types/aliased_member_access.dart:59:9: Error: Couldn't find constructor 'B.method'. |
| // new B.method(2); // Error |
| // ^^^^^^ |
| // |
| // pkg/front_end/testcases/extension_types/aliased_member_access.dart:63:9: Error: Couldn't find constructor 'C.method'. |
| // new C.method(2); // Error |
| // ^^^^^^ |
| // |
| // pkg/front_end/testcases/extension_types/aliased_member_access.dart:67:9: Error: Couldn't find constructor 'D.method'. |
| // new D.method(2); // Error |
| // ^^^^^^ |
| // |
| // pkg/front_end/testcases/extension_types/aliased_member_access.dart:71:9: Error: Couldn't find constructor 'E.method'. |
| // new E.method(2); // Error |
| // ^^^^^^ |
| // |
| // pkg/front_end/testcases/extension_types/aliased_member_access.dart:75:9: Error: Couldn't find constructor 'F.method'. |
| // new F.method(2); // Error |
| // ^^^^^^ |
| // |
| import self as self; |
| import "dart:core" as core; |
| |
| typedef A = self::B% /* erasure=core::int, declared=! */; |
| typedef C<X extends core::num> = self::D<X>% /* erasure=X, declared=! */; |
| typedef E<X extends core::num> = self::F<X>; |
| class F<Z extends core::Object? = dynamic> extends core::Object { |
| constructor •(self::F::Z% i) → self::F<self::F::Z%> |
| : super core::Object::•() |
| ; |
| constructor named(self::F::Z% i) → self::F<self::F::Z%> |
| : super core::Object::•() |
| ; |
| static method method<Z extends core::Object? = dynamic>(self::F::method::Z% i) → self::F<self::F::method::Z%> |
| return new self::F::•<self::F::method::Z%>(i); |
| } |
| extension type B(core::int i) { |
| abstract extension-type-member representation-field get i() → core::int; |
| static method method = self::B|method; |
| constructor • = self::B|constructor#; |
| constructor tearoff • = self::B|constructor#_#new#tearOff; |
| constructor named = self::B|constructor#named; |
| constructor tearoff named = self::B|constructor#_#named#tearOff; |
| } |
| extension type D<Y extends core::Object? = dynamic>(Y% i) { |
| abstract extension-type-member representation-field get i() → Y%; |
| static method method = self::D|method; |
| constructor • = self::D|constructor#; |
| constructor tearoff • = self::D|constructor#_#new#tearOff; |
| constructor named = self::D|constructor#named; |
| constructor tearoff named = self::D|constructor#_#named#tearOff; |
| } |
| static extension-type-member method B|constructor#(core::int i) → self::B% /* erasure=core::int, declared=! */ { |
| lowered final self::B% /* erasure=core::int, declared=! */ #this = i; |
| return #this; |
| } |
| static extension-type-member method B|constructor#_#new#tearOff(core::int i) → self::B% /* erasure=core::int, declared=! */ |
| return self::B|constructor#(i); |
| static extension-type-member method B|constructor#named(core::int i) → self::B% /* erasure=core::int, declared=! */ { |
| lowered final self::B% /* erasure=core::int, declared=! */ #this = i; |
| return #this; |
| } |
| static extension-type-member method B|constructor#_#named#tearOff(core::int i) → self::B% /* erasure=core::int, declared=! */ |
| return self::B|constructor#named(i); |
| static extension-type-member method B|method(core::int i) → self::B% /* erasure=core::int, declared=! */ |
| return self::B|constructor#(i); |
| static extension-type-member method D|constructor#<Y extends core::Object? = dynamic>(self::D|constructor#::Y% i) → self::D<self::D|constructor#::Y%>% /* erasure=self::D|constructor#::Y%, declared=! */ { |
| lowered final self::D<self::D|constructor#::Y%>% /* erasure=self::D|constructor#::Y%, declared=! */ #this = i; |
| return #this; |
| } |
| static extension-type-member method D|constructor#_#new#tearOff<Y extends core::Object? = dynamic>(self::D|constructor#_#new#tearOff::Y% i) → self::D<self::D|constructor#_#new#tearOff::Y%>% /* erasure=self::D|constructor#_#new#tearOff::Y%, declared=! */ |
| return self::D|constructor#<self::D|constructor#_#new#tearOff::Y%>(i); |
| static extension-type-member method D|constructor#named<Y extends core::Object? = dynamic>(self::D|constructor#named::Y% i) → self::D<self::D|constructor#named::Y%>% /* erasure=self::D|constructor#named::Y%, declared=! */ { |
| lowered final self::D<self::D|constructor#named::Y%>% /* erasure=self::D|constructor#named::Y%, declared=! */ #this = i; |
| return #this; |
| } |
| static extension-type-member method D|constructor#_#named#tearOff<Y extends core::Object? = dynamic>(self::D|constructor#_#named#tearOff::Y% i) → self::D<self::D|constructor#_#named#tearOff::Y%>% /* erasure=self::D|constructor#_#named#tearOff::Y%, declared=! */ |
| return self::D|constructor#named<self::D|constructor#_#named#tearOff::Y%>(i); |
| static extension-type-member method D|method<Y extends core::Object? = dynamic>(self::D|method::Y% i) → self::D<self::D|method::Y%>% /* erasure=self::D|method::Y%, declared=! */ |
| return self::D|constructor#<self::D|method::Y%>(i); |
| static method method() → dynamic { |
| self::B|constructor#(0); |
| self::B|constructor#named(1); |
| self::B|method(2); |
| self::B|constructor#(0); |
| self::B|constructor#named(1); |
| self::B|method(2); |
| self::D|constructor#<core::int>(0); |
| self::D|constructor#named<core::int>(1); |
| self::D|method<core::int>(2); |
| self::D|constructor#<core::int>(0); |
| self::D|constructor#named<core::int>(1); |
| self::D|method<core::int>(2); |
| new self::F::•<core::int>(0); |
| new self::F::named<core::int>(1); |
| self::F::method<core::int>(2); |
| new self::F::•<core::int>(0); |
| new self::F::named<core::int>(1); |
| self::F::method<core::int>(2); |
| self::B|constructor#(0); |
| self::B|constructor#named(1); |
| invalid-expression "pkg/front_end/testcases/extension_types/aliased_member_access.dart:55:9: Error: Couldn't find constructor 'A.method'. |
| new A.method(2); // Error |
| ^^^^^^"; |
| self::B|constructor#(0); |
| self::B|constructor#named(1); |
| invalid-expression "pkg/front_end/testcases/extension_types/aliased_member_access.dart:59:9: Error: Couldn't find constructor 'B.method'. |
| new B.method(2); // Error |
| ^^^^^^"; |
| self::D|constructor#<core::int>(0); |
| self::D|constructor#named<core::int>(1); |
| invalid-expression "pkg/front_end/testcases/extension_types/aliased_member_access.dart:63:9: Error: Couldn't find constructor 'C.method'. |
| new C.method(2); // Error |
| ^^^^^^"; |
| self::D|constructor#<core::int>(0); |
| self::D|constructor#named<core::int>(1); |
| invalid-expression "pkg/front_end/testcases/extension_types/aliased_member_access.dart:67:9: Error: Couldn't find constructor 'D.method'. |
| new D.method(2); // Error |
| ^^^^^^"; |
| new self::F::•<core::int>(0); |
| new self::F::named<core::int>(1); |
| invalid-expression "pkg/front_end/testcases/extension_types/aliased_member_access.dart:71:9: Error: Couldn't find constructor 'E.method'. |
| new E.method(2); // Error |
| ^^^^^^"; |
| new self::F::•<core::int>(0); |
| new self::F::named<core::int>(1); |
| invalid-expression "pkg/front_end/testcases/extension_types/aliased_member_access.dart:75:9: Error: Couldn't find constructor 'F.method'. |
| new F.method(2); // Error |
| ^^^^^^"; |
| } |
| static method _#C#new#tearOff<X extends core::num>(self::_#C#new#tearOff::X i) → self::D<self::_#C#new#tearOff::X>% /* erasure=self::_#C#new#tearOff::X, declared=! */ |
| return self::D|constructor#<self::_#C#new#tearOff::X>(i); |
| static method _#C#named#tearOff<X extends core::num>(self::_#C#named#tearOff::X i) → self::D<self::_#C#named#tearOff::X>% /* erasure=self::_#C#named#tearOff::X, declared=! */ |
| return self::D|constructor#named<self::_#C#named#tearOff::X>(i); |
| static method _#E#new#tearOff<X extends core::num>(self::_#E#new#tearOff::X i) → self::F<self::_#E#new#tearOff::X> |
| return new self::F::•<self::_#E#new#tearOff::X>(i); |
| static method _#E#named#tearOff<X extends core::num>(self::_#E#named#tearOff::X i) → self::F<self::_#E#named#tearOff::X> |
| return new self::F::named<self::_#E#named#tearOff::X>(i); |