blob: 75a123eca32adb78a2d0121eae95ea3805d5d1d5 [file] [log] [blame]
library;
//
// Problems in library:
//
// pkg/front_end/testcases/extension_types/constructor_vs_static_member.dart:8:3: Error: Conflicts with member 'n'.
// Class1.n(this.id); /* Error */
// ^
//
// pkg/front_end/testcases/extension_types/constructor_vs_static_member.dart:7:18: Error: Conflicts with constructor 'Class1.n'.
// static int get n => 1;
// ^
//
// pkg/front_end/testcases/extension_types/constructor_vs_static_member.dart:14:9: Error: Conflicts with member 'n'.
// const Class2.n(this.id); /* Error */
// ^
//
// pkg/front_end/testcases/extension_types/constructor_vs_static_member.dart:13:14: Error: Conflicts with constructor 'Class2.n'.
// static int n() => 2;
// ^
//
// pkg/front_end/testcases/extension_types/constructor_vs_static_member.dart:21:11: Error: Conflicts with member 'n'.
// factory Class3.n(int id) = Class3.new; /* Error */
// ^
//
// pkg/front_end/testcases/extension_types/constructor_vs_static_member.dart:19:14: Error: Conflicts with factory 'Class3.n'.
// static int n() => 3;
// ^
//
// pkg/front_end/testcases/extension_types/constructor_vs_static_member.dart:27:3: Error: Conflicts with member 'n'.
// Class4.n(this.id); /* Error */
// ^
//
// pkg/front_end/testcases/extension_types/constructor_vs_static_member.dart:26:14: Error: Conflicts with constructor 'Class4.n'.
// static int n = 1;
// ^
//
// pkg/front_end/testcases/extension_types/constructor_vs_static_member.dart:32:3: Error: Conflicts with member 'n'.
// ET1.n(this.id); /* Error */
// ^
//
// pkg/front_end/testcases/extension_types/constructor_vs_static_member.dart:31:18: Error: Conflicts with constructor 'ET1.n'.
// static int get n => 1;
// ^
//
// pkg/front_end/testcases/extension_types/constructor_vs_static_member.dart:37:9: Error: Conflicts with member 'n'.
// const ET2.n(this.id); /* Error */
// ^
//
// pkg/front_end/testcases/extension_types/constructor_vs_static_member.dart:36:14: Error: Conflicts with constructor 'ET2.n'.
// static int n() => 2;
// ^
//
// pkg/front_end/testcases/extension_types/constructor_vs_static_member.dart:42:11: Error: Conflicts with member 'n'.
// factory ET3.n(int id) = ET3.new; /* Error */
// ^
//
// pkg/front_end/testcases/extension_types/constructor_vs_static_member.dart:41:14: Error: Conflicts with factory 'ET3.n'.
// static int n() => 3;
// ^
//
// pkg/front_end/testcases/extension_types/constructor_vs_static_member.dart:47:3: Error: Conflicts with member 'n'.
// ET4.n(this.id); /* Error */
// ^
//
// pkg/front_end/testcases/extension_types/constructor_vs_static_member.dart:46:14: Error: Conflicts with constructor 'ET4.n'.
// static int n = 1;
// ^
//
import self as self;
import "dart:core" as core;
class Class1 extends core::Object {
final field core::int id;
constructor n(core::int id) self::Class1
: self::Class1::id = id, super core::Object::•()
;
static get n() core::int
return 1;
}
class Class2 extends core::Object /*hasConstConstructor*/ {
final field core::int id;
const constructor n(core::int id) self::Class2
: self::Class2::id = id, super core::Object::•()
;
static method n() core::int
return 2;
}
class Class3 extends core::Object {
final field core::int id;
constructor •(core::int id) self::Class3
: self::Class3::id = id, super core::Object::•()
;
static method n() core::int
return 3;
static factory n(core::int id) self::Class3 /* redirection-target: self::Class3::• */
return new self::Class3::•(id);
}
class Class4 extends core::Object {
final field core::int id;
static field core::int n = 1;
constructor n(core::int id) self::Class4
: self::Class4::id = id, super core::Object::•()
;
}
extension type ET1(core::int id) {
abstract extension-type-member representation-field get id() core::int;
static get n = get self::ET1|n;
constructor = self::ET1|constructor#;
constructor tearoff = self::ET1|constructor#_#new#tearOff;
constructor n = self::ET1|constructor#n;
constructor tearoff n = self::ET1|constructor#_#n#tearOff;
}
extension type ET2(core::int id) {
abstract extension-type-member representation-field get id() core::int;
static method n = self::ET2|n;
constructor = self::ET2|constructor#;
constructor tearoff = self::ET2|constructor#_#new#tearOff;
constructor n = self::ET2|constructor#n;
constructor tearoff n = self::ET2|constructor#_#n#tearOff;
}
extension type ET3(core::int id) {
abstract extension-type-member representation-field get id() core::int;
static method n = self::ET3|n;
constructor = self::ET3|constructor#;
constructor tearoff = self::ET3|constructor#_#new#tearOff;
static redirecting-factory n = self::ET3|constructor#n;
static redirecting-factory tearoff n = self::ET3|constructor#_#n#tearOff;
}
extension type ET4(core::int id) {
abstract extension-type-member representation-field get id() core::int;
static field n = self::ET4|n;
constructor = self::ET4|constructor#;
constructor tearoff = self::ET4|constructor#_#new#tearOff;
constructor n = self::ET4|constructor#n;
constructor tearoff n = self::ET4|constructor#_#n#tearOff;
}
static field core::int ET4|n = 1;
static extension-type-member method ET1|constructor#(core::int id) → self::ET1% /* erasure=core::int, declared=! */ {
lowered final self::ET1% /* erasure=core::int, declared=! */ #this = id;
return #this;
}
static extension-type-member method ET1|constructor#_#new#tearOff(core::int id) → self::ET1% /* erasure=core::int, declared=! */
return self::ET1|constructor#(id);
static extension-type-member get ET1|n() core::int
return 1;
static extension-type-member method ET1|constructor#n(core::int id) → self::ET1% /* erasure=core::int, declared=! */ {
lowered final self::ET1% /* erasure=core::int, declared=! */ #this = id;
return #this;
}
static extension-type-member method ET1|constructor#_#n#tearOff(core::int id) → self::ET1% /* erasure=core::int, declared=! */
return self::ET1|constructor#n(id);
static extension-type-member method ET2|constructor#(core::int id) → self::ET2% /* erasure=core::int, declared=! */ {
lowered final self::ET2% /* erasure=core::int, declared=! */ #this = id;
return #this;
}
static extension-type-member method ET2|constructor#_#new#tearOff(core::int id) → self::ET2% /* erasure=core::int, declared=! */
return self::ET2|constructor#(id);
static extension-type-member method ET2|n() core::int
return 2;
static extension-type-member method ET2|constructor#n(core::int id) → self::ET2% /* erasure=core::int, declared=! */ {
lowered final self::ET2% /* erasure=core::int, declared=! */ #this = id;
return #this;
}
static extension-type-member method ET2|constructor#_#n#tearOff(core::int id) → self::ET2% /* erasure=core::int, declared=! */
return self::ET2|constructor#n(id);
static extension-type-member method ET3|constructor#(core::int id) → self::ET3% /* erasure=core::int, declared=! */ {
lowered final self::ET3% /* erasure=core::int, declared=! */ #this = id;
return #this;
}
static extension-type-member method ET3|constructor#_#new#tearOff(core::int id) → self::ET3% /* erasure=core::int, declared=! */
return self::ET3|constructor#(id);
static extension-type-member method ET3|n() core::int
return 3;
static extension-type-member method ET3|constructor#n(core::int id) → self::ET3% /* erasure=core::int, declared=! */ /* redirection-target: self::ET3|constructor# */
return self::ET3|constructor#(id);
static extension-type-member method ET3|constructor#_#n#tearOff(core::int id) → self::ET3% /* erasure=core::int, declared=! */
return self::ET3|constructor#(id);
static extension-type-member method ET4|constructor#(core::int id) → self::ET4% /* erasure=core::int, declared=! */ {
lowered final self::ET4% /* erasure=core::int, declared=! */ #this = id;
return #this;
}
static extension-type-member method ET4|constructor#_#new#tearOff(core::int id) → self::ET4% /* erasure=core::int, declared=! */
return self::ET4|constructor#(id);
static extension-type-member method ET4|constructor#n(core::int id) → self::ET4% /* erasure=core::int, declared=! */ {
lowered final self::ET4% /* erasure=core::int, declared=! */ #this = id;
return #this;
}
static extension-type-member method ET4|constructor#_#n#tearOff(core::int id) → self::ET4% /* erasure=core::int, declared=! */
return self::ET4|constructor#n(id);