=== tests/cases/conformance/interfaces/declarationMerging/mergedInterfacesWithMultipleBases3.ts === // merged interfaces behave as if all extends clauses from each declaration are merged together // no errors expected class C { >C : Symbol(C, Decl(mergedInterfacesWithMultipleBases3.ts, 0, 0)) >T : Symbol(T, Decl(mergedInterfacesWithMultipleBases3.ts, 3, 8)) a: T; >a : Symbol(a, Decl(mergedInterfacesWithMultipleBases3.ts, 3, 12)) >T : Symbol(T, Decl(mergedInterfacesWithMultipleBases3.ts, 3, 8)) } class C2 { >C2 : Symbol(C2, Decl(mergedInterfacesWithMultipleBases3.ts, 5, 1)) >T : Symbol(T, Decl(mergedInterfacesWithMultipleBases3.ts, 7, 9)) b: T; >b : Symbol(b, Decl(mergedInterfacesWithMultipleBases3.ts, 7, 13)) >T : Symbol(T, Decl(mergedInterfacesWithMultipleBases3.ts, 7, 9)) } class C3 { >C3 : Symbol(C3, Decl(mergedInterfacesWithMultipleBases3.ts, 9, 1)) >T : Symbol(T, Decl(mergedInterfacesWithMultipleBases3.ts, 11, 9)) c: T; >c : Symbol(c, Decl(mergedInterfacesWithMultipleBases3.ts, 11, 13)) >T : Symbol(T, Decl(mergedInterfacesWithMultipleBases3.ts, 11, 9)) } class C4 { >C4 : Symbol(C4, Decl(mergedInterfacesWithMultipleBases3.ts, 13, 1)) >T : Symbol(T, Decl(mergedInterfacesWithMultipleBases3.ts, 15, 9)) d: T; >d : Symbol(d, Decl(mergedInterfacesWithMultipleBases3.ts, 15, 13)) >T : Symbol(T, Decl(mergedInterfacesWithMultipleBases3.ts, 15, 9)) } interface A extends C, C3 { >A : Symbol(A, Decl(mergedInterfacesWithMultipleBases3.ts, 17, 1), Decl(mergedInterfacesWithMultipleBases3.ts, 21, 1)) >T : Symbol(T, Decl(mergedInterfacesWithMultipleBases3.ts, 19, 12), Decl(mergedInterfacesWithMultipleBases3.ts, 23, 12)) >C : Symbol(C, Decl(mergedInterfacesWithMultipleBases3.ts, 0, 0)) >C3 : Symbol(C3, Decl(mergedInterfacesWithMultipleBases3.ts, 9, 1)) y: T; >y : Symbol(y, Decl(mergedInterfacesWithMultipleBases3.ts, 19, 46)) >T : Symbol(T, Decl(mergedInterfacesWithMultipleBases3.ts, 19, 12), Decl(mergedInterfacesWithMultipleBases3.ts, 23, 12)) } interface A extends C, C4 { >A : Symbol(A, Decl(mergedInterfacesWithMultipleBases3.ts, 17, 1), Decl(mergedInterfacesWithMultipleBases3.ts, 21, 1)) >T : Symbol(T, Decl(mergedInterfacesWithMultipleBases3.ts, 19, 12), Decl(mergedInterfacesWithMultipleBases3.ts, 23, 12)) >C : Symbol(C, Decl(mergedInterfacesWithMultipleBases3.ts, 0, 0)) >C4 : Symbol(C4, Decl(mergedInterfacesWithMultipleBases3.ts, 13, 1)) z: T; >z : Symbol(z, Decl(mergedInterfacesWithMultipleBases3.ts, 23, 46)) >T : Symbol(T, Decl(mergedInterfacesWithMultipleBases3.ts, 19, 12), Decl(mergedInterfacesWithMultipleBases3.ts, 23, 12)) } class D implements A { >D : Symbol(D, Decl(mergedInterfacesWithMultipleBases3.ts, 25, 1)) >A : Symbol(A, Decl(mergedInterfacesWithMultipleBases3.ts, 17, 1), Decl(mergedInterfacesWithMultipleBases3.ts, 21, 1)) a: string; >a : Symbol(a, Decl(mergedInterfacesWithMultipleBases3.ts, 27, 31)) b: Date; >b : Symbol(b, Decl(mergedInterfacesWithMultipleBases3.ts, 28, 14)) >Date : Symbol(Date, Decl(lib.d.ts, 633, 23), Decl(lib.d.ts, 815, 11)) c: string; >c : Symbol(c, Decl(mergedInterfacesWithMultipleBases3.ts, 29, 12)) d: string; >d : Symbol(d, Decl(mergedInterfacesWithMultipleBases3.ts, 30, 14)) y: boolean; >y : Symbol(y, Decl(mergedInterfacesWithMultipleBases3.ts, 31, 14)) z: boolean; >z : Symbol(z, Decl(mergedInterfacesWithMultipleBases3.ts, 32, 15)) }