//// [scopeResolutionIdentifiers.ts] // EveryType used in a nested scope of a different EveryType with the same name, type of the identifier is the one defined in the inner scope var s: string; module M1 { export var s: number; var n = s; var n: number; } module M2 { var s: number; var n = s; var n: number; } function fn() { var s: boolean; var n = s; var n: boolean; } class C { s: Date; n = this.s; x() { var p = this.n; var p: Date; } } module M3 { var s: any; module M4 { var n = s; var n: any; } } //// [scopeResolutionIdentifiers.js] // EveryType used in a nested scope of a different EveryType with the same name, type of the identifier is the one defined in the inner scope var s; var M1; (function (M1) { M1.s; var n = M1.s; var n; })(M1 || (M1 = {})); var M2; (function (M2) { var s; var n = s; var n; })(M2 || (M2 = {})); function fn() { var s; var n = s; var n; } var C = (function () { function C() { this.n = this.s; } C.prototype.x = function () { var p = this.n; var p; }; return C; })(); var M3; (function (M3) { var s; var M4; (function (M4) { var n = s; var n; })(M4 || (M4 = {})); })(M3 || (M3 = {}));