This commit is contained in:
Andy Hanson 2017-05-31 08:22:26 -07:00
parent ee57dc894b
commit b425453767
3 changed files with 64 additions and 0 deletions

View file

@ -0,0 +1,23 @@
/src/a.ts(4,1): error TS90010: Type 'C' is not assignable to type 'C'. Two different types with this name exist, but they are unrelated.
Types have separate declarations of a private property 'm'.
==== /node_modules/a/c0.d.ts (0 errors) ====
export class C {
private m(): void;
}
==== /node_modules/a/c1.d.ts (0 errors) ====
export class C {
private m(): void;
}
==== /src/a.ts (1 errors) ====
import { C as C0 } from "a/c0";
import { C as C1 } from "a/c1";
let c = new C0();
c = new C1();
~
!!! error TS90010: Type 'C' is not assignable to type 'C'. Two different types with this name exist, but they are unrelated.
!!! error TS90010: Types have separate declarations of a private property 'm'.

View file

@ -0,0 +1,26 @@
//// [tests/cases/compiler/nominalTypeMatchingDuplicateDeclarations4.ts] ////
//// [c0.d.ts]
export class C {
private m(): void;
}
//// [c1.d.ts]
export class C {
private m(): void;
}
//// [a.ts]
import { C as C0 } from "a/c0";
import { C as C1 } from "a/c1";
let c = new C0();
c = new C1();
//// [a.js]
"use strict";
exports.__esModule = true;
var c0_1 = require("a/c0");
var c1_1 = require("a/c1");
var c = new c0_1.C();
c = new c1_1.C();

View file

@ -0,0 +1,15 @@
// @Filename: /node_modules/a/c0.d.ts
export class C {
private m(): void;
}
// @Filename: /node_modules/a/c1.d.ts
export class C {
private m(): void;
}
// @Filename: /src/a.ts
import { C as C0 } from "a/c0";
import { C as C1 } from "a/c1";
let c = new C0();
c = new C1();