diff --git a/src/harness/harness.ts b/src/harness/harness.ts
index 58a63bc84c098..e38723169f8a7 100644
--- a/src/harness/harness.ts
+++ b/src/harness/harness.ts
@@ -1493,7 +1493,7 @@ namespace Harness {
});
}
- export function doTypeAndSymbolBaseline(baselinePath: string, program: ts.Program, allFiles: {unitName: string, content: string}[], opts?: Baseline.BaselineOptions, multifile?: boolean, skipTypeBaselines?: boolean, skipSymbolBaselines?: boolean) {
+ export function doTypeAndSymbolBaseline(baselinePath: string, program: ts.Program, allFiles: {unitName: string, content: string}[], opts?: Baseline.BaselineOptions, multifile?: boolean, skipTypeBaselines?: boolean, skipSymbolBaselines?: boolean, hasErrorBaseline?: boolean) {
// The full walker simulates the types that you would get from doing a full
// compile. The pull walker simulates the types you get when you just do
// a type query for a random node (like how the LS would do it). Most of the
@@ -1509,7 +1509,7 @@ namespace Harness {
// These types are equivalent, but depend on what order the compiler observed
// certain parts of the program.
- const fullWalker = new TypeWriterWalker(program, /*fullTypeCheck*/ true);
+ const fullWalker = new TypeWriterWalker(program, /*fullTypeCheck*/ true, !!hasErrorBaseline);
// Produce baselines. The first gives the types for all expressions.
// The second gives symbols for all identifiers.
diff --git a/src/harness/typeWriter.ts b/src/harness/typeWriter.ts
index 72ce3425cd81b..67f79a1a1a3c6 100644
--- a/src/harness/typeWriter.ts
+++ b/src/harness/typeWriter.ts
@@ -25,7 +25,7 @@ class TypeWriterWalker {
private checker: ts.TypeChecker;
- constructor(private program: ts.Program, fullTypeCheck: boolean) {
+ constructor(private program: ts.Program, fullTypeCheck: boolean, private hadErrorBaseline: boolean) {
// Consider getting both the diagnostics checker and the non-diagnostics checker to verify
// they are consistent.
this.checker = fullTypeCheck
@@ -69,6 +69,26 @@ class TypeWriterWalker {
}
}
+ private isImportStatementName(node: ts.Node) {
+ if (ts.isImportSpecifier(node.parent) && (node.parent.name === node || node.parent.propertyName === node)) return true;
+ if (ts.isImportClause(node.parent) && node.parent.name === node) return true;
+ if (ts.isImportEqualsDeclaration(node.parent) && node.parent.name === node) return true;
+ return false;
+ }
+
+ private isExportStatementName(node: ts.Node) {
+ if (ts.isExportAssignment(node.parent) && node.parent.expression === node) return true;
+ if (ts.isExportSpecifier(node.parent) && (node.parent.name === node || node.parent.propertyName === node)) return true;
+ return false;
+ }
+
+ private isIntrinsicJsxTag(node: ts.Node) {
+ const p = node.parent;
+ if (!(ts.isJsxOpeningElement(p) || ts.isJsxClosingElement(p) || ts.isJsxSelfClosingElement(p))) return false;
+ if (p.tagName !== node) return false;
+ return ts.isIntrinsicJsxName(node.getText());
+ }
+
private writeTypeOrSymbol(node: ts.Node, isSymbolWalk: boolean): TypeWriterResult | undefined {
const actualPos = ts.skipTrivia(this.currentSourceFile.text, node.pos);
const lineAndCharacter = this.currentSourceFile.getLineAndCharacterOfPosition(actualPos);
@@ -85,7 +105,31 @@ class TypeWriterWalker {
// let type = this.checker.getTypeAtLocation(node);
let type = ts.isExpressionWithTypeArgumentsInClassExtendsClause(node.parent) ? this.checker.getTypeAtLocation(node.parent) : undefined;
if (!type || type.flags & ts.TypeFlags.Any) type = this.checker.getTypeAtLocation(node);
- const typeString = this.checker.typeToString(type, node.parent, ts.TypeFormatFlags.NoTruncation | ts.TypeFormatFlags.AllowUniqueESSymbolType);
+ const typeString =
+ // Distinguish `errorType`s from `any`s; but only if the file has no errors.
+ // Additionally,
+ // * the LHS of a qualified name
+ // * a binding pattern name
+ // * labels
+ // * the "global" in "declare global"
+ // * the "target" in "new.target"
+ // * names in import statements
+ // * type-only names in export statements
+ // * and intrinsic jsx tag names
+ // return `error`s via `getTypeAtLocation`
+ // But this is generally expected, so we don't call those out, either
+ (!this.hadErrorBaseline &&
+ type.flags & ts.TypeFlags.Any &&
+ !ts.isBindingElement(node.parent) &&
+ !ts.isPropertyAccessOrQualifiedName(node.parent) &&
+ !ts.isLabelName(node) &&
+ !(ts.isModuleDeclaration(node.parent) && ts.isGlobalScopeAugmentation(node.parent)) &&
+ !ts.isMetaProperty(node.parent) &&
+ !this.isImportStatementName(node) &&
+ !this.isExportStatementName(node) &&
+ !this.isIntrinsicJsxTag(node)) ?
+ (type as ts.IntrinsicType).intrinsicName :
+ this.checker.typeToString(type, node.parent, ts.TypeFormatFlags.NoTruncation | ts.TypeFormatFlags.AllowUniqueESSymbolType);
return {
line: lineAndCharacter.line,
syntaxKind: node.kind,
diff --git a/src/testRunner/compilerRunner.ts b/src/testRunner/compilerRunner.ts
index 69bd80bdf11b2..aec768383d53a 100644
--- a/src/testRunner/compilerRunner.ts
+++ b/src/testRunner/compilerRunner.ts
@@ -258,7 +258,13 @@ class CompilerTest {
Harness.Compiler.doTypeAndSymbolBaseline(
this.justName,
this.result.program!,
- this.toBeCompiled.concat(this.otherFiles).filter(file => !!this.result.program!.getSourceFile(file.unitName)));
+ this.toBeCompiled.concat(this.otherFiles).filter(file => !!this.result.program!.getSourceFile(file.unitName)),
+ /*opts*/ undefined,
+ /*multifile*/ undefined,
+ /*skipTypeBaselines*/ undefined,
+ /*skipSymbolBaselines*/ undefined,
+ !!ts.length(this.result.diagnostics)
+ );
}
private makeUnitName(name: string, root: string) {
diff --git a/tests/baselines/reference/acceptableAlias1.types b/tests/baselines/reference/acceptableAlias1.types
index 513aa92a31ac8..090b7c00e55d2 100644
--- a/tests/baselines/reference/acceptableAlias1.types
+++ b/tests/baselines/reference/acceptableAlias1.types
@@ -6,7 +6,7 @@ module M {
}
export import X = N;
>X : any
->N : any
+>N : error
}
import r = M.X;
diff --git a/tests/baselines/reference/aliasInaccessibleModule.types b/tests/baselines/reference/aliasInaccessibleModule.types
index c38015e286569..3a16691a0ef44 100644
--- a/tests/baselines/reference/aliasInaccessibleModule.types
+++ b/tests/baselines/reference/aliasInaccessibleModule.types
@@ -6,5 +6,5 @@ module M {
}
export import X = N;
>X : any
->N : any
+>N : error
}
diff --git a/tests/baselines/reference/checkJsFiles_skipDiagnostics.types b/tests/baselines/reference/checkJsFiles_skipDiagnostics.types
index 953a4f4b910dc..69768fe638ac2 100644
--- a/tests/baselines/reference/checkJsFiles_skipDiagnostics.types
+++ b/tests/baselines/reference/checkJsFiles_skipDiagnostics.types
@@ -6,17 +6,17 @@ var x = 0;
/// @ts-ignore
x();
->x() : any
+>x() : error
>x : number
/// @ts-ignore
x();
->x() : any
+>x() : error
>x : number
/// @ts-ignore
x(
->x( 2, 3) : any
+>x( 2, 3) : error
>x : number
2,
@@ -34,13 +34,13 @@ x(
// @another
x();
->x() : any
+>x() : error
>x : number
// @ts-ignore: no call signature
x();
->x() : any
+>x() : error
>x : number
diff --git a/tests/baselines/reference/declarationEmitNameConflictsWithAlias.types b/tests/baselines/reference/declarationEmitNameConflictsWithAlias.types
index 17e0c1845546f..7a4ab41390fe4 100644
--- a/tests/baselines/reference/declarationEmitNameConflictsWithAlias.types
+++ b/tests/baselines/reference/declarationEmitNameConflictsWithAlias.types
@@ -2,7 +2,7 @@
export module C { export interface I { } }
export import v = C;
>v : any
->C : any
+>C : error
export module M {
>M : typeof M
diff --git a/tests/baselines/reference/doubleUnderscoreReactNamespace.types b/tests/baselines/reference/doubleUnderscoreReactNamespace.types
index 04382944d8651..b9ba88fd52942 100644
--- a/tests/baselines/reference/doubleUnderscoreReactNamespace.types
+++ b/tests/baselines/reference/doubleUnderscoreReactNamespace.types
@@ -11,8 +11,8 @@ declare var __foot: any;
>__foot : any
const thing = <__foot />;
->thing : any
-><__foot /> : any
+>thing : error
+><__foot /> : error
>__foot : any
export {}
diff --git a/tests/baselines/reference/duplicateVarAndImport.types b/tests/baselines/reference/duplicateVarAndImport.types
index 3e0a256a9725a..b4d25cfa404d3 100644
--- a/tests/baselines/reference/duplicateVarAndImport.types
+++ b/tests/baselines/reference/duplicateVarAndImport.types
@@ -7,5 +7,5 @@ var a;
module M { }
import a = M;
>a : any
->M : any
+>M : error
diff --git a/tests/baselines/reference/es3-jsx-preserve.types b/tests/baselines/reference/es3-jsx-preserve.types
index 759870ffac5fc..ac7966455184f 100644
--- a/tests/baselines/reference/es3-jsx-preserve.types
+++ b/tests/baselines/reference/es3-jsx-preserve.types
@@ -4,8 +4,8 @@ const React: any = null;
>null : null
const elem =
;
->elem : any
-> : any
+>elem : error
+> : error
>div : any
>div : any
diff --git a/tests/baselines/reference/es3-jsx-react-native.types b/tests/baselines/reference/es3-jsx-react-native.types
index 7cbfbe4684f8b..3d799442953e3 100644
--- a/tests/baselines/reference/es3-jsx-react-native.types
+++ b/tests/baselines/reference/es3-jsx-react-native.types
@@ -4,8 +4,8 @@ const React: any = null;
>null : null
const elem = ;
->elem : any
-> : any
+>elem : error
+> : error
>div : any
>div : any
diff --git a/tests/baselines/reference/es3-jsx-react.types b/tests/baselines/reference/es3-jsx-react.types
index 089b3ad47cb46..18c9a4f8dccfd 100644
--- a/tests/baselines/reference/es3-jsx-react.types
+++ b/tests/baselines/reference/es3-jsx-react.types
@@ -4,8 +4,8 @@ const React: any = null;
>null : null
const elem = ;
->elem : any
-> : any
+>elem : error
+> : error
>div : any
>div : any
diff --git a/tests/baselines/reference/exportImportNonInstantiatedModule.types b/tests/baselines/reference/exportImportNonInstantiatedModule.types
index efcbe8eb6e67a..5eab8c77e8cc3 100644
--- a/tests/baselines/reference/exportImportNonInstantiatedModule.types
+++ b/tests/baselines/reference/exportImportNonInstantiatedModule.types
@@ -9,7 +9,7 @@ module B {
export import A1 = A
>A1 : any
->A : any
+>A : error
}
diff --git a/tests/baselines/reference/importHelpersInTsx.types b/tests/baselines/reference/importHelpersInTsx.types
index 2d673824d951d..011be7c81fd68 100644
--- a/tests/baselines/reference/importHelpersInTsx.types
+++ b/tests/baselines/reference/importHelpersInTsx.types
@@ -6,8 +6,8 @@ declare var o: any;
>o : any
export const x =
->x : any
-> : any
+>x : error
+> : error
>span : any
>o : any
@@ -19,8 +19,8 @@ declare var o: any;
>o : any
const x =
->x : any
-> : any
+>x : error
+> : error
>span : any
>o : any
diff --git a/tests/baselines/reference/importUsedInGenericImportResolves.types b/tests/baselines/reference/importUsedInGenericImportResolves.types
index aab96703fda98..8594ee71448ee 100644
--- a/tests/baselines/reference/importUsedInGenericImportResolves.types
+++ b/tests/baselines/reference/importUsedInGenericImportResolves.types
@@ -12,7 +12,7 @@ export declare const theme: { a: string }
=== tests/cases/compiler/test3.ts ===
export const a: import("./test1").T = null as any;
>a : import("tests/cases/compiler/test1").T<{ a: string; }>
->theme : any
+>theme : error
>null as any : any
>null : null
diff --git a/tests/baselines/reference/importedModuleClassNameClash.types b/tests/baselines/reference/importedModuleClassNameClash.types
index 4726ee9c40618..c031c7b1d7eb2 100644
--- a/tests/baselines/reference/importedModuleClassNameClash.types
+++ b/tests/baselines/reference/importedModuleClassNameClash.types
@@ -1,7 +1,7 @@
=== tests/cases/compiler/importedModuleClassNameClash.ts ===
import foo = m1;
>foo : typeof foo
->m1 : any
+>m1 : error
export module m1 { }
diff --git a/tests/baselines/reference/indexingTypesWithNever.types b/tests/baselines/reference/indexingTypesWithNever.types
index 52583a73ba598..a3f80388543d8 100644
--- a/tests/baselines/reference/indexingTypesWithNever.types
+++ b/tests/baselines/reference/indexingTypesWithNever.types
@@ -69,8 +69,8 @@ declare function genericFn3<
// Should be never
const result5 = genericFn3({ g: "gtest", h: "htest" }, "g", "h"); // 'g' & 'h' will reduce to never
->result5 : any
->genericFn3({ g: "gtest", h: "htest" }, "g", "h") : any
+>result5 : error
+>genericFn3({ g: "gtest", h: "htest" }, "g", "h") : error
>genericFn3 : (obj: T, u: U, v: V) => T[U & V]
>{ g: "gtest", h: "htest" } : { g: string; h: string; }
>g : string
diff --git a/tests/baselines/reference/inlineJsxFactoryDeclarations.types b/tests/baselines/reference/inlineJsxFactoryDeclarations.types
index c986b3b422712..dbbb5c4766773 100644
--- a/tests/baselines/reference/inlineJsxFactoryDeclarations.types
+++ b/tests/baselines/reference/inlineJsxFactoryDeclarations.types
@@ -28,7 +28,7 @@ import * as React from "./renderer";
>React : typeof React
-> : any
+> : error
>h : any
>h : any
@@ -39,8 +39,8 @@ import { dom as h } from "./renderer"
>h : () => void
export const prerendered = ;
->prerendered : any
-> : any
+>prerendered : error
+> : error
>h : () => void
>h : () => void
@@ -50,8 +50,8 @@ import { otherdom } from "./renderer"
>otherdom : () => void
export const prerendered2 = ;
->prerendered2 : any
-> : any
+>prerendered2 : error
+> : error
>h : any
>h : any
@@ -60,8 +60,8 @@ import React from "./renderer"
>React : () => void
export const prerendered3 = ;
->prerendered3 : any
-> : any
+>prerendered3 : error
+> : error
>h : any
>h : any
@@ -71,7 +71,7 @@ import { dom } from "./renderer"
>dom : () => void
-> : any
+> : error
>h : any
>h : any
diff --git a/tests/baselines/reference/inlineJsxFactoryOverridesCompilerOption.types b/tests/baselines/reference/inlineJsxFactoryOverridesCompilerOption.types
index 06503c4b11f17..7f119837eb8a9 100644
--- a/tests/baselines/reference/inlineJsxFactoryOverridesCompilerOption.types
+++ b/tests/baselines/reference/inlineJsxFactoryOverridesCompilerOption.types
@@ -22,7 +22,7 @@ import {dom} from "./renderer";
>dom : () => void
-> : any
+> : error
>h : any
>h : any
@@ -31,7 +31,7 @@ import { p } from "./renderer";
>p : () => void
-> : any
+> : error
>h : any
>h : any
diff --git a/tests/baselines/reference/internalImportUnInstantiatedModuleNotReferencingInstanceNoConflict.types b/tests/baselines/reference/internalImportUnInstantiatedModuleNotReferencingInstanceNoConflict.types
index 6f366d2b0be7c..4002022143df7 100644
--- a/tests/baselines/reference/internalImportUnInstantiatedModuleNotReferencingInstanceNoConflict.types
+++ b/tests/baselines/reference/internalImportUnInstantiatedModuleNotReferencingInstanceNoConflict.types
@@ -13,6 +13,6 @@ module B {
import Y = A;
>Y : any
->A : any
+>A : error
}
diff --git a/tests/baselines/reference/jsFileClassPropertyInitalizationInObjectLiteral.types b/tests/baselines/reference/jsFileClassPropertyInitalizationInObjectLiteral.types
index dc24aeae8597d..3a915508dde7b 100644
--- a/tests/baselines/reference/jsFileClassPropertyInitalizationInObjectLiteral.types
+++ b/tests/baselines/reference/jsFileClassPropertyInitalizationInObjectLiteral.types
@@ -15,7 +15,7 @@ module.exports = function () {
c: A.b = 1,
>c : number
>A.b = 1 : 1
->A.b : any
+>A.b : error
>A : typeof A
>b : any
>1 : 1
diff --git a/tests/baselines/reference/jsFileClassSelfReferencedProperty.types b/tests/baselines/reference/jsFileClassSelfReferencedProperty.types
index 204eee67c9707..d5c2fe39c9fce 100644
--- a/tests/baselines/reference/jsFileClassSelfReferencedProperty.types
+++ b/tests/baselines/reference/jsFileClassSelfReferencedProperty.types
@@ -4,11 +4,11 @@ export class StackOverflowTest {
constructor () {
this.testStackOverflow = this.testStackOverflow.bind(this)
->this.testStackOverflow = this.testStackOverflow.bind(this) : any
+>this.testStackOverflow = this.testStackOverflow.bind(this) : error
>this.testStackOverflow : any
>this : this
>testStackOverflow : any
->this.testStackOverflow.bind(this) : any
+>this.testStackOverflow.bind(this) : error
>this.testStackOverflow.bind : any
>this.testStackOverflow : any
>this : this
diff --git a/tests/baselines/reference/jsFileCompilationDecoratorSyntax.types b/tests/baselines/reference/jsFileCompilationDecoratorSyntax.types
index ee1f14129d5fb..8650affb293a8 100644
--- a/tests/baselines/reference/jsFileCompilationDecoratorSyntax.types
+++ b/tests/baselines/reference/jsFileCompilationDecoratorSyntax.types
@@ -1,5 +1,5 @@
=== tests/cases/compiler/a.js ===
@internal class C { }
->internal : any
+>internal : error
>C : C
diff --git a/tests/baselines/reference/jsFileCompilationExternalPackageError.types b/tests/baselines/reference/jsFileCompilationExternalPackageError.types
index 269d8f5cf9d1e..c07527fa4568f 100644
--- a/tests/baselines/reference/jsFileCompilationExternalPackageError.types
+++ b/tests/baselines/reference/jsFileCompilationExternalPackageError.types
@@ -4,14 +4,14 @@ import {a} from "b";
a++;
>a++ : number
->a : any
+>a : error
import {c} from "c";
>c : any
c++;
>c++ : number
->c : any
+>c : error
=== tests/cases/compiler/node_modules/b.ts ===
var a = 10;
@@ -28,6 +28,6 @@ exports.a = 10;
c = 10;
>c = 10 : 10
->c : any
+>c : error
>10 : 10
diff --git a/tests/baselines/reference/jsxEmitAttributeWithPreserve.types b/tests/baselines/reference/jsxEmitAttributeWithPreserve.types
index 1f6cc13bd08c0..07879f5237e4a 100644
--- a/tests/baselines/reference/jsxEmitAttributeWithPreserve.types
+++ b/tests/baselines/reference/jsxEmitAttributeWithPreserve.types
@@ -3,7 +3,7 @@ declare var React: any;
>React : any
-> : any
+> : error
>foo : any
>data : true
diff --git a/tests/baselines/reference/jsxEmitWithAttributes.types b/tests/baselines/reference/jsxEmitWithAttributes.types
index 12e231874b6b8..881bfe71ae1f2 100644
--- a/tests/baselines/reference/jsxEmitWithAttributes.types
+++ b/tests/baselines/reference/jsxEmitWithAttributes.types
@@ -105,13 +105,13 @@ class A {
>[ , ] : any[]
,
-> : any
+> : error
>meta : any
>content : string
>meta : any
-> : any
+> : error
>meta : any
>content : string
>c.a!.b : string
diff --git a/tests/baselines/reference/jsxFactoryIdentifier.types b/tests/baselines/reference/jsxFactoryIdentifier.types
index 664a061189391..ddb83d56516db 100644
--- a/tests/baselines/reference/jsxFactoryIdentifier.types
+++ b/tests/baselines/reference/jsxFactoryIdentifier.types
@@ -111,13 +111,13 @@ class A {
>[ , ] : any[]
,
-> : any
+> : error
>meta : any
>content : string
>meta : any
-> : any
+> : error
>meta : any
>content : string
>c.a!.b : string
diff --git a/tests/baselines/reference/jsxFactoryIdentifierAsParameter.types b/tests/baselines/reference/jsxFactoryIdentifierAsParameter.types
index 80d453913f4cd..bf7c6cebc4caa 100644
--- a/tests/baselines/reference/jsxFactoryIdentifierAsParameter.types
+++ b/tests/baselines/reference/jsxFactoryIdentifierAsParameter.types
@@ -14,7 +14,7 @@ export class AppComponent {
>createElement : any
return ;
-> : any
+> : error
>div : any
}
}
diff --git a/tests/baselines/reference/jsxFactoryQualifiedName.types b/tests/baselines/reference/jsxFactoryQualifiedName.types
index 12e231874b6b8..881bfe71ae1f2 100644
--- a/tests/baselines/reference/jsxFactoryQualifiedName.types
+++ b/tests/baselines/reference/jsxFactoryQualifiedName.types
@@ -105,13 +105,13 @@ class A {
>[ , ] : any[]
,
-> : any
+> : error
>meta : any
>content : string
>meta : any
-> : any
+> : error
>meta : any
>content : string
>c.a!.b : string
diff --git a/tests/baselines/reference/jsxFactoryQualifiedNameWithEs5.types b/tests/baselines/reference/jsxFactoryQualifiedNameWithEs5.types
index 6f6ae3f2d5849..9b5028ccfec37 100644
--- a/tests/baselines/reference/jsxFactoryQualifiedNameWithEs5.types
+++ b/tests/baselines/reference/jsxFactoryQualifiedNameWithEs5.types
@@ -19,7 +19,7 @@ class Component {
>renderCallback : () => any
return
test
;
->
test
: any
+>
test
: error
>div : any
>div : any
}
diff --git a/tests/baselines/reference/jsxHash.types b/tests/baselines/reference/jsxHash.types
index 41f89c4b0870a..2ce58ecb2ae98 100644
--- a/tests/baselines/reference/jsxHash.types
+++ b/tests/baselines/reference/jsxHash.types
@@ -1,89 +1,89 @@
=== tests/cases/compiler/jsxHash.tsx ===
var t02 = {0}#;
->t02 : any
->{0}# : any
+>t02 : error
+>{0}# : error
>a : any
>0 : 0
>a : any
var t03 = #{0};
->t03 : any
->#{0} : any
+>t03 : error
+>#{0} : error
>a : any
>0 : 0
>a : any
var t04 = #{0}#;
->t04 : any
->#{0}# : any
+>t04 : error
+>#{0}# : error
>a : any
>0 : 0
>a : any
var t05 = #;
->t05 : any
-># : any
+>t05 : error
+># : error
>a : any
-> : any
+> : error
>i : any
>i : any
>a : any
var t06 = #;
->t06 : any
-># : any
+>t06 : error
+># : error
>a : any
-> : any
+> : error
>i : any
>i : any
>a : any
var t07 = ##;
->t07 : any
->## : any
+>t07 : error
+>## : error
>a : any
-># : any
+># : error
>i : any
>i : any
>a : any
var t08 = #;
->t08 : any
-># : any
+>t08 : error
+># : error
>a : any
-> : any
+> : error
>i : any
>i : any
>a : any
var t09 = ##;
->t09 : any
->## : any
+>t09 : error
+>## : error
>a : any
-> : any
+> : error
>i : any
>i : any
>a : any
var t10 = #;
->t10 : any
-># : any
+>t10 : error
+># : error
>a : any
-> : any
+> : error
>i : any
>a : any
var t11 = #;
->t11 : any
-># : any
+>t11 : error
+># : error
>a : any
-> : any
+> : error
>i : any
>a : any
var t12 = #;
->t12 : any
-># : any
+>t12 : error
+># : error
>a : any
>a : any
diff --git a/tests/baselines/reference/jsxImportInAttribute.types b/tests/baselines/reference/jsxImportInAttribute.types
index 92997d99399af..fa0ecd295814a 100644
--- a/tests/baselines/reference/jsxImportInAttribute.types
+++ b/tests/baselines/reference/jsxImportInAttribute.types
@@ -8,7 +8,7 @@ let x = Test; // emit test_1.default
>Test : typeof Test
; // ?
-> : any
+> : error
>anything : any
>attr : typeof Test
>Test : typeof Test
diff --git a/tests/baselines/reference/jsxInExtendsClause.types b/tests/baselines/reference/jsxInExtendsClause.types
index 9b059f54c8fa5..7f8de51b0817b 100644
--- a/tests/baselines/reference/jsxInExtendsClause.types
+++ b/tests/baselines/reference/jsxInExtendsClause.types
@@ -27,7 +27,7 @@ class Foo extends createComponentClass(() => class extends React.Component<{}, {
>render : () => any
return Hello, world!;
->Hello, world! : any
+>Hello, world! : error
>span : any
>span : any
}
diff --git a/tests/baselines/reference/jsxMultilineAttributeStringValues.types b/tests/baselines/reference/jsxMultilineAttributeStringValues.types
index b9e1b99267f49..75892b8b76a37 100644
--- a/tests/baselines/reference/jsxMultilineAttributeStringValues.types
+++ b/tests/baselines/reference/jsxMultilineAttributeStringValues.types
@@ -1,7 +1,7 @@
=== tests/cases/compiler/jsxMultilineAttributeStringValues.tsx ===
const a = : any
+>a : error
+> : error
>input : any
>value : string
@@ -10,8 +10,8 @@ const a = a : any
-> : any
+>a : error
+> : error
>input : any
>value : string
@@ -13,8 +13,8 @@ foo: 23
>input : any
const b = : any
+>b : error
+> : error
>input : any
>value : string
@@ -23,8 +23,8 @@ foo: 23
>input : any
const c = : any
+>c : error
+> : error
>input : any
>value : string
diff --git a/tests/baselines/reference/jsxNestedWithinTernaryParsesCorrectly.types b/tests/baselines/reference/jsxNestedWithinTernaryParsesCorrectly.types
index 0daa04fc39fed..300c5dda66a12 100644
--- a/tests/baselines/reference/jsxNestedWithinTernaryParsesCorrectly.types
+++ b/tests/baselines/reference/jsxNestedWithinTernaryParsesCorrectly.types
@@ -5,11 +5,11 @@ const emptyMessage = null as any;
>null : null
const a = (
->a : any
->(
{0 ? ( emptyMessage // must be identifier? ) : ( // must be exactly two expression holes {0}{0} )}
) : any
+>a : error
+>(
{0 ? ( emptyMessage // must be identifier? ) : ( // must be exactly two expression holes {0}{0} )}
) : error
->
{0 ? ( emptyMessage // must be identifier? ) : ( // must be exactly two expression holes {0}{0} )}
: any
+>
{0 ? ( emptyMessage // must be identifier? ) : ( // must be exactly two expression holes {0}{0} )}
: error
>div : any
{0 ? (
@@ -21,11 +21,11 @@ const a = (
>emptyMessage : any
) : (
->( // must be exactly two expression holes {0}{0} ) : any
+>( // must be exactly two expression holes {0}{0} ) : error
// must be exactly two expression holes
-> {0}{0} : any
+> {0}{0} : error
>span : any
{0}{0}
diff --git a/tests/baselines/reference/jsxPreserveWithJsInput.types b/tests/baselines/reference/jsxPreserveWithJsInput.types
index a38d884b4fa50..f57ab1d026121 100644
--- a/tests/baselines/reference/jsxPreserveWithJsInput.types
+++ b/tests/baselines/reference/jsxPreserveWithJsInput.types
@@ -5,16 +5,16 @@ var elemA = 42;
=== tests/cases/compiler/b.jsx ===
var elemB = {"test"};
->elemB : any
->{"test"} : any
+>elemB : error
+>{"test"} : error
>b : any
>"test" : "test"
>b : any
=== tests/cases/compiler/c.js ===
var elemC = {42};
->elemC : any
->{42} : any
+>elemC : error
+>{42} : error
>c : any
>42 : 42
>c : any
@@ -26,8 +26,8 @@ var elemD = 42;
=== tests/cases/compiler/e.tsx ===
var elemE = {true};
->elemE : any
->{true} : any
+>elemE : error
+>{true} : error
>e : any
>true : true
>e : any
diff --git a/tests/baselines/reference/jsxReactTestSuite.types b/tests/baselines/reference/jsxReactTestSuite.types
index 28ed2e5960adf..3637a21c2682a 100644
--- a/tests/baselines/reference/jsxReactTestSuite.types
+++ b/tests/baselines/reference/jsxReactTestSuite.types
@@ -36,12 +36,12 @@ declare var hasOwnProperty:any;
>hasOwnProperty : any
text
;
->
text
: any
+>
text
: error
>div : any
>div : any
->
{this.props.children}
: any
+>
{this.props.children}
: error
>div : any
{this.props.children}
@@ -55,27 +55,27 @@ declare var hasOwnProperty:any;
>div : any
->
{foo} {bar}
: any
+>
{foo} {bar}
: error
>div : any
->
: any
+>
: error
>div : any
-> : any
+> : error
>br : any
>div : any
{foo} {bar}
->{foo} {bar} : any
+>{foo} {bar} : error
>Component : any
>foo : any
-> : any
+> : error
>br : any
>bar : any
>Component : any
-> : any
+> : error
>br : any
;
@@ -83,7 +83,7 @@ declare var hasOwnProperty:any;
-> {this.props.children} : any
+> {this.props.children} : error
>Composite : any
{this.props.children}
@@ -97,11 +97,11 @@ declare var hasOwnProperty:any;
>Composite : any
-> : any
+> : error
>Composite : any
-> : any
+> : error
>Composite2 : any
;
@@ -111,7 +111,7 @@ var x =
>x : any
: any
+>
: error
>div : any
attr1={
@@ -159,16 +159,16 @@ var x =
>div : any
(
->(
{/* A comment at the beginning */} {/* A second comment at the beginning */} {/* A nested comment */} {/* A sandwiched comment */} {/* A comment at the end */} {/* A second comment at the end */}
) : any
+>(
{/* A comment at the beginning */} {/* A second comment at the beginning */} {/* A nested comment */} {/* A sandwiched comment */} {/* A comment at the end */} {/* A second comment at the end */}
) : error
->
{/* A comment at the beginning */} {/* A second comment at the beginning */} {/* A nested comment */} {/* A sandwiched comment */} {/* A comment at the end */} {/* A second comment at the end */}
: any
+>
{/* A comment at the beginning */} {/* A second comment at the beginning */} {/* A nested comment */} {/* A sandwiched comment */} {/* A comment at the end */} {/* A second comment at the end */}
: error
>div : any
{/* A comment at the beginning */}
{/* A second comment at the beginning */}
-> {/* A nested comment */} : any
+> {/* A nested comment */} : error
>span : any
{/* A nested comment */}
@@ -177,7 +177,7 @@ var x =
{/* A sandwiched comment */}
-> : any
+> : error
>br : any
{/* A comment at the end */}
@@ -188,10 +188,10 @@ var x =
);
(
->(
) : any
+>(
) : error
: any
+>
: error
>div : any
/* a multi-line
@@ -200,7 +200,7 @@ var x =
>attr1 : string
: any
+> : error
>span : any
attr2="bar"
@@ -213,33 +213,33 @@ var x =
);
;
->
: any
+>
: error
>div : any
>div : any
;
->
: any
+>
: error
>div : any
>div : any
testing;
->testing : any
+>testing : error
>hasOwnProperty : any
>hasOwnProperty : any
;
-> : any
+> : error
>Component : any
>constructor : string
;
-> : any
+> : error
>Namespace.Component : any
>Namespace : any
>Component : any
;
-> : any
+> : error
>Namespace.DeepNamespace.Component : any
>Namespace.DeepNamespace : any
>Namespace : any
@@ -247,7 +247,7 @@ var x =
>Component : any
: any
+> : error
>Component : any
>x : any
>y : number
@@ -257,7 +257,7 @@ var x =
>z : true
: any
+> : error
>Component : any
{...this.props} sound="moo" />;
@@ -267,33 +267,33 @@ var x =
>sound : string
;
-> : any
+> : error
>font-face : any
;
-> : any
+> : error
>Component : any
>x : any
>y : any
;
-> : any
+> : error
>x-component : any
;
-> : any
+> : error
>Component : any
>x : any
;
-> : any
+> : error
>Component : any
>x : any
>y : number
>2 : 2
;
-> : any
+> : error
>Component : any
>x : any
>y : number
@@ -301,7 +301,7 @@ var x =
>z : true
;
-> : any
+> : error
>Component : any
>x : number
>1 : 1
@@ -309,19 +309,19 @@ var x =
;
-> : any
+> : error
>Component : any
>x : number
>1 : 1
>y : string
>z : any
>z : any
-> : any
+> : error
>Child : any
>Component : any
Text;
->Text : any
+>Text : error
>Component : any
>x : string
>(z = { y: 2 }, z) : any
diff --git a/tests/baselines/reference/jsxViaImport.2.types b/tests/baselines/reference/jsxViaImport.2.types
index 9a0b40fb72738..a23c388261118 100644
--- a/tests/baselines/reference/jsxViaImport.2.types
+++ b/tests/baselines/reference/jsxViaImport.2.types
@@ -13,7 +13,7 @@ class TestComponent extends React.Component {
>render : () => any
return ;
-> : any
+> : error
>BaseComponent : typeof BaseComponent
}
}
diff --git a/tests/baselines/reference/keywordInJsxIdentifier.types b/tests/baselines/reference/keywordInJsxIdentifier.types
index 09ae09340de5e..9201bf908645d 100644
--- a/tests/baselines/reference/keywordInJsxIdentifier.types
+++ b/tests/baselines/reference/keywordInJsxIdentifier.types
@@ -3,22 +3,22 @@ declare var React: any;
>React : any
;
-> : any
+> : error
>foo : any
>class-id : true
;
-> : any
+> : error
>foo : any
>class : true
;
-> : any
+> : error
>foo : any
>class-id : string
;
-> : any
+> : error
>foo : any
>class : string
diff --git a/tests/baselines/reference/methodsReturningThis.types b/tests/baselines/reference/methodsReturningThis.types
index 2d754ef9fc87e..b7acb81482232 100644
--- a/tests/baselines/reference/methodsReturningThis.types
+++ b/tests/baselines/reference/methodsReturningThis.types
@@ -13,7 +13,7 @@ Class.prototype.containsError = function () { return this.notPresent; };
>prototype : any
>containsError : any
>function () { return this.notPresent; } : () => any
->this.notPresent : any
+>this.notPresent : error
>this : Class
>notPresent : any
diff --git a/tests/baselines/reference/misspelledJsDocTypedefTags.types b/tests/baselines/reference/misspelledJsDocTypedefTags.types
index 5facd80a2675d..9a42e2d1cd8b0 100644
--- a/tests/baselines/reference/misspelledJsDocTypedefTags.types
+++ b/tests/baselines/reference/misspelledJsDocTypedefTags.types
@@ -1,7 +1,7 @@
=== tests/cases/compiler/a.js ===
/** @typedef {{ endTime: number, screenshots: number}} A.*/
Animation.AnimationModel.ScreenshotCapture.Request;
->Animation.AnimationModel.ScreenshotCapture.Request : any
+>Animation.AnimationModel.ScreenshotCapture.Request : error
>Animation.AnimationModel.ScreenshotCapture : any
>Animation.AnimationModel : any
>Animation : { new (effect?: AnimationEffect, timeline?: AnimationTimeline): Animation; prototype: Animation; }
@@ -11,7 +11,7 @@ Animation.AnimationModel.ScreenshotCapture.Request;
/** @typedef {{ endTime: number, screenshots: !B.}} */
Animation.AnimationModel.ScreenshotCapture.Request;
->Animation.AnimationModel.ScreenshotCapture.Request : any
+>Animation.AnimationModel.ScreenshotCapture.Request : error
>Animation.AnimationModel.ScreenshotCapture : any
>Animation.AnimationModel : any
>Animation : { new (effect?: AnimationEffect, timeline?: AnimationTimeline): Animation; prototype: Animation; }
diff --git a/tests/baselines/reference/moduleAugmentationInDependency.types b/tests/baselines/reference/moduleAugmentationInDependency.types
index 7dfd3b02a005b..d4d09c61f5389 100644
--- a/tests/baselines/reference/moduleAugmentationInDependency.types
+++ b/tests/baselines/reference/moduleAugmentationInDependency.types
@@ -1,6 +1,6 @@
=== /node_modules/A/index.d.ts ===
declare module "ext" {
->"ext" : any
+>"ext" : error
}
export {};
diff --git a/tests/baselines/reference/moduleResolution_relativeImportJsFile.types b/tests/baselines/reference/moduleResolution_relativeImportJsFile.types
index 051c4dad86158..092de8f92b798 100644
--- a/tests/baselines/reference/moduleResolution_relativeImportJsFile.types
+++ b/tests/baselines/reference/moduleResolution_relativeImportJsFile.types
@@ -1,4 +1,4 @@
=== /src/a.ts ===
import * as b from "./b";
->b : any
+>b : error
diff --git a/tests/baselines/reference/moduledecl.types b/tests/baselines/reference/moduledecl.types
index 210b9441a28b2..8d30e6a635b40 100644
--- a/tests/baselines/reference/moduledecl.types
+++ b/tests/baselines/reference/moduledecl.types
@@ -8,13 +8,13 @@ module b.a {
module c.a.b {
import ma = a;
>ma : any
->a : any
+>a : error
}
module mImport {
import d = a;
>d : any
->a : any
+>a : error
import e = b.a;
>e : any
@@ -23,7 +23,7 @@ module mImport {
import d1 = a;
>d1 : any
->a : any
+>a : error
import e1 = b.a;
>e1 : any
@@ -75,11 +75,11 @@ module m0 {
import m2 = a;
>m2 : any
->a : any
+>a : error
import m3 = b;
>m3 : any
->b : any
+>b : error
import m4 = b.a;
>m4 : any
@@ -88,7 +88,7 @@ module m0 {
import m5 = c;
>m5 : any
->c : any
+>c : error
import m6 = c.a;
>m6 : any
@@ -165,11 +165,11 @@ module m1 {
import m2 = a;
>m2 : any
->a : any
+>a : error
import m3 = b;
>m3 : any
->b : any
+>b : error
import m4 = b.a;
>m4 : any
@@ -178,7 +178,7 @@ module m1 {
import m5 = c;
>m5 : any
->c : any
+>c : error
import m6 = c.a;
>m6 : any
diff --git a/tests/baselines/reference/multipleDeclarations.types b/tests/baselines/reference/multipleDeclarations.types
index 16d41cf3ec712..d006f4f6512f1 100644
--- a/tests/baselines/reference/multipleDeclarations.types
+++ b/tests/baselines/reference/multipleDeclarations.types
@@ -19,8 +19,8 @@ C.prototype.m = function() {
>function() { this.nothing();} : () => void
this.nothing();
->this.nothing() : any
->this.nothing : any
+>this.nothing() : error
+>this.nothing : error
>this : C
>nothing : any
}
diff --git a/tests/baselines/reference/packageJsonMain.types b/tests/baselines/reference/packageJsonMain.types
index f30bd95f0e543..42104dc61d423 100644
--- a/tests/baselines/reference/packageJsonMain.types
+++ b/tests/baselines/reference/packageJsonMain.types
@@ -9,9 +9,9 @@ import baz = require("baz");
>baz : any
foo + bar + baz;
->foo + bar + baz : any
->foo + bar : any
->foo : any
->bar : any
->baz : any
+>foo + bar + baz : error
+>foo + bar : error
+>foo : error
+>bar : error
+>baz : error
diff --git a/tests/baselines/reference/parserES5ForOfStatement18.types b/tests/baselines/reference/parserES5ForOfStatement18.types
index f9544e39a31d1..156ed2c68f306 100644
--- a/tests/baselines/reference/parserES5ForOfStatement18.types
+++ b/tests/baselines/reference/parserES5ForOfStatement18.types
@@ -1,5 +1,5 @@
=== tests/cases/conformance/parser/ecmascript5/Statements/parserES5ForOfStatement18.ts ===
for (var of of of) { }
>of : any
->of : any
+>of : error
diff --git a/tests/baselines/reference/parserES5ForOfStatement19.types b/tests/baselines/reference/parserES5ForOfStatement19.types
index 13abc7ae757b4..cc3a1ed01b195 100644
--- a/tests/baselines/reference/parserES5ForOfStatement19.types
+++ b/tests/baselines/reference/parserES5ForOfStatement19.types
@@ -1,5 +1,5 @@
=== tests/cases/conformance/parser/ecmascript5/Statements/parserES5ForOfStatement19.ts ===
for (var of in of) { }
>of : any
->of : any
+>of : error
diff --git a/tests/baselines/reference/parserForOfStatement18.types b/tests/baselines/reference/parserForOfStatement18.types
index 8e3b52ac87743..3fe8de5b6c10e 100644
--- a/tests/baselines/reference/parserForOfStatement18.types
+++ b/tests/baselines/reference/parserForOfStatement18.types
@@ -1,5 +1,5 @@
=== tests/cases/conformance/parser/ecmascript6/Iterators/parserForOfStatement18.ts ===
for (var of of of) { }
>of : any
->of : any
+>of : error
diff --git a/tests/baselines/reference/parserForOfStatement19.types b/tests/baselines/reference/parserForOfStatement19.types
index 6fcc5e8f79216..04104a9667c0e 100644
--- a/tests/baselines/reference/parserForOfStatement19.types
+++ b/tests/baselines/reference/parserForOfStatement19.types
@@ -1,5 +1,5 @@
=== tests/cases/conformance/parser/ecmascript6/Iterators/parserForOfStatement19.ts ===
for (var of in of) { }
>of : any
->of : any
+>of : error
diff --git a/tests/baselines/reference/reactImportDropped.types b/tests/baselines/reference/reactImportDropped.types
index 5ad8772d05230..f3e8c3987af97 100644
--- a/tests/baselines/reference/reactImportDropped.types
+++ b/tests/baselines/reference/reactImportDropped.types
@@ -56,11 +56,11 @@ import {layout} from '../../utils/theme'; // <- DO NOT DROP this import
>layout : any
const x = ;
->x : any
-> : any
+>x : error
+> : error
>TabBar : import("tests/cases/compiler/react").ClassicComponentClass
->height : any
->layout.footerHeight : any
+>height : error
+>layout.footerHeight : error
>layout : any
>footerHeight : any
diff --git a/tests/baselines/reference/reactNamespaceImportPresevation.types b/tests/baselines/reference/reactNamespaceImportPresevation.types
index a7596dd6d8227..a6c8264dd774b 100644
--- a/tests/baselines/reference/reactNamespaceImportPresevation.types
+++ b/tests/baselines/reference/reactNamespaceImportPresevation.types
@@ -17,7 +17,7 @@ declare var foo: any;
>foo : any
;
-> : any
+> : error
>foo : any
>data : true
diff --git a/tests/baselines/reference/reactNamespaceJSXEmit.types b/tests/baselines/reference/reactNamespaceJSXEmit.types
index e1d76dbfcec51..71cacc4dd8c54 100644
--- a/tests/baselines/reference/reactNamespaceJSXEmit.types
+++ b/tests/baselines/reference/reactNamespaceJSXEmit.types
@@ -15,34 +15,34 @@ declare var x: any;
>x : any
;
-> : any
+> : error
>foo : any
>data : true
;
-> : any
+> : error
>Bar : any
>x : any
>x : any
;
-> : any
+> : error
>x-component : any
;
-> : any
+> : error
>Bar : any
>x : any
;
-> : any
+> : error
>Bar : any
>x : any
>y : number
>2 : 2
<_Bar { ...x } />;
-><_Bar { ...x } /> : any
+><_Bar { ...x } /> : error
>_Bar : any
>x : any
diff --git a/tests/baselines/reference/reactTransitiveImportHasValidDeclaration.types b/tests/baselines/reference/reactTransitiveImportHasValidDeclaration.types
index fbaf253a8c594..b50eb1e30bb9f 100644
--- a/tests/baselines/reference/reactTransitiveImportHasValidDeclaration.types
+++ b/tests/baselines/reference/reactTransitiveImportHasValidDeclaration.types
@@ -7,12 +7,12 @@ export = React;
>React : any
export as namespace React;
->React : any
+>React : error
=== tests/cases/compiler/node_modules/create-emotion-styled/types/react/index.d.ts ===
///
declare module 'react' { // augment
->'react' : any
+>'react' : error
interface HTMLAttributes {
css?: unknown;
diff --git a/tests/baselines/reference/recur1.types b/tests/baselines/reference/recur1.types
index 83b4dbd598b82..d4893d27b8687 100644
--- a/tests/baselines/reference/recur1.types
+++ b/tests/baselines/reference/recur1.types
@@ -15,7 +15,7 @@ salt.pepper = function() {}
var cobalt = new cobalt.pitch();
>cobalt : any
->new cobalt.pitch() : any
+>new cobalt.pitch() : error
>cobalt.pitch : any
>cobalt : any
>pitch : any
diff --git a/tests/baselines/reference/recursiveExportAssignmentAndFindAliasedType7.types b/tests/baselines/reference/recursiveExportAssignmentAndFindAliasedType7.types
index a5675737c214c..939e7beb79b25 100644
--- a/tests/baselines/reference/recursiveExportAssignmentAndFindAliasedType7.types
+++ b/tests/baselines/reference/recursiveExportAssignmentAndFindAliasedType7.types
@@ -14,7 +14,7 @@ import self = require("recursiveExportAssignmentAndFindAliasedType7_moduleD");
var selfVar = self;
>selfVar : any
->self : any
+>self : error
export = selfVar;
>selfVar : any
diff --git a/tests/baselines/reference/reservedNameOnModuleImport.types b/tests/baselines/reference/reservedNameOnModuleImport.types
index b7089eca4eeff..91b8f957f5708 100644
--- a/tests/baselines/reference/reservedNameOnModuleImport.types
+++ b/tests/baselines/reference/reservedNameOnModuleImport.types
@@ -7,6 +7,6 @@ declare module test {
// Should be fine; this does not clobber any declared values.
export import string = mstring;
>string : any
->mstring : any
+>mstring : error
}
diff --git a/tests/baselines/reference/spreadIntersectionJsx.types b/tests/baselines/reference/spreadIntersectionJsx.types
index 446bfd11be749..17234b47fb96e 100644
--- a/tests/baselines/reference/spreadIntersectionJsx.types
+++ b/tests/baselines/reference/spreadIntersectionJsx.types
@@ -15,8 +15,8 @@ let intersected: A & C;
>intersected : A & C
let element = ;
->element : any
-> : any
+>element : error
+> : error
>div : any
>intersected : A & C
diff --git a/tests/baselines/reference/superNoModifiersCrash.types b/tests/baselines/reference/superNoModifiersCrash.types
index 231e4a661bbc0..aad2d31eb2a0a 100644
--- a/tests/baselines/reference/superNoModifiersCrash.types
+++ b/tests/baselines/reference/superNoModifiersCrash.types
@@ -6,8 +6,8 @@ class Parent {
>initialize : (...args: any[]) => string
super.initialize(...arguments)
->super.initialize(...arguments) : any
->super.initialize : any
+>super.initialize(...arguments) : error
+>super.initialize : error
>super : any
>initialize : any
>...arguments : any
diff --git a/tests/baselines/reference/topLevelThisAssignment.types b/tests/baselines/reference/topLevelThisAssignment.types
index 024c360f8ccd6..92bb458b41f46 100644
--- a/tests/baselines/reference/topLevelThisAssignment.types
+++ b/tests/baselines/reference/topLevelThisAssignment.types
@@ -12,7 +12,7 @@ this.a;
>a : any
a;
->a : any
+>a : error
=== tests/cases/conformance/salsa/b.js ===
this.a;
@@ -21,5 +21,5 @@ this.a;
>a : any
a;
->a : any
+>a : error
diff --git a/tests/baselines/reference/tsxAttributeResolution13.types b/tests/baselines/reference/tsxAttributeResolution13.types
index c523c8a40d042..21decc71854c2 100644
--- a/tests/baselines/reference/tsxAttributeResolution13.types
+++ b/tests/baselines/reference/tsxAttributeResolution13.types
@@ -3,7 +3,7 @@ function Test() { }
>Test : () => void
-> : any
+> : error
>Test : () => void
>Test : () => void
diff --git a/tests/baselines/reference/tsxAttributesHasInferrableIndex.types b/tests/baselines/reference/tsxAttributesHasInferrableIndex.types
index 2f98c243ef540..25e76e39628ac 100644
--- a/tests/baselines/reference/tsxAttributesHasInferrableIndex.types
+++ b/tests/baselines/reference/tsxAttributesHasInferrableIndex.types
@@ -29,8 +29,8 @@ function Button(attributes: Attributes | undefined, contents: string[]) {
>'' : ""
}
const b =
->b : any
-> : any
+>b : error
+> : error
>Button : (attributes: Attributes | undefined, contents: string[]) => string
>Button : (attributes: Attributes | undefined, contents: string[]) => string
diff --git a/tests/baselines/reference/tsxCorrectlyParseLessThanComparison1.types b/tests/baselines/reference/tsxCorrectlyParseLessThanComparison1.types
index 7125ec03946c6..dfb764693d619 100644
--- a/tests/baselines/reference/tsxCorrectlyParseLessThanComparison1.types
+++ b/tests/baselines/reference/tsxCorrectlyParseLessThanComparison1.types
@@ -41,8 +41,8 @@ export class ShortDetails extends React.Component<{ id: number }, {}> {
>1 : 1
return ();
->() : any
-> : any
+>() : error
+> : error
>div : any
>div : any
}
diff --git a/tests/baselines/reference/tsxDynamicTagName1.types b/tests/baselines/reference/tsxDynamicTagName1.types
index 716c2569e3b20..a686e7f43e620 100644
--- a/tests/baselines/reference/tsxDynamicTagName1.types
+++ b/tests/baselines/reference/tsxDynamicTagName1.types
@@ -4,7 +4,7 @@ var CustomTag = "h1";
>"h1" : "h1"
Hello World // No error
-> Hello World : any
+> Hello World : error
>CustomTag : string
>CustomTag : string
diff --git a/tests/baselines/reference/tsxDynamicTagName5.types b/tests/baselines/reference/tsxDynamicTagName5.types
index 51a72c5e848cc..ea57c600a4f76 100644
--- a/tests/baselines/reference/tsxDynamicTagName5.types
+++ b/tests/baselines/reference/tsxDynamicTagName5.types
@@ -24,10 +24,10 @@ export class Text extends React.Component<{}, {}> {
>render : () => any
return (
->( ) : any
+>( ) : error
-> : any
+> : error
>this._tagName : string
>this : this
>_tagName : string
diff --git a/tests/baselines/reference/tsxDynamicTagName8.types b/tests/baselines/reference/tsxDynamicTagName8.types
index 8d738701cf0a8..cb3b50f1c2476 100644
--- a/tests/baselines/reference/tsxDynamicTagName8.types
+++ b/tests/baselines/reference/tsxDynamicTagName8.types
@@ -24,10 +24,10 @@ export class Text extends React.Component<{}, {}> {
>render : () => any
return (
->( Hello world ) : any
+>( Hello world ) : error
Hello world
-> Hello world : any
+> Hello world : error
>this._tagName : string
>this : this
>_tagName : string
diff --git a/tests/baselines/reference/tsxDynamicTagName9.types b/tests/baselines/reference/tsxDynamicTagName9.types
index d96b63f9e7b69..978f0a926cce2 100644
--- a/tests/baselines/reference/tsxDynamicTagName9.types
+++ b/tests/baselines/reference/tsxDynamicTagName9.types
@@ -24,10 +24,10 @@ export class Text extends React.Component<{}, {}> {
>render : () => any
return (
->( Hello world ) : any
+>( Hello world ) : error
Hello world
-> Hello world : any
+> Hello world : error
>this._tagName : "div"
>this : this
>_tagName : "div"
diff --git a/tests/baselines/reference/tsxElementResolution.types b/tests/baselines/reference/tsxElementResolution.types
index 19204bae19d2f..3bad161f46fc9 100644
--- a/tests/baselines/reference/tsxElementResolution.types
+++ b/tests/baselines/reference/tsxElementResolution.types
@@ -28,27 +28,27 @@ module Dotted {
// Should find the intrinsic element, not the class element
var a = ;
->a : any
-> : any
+>a : error
+> : error
>foundFirst : typeof foundFirst
>x : string
var b = ;
->b : any
-> : any
+>b : error
+> : error
>string_named : any
// TODO: This should not be a parse error (should
// parse a property name here, not identifier)
// var c = ;
var d = ;
->d : any
-> : any
+>d : error
+> : error
>Other : typeof Other
var e = ;
->e : any
-> : any
+>e : error
+> : error
>Dotted.Name : typeof Dotted.Name
>Dotted : typeof Dotted
>Name : typeof Dotted.Name
diff --git a/tests/baselines/reference/tsxElementResolution19.types b/tests/baselines/reference/tsxElementResolution19.types
index 86e9c3966072d..d1162b3a72c41 100644
--- a/tests/baselines/reference/tsxElementResolution19.types
+++ b/tests/baselines/reference/tsxElementResolution19.types
@@ -20,6 +20,6 @@ import {MyClass} from './file1';
>MyClass : typeof MyClass
;
-> : any
+> : error
>MyClass : typeof MyClass
diff --git a/tests/baselines/reference/tsxExternalModuleEmit1.types b/tests/baselines/reference/tsxExternalModuleEmit1.types
index 6e8d86d8f7336..2c915b162284c 100644
--- a/tests/baselines/reference/tsxExternalModuleEmit1.types
+++ b/tests/baselines/reference/tsxExternalModuleEmit1.types
@@ -24,7 +24,7 @@ export class App extends React.Component {
>render : () => any
return ;
-> : any
+> : error
>Button : typeof Button
}
@@ -44,7 +44,7 @@ export class Button extends React.Component {
>render : () => any
return ;
-> : any
+> : error
>button : any
>button : any
}
diff --git a/tests/baselines/reference/tsxExternalModuleEmit2.types b/tests/baselines/reference/tsxExternalModuleEmit2.types
index 3324fcc1c8bbc..3766125f4e05c 100644
--- a/tests/baselines/reference/tsxExternalModuleEmit2.types
+++ b/tests/baselines/reference/tsxExternalModuleEmit2.types
@@ -19,7 +19,7 @@ declare var Foo, React;
// Should see mod_1['default'] in emit here
;
-> : any
+> : error
>Foo : any
>handler : any
>Main : any
@@ -27,7 +27,7 @@ declare var Foo, React;
// Should see mod_1['default'] in emit here
;
-> : any
+> : error
>Foo : any
>Main : any
>Foo : any
diff --git a/tests/baselines/reference/tsxNoJsx.types b/tests/baselines/reference/tsxNoJsx.types
index 40a2d2609df70..87794c7dab8bd 100644
--- a/tests/baselines/reference/tsxNoJsx.types
+++ b/tests/baselines/reference/tsxNoJsx.types
@@ -1,5 +1,5 @@
=== tests/cases/conformance/jsx/tsxNoJsx.tsx ===
;
-> : any
+> : error
>nope : any
diff --git a/tests/baselines/reference/tsxPreserveEmit1.types b/tests/baselines/reference/tsxPreserveEmit1.types
index 812f1a4b8dc95..f4497ecb5051c 100644
--- a/tests/baselines/reference/tsxPreserveEmit1.types
+++ b/tests/baselines/reference/tsxPreserveEmit1.types
@@ -12,8 +12,8 @@ import Route = ReactRouter.Route;
>Route : any
var routes1 = ;
->routes1 : any
-> : any
+>routes1 : error
+> : error
>Route : any
module M {
@@ -27,8 +27,8 @@ module M {
// Should emit 'M.X' in both opening and closing tags
var y = ;
->y : any
-> : any
+>y : error
+> : error
>X : any
>X : any
}
diff --git a/tests/baselines/reference/tsxPreserveEmit2.types b/tests/baselines/reference/tsxPreserveEmit2.types
index 9e5aac6600c08..a27fafa617b07 100644
--- a/tests/baselines/reference/tsxPreserveEmit2.types
+++ b/tests/baselines/reference/tsxPreserveEmit2.types
@@ -3,7 +3,7 @@ var Route: any;
>Route : any
var routes1 = ;
->routes1 : any
-> : any
+>routes1 : error
+> : error
>Route : any
diff --git a/tests/baselines/reference/tsxReactEmitNesting.types b/tests/baselines/reference/tsxReactEmitNesting.types
index 46c55667e4afd..a8d10ff6680e4 100644
--- a/tests/baselines/reference/tsxReactEmitNesting.types
+++ b/tests/baselines/reference/tsxReactEmitNesting.types
@@ -16,22 +16,22 @@ let render = (ctrl, model) =>
>model : any
->
todos <x>
{model.filteredTodos.map((todo) =>
{(!todo.editable) ? : null }
)}
: any
+>
todos <x>
{model.filteredTodos.map((todo) =>
{(!todo.editable) ? : null }
)}
: error
>section : any
>class : string
->
todos <x>
: any
+>
todos <x>
: error
>header : any
>class : string
todos <x>
->
todos <x>
: any
+>
todos <x>
: error
>h1 : any
>h1 : any
-> : any
+> : error
>input : any
>class : string
>autofocus : true
@@ -55,7 +55,7 @@ let render = (ctrl, model) =>
>header : any
->
{model.filteredTodos.map((todo) =>
{(!todo.editable) ? : null }
)}
: any
+>
{model.filteredTodos.map((todo) =>
{(!todo.editable) ? : null }
)}
: error
>section : any
>class : string
>style : { display: string; }
@@ -76,7 +76,7 @@ let render = (ctrl, model) =>
>"none" : "none"
-> : any
+> : error
>input : any
>class : string
>type : string
@@ -90,7 +90,7 @@ let render = (ctrl, model) =>
>ctrl : any
->
{model.filteredTodos.map((todo) =>
{(!todo.editable) ? : null }
)}
: any
+>
{model.filteredTodos.map((todo) =>
{(!todo.editable) ? : null }
)}
: error
>ul : any
>class : string
@@ -105,7 +105,7 @@ let render = (ctrl, model) =>
>todo : any