2014-10-28 08:28:59 +01:00
|
|
|
tests/cases/conformance/interfaces/declarationMerging/mergedInterfacesWithInheritedPrivates3.ts(9,11): error TS2320: Interface 'A' cannot simultaneously extend types 'C' and 'C2'.
|
2015-02-05 04:32:13 +01:00
|
|
|
Named property 'x' of types 'C' and 'C2' are not identical.
|
2014-10-28 08:28:59 +01:00
|
|
|
tests/cases/conformance/interfaces/declarationMerging/mergedInterfacesWithInheritedPrivates3.ts(31,15): error TS2320: Interface 'A' cannot simultaneously extend types 'C' and 'C2'.
|
2015-02-05 04:32:13 +01:00
|
|
|
Named property 'x' of types 'C' and 'C2' are not identical.
|
2014-09-12 22:35:07 +02:00
|
|
|
|
|
|
|
|
2014-07-13 01:04:16 +02:00
|
|
|
==== tests/cases/conformance/interfaces/declarationMerging/mergedInterfacesWithInheritedPrivates3.ts (2 errors) ====
|
|
|
|
class C {
|
|
|
|
private x: number;
|
|
|
|
}
|
|
|
|
|
|
|
|
class C2 {
|
|
|
|
private x: number;
|
|
|
|
}
|
|
|
|
|
|
|
|
interface A extends C { // error
|
|
|
|
~
|
2014-10-28 08:28:59 +01:00
|
|
|
!!! error TS2320: Interface 'A' cannot simultaneously extend types 'C' and 'C2'.
|
2015-02-05 04:32:13 +01:00
|
|
|
!!! error TS2320: Named property 'x' of types 'C' and 'C2' are not identical.
|
2014-07-13 01:04:16 +02:00
|
|
|
y: string;
|
|
|
|
}
|
|
|
|
|
|
|
|
interface A extends C2 {
|
|
|
|
z: string;
|
|
|
|
}
|
|
|
|
|
|
|
|
class D extends C implements A { // error
|
|
|
|
y: string;
|
|
|
|
z: string;
|
|
|
|
}
|
|
|
|
|
|
|
|
module M {
|
|
|
|
class C {
|
|
|
|
private x: string;
|
|
|
|
}
|
|
|
|
|
|
|
|
class C2 {
|
|
|
|
private x: number;
|
|
|
|
}
|
|
|
|
|
|
|
|
interface A extends C { // error, privates conflict
|
|
|
|
~
|
2014-10-28 08:28:59 +01:00
|
|
|
!!! error TS2320: Interface 'A' cannot simultaneously extend types 'C' and 'C2'.
|
2015-02-05 04:32:13 +01:00
|
|
|
!!! error TS2320: Named property 'x' of types 'C' and 'C2' are not identical.
|
2014-07-13 01:04:16 +02:00
|
|
|
y: string;
|
|
|
|
}
|
|
|
|
|
|
|
|
interface A extends C2 {
|
|
|
|
z: string;
|
|
|
|
}
|
|
|
|
}
|