diff --git a/src/compiler/emitter.ts b/src/compiler/emitter.ts
index e6354a96128..4bb029091d2 100644
--- a/src/compiler/emitter.ts
+++ b/src/compiler/emitter.ts
@@ -4952,7 +4952,7 @@ module ts {
if (nodeOrChildIsDecorated(node)) {
if ((node.flags & NodeFlags.Default) === 0) {
- write("let ");
+ write("var ");
emitDeclarationName(node);
write(" = ");
}
@@ -5022,6 +5022,11 @@ module ts {
if (nodeOrChildIsDecorated(node)) {
writeLine();
emitDecoratorsOfClass(node);
+
+ write("return ");
+ emitDeclarationName(node);
+ write(";");
+
emitTempDeclarations(/*newLine*/ true);
writeLine();
tempCount = saveTempCount;
@@ -5030,8 +5035,6 @@ module ts {
generatedComputedPropertyNames = saveGeneratedComputedPropertyNames;
generatedSetterNames = saveGeneratedSetterNames;
- write("return ");
- emitDeclarationName(node);
decreaseIndent();
writeLine();
write("})();");
diff --git a/tests/baselines/reference/APISample_compile.js b/tests/baselines/reference/APISample_compile.js
index 12a0a7c0770..3aa1b0aa148 100644
--- a/tests/baselines/reference/APISample_compile.js
+++ b/tests/baselines/reference/APISample_compile.js
@@ -965,6 +965,7 @@ declare module "typescript" {
getConstantValue(node: EnumMember | PropertyAccessExpression | ElementAccessExpression): number;
isUnknownIdentifier(location: Node, name: string): boolean;
getBlockScopedVariableId(node: Identifier): number;
+ getClassDeclarationVariableId(node: Identifier): number;
}
const enum SymbolFlags {
FunctionScopedVariable = 1,
@@ -1070,6 +1071,7 @@ declare module "typescript" {
ContextChecked = 64,
EnumValuesComputed = 128,
BlockScopedBindingInLoop = 256,
+ EmitDecorate = 512,
}
interface NodeLinks {
resolvedType?: Type;
@@ -1458,6 +1460,7 @@ declare module "typescript" {
character: number;
};
function getLineAndCharacterOfPosition(sourceFile: SourceFile, position: number): LineAndCharacter;
+ function lineBreakBetween(sourceFile: SourceFile, firstPos: number, secondPos: number): boolean;
function isWhiteSpace(ch: number): boolean;
function isLineBreak(ch: number): boolean;
function isOctalDigit(ch: number): boolean;
diff --git a/tests/baselines/reference/APISample_compile.types b/tests/baselines/reference/APISample_compile.types
index 0b00bbc191c..59b08a4781c 100644
--- a/tests/baselines/reference/APISample_compile.types
+++ b/tests/baselines/reference/APISample_compile.types
@@ -3141,6 +3141,11 @@ declare module "typescript" {
getBlockScopedVariableId(node: Identifier): number;
>getBlockScopedVariableId : (node: Identifier) => number
>node : Identifier
+>Identifier : Identifier
+
+ getClassDeclarationVariableId(node: Identifier): number;
+>getClassDeclarationVariableId : (node: Identifier) => number
+>node : Identifier
>Identifier : Identifier
}
const enum SymbolFlags {
@@ -3455,6 +3460,9 @@ declare module "typescript" {
BlockScopedBindingInLoop = 256,
>BlockScopedBindingInLoop : NodeCheckFlags
+
+ EmitDecorate = 512,
+>EmitDecorate : NodeCheckFlags
}
interface NodeLinks {
>NodeLinks : NodeLinks
@@ -4626,6 +4634,13 @@ declare module "typescript" {
>position : number
>LineAndCharacter : LineAndCharacter
+ function lineBreakBetween(sourceFile: SourceFile, firstPos: number, secondPos: number): boolean;
+>lineBreakBetween : (sourceFile: SourceFile, firstPos: number, secondPos: number) => boolean
+>sourceFile : SourceFile
+>SourceFile : SourceFile
+>firstPos : number
+>secondPos : number
+
function isWhiteSpace(ch: number): boolean;
>isWhiteSpace : (ch: number) => boolean
>ch : number
diff --git a/tests/baselines/reference/APISample_linter.js b/tests/baselines/reference/APISample_linter.js
index c819c060567..3a757204be8 100644
--- a/tests/baselines/reference/APISample_linter.js
+++ b/tests/baselines/reference/APISample_linter.js
@@ -996,6 +996,7 @@ declare module "typescript" {
getConstantValue(node: EnumMember | PropertyAccessExpression | ElementAccessExpression): number;
isUnknownIdentifier(location: Node, name: string): boolean;
getBlockScopedVariableId(node: Identifier): number;
+ getClassDeclarationVariableId(node: Identifier): number;
}
const enum SymbolFlags {
FunctionScopedVariable = 1,
@@ -1101,6 +1102,7 @@ declare module "typescript" {
ContextChecked = 64,
EnumValuesComputed = 128,
BlockScopedBindingInLoop = 256,
+ EmitDecorate = 512,
}
interface NodeLinks {
resolvedType?: Type;
@@ -1489,6 +1491,7 @@ declare module "typescript" {
character: number;
};
function getLineAndCharacterOfPosition(sourceFile: SourceFile, position: number): LineAndCharacter;
+ function lineBreakBetween(sourceFile: SourceFile, firstPos: number, secondPos: number): boolean;
function isWhiteSpace(ch: number): boolean;
function isLineBreak(ch: number): boolean;
function isOctalDigit(ch: number): boolean;
diff --git a/tests/baselines/reference/APISample_linter.types b/tests/baselines/reference/APISample_linter.types
index c19778ea499..c4e2f1ba406 100644
--- a/tests/baselines/reference/APISample_linter.types
+++ b/tests/baselines/reference/APISample_linter.types
@@ -3287,6 +3287,11 @@ declare module "typescript" {
getBlockScopedVariableId(node: Identifier): number;
>getBlockScopedVariableId : (node: Identifier) => number
>node : Identifier
+>Identifier : Identifier
+
+ getClassDeclarationVariableId(node: Identifier): number;
+>getClassDeclarationVariableId : (node: Identifier) => number
+>node : Identifier
>Identifier : Identifier
}
const enum SymbolFlags {
@@ -3601,6 +3606,9 @@ declare module "typescript" {
BlockScopedBindingInLoop = 256,
>BlockScopedBindingInLoop : NodeCheckFlags
+
+ EmitDecorate = 512,
+>EmitDecorate : NodeCheckFlags
}
interface NodeLinks {
>NodeLinks : NodeLinks
@@ -4772,6 +4780,13 @@ declare module "typescript" {
>position : number
>LineAndCharacter : LineAndCharacter
+ function lineBreakBetween(sourceFile: SourceFile, firstPos: number, secondPos: number): boolean;
+>lineBreakBetween : (sourceFile: SourceFile, firstPos: number, secondPos: number) => boolean
+>sourceFile : SourceFile
+>SourceFile : SourceFile
+>firstPos : number
+>secondPos : number
+
function isWhiteSpace(ch: number): boolean;
>isWhiteSpace : (ch: number) => boolean
>ch : number
diff --git a/tests/baselines/reference/APISample_transform.js b/tests/baselines/reference/APISample_transform.js
index 11fb8bdef93..54acd038e43 100644
--- a/tests/baselines/reference/APISample_transform.js
+++ b/tests/baselines/reference/APISample_transform.js
@@ -997,6 +997,7 @@ declare module "typescript" {
getConstantValue(node: EnumMember | PropertyAccessExpression | ElementAccessExpression): number;
isUnknownIdentifier(location: Node, name: string): boolean;
getBlockScopedVariableId(node: Identifier): number;
+ getClassDeclarationVariableId(node: Identifier): number;
}
const enum SymbolFlags {
FunctionScopedVariable = 1,
@@ -1102,6 +1103,7 @@ declare module "typescript" {
ContextChecked = 64,
EnumValuesComputed = 128,
BlockScopedBindingInLoop = 256,
+ EmitDecorate = 512,
}
interface NodeLinks {
resolvedType?: Type;
@@ -1490,6 +1492,7 @@ declare module "typescript" {
character: number;
};
function getLineAndCharacterOfPosition(sourceFile: SourceFile, position: number): LineAndCharacter;
+ function lineBreakBetween(sourceFile: SourceFile, firstPos: number, secondPos: number): boolean;
function isWhiteSpace(ch: number): boolean;
function isLineBreak(ch: number): boolean;
function isOctalDigit(ch: number): boolean;
diff --git a/tests/baselines/reference/APISample_transform.types b/tests/baselines/reference/APISample_transform.types
index 4e56770573a..9d3c6e46cc6 100644
--- a/tests/baselines/reference/APISample_transform.types
+++ b/tests/baselines/reference/APISample_transform.types
@@ -3237,6 +3237,11 @@ declare module "typescript" {
getBlockScopedVariableId(node: Identifier): number;
>getBlockScopedVariableId : (node: Identifier) => number
>node : Identifier
+>Identifier : Identifier
+
+ getClassDeclarationVariableId(node: Identifier): number;
+>getClassDeclarationVariableId : (node: Identifier) => number
+>node : Identifier
>Identifier : Identifier
}
const enum SymbolFlags {
@@ -3551,6 +3556,9 @@ declare module "typescript" {
BlockScopedBindingInLoop = 256,
>BlockScopedBindingInLoop : NodeCheckFlags
+
+ EmitDecorate = 512,
+>EmitDecorate : NodeCheckFlags
}
interface NodeLinks {
>NodeLinks : NodeLinks
@@ -4722,6 +4730,13 @@ declare module "typescript" {
>position : number
>LineAndCharacter : LineAndCharacter
+ function lineBreakBetween(sourceFile: SourceFile, firstPos: number, secondPos: number): boolean;
+>lineBreakBetween : (sourceFile: SourceFile, firstPos: number, secondPos: number) => boolean
+>sourceFile : SourceFile
+>SourceFile : SourceFile
+>firstPos : number
+>secondPos : number
+
function isWhiteSpace(ch: number): boolean;
>isWhiteSpace : (ch: number) => boolean
>ch : number
diff --git a/tests/baselines/reference/APISample_watcher.js b/tests/baselines/reference/APISample_watcher.js
index b9a40c6a197..13fd5a25457 100644
--- a/tests/baselines/reference/APISample_watcher.js
+++ b/tests/baselines/reference/APISample_watcher.js
@@ -1034,6 +1034,7 @@ declare module "typescript" {
getConstantValue(node: EnumMember | PropertyAccessExpression | ElementAccessExpression): number;
isUnknownIdentifier(location: Node, name: string): boolean;
getBlockScopedVariableId(node: Identifier): number;
+ getClassDeclarationVariableId(node: Identifier): number;
}
const enum SymbolFlags {
FunctionScopedVariable = 1,
@@ -1139,6 +1140,7 @@ declare module "typescript" {
ContextChecked = 64,
EnumValuesComputed = 128,
BlockScopedBindingInLoop = 256,
+ EmitDecorate = 512,
}
interface NodeLinks {
resolvedType?: Type;
@@ -1527,6 +1529,7 @@ declare module "typescript" {
character: number;
};
function getLineAndCharacterOfPosition(sourceFile: SourceFile, position: number): LineAndCharacter;
+ function lineBreakBetween(sourceFile: SourceFile, firstPos: number, secondPos: number): boolean;
function isWhiteSpace(ch: number): boolean;
function isLineBreak(ch: number): boolean;
function isOctalDigit(ch: number): boolean;
diff --git a/tests/baselines/reference/APISample_watcher.types b/tests/baselines/reference/APISample_watcher.types
index 5b52c1522a5..514a9afe462 100644
--- a/tests/baselines/reference/APISample_watcher.types
+++ b/tests/baselines/reference/APISample_watcher.types
@@ -3410,6 +3410,11 @@ declare module "typescript" {
getBlockScopedVariableId(node: Identifier): number;
>getBlockScopedVariableId : (node: Identifier) => number
>node : Identifier
+>Identifier : Identifier
+
+ getClassDeclarationVariableId(node: Identifier): number;
+>getClassDeclarationVariableId : (node: Identifier) => number
+>node : Identifier
>Identifier : Identifier
}
const enum SymbolFlags {
@@ -3724,6 +3729,9 @@ declare module "typescript" {
BlockScopedBindingInLoop = 256,
>BlockScopedBindingInLoop : NodeCheckFlags
+
+ EmitDecorate = 512,
+>EmitDecorate : NodeCheckFlags
}
interface NodeLinks {
>NodeLinks : NodeLinks
@@ -4895,6 +4903,13 @@ declare module "typescript" {
>position : number
>LineAndCharacter : LineAndCharacter
+ function lineBreakBetween(sourceFile: SourceFile, firstPos: number, secondPos: number): boolean;
+>lineBreakBetween : (sourceFile: SourceFile, firstPos: number, secondPos: number) => boolean
+>sourceFile : SourceFile
+>SourceFile : SourceFile
+>firstPos : number
+>secondPos : number
+
function isWhiteSpace(ch: number): boolean;
>isWhiteSpace : (ch: number) => boolean
>ch : number
diff --git a/tests/baselines/reference/computedPropertyNames23_ES5.js b/tests/baselines/reference/computedPropertyNames23_ES5.js
index c3024a7fbbf..a9c40ca9737 100644
--- a/tests/baselines/reference/computedPropertyNames23_ES5.js
+++ b/tests/baselines/reference/computedPropertyNames23_ES5.js
@@ -19,6 +19,6 @@ var C = (function () {
_a[this.bar()] = 1,
_a)[0]] = function () {
};
+ var _a;
return C;
})();
-var _a;
diff --git a/tests/baselines/reference/computedPropertyNames26_ES5.js b/tests/baselines/reference/computedPropertyNames26_ES5.js
index 5651ee266c9..5628215f3dc 100644
--- a/tests/baselines/reference/computedPropertyNames26_ES5.js
+++ b/tests/baselines/reference/computedPropertyNames26_ES5.js
@@ -34,6 +34,6 @@ var C = (function (_super) {
_a[_super.bar.call(this)] = 1,
_a)[0]] = function () {
};
+ var _a;
return C;
})(Base);
-var _a;
diff --git a/tests/baselines/reference/noDefaultLib.errors.txt b/tests/baselines/reference/noDefaultLib.errors.txt
index b8f42ba7c33..d7e58eb31f8 100644
--- a/tests/baselines/reference/noDefaultLib.errors.txt
+++ b/tests/baselines/reference/noDefaultLib.errors.txt
@@ -1,9 +1,21 @@
+error TS2318: Cannot find global type 'TypedPropertyDescriptor'.
+error TS2318: Cannot find global type 'PropertyDecorator'.
+error TS2318: Cannot find global type 'PropertyAnnotation'.
+error TS2318: Cannot find global type 'ParameterAnnotation'.
error TS2318: Cannot find global type 'IArguments'.
+error TS2318: Cannot find global type 'ClassDecorator'.
+error TS2318: Cannot find global type 'ClassAnnotation'.
error TS2318: Cannot find global type 'Boolean'.
tests/cases/compiler/noDefaultLib.ts(4,11): error TS2317: Global type 'Array' must have 1 type parameter(s).
+!!! error TS2318: Cannot find global type 'TypedPropertyDescriptor'.
+!!! error TS2318: Cannot find global type 'PropertyDecorator'.
+!!! error TS2318: Cannot find global type 'PropertyAnnotation'.
+!!! error TS2318: Cannot find global type 'ParameterAnnotation'.
!!! error TS2318: Cannot find global type 'IArguments'.
+!!! error TS2318: Cannot find global type 'ClassDecorator'.
+!!! error TS2318: Cannot find global type 'ClassAnnotation'.
!!! error TS2318: Cannot find global type 'Boolean'.
==== tests/cases/compiler/noDefaultLib.ts (1 errors) ====
///
diff --git a/tests/baselines/reference/parser509698.errors.txt b/tests/baselines/reference/parser509698.errors.txt
index 85485dd6501..e3dd323ec10 100644
--- a/tests/baselines/reference/parser509698.errors.txt
+++ b/tests/baselines/reference/parser509698.errors.txt
@@ -1,21 +1,33 @@
+error TS2318: Cannot find global type 'Object'.
+error TS2318: Cannot find global type 'TypedPropertyDescriptor'.
+error TS2318: Cannot find global type 'ParameterAnnotation'.
+error TS2318: Cannot find global type 'Array'.
+error TS2318: Cannot find global type 'ClassAnnotation'.
error TS2318: Cannot find global type 'String'.
error TS2318: Cannot find global type 'RegExp'.
-error TS2318: Cannot find global type 'Object'.
+error TS2318: Cannot find global type 'PropertyDecorator'.
+error TS2318: Cannot find global type 'PropertyAnnotation'.
+error TS2318: Cannot find global type 'ClassDecorator'.
+error TS2318: Cannot find global type 'Boolean'.
error TS2318: Cannot find global type 'Number'.
error TS2318: Cannot find global type 'IArguments'.
error TS2318: Cannot find global type 'Function'.
-error TS2318: Cannot find global type 'Boolean'.
-error TS2318: Cannot find global type 'Array'.
+!!! error TS2318: Cannot find global type 'Object'.
+!!! error TS2318: Cannot find global type 'TypedPropertyDescriptor'.
+!!! error TS2318: Cannot find global type 'ParameterAnnotation'.
+!!! error TS2318: Cannot find global type 'Array'.
+!!! error TS2318: Cannot find global type 'ClassAnnotation'.
!!! error TS2318: Cannot find global type 'String'.
!!! error TS2318: Cannot find global type 'RegExp'.
-!!! error TS2318: Cannot find global type 'Object'.
+!!! error TS2318: Cannot find global type 'PropertyDecorator'.
+!!! error TS2318: Cannot find global type 'PropertyAnnotation'.
+!!! error TS2318: Cannot find global type 'ClassDecorator'.
+!!! error TS2318: Cannot find global type 'Boolean'.
!!! error TS2318: Cannot find global type 'Number'.
!!! error TS2318: Cannot find global type 'IArguments'.
!!! error TS2318: Cannot find global type 'Function'.
-!!! error TS2318: Cannot find global type 'Boolean'.
-!!! error TS2318: Cannot find global type 'Array'.
==== tests/cases/conformance/parser/ecmascript5/RegressionTests/parser509698.ts (0 errors) ====
///
///
diff --git a/tests/baselines/reference/parserErrorRecovery_ClassElement3.errors.txt b/tests/baselines/reference/parserErrorRecovery_ClassElement3.errors.txt
index 63c62bcd13d..7f81c6114f6 100644
--- a/tests/baselines/reference/parserErrorRecovery_ClassElement3.errors.txt
+++ b/tests/baselines/reference/parserErrorRecovery_ClassElement3.errors.txt
@@ -1,5 +1,5 @@
tests/cases/conformance/parser/ecmascript5/ErrorRecovery/ClassElements/parserErrorRecovery_ClassElement3.ts(2,4): error TS1127: Invalid character.
-tests/cases/conformance/parser/ecmascript5/ErrorRecovery/ClassElements/parserErrorRecovery_ClassElement3.ts(5,4): error TS1127: Invalid character.
+tests/cases/conformance/parser/ecmascript5/ErrorRecovery/ClassElements/parserErrorRecovery_ClassElement3.ts(6,4): error TS1109: Expression expected.
tests/cases/conformance/parser/ecmascript5/ErrorRecovery/ClassElements/parserErrorRecovery_ClassElement3.ts(7,4): error TS1127: Invalid character.
tests/cases/conformance/parser/ecmascript5/ErrorRecovery/ClassElements/parserErrorRecovery_ClassElement3.ts(7,5): error TS1005: '}' expected.
@@ -12,9 +12,9 @@ tests/cases/conformance/parser/ecmascript5/ErrorRecovery/ClassElements/parserErr
class C {
}
@
-
-!!! error TS1127: Invalid character.
enum E {
+ ~~~~
+!!! error TS1109: Expression expected.
#
!!! error TS1127: Invalid character.
diff --git a/tests/baselines/reference/project/noDefaultLib/amd/noDefaultLib.errors.txt b/tests/baselines/reference/project/noDefaultLib/amd/noDefaultLib.errors.txt
index e7db8a4da6a..2b07abb13e5 100644
--- a/tests/baselines/reference/project/noDefaultLib/amd/noDefaultLib.errors.txt
+++ b/tests/baselines/reference/project/noDefaultLib/amd/noDefaultLib.errors.txt
@@ -1,22 +1,34 @@
+error TS2318: Cannot find global type 'Object'.
+error TS2318: Cannot find global type 'Array'.
+error TS2318: Cannot find global type 'ParameterAnnotation'.
+error TS2318: Cannot find global type 'ClassAnnotation'.
+error TS2318: Cannot find global type 'PropertyAnnotation'.
+error TS2318: Cannot find global type 'Function'.
+error TS2318: Cannot find global type 'TypedPropertyDescriptor'.
error TS2318: Cannot find global type 'String'.
error TS2318: Cannot find global type 'RegExp'.
-error TS2318: Cannot find global type 'Object'.
-error TS2318: Cannot find global type 'Number'.
+error TS2318: Cannot find global type 'PropertyDecorator'.
error TS2318: Cannot find global type 'IArguments'.
-error TS2318: Cannot find global type 'Function'.
+error TS2318: Cannot find global type 'ClassDecorator'.
error TS2318: Cannot find global type 'Boolean'.
-error TS2318: Cannot find global type 'Array'.
+error TS2318: Cannot find global type 'Number'.
test.ts(3,8): error TS2304: Cannot find name 'Array'.
+!!! error TS2318: Cannot find global type 'Object'.
+!!! error TS2318: Cannot find global type 'Array'.
+!!! error TS2318: Cannot find global type 'ParameterAnnotation'.
+!!! error TS2318: Cannot find global type 'ClassAnnotation'.
+!!! error TS2318: Cannot find global type 'PropertyAnnotation'.
+!!! error TS2318: Cannot find global type 'Function'.
+!!! error TS2318: Cannot find global type 'TypedPropertyDescriptor'.
!!! error TS2318: Cannot find global type 'String'.
!!! error TS2318: Cannot find global type 'RegExp'.
-!!! error TS2318: Cannot find global type 'Object'.
-!!! error TS2318: Cannot find global type 'Number'.
+!!! error TS2318: Cannot find global type 'PropertyDecorator'.
!!! error TS2318: Cannot find global type 'IArguments'.
-!!! error TS2318: Cannot find global type 'Function'.
+!!! error TS2318: Cannot find global type 'ClassDecorator'.
!!! error TS2318: Cannot find global type 'Boolean'.
-!!! error TS2318: Cannot find global type 'Array'.
+!!! error TS2318: Cannot find global type 'Number'.
==== test.ts (1 errors) ====
///
diff --git a/tests/baselines/reference/project/noDefaultLib/node/noDefaultLib.errors.txt b/tests/baselines/reference/project/noDefaultLib/node/noDefaultLib.errors.txt
index e7db8a4da6a..2b07abb13e5 100644
--- a/tests/baselines/reference/project/noDefaultLib/node/noDefaultLib.errors.txt
+++ b/tests/baselines/reference/project/noDefaultLib/node/noDefaultLib.errors.txt
@@ -1,22 +1,34 @@
+error TS2318: Cannot find global type 'Object'.
+error TS2318: Cannot find global type 'Array'.
+error TS2318: Cannot find global type 'ParameterAnnotation'.
+error TS2318: Cannot find global type 'ClassAnnotation'.
+error TS2318: Cannot find global type 'PropertyAnnotation'.
+error TS2318: Cannot find global type 'Function'.
+error TS2318: Cannot find global type 'TypedPropertyDescriptor'.
error TS2318: Cannot find global type 'String'.
error TS2318: Cannot find global type 'RegExp'.
-error TS2318: Cannot find global type 'Object'.
-error TS2318: Cannot find global type 'Number'.
+error TS2318: Cannot find global type 'PropertyDecorator'.
error TS2318: Cannot find global type 'IArguments'.
-error TS2318: Cannot find global type 'Function'.
+error TS2318: Cannot find global type 'ClassDecorator'.
error TS2318: Cannot find global type 'Boolean'.
-error TS2318: Cannot find global type 'Array'.
+error TS2318: Cannot find global type 'Number'.
test.ts(3,8): error TS2304: Cannot find name 'Array'.
+!!! error TS2318: Cannot find global type 'Object'.
+!!! error TS2318: Cannot find global type 'Array'.
+!!! error TS2318: Cannot find global type 'ParameterAnnotation'.
+!!! error TS2318: Cannot find global type 'ClassAnnotation'.
+!!! error TS2318: Cannot find global type 'PropertyAnnotation'.
+!!! error TS2318: Cannot find global type 'Function'.
+!!! error TS2318: Cannot find global type 'TypedPropertyDescriptor'.
!!! error TS2318: Cannot find global type 'String'.
!!! error TS2318: Cannot find global type 'RegExp'.
-!!! error TS2318: Cannot find global type 'Object'.
-!!! error TS2318: Cannot find global type 'Number'.
+!!! error TS2318: Cannot find global type 'PropertyDecorator'.
!!! error TS2318: Cannot find global type 'IArguments'.
-!!! error TS2318: Cannot find global type 'Function'.
+!!! error TS2318: Cannot find global type 'ClassDecorator'.
!!! error TS2318: Cannot find global type 'Boolean'.
-!!! error TS2318: Cannot find global type 'Array'.
+!!! error TS2318: Cannot find global type 'Number'.
==== test.ts (1 errors) ====
///
diff --git a/tests/baselines/reference/typeCheckTypeArgument.errors.txt b/tests/baselines/reference/typeCheckTypeArgument.errors.txt
index 2b2cb22e945..e83a5ca486a 100644
--- a/tests/baselines/reference/typeCheckTypeArgument.errors.txt
+++ b/tests/baselines/reference/typeCheckTypeArgument.errors.txt
@@ -1,11 +1,17 @@
-error TS2318: Cannot find global type 'String'.
+error TS2318: Cannot find global type 'PropertyDecorator'.
error TS2318: Cannot find global type 'Array'.
-error TS2318: Cannot find global type 'IArguments'.
-error TS2318: Cannot find global type 'Boolean'.
error TS2318: Cannot find global type 'RegExp'.
-error TS2318: Cannot find global type 'Object'.
-error TS2318: Cannot find global type 'Number'.
+error TS2318: Cannot find global type 'ClassAnnotation'.
+error TS2318: Cannot find global type 'String'.
error TS2318: Cannot find global type 'Function'.
+error TS2318: Cannot find global type 'TypedPropertyDescriptor'.
+error TS2318: Cannot find global type 'Number'.
+error TS2318: Cannot find global type 'PropertyAnnotation'.
+error TS2318: Cannot find global type 'Object'.
+error TS2318: Cannot find global type 'IArguments'.
+error TS2318: Cannot find global type 'ClassDecorator'.
+error TS2318: Cannot find global type 'Boolean'.
+error TS2318: Cannot find global type 'ParameterAnnotation'.
tests/cases/compiler/typeCheckTypeArgument.ts(3,19): error TS2304: Cannot find name 'UNKNOWN'.
tests/cases/compiler/typeCheckTypeArgument.ts(5,26): error TS2304: Cannot find name 'UNKNOWN'.
tests/cases/compiler/typeCheckTypeArgument.ts(7,21): error TS2304: Cannot find name 'UNKNOWN'.
@@ -14,14 +20,20 @@ tests/cases/compiler/typeCheckTypeArgument.ts(12,22): error TS2304: Cannot find
tests/cases/compiler/typeCheckTypeArgument.ts(15,13): error TS2304: Cannot find name 'UNKNOWN'.
-!!! error TS2318: Cannot find global type 'String'.
+!!! error TS2318: Cannot find global type 'PropertyDecorator'.
!!! error TS2318: Cannot find global type 'Array'.
-!!! error TS2318: Cannot find global type 'IArguments'.
-!!! error TS2318: Cannot find global type 'Boolean'.
!!! error TS2318: Cannot find global type 'RegExp'.
-!!! error TS2318: Cannot find global type 'Object'.
-!!! error TS2318: Cannot find global type 'Number'.
+!!! error TS2318: Cannot find global type 'ClassAnnotation'.
+!!! error TS2318: Cannot find global type 'String'.
!!! error TS2318: Cannot find global type 'Function'.
+!!! error TS2318: Cannot find global type 'TypedPropertyDescriptor'.
+!!! error TS2318: Cannot find global type 'Number'.
+!!! error TS2318: Cannot find global type 'PropertyAnnotation'.
+!!! error TS2318: Cannot find global type 'Object'.
+!!! error TS2318: Cannot find global type 'IArguments'.
+!!! error TS2318: Cannot find global type 'ClassDecorator'.
+!!! error TS2318: Cannot find global type 'Boolean'.
+!!! error TS2318: Cannot find global type 'ParameterAnnotation'.
==== tests/cases/compiler/typeCheckTypeArgument.ts (6 errors) ====
///