==== tests/cases/compiler/interfaceExtendsClassWithPrivate2.ts (4 errors) ==== class C { public foo(x: any) { return x; } private x = 1; } interface I extends C { other(x: any): any; } class D extends C implements I { // error ~ !!! Class 'D' incorrectly extends base class 'C': !!! Private property 'x' cannot be reimplemented. ~ !!! Class 'D' incorrectly implements interface 'I': !!! Private property 'x' cannot be reimplemented. public foo(x: any) { return x; } private x = 2; private y = 3; other(x: any) { return x; } bar() {} } class D2 extends C implements I { // error ~~ !!! Class 'D2' incorrectly extends base class 'C': !!! Private property 'x' cannot be reimplemented. ~~ !!! Class 'D2' incorrectly implements interface 'I': !!! Private property 'x' cannot be reimplemented. public foo(x: any) { return x; } private x = ""; other(x: any) { return x; } bar() { } }