43 lines
1.1 KiB
Plaintext
43 lines
1.1 KiB
Plaintext
==== tests/cases/conformance/types/typeRelationships/subtypesAndSuperTypes/subtypingWithObjectMembersAccessibility.ts (3 errors) ====
|
|
// Derived member is private, base member is not causes errors
|
|
|
|
class Base {
|
|
foo: string;
|
|
}
|
|
|
|
class Derived extends Base {
|
|
bar: string;
|
|
}
|
|
|
|
class A {
|
|
public foo: Base;
|
|
}
|
|
|
|
class B extends A {
|
|
~
|
|
!!! Class 'B' incorrectly extends base class 'A':
|
|
!!! Private property 'foo' cannot be reimplemented.
|
|
private foo: Derived; // error
|
|
}
|
|
|
|
class A2 {
|
|
public 1: Base;
|
|
}
|
|
|
|
class B2 extends A2 {
|
|
~~
|
|
!!! Class 'B2' incorrectly extends base class 'A2':
|
|
!!! Private property '1' cannot be reimplemented.
|
|
private 1: Derived; // error
|
|
}
|
|
|
|
class A3 {
|
|
public '1': Base;
|
|
}
|
|
|
|
class B3 extends A3 {
|
|
~~
|
|
!!! Class 'B3' incorrectly extends base class 'A3':
|
|
!!! Private property ''1'' cannot be reimplemented.
|
|
private '1': Derived; // error
|
|
} |