This was we don't get noisy baselines just because a different phase of the compiler reported the diagnostic. This helps with Yui's refactoring work to move grammar checks into the type checker.
40 lines
No EOL
1.2 KiB
Text
40 lines
No EOL
1.2 KiB
Text
tests/cases/conformance/classes/members/instanceAndStaticMembers/typeOfThisInInstanceMember.ts(10,11): error TS2339: Property 'z' does not exist on type 'C'.
|
|
tests/cases/conformance/classes/members/instanceAndStaticMembers/typeOfThisInInstanceMember.ts(14,9): error TS1056: Accessors are only available when targeting ECMAScript 5 and higher.
|
|
|
|
|
|
==== tests/cases/conformance/classes/members/instanceAndStaticMembers/typeOfThisInInstanceMember.ts (2 errors) ====
|
|
class C {
|
|
x = this;
|
|
foo() {
|
|
return this;
|
|
}
|
|
constructor(x: number) {
|
|
var t = this;
|
|
t.x;
|
|
t.y;
|
|
t.z;
|
|
~
|
|
!!! error TS2339: Property 'z' does not exist on type 'C'.
|
|
var r = t.foo();
|
|
}
|
|
|
|
get y() {
|
|
~
|
|
!!! error TS1056: Accessors are only available when targeting ECMAScript 5 and higher.
|
|
return this;
|
|
}
|
|
}
|
|
|
|
var c: C;
|
|
// all ok
|
|
var r = c.x;
|
|
var ra = c.x.x.x;
|
|
var r2 = c.y;
|
|
var r3 = c.foo();
|
|
var rs = [r, r2, r3];
|
|
|
|
rs.forEach(x => {
|
|
x.foo;
|
|
x.x;
|
|
x.y;
|
|
}); |