Merge pull request #19046 from Microsoft/fix15395

Fix emit for classes with both fields and 'extends null'
This commit is contained in:
Ron Buckton
2017-10-11 11:49:22 -07:00
committed by GitHub
5 changed files with 53 additions and 15 deletions

View File

@@ -1,7 +1,8 @@
//// [classExtendingNull.ts]
class C1 extends null { }
class C2 extends (null) { }
class C3 extends null { x = 1; }
class C4 extends (null) { x = 1; }
//// [classExtendingNull.js]
var __extends = (this && this.__extends) || (function () {
@@ -26,3 +27,17 @@ var C2 = /** @class */ (function (_super) {
}
return C2;
}((null)));
var C3 = /** @class */ (function (_super) {
__extends(C3, _super);
function C3() {
this.x = 1;
}
return C3;
}(null));
var C4 = /** @class */ (function (_super) {
__extends(C4, _super);
function C4() {
this.x = 1;
}
return C4;
}((null)));

View File

@@ -5,3 +5,11 @@ class C1 extends null { }
class C2 extends (null) { }
>C2 : Symbol(C2, Decl(classExtendingNull.ts, 0, 25))
class C3 extends null { x = 1; }
>C3 : Symbol(C3, Decl(classExtendingNull.ts, 1, 27))
>x : Symbol(C3.x, Decl(classExtendingNull.ts, 2, 23))
class C4 extends (null) { x = 1; }
>C4 : Symbol(C4, Decl(classExtendingNull.ts, 2, 32))
>x : Symbol(C4.x, Decl(classExtendingNull.ts, 3, 25))

View File

@@ -8,3 +8,16 @@ class C2 extends (null) { }
>(null) : null
>null : null
class C3 extends null { x = 1; }
>C3 : C3
>null : null
>x : number
>1 : 1
class C4 extends (null) { x = 1; }
>C4 : C4
>(null) : null
>null : null
>x : number
>1 : 1

View File

@@ -1,2 +1,4 @@
class C1 extends null { }
class C2 extends (null) { }
class C3 extends null { x = 1; }
class C4 extends (null) { x = 1; }