diff --git a/scripts/processDiagnosticMessages.ts b/scripts/processDiagnosticMessages.ts
index b97e4a2ea54..9cfde5b2964 100644
--- a/scripts/processDiagnosticMessages.ts
+++ b/scripts/processDiagnosticMessages.ts
@@ -54,6 +54,7 @@ function buildInfoFileOutput(messageTable: InputDiagnosticMessageTable, nameMap:
var result =
'// \r\n' +
'/// \r\n' +
+ '/* @internal */\r\n' +
'module ts {\r\n' +
' export var Diagnostics = {\r\n';
var names = Utilities.getObjectKeys(messageTable);
diff --git a/src/compiler/checker.ts b/src/compiler/checker.ts
index e1f0a53ca85..3f4a5b83ac4 100644
--- a/src/compiler/checker.ts
+++ b/src/compiler/checker.ts
@@ -9424,7 +9424,10 @@ module ts {
}
if (isArrayLikeType(inputType)) {
- return getIndexTypeOfType(inputType, IndexKind.Number);
+ let indexType = getIndexTypeOfType(inputType, IndexKind.Number);
+ if (indexType) {
+ return indexType;
+ }
}
error(errorNode, Diagnostics.Type_0_is_not_an_array_type, typeToString(inputType));
diff --git a/src/compiler/diagnosticMessages.json b/src/compiler/diagnosticMessages.json
index ea40d118382..063a0d50ef5 100644
--- a/src/compiler/diagnosticMessages.json
+++ b/src/compiler/diagnosticMessages.json
@@ -2043,19 +2043,19 @@
},
"'import ... =' can only be used in a .ts file.": {
"category": "Error",
- "code": 8002
+ "code": 8002
},
"'export=' can only be used in a .ts file.": {
"category": "Error",
- "code": 8003
+ "code": 8003
},
"'type parameter declarations' can only be used in a .ts file.": {
"category": "Error",
- "code": 8004
+ "code": 8004
},
"'implements clauses' can only be used in a .ts file.": {
"category": "Error",
- "code": 8005
+ "code": 8005
},
"'interface declarations' can only be used in a .ts file.": {
"category": "Error",
diff --git a/src/harness/typeWriter.ts b/src/harness/typeWriter.ts
index 4c50e0e0cad..736974c49a1 100644
--- a/src/harness/typeWriter.ts
+++ b/src/harness/typeWriter.ts
@@ -1,6 +1,5 @@
interface TypeWriterResult {
line: number;
- column: number;
syntaxKind: number;
sourceText: string;
type: string;
@@ -29,90 +28,43 @@ class TypeWriterWalker {
}
private visitNode(node: ts.Node): void {
- switch (node.kind) {
- // Should always log expressions that are not tokens
- // Also, always log the "this" keyword
- // TODO: Ideally we should log all expressions, but to compare to the
- // old typeWriter baselines, suppress tokens
- case ts.SyntaxKind.ThisKeyword:
- case ts.SyntaxKind.SuperKeyword:
- case ts.SyntaxKind.ArrayLiteralExpression:
- case ts.SyntaxKind.ObjectLiteralExpression:
- case ts.SyntaxKind.ElementAccessExpression:
- case ts.SyntaxKind.CallExpression:
- case ts.SyntaxKind.NewExpression:
- case ts.SyntaxKind.TypeAssertionExpression:
- case ts.SyntaxKind.ParenthesizedExpression:
- case ts.SyntaxKind.FunctionExpression:
- case ts.SyntaxKind.ArrowFunction:
- case ts.SyntaxKind.TypeOfExpression:
- case ts.SyntaxKind.VoidExpression:
- case ts.SyntaxKind.DeleteExpression:
- case ts.SyntaxKind.PrefixUnaryExpression:
- case ts.SyntaxKind.PostfixUnaryExpression:
- case ts.SyntaxKind.BinaryExpression:
- case ts.SyntaxKind.ConditionalExpression:
- case ts.SyntaxKind.SpreadElementExpression:
- this.log(node, this.getTypeOfNode(node));
- break;
-
- case ts.SyntaxKind.PropertyAccessExpression:
- for (var current = node; current.kind === ts.SyntaxKind.PropertyAccessExpression; current = current.parent) {
- }
- if (current.kind !== ts.SyntaxKind.HeritageClauseElement) {
- this.log(node, this.getTypeOfNode(node));
- }
- break;
-
- // Should not change expression status (maybe expressions)
- // TODO: Again, ideally should log number and string literals too,
- // but to be consistent with the old typeWriter, just log identifiers
- case ts.SyntaxKind.Identifier:
- var identifier = node;
- if (!this.isLabel(identifier)) {
- var type = this.getTypeOfNode(identifier);
- this.log(node, type);
- }
- break;
+ if (ts.isExpression(node) || node.kind === ts.SyntaxKind.Identifier) {
+ this.logTypeAndSymbol(node);
}
ts.forEachChild(node, child => this.visitNode(child));
}
- private isLabel(identifier: ts.Identifier): boolean {
- var parent = identifier.parent;
- switch (parent.kind) {
- case ts.SyntaxKind.ContinueStatement:
- case ts.SyntaxKind.BreakStatement:
- return (parent).label === identifier;
- case ts.SyntaxKind.LabeledStatement:
- return (parent).label === identifier;
- }
- return false;
- }
-
- private log(node: ts.Node, type: ts.Type): void {
+ private logTypeAndSymbol(node: ts.Node): void {
var actualPos = ts.skipTrivia(this.currentSourceFile.text, node.pos);
var lineAndCharacter = this.currentSourceFile.getLineAndCharacterOfPosition(actualPos);
var sourceText = ts.getTextOfNodeFromSourceText(this.currentSourceFile.text, node);
-
- // If we got an unknown type, we temporarily want to fall back to just pretending the name
- // (source text) of the node is the type. This is to align with the old typeWriter to make
- // baseline comparisons easier. In the long term, we will want to just call typeToString
- this.results.push({
- line: lineAndCharacter.line,
- // todo(cyrusn): Not sure why column is one-based for type-writer. But I'm preserving
- // that behavior to prevent having a lot of baselines to fix up.
- column: lineAndCharacter.character + 1,
- syntaxKind: node.kind,
- sourceText: sourceText,
- type: this.checker.typeToString(type, node.parent, ts.TypeFormatFlags.NoTruncation | ts.TypeFormatFlags.WriteOwnNameForAnyLike)
- });
- }
- private getTypeOfNode(node: ts.Node): ts.Type {
var type = this.checker.getTypeAtLocation(node);
ts.Debug.assert(type !== undefined, "type doesn't exist");
- return type;
+ var symbol = this.checker.getSymbolAtLocation(node);
+
+ var typeString = this.checker.typeToString(type, node.parent, ts.TypeFormatFlags.NoTruncation);
+ if (symbol) {
+ var symbolString = "Symbol(" + this.checker.symbolToString(symbol, node.parent);
+ if (symbol.declarations) {
+ for (let declaration of symbol.declarations) {
+ symbolString += ", ";
+ let declSourceFile = declaration.getSourceFile();
+ let declLineAndCharacter = declSourceFile.getLineAndCharacterOfPosition(declaration.pos);
+ symbolString += `Decl(${ ts.getBaseFileName(declSourceFile.fileName) }, ${ declLineAndCharacter.line }, ${ declLineAndCharacter.character })`
+ }
+ }
+ symbolString += ")";
+
+ typeString += ", " + symbolString;
+ }
+
+ this.results.push({
+ line: lineAndCharacter.line,
+ syntaxKind: node.kind,
+ sourceText: sourceText,
+ type: typeString
+ });
}
}
diff --git a/src/server/session.ts b/src/server/session.ts
index 09373d6bf96..faedce0e1af 100644
--- a/src/server/session.ts
+++ b/src/server/session.ts
@@ -118,7 +118,7 @@ module ts.server {
constructor(private host: ServerHost, private logger: Logger) {
this.projectService =
- new ProjectService(host, logger, (eventName, project, fileName) => {
+ new ProjectService(host, logger, (eventName,project,fileName) => {
this.handleEvent(eventName, project, fileName);
});
}
@@ -263,7 +263,7 @@ module ts.server {
}
}
- getDefinition({ line, offset, file: fileName }: protocol.FileLocationRequestArgs): protocol.FileSpan[] {
+ getDefinition(line: number, offset: number, fileName: string): protocol.FileSpan[] {
var file = ts.normalizePath(fileName);
var project = this.projectService.getProjectForFile(file);
if (!project) {
@@ -285,7 +285,7 @@ module ts.server {
}));
}
- getOccurrences({ line, offset, file: fileName }: protocol.FileLocationRequestArgs): protocol.OccurrencesResponseItem[] {
+ getOccurrences(line: number, offset: number, fileName: string): protocol.OccurrencesResponseItem[] {
fileName = ts.normalizePath(fileName);
let project = this.projectService.getProjectForFile(fileName);
@@ -315,7 +315,7 @@ module ts.server {
});
}
- getRenameLocations({line, offset, file: fileName, findInComments, findInStrings }: protocol.RenameRequestArgs): protocol.RenameResponseBody {
+ getRenameLocations(line: number, offset: number, fileName: string,findInComments: boolean, findInStrings: boolean): protocol.RenameResponseBody {
var file = ts.normalizePath(fileName);
var project = this.projectService.getProjectForFile(file);
if (!project) {
@@ -383,7 +383,7 @@ module ts.server {
return { info: renameInfo, locs: bakedRenameLocs };
}
- getReferences({ line, offset, file: fileName }: protocol.FileLocationRequestArgs): protocol.ReferencesResponseBody {
+ getReferences(line: number, offset: number, fileName: string): protocol.ReferencesResponseBody {
// TODO: get all projects for this file; report refs for all projects deleting duplicates
// can avoid duplicates by eliminating same ref file from subsequent projects
var file = ts.normalizePath(fileName);
@@ -430,12 +430,12 @@ module ts.server {
};
}
- openClientFile({ file: fileName }: protocol.OpenRequestArgs) {
+ openClientFile(fileName: string) {
var file = ts.normalizePath(fileName);
this.projectService.openClientFile(file);
}
- getQuickInfo({ line, offset, file: fileName }: protocol.FileLocationRequestArgs): protocol.QuickInfoResponseBody {
+ getQuickInfo(line: number, offset: number, fileName: string): protocol.QuickInfoResponseBody {
var file = ts.normalizePath(fileName);
var project = this.projectService.getProjectForFile(file);
if (!project) {
@@ -461,7 +461,7 @@ module ts.server {
};
}
- getFormattingEditsForRange({line, offset, endLine, endOffset, file: fileName}: protocol.FormatRequestArgs): protocol.CodeEdit[] {
+ getFormattingEditsForRange(line: number, offset: number, endLine: number, endOffset: number, fileName: string): protocol.CodeEdit[] {
var file = ts.normalizePath(fileName);
var project = this.projectService.getProjectForFile(file);
if (!project) {
@@ -488,7 +488,7 @@ module ts.server {
});
}
- getFormattingEditsAfterKeystroke({line, offset, key, file: fileName}: protocol.FormatOnKeyRequestArgs): protocol.CodeEdit[] {
+ getFormattingEditsAfterKeystroke(line: number, offset: number, key: string, fileName: string): protocol.CodeEdit[] {
var file = ts.normalizePath(fileName);
var project = this.projectService.getProjectForFile(file);
@@ -561,7 +561,7 @@ module ts.server {
});
}
- getCompletions({ line, offset, prefix, file: fileName}: protocol.CompletionsRequestArgs): protocol.CompletionEntry[] {
+ getCompletions(line: number, offset: number, prefix: string, fileName: string): protocol.CompletionEntry[] {
if (!prefix) {
prefix = "";
}
@@ -587,7 +587,8 @@ module ts.server {
}, []).sort((a, b) => a.name.localeCompare(b.name));
}
- getCompletionEntryDetails({ line, offset, entryNames, file: fileName}: protocol.CompletionDetailsRequestArgs): protocol.CompletionEntryDetails[] {
+ getCompletionEntryDetails(line: number, offset: number,
+ entryNames: string[], fileName: string): protocol.CompletionEntryDetails[] {
var file = ts.normalizePath(fileName);
var project = this.projectService.getProjectForFile(file);
if (!project) {
@@ -606,20 +607,20 @@ module ts.server {
}, []);
}
- getSignatureHelpItems({ line, offset, file: fileName }: protocol.SignatureHelpRequestArgs): protocol.SignatureHelpItems {
+ getSignatureHelpItems(line: number, offset: number, fileName: string): protocol.SignatureHelpItems {
var file = ts.normalizePath(fileName);
var project = this.projectService.getProjectForFile(file);
if (!project) {
throw Errors.NoProject;
}
-
+
var compilerService = project.compilerService;
var position = compilerService.host.lineOffsetToPosition(file, line, offset);
var helpItems = compilerService.languageService.getSignatureHelpItems(file, position);
if (!helpItems) {
return undefined;
}
-
+
var span = helpItems.applicableSpan;
var result: protocol.SignatureHelpItems = {
items: helpItems.items,
@@ -631,11 +632,11 @@ module ts.server {
argumentIndex: helpItems.argumentIndex,
argumentCount: helpItems.argumentCount,
}
-
+
return result;
}
-
- getDiagnostics({ delay, files: fileNames }: protocol.GeterrRequestArgs): void {
+
+ getDiagnostics(delay: number, fileNames: string[]) {
var checkList = fileNames.reduce((accum: PendingErrorCheck[], fileName: string) => {
fileName = ts.normalizePath(fileName);
var project = this.projectService.getProjectForFile(fileName);
@@ -646,11 +647,11 @@ module ts.server {
}, []);
if (checkList.length > 0) {
- this.updateErrorCheck(checkList, this.changeSeq, (n) => n == this.changeSeq, delay)
+ this.updateErrorCheck(checkList, this.changeSeq,(n) => n == this.changeSeq, delay)
}
}
- change({ line, offset, endLine, endOffset, insertString, file: fileName }: protocol.ChangeRequestArgs): void {
+ change(line: number, offset: number, endLine: number, endOffset: number, insertString: string, fileName: string) {
var file = ts.normalizePath(fileName);
var project = this.projectService.getProjectForFile(file);
if (project) {
@@ -665,7 +666,7 @@ module ts.server {
}
}
- reload({ file: fileName, tmpfile: tempFileName }: protocol.ReloadRequestArgs, reqSeq = 0): void {
+ reload(fileName: string, tempFileName: string, reqSeq = 0) {
var file = ts.normalizePath(fileName);
var tmpfile = ts.normalizePath(tempFileName);
var project = this.projectService.getProjectForFile(file);
@@ -678,7 +679,7 @@ module ts.server {
}
}
- saveToTmp({ file: fileName, tmpfile: tempFileName }: protocol.SavetoRequestArgs): void {
+ saveToTmp(fileName: string, tempFileName: string) {
var file = ts.normalizePath(fileName);
var tmpfile = ts.normalizePath(tempFileName);
@@ -688,7 +689,7 @@ module ts.server {
}
}
- closeClientFile({ file: fileName }: protocol.FileRequestArgs) {
+ closeClientFile(fileName: string) {
var file = ts.normalizePath(fileName);
this.projectService.closeClientFile(file);
}
@@ -712,7 +713,7 @@ module ts.server {
}));
}
- getNavigationBarItems({ file: fileName }: protocol.FileRequestArgs): protocol.NavigationBarItem[]{
+ getNavigationBarItems(fileName: string): protocol.NavigationBarItem[] {
var file = ts.normalizePath(fileName);
var project = this.projectService.getProjectForFile(file);
if (!project) {
@@ -728,7 +729,7 @@ module ts.server {
return this.decorateNavigationBarItem(project, fileName, items);
}
- getNavigateToItems({ searchValue, file: fileName, maxResultCount }: protocol.NavtoRequestArgs): protocol.NavtoItem[]{
+ getNavigateToItems(searchValue: string, fileName: string, maxResultCount?: number): protocol.NavtoItem[] {
var file = ts.normalizePath(fileName);
var project = this.projectService.getProjectForFile(file);
if (!project) {
@@ -767,7 +768,7 @@ module ts.server {
});
}
- getBraceMatching({ line, offset, file: fileName }: protocol.FileLocationRequestArgs): protocol.TextSpan[]{
+ getBraceMatching(line: number, offset: number, fileName: string): protocol.TextSpan[] {
var file = ts.normalizePath(fileName);
var project = this.projectService.getProjectForFile(file);
@@ -809,91 +810,114 @@ module ts.server {
break;
}
case CommandNames.Definition: {
- response = this.getDefinition(request.arguments);
+ var defArgs = request.arguments;
+ response = this.getDefinition(defArgs.line, defArgs.offset, defArgs.file);
break;
}
case CommandNames.References: {
- response = this.getReferences(request.arguments);
+ var refArgs = request.arguments;
+ response = this.getReferences(refArgs.line, refArgs.offset, refArgs.file);
break;
}
case CommandNames.Rename: {
- response = this.getRenameLocations(request.arguments);
+ var renameArgs = request.arguments;
+ response = this.getRenameLocations(renameArgs.line, renameArgs.offset, renameArgs.file, renameArgs.findInComments, renameArgs.findInStrings);
break;
}
case CommandNames.Open: {
- this.openClientFile(request.arguments);
+ var openArgs = request.arguments;
+ this.openClientFile(openArgs.file);
responseRequired = false;
break;
}
case CommandNames.Quickinfo: {
- response = this.getQuickInfo(request.arguments);
+ var quickinfoArgs = request.arguments;
+ response = this.getQuickInfo(quickinfoArgs.line, quickinfoArgs.offset, quickinfoArgs.file);
break;
}
case CommandNames.Format: {
- response = this.getFormattingEditsForRange(request.arguments);
+ var formatArgs = request.arguments;
+ response = this.getFormattingEditsForRange(formatArgs.line, formatArgs.offset, formatArgs.endLine, formatArgs.endOffset, formatArgs.file);
break;
}
case CommandNames.Formatonkey: {
- response = this.getFormattingEditsAfterKeystroke(request.arguments);
+ var formatOnKeyArgs = request.arguments;
+ response = this.getFormattingEditsAfterKeystroke(formatOnKeyArgs.line, formatOnKeyArgs.offset, formatOnKeyArgs.key, formatOnKeyArgs.file);
break;
}
case CommandNames.Completions: {
- response = this.getCompletions(request.arguments);
+ var completionsArgs = request.arguments;
+ response = this.getCompletions(completionsArgs.line, completionsArgs.offset, completionsArgs.prefix, completionsArgs.file);
break;
}
case CommandNames.CompletionDetails: {
- response = this.getCompletionEntryDetails(request.arguments);
+ var completionDetailsArgs = request.arguments;
+ response =
+ this.getCompletionEntryDetails(completionDetailsArgs.line,completionDetailsArgs.offset,
+ completionDetailsArgs.entryNames,completionDetailsArgs.file);
break;
}
case CommandNames.SignatureHelp: {
- response = this.getSignatureHelpItems(request.arguments);
+ var signatureHelpArgs = request.arguments;
+ response = this.getSignatureHelpItems(signatureHelpArgs.line, signatureHelpArgs.offset, signatureHelpArgs.file);
break;
}
case CommandNames.Geterr: {
- this.getDiagnostics(request.arguments);
+ var geterrArgs = request.arguments;
+ response = this.getDiagnostics(geterrArgs.delay, geterrArgs.files);
responseRequired = false;
break;
}
case CommandNames.Change: {
- this.change(request.arguments);
+ var changeArgs = request.arguments;
+ this.change(changeArgs.line, changeArgs.offset, changeArgs.endLine, changeArgs.endOffset,
+ changeArgs.insertString, changeArgs.file);
responseRequired = false;
break;
}
case CommandNames.Configure: {
- this.projectService.setHostConfiguration(request.arguments);
+ var configureArgs = request.arguments;
+ this.projectService.setHostConfiguration(configureArgs);
this.output(undefined, CommandNames.Configure, request.seq);
responseRequired = false;
break;
}
case CommandNames.Reload: {
- this.reload(request.arguments);
+ var reloadArgs = request.arguments;
+ this.reload(reloadArgs.file, reloadArgs.tmpfile, request.seq);
responseRequired = false;
break;
}
case CommandNames.Saveto: {
- this.saveToTmp(request.arguments);
+ var savetoArgs = request.arguments;
+ this.saveToTmp(savetoArgs.file, savetoArgs.tmpfile);
responseRequired = false;
break;
}
case CommandNames.Close: {
- this.closeClientFile(request.arguments);
+ var closeArgs = request.arguments;
+ this.closeClientFile(closeArgs.file);
responseRequired = false;
break;
}
case CommandNames.Navto: {
- response = this.getNavigateToItems(request.arguments);
+ var navtoArgs = request.arguments;
+ response = this.getNavigateToItems(navtoArgs.searchValue, navtoArgs.file, navtoArgs.maxResultCount);
break;
}
case CommandNames.Brace: {
- response = this.getBraceMatching(request.arguments);
+ var braceArguments = request.arguments;
+ response = this.getBraceMatching(braceArguments.line, braceArguments.offset, braceArguments.file);
break;
}
case CommandNames.NavBar: {
- response = this.getNavigationBarItems(request.arguments);
+ var navBarArgs = request.arguments;
+ response = this.getNavigationBarItems(navBarArgs.file);
break;
}
case CommandNames.Occurrences: {
- response = this.getOccurrences(request.arguments);
+ var { line, offset, file: fileName } = request.arguments;
+ response = this.getOccurrences(line, offset, fileName);
break;
}
default: {
diff --git a/src/services/services.ts b/src/services/services.ts
index 1d006e0b14c..c57dea2e1c3 100644
--- a/src/services/services.ts
+++ b/src/services/services.ts
@@ -3109,6 +3109,7 @@ module ts {
case SyntaxKind.SemicolonToken:
return containingNodeKind === SyntaxKind.PropertySignature &&
+ previousToken.parent && previousToken.parent.parent &&
(previousToken.parent.parent.kind === SyntaxKind.InterfaceDeclaration || // interface a { f; |
previousToken.parent.parent.kind === SyntaxKind.TypeLiteral); // let x : { a; |
@@ -3124,7 +3125,8 @@ module ts {
case SyntaxKind.DotDotDotToken:
return containingNodeKind === SyntaxKind.Parameter ||
containingNodeKind === SyntaxKind.Constructor ||
- (previousToken.parent.parent.kind === SyntaxKind.ArrayBindingPattern); // var [ ...z|
+ (previousToken.parent && previousToken.parent.parent &&
+ previousToken.parent.parent.kind === SyntaxKind.ArrayBindingPattern); // var [ ...z|
case SyntaxKind.PublicKeyword:
case SyntaxKind.PrivateKeyword:
@@ -3987,7 +3989,7 @@ module ts {
// Get occurrences only supports reporting occurrences for the file queried. So
// filter down to that list.
- results = filter(results, r => r.fileName === fileName);
+ results = filter(results, r => getCanonicalFileName(ts.normalizeSlashes(r.fileName)) === sourceFile);
}
return results;
diff --git a/tests/baselines/reference/2dArrays.types b/tests/baselines/reference/2dArrays.types
index b113ccdce7b..cb6c2a3a723 100644
--- a/tests/baselines/reference/2dArrays.types
+++ b/tests/baselines/reference/2dArrays.types
@@ -1,40 +1,40 @@
=== tests/cases/compiler/2dArrays.ts ===
class Cell {
->Cell : Cell
+>Cell : Cell, Symbol(Cell, Decl(2dArrays.ts, 0, 0))
}
class Ship {
->Ship : Ship
+>Ship : Ship, Symbol(Ship, Decl(2dArrays.ts, 1, 1))
isSunk: boolean;
->isSunk : boolean
+>isSunk : boolean, Symbol(isSunk, Decl(2dArrays.ts, 3, 12))
}
class Board {
->Board : Board
+>Board : Board, Symbol(Board, Decl(2dArrays.ts, 5, 1))
ships: Ship[];
->ships : Ship[]
->Ship : Ship
+>ships : Ship[], Symbol(ships, Decl(2dArrays.ts, 7, 13))
+>Ship : Ship, Symbol(Ship, Decl(2dArrays.ts, 1, 1))
cells: Cell[];
->cells : Cell[]
->Cell : Cell
+>cells : Cell[], Symbol(cells, Decl(2dArrays.ts, 8, 18))
+>Cell : Cell, Symbol(Cell, Decl(2dArrays.ts, 0, 0))
private allShipsSunk() {
->allShipsSunk : () => boolean
+>allShipsSunk : () => boolean, Symbol(allShipsSunk, Decl(2dArrays.ts, 9, 18))
return this.ships.every(function (val) { return val.isSunk; });
>this.ships.every(function (val) { return val.isSunk; }) : boolean
->this.ships.every : (callbackfn: (value: Ship, index: number, array: Ship[]) => boolean, thisArg?: any) => boolean
->this.ships : Ship[]
->this : Board
->ships : Ship[]
->every : (callbackfn: (value: Ship, index: number, array: Ship[]) => boolean, thisArg?: any) => boolean
+>this.ships.every : (callbackfn: (value: Ship, index: number, array: Ship[]) => boolean, thisArg?: any) => boolean, Symbol(Array.every, Decl(lib.d.ts, 1094, 62))
+>this.ships : Ship[], Symbol(ships, Decl(2dArrays.ts, 7, 13))
+>this : Board, Symbol(Board, Decl(2dArrays.ts, 5, 1))
+>ships : Ship[], Symbol(ships, Decl(2dArrays.ts, 7, 13))
+>every : (callbackfn: (value: Ship, index: number, array: Ship[]) => boolean, thisArg?: any) => boolean, Symbol(Array.every, Decl(lib.d.ts, 1094, 62))
>function (val) { return val.isSunk; } : (val: Ship) => boolean
->val : Ship
->val.isSunk : boolean
->val : Ship
->isSunk : boolean
+>val : Ship, Symbol(val, Decl(2dArrays.ts, 12, 42))
+>val.isSunk : boolean, Symbol(Ship.isSunk, Decl(2dArrays.ts, 3, 12))
+>val : Ship, Symbol(val, Decl(2dArrays.ts, 12, 42))
+>isSunk : boolean, Symbol(Ship.isSunk, Decl(2dArrays.ts, 3, 12))
}
}
diff --git a/tests/baselines/reference/APISample_compile.types b/tests/baselines/reference/APISample_compile.types
index 7ccbae38212..d147ded3f0e 100644
--- a/tests/baselines/reference/APISample_compile.types
+++ b/tests/baselines/reference/APISample_compile.types
@@ -7,152 +7,162 @@
*/
declare var process: any;
->process : any
+>process : any, Symbol(process, Decl(APISample_compile.ts, 7, 11))
declare var console: any;
->console : any
+>console : any, Symbol(console, Decl(APISample_compile.ts, 8, 11))
declare var os: any;
->os : any
+>os : any, Symbol(os, Decl(APISample_compile.ts, 9, 11))
import ts = require("typescript");
->ts : typeof ts
+>ts : typeof ts, Symbol(ts, Decl(APISample_compile.ts, 9, 20))
export function compile(fileNames: string[], options: ts.CompilerOptions): void {
->compile : (fileNames: string[], options: ts.CompilerOptions) => void
->fileNames : string[]
->options : ts.CompilerOptions
->ts : unknown
->CompilerOptions : ts.CompilerOptions
+>compile : (fileNames: string[], options: ts.CompilerOptions) => void, Symbol(compile, Decl(APISample_compile.ts, 11, 34))
+>fileNames : string[], Symbol(fileNames, Decl(APISample_compile.ts, 13, 24))
+>options : ts.CompilerOptions, Symbol(options, Decl(APISample_compile.ts, 13, 44))
+>ts : any, Symbol(ts, Decl(APISample_compile.ts, 9, 20))
+>CompilerOptions : ts.CompilerOptions, Symbol(ts.CompilerOptions, Decl(typescript.d.ts, 1074, 5))
var program = ts.createProgram(fileNames, options);
->program : ts.Program
+>program : ts.Program, Symbol(program, Decl(APISample_compile.ts, 14, 7))
>ts.createProgram(fileNames, options) : ts.Program
->ts.createProgram : (rootNames: string[], options: ts.CompilerOptions, host?: ts.CompilerHost) => ts.Program
->ts : typeof ts
->createProgram : (rootNames: string[], options: ts.CompilerOptions, host?: ts.CompilerHost) => ts.Program
->fileNames : string[]
->options : ts.CompilerOptions
+>ts.createProgram : (rootNames: string[], options: ts.CompilerOptions, host?: ts.CompilerHost) => ts.Program, Symbol(ts.createProgram, Decl(typescript.d.ts, 1201, 113))
+>ts : typeof ts, Symbol(ts, Decl(APISample_compile.ts, 9, 20))
+>createProgram : (rootNames: string[], options: ts.CompilerOptions, host?: ts.CompilerHost) => ts.Program, Symbol(ts.createProgram, Decl(typescript.d.ts, 1201, 113))
+>fileNames : string[], Symbol(fileNames, Decl(APISample_compile.ts, 13, 24))
+>options : ts.CompilerOptions, Symbol(options, Decl(APISample_compile.ts, 13, 44))
var emitResult = program.emit();
->emitResult : ts.EmitResult
+>emitResult : ts.EmitResult, Symbol(emitResult, Decl(APISample_compile.ts, 15, 7))
>program.emit() : ts.EmitResult
->program.emit : (targetSourceFile?: ts.SourceFile, writeFile?: ts.WriteFileCallback) => ts.EmitResult
->program : ts.Program
->emit : (targetSourceFile?: ts.SourceFile, writeFile?: ts.WriteFileCallback) => ts.EmitResult
+>program.emit : (targetSourceFile?: ts.SourceFile, writeFile?: ts.WriteFileCallback) => ts.EmitResult, Symbol(ts.Program.emit, Decl(typescript.d.ts, 767, 39))
+>program : ts.Program, Symbol(program, Decl(APISample_compile.ts, 14, 7))
+>emit : (targetSourceFile?: ts.SourceFile, writeFile?: ts.WriteFileCallback) => ts.EmitResult, Symbol(ts.Program.emit, Decl(typescript.d.ts, 767, 39))
var allDiagnostics = ts.getPreEmitDiagnostics(program).concat(emitResult.diagnostics);
->allDiagnostics : ts.Diagnostic[]
+>allDiagnostics : ts.Diagnostic[], Symbol(allDiagnostics, Decl(APISample_compile.ts, 17, 7))
>ts.getPreEmitDiagnostics(program).concat(emitResult.diagnostics) : ts.Diagnostic[]
->ts.getPreEmitDiagnostics(program).concat : { (...items: U[]): ts.Diagnostic[]; (...items: ts.Diagnostic[]): ts.Diagnostic[]; }
+>ts.getPreEmitDiagnostics(program).concat : { (...items: U[]): ts.Diagnostic[]; (...items: ts.Diagnostic[]): ts.Diagnostic[]; }, Symbol(Array.concat, Decl(lib.d.ts, 1025, 13), Decl(lib.d.ts, 1030, 46))
>ts.getPreEmitDiagnostics(program) : ts.Diagnostic[]
->ts.getPreEmitDiagnostics : (program: ts.Program) => ts.Diagnostic[]
->ts : typeof ts
->getPreEmitDiagnostics : (program: ts.Program) => ts.Diagnostic[]
->program : ts.Program
->concat : { (...items: U[]): ts.Diagnostic[]; (...items: ts.Diagnostic[]): ts.Diagnostic[]; }
->emitResult.diagnostics : ts.Diagnostic[]
->emitResult : ts.EmitResult
->diagnostics : ts.Diagnostic[]
+>ts.getPreEmitDiagnostics : (program: ts.Program) => ts.Diagnostic[], Symbol(ts.getPreEmitDiagnostics, Decl(typescript.d.ts, 1199, 98))
+>ts : typeof ts, Symbol(ts, Decl(APISample_compile.ts, 9, 20))
+>getPreEmitDiagnostics : (program: ts.Program) => ts.Diagnostic[], Symbol(ts.getPreEmitDiagnostics, Decl(typescript.d.ts, 1199, 98))
+>program : ts.Program, Symbol(program, Decl(APISample_compile.ts, 14, 7))
+>concat : { (...items: U[]): ts.Diagnostic[]; (...items: ts.Diagnostic[]): ts.Diagnostic[]; }, Symbol(Array.concat, Decl(lib.d.ts, 1025, 13), Decl(lib.d.ts, 1030, 46))
+>emitResult.diagnostics : ts.Diagnostic[], Symbol(ts.EmitResult.diagnostics, Decl(typescript.d.ts, 820, 29))
+>emitResult : ts.EmitResult, Symbol(emitResult, Decl(APISample_compile.ts, 15, 7))
+>diagnostics : ts.Diagnostic[], Symbol(ts.EmitResult.diagnostics, Decl(typescript.d.ts, 820, 29))
allDiagnostics.forEach(diagnostic => {
>allDiagnostics.forEach(diagnostic => { var { line, character } = diagnostic.file.getLineAndCharacterOfPosition(diagnostic.start); var message = ts.flattenDiagnosticMessageText(diagnostic.messageText, '\n'); console.log(`${diagnostic.file.fileName} (${line + 1},${character + 1}): ${message}`); }) : void
->allDiagnostics.forEach : (callbackfn: (value: ts.Diagnostic, index: number, array: ts.Diagnostic[]) => void, thisArg?: any) => void
->allDiagnostics : ts.Diagnostic[]
->forEach : (callbackfn: (value: ts.Diagnostic, index: number, array: ts.Diagnostic[]) => void, thisArg?: any) => void
+>allDiagnostics.forEach : (callbackfn: (value: ts.Diagnostic, index: number, array: ts.Diagnostic[]) => void, thisArg?: any) => void, Symbol(Array.forEach, Decl(lib.d.ts, 1108, 95))
+>allDiagnostics : ts.Diagnostic[], Symbol(allDiagnostics, Decl(APISample_compile.ts, 17, 7))
+>forEach : (callbackfn: (value: ts.Diagnostic, index: number, array: ts.Diagnostic[]) => void, thisArg?: any) => void, Symbol(Array.forEach, Decl(lib.d.ts, 1108, 95))
>diagnostic => { var { line, character } = diagnostic.file.getLineAndCharacterOfPosition(diagnostic.start); var message = ts.flattenDiagnosticMessageText(diagnostic.messageText, '\n'); console.log(`${diagnostic.file.fileName} (${line + 1},${character + 1}): ${message}`); } : (diagnostic: ts.Diagnostic) => void
->diagnostic : ts.Diagnostic
+>diagnostic : ts.Diagnostic, Symbol(diagnostic, Decl(APISample_compile.ts, 19, 27))
var { line, character } = diagnostic.file.getLineAndCharacterOfPosition(diagnostic.start);
->line : number
->character : number
+>line : number, Symbol(line, Decl(APISample_compile.ts, 20, 13))
+>character : number, Symbol(character, Decl(APISample_compile.ts, 20, 19))
>diagnostic.file.getLineAndCharacterOfPosition(diagnostic.start) : ts.LineAndCharacter
->diagnostic.file.getLineAndCharacterOfPosition : (pos: number) => ts.LineAndCharacter
->diagnostic.file : ts.SourceFile
->diagnostic : ts.Diagnostic
->file : ts.SourceFile
->getLineAndCharacterOfPosition : (pos: number) => ts.LineAndCharacter
->diagnostic.start : number
->diagnostic : ts.Diagnostic
->start : number
+>diagnostic.file.getLineAndCharacterOfPosition : (pos: number) => ts.LineAndCharacter, Symbol(ts.SourceFile.getLineAndCharacterOfPosition, Decl(typescript.d.ts, 1263, 46))
+>diagnostic.file : ts.SourceFile, Symbol(ts.Diagnostic.file, Decl(typescript.d.ts, 1062, 26))
+>diagnostic : ts.Diagnostic, Symbol(diagnostic, Decl(APISample_compile.ts, 19, 27))
+>file : ts.SourceFile, Symbol(ts.Diagnostic.file, Decl(typescript.d.ts, 1062, 26))
+>getLineAndCharacterOfPosition : (pos: number) => ts.LineAndCharacter, Symbol(ts.SourceFile.getLineAndCharacterOfPosition, Decl(typescript.d.ts, 1263, 46))
+>diagnostic.start : number, Symbol(ts.Diagnostic.start, Decl(typescript.d.ts, 1063, 25))
+>diagnostic : ts.Diagnostic, Symbol(diagnostic, Decl(APISample_compile.ts, 19, 27))
+>start : number, Symbol(ts.Diagnostic.start, Decl(typescript.d.ts, 1063, 25))
var message = ts.flattenDiagnosticMessageText(diagnostic.messageText, '\n');
->message : string
+>message : string, Symbol(message, Decl(APISample_compile.ts, 21, 11))
>ts.flattenDiagnosticMessageText(diagnostic.messageText, '\n') : string
->ts.flattenDiagnosticMessageText : (messageText: string | ts.DiagnosticMessageChain, newLine: string) => string
->ts : typeof ts
->flattenDiagnosticMessageText : (messageText: string | ts.DiagnosticMessageChain, newLine: string) => string
->diagnostic.messageText : string | ts.DiagnosticMessageChain
->diagnostic : ts.Diagnostic
->messageText : string | ts.DiagnosticMessageChain
+>ts.flattenDiagnosticMessageText : (messageText: string | ts.DiagnosticMessageChain, newLine: string) => string, Symbol(ts.flattenDiagnosticMessageText, Decl(typescript.d.ts, 1200, 67))
+>ts : typeof ts, Symbol(ts, Decl(APISample_compile.ts, 9, 20))
+>flattenDiagnosticMessageText : (messageText: string | ts.DiagnosticMessageChain, newLine: string) => string, Symbol(ts.flattenDiagnosticMessageText, Decl(typescript.d.ts, 1200, 67))
+>diagnostic.messageText : string | ts.DiagnosticMessageChain, Symbol(ts.Diagnostic.messageText, Decl(typescript.d.ts, 1065, 23))
+>diagnostic : ts.Diagnostic, Symbol(diagnostic, Decl(APISample_compile.ts, 19, 27))
+>messageText : string | ts.DiagnosticMessageChain, Symbol(ts.Diagnostic.messageText, Decl(typescript.d.ts, 1065, 23))
+>'\n' : string
console.log(`${diagnostic.file.fileName} (${line + 1},${character + 1}): ${message}`);
>console.log(`${diagnostic.file.fileName} (${line + 1},${character + 1}): ${message}`) : any
>console.log : any
->console : any
+>console : any, Symbol(console, Decl(APISample_compile.ts, 8, 11))
>log : any
->diagnostic.file.fileName : string
->diagnostic.file : ts.SourceFile
->diagnostic : ts.Diagnostic
->file : ts.SourceFile
->fileName : string
+>`${diagnostic.file.fileName} (${line + 1},${character + 1}): ${message}` : string
+>diagnostic.file.fileName : string, Symbol(ts.SourceFile.fileName, Decl(typescript.d.ts, 743, 29))
+>diagnostic.file : ts.SourceFile, Symbol(ts.Diagnostic.file, Decl(typescript.d.ts, 1062, 26))
+>diagnostic : ts.Diagnostic, Symbol(diagnostic, Decl(APISample_compile.ts, 19, 27))
+>file : ts.SourceFile, Symbol(ts.Diagnostic.file, Decl(typescript.d.ts, 1062, 26))
+>fileName : string, Symbol(ts.SourceFile.fileName, Decl(typescript.d.ts, 743, 29))
>line + 1 : number
->line : number
+>line : number, Symbol(line, Decl(APISample_compile.ts, 20, 13))
+>1 : number
>character + 1 : number
->character : number
->message : string
+>character : number, Symbol(character, Decl(APISample_compile.ts, 20, 19))
+>1 : number
+>message : string, Symbol(message, Decl(APISample_compile.ts, 21, 11))
});
var exitCode = emitResult.emitSkipped ? 1 : 0;
->exitCode : number
+>exitCode : number, Symbol(exitCode, Decl(APISample_compile.ts, 25, 7))
>emitResult.emitSkipped ? 1 : 0 : number
->emitResult.emitSkipped : boolean
->emitResult : ts.EmitResult
->emitSkipped : boolean
+>emitResult.emitSkipped : boolean, Symbol(ts.EmitResult.emitSkipped, Decl(typescript.d.ts, 819, 26))
+>emitResult : ts.EmitResult, Symbol(emitResult, Decl(APISample_compile.ts, 15, 7))
+>emitSkipped : boolean, Symbol(ts.EmitResult.emitSkipped, Decl(typescript.d.ts, 819, 26))
+>1 : number
+>0 : number
console.log(`Process exiting with code '${exitCode}'.`);
>console.log(`Process exiting with code '${exitCode}'.`) : any
>console.log : any
->console : any
+>console : any, Symbol(console, Decl(APISample_compile.ts, 8, 11))
>log : any
->exitCode : number
+>`Process exiting with code '${exitCode}'.` : string
+>exitCode : number, Symbol(exitCode, Decl(APISample_compile.ts, 25, 7))
process.exit(exitCode);
>process.exit(exitCode) : any
>process.exit : any
->process : any
+>process : any, Symbol(process, Decl(APISample_compile.ts, 7, 11))
>exit : any
->exitCode : number
+>exitCode : number, Symbol(exitCode, Decl(APISample_compile.ts, 25, 7))
}
compile(process.argv.slice(2), {
>compile(process.argv.slice(2), { noEmitOnError: true, noImplicitAny: true, target: ts.ScriptTarget.ES5, module: ts.ModuleKind.CommonJS}) : void
->compile : (fileNames: string[], options: ts.CompilerOptions) => void
+>compile : (fileNames: string[], options: ts.CompilerOptions) => void, Symbol(compile, Decl(APISample_compile.ts, 11, 34))
>process.argv.slice(2) : any
>process.argv.slice : any
>process.argv : any
->process : any
+>process : any, Symbol(process, Decl(APISample_compile.ts, 7, 11))
>argv : any
>slice : any
+>2 : number
>{ noEmitOnError: true, noImplicitAny: true, target: ts.ScriptTarget.ES5, module: ts.ModuleKind.CommonJS} : { [x: string]: boolean | ts.ScriptTarget | ts.ModuleKind; noEmitOnError: boolean; noImplicitAny: boolean; target: ts.ScriptTarget; module: ts.ModuleKind; }
noEmitOnError: true, noImplicitAny: true,
->noEmitOnError : boolean
->noImplicitAny : boolean
+>noEmitOnError : boolean, Symbol(noEmitOnError, Decl(APISample_compile.ts, 30, 32))
+>true : boolean
+>noImplicitAny : boolean, Symbol(noImplicitAny, Decl(APISample_compile.ts, 31, 24))
+>true : boolean
target: ts.ScriptTarget.ES5, module: ts.ModuleKind.CommonJS
->target : ts.ScriptTarget
->ts.ScriptTarget.ES5 : ts.ScriptTarget
->ts.ScriptTarget : typeof ts.ScriptTarget
->ts : typeof ts
->ScriptTarget : typeof ts.ScriptTarget
->ES5 : ts.ScriptTarget
->module : ts.ModuleKind
->ts.ModuleKind.CommonJS : ts.ModuleKind
->ts.ModuleKind : typeof ts.ModuleKind
->ts : typeof ts
->ModuleKind : typeof ts.ModuleKind
->CommonJS : ts.ModuleKind
+>target : ts.ScriptTarget, Symbol(target, Decl(APISample_compile.ts, 31, 45))
+>ts.ScriptTarget.ES5 : ts.ScriptTarget, Symbol(ts.ScriptTarget.ES5, Decl(typescript.d.ts, 1117, 16))
+>ts.ScriptTarget : typeof ts.ScriptTarget, Symbol(ts.ScriptTarget, Decl(typescript.d.ts, 1115, 5))
+>ts : typeof ts, Symbol(ts, Decl(APISample_compile.ts, 9, 20))
+>ScriptTarget : typeof ts.ScriptTarget, Symbol(ts.ScriptTarget, Decl(typescript.d.ts, 1115, 5))
+>ES5 : ts.ScriptTarget, Symbol(ts.ScriptTarget.ES5, Decl(typescript.d.ts, 1117, 16))
+>module : ts.ModuleKind, Symbol(module, Decl(APISample_compile.ts, 32, 32))
+>ts.ModuleKind.CommonJS : ts.ModuleKind, Symbol(ts.ModuleKind.CommonJS, Decl(typescript.d.ts, 1108, 17))
+>ts.ModuleKind : typeof ts.ModuleKind, Symbol(ts.ModuleKind, Decl(typescript.d.ts, 1106, 5))
+>ts : typeof ts, Symbol(ts, Decl(APISample_compile.ts, 9, 20))
+>ModuleKind : typeof ts.ModuleKind, Symbol(ts.ModuleKind, Decl(typescript.d.ts, 1106, 5))
+>CommonJS : ts.ModuleKind, Symbol(ts.ModuleKind.CommonJS, Decl(typescript.d.ts, 1108, 17))
});
diff --git a/tests/baselines/reference/APISample_linter.types b/tests/baselines/reference/APISample_linter.types
index 609f08f3a76..c285bc15390 100644
--- a/tests/baselines/reference/APISample_linter.types
+++ b/tests/baselines/reference/APISample_linter.types
@@ -7,297 +7,306 @@
*/
declare var process: any;
->process : any
+>process : any, Symbol(process, Decl(APISample_linter.ts, 7, 11))
declare var console: any;
->console : any
+>console : any, Symbol(console, Decl(APISample_linter.ts, 8, 11))
declare var readFileSync: any;
->readFileSync : any
+>readFileSync : any, Symbol(readFileSync, Decl(APISample_linter.ts, 9, 11))
import * as ts from "typescript";
->ts : typeof ts
+>ts : typeof ts, Symbol(ts, Decl(APISample_linter.ts, 11, 6))
export function delint(sourceFile: ts.SourceFile) {
->delint : (sourceFile: ts.SourceFile) => void
->sourceFile : ts.SourceFile
->ts : unknown
->SourceFile : ts.SourceFile
+>delint : (sourceFile: ts.SourceFile) => void, Symbol(delint, Decl(APISample_linter.ts, 11, 33))
+>sourceFile : ts.SourceFile, Symbol(sourceFile, Decl(APISample_linter.ts, 13, 23))
+>ts : any, Symbol(ts, Decl(APISample_linter.ts, 11, 6))
+>SourceFile : ts.SourceFile, Symbol(ts.SourceFile, Decl(typescript.d.ts, 740, 5), Decl(typescript.d.ts, 1261, 5))
delintNode(sourceFile);
>delintNode(sourceFile) : void
->delintNode : (node: ts.Node) => void
->sourceFile : ts.SourceFile
+>delintNode : (node: ts.Node) => void, Symbol(delintNode, Decl(APISample_linter.ts, 14, 27))
+>sourceFile : ts.SourceFile, Symbol(sourceFile, Decl(APISample_linter.ts, 13, 23))
function delintNode(node: ts.Node) {
->delintNode : (node: ts.Node) => void
->node : ts.Node
->ts : unknown
->Node : ts.Node
+>delintNode : (node: ts.Node) => void, Symbol(delintNode, Decl(APISample_linter.ts, 14, 27))
+>node : ts.Node, Symbol(node, Decl(APISample_linter.ts, 16, 24))
+>ts : any, Symbol(ts, Decl(APISample_linter.ts, 11, 6))
+>Node : ts.Node, Symbol(ts.Node, Decl(typescript.d.ts, 296, 5), Decl(typescript.d.ts, 1221, 32))
switch (node.kind) {
->node.kind : ts.SyntaxKind
->node : ts.Node
->kind : ts.SyntaxKind
+>node.kind : ts.SyntaxKind, Symbol(ts.Node.kind, Decl(typescript.d.ts, 297, 38))
+>node : ts.Node, Symbol(node, Decl(APISample_linter.ts, 16, 24))
+>kind : ts.SyntaxKind, Symbol(ts.Node.kind, Decl(typescript.d.ts, 297, 38))
case ts.SyntaxKind.ForStatement:
->ts.SyntaxKind.ForStatement : ts.SyntaxKind
->ts.SyntaxKind : typeof ts.SyntaxKind
->ts : typeof ts
->SyntaxKind : typeof ts.SyntaxKind
->ForStatement : ts.SyntaxKind
+>ts.SyntaxKind.ForStatement : ts.SyntaxKind, Symbol(ts.SyntaxKind.ForStatement, Decl(typescript.d.ts, 209, 29))
+>ts.SyntaxKind : typeof ts.SyntaxKind, Symbol(ts.SyntaxKind, Decl(typescript.d.ts, 22, 5))
+>ts : typeof ts, Symbol(ts, Decl(APISample_linter.ts, 11, 6))
+>SyntaxKind : typeof ts.SyntaxKind, Symbol(ts.SyntaxKind, Decl(typescript.d.ts, 22, 5))
+>ForStatement : ts.SyntaxKind, Symbol(ts.SyntaxKind.ForStatement, Decl(typescript.d.ts, 209, 29))
case ts.SyntaxKind.ForInStatement:
->ts.SyntaxKind.ForInStatement : ts.SyntaxKind
->ts.SyntaxKind : typeof ts.SyntaxKind
->ts : typeof ts
->SyntaxKind : typeof ts.SyntaxKind
->ForInStatement : ts.SyntaxKind
+>ts.SyntaxKind.ForInStatement : ts.SyntaxKind, Symbol(ts.SyntaxKind.ForInStatement, Decl(typescript.d.ts, 210, 27))
+>ts.SyntaxKind : typeof ts.SyntaxKind, Symbol(ts.SyntaxKind, Decl(typescript.d.ts, 22, 5))
+>ts : typeof ts, Symbol(ts, Decl(APISample_linter.ts, 11, 6))
+>SyntaxKind : typeof ts.SyntaxKind, Symbol(ts.SyntaxKind, Decl(typescript.d.ts, 22, 5))
+>ForInStatement : ts.SyntaxKind, Symbol(ts.SyntaxKind.ForInStatement, Decl(typescript.d.ts, 210, 27))
case ts.SyntaxKind.WhileStatement:
->ts.SyntaxKind.WhileStatement : ts.SyntaxKind
->ts.SyntaxKind : typeof ts.SyntaxKind
->ts : typeof ts
->SyntaxKind : typeof ts.SyntaxKind
->WhileStatement : ts.SyntaxKind
+>ts.SyntaxKind.WhileStatement : ts.SyntaxKind, Symbol(ts.SyntaxKind.WhileStatement, Decl(typescript.d.ts, 208, 26))
+>ts.SyntaxKind : typeof ts.SyntaxKind, Symbol(ts.SyntaxKind, Decl(typescript.d.ts, 22, 5))
+>ts : typeof ts, Symbol(ts, Decl(APISample_linter.ts, 11, 6))
+>SyntaxKind : typeof ts.SyntaxKind, Symbol(ts.SyntaxKind, Decl(typescript.d.ts, 22, 5))
+>WhileStatement : ts.SyntaxKind, Symbol(ts.SyntaxKind.WhileStatement, Decl(typescript.d.ts, 208, 26))
case ts.SyntaxKind.DoStatement:
->ts.SyntaxKind.DoStatement : ts.SyntaxKind
->ts.SyntaxKind : typeof ts.SyntaxKind
->ts : typeof ts
->SyntaxKind : typeof ts.SyntaxKind
->DoStatement : ts.SyntaxKind
+>ts.SyntaxKind.DoStatement : ts.SyntaxKind, Symbol(ts.SyntaxKind.DoStatement, Decl(typescript.d.ts, 207, 26))
+>ts.SyntaxKind : typeof ts.SyntaxKind, Symbol(ts.SyntaxKind, Decl(typescript.d.ts, 22, 5))
+>ts : typeof ts, Symbol(ts, Decl(APISample_linter.ts, 11, 6))
+>SyntaxKind : typeof ts.SyntaxKind, Symbol(ts.SyntaxKind, Decl(typescript.d.ts, 22, 5))
+>DoStatement : ts.SyntaxKind, Symbol(ts.SyntaxKind.DoStatement, Decl(typescript.d.ts, 207, 26))
if ((node).statement.kind !== ts.SyntaxKind.Block) {
>(node).statement.kind !== ts.SyntaxKind.Block : boolean
->(node).statement.kind : ts.SyntaxKind
->(node).statement : ts.Statement
+>(node).statement.kind : ts.SyntaxKind, Symbol(ts.Node.kind, Decl(typescript.d.ts, 297, 38))
+>(node).statement : ts.Statement, Symbol(ts.IterationStatement.statement, Decl(typescript.d.ts, 589, 52))
>(node) : ts.IterationStatement
>node : ts.IterationStatement
->ts : unknown
->IterationStatement : ts.IterationStatement
->node : ts.Node
->statement : ts.Statement
->kind : ts.SyntaxKind
->ts.SyntaxKind.Block : ts.SyntaxKind
->ts.SyntaxKind : typeof ts.SyntaxKind
->ts : typeof ts
->SyntaxKind : typeof ts.SyntaxKind
->Block : ts.SyntaxKind
+>ts : any, Symbol(ts, Decl(APISample_linter.ts, 11, 6))
+>IterationStatement : ts.IterationStatement, Symbol(ts.IterationStatement, Decl(typescript.d.ts, 588, 5))
+>node : ts.Node, Symbol(node, Decl(APISample_linter.ts, 16, 24))
+>statement : ts.Statement, Symbol(ts.IterationStatement.statement, Decl(typescript.d.ts, 589, 52))
+>kind : ts.SyntaxKind, Symbol(ts.Node.kind, Decl(typescript.d.ts, 297, 38))
+>ts.SyntaxKind.Block : ts.SyntaxKind, Symbol(ts.SyntaxKind.Block, Decl(typescript.d.ts, 202, 36))
+>ts.SyntaxKind : typeof ts.SyntaxKind, Symbol(ts.SyntaxKind, Decl(typescript.d.ts, 22, 5))
+>ts : typeof ts, Symbol(ts, Decl(APISample_linter.ts, 11, 6))
+>SyntaxKind : typeof ts.SyntaxKind, Symbol(ts.SyntaxKind, Decl(typescript.d.ts, 22, 5))
+>Block : ts.SyntaxKind, Symbol(ts.SyntaxKind.Block, Decl(typescript.d.ts, 202, 36))
report(node, "A looping statement's contents should be wrapped in a block body.");
>report(node, "A looping statement's contents should be wrapped in a block body.") : void
->report : (node: ts.Node, message: string) => void
->node : ts.Node
+>report : (node: ts.Node, message: string) => void, Symbol(report, Decl(APISample_linter.ts, 48, 5))
+>node : ts.Node, Symbol(node, Decl(APISample_linter.ts, 16, 24))
+>"A looping statement's contents should be wrapped in a block body." : string
}
break;
case ts.SyntaxKind.IfStatement:
->ts.SyntaxKind.IfStatement : ts.SyntaxKind
->ts.SyntaxKind : typeof ts.SyntaxKind
->ts : typeof ts
->SyntaxKind : typeof ts.SyntaxKind
->IfStatement : ts.SyntaxKind
+>ts.SyntaxKind.IfStatement : ts.SyntaxKind, Symbol(ts.SyntaxKind.IfStatement, Decl(typescript.d.ts, 206, 34))
+>ts.SyntaxKind : typeof ts.SyntaxKind, Symbol(ts.SyntaxKind, Decl(typescript.d.ts, 22, 5))
+>ts : typeof ts, Symbol(ts, Decl(APISample_linter.ts, 11, 6))
+>SyntaxKind : typeof ts.SyntaxKind, Symbol(ts.SyntaxKind, Decl(typescript.d.ts, 22, 5))
+>IfStatement : ts.SyntaxKind, Symbol(ts.SyntaxKind.IfStatement, Decl(typescript.d.ts, 206, 34))
let ifStatement = (node);
->ifStatement : ts.IfStatement
+>ifStatement : ts.IfStatement, Symbol(ifStatement, Decl(APISample_linter.ts, 28, 19))
>(node) : ts.IfStatement
>node : ts.IfStatement
->ts : unknown
->IfStatement : ts.IfStatement
->node : ts.Node
+>ts : any, Symbol(ts, Decl(APISample_linter.ts, 11, 6))
+>IfStatement : ts.IfStatement, Symbol(ts.IfStatement, Decl(typescript.d.ts, 583, 5))
+>node : ts.Node, Symbol(node, Decl(APISample_linter.ts, 16, 24))
if (ifStatement.thenStatement.kind !== ts.SyntaxKind.Block) {
>ifStatement.thenStatement.kind !== ts.SyntaxKind.Block : boolean
->ifStatement.thenStatement.kind : ts.SyntaxKind
->ifStatement.thenStatement : ts.Statement
->ifStatement : ts.IfStatement
->thenStatement : ts.Statement
->kind : ts.SyntaxKind
->ts.SyntaxKind.Block : ts.SyntaxKind
->ts.SyntaxKind : typeof ts.SyntaxKind
->ts : typeof ts
->SyntaxKind : typeof ts.SyntaxKind
->Block : ts.SyntaxKind
+>ifStatement.thenStatement.kind : ts.SyntaxKind, Symbol(ts.Node.kind, Decl(typescript.d.ts, 297, 38))
+>ifStatement.thenStatement : ts.Statement, Symbol(ts.IfStatement.thenStatement, Decl(typescript.d.ts, 585, 31))
+>ifStatement : ts.IfStatement, Symbol(ifStatement, Decl(APISample_linter.ts, 28, 19))
+>thenStatement : ts.Statement, Symbol(ts.IfStatement.thenStatement, Decl(typescript.d.ts, 585, 31))
+>kind : ts.SyntaxKind, Symbol(ts.Node.kind, Decl(typescript.d.ts, 297, 38))
+>ts.SyntaxKind.Block : ts.SyntaxKind, Symbol(ts.SyntaxKind.Block, Decl(typescript.d.ts, 202, 36))
+>ts.SyntaxKind : typeof ts.SyntaxKind, Symbol(ts.SyntaxKind, Decl(typescript.d.ts, 22, 5))
+>ts : typeof ts, Symbol(ts, Decl(APISample_linter.ts, 11, 6))
+>SyntaxKind : typeof ts.SyntaxKind, Symbol(ts.SyntaxKind, Decl(typescript.d.ts, 22, 5))
+>Block : ts.SyntaxKind, Symbol(ts.SyntaxKind.Block, Decl(typescript.d.ts, 202, 36))
report(ifStatement.thenStatement, "An if statement's contents should be wrapped in a block body.");
>report(ifStatement.thenStatement, "An if statement's contents should be wrapped in a block body.") : void
->report : (node: ts.Node, message: string) => void
->ifStatement.thenStatement : ts.Statement
->ifStatement : ts.IfStatement
->thenStatement : ts.Statement
+>report : (node: ts.Node, message: string) => void, Symbol(report, Decl(APISample_linter.ts, 48, 5))
+>ifStatement.thenStatement : ts.Statement, Symbol(ts.IfStatement.thenStatement, Decl(typescript.d.ts, 585, 31))
+>ifStatement : ts.IfStatement, Symbol(ifStatement, Decl(APISample_linter.ts, 28, 19))
+>thenStatement : ts.Statement, Symbol(ts.IfStatement.thenStatement, Decl(typescript.d.ts, 585, 31))
+>"An if statement's contents should be wrapped in a block body." : string
}
if (ifStatement.elseStatement &&
>ifStatement.elseStatement && ifStatement.elseStatement.kind !== ts.SyntaxKind.Block && ifStatement.elseStatement.kind !== ts.SyntaxKind.IfStatement : boolean
>ifStatement.elseStatement && ifStatement.elseStatement.kind !== ts.SyntaxKind.Block : boolean
->ifStatement.elseStatement : ts.Statement
->ifStatement : ts.IfStatement
->elseStatement : ts.Statement
+>ifStatement.elseStatement : ts.Statement, Symbol(ts.IfStatement.elseStatement, Decl(typescript.d.ts, 586, 33))
+>ifStatement : ts.IfStatement, Symbol(ifStatement, Decl(APISample_linter.ts, 28, 19))
+>elseStatement : ts.Statement, Symbol(ts.IfStatement.elseStatement, Decl(typescript.d.ts, 586, 33))
ifStatement.elseStatement.kind !== ts.SyntaxKind.Block &&
>ifStatement.elseStatement.kind !== ts.SyntaxKind.Block : boolean
->ifStatement.elseStatement.kind : ts.SyntaxKind
->ifStatement.elseStatement : ts.Statement
->ifStatement : ts.IfStatement
->elseStatement : ts.Statement
->kind : ts.SyntaxKind
->ts.SyntaxKind.Block : ts.SyntaxKind
->ts.SyntaxKind : typeof ts.SyntaxKind
->ts : typeof ts
->SyntaxKind : typeof ts.SyntaxKind
->Block : ts.SyntaxKind
+>ifStatement.elseStatement.kind : ts.SyntaxKind, Symbol(ts.Node.kind, Decl(typescript.d.ts, 297, 38))
+>ifStatement.elseStatement : ts.Statement, Symbol(ts.IfStatement.elseStatement, Decl(typescript.d.ts, 586, 33))
+>ifStatement : ts.IfStatement, Symbol(ifStatement, Decl(APISample_linter.ts, 28, 19))
+>elseStatement : ts.Statement, Symbol(ts.IfStatement.elseStatement, Decl(typescript.d.ts, 586, 33))
+>kind : ts.SyntaxKind, Symbol(ts.Node.kind, Decl(typescript.d.ts, 297, 38))
+>ts.SyntaxKind.Block : ts.SyntaxKind, Symbol(ts.SyntaxKind.Block, Decl(typescript.d.ts, 202, 36))
+>ts.SyntaxKind : typeof ts.SyntaxKind, Symbol(ts.SyntaxKind, Decl(typescript.d.ts, 22, 5))
+>ts : typeof ts, Symbol(ts, Decl(APISample_linter.ts, 11, 6))
+>SyntaxKind : typeof ts.SyntaxKind, Symbol(ts.SyntaxKind, Decl(typescript.d.ts, 22, 5))
+>Block : ts.SyntaxKind, Symbol(ts.SyntaxKind.Block, Decl(typescript.d.ts, 202, 36))
ifStatement.elseStatement.kind !== ts.SyntaxKind.IfStatement) {
>ifStatement.elseStatement.kind !== ts.SyntaxKind.IfStatement : boolean
->ifStatement.elseStatement.kind : ts.SyntaxKind
->ifStatement.elseStatement : ts.Statement
->ifStatement : ts.IfStatement
->elseStatement : ts.Statement
->kind : ts.SyntaxKind
->ts.SyntaxKind.IfStatement : ts.SyntaxKind
->ts.SyntaxKind : typeof ts.SyntaxKind
->ts : typeof ts
->SyntaxKind : typeof ts.SyntaxKind
->IfStatement : ts.SyntaxKind
+>ifStatement.elseStatement.kind : ts.SyntaxKind, Symbol(ts.Node.kind, Decl(typescript.d.ts, 297, 38))
+>ifStatement.elseStatement : ts.Statement, Symbol(ts.IfStatement.elseStatement, Decl(typescript.d.ts, 586, 33))
+>ifStatement : ts.IfStatement, Symbol(ifStatement, Decl(APISample_linter.ts, 28, 19))
+>elseStatement : ts.Statement, Symbol(ts.IfStatement.elseStatement, Decl(typescript.d.ts, 586, 33))
+>kind : ts.SyntaxKind, Symbol(ts.Node.kind, Decl(typescript.d.ts, 297, 38))
+>ts.SyntaxKind.IfStatement : ts.SyntaxKind, Symbol(ts.SyntaxKind.IfStatement, Decl(typescript.d.ts, 206, 34))
+>ts.SyntaxKind : typeof ts.SyntaxKind, Symbol(ts.SyntaxKind, Decl(typescript.d.ts, 22, 5))
+>ts : typeof ts, Symbol(ts, Decl(APISample_linter.ts, 11, 6))
+>SyntaxKind : typeof ts.SyntaxKind, Symbol(ts.SyntaxKind, Decl(typescript.d.ts, 22, 5))
+>IfStatement : ts.SyntaxKind, Symbol(ts.SyntaxKind.IfStatement, Decl(typescript.d.ts, 206, 34))
report(ifStatement.elseStatement, "An else statement's contents should be wrapped in a block body.");
>report(ifStatement.elseStatement, "An else statement's contents should be wrapped in a block body.") : void
->report : (node: ts.Node, message: string) => void
->ifStatement.elseStatement : ts.Statement
->ifStatement : ts.IfStatement
->elseStatement : ts.Statement
+>report : (node: ts.Node, message: string) => void, Symbol(report, Decl(APISample_linter.ts, 48, 5))
+>ifStatement.elseStatement : ts.Statement, Symbol(ts.IfStatement.elseStatement, Decl(typescript.d.ts, 586, 33))
+>ifStatement : ts.IfStatement, Symbol(ifStatement, Decl(APISample_linter.ts, 28, 19))
+>elseStatement : ts.Statement, Symbol(ts.IfStatement.elseStatement, Decl(typescript.d.ts, 586, 33))
+>"An else statement's contents should be wrapped in a block body." : string
}
break;
case ts.SyntaxKind.BinaryExpression:
->ts.SyntaxKind.BinaryExpression : ts.SyntaxKind
->ts.SyntaxKind : typeof ts.SyntaxKind
->ts : typeof ts
->SyntaxKind : typeof ts.SyntaxKind
->BinaryExpression : ts.SyntaxKind
+>ts.SyntaxKind.BinaryExpression : ts.SyntaxKind, Symbol(ts.SyntaxKind.BinaryExpression, Decl(typescript.d.ts, 192, 37))
+>ts.SyntaxKind : typeof ts.SyntaxKind, Symbol(ts.SyntaxKind, Decl(typescript.d.ts, 22, 5))
+>ts : typeof ts, Symbol(ts, Decl(APISample_linter.ts, 11, 6))
+>SyntaxKind : typeof ts.SyntaxKind, Symbol(ts.SyntaxKind, Decl(typescript.d.ts, 22, 5))
+>BinaryExpression : ts.SyntaxKind, Symbol(ts.SyntaxKind.BinaryExpression, Decl(typescript.d.ts, 192, 37))
let op = (node).operatorToken.kind;
->op : ts.SyntaxKind
->(node).operatorToken.kind : ts.SyntaxKind
->(node).operatorToken : ts.Node
+>op : ts.SyntaxKind, Symbol(op, Decl(APISample_linter.ts, 40, 19))
+>(node).operatorToken.kind : ts.SyntaxKind, Symbol(ts.Node.kind, Decl(typescript.d.ts, 297, 38))
+>(node).operatorToken : ts.Node, Symbol(ts.BinaryExpression.operatorToken, Decl(typescript.d.ts, 497, 25))
>(node) : ts.BinaryExpression
>node : ts.BinaryExpression
->ts : unknown
->BinaryExpression : ts.BinaryExpression
->node : ts.Node
->operatorToken : ts.Node
->kind : ts.SyntaxKind
+>ts : any, Symbol(ts, Decl(APISample_linter.ts, 11, 6))
+>BinaryExpression : ts.BinaryExpression, Symbol(ts.BinaryExpression, Decl(typescript.d.ts, 495, 5))
+>node : ts.Node, Symbol(node, Decl(APISample_linter.ts, 16, 24))
+>operatorToken : ts.Node, Symbol(ts.BinaryExpression.operatorToken, Decl(typescript.d.ts, 497, 25))
+>kind : ts.SyntaxKind, Symbol(ts.Node.kind, Decl(typescript.d.ts, 297, 38))
if (op === ts.SyntaxKind.EqualsEqualsToken || op == ts.SyntaxKind.ExclamationEqualsToken) {
>op === ts.SyntaxKind.EqualsEqualsToken || op == ts.SyntaxKind.ExclamationEqualsToken : boolean
>op === ts.SyntaxKind.EqualsEqualsToken : boolean
->op : ts.SyntaxKind
->ts.SyntaxKind.EqualsEqualsToken : ts.SyntaxKind
->ts.SyntaxKind : typeof ts.SyntaxKind
->ts : typeof ts
->SyntaxKind : typeof ts.SyntaxKind
->EqualsEqualsToken : ts.SyntaxKind
+>op : ts.SyntaxKind, Symbol(op, Decl(APISample_linter.ts, 40, 19))
+>ts.SyntaxKind.EqualsEqualsToken : ts.SyntaxKind, Symbol(ts.SyntaxKind.EqualsEqualsToken, Decl(typescript.d.ts, 51, 36))
+>ts.SyntaxKind : typeof ts.SyntaxKind, Symbol(ts.SyntaxKind, Decl(typescript.d.ts, 22, 5))
+>ts : typeof ts, Symbol(ts, Decl(APISample_linter.ts, 11, 6))
+>SyntaxKind : typeof ts.SyntaxKind, Symbol(ts.SyntaxKind, Decl(typescript.d.ts, 22, 5))
+>EqualsEqualsToken : ts.SyntaxKind, Symbol(ts.SyntaxKind.EqualsEqualsToken, Decl(typescript.d.ts, 51, 36))
>op == ts.SyntaxKind.ExclamationEqualsToken : boolean
->op : ts.SyntaxKind
->ts.SyntaxKind.ExclamationEqualsToken : ts.SyntaxKind
->ts.SyntaxKind : typeof ts.SyntaxKind
->ts : typeof ts
->SyntaxKind : typeof ts.SyntaxKind
->ExclamationEqualsToken : ts.SyntaxKind
+>op : ts.SyntaxKind, Symbol(op, Decl(APISample_linter.ts, 40, 19))
+>ts.SyntaxKind.ExclamationEqualsToken : ts.SyntaxKind, Symbol(ts.SyntaxKind.ExclamationEqualsToken, Decl(typescript.d.ts, 52, 31))
+>ts.SyntaxKind : typeof ts.SyntaxKind, Symbol(ts.SyntaxKind, Decl(typescript.d.ts, 22, 5))
+>ts : typeof ts, Symbol(ts, Decl(APISample_linter.ts, 11, 6))
+>SyntaxKind : typeof ts.SyntaxKind, Symbol(ts.SyntaxKind, Decl(typescript.d.ts, 22, 5))
+>ExclamationEqualsToken : ts.SyntaxKind, Symbol(ts.SyntaxKind.ExclamationEqualsToken, Decl(typescript.d.ts, 52, 31))
report(node, "Use '===' and '!=='.")
>report(node, "Use '===' and '!=='.") : void
->report : (node: ts.Node, message: string) => void
->node : ts.Node
+>report : (node: ts.Node, message: string) => void, Symbol(report, Decl(APISample_linter.ts, 48, 5))
+>node : ts.Node, Symbol(node, Decl(APISample_linter.ts, 16, 24))
+>"Use '===' and '!=='." : string
}
break;
}
ts.forEachChild(node, delintNode);
>ts.forEachChild(node, delintNode) : void
->ts.forEachChild : (node: ts.Node, cbNode: (node: ts.Node) => T, cbNodeArray?: (nodes: ts.Node[]) => T) => T
->ts : typeof ts
->forEachChild : (node: ts.Node, cbNode: (node: ts.Node) => T, cbNodeArray?: (nodes: ts.Node[]) => T) => T
->node : ts.Node
->delintNode : (node: ts.Node) => void
+>ts.forEachChild : (node: ts.Node, cbNode: (node: ts.Node) => T, cbNodeArray?: (nodes: ts.Node[]) => T) => T, Symbol(ts.forEachChild, Decl(typescript.d.ts, 1186, 48))
+>ts : typeof ts, Symbol(ts, Decl(APISample_linter.ts, 11, 6))
+>forEachChild : (node: ts.Node, cbNode: (node: ts.Node) => T, cbNodeArray?: (nodes: ts.Node[]) => T) => T, Symbol(ts.forEachChild, Decl(typescript.d.ts, 1186, 48))
+>node : ts.Node, Symbol(node, Decl(APISample_linter.ts, 16, 24))
+>delintNode : (node: ts.Node) => void, Symbol(delintNode, Decl(APISample_linter.ts, 14, 27))
}
function report(node: ts.Node, message: string) {
->report : (node: ts.Node, message: string) => void
->node : ts.Node
->ts : unknown
->Node : ts.Node
->message : string
+>report : (node: ts.Node, message: string) => void, Symbol(report, Decl(APISample_linter.ts, 48, 5))
+>node : ts.Node, Symbol(node, Decl(APISample_linter.ts, 50, 20))
+>ts : any, Symbol(ts, Decl(APISample_linter.ts, 11, 6))
+>Node : ts.Node, Symbol(ts.Node, Decl(typescript.d.ts, 296, 5), Decl(typescript.d.ts, 1221, 32))
+>message : string, Symbol(message, Decl(APISample_linter.ts, 50, 34))
let { line, character } = sourceFile.getLineAndCharacterOfPosition(node.getStart());
->line : number
->character : number
+>line : number, Symbol(line, Decl(APISample_linter.ts, 51, 13))
+>character : number, Symbol(character, Decl(APISample_linter.ts, 51, 19))
>sourceFile.getLineAndCharacterOfPosition(node.getStart()) : ts.LineAndCharacter
->sourceFile.getLineAndCharacterOfPosition : (pos: number) => ts.LineAndCharacter
->sourceFile : ts.SourceFile
->getLineAndCharacterOfPosition : (pos: number) => ts.LineAndCharacter
+>sourceFile.getLineAndCharacterOfPosition : (pos: number) => ts.LineAndCharacter, Symbol(ts.SourceFile.getLineAndCharacterOfPosition, Decl(typescript.d.ts, 1263, 46))
+>sourceFile : ts.SourceFile, Symbol(sourceFile, Decl(APISample_linter.ts, 13, 23))
+>getLineAndCharacterOfPosition : (pos: number) => ts.LineAndCharacter, Symbol(ts.SourceFile.getLineAndCharacterOfPosition, Decl(typescript.d.ts, 1263, 46))
>node.getStart() : number
->node.getStart : (sourceFile?: ts.SourceFile) => number
->node : ts.Node
->getStart : (sourceFile?: ts.SourceFile) => number
+>node.getStart : (sourceFile?: ts.SourceFile) => number, Symbol(ts.Node.getStart, Decl(typescript.d.ts, 1226, 53))
+>node : ts.Node, Symbol(node, Decl(APISample_linter.ts, 50, 20))
+>getStart : (sourceFile?: ts.SourceFile) => number, Symbol(ts.Node.getStart, Decl(typescript.d.ts, 1226, 53))
console.log(`${sourceFile.fileName} (${line + 1},${character + 1}): ${message}`);
>console.log(`${sourceFile.fileName} (${line + 1},${character + 1}): ${message}`) : any
>console.log : any
->console : any
+>console : any, Symbol(console, Decl(APISample_linter.ts, 8, 11))
>log : any
->sourceFile.fileName : string
->sourceFile : ts.SourceFile
->fileName : string
+>`${sourceFile.fileName} (${line + 1},${character + 1}): ${message}` : string
+>sourceFile.fileName : string, Symbol(ts.SourceFile.fileName, Decl(typescript.d.ts, 743, 29))
+>sourceFile : ts.SourceFile, Symbol(sourceFile, Decl(APISample_linter.ts, 13, 23))
+>fileName : string, Symbol(ts.SourceFile.fileName, Decl(typescript.d.ts, 743, 29))
>line + 1 : number
->line : number
+>line : number, Symbol(line, Decl(APISample_linter.ts, 51, 13))
+>1 : number
>character + 1 : number
->character : number
->message : string
+>character : number, Symbol(character, Decl(APISample_linter.ts, 51, 19))
+>1 : number
+>message : string, Symbol(message, Decl(APISample_linter.ts, 50, 34))
}
}
const fileNames = process.argv.slice(2);
->fileNames : any
+>fileNames : any, Symbol(fileNames, Decl(APISample_linter.ts, 56, 5))
>process.argv.slice(2) : any
>process.argv.slice : any
>process.argv : any
->process : any
+>process : any, Symbol(process, Decl(APISample_linter.ts, 7, 11))
>argv : any
>slice : any
+>2 : number
fileNames.forEach(fileName => {
>fileNames.forEach(fileName => { // Parse a file let sourceFile = ts.createSourceFile(fileName, readFileSync(fileName).toString(), ts.ScriptTarget.ES6, /*setParentNodes */ true); // delint it delint(sourceFile);}) : any
>fileNames.forEach : any
->fileNames : any
+>fileNames : any, Symbol(fileNames, Decl(APISample_linter.ts, 56, 5))
>forEach : any
>fileName => { // Parse a file let sourceFile = ts.createSourceFile(fileName, readFileSync(fileName).toString(), ts.ScriptTarget.ES6, /*setParentNodes */ true); // delint it delint(sourceFile);} : (fileName: any) => void
->fileName : any
+>fileName : any, Symbol(fileName, Decl(APISample_linter.ts, 57, 18))
// Parse a file
let sourceFile = ts.createSourceFile(fileName, readFileSync(fileName).toString(), ts.ScriptTarget.ES6, /*setParentNodes */ true);
->sourceFile : ts.SourceFile
+>sourceFile : ts.SourceFile, Symbol(sourceFile, Decl(APISample_linter.ts, 59, 7))
>ts.createSourceFile(fileName, readFileSync(fileName).toString(), ts.ScriptTarget.ES6, /*setParentNodes */ true) : ts.SourceFile
->ts.createSourceFile : (fileName: string, sourceText: string, languageVersion: ts.ScriptTarget, setParentNodes?: boolean) => ts.SourceFile
->ts : typeof ts
->createSourceFile : (fileName: string, sourceText: string, languageVersion: ts.ScriptTarget, setParentNodes?: boolean) => ts.SourceFile
->fileName : any
+>ts.createSourceFile : (fileName: string, sourceText: string, languageVersion: ts.ScriptTarget, setParentNodes?: boolean) => ts.SourceFile, Symbol(ts.createSourceFile, Decl(typescript.d.ts, 1190, 62))
+>ts : typeof ts, Symbol(ts, Decl(APISample_linter.ts, 11, 6))
+>createSourceFile : (fileName: string, sourceText: string, languageVersion: ts.ScriptTarget, setParentNodes?: boolean) => ts.SourceFile, Symbol(ts.createSourceFile, Decl(typescript.d.ts, 1190, 62))
+>fileName : any, Symbol(fileName, Decl(APISample_linter.ts, 57, 18))
>readFileSync(fileName).toString() : any
>readFileSync(fileName).toString : any
>readFileSync(fileName) : any
->readFileSync : any
->fileName : any
+>readFileSync : any, Symbol(readFileSync, Decl(APISample_linter.ts, 9, 11))
+>fileName : any, Symbol(fileName, Decl(APISample_linter.ts, 57, 18))
>toString : any
->ts.ScriptTarget.ES6 : ts.ScriptTarget
->ts.ScriptTarget : typeof ts.ScriptTarget
->ts : typeof ts
->ScriptTarget : typeof ts.ScriptTarget
->ES6 : ts.ScriptTarget
+>ts.ScriptTarget.ES6 : ts.ScriptTarget, Symbol(ts.ScriptTarget.ES6, Decl(typescript.d.ts, 1118, 16))
+>ts.ScriptTarget : typeof ts.ScriptTarget, Symbol(ts.ScriptTarget, Decl(typescript.d.ts, 1115, 5))
+>ts : typeof ts, Symbol(ts, Decl(APISample_linter.ts, 11, 6))
+>ScriptTarget : typeof ts.ScriptTarget, Symbol(ts.ScriptTarget, Decl(typescript.d.ts, 1115, 5))
+>ES6 : ts.ScriptTarget, Symbol(ts.ScriptTarget.ES6, Decl(typescript.d.ts, 1118, 16))
+>true : boolean
// delint it
delint(sourceFile);
>delint(sourceFile) : void
->delint : (sourceFile: ts.SourceFile) => void
->sourceFile : ts.SourceFile
+>delint : (sourceFile: ts.SourceFile) => void, Symbol(delint, Decl(APISample_linter.ts, 11, 33))
+>sourceFile : ts.SourceFile, Symbol(sourceFile, Decl(APISample_linter.ts, 59, 7))
});
diff --git a/tests/baselines/reference/APISample_transform.types b/tests/baselines/reference/APISample_transform.types
index d98d2cfad00..6e27f70d877 100644
--- a/tests/baselines/reference/APISample_transform.types
+++ b/tests/baselines/reference/APISample_transform.types
@@ -7,37 +7,38 @@
*/
declare var console: any;
->console : any
+>console : any, Symbol(console, Decl(APISample_transform.ts, 7, 11))
import * as ts from "typescript";
->ts : typeof ts
+>ts : typeof ts, Symbol(ts, Decl(APISample_transform.ts, 9, 6))
const source = "let x: string = 'string'";
->source : string
+>source : string, Symbol(source, Decl(APISample_transform.ts, 11, 5))
+>"let x: string = 'string'" : string
let result = ts.transpile(source, { module: ts.ModuleKind.CommonJS });
->result : string
+>result : string, Symbol(result, Decl(APISample_transform.ts, 13, 3))
>ts.transpile(source, { module: ts.ModuleKind.CommonJS }) : string
->ts.transpile : (input: string, compilerOptions?: ts.CompilerOptions, fileName?: string, diagnostics?: ts.Diagnostic[]) => string
->ts : typeof ts
->transpile : (input: string, compilerOptions?: ts.CompilerOptions, fileName?: string, diagnostics?: ts.Diagnostic[]) => string
->source : string
+>ts.transpile : (input: string, compilerOptions?: ts.CompilerOptions, fileName?: string, diagnostics?: ts.Diagnostic[]) => string, Symbol(ts.transpile, Decl(typescript.d.ts, 1729, 5))
+>ts : typeof ts, Symbol(ts, Decl(APISample_transform.ts, 9, 6))
+>transpile : (input: string, compilerOptions?: ts.CompilerOptions, fileName?: string, diagnostics?: ts.Diagnostic[]) => string, Symbol(ts.transpile, Decl(typescript.d.ts, 1729, 5))
+>source : string, Symbol(source, Decl(APISample_transform.ts, 11, 5))
>{ module: ts.ModuleKind.CommonJS } : { [x: string]: ts.ModuleKind; module: ts.ModuleKind; }
->module : ts.ModuleKind
->ts.ModuleKind.CommonJS : ts.ModuleKind
->ts.ModuleKind : typeof ts.ModuleKind
->ts : typeof ts
->ModuleKind : typeof ts.ModuleKind
->CommonJS : ts.ModuleKind
+>module : ts.ModuleKind, Symbol(module, Decl(APISample_transform.ts, 13, 35))
+>ts.ModuleKind.CommonJS : ts.ModuleKind, Symbol(ts.ModuleKind.CommonJS, Decl(typescript.d.ts, 1108, 17))
+>ts.ModuleKind : typeof ts.ModuleKind, Symbol(ts.ModuleKind, Decl(typescript.d.ts, 1106, 5))
+>ts : typeof ts, Symbol(ts, Decl(APISample_transform.ts, 9, 6))
+>ModuleKind : typeof ts.ModuleKind, Symbol(ts.ModuleKind, Decl(typescript.d.ts, 1106, 5))
+>CommonJS : ts.ModuleKind, Symbol(ts.ModuleKind.CommonJS, Decl(typescript.d.ts, 1108, 17))
console.log(JSON.stringify(result));
>console.log(JSON.stringify(result)) : any
>console.log : any
->console : any
+>console : any, Symbol(console, Decl(APISample_transform.ts, 7, 11))
>log : any
>JSON.stringify(result) : string
->JSON.stringify : { (value: any): string; (value: any, replacer: (key: string, value: any) => any): string; (value: any, replacer: any[]): string; (value: any, replacer: (key: string, value: any) => any, space: any): string; (value: any, replacer: any[], space: any): string; }
->JSON : JSON
->stringify : { (value: any): string; (value: any, replacer: (key: string, value: any) => any): string; (value: any, replacer: any[]): string; (value: any, replacer: (key: string, value: any) => any, space: any): string; (value: any, replacer: any[], space: any): string; }
->result : string
+>JSON.stringify : { (value: any): string; (value: any, replacer: (key: string, value: any) => any): string; (value: any, replacer: any[]): string; (value: any, replacer: (key: string, value: any) => any, space: any): string; (value: any, replacer: any[], space: any): string; }, Symbol(JSON.stringify, Decl(lib.d.ts, 964, 70), Decl(lib.d.ts, 969, 34), Decl(lib.d.ts, 975, 78), Decl(lib.d.ts, 981, 51), Decl(lib.d.ts, 988, 90))
+>JSON : JSON, Symbol(JSON, Decl(lib.d.ts, 955, 42), Decl(lib.d.ts, 1000, 11))
+>stringify : { (value: any): string; (value: any, replacer: (key: string, value: any) => any): string; (value: any, replacer: any[]): string; (value: any, replacer: (key: string, value: any) => any, space: any): string; (value: any, replacer: any[], space: any): string; }, Symbol(JSON.stringify, Decl(lib.d.ts, 964, 70), Decl(lib.d.ts, 969, 34), Decl(lib.d.ts, 975, 78), Decl(lib.d.ts, 981, 51), Decl(lib.d.ts, 988, 90))
+>result : string, Symbol(result, Decl(APISample_transform.ts, 13, 3))
diff --git a/tests/baselines/reference/APISample_watcher.types b/tests/baselines/reference/APISample_watcher.types
index 5f123ea839b..abc915e3776 100644
--- a/tests/baselines/reference/APISample_watcher.types
+++ b/tests/baselines/reference/APISample_watcher.types
@@ -7,197 +7,200 @@
*/
declare var process: any;
->process : any
+>process : any, Symbol(process, Decl(APISample_watcher.ts, 7, 11))
declare var console: any;
->console : any
+>console : any, Symbol(console, Decl(APISample_watcher.ts, 8, 11))
declare var fs: any;
->fs : any
+>fs : any, Symbol(fs, Decl(APISample_watcher.ts, 9, 11))
declare var path: any;
->path : any
+>path : any, Symbol(path, Decl(APISample_watcher.ts, 10, 11))
import * as ts from "typescript";
->ts : typeof ts
+>ts : typeof ts, Symbol(ts, Decl(APISample_watcher.ts, 12, 6))
function watch(rootFileNames: string[], options: ts.CompilerOptions) {
->watch : (rootFileNames: string[], options: ts.CompilerOptions) => void
->rootFileNames : string[]
->options : ts.CompilerOptions
->ts : unknown
->CompilerOptions : ts.CompilerOptions
+>watch : (rootFileNames: string[], options: ts.CompilerOptions) => void, Symbol(watch, Decl(APISample_watcher.ts, 12, 33))
+>rootFileNames : string[], Symbol(rootFileNames, Decl(APISample_watcher.ts, 14, 15))
+>options : ts.CompilerOptions, Symbol(options, Decl(APISample_watcher.ts, 14, 39))
+>ts : any, Symbol(ts, Decl(APISample_watcher.ts, 12, 6))
+>CompilerOptions : ts.CompilerOptions, Symbol(ts.CompilerOptions, Decl(typescript.d.ts, 1074, 5))
const files: ts.Map<{ version: number }> = {};
->files : ts.Map<{ version: number; }>
->ts : unknown
->Map : ts.Map
->version : number
+>files : ts.Map<{ version: number; }>, Symbol(files, Decl(APISample_watcher.ts, 15, 9))
+>ts : any, Symbol(ts, Decl(APISample_watcher.ts, 12, 6))
+>Map : ts.Map, Symbol(ts.Map, Decl(typescript.d.ts, 15, 29))
+>version : number, Symbol(version, Decl(APISample_watcher.ts, 15, 25))
>{} : { [x: string]: undefined; }
// initialize the list of files
rootFileNames.forEach(fileName => {
>rootFileNames.forEach(fileName => { files[fileName] = { version: 0 }; }) : void
->rootFileNames.forEach : (callbackfn: (value: string, index: number, array: string[]) => void, thisArg?: any) => void
->rootFileNames : string[]
->forEach : (callbackfn: (value: string, index: number, array: string[]) => void, thisArg?: any) => void
+>rootFileNames.forEach : (callbackfn: (value: string, index: number, array: string[]) => void, thisArg?: any) => void, Symbol(Array.forEach, Decl(lib.d.ts, 1108, 95))
+>rootFileNames : string[], Symbol(rootFileNames, Decl(APISample_watcher.ts, 14, 15))
+>forEach : (callbackfn: (value: string, index: number, array: string[]) => void, thisArg?: any) => void, Symbol(Array.forEach, Decl(lib.d.ts, 1108, 95))
>fileName => { files[fileName] = { version: 0 }; } : (fileName: string) => void
->fileName : string
+>fileName : string, Symbol(fileName, Decl(APISample_watcher.ts, 18, 26))
files[fileName] = { version: 0 };
>files[fileName] = { version: 0 } : { version: number; }
>files[fileName] : { version: number; }
->files : ts.Map<{ version: number; }>
->fileName : string
+>files : ts.Map<{ version: number; }>, Symbol(files, Decl(APISample_watcher.ts, 15, 9))
+>fileName : string, Symbol(fileName, Decl(APISample_watcher.ts, 18, 26))
>{ version: 0 } : { version: number; }
->version : number
+>version : number, Symbol(version, Decl(APISample_watcher.ts, 19, 27))
+>0 : number
});
// Create the language service host to allow the LS to communicate with the host
const servicesHost: ts.LanguageServiceHost = {
->servicesHost : ts.LanguageServiceHost
->ts : unknown
->LanguageServiceHost : ts.LanguageServiceHost
+>servicesHost : ts.LanguageServiceHost, Symbol(servicesHost, Decl(APISample_watcher.ts, 23, 9))
+>ts : any, Symbol(ts, Decl(APISample_watcher.ts, 12, 6))
+>LanguageServiceHost : ts.LanguageServiceHost, Symbol(ts.LanguageServiceHost, Decl(typescript.d.ts, 1295, 5))
>{ getScriptFileNames: () => rootFileNames, getScriptVersion: (fileName) => files[fileName] && files[fileName].version.toString(), getScriptSnapshot: (fileName) => { if (!fs.existsSync(fileName)) { return undefined; } return ts.ScriptSnapshot.fromString(fs.readFileSync(fileName).toString()); }, getCurrentDirectory: () => process.cwd(), getCompilationSettings: () => options, getDefaultLibFileName: (options) => ts.getDefaultLibFilePath(options), } : { getScriptFileNames: () => string[]; getScriptVersion: (fileName: string) => string; getScriptSnapshot: (fileName: string) => ts.IScriptSnapshot; getCurrentDirectory: () => any; getCompilationSettings: () => ts.CompilerOptions; getDefaultLibFileName: (options: ts.CompilerOptions) => string; }
getScriptFileNames: () => rootFileNames,
->getScriptFileNames : () => string[]
+>getScriptFileNames : () => string[], Symbol(getScriptFileNames, Decl(APISample_watcher.ts, 23, 50))
>() => rootFileNames : () => string[]
->rootFileNames : string[]
+>rootFileNames : string[], Symbol(rootFileNames, Decl(APISample_watcher.ts, 14, 15))
getScriptVersion: (fileName) => files[fileName] && files[fileName].version.toString(),
->getScriptVersion : (fileName: string) => string
+>getScriptVersion : (fileName: string) => string, Symbol(getScriptVersion, Decl(APISample_watcher.ts, 24, 48))
>(fileName) => files[fileName] && files[fileName].version.toString() : (fileName: string) => string
->fileName : string
+>fileName : string, Symbol(fileName, Decl(APISample_watcher.ts, 25, 27))
>files[fileName] && files[fileName].version.toString() : string
>files[fileName] : { version: number; }
->files : ts.Map<{ version: number; }>
->fileName : string
+>files : ts.Map<{ version: number; }>, Symbol(files, Decl(APISample_watcher.ts, 15, 9))
+>fileName : string, Symbol(fileName, Decl(APISample_watcher.ts, 25, 27))
>files[fileName].version.toString() : string
->files[fileName].version.toString : (radix?: number) => string
->files[fileName].version : number
+>files[fileName].version.toString : (radix?: number) => string, Symbol(Number.toString, Decl(lib.d.ts, 458, 18))
+>files[fileName].version : number, Symbol(version, Decl(APISample_watcher.ts, 15, 25))
>files[fileName] : { version: number; }
->files : ts.Map<{ version: number; }>
->fileName : string
->version : number
->toString : (radix?: number) => string
+>files : ts.Map<{ version: number; }>, Symbol(files, Decl(APISample_watcher.ts, 15, 9))
+>fileName : string, Symbol(fileName, Decl(APISample_watcher.ts, 25, 27))
+>version : number, Symbol(version, Decl(APISample_watcher.ts, 15, 25))
+>toString : (radix?: number) => string, Symbol(Number.toString, Decl(lib.d.ts, 458, 18))
getScriptSnapshot: (fileName) => {
->getScriptSnapshot : (fileName: string) => ts.IScriptSnapshot
+>getScriptSnapshot : (fileName: string) => ts.IScriptSnapshot, Symbol(getScriptSnapshot, Decl(APISample_watcher.ts, 25, 94))
>(fileName) => { if (!fs.existsSync(fileName)) { return undefined; } return ts.ScriptSnapshot.fromString(fs.readFileSync(fileName).toString()); } : (fileName: string) => ts.IScriptSnapshot
->fileName : string
+>fileName : string, Symbol(fileName, Decl(APISample_watcher.ts, 26, 28))
if (!fs.existsSync(fileName)) {
>!fs.existsSync(fileName) : boolean
>fs.existsSync(fileName) : any
>fs.existsSync : any
->fs : any
+>fs : any, Symbol(fs, Decl(APISample_watcher.ts, 9, 11))
>existsSync : any
->fileName : string
+>fileName : string, Symbol(fileName, Decl(APISample_watcher.ts, 26, 28))
return undefined;
->undefined : undefined
+>undefined : undefined, Symbol(undefined)
}
return ts.ScriptSnapshot.fromString(fs.readFileSync(fileName).toString());
>ts.ScriptSnapshot.fromString(fs.readFileSync(fileName).toString()) : ts.IScriptSnapshot
->ts.ScriptSnapshot.fromString : (text: string) => ts.IScriptSnapshot
->ts.ScriptSnapshot : typeof ts.ScriptSnapshot
->ts : typeof ts
->ScriptSnapshot : typeof ts.ScriptSnapshot
->fromString : (text: string) => ts.IScriptSnapshot
+>ts.ScriptSnapshot.fromString : (text: string) => ts.IScriptSnapshot, Symbol(ts.ScriptSnapshot.fromString, Decl(typescript.d.ts, 1288, 27))
+>ts.ScriptSnapshot : typeof ts.ScriptSnapshot, Symbol(ts.ScriptSnapshot, Decl(typescript.d.ts, 1287, 5))
+>ts : typeof ts, Symbol(ts, Decl(APISample_watcher.ts, 12, 6))
+>ScriptSnapshot : typeof ts.ScriptSnapshot, Symbol(ts.ScriptSnapshot, Decl(typescript.d.ts, 1287, 5))
+>fromString : (text: string) => ts.IScriptSnapshot, Symbol(ts.ScriptSnapshot.fromString, Decl(typescript.d.ts, 1288, 27))
>fs.readFileSync(fileName).toString() : any
>fs.readFileSync(fileName).toString : any
>fs.readFileSync(fileName) : any
>fs.readFileSync : any
->fs : any
+>fs : any, Symbol(fs, Decl(APISample_watcher.ts, 9, 11))
>readFileSync : any
->fileName : string
+>fileName : string, Symbol(fileName, Decl(APISample_watcher.ts, 26, 28))
>toString : any
},
getCurrentDirectory: () => process.cwd(),
->getCurrentDirectory : () => any
+>getCurrentDirectory : () => any, Symbol(getCurrentDirectory, Decl(APISample_watcher.ts, 32, 10))
>() => process.cwd() : () => any
>process.cwd() : any
>process.cwd : any
->process : any
+>process : any, Symbol(process, Decl(APISample_watcher.ts, 7, 11))
>cwd : any
getCompilationSettings: () => options,
->getCompilationSettings : () => ts.CompilerOptions
+>getCompilationSettings : () => ts.CompilerOptions, Symbol(getCompilationSettings, Decl(APISample_watcher.ts, 33, 49))
>() => options : () => ts.CompilerOptions
->options : ts.CompilerOptions
+>options : ts.CompilerOptions, Symbol(options, Decl(APISample_watcher.ts, 14, 39))
getDefaultLibFileName: (options) => ts.getDefaultLibFilePath(options),
->getDefaultLibFileName : (options: ts.CompilerOptions) => string
+>getDefaultLibFileName : (options: ts.CompilerOptions) => string, Symbol(getDefaultLibFileName, Decl(APISample_watcher.ts, 34, 46))
>(options) => ts.getDefaultLibFilePath(options) : (options: ts.CompilerOptions) => string
->options : ts.CompilerOptions
+>options : ts.CompilerOptions, Symbol(options, Decl(APISample_watcher.ts, 35, 32))
>ts.getDefaultLibFilePath(options) : string
->ts.getDefaultLibFilePath : (options: ts.CompilerOptions) => string
->ts : typeof ts
->getDefaultLibFilePath : (options: ts.CompilerOptions) => string
->options : ts.CompilerOptions
+>ts.getDefaultLibFilePath : (options: ts.CompilerOptions) => string, Symbol(ts.getDefaultLibFilePath, Decl(typescript.d.ts, 1737, 44))
+>ts : typeof ts, Symbol(ts, Decl(APISample_watcher.ts, 12, 6))
+>getDefaultLibFilePath : (options: ts.CompilerOptions) => string, Symbol(ts.getDefaultLibFilePath, Decl(typescript.d.ts, 1737, 44))
+>options : ts.CompilerOptions, Symbol(options, Decl(APISample_watcher.ts, 35, 32))
};
// Create the language service files
const services = ts.createLanguageService(servicesHost, ts.createDocumentRegistry())
->services : ts.LanguageService
+>services : ts.LanguageService, Symbol(services, Decl(APISample_watcher.ts, 39, 9))
>ts.createLanguageService(servicesHost, ts.createDocumentRegistry()) : ts.LanguageService
->ts.createLanguageService : (host: ts.LanguageServiceHost, documentRegistry?: ts.DocumentRegistry) => ts.LanguageService
->ts : typeof ts
->createLanguageService : (host: ts.LanguageServiceHost, documentRegistry?: ts.DocumentRegistry) => ts.LanguageService
->servicesHost : ts.LanguageServiceHost
+>ts.createLanguageService : (host: ts.LanguageServiceHost, documentRegistry?: ts.DocumentRegistry) => ts.LanguageService, Symbol(ts.createLanguageService, Decl(typescript.d.ts, 1735, 97))
+>ts : typeof ts, Symbol(ts, Decl(APISample_watcher.ts, 12, 6))
+>createLanguageService : (host: ts.LanguageServiceHost, documentRegistry?: ts.DocumentRegistry) => ts.LanguageService, Symbol(ts.createLanguageService, Decl(typescript.d.ts, 1735, 97))
+>servicesHost : ts.LanguageServiceHost, Symbol(servicesHost, Decl(APISample_watcher.ts, 23, 9))
>ts.createDocumentRegistry() : ts.DocumentRegistry
->ts.createDocumentRegistry : () => ts.DocumentRegistry
->ts : typeof ts
->createDocumentRegistry : () => ts.DocumentRegistry
+>ts.createDocumentRegistry : () => ts.DocumentRegistry, Symbol(ts.createDocumentRegistry, Decl(typescript.d.ts, 1733, 193))
+>ts : typeof ts, Symbol(ts, Decl(APISample_watcher.ts, 12, 6))
+>createDocumentRegistry : () => ts.DocumentRegistry, Symbol(ts.createDocumentRegistry, Decl(typescript.d.ts, 1733, 193))
// Now let's watch the files
rootFileNames.forEach(fileName => {
>rootFileNames.forEach(fileName => { // First time around, emit all files emitFile(fileName); // Add a watch on the file to handle next change fs.watchFile(fileName, { persistent: true, interval: 250 }, (curr, prev) => { // Check timestamp if (+curr.mtime <= +prev.mtime) { return; } // Update the version to signal a change in the file files[fileName].version++; // write the changes to disk emitFile(fileName); }); }) : void
->rootFileNames.forEach : (callbackfn: (value: string, index: number, array: string[]) => void, thisArg?: any) => void
->rootFileNames : string[]
->forEach : (callbackfn: (value: string, index: number, array: string[]) => void, thisArg?: any) => void
+>rootFileNames.forEach : (callbackfn: (value: string, index: number, array: string[]) => void, thisArg?: any) => void, Symbol(Array.forEach, Decl(lib.d.ts, 1108, 95))
+>rootFileNames : string[], Symbol(rootFileNames, Decl(APISample_watcher.ts, 14, 15))
+>forEach : (callbackfn: (value: string, index: number, array: string[]) => void, thisArg?: any) => void, Symbol(Array.forEach, Decl(lib.d.ts, 1108, 95))
>fileName => { // First time around, emit all files emitFile(fileName); // Add a watch on the file to handle next change fs.watchFile(fileName, { persistent: true, interval: 250 }, (curr, prev) => { // Check timestamp if (+curr.mtime <= +prev.mtime) { return; } // Update the version to signal a change in the file files[fileName].version++; // write the changes to disk emitFile(fileName); }); } : (fileName: string) => void
->fileName : string
+>fileName : string, Symbol(fileName, Decl(APISample_watcher.ts, 42, 26))
// First time around, emit all files
emitFile(fileName);
>emitFile(fileName) : void
->emitFile : (fileName: string) => void
->fileName : string
+>emitFile : (fileName: string) => void, Symbol(emitFile, Decl(APISample_watcher.ts, 61, 7))
+>fileName : string, Symbol(fileName, Decl(APISample_watcher.ts, 42, 26))
// Add a watch on the file to handle next change
fs.watchFile(fileName,
>fs.watchFile(fileName, { persistent: true, interval: 250 }, (curr, prev) => { // Check timestamp if (+curr.mtime <= +prev.mtime) { return; } // Update the version to signal a change in the file files[fileName].version++; // write the changes to disk emitFile(fileName); }) : any
>fs.watchFile : any
->fs : any
+>fs : any, Symbol(fs, Decl(APISample_watcher.ts, 9, 11))
>watchFile : any
->fileName : string
+>fileName : string, Symbol(fileName, Decl(APISample_watcher.ts, 42, 26))
{ persistent: true, interval: 250 },
>{ persistent: true, interval: 250 } : { persistent: boolean; interval: number; }
->persistent : boolean
->interval : number
+>persistent : boolean, Symbol(persistent, Decl(APISample_watcher.ts, 48, 13))
+>true : boolean
+>interval : number, Symbol(interval, Decl(APISample_watcher.ts, 48, 31))
+>250 : number
(curr, prev) => {
>(curr, prev) => { // Check timestamp if (+curr.mtime <= +prev.mtime) { return; } // Update the version to signal a change in the file files[fileName].version++; // write the changes to disk emitFile(fileName); } : (curr: any, prev: any) => void
->curr : any
->prev : any
+>curr : any, Symbol(curr, Decl(APISample_watcher.ts, 49, 13))
+>prev : any, Symbol(prev, Decl(APISample_watcher.ts, 49, 18))
// Check timestamp
if (+curr.mtime <= +prev.mtime) {
>+curr.mtime <= +prev.mtime : boolean
>+curr.mtime : number
>curr.mtime : any
->curr : any
+>curr : any, Symbol(curr, Decl(APISample_watcher.ts, 49, 13))
>mtime : any
>+prev.mtime : number
>prev.mtime : any
->prev : any
+>prev : any, Symbol(prev, Decl(APISample_watcher.ts, 49, 18))
>mtime : any
return;
@@ -206,175 +209,183 @@ function watch(rootFileNames: string[], options: ts.CompilerOptions) {
// Update the version to signal a change in the file
files[fileName].version++;
>files[fileName].version++ : number
->files[fileName].version : number
+>files[fileName].version : number, Symbol(version, Decl(APISample_watcher.ts, 15, 25))
>files[fileName] : { version: number; }
->files : ts.Map<{ version: number; }>
->fileName : string
->version : number
+>files : ts.Map<{ version: number; }>, Symbol(files, Decl(APISample_watcher.ts, 15, 9))
+>fileName : string, Symbol(fileName, Decl(APISample_watcher.ts, 42, 26))
+>version : number, Symbol(version, Decl(APISample_watcher.ts, 15, 25))
// write the changes to disk
emitFile(fileName);
>emitFile(fileName) : void
->emitFile : (fileName: string) => void
->fileName : string
+>emitFile : (fileName: string) => void, Symbol(emitFile, Decl(APISample_watcher.ts, 61, 7))
+>fileName : string, Symbol(fileName, Decl(APISample_watcher.ts, 42, 26))
});
});
function emitFile(fileName: string) {
->emitFile : (fileName: string) => void
->fileName : string
+>emitFile : (fileName: string) => void, Symbol(emitFile, Decl(APISample_watcher.ts, 61, 7))
+>fileName : string, Symbol(fileName, Decl(APISample_watcher.ts, 63, 22))
let output = services.getEmitOutput(fileName);
->output : ts.EmitOutput
+>output : ts.EmitOutput, Symbol(output, Decl(APISample_watcher.ts, 64, 11))
>services.getEmitOutput(fileName) : ts.EmitOutput
->services.getEmitOutput : (fileName: string) => ts.EmitOutput
->services : ts.LanguageService
->getEmitOutput : (fileName: string) => ts.EmitOutput
->fileName : string
+>services.getEmitOutput : (fileName: string) => ts.EmitOutput, Symbol(ts.LanguageService.getEmitOutput, Decl(typescript.d.ts, 1339, 132))
+>services : ts.LanguageService, Symbol(services, Decl(APISample_watcher.ts, 39, 9))
+>getEmitOutput : (fileName: string) => ts.EmitOutput, Symbol(ts.LanguageService.getEmitOutput, Decl(typescript.d.ts, 1339, 132))
+>fileName : string, Symbol(fileName, Decl(APISample_watcher.ts, 63, 22))
if (!output.emitSkipped) {
>!output.emitSkipped : boolean
->output.emitSkipped : boolean
->output : ts.EmitOutput
->emitSkipped : boolean
+>output.emitSkipped : boolean, Symbol(ts.EmitOutput.emitSkipped, Decl(typescript.d.ts, 1542, 34))
+>output : ts.EmitOutput, Symbol(output, Decl(APISample_watcher.ts, 64, 11))
+>emitSkipped : boolean, Symbol(ts.EmitOutput.emitSkipped, Decl(typescript.d.ts, 1542, 34))
console.log(`Emitting ${fileName}`);
>console.log(`Emitting ${fileName}`) : any
>console.log : any
->console : any
+>console : any, Symbol(console, Decl(APISample_watcher.ts, 8, 11))
>log : any
->fileName : string
+>`Emitting ${fileName}` : string
+>fileName : string, Symbol(fileName, Decl(APISample_watcher.ts, 63, 22))
}
else {
console.log(`Emitting ${fileName} failed`);
>console.log(`Emitting ${fileName} failed`) : any
>console.log : any
->console : any
+>console : any, Symbol(console, Decl(APISample_watcher.ts, 8, 11))
>log : any
->fileName : string
+>`Emitting ${fileName} failed` : string
+>fileName : string, Symbol(fileName, Decl(APISample_watcher.ts, 63, 22))
logErrors(fileName);
>logErrors(fileName) : void
->logErrors : (fileName: string) => void
->fileName : string
+>logErrors : (fileName: string) => void, Symbol(logErrors, Decl(APISample_watcher.ts, 77, 5))
+>fileName : string, Symbol(fileName, Decl(APISample_watcher.ts, 63, 22))
}
output.outputFiles.forEach(o => {
>output.outputFiles.forEach(o => { fs.writeFileSync(o.name, o.text, "utf8"); }) : void
->output.outputFiles.forEach : (callbackfn: (value: ts.OutputFile, index: number, array: ts.OutputFile[]) => void, thisArg?: any) => void
->output.outputFiles : ts.OutputFile[]
->output : ts.EmitOutput
->outputFiles : ts.OutputFile[]
->forEach : (callbackfn: (value: ts.OutputFile, index: number, array: ts.OutputFile[]) => void, thisArg?: any) => void
+>output.outputFiles.forEach : (callbackfn: (value: ts.OutputFile, index: number, array: ts.OutputFile[]) => void, thisArg?: any) => void, Symbol(Array.forEach, Decl(lib.d.ts, 1108, 95))
+>output.outputFiles : ts.OutputFile[], Symbol(ts.EmitOutput.outputFiles, Decl(typescript.d.ts, 1541, 26))
+>output : ts.EmitOutput, Symbol(output, Decl(APISample_watcher.ts, 64, 11))
+>outputFiles : ts.OutputFile[], Symbol(ts.EmitOutput.outputFiles, Decl(typescript.d.ts, 1541, 26))
+>forEach : (callbackfn: (value: ts.OutputFile, index: number, array: ts.OutputFile[]) => void, thisArg?: any) => void, Symbol(Array.forEach, Decl(lib.d.ts, 1108, 95))
>o => { fs.writeFileSync(o.name, o.text, "utf8"); } : (o: ts.OutputFile) => void
->o : ts.OutputFile
+>o : ts.OutputFile, Symbol(o, Decl(APISample_watcher.ts, 74, 35))
fs.writeFileSync(o.name, o.text, "utf8");
>fs.writeFileSync(o.name, o.text, "utf8") : any
>fs.writeFileSync : any
->fs : any
+>fs : any, Symbol(fs, Decl(APISample_watcher.ts, 9, 11))
>writeFileSync : any
->o.name : string
->o : ts.OutputFile
->name : string
->o.text : string
->o : ts.OutputFile
->text : string
+>o.name : string, Symbol(ts.OutputFile.name, Decl(typescript.d.ts, 1550, 26))
+>o : ts.OutputFile, Symbol(o, Decl(APISample_watcher.ts, 74, 35))
+>name : string, Symbol(ts.OutputFile.name, Decl(typescript.d.ts, 1550, 26))
+>o.text : string, Symbol(ts.OutputFile.text, Decl(typescript.d.ts, 1552, 36))
+>o : ts.OutputFile, Symbol(o, Decl(APISample_watcher.ts, 74, 35))
+>text : string, Symbol(ts.OutputFile.text, Decl(typescript.d.ts, 1552, 36))
+>"utf8" : string
});
}
function logErrors(fileName: string) {
->logErrors : (fileName: string) => void
->fileName : string
+>logErrors : (fileName: string) => void, Symbol(logErrors, Decl(APISample_watcher.ts, 77, 5))
+>fileName : string, Symbol(fileName, Decl(APISample_watcher.ts, 79, 23))
let allDiagnostics = services.getCompilerOptionsDiagnostics()
->allDiagnostics : ts.Diagnostic[]
+>allDiagnostics : ts.Diagnostic[], Symbol(allDiagnostics, Decl(APISample_watcher.ts, 80, 11))
>services.getCompilerOptionsDiagnostics() .concat(services.getSyntacticDiagnostics(fileName)) .concat(services.getSemanticDiagnostics(fileName)) : ts.Diagnostic[]
->services.getCompilerOptionsDiagnostics() .concat(services.getSyntacticDiagnostics(fileName)) .concat : { (...items: U[]): ts.Diagnostic[]; (...items: ts.Diagnostic[]): ts.Diagnostic[]; }
+>services.getCompilerOptionsDiagnostics() .concat(services.getSyntacticDiagnostics(fileName)) .concat : { (...items: U[]): ts.Diagnostic[]; (...items: ts.Diagnostic[]): ts.Diagnostic[]; }, Symbol(Array.concat, Decl(lib.d.ts, 1025, 13), Decl(lib.d.ts, 1030, 46))
>services.getCompilerOptionsDiagnostics() .concat(services.getSyntacticDiagnostics(fileName)) : ts.Diagnostic[]
->services.getCompilerOptionsDiagnostics() .concat : { (...items: U[]): ts.Diagnostic[]; (...items: ts.Diagnostic[]): ts.Diagnostic[]; }
+>services.getCompilerOptionsDiagnostics() .concat : { (...items: U[]): ts.Diagnostic[]; (...items: ts.Diagnostic[]): ts.Diagnostic[]; }, Symbol(Array.concat, Decl(lib.d.ts, 1025, 13), Decl(lib.d.ts, 1030, 46))
>services.getCompilerOptionsDiagnostics() : ts.Diagnostic[]
->services.getCompilerOptionsDiagnostics : () => ts.Diagnostic[]
->services : ts.LanguageService
->getCompilerOptionsDiagnostics : () => ts.Diagnostic[]
+>services.getCompilerOptionsDiagnostics : () => ts.Diagnostic[], Symbol(ts.LanguageService.getCompilerOptionsDiagnostics, Decl(typescript.d.ts, 1313, 63))
+>services : ts.LanguageService, Symbol(services, Decl(APISample_watcher.ts, 39, 9))
+>getCompilerOptionsDiagnostics : () => ts.Diagnostic[], Symbol(ts.LanguageService.getCompilerOptionsDiagnostics, Decl(typescript.d.ts, 1313, 63))
.concat(services.getSyntacticDiagnostics(fileName))
->concat : { (...items: U[]): ts.Diagnostic[]; (...items: ts.Diagnostic[]): ts.Diagnostic[]; }
+>concat : { (...items: U[]): ts.Diagnostic[]; (...items: ts.Diagnostic[]): ts.Diagnostic[]; }, Symbol(Array.concat, Decl(lib.d.ts, 1025, 13), Decl(lib.d.ts, 1030, 46))
>services.getSyntacticDiagnostics(fileName) : ts.Diagnostic[]
->services.getSyntacticDiagnostics : (fileName: string) => ts.Diagnostic[]
->services : ts.LanguageService
->getSyntacticDiagnostics : (fileName: string) => ts.Diagnostic[]
->fileName : string
+>services.getSyntacticDiagnostics : (fileName: string) => ts.Diagnostic[], Symbol(ts.LanguageService.getSyntacticDiagnostics, Decl(typescript.d.ts, 1311, 37))
+>services : ts.LanguageService, Symbol(services, Decl(APISample_watcher.ts, 39, 9))
+>getSyntacticDiagnostics : (fileName: string) => ts.Diagnostic[], Symbol(ts.LanguageService.getSyntacticDiagnostics, Decl(typescript.d.ts, 1311, 37))
+>fileName : string, Symbol(fileName, Decl(APISample_watcher.ts, 79, 23))
.concat(services.getSemanticDiagnostics(fileName));
->concat : { (...items: U[]): ts.Diagnostic[]; (...items: ts.Diagnostic[]): ts.Diagnostic[]; }
+>concat : { (...items: U[]): ts.Diagnostic[]; (...items: ts.Diagnostic[]): ts.Diagnostic[]; }, Symbol(Array.concat, Decl(lib.d.ts, 1025, 13), Decl(lib.d.ts, 1030, 46))
>services.getSemanticDiagnostics(fileName) : ts.Diagnostic[]
->services.getSemanticDiagnostics : (fileName: string) => ts.Diagnostic[]
->services : ts.LanguageService
->getSemanticDiagnostics : (fileName: string) => ts.Diagnostic[]
->fileName : string
+>services.getSemanticDiagnostics : (fileName: string) => ts.Diagnostic[], Symbol(ts.LanguageService.getSemanticDiagnostics, Decl(typescript.d.ts, 1312, 64))
+>services : ts.LanguageService, Symbol(services, Decl(APISample_watcher.ts, 39, 9))
+>getSemanticDiagnostics : (fileName: string) => ts.Diagnostic[], Symbol(ts.LanguageService.getSemanticDiagnostics, Decl(typescript.d.ts, 1312, 64))
+>fileName : string, Symbol(fileName, Decl(APISample_watcher.ts, 79, 23))
allDiagnostics.forEach(diagnostic => {
>allDiagnostics.forEach(diagnostic => { let message = ts.flattenDiagnosticMessageText(diagnostic.messageText, "\n"); if (diagnostic.file) { let { line, character } = diagnostic.file.getLineAndCharacterOfPosition(diagnostic.start); console.log(` Error ${diagnostic.file.fileName} (${line + 1},${character + 1}): ${message}`); } else { console.log(` Error: ${message}`); } }) : void
->allDiagnostics.forEach : (callbackfn: (value: ts.Diagnostic, index: number, array: ts.Diagnostic[]) => void, thisArg?: any) => void
->allDiagnostics : ts.Diagnostic[]
->forEach : (callbackfn: (value: ts.Diagnostic, index: number, array: ts.Diagnostic[]) => void, thisArg?: any) => void
+>allDiagnostics.forEach : (callbackfn: (value: ts.Diagnostic, index: number, array: ts.Diagnostic[]) => void, thisArg?: any) => void, Symbol(Array.forEach, Decl(lib.d.ts, 1108, 95))
+>allDiagnostics : ts.Diagnostic[], Symbol(allDiagnostics, Decl(APISample_watcher.ts, 80, 11))
+>forEach : (callbackfn: (value: ts.Diagnostic, index: number, array: ts.Diagnostic[]) => void, thisArg?: any) => void, Symbol(Array.forEach, Decl(lib.d.ts, 1108, 95))
>diagnostic => { let message = ts.flattenDiagnosticMessageText(diagnostic.messageText, "\n"); if (diagnostic.file) { let { line, character } = diagnostic.file.getLineAndCharacterOfPosition(diagnostic.start); console.log(` Error ${diagnostic.file.fileName} (${line + 1},${character + 1}): ${message}`); } else { console.log(` Error: ${message}`); } } : (diagnostic: ts.Diagnostic) => void
->diagnostic : ts.Diagnostic
+>diagnostic : ts.Diagnostic, Symbol(diagnostic, Decl(APISample_watcher.ts, 84, 31))
let message = ts.flattenDiagnosticMessageText(diagnostic.messageText, "\n");
->message : string
+>message : string, Symbol(message, Decl(APISample_watcher.ts, 85, 15))
>ts.flattenDiagnosticMessageText(diagnostic.messageText, "\n") : string
->ts.flattenDiagnosticMessageText : (messageText: string | ts.DiagnosticMessageChain, newLine: string) => string
->ts : typeof ts
->flattenDiagnosticMessageText : (messageText: string | ts.DiagnosticMessageChain, newLine: string) => string
->diagnostic.messageText : string | ts.DiagnosticMessageChain
->diagnostic : ts.Diagnostic
->messageText : string | ts.DiagnosticMessageChain
+>ts.flattenDiagnosticMessageText : (messageText: string | ts.DiagnosticMessageChain, newLine: string) => string, Symbol(ts.flattenDiagnosticMessageText, Decl(typescript.d.ts, 1200, 67))
+>ts : typeof ts, Symbol(ts, Decl(APISample_watcher.ts, 12, 6))
+>flattenDiagnosticMessageText : (messageText: string | ts.DiagnosticMessageChain, newLine: string) => string, Symbol(ts.flattenDiagnosticMessageText, Decl(typescript.d.ts, 1200, 67))
+>diagnostic.messageText : string | ts.DiagnosticMessageChain, Symbol(ts.Diagnostic.messageText, Decl(typescript.d.ts, 1065, 23))
+>diagnostic : ts.Diagnostic, Symbol(diagnostic, Decl(APISample_watcher.ts, 84, 31))
+>messageText : string | ts.DiagnosticMessageChain, Symbol(ts.Diagnostic.messageText, Decl(typescript.d.ts, 1065, 23))
+>"\n" : string
if (diagnostic.file) {
->diagnostic.file : ts.SourceFile
->diagnostic : ts.Diagnostic
->file : ts.SourceFile
+>diagnostic.file : ts.SourceFile, Symbol(ts.Diagnostic.file, Decl(typescript.d.ts, 1062, 26))
+>diagnostic : ts.Diagnostic, Symbol(diagnostic, Decl(APISample_watcher.ts, 84, 31))
+>file : ts.SourceFile, Symbol(ts.Diagnostic.file, Decl(typescript.d.ts, 1062, 26))
let { line, character } = diagnostic.file.getLineAndCharacterOfPosition(diagnostic.start);
->line : number
->character : number
+>line : number, Symbol(line, Decl(APISample_watcher.ts, 87, 21))
+>character : number, Symbol(character, Decl(APISample_watcher.ts, 87, 27))
>diagnostic.file.getLineAndCharacterOfPosition(diagnostic.start) : ts.LineAndCharacter
->diagnostic.file.getLineAndCharacterOfPosition : (pos: number) => ts.LineAndCharacter
->diagnostic.file : ts.SourceFile
->diagnostic : ts.Diagnostic
->file : ts.SourceFile
->getLineAndCharacterOfPosition : (pos: number) => ts.LineAndCharacter
->diagnostic.start : number
->diagnostic : ts.Diagnostic
->start : number
+>diagnostic.file.getLineAndCharacterOfPosition : (pos: number) => ts.LineAndCharacter, Symbol(ts.SourceFile.getLineAndCharacterOfPosition, Decl(typescript.d.ts, 1263, 46))
+>diagnostic.file : ts.SourceFile, Symbol(ts.Diagnostic.file, Decl(typescript.d.ts, 1062, 26))
+>diagnostic : ts.Diagnostic, Symbol(diagnostic, Decl(APISample_watcher.ts, 84, 31))
+>file : ts.SourceFile, Symbol(ts.Diagnostic.file, Decl(typescript.d.ts, 1062, 26))
+>getLineAndCharacterOfPosition : (pos: number) => ts.LineAndCharacter, Symbol(ts.SourceFile.getLineAndCharacterOfPosition, Decl(typescript.d.ts, 1263, 46))
+>diagnostic.start : number, Symbol(ts.Diagnostic.start, Decl(typescript.d.ts, 1063, 25))
+>diagnostic : ts.Diagnostic, Symbol(diagnostic, Decl(APISample_watcher.ts, 84, 31))
+>start : number, Symbol(ts.Diagnostic.start, Decl(typescript.d.ts, 1063, 25))
console.log(` Error ${diagnostic.file.fileName} (${line + 1},${character + 1}): ${message}`);
>console.log(` Error ${diagnostic.file.fileName} (${line + 1},${character + 1}): ${message}`) : any
>console.log : any
->console : any
+>console : any, Symbol(console, Decl(APISample_watcher.ts, 8, 11))
>log : any
->diagnostic.file.fileName : string
->diagnostic.file : ts.SourceFile
->diagnostic : ts.Diagnostic
->file : ts.SourceFile
->fileName : string
+>` Error ${diagnostic.file.fileName} (${line + 1},${character + 1}): ${message}` : string
+>diagnostic.file.fileName : string, Symbol(ts.SourceFile.fileName, Decl(typescript.d.ts, 743, 29))
+>diagnostic.file : ts.SourceFile, Symbol(ts.Diagnostic.file, Decl(typescript.d.ts, 1062, 26))
+>diagnostic : ts.Diagnostic, Symbol(diagnostic, Decl(APISample_watcher.ts, 84, 31))
+>file : ts.SourceFile, Symbol(ts.Diagnostic.file, Decl(typescript.d.ts, 1062, 26))
+>fileName : string, Symbol(ts.SourceFile.fileName, Decl(typescript.d.ts, 743, 29))
>line + 1 : number
->line : number
+>line : number, Symbol(line, Decl(APISample_watcher.ts, 87, 21))
+>1 : number
>character + 1 : number
->character : number
->message : string
+>character : number, Symbol(character, Decl(APISample_watcher.ts, 87, 27))
+>1 : number
+>message : string, Symbol(message, Decl(APISample_watcher.ts, 85, 15))
}
else {
console.log(` Error: ${message}`);
>console.log(` Error: ${message}`) : any
>console.log : any
->console : any
+>console : any, Symbol(console, Decl(APISample_watcher.ts, 8, 11))
>log : any
->message : string
+>` Error: ${message}` : string
+>message : string, Symbol(message, Decl(APISample_watcher.ts, 85, 15))
}
});
}
@@ -382,47 +393,51 @@ function watch(rootFileNames: string[], options: ts.CompilerOptions) {
// Initialize files constituting the program as all .ts files in the current directory
const currentDirectoryFiles = fs.readdirSync(process.cwd()).
->currentDirectoryFiles : any
+>currentDirectoryFiles : any, Symbol(currentDirectoryFiles, Decl(APISample_watcher.ts, 98, 5))
>fs.readdirSync(process.cwd()). filter(fileName=> fileName.length >= 3 && fileName.substr(fileName.length - 3, 3) === ".ts") : any
>fs.readdirSync(process.cwd()). filter : any
>fs.readdirSync(process.cwd()) : any
>fs.readdirSync : any
->fs : any
+>fs : any, Symbol(fs, Decl(APISample_watcher.ts, 9, 11))
>readdirSync : any
>process.cwd() : any
>process.cwd : any
->process : any
+>process : any, Symbol(process, Decl(APISample_watcher.ts, 7, 11))
>cwd : any
filter(fileName=> fileName.length >= 3 && fileName.substr(fileName.length - 3, 3) === ".ts");
>filter : any
>fileName=> fileName.length >= 3 && fileName.substr(fileName.length - 3, 3) === ".ts" : (fileName: any) => boolean
->fileName : any
+>fileName : any, Symbol(fileName, Decl(APISample_watcher.ts, 99, 11))
>fileName.length >= 3 && fileName.substr(fileName.length - 3, 3) === ".ts" : boolean
>fileName.length >= 3 : boolean
>fileName.length : any
->fileName : any
+>fileName : any, Symbol(fileName, Decl(APISample_watcher.ts, 99, 11))
>length : any
+>3 : number
>fileName.substr(fileName.length - 3, 3) === ".ts" : boolean
>fileName.substr(fileName.length - 3, 3) : any
>fileName.substr : any
->fileName : any
+>fileName : any, Symbol(fileName, Decl(APISample_watcher.ts, 99, 11))
>substr : any
>fileName.length - 3 : number
>fileName.length : any
->fileName : any
+>fileName : any, Symbol(fileName, Decl(APISample_watcher.ts, 99, 11))
>length : any
+>3 : number
+>3 : number
+>".ts" : string
// Start the watcher
watch(currentDirectoryFiles, { module: ts.ModuleKind.CommonJS });
>watch(currentDirectoryFiles, { module: ts.ModuleKind.CommonJS }) : void
->watch : (rootFileNames: string[], options: ts.CompilerOptions) => void
->currentDirectoryFiles : any
+>watch : (rootFileNames: string[], options: ts.CompilerOptions) => void, Symbol(watch, Decl(APISample_watcher.ts, 12, 33))
+>currentDirectoryFiles : any, Symbol(currentDirectoryFiles, Decl(APISample_watcher.ts, 98, 5))
>{ module: ts.ModuleKind.CommonJS } : { [x: string]: ts.ModuleKind; module: ts.ModuleKind; }
->module : ts.ModuleKind
->ts.ModuleKind.CommonJS : ts.ModuleKind
->ts.ModuleKind : typeof ts.ModuleKind
->ts : typeof ts
->ModuleKind : typeof ts.ModuleKind
->CommonJS : ts.ModuleKind
+>module : ts.ModuleKind, Symbol(module, Decl(APISample_watcher.ts, 102, 30))
+>ts.ModuleKind.CommonJS : ts.ModuleKind, Symbol(ts.ModuleKind.CommonJS, Decl(typescript.d.ts, 1108, 17))
+>ts.ModuleKind : typeof ts.ModuleKind, Symbol(ts.ModuleKind, Decl(typescript.d.ts, 1106, 5))
+>ts : typeof ts, Symbol(ts, Decl(APISample_watcher.ts, 12, 6))
+>ModuleKind : typeof ts.ModuleKind, Symbol(ts.ModuleKind, Decl(typescript.d.ts, 1106, 5))
+>CommonJS : ts.ModuleKind, Symbol(ts.ModuleKind.CommonJS, Decl(typescript.d.ts, 1108, 17))
diff --git a/tests/baselines/reference/AmbientModuleAndAmbientFunctionWithTheSameNameAndCommonRoot.types b/tests/baselines/reference/AmbientModuleAndAmbientFunctionWithTheSameNameAndCommonRoot.types
index da82a2ff662..974e500d341 100644
--- a/tests/baselines/reference/AmbientModuleAndAmbientFunctionWithTheSameNameAndCommonRoot.types
+++ b/tests/baselines/reference/AmbientModuleAndAmbientFunctionWithTheSameNameAndCommonRoot.types
@@ -1,33 +1,33 @@
=== tests/cases/conformance/internalModules/DeclarationMerging/module.d.ts ===
declare module Point {
->Point : typeof Point
+>Point : typeof Point, Symbol(Point, Decl(module.d.ts, 0, 0), Decl(function.d.ts, 0, 0))
export var Origin: { x: number; y: number; }
->Origin : { x: number; y: number; }
->x : number
->y : number
+>Origin : { x: number; y: number; }, Symbol(Origin, Decl(module.d.ts, 1, 14))
+>x : number, Symbol(x, Decl(module.d.ts, 1, 24))
+>y : number, Symbol(y, Decl(module.d.ts, 1, 35))
}
=== tests/cases/conformance/internalModules/DeclarationMerging/function.d.ts ===
declare function Point(): { x: number; y: number; }
->Point : typeof Point
->x : number
->y : number
+>Point : typeof Point, Symbol(Point, Decl(module.d.ts, 0, 0), Decl(function.d.ts, 0, 0))
+>x : number, Symbol(x, Decl(function.d.ts, 0, 27))
+>y : number, Symbol(y, Decl(function.d.ts, 0, 38))
=== tests/cases/conformance/internalModules/DeclarationMerging/test.ts ===
var cl: { x: number; y: number; }
->cl : { x: number; y: number; }
->x : number
->y : number
+>cl : { x: number; y: number; }, Symbol(cl, Decl(test.ts, 0, 3), Decl(test.ts, 1, 3), Decl(test.ts, 2, 3))
+>x : number, Symbol(x, Decl(test.ts, 0, 9))
+>y : number, Symbol(y, Decl(test.ts, 0, 20))
var cl = Point();
->cl : { x: number; y: number; }
+>cl : { x: number; y: number; }, Symbol(cl, Decl(test.ts, 0, 3), Decl(test.ts, 1, 3), Decl(test.ts, 2, 3))
>Point() : { x: number; y: number; }
->Point : typeof Point
+>Point : typeof Point, Symbol(Point, Decl(module.d.ts, 0, 0), Decl(function.d.ts, 0, 0))
var cl = Point.Origin;
->cl : { x: number; y: number; }
->Point.Origin : { x: number; y: number; }
->Point : typeof Point
->Origin : { x: number; y: number; }
+>cl : { x: number; y: number; }, Symbol(cl, Decl(test.ts, 0, 3), Decl(test.ts, 1, 3), Decl(test.ts, 2, 3))
+>Point.Origin : { x: number; y: number; }, Symbol(Point.Origin, Decl(module.d.ts, 1, 14))
+>Point : typeof Point, Symbol(Point, Decl(module.d.ts, 0, 0), Decl(function.d.ts, 0, 0))
+>Origin : { x: number; y: number; }, Symbol(Point.Origin, Decl(module.d.ts, 1, 14))
diff --git a/tests/baselines/reference/AmbientModuleAndAmbientWithSameNameAndCommonRoot.types b/tests/baselines/reference/AmbientModuleAndAmbientWithSameNameAndCommonRoot.types
index 8846d2c3a37..1bdabc46ee8 100644
--- a/tests/baselines/reference/AmbientModuleAndAmbientWithSameNameAndCommonRoot.types
+++ b/tests/baselines/reference/AmbientModuleAndAmbientWithSameNameAndCommonRoot.types
@@ -1,59 +1,61 @@
=== tests/cases/conformance/internalModules/DeclarationMerging/module.d.ts ===
declare module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(module.d.ts, 0, 0), Decl(class.d.ts, 0, 0))
export module Point {
->Point : typeof Point
+>Point : typeof Point, Symbol(Point, Decl(module.d.ts, 0, 18), Decl(class.d.ts, 0, 18))
export var Origin: {
->Origin : { x: number; y: number; }
+>Origin : { x: number; y: number; }, Symbol(Origin, Decl(module.d.ts, 2, 18))
x: number;
->x : number
+>x : number, Symbol(x, Decl(module.d.ts, 2, 28))
y: number;
->y : number
+>y : number, Symbol(y, Decl(module.d.ts, 3, 22))
}
}
}
=== tests/cases/conformance/internalModules/DeclarationMerging/class.d.ts ===
declare module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(module.d.ts, 0, 0), Decl(class.d.ts, 0, 0))
export class Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(module.d.ts, 0, 18), Decl(class.d.ts, 0, 18))
constructor(x: number, y: number);
->x : number
->y : number
+>x : number, Symbol(x, Decl(class.d.ts, 2, 20))
+>y : number, Symbol(y, Decl(class.d.ts, 2, 30))
x: number;
->x : number
+>x : number, Symbol(x, Decl(class.d.ts, 2, 42))
y: number;
->y : number
+>y : number, Symbol(y, Decl(class.d.ts, 3, 18))
}
}
=== tests/cases/conformance/internalModules/DeclarationMerging/test.ts ===
var p: { x: number; y: number; }
->p : { x: number; y: number; }
->x : number
->y : number
+>p : { x: number; y: number; }, Symbol(p, Decl(test.ts, 0, 3), Decl(test.ts, 1, 3), Decl(test.ts, 2, 3))
+>x : number, Symbol(x, Decl(test.ts, 0, 8))
+>y : number, Symbol(y, Decl(test.ts, 0, 19))
var p = A.Point.Origin;
->p : { x: number; y: number; }
->A.Point.Origin : { x: number; y: number; }
->A.Point : typeof A.Point
->A : typeof A
->Point : typeof A.Point
->Origin : { x: number; y: number; }
+>p : { x: number; y: number; }, Symbol(p, Decl(test.ts, 0, 3), Decl(test.ts, 1, 3), Decl(test.ts, 2, 3))
+>A.Point.Origin : { x: number; y: number; }, Symbol(A.Point.Origin, Decl(module.d.ts, 2, 18))
+>A.Point : typeof A.Point, Symbol(A.Point, Decl(module.d.ts, 0, 18), Decl(class.d.ts, 0, 18))
+>A : typeof A, Symbol(A, Decl(module.d.ts, 0, 0), Decl(class.d.ts, 0, 0))
+>Point : typeof A.Point, Symbol(A.Point, Decl(module.d.ts, 0, 18), Decl(class.d.ts, 0, 18))
+>Origin : { x: number; y: number; }, Symbol(A.Point.Origin, Decl(module.d.ts, 2, 18))
var p = new A.Point(0, 0); // unexpected error here, bug 840000
->p : { x: number; y: number; }
+>p : { x: number; y: number; }, Symbol(p, Decl(test.ts, 0, 3), Decl(test.ts, 1, 3), Decl(test.ts, 2, 3))
>new A.Point(0, 0) : A.Point
->A.Point : typeof A.Point
->A : typeof A
->Point : typeof A.Point
+>A.Point : typeof A.Point, Symbol(A.Point, Decl(module.d.ts, 0, 18), Decl(class.d.ts, 0, 18))
+>A : typeof A, Symbol(A, Decl(module.d.ts, 0, 0), Decl(class.d.ts, 0, 0))
+>Point : typeof A.Point, Symbol(A.Point, Decl(module.d.ts, 0, 18), Decl(class.d.ts, 0, 18))
+>0 : number
+>0 : number
diff --git a/tests/baselines/reference/AmbientModuleAndNonAmbientClassWithSameNameAndCommonRoot.types b/tests/baselines/reference/AmbientModuleAndNonAmbientClassWithSameNameAndCommonRoot.types
index 975f0f65a68..9d90bf94449 100644
--- a/tests/baselines/reference/AmbientModuleAndNonAmbientClassWithSameNameAndCommonRoot.types
+++ b/tests/baselines/reference/AmbientModuleAndNonAmbientClassWithSameNameAndCommonRoot.types
@@ -1,53 +1,55 @@
=== tests/cases/conformance/internalModules/DeclarationMerging/module.d.ts ===
declare module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(module.d.ts, 0, 0), Decl(classPoint.ts, 0, 0))
export module Point {
->Point : typeof Point
+>Point : typeof Point, Symbol(Point, Decl(module.d.ts, 0, 18), Decl(classPoint.ts, 0, 10))
export var Origin: {
->Origin : { x: number; y: number; }
+>Origin : { x: number; y: number; }, Symbol(Origin, Decl(module.d.ts, 2, 18))
x: number;
->x : number
+>x : number, Symbol(x, Decl(module.d.ts, 2, 28))
y: number;
->y : number
+>y : number, Symbol(y, Decl(module.d.ts, 3, 22))
}
}
}
=== tests/cases/conformance/internalModules/DeclarationMerging/classPoint.ts ===
module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(module.d.ts, 0, 0), Decl(classPoint.ts, 0, 0))
export class Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(module.d.ts, 0, 18), Decl(classPoint.ts, 0, 10))
constructor(public x: number, public y: number) { }
->x : number
->y : number
+>x : number, Symbol(x, Decl(classPoint.ts, 2, 20))
+>y : number, Symbol(y, Decl(classPoint.ts, 2, 37))
}
}
=== tests/cases/conformance/internalModules/DeclarationMerging/test.ts ===
var p: { x: number; y: number; }
->p : { x: number; y: number; }
->x : number
->y : number
+>p : { x: number; y: number; }, Symbol(p, Decl(test.ts, 0, 3), Decl(test.ts, 1, 3), Decl(test.ts, 2, 3))
+>x : number, Symbol(x, Decl(test.ts, 0, 8))
+>y : number, Symbol(y, Decl(test.ts, 0, 19))
var p = A.Point.Origin;
->p : { x: number; y: number; }
->A.Point.Origin : { x: number; y: number; }
->A.Point : typeof A.Point
->A : typeof A
->Point : typeof A.Point
->Origin : { x: number; y: number; }
+>p : { x: number; y: number; }, Symbol(p, Decl(test.ts, 0, 3), Decl(test.ts, 1, 3), Decl(test.ts, 2, 3))
+>A.Point.Origin : { x: number; y: number; }, Symbol(A.Point.Origin, Decl(module.d.ts, 2, 18))
+>A.Point : typeof A.Point, Symbol(A.Point, Decl(module.d.ts, 0, 18), Decl(classPoint.ts, 0, 10))
+>A : typeof A, Symbol(A, Decl(module.d.ts, 0, 0), Decl(classPoint.ts, 0, 0))
+>Point : typeof A.Point, Symbol(A.Point, Decl(module.d.ts, 0, 18), Decl(classPoint.ts, 0, 10))
+>Origin : { x: number; y: number; }, Symbol(A.Point.Origin, Decl(module.d.ts, 2, 18))
var p = new A.Point(0, 0); // unexpected error here, bug 840000
->p : { x: number; y: number; }
+>p : { x: number; y: number; }, Symbol(p, Decl(test.ts, 0, 3), Decl(test.ts, 1, 3), Decl(test.ts, 2, 3))
>new A.Point(0, 0) : A.Point
->A.Point : typeof A.Point
->A : typeof A
->Point : typeof A.Point
+>A.Point : typeof A.Point, Symbol(A.Point, Decl(module.d.ts, 0, 18), Decl(classPoint.ts, 0, 10))
+>A : typeof A, Symbol(A, Decl(module.d.ts, 0, 0), Decl(classPoint.ts, 0, 0))
+>Point : typeof A.Point, Symbol(A.Point, Decl(module.d.ts, 0, 18), Decl(classPoint.ts, 0, 10))
+>0 : number
+>0 : number
diff --git a/tests/baselines/reference/AmbientModuleAndNonAmbientFunctionWithTheSameNameAndCommonRoot.types b/tests/baselines/reference/AmbientModuleAndNonAmbientFunctionWithTheSameNameAndCommonRoot.types
index cf4aeb6bcc0..1384b65b029 100644
--- a/tests/baselines/reference/AmbientModuleAndNonAmbientFunctionWithTheSameNameAndCommonRoot.types
+++ b/tests/baselines/reference/AmbientModuleAndNonAmbientFunctionWithTheSameNameAndCommonRoot.types
@@ -1,37 +1,39 @@
=== tests/cases/conformance/internalModules/DeclarationMerging/module.d.ts ===
declare module Point {
->Point : typeof Point
+>Point : typeof Point, Symbol(Point, Decl(module.d.ts, 0, 0), Decl(function.ts, 0, 0))
export var Origin: { x: number; y: number; }
->Origin : { x: number; y: number; }
->x : number
->y : number
+>Origin : { x: number; y: number; }, Symbol(Origin, Decl(module.d.ts, 1, 14))
+>x : number, Symbol(x, Decl(module.d.ts, 1, 24))
+>y : number, Symbol(y, Decl(module.d.ts, 1, 35))
}
=== tests/cases/conformance/internalModules/DeclarationMerging/function.ts ===
function Point() {
->Point : typeof Point
+>Point : typeof Point, Symbol(Point, Decl(module.d.ts, 0, 0), Decl(function.ts, 0, 0))
return { x: 0, y: 0 };
>{ x: 0, y: 0 } : { x: number; y: number; }
->x : number
->y : number
+>x : number, Symbol(x, Decl(function.ts, 1, 12))
+>0 : number
+>y : number, Symbol(y, Decl(function.ts, 1, 18))
+>0 : number
}
=== tests/cases/conformance/internalModules/DeclarationMerging/test.ts ===
var cl: { x: number; y: number; }
->cl : { x: number; y: number; }
->x : number
->y : number
+>cl : { x: number; y: number; }, Symbol(cl, Decl(test.ts, 0, 3), Decl(test.ts, 1, 3), Decl(test.ts, 2, 3))
+>x : number, Symbol(x, Decl(test.ts, 0, 9))
+>y : number, Symbol(y, Decl(test.ts, 0, 20))
var cl = Point();
->cl : { x: number; y: number; }
+>cl : { x: number; y: number; }, Symbol(cl, Decl(test.ts, 0, 3), Decl(test.ts, 1, 3), Decl(test.ts, 2, 3))
>Point() : { x: number; y: number; }
->Point : typeof Point
+>Point : typeof Point, Symbol(Point, Decl(module.d.ts, 0, 0), Decl(function.ts, 0, 0))
var cl = Point.Origin;
->cl : { x: number; y: number; }
->Point.Origin : { x: number; y: number; }
->Point : typeof Point
->Origin : { x: number; y: number; }
+>cl : { x: number; y: number; }, Symbol(cl, Decl(test.ts, 0, 3), Decl(test.ts, 1, 3), Decl(test.ts, 2, 3))
+>Point.Origin : { x: number; y: number; }, Symbol(Point.Origin, Decl(module.d.ts, 1, 14))
+>Point : typeof Point, Symbol(Point, Decl(module.d.ts, 0, 0), Decl(function.ts, 0, 0))
+>Origin : { x: number; y: number; }, Symbol(Point.Origin, Decl(module.d.ts, 1, 14))
diff --git a/tests/baselines/reference/ArrowFunction4.types b/tests/baselines/reference/ArrowFunction4.types
index 1d049f193e6..0472aba3d6c 100644
--- a/tests/baselines/reference/ArrowFunction4.types
+++ b/tests/baselines/reference/ArrowFunction4.types
@@ -1,8 +1,8 @@
=== tests/cases/conformance/parser/ecmascript5/ErrorRecovery/ArrowFunctions/ArrowFunction4.ts ===
var v = (a, b) => {
->v : (a: any, b: any) => void
+>v : (a: any, b: any) => void, Symbol(v, Decl(ArrowFunction4.ts, 0, 3))
>(a, b) => { } : (a: any, b: any) => void
->a : any
->b : any
+>a : any, Symbol(a, Decl(ArrowFunction4.ts, 0, 9))
+>b : any, Symbol(b, Decl(ArrowFunction4.ts, 0, 11))
};
diff --git a/tests/baselines/reference/ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.types b/tests/baselines/reference/ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.types
index 3ea1919ecae..e3b806d38d5 100644
--- a/tests/baselines/reference/ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.types
+++ b/tests/baselines/reference/ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.types
@@ -1,49 +1,55 @@
=== tests/cases/conformance/internalModules/DeclarationMerging/ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.ts ===
class Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.ts, 0, 0), Decl(ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.ts, 4, 1))
constructor(public x: number, public y: number) { }
->x : number
->y : number
+>x : number, Symbol(x, Decl(ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.ts, 1, 16))
+>y : number, Symbol(y, Decl(ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.ts, 1, 33))
static Origin(): Point { return { x: 0, y: 0 }; }
->Origin : () => Point
->Point : Point
+>Origin : () => Point, Symbol(Point.Origin, Decl(ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.ts, 1, 55))
+>Point : Point, Symbol(Point, Decl(ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.ts, 0, 0), Decl(ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.ts, 4, 1))
>{ x: 0, y: 0 } : { x: number; y: number; }
->x : number
->y : number
+>x : number, Symbol(x, Decl(ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.ts, 3, 37))
+>0 : number
+>y : number, Symbol(y, Decl(ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.ts, 3, 43))
+>0 : number
}
module Point {
->Point : typeof Point
+>Point : typeof Point, Symbol(Point, Decl(ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.ts, 0, 0), Decl(ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.ts, 4, 1))
function Origin() { return ""; }// not an error, since not exported
->Origin : () => string
+>Origin : () => string, Symbol(Origin, Decl(ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.ts, 6, 14))
+>"" : string
}
module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.ts, 8, 1))
export class Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.ts, 11, 10), Decl(ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.ts, 16, 5))
constructor(public x: number, public y: number) { }
->x : number
->y : number
+>x : number, Symbol(x, Decl(ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.ts, 13, 20))
+>y : number, Symbol(y, Decl(ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.ts, 13, 37))
static Origin(): Point { return { x: 0, y: 0 }; }
->Origin : () => Point
->Point : Point
+>Origin : () => Point, Symbol(Point.Origin, Decl(ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.ts, 13, 59))
+>Point : Point, Symbol(Point, Decl(ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.ts, 11, 10), Decl(ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.ts, 16, 5))
>{ x: 0, y: 0 } : { x: number; y: number; }
->x : number
->y : number
+>x : number, Symbol(x, Decl(ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.ts, 15, 41))
+>0 : number
+>y : number, Symbol(y, Decl(ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.ts, 15, 47))
+>0 : number
}
export module Point {
->Point : typeof Point
+>Point : typeof Point, Symbol(Point, Decl(ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.ts, 11, 10), Decl(ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.ts, 16, 5))
function Origin() { return ""; }// not an error since not exported
->Origin : () => string
+>Origin : () => string, Symbol(Origin, Decl(ClassAndModuleThatMergeWithStaticFunctionAndNonExportedFunctionThatShareAName.ts, 18, 25))
+>"" : string
}
}
diff --git a/tests/baselines/reference/ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.types b/tests/baselines/reference/ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.types
index 827089847e2..961e8c1bfd2 100644
--- a/tests/baselines/reference/ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.types
+++ b/tests/baselines/reference/ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.types
@@ -1,49 +1,55 @@
=== tests/cases/conformance/internalModules/DeclarationMerging/ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.ts ===
class Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.ts, 0, 0), Decl(ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.ts, 4, 1))
constructor(public x: number, public y: number) { }
->x : number
->y : number
+>x : number, Symbol(x, Decl(ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.ts, 1, 16))
+>y : number, Symbol(y, Decl(ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.ts, 1, 33))
static Origin: Point = { x: 0, y: 0 };
->Origin : Point
->Point : Point
+>Origin : Point, Symbol(Point.Origin, Decl(ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.ts, 1, 55))
+>Point : Point, Symbol(Point, Decl(ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.ts, 0, 0), Decl(ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.ts, 4, 1))
>{ x: 0, y: 0 } : { x: number; y: number; }
->x : number
->y : number
+>x : number, Symbol(x, Decl(ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.ts, 3, 28))
+>0 : number
+>y : number, Symbol(y, Decl(ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.ts, 3, 34))
+>0 : number
}
module Point {
->Point : typeof Point
+>Point : typeof Point, Symbol(Point, Decl(ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.ts, 0, 0), Decl(ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.ts, 4, 1))
var Origin = ""; // not an error, since not exported
->Origin : string
+>Origin : string, Symbol(Origin, Decl(ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.ts, 7, 7))
+>"" : string
}
module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.ts, 8, 1))
export class Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.ts, 11, 10), Decl(ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.ts, 16, 5))
constructor(public x: number, public y: number) { }
->x : number
->y : number
+>x : number, Symbol(x, Decl(ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.ts, 13, 20))
+>y : number, Symbol(y, Decl(ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.ts, 13, 37))
static Origin: Point = { x: 0, y: 0 };
->Origin : Point
->Point : Point
+>Origin : Point, Symbol(Point.Origin, Decl(ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.ts, 13, 59))
+>Point : Point, Symbol(Point, Decl(ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.ts, 11, 10), Decl(ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.ts, 16, 5))
>{ x: 0, y: 0 } : { x: number; y: number; }
->x : number
->y : number
+>x : number, Symbol(x, Decl(ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.ts, 15, 32))
+>0 : number
+>y : number, Symbol(y, Decl(ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.ts, 15, 38))
+>0 : number
}
export module Point {
->Point : typeof Point
+>Point : typeof Point, Symbol(Point, Decl(ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.ts, 11, 10), Decl(ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.ts, 16, 5))
var Origin = ""; // not an error since not exported
->Origin : string
+>Origin : string, Symbol(Origin, Decl(ClassAndModuleThatMergeWithStaticVariableAndNonExportedVarThatShareAName.ts, 19, 11))
+>"" : string
}
}
diff --git a/tests/baselines/reference/ES3For-ofTypeCheck2.types b/tests/baselines/reference/ES3For-ofTypeCheck2.types
index f5ca0ab17e8..34e73689215 100644
--- a/tests/baselines/reference/ES3For-ofTypeCheck2.types
+++ b/tests/baselines/reference/ES3For-ofTypeCheck2.types
@@ -1,5 +1,6 @@
=== tests/cases/conformance/statements/for-ofStatements/ES3For-ofTypeCheck2.ts ===
for (var v of [true]) { }
->v : boolean
+>v : boolean, Symbol(v, Decl(ES3For-ofTypeCheck2.ts, 0, 8))
>[true] : boolean[]
+>true : boolean
diff --git a/tests/baselines/reference/ES3For-ofTypeCheck6.types b/tests/baselines/reference/ES3For-ofTypeCheck6.types
index d7e6045b029..0945c7b0795 100644
--- a/tests/baselines/reference/ES3For-ofTypeCheck6.types
+++ b/tests/baselines/reference/ES3For-ofTypeCheck6.types
@@ -1,8 +1,8 @@
=== tests/cases/conformance/statements/for-ofStatements/ES3For-ofTypeCheck6.ts ===
var union: string[] | number[];
->union : string[] | number[]
+>union : string[] | number[], Symbol(union, Decl(ES3For-ofTypeCheck6.ts, 0, 3))
for (var v of union) { }
->v : string | number
->union : string[] | number[]
+>v : string | number, Symbol(v, Decl(ES3For-ofTypeCheck6.ts, 1, 8))
+>union : string[] | number[], Symbol(union, Decl(ES3For-ofTypeCheck6.ts, 0, 3))
diff --git a/tests/baselines/reference/ES5For-of10.types b/tests/baselines/reference/ES5For-of10.types
index 32a2adcf3da..1f84648a76e 100644
--- a/tests/baselines/reference/ES5For-of10.types
+++ b/tests/baselines/reference/ES5For-of10.types
@@ -1,29 +1,30 @@
=== tests/cases/conformance/statements/for-ofStatements/ES5For-of10.ts ===
function foo() {
->foo : () => { x: number; }
+>foo : () => { x: number; }, Symbol(foo, Decl(ES5For-of10.ts, 0, 0))
return { x: 0 };
>{ x: 0 } : { x: number; }
->x : number
+>x : number, Symbol(x, Decl(ES5For-of10.ts, 1, 12))
+>0 : number
}
for (foo().x of []) {
->foo().x : number
+>foo().x : number, Symbol(x, Decl(ES5For-of10.ts, 1, 12))
>foo() : { x: number; }
->foo : () => { x: number; }
->x : number
+>foo : () => { x: number; }, Symbol(foo, Decl(ES5For-of10.ts, 0, 0))
+>x : number, Symbol(x, Decl(ES5For-of10.ts, 1, 12))
>[] : undefined[]
for (foo().x of [])
->foo().x : number
+>foo().x : number, Symbol(x, Decl(ES5For-of10.ts, 1, 12))
>foo() : { x: number; }
->foo : () => { x: number; }
->x : number
+>foo : () => { x: number; }, Symbol(foo, Decl(ES5For-of10.ts, 0, 0))
+>x : number, Symbol(x, Decl(ES5For-of10.ts, 1, 12))
>[] : undefined[]
var p = foo().x;
->p : number
->foo().x : number
+>p : number, Symbol(p, Decl(ES5For-of10.ts, 5, 11))
+>foo().x : number, Symbol(x, Decl(ES5For-of10.ts, 1, 12))
>foo() : { x: number; }
->foo : () => { x: number; }
->x : number
+>foo : () => { x: number; }, Symbol(foo, Decl(ES5For-of10.ts, 0, 0))
+>x : number, Symbol(x, Decl(ES5For-of10.ts, 1, 12))
}
diff --git a/tests/baselines/reference/ES5For-of11.types b/tests/baselines/reference/ES5For-of11.types
index e51bc46f157..b609424fb75 100644
--- a/tests/baselines/reference/ES5For-of11.types
+++ b/tests/baselines/reference/ES5For-of11.types
@@ -1,8 +1,8 @@
=== tests/cases/conformance/statements/for-ofStatements/ES5For-of11.ts ===
var v;
->v : any
+>v : any, Symbol(v, Decl(ES5For-of11.ts, 0, 3))
for (v of []) { }
->v : any
+>v : any, Symbol(v, Decl(ES5For-of11.ts, 0, 3))
>[] : undefined[]
diff --git a/tests/baselines/reference/ES5For-of13.types b/tests/baselines/reference/ES5For-of13.types
index 64aac2ae4b2..7f131241081 100644
--- a/tests/baselines/reference/ES5For-of13.types
+++ b/tests/baselines/reference/ES5For-of13.types
@@ -1,9 +1,12 @@
=== tests/cases/conformance/statements/for-ofStatements/ES5For-of13.ts ===
for (let v of ['a', 'b', 'c']) {
->v : string
+>v : string, Symbol(v, Decl(ES5For-of13.ts, 0, 8))
>['a', 'b', 'c'] : string[]
+>'a' : string
+>'b' : string
+>'c' : string
var x = v;
->x : string
->v : string
+>x : string, Symbol(x, Decl(ES5For-of13.ts, 1, 7))
+>v : string, Symbol(v, Decl(ES5For-of13.ts, 0, 8))
}
diff --git a/tests/baselines/reference/ES5For-of14.types b/tests/baselines/reference/ES5For-of14.types
index 0a4f9a78453..3ca30c7f3dc 100644
--- a/tests/baselines/reference/ES5For-of14.types
+++ b/tests/baselines/reference/ES5For-of14.types
@@ -1,9 +1,9 @@
=== tests/cases/conformance/statements/for-ofStatements/ES5For-of14.ts ===
for (const v of []) {
->v : any
+>v : any, Symbol(v, Decl(ES5For-of14.ts, 0, 10))
>[] : undefined[]
var x = v;
->x : any
->v : any
+>x : any, Symbol(x, Decl(ES5For-of14.ts, 1, 7))
+>v : any, Symbol(v, Decl(ES5For-of14.ts, 0, 10))
}
diff --git a/tests/baselines/reference/ES5For-of15.types b/tests/baselines/reference/ES5For-of15.types
index 90409b8b167..a587ad7dcd1 100644
--- a/tests/baselines/reference/ES5For-of15.types
+++ b/tests/baselines/reference/ES5For-of15.types
@@ -1,17 +1,17 @@
=== tests/cases/conformance/statements/for-ofStatements/ES5For-of15.ts ===
for (let v of []) {
->v : any
+>v : any, Symbol(v, Decl(ES5For-of15.ts, 0, 8))
>[] : undefined[]
v;
->v : any
+>v : any, Symbol(v, Decl(ES5For-of15.ts, 0, 8))
for (const v of []) {
->v : any
+>v : any, Symbol(v, Decl(ES5For-of15.ts, 2, 14))
>[] : undefined[]
var x = v;
->x : any
->v : any
+>x : any, Symbol(x, Decl(ES5For-of15.ts, 3, 11))
+>v : any, Symbol(v, Decl(ES5For-of15.ts, 2, 14))
}
}
diff --git a/tests/baselines/reference/ES5For-of16.types b/tests/baselines/reference/ES5For-of16.types
index 94f01509711..03b110edcf3 100644
--- a/tests/baselines/reference/ES5For-of16.types
+++ b/tests/baselines/reference/ES5For-of16.types
@@ -1,21 +1,21 @@
=== tests/cases/conformance/statements/for-ofStatements/ES5For-of16.ts ===
for (let v of []) {
->v : any
+>v : any, Symbol(v, Decl(ES5For-of16.ts, 0, 8))
>[] : undefined[]
v;
->v : any
+>v : any, Symbol(v, Decl(ES5For-of16.ts, 0, 8))
for (let v of []) {
->v : any
+>v : any, Symbol(v, Decl(ES5For-of16.ts, 2, 12))
>[] : undefined[]
var x = v;
->x : any
->v : any
+>x : any, Symbol(x, Decl(ES5For-of16.ts, 3, 11))
+>v : any, Symbol(v, Decl(ES5For-of16.ts, 2, 12))
v++;
>v++ : number
->v : any
+>v : any, Symbol(v, Decl(ES5For-of16.ts, 2, 12))
}
}
diff --git a/tests/baselines/reference/ES5For-of18.types b/tests/baselines/reference/ES5For-of18.types
index e78bc846df6..8c659e20286 100644
--- a/tests/baselines/reference/ES5For-of18.types
+++ b/tests/baselines/reference/ES5For-of18.types
@@ -1,16 +1,16 @@
=== tests/cases/conformance/statements/for-ofStatements/ES5For-of18.ts ===
for (let v of []) {
->v : any
+>v : any, Symbol(v, Decl(ES5For-of18.ts, 0, 8))
>[] : undefined[]
v;
->v : any
+>v : any, Symbol(v, Decl(ES5For-of18.ts, 0, 8))
}
for (let v of []) {
->v : any
+>v : any, Symbol(v, Decl(ES5For-of18.ts, 3, 8))
>[] : undefined[]
v;
->v : any
+>v : any, Symbol(v, Decl(ES5For-of18.ts, 3, 8))
}
diff --git a/tests/baselines/reference/ES5For-of19.types b/tests/baselines/reference/ES5For-of19.types
index d95dc63d262..ba55400c858 100644
--- a/tests/baselines/reference/ES5For-of19.types
+++ b/tests/baselines/reference/ES5For-of19.types
@@ -1,20 +1,20 @@
=== tests/cases/conformance/statements/for-ofStatements/ES5For-of19.ts ===
for (let v of []) {
->v : any
+>v : any, Symbol(v, Decl(ES5For-of19.ts, 0, 8))
>[] : undefined[]
v;
->v : any
+>v : any, Symbol(v, Decl(ES5For-of19.ts, 0, 8))
function foo() {
->foo : () => void
+>foo : () => void, Symbol(foo, Decl(ES5For-of19.ts, 1, 6))
for (const v of []) {
->v : any
+>v : any, Symbol(v, Decl(ES5For-of19.ts, 3, 18))
>[] : undefined[]
v;
->v : any
+>v : any, Symbol(v, Decl(ES5For-of19.ts, 3, 18))
}
}
}
diff --git a/tests/baselines/reference/ES5For-of2.types b/tests/baselines/reference/ES5For-of2.types
index 3e680c44bc8..7e3f096d9f6 100644
--- a/tests/baselines/reference/ES5For-of2.types
+++ b/tests/baselines/reference/ES5For-of2.types
@@ -1,9 +1,9 @@
=== tests/cases/conformance/statements/for-ofStatements/ES5For-of2.ts ===
for (var v of []) {
->v : any
+>v : any, Symbol(v, Decl(ES5For-of2.ts, 0, 8))
>[] : undefined[]
var x = v;
->x : any
->v : any
+>x : any, Symbol(x, Decl(ES5For-of2.ts, 1, 7))
+>v : any, Symbol(v, Decl(ES5For-of2.ts, 0, 8))
}
diff --git a/tests/baselines/reference/ES5For-of21.types b/tests/baselines/reference/ES5For-of21.types
index a15942fd013..67280f1ae33 100644
--- a/tests/baselines/reference/ES5For-of21.types
+++ b/tests/baselines/reference/ES5For-of21.types
@@ -1,9 +1,9 @@
=== tests/cases/conformance/statements/for-ofStatements/ES5For-of21.ts ===
for (let v of []) {
->v : any
+>v : any, Symbol(v, Decl(ES5For-of21.ts, 0, 8))
>[] : undefined[]
for (let _i of []) { }
->_i : any
+>_i : any, Symbol(_i, Decl(ES5For-of21.ts, 1, 12))
>[] : undefined[]
}
diff --git a/tests/baselines/reference/ES5For-of24.types b/tests/baselines/reference/ES5For-of24.types
index 7170073b5d9..948a02d2111 100644
--- a/tests/baselines/reference/ES5For-of24.types
+++ b/tests/baselines/reference/ES5For-of24.types
@@ -1,12 +1,16 @@
=== tests/cases/conformance/statements/for-ofStatements/ES5For-of24.ts ===
var a = [1, 2, 3];
->a : number[]
+>a : number[], Symbol(a, Decl(ES5For-of24.ts, 0, 3))
>[1, 2, 3] : number[]
+>1 : number
+>2 : number
+>3 : number
for (var v of a) {
->v : number
->a : number[]
+>v : number, Symbol(v, Decl(ES5For-of24.ts, 1, 8))
+>a : number[], Symbol(a, Decl(ES5For-of24.ts, 0, 3))
let a = 0;
->a : number
+>a : number, Symbol(a, Decl(ES5For-of24.ts, 2, 7))
+>0 : number
}
diff --git a/tests/baselines/reference/ES5For-of25.types b/tests/baselines/reference/ES5For-of25.types
index 7b306ee9a26..ffecb93363a 100644
--- a/tests/baselines/reference/ES5For-of25.types
+++ b/tests/baselines/reference/ES5For-of25.types
@@ -1,15 +1,18 @@
=== tests/cases/conformance/statements/for-ofStatements/ES5For-of25.ts ===
var a = [1, 2, 3];
->a : number[]
+>a : number[], Symbol(a, Decl(ES5For-of25.ts, 0, 3))
>[1, 2, 3] : number[]
+>1 : number
+>2 : number
+>3 : number
for (var v of a) {
->v : number
->a : number[]
+>v : number, Symbol(v, Decl(ES5For-of25.ts, 1, 8))
+>a : number[], Symbol(a, Decl(ES5For-of25.ts, 0, 3))
v;
->v : number
+>v : number, Symbol(v, Decl(ES5For-of25.ts, 1, 8))
a;
->a : number[]
+>a : number[], Symbol(a, Decl(ES5For-of25.ts, 0, 3))
}
diff --git a/tests/baselines/reference/ES5For-of3.types b/tests/baselines/reference/ES5For-of3.types
index c47328816e8..fd01faa3e12 100644
--- a/tests/baselines/reference/ES5For-of3.types
+++ b/tests/baselines/reference/ES5For-of3.types
@@ -1,9 +1,12 @@
=== tests/cases/conformance/statements/for-ofStatements/ES5For-of3.ts ===
for (var v of ['a', 'b', 'c'])
->v : string
+>v : string, Symbol(v, Decl(ES5For-of3.ts, 0, 8))
>['a', 'b', 'c'] : string[]
+>'a' : string
+>'b' : string
+>'c' : string
var x = v;
->x : string
->v : string
+>x : string, Symbol(x, Decl(ES5For-of3.ts, 1, 7))
+>v : string, Symbol(v, Decl(ES5For-of3.ts, 0, 8))
diff --git a/tests/baselines/reference/ES5For-of4.types b/tests/baselines/reference/ES5For-of4.types
index 9396096746c..ee756b0e60f 100644
--- a/tests/baselines/reference/ES5For-of4.types
+++ b/tests/baselines/reference/ES5For-of4.types
@@ -1,13 +1,13 @@
=== tests/cases/conformance/statements/for-ofStatements/ES5For-of4.ts ===
for (var v of [])
->v : any
+>v : any, Symbol(v, Decl(ES5For-of4.ts, 0, 8))
>[] : undefined[]
var x = v;
->x : any
->v : any
+>x : any, Symbol(x, Decl(ES5For-of4.ts, 1, 7))
+>v : any, Symbol(v, Decl(ES5For-of4.ts, 0, 8))
var y = v;
->y : any
->v : any
+>y : any, Symbol(y, Decl(ES5For-of4.ts, 2, 3))
+>v : any, Symbol(v, Decl(ES5For-of4.ts, 0, 8))
diff --git a/tests/baselines/reference/ES5For-of5.types b/tests/baselines/reference/ES5For-of5.types
index dd9aa285edb..23bd15a88f4 100644
--- a/tests/baselines/reference/ES5For-of5.types
+++ b/tests/baselines/reference/ES5For-of5.types
@@ -1,9 +1,9 @@
=== tests/cases/conformance/statements/for-ofStatements/ES5For-of5.ts ===
for (var _a of []) {
->_a : any
+>_a : any, Symbol(_a, Decl(ES5For-of5.ts, 0, 8))
>[] : undefined[]
var x = _a;
->x : any
->_a : any
+>x : any, Symbol(x, Decl(ES5For-of5.ts, 1, 7))
+>_a : any, Symbol(_a, Decl(ES5For-of5.ts, 0, 8))
}
diff --git a/tests/baselines/reference/ES5For-of6.types b/tests/baselines/reference/ES5For-of6.types
index e2d2f872809..2381b519bd7 100644
--- a/tests/baselines/reference/ES5For-of6.types
+++ b/tests/baselines/reference/ES5For-of6.types
@@ -1,16 +1,16 @@
=== tests/cases/conformance/statements/for-ofStatements/ES5For-of6.ts ===
for (var w of []) {
->w : any
+>w : any, Symbol(w, Decl(ES5For-of6.ts, 0, 8))
>[] : undefined[]
for (var v of []) {
->v : any
+>v : any, Symbol(v, Decl(ES5For-of6.ts, 1, 12))
>[] : undefined[]
var x = [w, v];
->x : any[]
+>x : any[], Symbol(x, Decl(ES5For-of6.ts, 2, 11))
>[w, v] : any[]
->w : any
->v : any
+>w : any, Symbol(w, Decl(ES5For-of6.ts, 0, 8))
+>v : any, Symbol(v, Decl(ES5For-of6.ts, 1, 12))
}
}
diff --git a/tests/baselines/reference/ES5For-of9.types b/tests/baselines/reference/ES5For-of9.types
index 60870c2d642..c8af0053413 100644
--- a/tests/baselines/reference/ES5For-of9.types
+++ b/tests/baselines/reference/ES5For-of9.types
@@ -1,30 +1,31 @@
=== tests/cases/conformance/statements/for-ofStatements/ES5For-of9.ts ===
function foo() {
->foo : () => { x: number; }
+>foo : () => { x: number; }, Symbol(foo, Decl(ES5For-of9.ts, 0, 0))
return { x: 0 };
>{ x: 0 } : { x: number; }
->x : number
+>x : number, Symbol(x, Decl(ES5For-of9.ts, 1, 12))
+>0 : number
}
for (foo().x of []) {
->foo().x : number
+>foo().x : number, Symbol(x, Decl(ES5For-of9.ts, 1, 12))
>foo() : { x: number; }
->foo : () => { x: number; }
->x : number
+>foo : () => { x: number; }, Symbol(foo, Decl(ES5For-of9.ts, 0, 0))
+>x : number, Symbol(x, Decl(ES5For-of9.ts, 1, 12))
>[] : undefined[]
for (foo().x of []) {
->foo().x : number
+>foo().x : number, Symbol(x, Decl(ES5For-of9.ts, 1, 12))
>foo() : { x: number; }
->foo : () => { x: number; }
->x : number
+>foo : () => { x: number; }, Symbol(foo, Decl(ES5For-of9.ts, 0, 0))
+>x : number, Symbol(x, Decl(ES5For-of9.ts, 1, 12))
>[] : undefined[]
var p = foo().x;
->p : number
->foo().x : number
+>p : number, Symbol(p, Decl(ES5For-of9.ts, 5, 11))
+>foo().x : number, Symbol(x, Decl(ES5For-of9.ts, 1, 12))
>foo() : { x: number; }
->foo : () => { x: number; }
->x : number
+>foo : () => { x: number; }, Symbol(foo, Decl(ES5For-of9.ts, 0, 0))
+>x : number, Symbol(x, Decl(ES5For-of9.ts, 1, 12))
}
}
diff --git a/tests/baselines/reference/ES5For-ofTypeCheck1.types b/tests/baselines/reference/ES5For-ofTypeCheck1.types
index 4da0ecc0e36..001cd343edd 100644
--- a/tests/baselines/reference/ES5For-ofTypeCheck1.types
+++ b/tests/baselines/reference/ES5For-ofTypeCheck1.types
@@ -1,4 +1,5 @@
=== tests/cases/conformance/statements/for-ofStatements/ES5For-ofTypeCheck1.ts ===
for (var v of "") { }
->v : string
+>v : string, Symbol(v, Decl(ES5For-ofTypeCheck1.ts, 0, 8))
+>"" : string
diff --git a/tests/baselines/reference/ES5For-ofTypeCheck2.types b/tests/baselines/reference/ES5For-ofTypeCheck2.types
index e6b86ce1d81..5dd5c58bf50 100644
--- a/tests/baselines/reference/ES5For-ofTypeCheck2.types
+++ b/tests/baselines/reference/ES5For-ofTypeCheck2.types
@@ -1,5 +1,6 @@
=== tests/cases/conformance/statements/for-ofStatements/ES5For-ofTypeCheck2.ts ===
for (var v of [true]) { }
->v : boolean
+>v : boolean, Symbol(v, Decl(ES5For-ofTypeCheck2.ts, 0, 8))
>[true] : boolean[]
+>true : boolean
diff --git a/tests/baselines/reference/ES5For-ofTypeCheck3.types b/tests/baselines/reference/ES5For-ofTypeCheck3.types
index 5293634c6c5..9c5e81a4a3e 100644
--- a/tests/baselines/reference/ES5For-ofTypeCheck3.types
+++ b/tests/baselines/reference/ES5For-ofTypeCheck3.types
@@ -1,9 +1,11 @@
=== tests/cases/conformance/statements/for-ofStatements/ES5For-ofTypeCheck3.ts ===
var tuple: [string, number] = ["", 0];
->tuple : [string, number]
+>tuple : [string, number], Symbol(tuple, Decl(ES5For-ofTypeCheck3.ts, 0, 3))
>["", 0] : [string, number]
+>"" : string
+>0 : number
for (var v of tuple) { }
->v : string | number
->tuple : [string, number]
+>v : string | number, Symbol(v, Decl(ES5For-ofTypeCheck3.ts, 1, 8))
+>tuple : [string, number], Symbol(tuple, Decl(ES5For-ofTypeCheck3.ts, 0, 3))
diff --git a/tests/baselines/reference/ES5For-ofTypeCheck4.types b/tests/baselines/reference/ES5For-ofTypeCheck4.types
index 4f5721a0604..37d75b8865e 100644
--- a/tests/baselines/reference/ES5For-ofTypeCheck4.types
+++ b/tests/baselines/reference/ES5For-ofTypeCheck4.types
@@ -1,8 +1,8 @@
=== tests/cases/conformance/statements/for-ofStatements/ES5For-ofTypeCheck4.ts ===
var union: string | string[];
->union : string | string[]
+>union : string | string[], Symbol(union, Decl(ES5For-ofTypeCheck4.ts, 0, 3))
for (const v of union) { }
->v : string
->union : string | string[]
+>v : string, Symbol(v, Decl(ES5For-ofTypeCheck4.ts, 1, 10))
+>union : string | string[], Symbol(union, Decl(ES5For-ofTypeCheck4.ts, 0, 3))
diff --git a/tests/baselines/reference/ES5For-ofTypeCheck5.types b/tests/baselines/reference/ES5For-ofTypeCheck5.types
index ed3d13f3918..35487b4927d 100644
--- a/tests/baselines/reference/ES5For-ofTypeCheck5.types
+++ b/tests/baselines/reference/ES5For-ofTypeCheck5.types
@@ -1,8 +1,8 @@
=== tests/cases/conformance/statements/for-ofStatements/ES5For-ofTypeCheck5.ts ===
var union: string | number[];
->union : string | number[]
+>union : string | number[], Symbol(union, Decl(ES5For-ofTypeCheck5.ts, 0, 3))
for (var v of union) { }
->v : string | number
->union : string | number[]
+>v : string | number, Symbol(v, Decl(ES5For-ofTypeCheck5.ts, 1, 8))
+>union : string | number[], Symbol(union, Decl(ES5For-ofTypeCheck5.ts, 0, 3))
diff --git a/tests/baselines/reference/ES5For-ofTypeCheck6.types b/tests/baselines/reference/ES5For-ofTypeCheck6.types
index 87999d9b0ca..74752ea7114 100644
--- a/tests/baselines/reference/ES5For-ofTypeCheck6.types
+++ b/tests/baselines/reference/ES5For-ofTypeCheck6.types
@@ -1,8 +1,8 @@
=== tests/cases/conformance/statements/for-ofStatements/ES5For-ofTypeCheck6.ts ===
var union: string[] | number[];
->union : string[] | number[]
+>union : string[] | number[], Symbol(union, Decl(ES5For-ofTypeCheck6.ts, 0, 3))
for (var v of union) { }
->v : string | number
->union : string[] | number[]
+>v : string | number, Symbol(v, Decl(ES5For-ofTypeCheck6.ts, 1, 8))
+>union : string[] | number[], Symbol(union, Decl(ES5For-ofTypeCheck6.ts, 0, 3))
diff --git a/tests/baselines/reference/ES5SymbolType1.types b/tests/baselines/reference/ES5SymbolType1.types
index 79d93902fd6..8b88bbf4da5 100644
--- a/tests/baselines/reference/ES5SymbolType1.types
+++ b/tests/baselines/reference/ES5SymbolType1.types
@@ -1,10 +1,10 @@
=== tests/cases/conformance/Symbols/ES5SymbolType1.ts ===
var s: symbol;
->s : symbol
+>s : symbol, Symbol(s, Decl(ES5SymbolType1.ts, 0, 3))
s.toString();
>s.toString() : string
->s.toString : () => string
->s : symbol
->toString : () => string
+>s.toString : () => string, Symbol(Object.toString, Decl(lib.d.ts, 96, 26))
+>s : symbol, Symbol(s, Decl(ES5SymbolType1.ts, 0, 3))
+>toString : () => string, Symbol(Object.toString, Decl(lib.d.ts, 96, 26))
diff --git a/tests/baselines/reference/EnumAndModuleWithSameNameAndCommonRoot.types b/tests/baselines/reference/EnumAndModuleWithSameNameAndCommonRoot.types
index 3cbd14c78bb..b2e11aa63ae 100644
--- a/tests/baselines/reference/EnumAndModuleWithSameNameAndCommonRoot.types
+++ b/tests/baselines/reference/EnumAndModuleWithSameNameAndCommonRoot.types
@@ -1,43 +1,45 @@
=== tests/cases/conformance/internalModules/DeclarationMerging/EnumAndModuleWithSameNameAndCommonRoot.ts ===
enum enumdule {
->enumdule : enumdule
+>enumdule : enumdule, Symbol(enumdule, Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 0, 0), Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 2, 1))
Red, Blue
->Red : enumdule
->Blue : enumdule
+>Red : enumdule, Symbol(enumdule.Red, Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 0, 15))
+>Blue : enumdule, Symbol(enumdule.Blue, Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 1, 8))
}
module enumdule {
->enumdule : typeof enumdule
+>enumdule : typeof enumdule, Symbol(enumdule, Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 0, 0), Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 2, 1))
export class Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 4, 17))
constructor(public x: number, public y: number) { }
->x : number
->y : number
+>x : number, Symbol(x, Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 7, 20))
+>y : number, Symbol(y, Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 7, 37))
}
}
var x: enumdule;
->x : enumdule
->enumdule : enumdule
+>x : enumdule, Symbol(x, Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 11, 3), Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 12, 3))
+>enumdule : enumdule, Symbol(enumdule, Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 0, 0), Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 2, 1))
var x = enumdule.Red;
->x : enumdule
->enumdule.Red : enumdule
->enumdule : typeof enumdule
->Red : enumdule
+>x : enumdule, Symbol(x, Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 11, 3), Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 12, 3))
+>enumdule.Red : enumdule, Symbol(enumdule.Red, Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 0, 15))
+>enumdule : typeof enumdule, Symbol(enumdule, Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 0, 0), Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 2, 1))
+>Red : enumdule, Symbol(enumdule.Red, Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 0, 15))
var y: { x: number; y: number };
->y : { x: number; y: number; }
->x : number
->y : number
+>y : { x: number; y: number; }, Symbol(y, Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 14, 3), Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 15, 3))
+>x : number, Symbol(x, Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 14, 8))
+>y : number, Symbol(y, Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 14, 19))
var y = new enumdule.Point(0, 0);
->y : { x: number; y: number; }
+>y : { x: number; y: number; }, Symbol(y, Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 14, 3), Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 15, 3))
>new enumdule.Point(0, 0) : enumdule.Point
->enumdule.Point : typeof enumdule.Point
->enumdule : typeof enumdule
->Point : typeof enumdule.Point
+>enumdule.Point : typeof enumdule.Point, Symbol(enumdule.Point, Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 4, 17))
+>enumdule : typeof enumdule, Symbol(enumdule, Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 0, 0), Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 2, 1))
+>Point : typeof enumdule.Point, Symbol(enumdule.Point, Decl(EnumAndModuleWithSameNameAndCommonRoot.ts, 4, 17))
+>0 : number
+>0 : number
diff --git a/tests/baselines/reference/ExportClassWhichExtendsInterfaceWithInaccessibleType.types b/tests/baselines/reference/ExportClassWhichExtendsInterfaceWithInaccessibleType.types
index 6d69109e542..90d8bf5fbe7 100644
--- a/tests/baselines/reference/ExportClassWhichExtendsInterfaceWithInaccessibleType.types
+++ b/tests/baselines/reference/ExportClassWhichExtendsInterfaceWithInaccessibleType.types
@@ -1,36 +1,37 @@
=== tests/cases/conformance/internalModules/exportDeclarations/ExportClassWhichExtendsInterfaceWithInaccessibleType.ts ===
module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(ExportClassWhichExtendsInterfaceWithInaccessibleType.ts, 0, 0))
interface Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(ExportClassWhichExtendsInterfaceWithInaccessibleType.ts, 0, 10))
x: number;
->x : number
+>x : number, Symbol(x, Decl(ExportClassWhichExtendsInterfaceWithInaccessibleType.ts, 2, 21))
y: number;
->y : number
+>y : number, Symbol(y, Decl(ExportClassWhichExtendsInterfaceWithInaccessibleType.ts, 3, 18))
fromOrigin(p: Point): number;
->fromOrigin : (p: Point) => number
->p : Point
->Point : Point
+>fromOrigin : (p: Point) => number, Symbol(fromOrigin, Decl(ExportClassWhichExtendsInterfaceWithInaccessibleType.ts, 4, 18))
+>p : Point, Symbol(p, Decl(ExportClassWhichExtendsInterfaceWithInaccessibleType.ts, 6, 19))
+>Point : Point, Symbol(Point, Decl(ExportClassWhichExtendsInterfaceWithInaccessibleType.ts, 0, 10))
}
export class Point2d implements Point {
->Point2d : Point2d
->Point : Point
+>Point2d : Point2d, Symbol(Point2d, Decl(ExportClassWhichExtendsInterfaceWithInaccessibleType.ts, 7, 5))
+>Point : Point, Symbol(Point, Decl(ExportClassWhichExtendsInterfaceWithInaccessibleType.ts, 0, 10))
constructor(public x: number, public y: number) { }
->x : number
->y : number
+>x : number, Symbol(x, Decl(ExportClassWhichExtendsInterfaceWithInaccessibleType.ts, 10, 20))
+>y : number, Symbol(y, Decl(ExportClassWhichExtendsInterfaceWithInaccessibleType.ts, 10, 37))
fromOrigin(p: Point) {
->fromOrigin : (p: Point) => number
->p : Point
->Point : Point
+>fromOrigin : (p: Point) => number, Symbol(fromOrigin, Decl(ExportClassWhichExtendsInterfaceWithInaccessibleType.ts, 10, 59))
+>p : Point, Symbol(p, Decl(ExportClassWhichExtendsInterfaceWithInaccessibleType.ts, 12, 19))
+>Point : Point, Symbol(Point, Decl(ExportClassWhichExtendsInterfaceWithInaccessibleType.ts, 0, 10))
return 1;
+>1 : number
}
}
}
diff --git a/tests/baselines/reference/ExportClassWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.types b/tests/baselines/reference/ExportClassWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.types
index 17b4a25cde3..71ddde1965c 100644
--- a/tests/baselines/reference/ExportClassWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.types
+++ b/tests/baselines/reference/ExportClassWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.types
@@ -1,50 +1,55 @@
=== tests/cases/conformance/internalModules/exportDeclarations/ExportClassWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts ===
module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(ExportClassWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 0, 0))
export class Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(ExportClassWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 0, 10))
x: number;
->x : number
+>x : number, Symbol(x, Decl(ExportClassWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 2, 24))
y: number;
->y : number
+>y : number, Symbol(y, Decl(ExportClassWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 3, 18))
}
export var Origin: Point = { x: 0, y: 0 };
->Origin : Point
->Point : Point
+>Origin : Point, Symbol(Origin, Decl(ExportClassWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 7, 14))
+>Point : Point, Symbol(Point, Decl(ExportClassWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 0, 10))
>{ x: 0, y: 0 } : { x: number; y: number; }
->x : number
->y : number
+>x : number, Symbol(x, Decl(ExportClassWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 7, 32))
+>0 : number
+>y : number, Symbol(y, Decl(ExportClassWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 7, 38))
+>0 : number
export class Point3d extends Point {
->Point3d : Point3d
->Point : Point
+>Point3d : Point3d, Symbol(Point3d, Decl(ExportClassWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 7, 46))
+>Point : Point, Symbol(Point, Decl(ExportClassWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 0, 10))
z: number;
->z : number
+>z : number, Symbol(z, Decl(ExportClassWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 9, 40))
}
export var Origin3d: Point3d = { x: 0, y: 0, z: 0 };
->Origin3d : Point3d
->Point3d : Point3d
+>Origin3d : Point3d, Symbol(Origin3d, Decl(ExportClassWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 13, 14))
+>Point3d : Point3d, Symbol(Point3d, Decl(ExportClassWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 7, 46))
>{ x: 0, y: 0, z: 0 } : { x: number; y: number; z: number; }
->x : number
->y : number
->z : number
+>x : number, Symbol(x, Decl(ExportClassWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 13, 36))
+>0 : number
+>y : number, Symbol(y, Decl(ExportClassWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 13, 42))
+>0 : number
+>z : number, Symbol(z, Decl(ExportClassWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 13, 48))
+>0 : number
export class Line{
->Line : Line
->TPoint : TPoint
->Point : Point
+>Line : Line, Symbol(Line, Decl(ExportClassWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 13, 56))
+>TPoint : TPoint, Symbol(TPoint, Decl(ExportClassWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 15, 22))
+>Point : Point, Symbol(Point, Decl(ExportClassWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 0, 10))
constructor(public start: TPoint, public end: TPoint) { }
->start : TPoint
->TPoint : TPoint
->end : TPoint
->TPoint : TPoint
+>start : TPoint, Symbol(start, Decl(ExportClassWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 16, 20))
+>TPoint : TPoint, Symbol(TPoint, Decl(ExportClassWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 15, 22))
+>end : TPoint, Symbol(end, Decl(ExportClassWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 16, 41))
+>TPoint : TPoint, Symbol(TPoint, Decl(ExportClassWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 15, 22))
}
}
diff --git a/tests/baselines/reference/ExportClassWithInaccessibleTypeInIndexerTypeAnnotations.types b/tests/baselines/reference/ExportClassWithInaccessibleTypeInIndexerTypeAnnotations.types
index 451db7f92a8..cf6bcd1316c 100644
--- a/tests/baselines/reference/ExportClassWithInaccessibleTypeInIndexerTypeAnnotations.types
+++ b/tests/baselines/reference/ExportClassWithInaccessibleTypeInIndexerTypeAnnotations.types
@@ -1,27 +1,27 @@
=== tests/cases/conformance/internalModules/exportDeclarations/ExportClassWithInaccessibleTypeInIndexerTypeAnnotations.ts ===
module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(ExportClassWithInaccessibleTypeInIndexerTypeAnnotations.ts, 0, 0))
class Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(ExportClassWithInaccessibleTypeInIndexerTypeAnnotations.ts, 0, 10))
x: number;
->x : number
+>x : number, Symbol(x, Decl(ExportClassWithInaccessibleTypeInIndexerTypeAnnotations.ts, 2, 17))
y: number;
->y : number
+>y : number, Symbol(y, Decl(ExportClassWithInaccessibleTypeInIndexerTypeAnnotations.ts, 3, 18))
}
export class points {
->points : points
+>points : points, Symbol(points, Decl(ExportClassWithInaccessibleTypeInIndexerTypeAnnotations.ts, 5, 5))
[idx: number]: Point;
->idx : number
->Point : Point
+>idx : number, Symbol(idx, Decl(ExportClassWithInaccessibleTypeInIndexerTypeAnnotations.ts, 9, 9))
+>Point : Point, Symbol(Point, Decl(ExportClassWithInaccessibleTypeInIndexerTypeAnnotations.ts, 0, 10))
[idx: string]: Point;
->idx : string
->Point : Point
+>idx : string, Symbol(idx, Decl(ExportClassWithInaccessibleTypeInIndexerTypeAnnotations.ts, 10, 9))
+>Point : Point, Symbol(Point, Decl(ExportClassWithInaccessibleTypeInIndexerTypeAnnotations.ts, 0, 10))
}
}
diff --git a/tests/baselines/reference/ExportClassWithInaccessibleTypeInTypeParameterConstraint.types b/tests/baselines/reference/ExportClassWithInaccessibleTypeInTypeParameterConstraint.types
index 6f4452fce4c..1f3b2e17305 100644
--- a/tests/baselines/reference/ExportClassWithInaccessibleTypeInTypeParameterConstraint.types
+++ b/tests/baselines/reference/ExportClassWithInaccessibleTypeInTypeParameterConstraint.types
@@ -1,59 +1,65 @@
=== tests/cases/conformance/internalModules/exportDeclarations/ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts ===
module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts, 0, 0))
class Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts, 0, 10))
x: number;
->x : number
+>x : number, Symbol(x, Decl(ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts, 2, 17))
y: number;
->y : number
+>y : number, Symbol(y, Decl(ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts, 3, 18))
}
export var Origin: Point = { x: 0, y: 0 };
->Origin : Point
->Point : Point
+>Origin : Point, Symbol(Origin, Decl(ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts, 7, 14))
+>Point : Point, Symbol(Point, Decl(ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts, 0, 10))
>{ x: 0, y: 0 } : { x: number; y: number; }
->x : number
->y : number
+>x : number, Symbol(x, Decl(ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts, 7, 32))
+>0 : number
+>y : number, Symbol(y, Decl(ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts, 7, 38))
+>0 : number
export class Point3d extends Point {
->Point3d : Point3d
->Point : Point
+>Point3d : Point3d, Symbol(Point3d, Decl(ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts, 7, 46))
+>Point : Point, Symbol(Point, Decl(ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts, 0, 10))
z: number;
->z : number
+>z : number, Symbol(z, Decl(ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts, 9, 40))
}
export var Origin3d: Point3d = { x: 0, y: 0, z: 0 };
->Origin3d : Point3d
->Point3d : Point3d
+>Origin3d : Point3d, Symbol(Origin3d, Decl(ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts, 13, 14))
+>Point3d : Point3d, Symbol(Point3d, Decl(ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts, 7, 46))
>{ x: 0, y: 0, z: 0 } : { x: number; y: number; z: number; }
->x : number
->y : number
->z : number
+>x : number, Symbol(x, Decl(ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts, 13, 36))
+>0 : number
+>y : number, Symbol(y, Decl(ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts, 13, 42))
+>0 : number
+>z : number, Symbol(z, Decl(ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts, 13, 48))
+>0 : number
export class Line{
->Line : Line
->TPoint : TPoint
->Point : Point
+>Line : Line, Symbol(Line, Decl(ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts, 13, 56))
+>TPoint : TPoint, Symbol(TPoint, Decl(ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts, 15, 22))
+>Point : Point, Symbol(Point, Decl(ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts, 0, 10))
constructor(public start: TPoint, public end: TPoint) { }
->start : TPoint
->TPoint : TPoint
->end : TPoint
->TPoint : TPoint
+>start : TPoint, Symbol(start, Decl(ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts, 16, 20))
+>TPoint : TPoint, Symbol(TPoint, Decl(ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts, 15, 22))
+>end : TPoint, Symbol(end, Decl(ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts, 16, 41))
+>TPoint : TPoint, Symbol(TPoint, Decl(ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts, 15, 22))
static fromorigin2d(p: Point): Line{
->fromorigin2d : (p: Point) => Line
->p : Point
->Point : Point
->Line : Line
->Point : Point
+>fromorigin2d : (p: Point) => Line, Symbol(Line.fromorigin2d, Decl(ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts, 16, 65))
+>p : Point, Symbol(p, Decl(ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts, 18, 28))
+>Point : Point, Symbol(Point, Decl(ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts, 0, 10))
+>Line : Line, Symbol(Line, Decl(ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts, 13, 56))
+>Point : Point, Symbol(Point, Decl(ExportClassWithInaccessibleTypeInTypeParameterConstraint.ts, 0, 10))
return null;
+>null : null
}
}
}
diff --git a/tests/baselines/reference/ExportFunctionWithAccessibleTypesInParameterAndReturnTypeAnnotation.types b/tests/baselines/reference/ExportFunctionWithAccessibleTypesInParameterAndReturnTypeAnnotation.types
index ac1845a533c..e9817cb6e5c 100644
--- a/tests/baselines/reference/ExportFunctionWithAccessibleTypesInParameterAndReturnTypeAnnotation.types
+++ b/tests/baselines/reference/ExportFunctionWithAccessibleTypesInParameterAndReturnTypeAnnotation.types
@@ -1,39 +1,41 @@
=== tests/cases/conformance/internalModules/exportDeclarations/ExportFunctionWithAccessibleTypesInParameterAndReturnTypeAnnotation.ts ===
module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(ExportFunctionWithAccessibleTypesInParameterAndReturnTypeAnnotation.ts, 0, 0))
export class Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(ExportFunctionWithAccessibleTypesInParameterAndReturnTypeAnnotation.ts, 0, 10))
x: number;
->x : number
+>x : number, Symbol(x, Decl(ExportFunctionWithAccessibleTypesInParameterAndReturnTypeAnnotation.ts, 2, 24))
y: number;
->y : number
+>y : number, Symbol(y, Decl(ExportFunctionWithAccessibleTypesInParameterAndReturnTypeAnnotation.ts, 3, 18))
}
export class Line {
->Line : Line
+>Line : Line, Symbol(Line, Decl(ExportFunctionWithAccessibleTypesInParameterAndReturnTypeAnnotation.ts, 5, 5))
constructor(public start: Point, public end: Point) { }
->start : Point
->Point : Point
->end : Point
->Point : Point
+>start : Point, Symbol(start, Decl(ExportFunctionWithAccessibleTypesInParameterAndReturnTypeAnnotation.ts, 8, 20))
+>Point : Point, Symbol(Point, Decl(ExportFunctionWithAccessibleTypesInParameterAndReturnTypeAnnotation.ts, 0, 10))
+>end : Point, Symbol(end, Decl(ExportFunctionWithAccessibleTypesInParameterAndReturnTypeAnnotation.ts, 8, 40))
+>Point : Point, Symbol(Point, Decl(ExportFunctionWithAccessibleTypesInParameterAndReturnTypeAnnotation.ts, 0, 10))
}
export function fromOrigin(p: Point): Line {
->fromOrigin : (p: Point) => Line
->p : Point
->Point : Point
->Line : Line
+>fromOrigin : (p: Point) => Line, Symbol(fromOrigin, Decl(ExportFunctionWithAccessibleTypesInParameterAndReturnTypeAnnotation.ts, 9, 5))
+>p : Point, Symbol(p, Decl(ExportFunctionWithAccessibleTypesInParameterAndReturnTypeAnnotation.ts, 11, 31))
+>Point : Point, Symbol(Point, Decl(ExportFunctionWithAccessibleTypesInParameterAndReturnTypeAnnotation.ts, 0, 10))
+>Line : Line, Symbol(Line, Decl(ExportFunctionWithAccessibleTypesInParameterAndReturnTypeAnnotation.ts, 5, 5))
return new Line({ x: 0, y: 0 }, p);
>new Line({ x: 0, y: 0 }, p) : Line
->Line : typeof Line
+>Line : typeof Line, Symbol(Line, Decl(ExportFunctionWithAccessibleTypesInParameterAndReturnTypeAnnotation.ts, 5, 5))
>{ x: 0, y: 0 } : { x: number; y: number; }
->x : number
->y : number
->p : Point
+>x : number, Symbol(x, Decl(ExportFunctionWithAccessibleTypesInParameterAndReturnTypeAnnotation.ts, 12, 25))
+>0 : number
+>y : number, Symbol(y, Decl(ExportFunctionWithAccessibleTypesInParameterAndReturnTypeAnnotation.ts, 12, 31))
+>0 : number
+>p : Point, Symbol(p, Decl(ExportFunctionWithAccessibleTypesInParameterAndReturnTypeAnnotation.ts, 11, 31))
}
}
diff --git a/tests/baselines/reference/ExportFunctionWithInaccessibleTypesInParameterTypeAnnotation.types b/tests/baselines/reference/ExportFunctionWithInaccessibleTypesInParameterTypeAnnotation.types
index 3f3a670ee8e..bec6d3816bf 100644
--- a/tests/baselines/reference/ExportFunctionWithInaccessibleTypesInParameterTypeAnnotation.types
+++ b/tests/baselines/reference/ExportFunctionWithInaccessibleTypesInParameterTypeAnnotation.types
@@ -1,39 +1,41 @@
=== tests/cases/conformance/internalModules/exportDeclarations/ExportFunctionWithInaccessibleTypesInParameterTypeAnnotation.ts ===
module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(ExportFunctionWithInaccessibleTypesInParameterTypeAnnotation.ts, 0, 0))
class Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(ExportFunctionWithInaccessibleTypesInParameterTypeAnnotation.ts, 0, 10))
x: number;
->x : number
+>x : number, Symbol(x, Decl(ExportFunctionWithInaccessibleTypesInParameterTypeAnnotation.ts, 2, 17))
y: number;
->y : number
+>y : number, Symbol(y, Decl(ExportFunctionWithInaccessibleTypesInParameterTypeAnnotation.ts, 3, 18))
}
export class Line {
->Line : Line
+>Line : Line, Symbol(Line, Decl(ExportFunctionWithInaccessibleTypesInParameterTypeAnnotation.ts, 5, 5))
constructor(public start: Point, public end: Point) { }
->start : Point
->Point : Point
->end : Point
->Point : Point
+>start : Point, Symbol(start, Decl(ExportFunctionWithInaccessibleTypesInParameterTypeAnnotation.ts, 8, 20))
+>Point : Point, Symbol(Point, Decl(ExportFunctionWithInaccessibleTypesInParameterTypeAnnotation.ts, 0, 10))
+>end : Point, Symbol(end, Decl(ExportFunctionWithInaccessibleTypesInParameterTypeAnnotation.ts, 8, 40))
+>Point : Point, Symbol(Point, Decl(ExportFunctionWithInaccessibleTypesInParameterTypeAnnotation.ts, 0, 10))
}
export function fromOrigin(p: Point): Line {
->fromOrigin : (p: Point) => Line
->p : Point
->Point : Point
->Line : Line
+>fromOrigin : (p: Point) => Line, Symbol(fromOrigin, Decl(ExportFunctionWithInaccessibleTypesInParameterTypeAnnotation.ts, 9, 5))
+>p : Point, Symbol(p, Decl(ExportFunctionWithInaccessibleTypesInParameterTypeAnnotation.ts, 11, 31))
+>Point : Point, Symbol(Point, Decl(ExportFunctionWithInaccessibleTypesInParameterTypeAnnotation.ts, 0, 10))
+>Line : Line, Symbol(Line, Decl(ExportFunctionWithInaccessibleTypesInParameterTypeAnnotation.ts, 5, 5))
return new Line({ x: 0, y: 0 }, p);
>new Line({ x: 0, y: 0 }, p) : Line
->Line : typeof Line
+>Line : typeof Line, Symbol(Line, Decl(ExportFunctionWithInaccessibleTypesInParameterTypeAnnotation.ts, 5, 5))
>{ x: 0, y: 0 } : { x: number; y: number; }
->x : number
->y : number
->p : Point
+>x : number, Symbol(x, Decl(ExportFunctionWithInaccessibleTypesInParameterTypeAnnotation.ts, 12, 25))
+>0 : number
+>y : number, Symbol(y, Decl(ExportFunctionWithInaccessibleTypesInParameterTypeAnnotation.ts, 12, 31))
+>0 : number
+>p : Point, Symbol(p, Decl(ExportFunctionWithInaccessibleTypesInParameterTypeAnnotation.ts, 11, 31))
}
}
diff --git a/tests/baselines/reference/ExportFunctionWithInaccessibleTypesInReturnTypeAnnotation.types b/tests/baselines/reference/ExportFunctionWithInaccessibleTypesInReturnTypeAnnotation.types
index 7634e2cde3e..09e28159ee6 100644
--- a/tests/baselines/reference/ExportFunctionWithInaccessibleTypesInReturnTypeAnnotation.types
+++ b/tests/baselines/reference/ExportFunctionWithInaccessibleTypesInReturnTypeAnnotation.types
@@ -1,39 +1,41 @@
=== tests/cases/conformance/internalModules/exportDeclarations/ExportFunctionWithInaccessibleTypesInReturnTypeAnnotation.ts ===
module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(ExportFunctionWithInaccessibleTypesInReturnTypeAnnotation.ts, 0, 0))
export class Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(ExportFunctionWithInaccessibleTypesInReturnTypeAnnotation.ts, 0, 10))
x: number;
->x : number
+>x : number, Symbol(x, Decl(ExportFunctionWithInaccessibleTypesInReturnTypeAnnotation.ts, 2, 24))
y: number;
->y : number
+>y : number, Symbol(y, Decl(ExportFunctionWithInaccessibleTypesInReturnTypeAnnotation.ts, 3, 18))
}
class Line {
->Line : Line
+>Line : Line, Symbol(Line, Decl(ExportFunctionWithInaccessibleTypesInReturnTypeAnnotation.ts, 5, 5))
constructor(public start: Point, public end: Point) { }
->start : Point
->Point : Point
->end : Point
->Point : Point
+>start : Point, Symbol(start, Decl(ExportFunctionWithInaccessibleTypesInReturnTypeAnnotation.ts, 8, 20))
+>Point : Point, Symbol(Point, Decl(ExportFunctionWithInaccessibleTypesInReturnTypeAnnotation.ts, 0, 10))
+>end : Point, Symbol(end, Decl(ExportFunctionWithInaccessibleTypesInReturnTypeAnnotation.ts, 8, 40))
+>Point : Point, Symbol(Point, Decl(ExportFunctionWithInaccessibleTypesInReturnTypeAnnotation.ts, 0, 10))
}
export function fromOrigin(p: Point): Line {
->fromOrigin : (p: Point) => Line
->p : Point
->Point : Point
->Line : Line
+>fromOrigin : (p: Point) => Line, Symbol(fromOrigin, Decl(ExportFunctionWithInaccessibleTypesInReturnTypeAnnotation.ts, 9, 5))
+>p : Point, Symbol(p, Decl(ExportFunctionWithInaccessibleTypesInReturnTypeAnnotation.ts, 11, 31))
+>Point : Point, Symbol(Point, Decl(ExportFunctionWithInaccessibleTypesInReturnTypeAnnotation.ts, 0, 10))
+>Line : Line, Symbol(Line, Decl(ExportFunctionWithInaccessibleTypesInReturnTypeAnnotation.ts, 5, 5))
return new Line({ x: 0, y: 0 }, p);
>new Line({ x: 0, y: 0 }, p) : Line
->Line : typeof Line
+>Line : typeof Line, Symbol(Line, Decl(ExportFunctionWithInaccessibleTypesInReturnTypeAnnotation.ts, 5, 5))
>{ x: 0, y: 0 } : { x: number; y: number; }
->x : number
->y : number
->p : Point
+>x : number, Symbol(x, Decl(ExportFunctionWithInaccessibleTypesInReturnTypeAnnotation.ts, 12, 25))
+>0 : number
+>y : number, Symbol(y, Decl(ExportFunctionWithInaccessibleTypesInReturnTypeAnnotation.ts, 12, 31))
+>0 : number
+>p : Point, Symbol(p, Decl(ExportFunctionWithInaccessibleTypesInReturnTypeAnnotation.ts, 11, 31))
}
}
diff --git a/tests/baselines/reference/ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.types b/tests/baselines/reference/ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.types
index f6f4e6a441a..4c4866609c4 100644
--- a/tests/baselines/reference/ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.types
+++ b/tests/baselines/reference/ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.types
@@ -1,58 +1,63 @@
=== tests/cases/conformance/internalModules/exportDeclarations/ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts ===
module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 0, 0))
export interface Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 0, 10))
x: number;
->x : number
+>x : number, Symbol(x, Decl(ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 2, 28))
y: number;
->y : number
+>y : number, Symbol(y, Decl(ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 3, 18))
}
export var Origin: Point = { x: 0, y: 0 };
->Origin : Point
->Point : Point
+>Origin : Point, Symbol(Origin, Decl(ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 7, 14))
+>Point : Point, Symbol(Point, Decl(ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 0, 10))
>{ x: 0, y: 0 } : { x: number; y: number; }
->x : number
->y : number
+>x : number, Symbol(x, Decl(ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 7, 32))
+>0 : number
+>y : number, Symbol(y, Decl(ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 7, 38))
+>0 : number
export interface Point3d extends Point {
->Point3d : Point3d
->Point : Point
+>Point3d : Point3d, Symbol(Point3d, Decl(ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 7, 46))
+>Point : Point, Symbol(Point, Decl(ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 0, 10))
z: number;
->z : number
+>z : number, Symbol(z, Decl(ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 9, 44))
}
export var Origin3d: Point3d = { x: 0, y: 0, z: 0 };
->Origin3d : Point3d
->Point3d : Point3d
+>Origin3d : Point3d, Symbol(Origin3d, Decl(ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 13, 14))
+>Point3d : Point3d, Symbol(Point3d, Decl(ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 7, 46))
>{ x: 0, y: 0, z: 0 } : { x: number; y: number; z: number; }
->x : number
->y : number
->z : number
+>x : number, Symbol(x, Decl(ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 13, 36))
+>0 : number
+>y : number, Symbol(y, Decl(ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 13, 42))
+>0 : number
+>z : number, Symbol(z, Decl(ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 13, 48))
+>0 : number
export interface Line{
->Line : Line
->TPoint : TPoint
->Point : Point
+>Line : Line, Symbol(Line, Decl(ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 13, 56))
+>TPoint : TPoint, Symbol(TPoint, Decl(ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 15, 26))
+>Point : Point, Symbol(Point, Decl(ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 0, 10))
new (start: TPoint, end: TPoint);
->start : TPoint
->TPoint : TPoint
->end : TPoint
->TPoint : TPoint
+>start : TPoint, Symbol(start, Decl(ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 16, 13))
+>TPoint : TPoint, Symbol(TPoint, Decl(ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 15, 26))
+>end : TPoint, Symbol(end, Decl(ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 16, 27))
+>TPoint : TPoint, Symbol(TPoint, Decl(ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 15, 26))
start: TPoint;
->start : TPoint
->TPoint : TPoint
+>start : TPoint, Symbol(start, Decl(ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 16, 41))
+>TPoint : TPoint, Symbol(TPoint, Decl(ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 15, 26))
end: TPoint;
->end : TPoint
->TPoint : TPoint
+>end : TPoint, Symbol(end, Decl(ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 17, 22))
+>TPoint : TPoint, Symbol(TPoint, Decl(ExportInterfaceWithAccessibleTypesInTypeParameterConstraintsClassHeritageListMemberTypeAnnotations.ts, 15, 26))
}
}
diff --git a/tests/baselines/reference/ExportInterfaceWithInaccessibleTypeInIndexerTypeAnnotations.types b/tests/baselines/reference/ExportInterfaceWithInaccessibleTypeInIndexerTypeAnnotations.types
index 6caed8a138a..28d3b5f463c 100644
--- a/tests/baselines/reference/ExportInterfaceWithInaccessibleTypeInIndexerTypeAnnotations.types
+++ b/tests/baselines/reference/ExportInterfaceWithInaccessibleTypeInIndexerTypeAnnotations.types
@@ -1,27 +1,27 @@
=== tests/cases/conformance/internalModules/exportDeclarations/ExportInterfaceWithInaccessibleTypeInIndexerTypeAnnotations.ts ===
module A {
->A : unknown
+>A : any, Symbol(A, Decl(ExportInterfaceWithInaccessibleTypeInIndexerTypeAnnotations.ts, 0, 0))
interface Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(ExportInterfaceWithInaccessibleTypeInIndexerTypeAnnotations.ts, 0, 10))
x: number;
->x : number
+>x : number, Symbol(x, Decl(ExportInterfaceWithInaccessibleTypeInIndexerTypeAnnotations.ts, 2, 21))
y: number;
->y : number
+>y : number, Symbol(y, Decl(ExportInterfaceWithInaccessibleTypeInIndexerTypeAnnotations.ts, 3, 18))
}
export interface points {
->points : points
+>points : points, Symbol(points, Decl(ExportInterfaceWithInaccessibleTypeInIndexerTypeAnnotations.ts, 5, 5))
[idx: number]: Point;
->idx : number
->Point : Point
+>idx : number, Symbol(idx, Decl(ExportInterfaceWithInaccessibleTypeInIndexerTypeAnnotations.ts, 9, 9))
+>Point : Point, Symbol(Point, Decl(ExportInterfaceWithInaccessibleTypeInIndexerTypeAnnotations.ts, 0, 10))
[idx: string]: Point;
->idx : string
->Point : Point
+>idx : string, Symbol(idx, Decl(ExportInterfaceWithInaccessibleTypeInIndexerTypeAnnotations.ts, 10, 9))
+>Point : Point, Symbol(Point, Decl(ExportInterfaceWithInaccessibleTypeInIndexerTypeAnnotations.ts, 0, 10))
}
}
diff --git a/tests/baselines/reference/ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.types b/tests/baselines/reference/ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.types
index 53484780474..ca5a98c713d 100644
--- a/tests/baselines/reference/ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.types
+++ b/tests/baselines/reference/ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.types
@@ -1,58 +1,63 @@
=== tests/cases/conformance/internalModules/exportDeclarations/ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.ts ===
module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.ts, 0, 0))
interface Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.ts, 0, 10))
x: number;
->x : number
+>x : number, Symbol(x, Decl(ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.ts, 2, 21))
y: number;
->y : number
+>y : number, Symbol(y, Decl(ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.ts, 3, 18))
}
export var Origin: Point = { x: 0, y: 0 };
->Origin : Point
->Point : Point
+>Origin : Point, Symbol(Origin, Decl(ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.ts, 7, 14))
+>Point : Point, Symbol(Point, Decl(ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.ts, 0, 10))
>{ x: 0, y: 0 } : { x: number; y: number; }
->x : number
->y : number
+>x : number, Symbol(x, Decl(ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.ts, 7, 32))
+>0 : number
+>y : number, Symbol(y, Decl(ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.ts, 7, 38))
+>0 : number
export interface Point3d extends Point {
->Point3d : Point3d
->Point : Point
+>Point3d : Point3d, Symbol(Point3d, Decl(ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.ts, 7, 46))
+>Point : Point, Symbol(Point, Decl(ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.ts, 0, 10))
z: number;
->z : number
+>z : number, Symbol(z, Decl(ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.ts, 9, 44))
}
export var Origin3d: Point3d = { x: 0, y: 0, z: 0 };
->Origin3d : Point3d
->Point3d : Point3d
+>Origin3d : Point3d, Symbol(Origin3d, Decl(ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.ts, 13, 14))
+>Point3d : Point3d, Symbol(Point3d, Decl(ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.ts, 7, 46))
>{ x: 0, y: 0, z: 0 } : { x: number; y: number; z: number; }
->x : number
->y : number
->z : number
+>x : number, Symbol(x, Decl(ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.ts, 13, 36))
+>0 : number
+>y : number, Symbol(y, Decl(ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.ts, 13, 42))
+>0 : number
+>z : number, Symbol(z, Decl(ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.ts, 13, 48))
+>0 : number
export interface Line{
->Line : Line
->TPoint : TPoint
->Point : Point
+>Line : Line, Symbol(Line, Decl(ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.ts, 13, 56))
+>TPoint : TPoint, Symbol(TPoint, Decl(ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.ts, 15, 26))
+>Point : Point, Symbol(Point, Decl(ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.ts, 0, 10))
new (start: TPoint, end: TPoint);
->start : TPoint
->TPoint : TPoint
->end : TPoint
->TPoint : TPoint
+>start : TPoint, Symbol(start, Decl(ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.ts, 16, 13))
+>TPoint : TPoint, Symbol(TPoint, Decl(ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.ts, 15, 26))
+>end : TPoint, Symbol(end, Decl(ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.ts, 16, 27))
+>TPoint : TPoint, Symbol(TPoint, Decl(ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.ts, 15, 26))
start: TPoint;
->start : TPoint
->TPoint : TPoint
+>start : TPoint, Symbol(start, Decl(ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.ts, 16, 41))
+>TPoint : TPoint, Symbol(TPoint, Decl(ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.ts, 15, 26))
end: TPoint;
->end : TPoint
->TPoint : TPoint
+>end : TPoint, Symbol(end, Decl(ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.ts, 18, 22))
+>TPoint : TPoint, Symbol(TPoint, Decl(ExportInterfaceWithInaccessibleTypeInTypeParameterConstraint.ts, 15, 26))
}
}
diff --git a/tests/baselines/reference/ExportModuleWithAccessibleTypesOnItsExportedMembers.types b/tests/baselines/reference/ExportModuleWithAccessibleTypesOnItsExportedMembers.types
index a3a80cb06ad..14c97fb0920 100644
--- a/tests/baselines/reference/ExportModuleWithAccessibleTypesOnItsExportedMembers.types
+++ b/tests/baselines/reference/ExportModuleWithAccessibleTypesOnItsExportedMembers.types
@@ -1,47 +1,51 @@
=== tests/cases/conformance/internalModules/exportDeclarations/ExportModuleWithAccessibleTypesOnItsExportedMembers.ts ===
module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(ExportModuleWithAccessibleTypesOnItsExportedMembers.ts, 0, 0))
export class Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(ExportModuleWithAccessibleTypesOnItsExportedMembers.ts, 0, 10))
constructor(public x: number, public y: number) { }
->x : number
->y : number
+>x : number, Symbol(x, Decl(ExportModuleWithAccessibleTypesOnItsExportedMembers.ts, 3, 20))
+>y : number, Symbol(y, Decl(ExportModuleWithAccessibleTypesOnItsExportedMembers.ts, 3, 37))
}
export module B {
->B : typeof B
+>B : typeof B, Symbol(B, Decl(ExportModuleWithAccessibleTypesOnItsExportedMembers.ts, 4, 5))
export var Origin: Point = new Point(0, 0);
->Origin : Point
->Point : Point
+>Origin : Point, Symbol(Origin, Decl(ExportModuleWithAccessibleTypesOnItsExportedMembers.ts, 7, 18))
+>Point : Point, Symbol(Point, Decl(ExportModuleWithAccessibleTypesOnItsExportedMembers.ts, 0, 10))
>new Point(0, 0) : Point
->Point : typeof Point
+>Point : typeof Point, Symbol(Point, Decl(ExportModuleWithAccessibleTypesOnItsExportedMembers.ts, 0, 10))
+>0 : number
+>0 : number
export class Line {
->Line : Line
+>Line : Line, Symbol(Line, Decl(ExportModuleWithAccessibleTypesOnItsExportedMembers.ts, 7, 51))
constructor(start: Point, end: Point) {
->start : Point
->Point : Point
->end : Point
->Point : Point
+>start : Point, Symbol(start, Decl(ExportModuleWithAccessibleTypesOnItsExportedMembers.ts, 10, 24))
+>Point : Point, Symbol(Point, Decl(ExportModuleWithAccessibleTypesOnItsExportedMembers.ts, 0, 10))
+>end : Point, Symbol(end, Decl(ExportModuleWithAccessibleTypesOnItsExportedMembers.ts, 10, 37))
+>Point : Point, Symbol(Point, Decl(ExportModuleWithAccessibleTypesOnItsExportedMembers.ts, 0, 10))
}
static fromOrigin(p: Point) {
->fromOrigin : (p: Point) => Line
->p : Point
->Point : Point
+>fromOrigin : (p: Point) => Line, Symbol(Line.fromOrigin, Decl(ExportModuleWithAccessibleTypesOnItsExportedMembers.ts, 12, 13))
+>p : Point, Symbol(p, Decl(ExportModuleWithAccessibleTypesOnItsExportedMembers.ts, 14, 30))
+>Point : Point, Symbol(Point, Decl(ExportModuleWithAccessibleTypesOnItsExportedMembers.ts, 0, 10))
return new Line({ x: 0, y: 0 }, p);
>new Line({ x: 0, y: 0 }, p) : Line
->Line : typeof Line
+>Line : typeof Line, Symbol(Line, Decl(ExportModuleWithAccessibleTypesOnItsExportedMembers.ts, 7, 51))
>{ x: 0, y: 0 } : { x: number; y: number; }
->x : number
->y : number
->p : Point
+>x : number, Symbol(x, Decl(ExportModuleWithAccessibleTypesOnItsExportedMembers.ts, 15, 33))
+>0 : number
+>y : number, Symbol(y, Decl(ExportModuleWithAccessibleTypesOnItsExportedMembers.ts, 15, 39))
+>0 : number
+>p : Point, Symbol(p, Decl(ExportModuleWithAccessibleTypesOnItsExportedMembers.ts, 14, 30))
}
}
}
diff --git a/tests/baselines/reference/ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInMemberTypeAnnotations.types b/tests/baselines/reference/ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInMemberTypeAnnotations.types
index 82bdf732173..7ae575da27b 100644
--- a/tests/baselines/reference/ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInMemberTypeAnnotations.types
+++ b/tests/baselines/reference/ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInMemberTypeAnnotations.types
@@ -1,30 +1,36 @@
=== tests/cases/conformance/internalModules/exportDeclarations/ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInMemberTypeAnnotations.ts ===
module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInMemberTypeAnnotations.ts, 0, 0))
class Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInMemberTypeAnnotations.ts, 0, 10))
constructor(public x: number, public y: number) { }
->x : number
->y : number
+>x : number, Symbol(x, Decl(ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInMemberTypeAnnotations.ts, 3, 20))
+>y : number, Symbol(y, Decl(ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInMemberTypeAnnotations.ts, 3, 37))
}
export var Origin: Point = { x: 0, y: 0 };
->Origin : Point
->Point : Point
+>Origin : Point, Symbol(Origin, Decl(ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInMemberTypeAnnotations.ts, 6, 14))
+>Point : Point, Symbol(Point, Decl(ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInMemberTypeAnnotations.ts, 0, 10))
>{ x: 0, y: 0 } : { x: number; y: number; }
->x : number
->y : number
+>x : number, Symbol(x, Decl(ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInMemberTypeAnnotations.ts, 6, 32))
+>0 : number
+>y : number, Symbol(y, Decl(ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInMemberTypeAnnotations.ts, 6, 38))
+>0 : number
export var Unity = { start: new Point(0, 0), end: new Point(1, 0) };
->Unity : { start: Point; end: Point; }
+>Unity : { start: Point; end: Point; }, Symbol(Unity, Decl(ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInMemberTypeAnnotations.ts, 8, 14))
>{ start: new Point(0, 0), end: new Point(1, 0) } : { start: Point; end: Point; }
->start : Point
+>start : Point, Symbol(start, Decl(ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInMemberTypeAnnotations.ts, 8, 24))
>new Point(0, 0) : Point
->Point : typeof Point
->end : Point
+>Point : typeof Point, Symbol(Point, Decl(ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInMemberTypeAnnotations.ts, 0, 10))
+>0 : number
+>0 : number
+>end : Point, Symbol(end, Decl(ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInMemberTypeAnnotations.ts, 8, 48))
>new Point(1, 0) : Point
->Point : typeof Point
+>Point : typeof Point, Symbol(Point, Decl(ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInMemberTypeAnnotations.ts, 0, 10))
+>1 : number
+>0 : number
}
diff --git a/tests/baselines/reference/ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInNestedMemberTypeAnnotations.types b/tests/baselines/reference/ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInNestedMemberTypeAnnotations.types
index a4284a8f410..9cc12dc057d 100644
--- a/tests/baselines/reference/ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInNestedMemberTypeAnnotations.types
+++ b/tests/baselines/reference/ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInNestedMemberTypeAnnotations.types
@@ -1,31 +1,32 @@
=== tests/cases/conformance/internalModules/exportDeclarations/ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInNestedMemberTypeAnnotations.ts ===
module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInNestedMemberTypeAnnotations.ts, 0, 0))
class Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInNestedMemberTypeAnnotations.ts, 0, 10))
constructor(public x: number, public y: number) { }
->x : number
->y : number
+>x : number, Symbol(x, Decl(ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInNestedMemberTypeAnnotations.ts, 3, 20))
+>y : number, Symbol(y, Decl(ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInNestedMemberTypeAnnotations.ts, 3, 37))
}
export var UnitSquare : {
->UnitSquare : { top: { left: Point; right: Point; }; bottom: { left: Point; right: Point; }; }
+>UnitSquare : { top: { left: Point; right: Point; }; bottom: { left: Point; right: Point; }; }, Symbol(UnitSquare, Decl(ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInNestedMemberTypeAnnotations.ts, 6, 14))
top: { left: Point, right: Point },
->top : { left: Point; right: Point; }
->left : Point
->Point : Point
->right : Point
->Point : Point
+>top : { left: Point; right: Point; }, Symbol(top, Decl(ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInNestedMemberTypeAnnotations.ts, 6, 29))
+>left : Point, Symbol(left, Decl(ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInNestedMemberTypeAnnotations.ts, 7, 14))
+>Point : Point, Symbol(Point, Decl(ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInNestedMemberTypeAnnotations.ts, 0, 10))
+>right : Point, Symbol(right, Decl(ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInNestedMemberTypeAnnotations.ts, 7, 27))
+>Point : Point, Symbol(Point, Decl(ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInNestedMemberTypeAnnotations.ts, 0, 10))
bottom: { left: Point, right: Point }
->bottom : { left: Point; right: Point; }
->left : Point
->Point : Point
->right : Point
->Point : Point
+>bottom : { left: Point; right: Point; }, Symbol(bottom, Decl(ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInNestedMemberTypeAnnotations.ts, 7, 43))
+>left : Point, Symbol(left, Decl(ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInNestedMemberTypeAnnotations.ts, 8, 17))
+>Point : Point, Symbol(Point, Decl(ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInNestedMemberTypeAnnotations.ts, 0, 10))
+>right : Point, Symbol(right, Decl(ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInNestedMemberTypeAnnotations.ts, 8, 30))
+>Point : Point, Symbol(Point, Decl(ExportObjectLiteralAndObjectTypeLiteralWithAccessibleTypesInNestedMemberTypeAnnotations.ts, 0, 10))
} = null;
+>null : null
}
diff --git a/tests/baselines/reference/ExportVariableOfGenericTypeWithInaccessibleTypeAsTypeArgument.types b/tests/baselines/reference/ExportVariableOfGenericTypeWithInaccessibleTypeAsTypeArgument.types
index ba24bf93442..961adc893d5 100644
--- a/tests/baselines/reference/ExportVariableOfGenericTypeWithInaccessibleTypeAsTypeArgument.types
+++ b/tests/baselines/reference/ExportVariableOfGenericTypeWithInaccessibleTypeAsTypeArgument.types
@@ -1,22 +1,22 @@
=== tests/cases/conformance/internalModules/exportDeclarations/ExportVariableOfGenericTypeWithInaccessibleTypeAsTypeArgument.ts ===
module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(ExportVariableOfGenericTypeWithInaccessibleTypeAsTypeArgument.ts, 0, 0))
class B {
->B : B
+>B : B, Symbol(B, Decl(ExportVariableOfGenericTypeWithInaccessibleTypeAsTypeArgument.ts, 0, 10))
id: number;
->id : number
+>id : number, Symbol(id, Decl(ExportVariableOfGenericTypeWithInaccessibleTypeAsTypeArgument.ts, 1, 13))
}
export var beez: Array;
->beez : B[]
->Array : T[]
->B : B
+>beez : B[], Symbol(beez, Decl(ExportVariableOfGenericTypeWithInaccessibleTypeAsTypeArgument.ts, 5, 14))
+>Array : T[], Symbol(Array, Decl(lib.d.ts, 1000, 23), Decl(lib.d.ts, 1171, 11))
+>B : B, Symbol(B, Decl(ExportVariableOfGenericTypeWithInaccessibleTypeAsTypeArgument.ts, 0, 10))
export var beez2 = new Array();
->beez2 : B[]
+>beez2 : B[], Symbol(beez2, Decl(ExportVariableOfGenericTypeWithInaccessibleTypeAsTypeArgument.ts, 6, 14))
>new Array() : B[]
->Array : ArrayConstructor
->B : B
+>Array : ArrayConstructor, Symbol(Array, Decl(lib.d.ts, 1000, 23), Decl(lib.d.ts, 1171, 11))
+>B : B, Symbol(B, Decl(ExportVariableOfGenericTypeWithInaccessibleTypeAsTypeArgument.ts, 0, 10))
}
diff --git a/tests/baselines/reference/ExportVariableWithAccessibleTypeInTypeAnnotation.types b/tests/baselines/reference/ExportVariableWithAccessibleTypeInTypeAnnotation.types
index 945a4be6fe5..a0836493e33 100644
--- a/tests/baselines/reference/ExportVariableWithAccessibleTypeInTypeAnnotation.types
+++ b/tests/baselines/reference/ExportVariableWithAccessibleTypeInTypeAnnotation.types
@@ -1,23 +1,25 @@
=== tests/cases/conformance/internalModules/exportDeclarations/ExportVariableWithAccessibleTypeInTypeAnnotation.ts ===
module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(ExportVariableWithAccessibleTypeInTypeAnnotation.ts, 0, 0))
export interface Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(ExportVariableWithAccessibleTypeInTypeAnnotation.ts, 0, 10))
x: number;
->x : number
+>x : number, Symbol(x, Decl(ExportVariableWithAccessibleTypeInTypeAnnotation.ts, 2, 28))
y: number;
->y : number
+>y : number, Symbol(y, Decl(ExportVariableWithAccessibleTypeInTypeAnnotation.ts, 3, 18))
}
// valid since Point is exported
export var Origin: Point = { x: 0, y: 0 };
->Origin : Point
->Point : Point
+>Origin : Point, Symbol(Origin, Decl(ExportVariableWithAccessibleTypeInTypeAnnotation.ts, 8, 14))
+>Point : Point, Symbol(Point, Decl(ExportVariableWithAccessibleTypeInTypeAnnotation.ts, 0, 10))
>{ x: 0, y: 0 } : { x: number; y: number; }
->x : number
->y : number
+>x : number, Symbol(x, Decl(ExportVariableWithAccessibleTypeInTypeAnnotation.ts, 8, 32))
+>0 : number
+>y : number, Symbol(y, Decl(ExportVariableWithAccessibleTypeInTypeAnnotation.ts, 8, 38))
+>0 : number
}
diff --git a/tests/baselines/reference/ExportVariableWithInaccessibleTypeInTypeAnnotation.types b/tests/baselines/reference/ExportVariableWithInaccessibleTypeInTypeAnnotation.types
index 9ae05f87416..aa245e4e578 100644
--- a/tests/baselines/reference/ExportVariableWithInaccessibleTypeInTypeAnnotation.types
+++ b/tests/baselines/reference/ExportVariableWithInaccessibleTypeInTypeAnnotation.types
@@ -1,40 +1,45 @@
=== tests/cases/conformance/internalModules/exportDeclarations/ExportVariableWithInaccessibleTypeInTypeAnnotation.ts ===
module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(ExportVariableWithInaccessibleTypeInTypeAnnotation.ts, 0, 0))
export interface Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(ExportVariableWithInaccessibleTypeInTypeAnnotation.ts, 0, 10))
x: number;
->x : number
+>x : number, Symbol(x, Decl(ExportVariableWithInaccessibleTypeInTypeAnnotation.ts, 2, 28))
y: number;
->y : number
+>y : number, Symbol(y, Decl(ExportVariableWithInaccessibleTypeInTypeAnnotation.ts, 3, 18))
}
// valid since Point is exported
export var Origin: Point = { x: 0, y: 0 };
->Origin : Point
->Point : Point
+>Origin : Point, Symbol(Origin, Decl(ExportVariableWithInaccessibleTypeInTypeAnnotation.ts, 8, 14))
+>Point : Point, Symbol(Point, Decl(ExportVariableWithInaccessibleTypeInTypeAnnotation.ts, 0, 10))
>{ x: 0, y: 0 } : { x: number; y: number; }
->x : number
->y : number
+>x : number, Symbol(x, Decl(ExportVariableWithInaccessibleTypeInTypeAnnotation.ts, 8, 32))
+>0 : number
+>y : number, Symbol(y, Decl(ExportVariableWithInaccessibleTypeInTypeAnnotation.ts, 8, 38))
+>0 : number
interface Point3d extends Point {
->Point3d : Point3d
->Point : Point
+>Point3d : Point3d, Symbol(Point3d, Decl(ExportVariableWithInaccessibleTypeInTypeAnnotation.ts, 8, 46))
+>Point : Point, Symbol(Point, Decl(ExportVariableWithInaccessibleTypeInTypeAnnotation.ts, 0, 10))
z: number;
->z : number
+>z : number, Symbol(z, Decl(ExportVariableWithInaccessibleTypeInTypeAnnotation.ts, 10, 37))
}
// invalid Point3d is not exported
export var Origin3d: Point3d = { x: 0, y: 0, z: 0 };
->Origin3d : Point3d
->Point3d : Point3d
+>Origin3d : Point3d, Symbol(Origin3d, Decl(ExportVariableWithInaccessibleTypeInTypeAnnotation.ts, 15, 14))
+>Point3d : Point3d, Symbol(Point3d, Decl(ExportVariableWithInaccessibleTypeInTypeAnnotation.ts, 8, 46))
>{ x: 0, y: 0, z: 0 } : { x: number; y: number; z: number; }
->x : number
->y : number
->z : number
+>x : number, Symbol(x, Decl(ExportVariableWithInaccessibleTypeInTypeAnnotation.ts, 15, 36))
+>0 : number
+>y : number, Symbol(y, Decl(ExportVariableWithInaccessibleTypeInTypeAnnotation.ts, 15, 42))
+>0 : number
+>z : number, Symbol(z, Decl(ExportVariableWithInaccessibleTypeInTypeAnnotation.ts, 15, 48))
+>0 : number
}
diff --git a/tests/baselines/reference/FunctionAndModuleWithSameNameAndDifferentCommonRoot.types b/tests/baselines/reference/FunctionAndModuleWithSameNameAndDifferentCommonRoot.types
index 879088f93df..e63275fe58f 100644
--- a/tests/baselines/reference/FunctionAndModuleWithSameNameAndDifferentCommonRoot.types
+++ b/tests/baselines/reference/FunctionAndModuleWithSameNameAndDifferentCommonRoot.types
@@ -1,54 +1,58 @@
=== tests/cases/conformance/internalModules/DeclarationMerging/function.ts ===
module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(function.ts, 0, 0))
export function Point() {
->Point : () => { x: number; y: number; }
+>Point : () => { x: number; y: number; }, Symbol(Point, Decl(function.ts, 0, 10))
return { x: 0, y: 0 };
>{ x: 0, y: 0 } : { x: number; y: number; }
->x : number
->y : number
+>x : number, Symbol(x, Decl(function.ts, 2, 16))
+>0 : number
+>y : number, Symbol(y, Decl(function.ts, 2, 22))
+>0 : number
}
}
=== tests/cases/conformance/internalModules/DeclarationMerging/module.ts ===
module B {
->B : typeof B
+>B : typeof B, Symbol(B, Decl(module.ts, 0, 0))
export module Point {
->Point : typeof Point
+>Point : typeof Point, Symbol(Point, Decl(module.ts, 0, 10))
export var Origin = { x: 0, y: 0 };
->Origin : { x: number; y: number; }
+>Origin : { x: number; y: number; }, Symbol(Origin, Decl(module.ts, 2, 18))
>{ x: 0, y: 0 } : { x: number; y: number; }
->x : number
->y : number
+>x : number, Symbol(x, Decl(module.ts, 2, 29))
+>0 : number
+>y : number, Symbol(y, Decl(module.ts, 2, 35))
+>0 : number
}
}
=== tests/cases/conformance/internalModules/DeclarationMerging/test.ts ===
var fn: () => { x: number; y: number };
->fn : () => { x: number; y: number; }
->x : number
->y : number
+>fn : () => { x: number; y: number; }, Symbol(fn, Decl(test.ts, 0, 3), Decl(test.ts, 1, 3))
+>x : number, Symbol(x, Decl(test.ts, 0, 15))
+>y : number, Symbol(y, Decl(test.ts, 0, 26))
var fn = A.Point;
->fn : () => { x: number; y: number; }
->A.Point : () => { x: number; y: number; }
->A : typeof A
->Point : () => { x: number; y: number; }
+>fn : () => { x: number; y: number; }, Symbol(fn, Decl(test.ts, 0, 3), Decl(test.ts, 1, 3))
+>A.Point : () => { x: number; y: number; }, Symbol(A.Point, Decl(function.ts, 0, 10))
+>A : typeof A, Symbol(A, Decl(function.ts, 0, 0))
+>Point : () => { x: number; y: number; }, Symbol(A.Point, Decl(function.ts, 0, 10))
var cl: { x: number; y: number; }
->cl : { x: number; y: number; }
->x : number
->y : number
+>cl : { x: number; y: number; }, Symbol(cl, Decl(test.ts, 3, 3), Decl(test.ts, 4, 3))
+>x : number, Symbol(x, Decl(test.ts, 3, 9))
+>y : number, Symbol(y, Decl(test.ts, 3, 20))
var cl = B.Point.Origin;
->cl : { x: number; y: number; }
->B.Point.Origin : { x: number; y: number; }
->B.Point : typeof B.Point
->B : typeof B
->Point : typeof B.Point
->Origin : { x: number; y: number; }
+>cl : { x: number; y: number; }, Symbol(cl, Decl(test.ts, 3, 3), Decl(test.ts, 4, 3))
+>B.Point.Origin : { x: number; y: number; }, Symbol(B.Point.Origin, Decl(module.ts, 2, 18))
+>B.Point : typeof B.Point, Symbol(B.Point, Decl(module.ts, 0, 10))
+>B : typeof B, Symbol(B, Decl(module.ts, 0, 0))
+>Point : typeof B.Point, Symbol(B.Point, Decl(module.ts, 0, 10))
+>Origin : { x: number; y: number; }, Symbol(B.Point.Origin, Decl(module.ts, 2, 18))
diff --git a/tests/baselines/reference/FunctionDeclaration2_es6.types b/tests/baselines/reference/FunctionDeclaration2_es6.types
index f23d9cf6840..eefe4de1464 100644
--- a/tests/baselines/reference/FunctionDeclaration2_es6.types
+++ b/tests/baselines/reference/FunctionDeclaration2_es6.types
@@ -1,5 +1,5 @@
=== tests/cases/conformance/es6/functionDeclarations/FunctionDeclaration2_es6.ts ===
function f(yield) {
->f : (yield: any) => void
->yield : any
+>f : (yield: any) => void, Symbol(f, Decl(FunctionDeclaration2_es6.ts, 0, 0))
+>yield : any, Symbol(yield, Decl(FunctionDeclaration2_es6.ts, 0, 11))
}
diff --git a/tests/baselines/reference/FunctionDeclaration4_es6.types b/tests/baselines/reference/FunctionDeclaration4_es6.types
index e4f102a8f70..9cf71703bc8 100644
--- a/tests/baselines/reference/FunctionDeclaration4_es6.types
+++ b/tests/baselines/reference/FunctionDeclaration4_es6.types
@@ -1,4 +1,4 @@
=== tests/cases/conformance/es6/functionDeclarations/FunctionDeclaration4_es6.ts ===
function yield() {
->yield : () => void
+>yield : () => void, Symbol(yield, Decl(FunctionDeclaration4_es6.ts, 0, 0))
}
diff --git a/tests/baselines/reference/ModuleAndEnumWithSameNameAndCommonRoot.types b/tests/baselines/reference/ModuleAndEnumWithSameNameAndCommonRoot.types
index 023511c8c4d..4c5d815dfcf 100644
--- a/tests/baselines/reference/ModuleAndEnumWithSameNameAndCommonRoot.types
+++ b/tests/baselines/reference/ModuleAndEnumWithSameNameAndCommonRoot.types
@@ -1,43 +1,45 @@
=== tests/cases/conformance/internalModules/DeclarationMerging/ModuleAndEnumWithSameNameAndCommonRoot.ts ===
module enumdule {
->enumdule : typeof enumdule
+>enumdule : typeof enumdule, Symbol(enumdule, Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 0, 0), Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 5, 1))
export class Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 0, 17))
constructor(public x: number, public y: number) { }
->x : number
->y : number
+>x : number, Symbol(x, Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 3, 20))
+>y : number, Symbol(y, Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 3, 37))
}
}
enum enumdule {
->enumdule : enumdule
+>enumdule : enumdule, Symbol(enumdule, Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 0, 0), Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 5, 1))
Red, Blue
->Red : enumdule
->Blue : enumdule
+>Red : enumdule, Symbol(enumdule.Red, Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 7, 15))
+>Blue : enumdule, Symbol(enumdule.Blue, Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 8, 8))
}
var x: enumdule;
->x : enumdule
->enumdule : enumdule
+>x : enumdule, Symbol(x, Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 11, 3), Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 12, 3))
+>enumdule : enumdule, Symbol(enumdule, Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 0, 0), Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 5, 1))
var x = enumdule.Red;
->x : enumdule
->enumdule.Red : enumdule
->enumdule : typeof enumdule
->Red : enumdule
+>x : enumdule, Symbol(x, Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 11, 3), Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 12, 3))
+>enumdule.Red : enumdule, Symbol(enumdule.Red, Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 7, 15))
+>enumdule : typeof enumdule, Symbol(enumdule, Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 0, 0), Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 5, 1))
+>Red : enumdule, Symbol(enumdule.Red, Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 7, 15))
var y: { x: number; y: number };
->y : { x: number; y: number; }
->x : number
->y : number
+>y : { x: number; y: number; }, Symbol(y, Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 14, 3), Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 15, 3))
+>x : number, Symbol(x, Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 14, 8))
+>y : number, Symbol(y, Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 14, 19))
var y = new enumdule.Point(0, 0);
->y : { x: number; y: number; }
+>y : { x: number; y: number; }, Symbol(y, Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 14, 3), Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 15, 3))
>new enumdule.Point(0, 0) : enumdule.Point
->enumdule.Point : typeof enumdule.Point
->enumdule : typeof enumdule
->Point : typeof enumdule.Point
+>enumdule.Point : typeof enumdule.Point, Symbol(enumdule.Point, Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 0, 17))
+>enumdule : typeof enumdule, Symbol(enumdule, Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 0, 0), Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 5, 1))
+>Point : typeof enumdule.Point, Symbol(enumdule.Point, Decl(ModuleAndEnumWithSameNameAndCommonRoot.ts, 0, 17))
+>0 : number
+>0 : number
diff --git a/tests/baselines/reference/Protected5.types b/tests/baselines/reference/Protected5.types
index 7ef0be949a7..f6586a5b81c 100644
--- a/tests/baselines/reference/Protected5.types
+++ b/tests/baselines/reference/Protected5.types
@@ -1,7 +1,7 @@
=== tests/cases/conformance/parser/ecmascript5/Protected/Protected5.ts ===
class C {
->C : C
+>C : C, Symbol(C, Decl(Protected5.ts, 0, 0))
protected static m() { }
->m : () => void
+>m : () => void, Symbol(C.m, Decl(Protected5.ts, 0, 9))
}
diff --git a/tests/baselines/reference/Protected8.types b/tests/baselines/reference/Protected8.types
index f29be486eec..25b9ee44b8b 100644
--- a/tests/baselines/reference/Protected8.types
+++ b/tests/baselines/reference/Protected8.types
@@ -1,10 +1,10 @@
=== tests/cases/conformance/parser/ecmascript5/Protected/Protected8.ts ===
interface I {
->I : I
+>I : I, Symbol(I, Decl(Protected8.ts, 0, 0))
protected
->protected : any
+>protected : any, Symbol(protected, Decl(Protected8.ts, 0, 13))
p
->p : any
+>p : any, Symbol(p, Decl(Protected8.ts, 1, 12))
}
diff --git a/tests/baselines/reference/Protected9.types b/tests/baselines/reference/Protected9.types
index d4b6e2fff82..d3dd2f46e65 100644
--- a/tests/baselines/reference/Protected9.types
+++ b/tests/baselines/reference/Protected9.types
@@ -1,7 +1,7 @@
=== tests/cases/conformance/parser/ecmascript5/Protected/Protected9.ts ===
class C {
->C : C
+>C : C, Symbol(C, Decl(Protected9.ts, 0, 0))
constructor(protected p) { }
->p : any
+>p : any, Symbol(p, Decl(Protected9.ts, 1, 15))
}
diff --git a/tests/baselines/reference/TupleType1.types b/tests/baselines/reference/TupleType1.types
index 39fa32d5dca..83e6711e2e5 100644
--- a/tests/baselines/reference/TupleType1.types
+++ b/tests/baselines/reference/TupleType1.types
@@ -1,4 +1,4 @@
=== tests/cases/conformance/parser/ecmascript5/TupleTypes/TupleType1.ts ===
var v: [number]
->v : [number]
+>v : [number], Symbol(v, Decl(TupleType1.ts, 0, 3))
diff --git a/tests/baselines/reference/TupleType2.types b/tests/baselines/reference/TupleType2.types
index 0f35f60786c..5691baadd06 100644
--- a/tests/baselines/reference/TupleType2.types
+++ b/tests/baselines/reference/TupleType2.types
@@ -1,4 +1,4 @@
=== tests/cases/conformance/parser/ecmascript5/TupleTypes/TupleType2.ts ===
var v: [number, string]
->v : [number, string]
+>v : [number, string], Symbol(v, Decl(TupleType2.ts, 0, 3))
diff --git a/tests/baselines/reference/TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.types b/tests/baselines/reference/TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.types
index a856b699dd5..f253f897382 100644
--- a/tests/baselines/reference/TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.types
+++ b/tests/baselines/reference/TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.types
@@ -1,82 +1,82 @@
=== tests/cases/conformance/internalModules/DeclarationMerging/TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts ===
module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 5, 1))
export class Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 0, 10))
x: number;
->x : number
+>x : number, Symbol(x, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 1, 24))
y: number;
->y : number
+>y : number, Symbol(y, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 2, 18))
}
}
module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 5, 1))
class Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 7, 10))
fromCarthesian(p: A.Point) {
->fromCarthesian : (p: A.Point) => { x: number; y: number; }
->p : A.Point
->A : unknown
->Point : A.Point
+>fromCarthesian : (p: A.Point) => { x: number; y: number; }, Symbol(fromCarthesian, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 8, 17))
+>p : A.Point, Symbol(p, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 9, 23))
+>A : any, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 5, 1))
+>Point : A.Point, Symbol(Point, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 0, 10))
return { x: p.x, y: p.y };
>{ x: p.x, y: p.y } : { x: number; y: number; }
->x : number
->p.x : number
->p : A.Point
->x : number
->y : number
->p.y : number
->p : A.Point
->y : number
+>x : number, Symbol(x, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 10, 20))
+>p.x : number, Symbol(Point.x, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 1, 24))
+>p : A.Point, Symbol(p, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 9, 23))
+>x : number, Symbol(Point.x, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 1, 24))
+>y : number, Symbol(y, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 10, 28))
+>p.y : number, Symbol(Point.y, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 2, 18))
+>p : A.Point, Symbol(p, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 9, 23))
+>y : number, Symbol(Point.y, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 2, 18))
}
}
}
// ensure merges as expected
var p: { x: number; y: number; };
->p : { x: number; y: number; }
->x : number
->y : number
+>p : { x: number; y: number; }, Symbol(p, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 16, 3), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 17, 3))
+>x : number, Symbol(x, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 16, 8))
+>y : number, Symbol(y, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 16, 19))
var p: A.Point;
->p : { x: number; y: number; }
->A : unknown
->Point : A.Point
+>p : { x: number; y: number; }, Symbol(p, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 16, 3), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 17, 3))
+>A : any, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 5, 1))
+>Point : A.Point, Symbol(A.Point, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 0, 10))
module X.Y.Z {
->X : typeof X
->Y : typeof Y
->Z : typeof Z
+>X : typeof X, Symbol(X, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 17, 15), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 23, 1))
+>Y : typeof Y, Symbol(Y, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 19, 9), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 25, 10))
+>Z : typeof Z, Symbol(Z, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 19, 11), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 26, 21))
export class Line {
->Line : Line
+>Line : Line, Symbol(Line, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 19, 14))
length: number;
->length : number
+>length : number, Symbol(length, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 20, 23))
}
}
module X {
->X : typeof X
+>X : typeof X, Symbol(X, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 17, 15), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 23, 1))
export module Y {
->Y : typeof Y
+>Y : typeof Y, Symbol(Y, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 19, 9), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 25, 10))
export module Z {
->Z : typeof Z
+>Z : typeof Z, Symbol(Z, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 19, 11), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 26, 21))
class Line {
->Line : Line
+>Line : Line, Symbol(Line, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 27, 25))
name: string;
->name : string
+>name : string, Symbol(name, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 28, 24))
}
}
}
@@ -84,14 +84,14 @@ module X {
// ensure merges as expected
var l: { length: number; }
->l : { length: number; }
->length : number
+>l : { length: number; }, Symbol(l, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 36, 3), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 37, 3))
+>length : number, Symbol(length, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 36, 8))
var l: X.Y.Z.Line;
->l : { length: number; }
->X : unknown
->Y : unknown
->Z : unknown
->Line : X.Y.Z.Line
+>l : { length: number; }, Symbol(l, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 36, 3), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 37, 3))
+>X : any, Symbol(X, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 17, 15), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 23, 1))
+>Y : any, Symbol(X.Y, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 19, 9), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 25, 10))
+>Z : any, Symbol(X.Y.Z, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 19, 11), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 26, 21))
+>Line : X.Y.Z.Line, Symbol(X.Y.Z.Line, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts, 19, 14))
diff --git a/tests/baselines/reference/TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.types b/tests/baselines/reference/TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.types
index a8fc56495dd..d16e446a082 100644
--- a/tests/baselines/reference/TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.types
+++ b/tests/baselines/reference/TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.types
@@ -1,103 +1,103 @@
=== tests/cases/conformance/internalModules/DeclarationMerging/TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts ===
module A {
->A : unknown
+>A : any, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 6, 1))
export interface Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 0, 10))
x: number;
->x : number
+>x : number, Symbol(x, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 1, 28))
y: number;
->y : number
+>y : number, Symbol(y, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 2, 18))
toCarth(): Point;
->toCarth : () => Point
->Point : Point
+>toCarth : () => Point, Symbol(toCarth, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 3, 18))
+>Point : Point, Symbol(Point, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 0, 10))
}
}
module A {
->A : unknown
+>A : any, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 6, 1))
interface Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 8, 10))
fromCarth(): Point;
->fromCarth : () => Point
->Point : Point
+>fromCarth : () => Point, Symbol(fromCarth, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 9, 21))
+>Point : Point, Symbol(Point, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 8, 10))
}
}
// ensure merges as expected
var p: { x: number; y: number; toCarth(): A.Point; };
->p : { x: number; y: number; toCarth(): A.Point; }
->x : number
->y : number
->toCarth : () => A.Point
->A : unknown
->Point : A.Point
+>p : { x: number; y: number; toCarth(): A.Point; }, Symbol(p, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 15, 3), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 16, 3))
+>x : number, Symbol(x, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 15, 8))
+>y : number, Symbol(y, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 15, 19))
+>toCarth : () => A.Point, Symbol(toCarth, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 15, 30))
+>A : any, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 6, 1))
+>Point : A.Point, Symbol(A.Point, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 0, 10))
var p: A.Point;
->p : { x: number; y: number; toCarth(): A.Point; }
->A : unknown
->Point : A.Point
+>p : { x: number; y: number; toCarth(): A.Point; }, Symbol(p, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 15, 3), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 16, 3))
+>A : any, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 6, 1))
+>Point : A.Point, Symbol(A.Point, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 0, 10))
module X.Y.Z {
->X : unknown
->Y : unknown
->Z : unknown
+>X : any, Symbol(X, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 16, 15), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 22, 1))
+>Y : any, Symbol(Y, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 18, 9), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 24, 10))
+>Z : any, Symbol(Z, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 18, 11), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 25, 20))
export interface Line {
->Line : Line
+>Line : Line, Symbol(Line, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 18, 14))
new (start: A.Point, end: A.Point);
->start : A.Point
->A : unknown
->Point : A.Point
->end : A.Point
->A : unknown
->Point : A.Point
+>start : A.Point, Symbol(start, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 20, 13))
+>A : any, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 6, 1))
+>Point : A.Point, Symbol(A.Point, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 0, 10))
+>end : A.Point, Symbol(end, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 20, 28))
+>A : any, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 6, 1))
+>Point : A.Point, Symbol(A.Point, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 0, 10))
}
}
module X {
->X : unknown
+>X : any, Symbol(X, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 16, 15), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 22, 1))
export module Y.Z {
->Y : unknown
->Z : unknown
+>Y : any, Symbol(Y, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 18, 9), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 24, 10))
+>Z : any, Symbol(Z, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 18, 11), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 25, 20))
interface Line {
->Line : Line
+>Line : Line, Symbol(Line, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 25, 23))
start: A.Point;
->start : A.Point
->A : unknown
->Point : A.Point
+>start : A.Point, Symbol(start, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 26, 24))
+>A : any, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 6, 1))
+>Point : A.Point, Symbol(A.Point, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 0, 10))
end: A.Point;
->end : A.Point
->A : unknown
->Point : A.Point
+>end : A.Point, Symbol(end, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 27, 27))
+>A : any, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 6, 1))
+>Point : A.Point, Symbol(A.Point, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 0, 10))
}
}
}
// ensure merges as expected
var l: { new (s: A.Point, e: A.Point); }
->l : new (s: A.Point, e: A.Point) => any
->s : A.Point
->A : unknown
->Point : A.Point
->e : A.Point
->A : unknown
->Point : A.Point
+>l : new (s: A.Point, e: A.Point) => any, Symbol(l, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 34, 3), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 35, 3))
+>s : A.Point, Symbol(s, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 34, 14))
+>A : any, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 6, 1))
+>Point : A.Point, Symbol(A.Point, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 0, 10))
+>e : A.Point, Symbol(e, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 34, 25))
+>A : any, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 6, 1))
+>Point : A.Point, Symbol(A.Point, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 0, 10))
var l: X.Y.Z.Line;
->l : new (s: A.Point, e: A.Point) => any
->X : unknown
->Y : unknown
->Z : unknown
->Line : X.Y.Z.Line
+>l : new (s: A.Point, e: A.Point) => any, Symbol(l, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 34, 3), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 35, 3))
+>X : any, Symbol(X, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 16, 15), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 22, 1))
+>Y : any, Symbol(X.Y, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 18, 9), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 24, 10))
+>Z : any, Symbol(X.Y.Z, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 18, 11), Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 25, 20))
+>Line : X.Y.Z.Line, Symbol(X.Y.Z.Line, Decl(TwoInternalModulesThatMergeEachWithExportedAndNonExportedInterfacesOfTheSameName.ts, 18, 14))
diff --git a/tests/baselines/reference/TwoInternalModulesThatMergeEachWithExportedAndNonExportedLocalVarsOfTheSameName.types b/tests/baselines/reference/TwoInternalModulesThatMergeEachWithExportedAndNonExportedLocalVarsOfTheSameName.types
index 003fb5fa15a..e09d6fd52b2 100644
--- a/tests/baselines/reference/TwoInternalModulesThatMergeEachWithExportedAndNonExportedLocalVarsOfTheSameName.types
+++ b/tests/baselines/reference/TwoInternalModulesThatMergeEachWithExportedAndNonExportedLocalVarsOfTheSameName.types
@@ -1,66 +1,69 @@
=== tests/cases/conformance/internalModules/DeclarationMerging/part1.ts ===
module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(part1.ts, 0, 0), Decl(part2.ts, 0, 0))
export interface Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(part1.ts, 0, 10))
x: number;
->x : number
+>x : number, Symbol(x, Decl(part1.ts, 1, 28))
y: number;
->y : number
+>y : number, Symbol(y, Decl(part1.ts, 2, 18))
}
export module Utils {
->Utils : typeof Utils
+>Utils : typeof Utils, Symbol(Utils, Decl(part1.ts, 4, 5), Decl(part2.ts, 2, 31))
export function mirror(p: T) {
->mirror : (p: T) => { x: number; y: number; }
->T : T
->Point : Point
->p : T
->T : T
+>mirror : (p: T) => { x: number; y: number; }, Symbol(mirror, Decl(part1.ts, 6, 25))
+>T : T, Symbol(T, Decl(part1.ts, 7, 31))
+>Point : Point, Symbol(Point, Decl(part1.ts, 0, 10))
+>p : T, Symbol(p, Decl(part1.ts, 7, 48))
+>T : T, Symbol(T, Decl(part1.ts, 7, 31))
return { x: p.y, y: p.x };
>{ x: p.y, y: p.x } : { x: number; y: number; }
->x : number
->p.y : number
->p : T
->y : number
->y : number
->p.x : number
->p : T
->x : number
+>x : number, Symbol(x, Decl(part1.ts, 8, 20))
+>p.y : number, Symbol(Point.y, Decl(part1.ts, 2, 18))
+>p : T, Symbol(p, Decl(part1.ts, 7, 48))
+>y : number, Symbol(Point.y, Decl(part1.ts, 2, 18))
+>y : number, Symbol(y, Decl(part1.ts, 8, 28))
+>p.x : number, Symbol(Point.x, Decl(part1.ts, 1, 28))
+>p : T, Symbol(p, Decl(part1.ts, 7, 48))
+>x : number, Symbol(Point.x, Decl(part1.ts, 1, 28))
}
}
export var Origin: Point = { x: 0, y: 0 };
->Origin : Point
->Point : Point
+>Origin : Point, Symbol(Origin, Decl(part1.ts, 11, 14))
+>Point : Point, Symbol(Point, Decl(part1.ts, 0, 10))
>{ x: 0, y: 0 } : { x: number; y: number; }
->x : number
->y : number
+>x : number, Symbol(x, Decl(part1.ts, 11, 32))
+>0 : number
+>y : number, Symbol(y, Decl(part1.ts, 11, 38))
+>0 : number
}
=== tests/cases/conformance/internalModules/DeclarationMerging/part2.ts ===
module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(part1.ts, 0, 0), Decl(part2.ts, 0, 0))
// not a collision, since we don't export
var Origin: string = "0,0";
->Origin : string
+>Origin : string, Symbol(Origin, Decl(part2.ts, 2, 7))
+>"0,0" : string
export module Utils {
->Utils : typeof Utils
+>Utils : typeof Utils, Symbol(Utils, Decl(part1.ts, 4, 5), Decl(part2.ts, 2, 31))
export class Plane {
->Plane : Plane
+>Plane : Plane, Symbol(Plane, Decl(part2.ts, 4, 25))
constructor(public tl: Point, public br: Point) { }
->tl : Point
->Point : Point
->br : Point
->Point : Point
+>tl : Point, Symbol(tl, Decl(part2.ts, 6, 24))
+>Point : Point, Symbol(Point, Decl(part1.ts, 0, 10))
+>br : Point, Symbol(br, Decl(part2.ts, 6, 41))
+>Point : Point, Symbol(Point, Decl(part1.ts, 0, 10))
}
}
}
@@ -69,57 +72,59 @@ module A {
// test the merging actually worked
var o: { x: number; y: number };
->o : { x: number; y: number; }
->x : number
->y : number
+>o : { x: number; y: number; }, Symbol(o, Decl(part3.ts, 2, 3), Decl(part3.ts, 3, 3), Decl(part3.ts, 4, 3), Decl(part3.ts, 5, 3))
+>x : number, Symbol(x, Decl(part3.ts, 2, 8))
+>y : number, Symbol(y, Decl(part3.ts, 2, 19))
var o: A.Point;
->o : { x: number; y: number; }
->A : unknown
->Point : A.Point
+>o : { x: number; y: number; }, Symbol(o, Decl(part3.ts, 2, 3), Decl(part3.ts, 3, 3), Decl(part3.ts, 4, 3), Decl(part3.ts, 5, 3))
+>A : any, Symbol(A, Decl(part1.ts, 0, 0), Decl(part2.ts, 0, 0))
+>Point : A.Point, Symbol(A.Point, Decl(part1.ts, 0, 10))
var o = A.Origin;
->o : { x: number; y: number; }
->A.Origin : A.Point
->A : typeof A
->Origin : A.Point
+>o : { x: number; y: number; }, Symbol(o, Decl(part3.ts, 2, 3), Decl(part3.ts, 3, 3), Decl(part3.ts, 4, 3), Decl(part3.ts, 5, 3))
+>A.Origin : A.Point, Symbol(A.Origin, Decl(part1.ts, 11, 14))
+>A : typeof A, Symbol(A, Decl(part1.ts, 0, 0), Decl(part2.ts, 0, 0))
+>Origin : A.Point, Symbol(A.Origin, Decl(part1.ts, 11, 14))
var o = A.Utils.mirror(o);
->o : { x: number; y: number; }
+>o : { x: number; y: number; }, Symbol(o, Decl(part3.ts, 2, 3), Decl(part3.ts, 3, 3), Decl(part3.ts, 4, 3), Decl(part3.ts, 5, 3))
>A.Utils.mirror(o) : { x: number; y: number; }
->A.Utils.mirror : (p: T) => { x: number; y: number; }
->A.Utils : typeof A.Utils
->A : typeof A
->Utils : typeof A.Utils
->mirror : (p: T) => { x: number; y: number; }
->o : { x: number; y: number; }
+>A.Utils.mirror : (p: T) => { x: number; y: number; }, Symbol(A.Utils.mirror, Decl(part1.ts, 6, 25))
+>A.Utils : typeof A.Utils, Symbol(A.Utils, Decl(part1.ts, 4, 5), Decl(part2.ts, 2, 31))
+>A : typeof A, Symbol(A, Decl(part1.ts, 0, 0), Decl(part2.ts, 0, 0))
+>Utils : typeof A.Utils, Symbol(A.Utils, Decl(part1.ts, 4, 5), Decl(part2.ts, 2, 31))
+>mirror : (p: T) => { x: number; y: number; }, Symbol(A.Utils.mirror, Decl(part1.ts, 6, 25))
+>o : { x: number; y: number; }, Symbol(o, Decl(part3.ts, 2, 3), Decl(part3.ts, 3, 3), Decl(part3.ts, 4, 3), Decl(part3.ts, 5, 3))
var p: { tl: A.Point; br: A.Point };
->p : { tl: A.Point; br: A.Point; }
->tl : A.Point
->A : unknown
->Point : A.Point
->br : A.Point
->A : unknown
->Point : A.Point
+>p : { tl: A.Point; br: A.Point; }, Symbol(p, Decl(part3.ts, 7, 3), Decl(part3.ts, 8, 3), Decl(part3.ts, 9, 3))
+>tl : A.Point, Symbol(tl, Decl(part3.ts, 7, 8))
+>A : any, Symbol(A, Decl(part1.ts, 0, 0), Decl(part2.ts, 0, 0))
+>Point : A.Point, Symbol(A.Point, Decl(part1.ts, 0, 10))
+>br : A.Point, Symbol(br, Decl(part3.ts, 7, 21))
+>A : any, Symbol(A, Decl(part1.ts, 0, 0), Decl(part2.ts, 0, 0))
+>Point : A.Point, Symbol(A.Point, Decl(part1.ts, 0, 10))
var p: A.Utils.Plane;
->p : { tl: A.Point; br: A.Point; }
->A : unknown
->Utils : unknown
->Plane : A.Utils.Plane
+>p : { tl: A.Point; br: A.Point; }, Symbol(p, Decl(part3.ts, 7, 3), Decl(part3.ts, 8, 3), Decl(part3.ts, 9, 3))
+>A : any, Symbol(A, Decl(part1.ts, 0, 0), Decl(part2.ts, 0, 0))
+>Utils : any, Symbol(A.Utils, Decl(part1.ts, 4, 5), Decl(part2.ts, 2, 31))
+>Plane : A.Utils.Plane, Symbol(A.Utils.Plane, Decl(part2.ts, 4, 25))
var p = new A.Utils.Plane(o, { x: 1, y: 1 });
->p : { tl: A.Point; br: A.Point; }
+>p : { tl: A.Point; br: A.Point; }, Symbol(p, Decl(part3.ts, 7, 3), Decl(part3.ts, 8, 3), Decl(part3.ts, 9, 3))
>new A.Utils.Plane(o, { x: 1, y: 1 }) : A.Utils.Plane
->A.Utils.Plane : typeof A.Utils.Plane
->A.Utils : typeof A.Utils
->A : typeof A
->Utils : typeof A.Utils
->Plane : typeof A.Utils.Plane
->o : { x: number; y: number; }
+>A.Utils.Plane : typeof A.Utils.Plane, Symbol(A.Utils.Plane, Decl(part2.ts, 4, 25))
+>A.Utils : typeof A.Utils, Symbol(A.Utils, Decl(part1.ts, 4, 5), Decl(part2.ts, 2, 31))
+>A : typeof A, Symbol(A, Decl(part1.ts, 0, 0), Decl(part2.ts, 0, 0))
+>Utils : typeof A.Utils, Symbol(A.Utils, Decl(part1.ts, 4, 5), Decl(part2.ts, 2, 31))
+>Plane : typeof A.Utils.Plane, Symbol(A.Utils.Plane, Decl(part2.ts, 4, 25))
+>o : { x: number; y: number; }, Symbol(o, Decl(part3.ts, 2, 3), Decl(part3.ts, 3, 3), Decl(part3.ts, 4, 3), Decl(part3.ts, 5, 3))
>{ x: 1, y: 1 } : { x: number; y: number; }
->x : number
->y : number
+>x : number, Symbol(x, Decl(part3.ts, 9, 30))
+>1 : number
+>y : number, Symbol(y, Decl(part3.ts, 9, 36))
+>1 : number
diff --git a/tests/baselines/reference/TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.types b/tests/baselines/reference/TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.types
index c54ad5f3ad9..d75f723068f 100644
--- a/tests/baselines/reference/TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.types
+++ b/tests/baselines/reference/TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.types
@@ -1,112 +1,112 @@
=== tests/cases/conformance/internalModules/DeclarationMerging/TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts ===
module A {
->A : unknown
+>A : any, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 6, 1))
export interface Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 0, 10), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 8, 10))
x: number;
->x : number
+>x : number, Symbol(x, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 1, 28))
y: number;
->y : number
+>y : number, Symbol(y, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 2, 18))
toCarth(): Point;
->toCarth : () => Point
->Point : Point
+>toCarth : () => Point, Symbol(toCarth, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 3, 18))
+>Point : Point, Symbol(Point, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 0, 10), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 8, 10))
}
}
module A {
->A : unknown
+>A : any, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 6, 1))
export interface Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 0, 10), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 8, 10))
fromCarth(): Point;
->fromCarth : () => Point
->Point : Point
+>fromCarth : () => Point, Symbol(fromCarth, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 9, 28))
+>Point : Point, Symbol(Point, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 0, 10), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 8, 10))
}
}
// ensure merges as expected
var p: { x: number; y: number; toCarth(): A.Point; fromCarth(): A.Point; };
->p : { x: number; y: number; toCarth(): A.Point; fromCarth(): A.Point; }
->x : number
->y : number
->toCarth : () => A.Point
->A : unknown
->Point : A.Point
->fromCarth : () => A.Point
->A : unknown
->Point : A.Point
+>p : { x: number; y: number; toCarth(): A.Point; fromCarth(): A.Point; }, Symbol(p, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 15, 3), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 16, 3))
+>x : number, Symbol(x, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 15, 8))
+>y : number, Symbol(y, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 15, 19))
+>toCarth : () => A.Point, Symbol(toCarth, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 15, 30))
+>A : any, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 6, 1))
+>Point : A.Point, Symbol(A.Point, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 0, 10), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 8, 10))
+>fromCarth : () => A.Point, Symbol(fromCarth, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 15, 50))
+>A : any, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 6, 1))
+>Point : A.Point, Symbol(A.Point, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 0, 10), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 8, 10))
var p: A.Point;
->p : { x: number; y: number; toCarth(): A.Point; fromCarth(): A.Point; }
->A : unknown
->Point : A.Point
+>p : { x: number; y: number; toCarth(): A.Point; fromCarth(): A.Point; }, Symbol(p, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 15, 3), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 16, 3))
+>A : any, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 6, 1))
+>Point : A.Point, Symbol(A.Point, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 0, 10), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 8, 10))
module X.Y.Z {
->X : unknown
->Y : unknown
->Z : unknown
+>X : any, Symbol(X, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 16, 15), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 22, 1))
+>Y : any, Symbol(Y, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 18, 9), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 24, 10))
+>Z : any, Symbol(Z, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 18, 11), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 25, 20))
export interface Line {
->Line : Line
+>Line : Line, Symbol(Line, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 18, 14), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 25, 23))
new (start: A.Point, end: A.Point);
->start : A.Point
->A : unknown
->Point : A.Point
->end : A.Point
->A : unknown
->Point : A.Point
+>start : A.Point, Symbol(start, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 20, 13))
+>A : any, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 6, 1))
+>Point : A.Point, Symbol(A.Point, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 0, 10), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 8, 10))
+>end : A.Point, Symbol(end, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 20, 28))
+>A : any, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 6, 1))
+>Point : A.Point, Symbol(A.Point, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 0, 10), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 8, 10))
}
}
module X {
->X : unknown
+>X : any, Symbol(X, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 16, 15), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 22, 1))
export module Y.Z {
->Y : unknown
->Z : unknown
+>Y : any, Symbol(Y, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 18, 9), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 24, 10))
+>Z : any, Symbol(Z, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 18, 11), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 25, 20))
export interface Line {
->Line : Line
+>Line : Line, Symbol(Line, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 18, 14), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 25, 23))
start: A.Point;
->start : A.Point
->A : unknown
->Point : A.Point
+>start : A.Point, Symbol(start, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 26, 31))
+>A : any, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 6, 1))
+>Point : A.Point, Symbol(A.Point, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 0, 10), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 8, 10))
end: A.Point;
->end : A.Point
->A : unknown
->Point : A.Point
+>end : A.Point, Symbol(end, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 27, 27))
+>A : any, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 6, 1))
+>Point : A.Point, Symbol(A.Point, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 0, 10), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 8, 10))
}
}
}
// ensure merges as expected
var l: { start: A.Point; end: A.Point; new (s: A.Point, e: A.Point); }
->l : { new (s: A.Point, e: A.Point): any; start: A.Point; end: A.Point; }
->start : A.Point
->A : unknown
->Point : A.Point
->end : A.Point
->A : unknown
->Point : A.Point
->s : A.Point
->A : unknown
->Point : A.Point
->e : A.Point
->A : unknown
->Point : A.Point
+>l : { new (s: A.Point, e: A.Point): any; start: A.Point; end: A.Point; }, Symbol(l, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 34, 3), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 35, 3))
+>start : A.Point, Symbol(start, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 34, 8))
+>A : any, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 6, 1))
+>Point : A.Point, Symbol(A.Point, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 0, 10), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 8, 10))
+>end : A.Point, Symbol(end, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 34, 24))
+>A : any, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 6, 1))
+>Point : A.Point, Symbol(A.Point, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 0, 10), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 8, 10))
+>s : A.Point, Symbol(s, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 34, 44))
+>A : any, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 6, 1))
+>Point : A.Point, Symbol(A.Point, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 0, 10), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 8, 10))
+>e : A.Point, Symbol(e, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 34, 55))
+>A : any, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 6, 1))
+>Point : A.Point, Symbol(A.Point, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 0, 10), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 8, 10))
var l: X.Y.Z.Line;
->l : { new (s: A.Point, e: A.Point): any; start: A.Point; end: A.Point; }
->X : unknown
->Y : unknown
->Z : unknown
->Line : X.Y.Z.Line
+>l : { new (s: A.Point, e: A.Point): any; start: A.Point; end: A.Point; }, Symbol(l, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 34, 3), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 35, 3))
+>X : any, Symbol(X, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 16, 15), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 22, 1))
+>Y : any, Symbol(X.Y, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 18, 9), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 24, 10))
+>Z : any, Symbol(X.Y.Z, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 18, 11), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 25, 20))
+>Line : X.Y.Z.Line, Symbol(X.Y.Z.Line, Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 18, 14), Decl(TwoInternalModulesThatMergeEachWithExportedInterfacesOfTheSameName.ts, 25, 23))
diff --git a/tests/baselines/reference/TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.types b/tests/baselines/reference/TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.types
index 9232af469ac..33b28ffbacd 100644
--- a/tests/baselines/reference/TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.types
+++ b/tests/baselines/reference/TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.types
@@ -1,62 +1,62 @@
=== tests/cases/conformance/internalModules/DeclarationMerging/TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts ===
module A.B {
->A : typeof A
->B : typeof B
+>A : typeof A, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 2, 1))
+>B : typeof B, Symbol(B, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 0, 9))
export var x: number;
->x : number
+>x : number, Symbol(x, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 1, 14))
}
module A{
->A : typeof A
+>A : typeof A, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 2, 1))
module B {
->B : typeof B
+>B : typeof B, Symbol(B, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 4, 9))
export var x: string;
->x : string
+>x : string, Symbol(x, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 6, 18))
}
}
// ensure the right var decl is exported
var x: number;
->x : number
+>x : number, Symbol(x, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 11, 3), Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 12, 3))
var x = A.B.x;
->x : number
->A.B.x : number
->A.B : typeof A.B
->A : typeof A
->B : typeof A.B
->x : number
+>x : number, Symbol(x, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 11, 3), Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 12, 3))
+>A.B.x : number, Symbol(A.B.x, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 1, 14))
+>A.B : typeof A.B, Symbol(A.B, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 0, 9))
+>A : typeof A, Symbol(A, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 0, 0), Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 2, 1))
+>B : typeof A.B, Symbol(A.B, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 0, 9))
+>x : number, Symbol(A.B.x, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 1, 14))
module X.Y.Z {
->X : typeof X
->Y : typeof Y
->Z : typeof Z
+>X : typeof X, Symbol(X, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 12, 14), Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 18, 1))
+>Y : typeof Y, Symbol(Y, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 14, 9), Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 20, 10))
+>Z : typeof Z, Symbol(Z, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 14, 11))
export class Line {
->Line : Line
+>Line : Line, Symbol(Line, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 14, 14))
length: number;
->length : number
+>length : number, Symbol(length, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 15, 23))
}
}
module X {
->X : typeof X
+>X : typeof X, Symbol(X, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 12, 14), Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 18, 1))
export module Y {
->Y : typeof Y
+>Y : typeof Y, Symbol(Y, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 14, 9), Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 20, 10))
module Z {
->Z : typeof Z
+>Z : typeof Z, Symbol(Z, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 21, 21))
export class Line {
->Line : Line
+>Line : Line, Symbol(Line, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 22, 18))
name: string;
->name : string
+>name : string, Symbol(name, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 23, 31))
}
}
}
@@ -64,13 +64,13 @@ module X {
// make sure merging works as expected
var l: { length: number };
->l : { length: number; }
->length : number
+>l : { length: number; }, Symbol(l, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 31, 3), Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 32, 3))
+>length : number, Symbol(length, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 31, 8))
var l: X.Y.Z.Line;
->l : { length: number; }
->X : unknown
->Y : unknown
->Z : unknown
->Line : X.Y.Z.Line
+>l : { length: number; }, Symbol(l, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 31, 3), Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 32, 3))
+>X : any, Symbol(X, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 12, 14), Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 18, 1))
+>Y : any, Symbol(X.Y, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 14, 9), Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 20, 10))
+>Z : any, Symbol(X.Y.Z, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 14, 11))
+>Line : X.Y.Z.Line, Symbol(X.Y.Z.Line, Decl(TwoInternalModulesThatMergeEachWithExportedModulesOfTheSameName.ts, 14, 14))
diff --git a/tests/baselines/reference/TwoInternalModulesWithTheSameNameAndDifferentCommonRoot.types b/tests/baselines/reference/TwoInternalModulesWithTheSameNameAndDifferentCommonRoot.types
index b31bb4b22ac..53f0982a91c 100644
--- a/tests/baselines/reference/TwoInternalModulesWithTheSameNameAndDifferentCommonRoot.types
+++ b/tests/baselines/reference/TwoInternalModulesWithTheSameNameAndDifferentCommonRoot.types
@@ -1,40 +1,40 @@
=== tests/cases/conformance/internalModules/DeclarationMerging/part1.ts ===
module Root {
->Root : typeof Root
+>Root : typeof Root, Symbol(Root, Decl(part1.ts, 0, 0))
export module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(part1.ts, 0, 13))
export interface Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(part1.ts, 1, 21))
x: number;
->x : number
+>x : number, Symbol(x, Decl(part1.ts, 2, 32))
y: number;
->y : number
+>y : number, Symbol(y, Decl(part1.ts, 3, 22))
}
export module Utils {
->Utils : typeof Utils
+>Utils : typeof Utils, Symbol(Utils, Decl(part1.ts, 5, 9))
export function mirror(p: T) {
->mirror : (p: T) => { x: number; y: number; }
->T : T
->Point : Point
->p : T
->T : T
+>mirror : (p: T) => { x: number; y: number; }, Symbol(mirror, Decl(part1.ts, 7, 29))
+>T : T, Symbol(T, Decl(part1.ts, 8, 35))
+>Point : Point, Symbol(Point, Decl(part1.ts, 1, 21))
+>p : T, Symbol(p, Decl(part1.ts, 8, 52))
+>T : T, Symbol(T, Decl(part1.ts, 8, 35))
return { x: p.y, y: p.x };
>{ x: p.y, y: p.x } : { x: number; y: number; }
->x : number
->p.y : number
->p : T
->y : number
->y : number
->p.x : number
->p : T
->x : number
+>x : number, Symbol(x, Decl(part1.ts, 9, 24))
+>p.y : number, Symbol(Point.y, Decl(part1.ts, 3, 22))
+>p : T, Symbol(p, Decl(part1.ts, 8, 52))
+>y : number, Symbol(Point.y, Decl(part1.ts, 3, 22))
+>y : number, Symbol(y, Decl(part1.ts, 9, 32))
+>p.x : number, Symbol(Point.x, Decl(part1.ts, 2, 32))
+>p : T, Symbol(p, Decl(part1.ts, 8, 52))
+>x : number, Symbol(Point.x, Decl(part1.ts, 2, 32))
}
}
}
@@ -42,36 +42,38 @@ module Root {
=== tests/cases/conformance/internalModules/DeclarationMerging/part2.ts ===
module otherRoot {
->otherRoot : typeof otherRoot
+>otherRoot : typeof otherRoot, Symbol(otherRoot, Decl(part2.ts, 0, 0))
export module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(part2.ts, 0, 18))
// have to be fully qualified since in different root
export var Origin: Root.A.Point = { x: 0, y: 0 };
->Origin : Root.A.Point
->Root : unknown
->A : unknown
->Point : Root.A.Point
+>Origin : Root.A.Point, Symbol(Origin, Decl(part2.ts, 3, 18))
+>Root : any, Symbol(Root, Decl(part1.ts, 0, 0))
+>A : any, Symbol(Root.A, Decl(part1.ts, 0, 13))
+>Point : Root.A.Point, Symbol(Root.A.Point, Decl(part1.ts, 1, 21))
>{ x: 0, y: 0 } : { x: number; y: number; }
->x : number
->y : number
+>x : number, Symbol(x, Decl(part2.ts, 3, 43))
+>0 : number
+>y : number, Symbol(y, Decl(part2.ts, 3, 49))
+>0 : number
export module Utils {
->Utils : typeof Utils
+>Utils : typeof Utils, Symbol(Utils, Decl(part2.ts, 3, 57))
export class Plane {
->Plane : Plane
+>Plane : Plane, Symbol(Plane, Decl(part2.ts, 5, 29))
constructor(public tl: Root.A.Point, public br: Root.A.Point) { }
->tl : Root.A.Point
->Root : unknown
->A : unknown
->Point : Root.A.Point
->br : Root.A.Point
->Root : unknown
->A : unknown
->Point : Root.A.Point
+>tl : Root.A.Point, Symbol(tl, Decl(part2.ts, 7, 28))
+>Root : any, Symbol(Root, Decl(part1.ts, 0, 0))
+>A : any, Symbol(Root.A, Decl(part1.ts, 0, 13))
+>Point : Root.A.Point, Symbol(Root.A.Point, Decl(part1.ts, 1, 21))
+>br : Root.A.Point, Symbol(br, Decl(part2.ts, 7, 52))
+>Root : any, Symbol(Root, Decl(part1.ts, 0, 0))
+>A : any, Symbol(Root.A, Decl(part1.ts, 0, 13))
+>Point : Root.A.Point, Symbol(Root.A.Point, Decl(part1.ts, 1, 21))
}
}
}
diff --git a/tests/baselines/reference/TwoInternalModulesWithTheSameNameAndSameCommonRoot.types b/tests/baselines/reference/TwoInternalModulesWithTheSameNameAndSameCommonRoot.types
index b13cbde5522..09092db9829 100644
--- a/tests/baselines/reference/TwoInternalModulesWithTheSameNameAndSameCommonRoot.types
+++ b/tests/baselines/reference/TwoInternalModulesWithTheSameNameAndSameCommonRoot.types
@@ -1,63 +1,65 @@
=== tests/cases/conformance/internalModules/DeclarationMerging/part1.ts ===
module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(part1.ts, 0, 0), Decl(part2.ts, 0, 0))
export interface Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(part1.ts, 0, 10))
x: number;
->x : number
+>x : number, Symbol(x, Decl(part1.ts, 1, 28))
y: number;
->y : number
+>y : number, Symbol(y, Decl(part1.ts, 2, 18))
}
export module Utils {
->Utils : typeof Utils
+>Utils : typeof Utils, Symbol(Utils, Decl(part1.ts, 4, 5), Decl(part2.ts, 1, 46))
export function mirror(p: T) {
->mirror : (p: T) => { x: number; y: number; }
->T : T
->Point : Point
->p : T
->T : T
+>mirror : (p: T) => { x: number; y: number; }, Symbol(mirror, Decl(part1.ts, 6, 25))
+>T : T, Symbol(T, Decl(part1.ts, 7, 31))
+>Point : Point, Symbol(Point, Decl(part1.ts, 0, 10))
+>p : T, Symbol(p, Decl(part1.ts, 7, 48))
+>T : T, Symbol(T, Decl(part1.ts, 7, 31))
return { x: p.y, y: p.x };
>{ x: p.y, y: p.x } : { x: number; y: number; }
->x : number
->p.y : number
->p : T
->y : number
->y : number
->p.x : number
->p : T
->x : number
+>x : number, Symbol(x, Decl(part1.ts, 8, 20))
+>p.y : number, Symbol(Point.y, Decl(part1.ts, 2, 18))
+>p : T, Symbol(p, Decl(part1.ts, 7, 48))
+>y : number, Symbol(Point.y, Decl(part1.ts, 2, 18))
+>y : number, Symbol(y, Decl(part1.ts, 8, 28))
+>p.x : number, Symbol(Point.x, Decl(part1.ts, 1, 28))
+>p : T, Symbol(p, Decl(part1.ts, 7, 48))
+>x : number, Symbol(Point.x, Decl(part1.ts, 1, 28))
}
}
}
=== tests/cases/conformance/internalModules/DeclarationMerging/part2.ts ===
module A {
->A : typeof A
+>A : typeof A, Symbol(A, Decl(part1.ts, 0, 0), Decl(part2.ts, 0, 0))
export var Origin: Point = { x: 0, y: 0 };
->Origin : Point
->Point : Point
+>Origin : Point, Symbol(Origin, Decl(part2.ts, 1, 14))
+>Point : Point, Symbol(Point, Decl(part1.ts, 0, 10))
>{ x: 0, y: 0 } : { x: number; y: number; }
->x : number
->y : number
+>x : number, Symbol(x, Decl(part2.ts, 1, 32))
+>0 : number
+>y : number, Symbol(y, Decl(part2.ts, 1, 38))
+>0 : number
export module Utils {
->Utils : typeof Utils
+>Utils : typeof Utils, Symbol(Utils, Decl(part1.ts, 4, 5), Decl(part2.ts, 1, 46))
export class Plane {
->Plane : Plane
+>Plane : Plane, Symbol(Plane, Decl(part2.ts, 3, 25))
constructor(public tl: Point, public br: Point) { }
->tl : Point
->Point : Point
->br : Point
->Point : Point
+>tl : Point, Symbol(tl, Decl(part2.ts, 5, 24))
+>Point : Point, Symbol(Point, Decl(part1.ts, 0, 10))
+>br : Point, Symbol(br, Decl(part2.ts, 5, 41))
+>Point : Point, Symbol(Point, Decl(part1.ts, 0, 10))
}
}
}
@@ -66,57 +68,59 @@ module A {
// test the merging actually worked
var o: { x: number; y: number };
->o : { x: number; y: number; }
->x : number
->y : number
+>o : { x: number; y: number; }, Symbol(o, Decl(part3.ts, 2, 3), Decl(part3.ts, 3, 3), Decl(part3.ts, 4, 3), Decl(part3.ts, 5, 3))
+>x : number, Symbol(x, Decl(part3.ts, 2, 8))
+>y : number, Symbol(y, Decl(part3.ts, 2, 19))
var o: A.Point;
->o : { x: number; y: number; }
->A : unknown
->Point : A.Point
+>o : { x: number; y: number; }, Symbol(o, Decl(part3.ts, 2, 3), Decl(part3.ts, 3, 3), Decl(part3.ts, 4, 3), Decl(part3.ts, 5, 3))
+>A : any, Symbol(A, Decl(part1.ts, 0, 0), Decl(part2.ts, 0, 0))
+>Point : A.Point, Symbol(A.Point, Decl(part1.ts, 0, 10))
var o = A.Origin;
->o : { x: number; y: number; }
->A.Origin : A.Point
->A : typeof A
->Origin : A.Point
+>o : { x: number; y: number; }, Symbol(o, Decl(part3.ts, 2, 3), Decl(part3.ts, 3, 3), Decl(part3.ts, 4, 3), Decl(part3.ts, 5, 3))
+>A.Origin : A.Point, Symbol(A.Origin, Decl(part2.ts, 1, 14))
+>A : typeof A, Symbol(A, Decl(part1.ts, 0, 0), Decl(part2.ts, 0, 0))
+>Origin : A.Point, Symbol(A.Origin, Decl(part2.ts, 1, 14))
var o = A.Utils.mirror(o);
->o : { x: number; y: number; }
+>o : { x: number; y: number; }, Symbol(o, Decl(part3.ts, 2, 3), Decl(part3.ts, 3, 3), Decl(part3.ts, 4, 3), Decl(part3.ts, 5, 3))
>A.Utils.mirror(o) : { x: number; y: number; }
->A.Utils.mirror : (p: T) => { x: number; y: number; }
->A.Utils : typeof A.Utils
->A : typeof A
->Utils : typeof A.Utils
->mirror : (p: T) => { x: number; y: number; }
->o : { x: number; y: number; }
+>A.Utils.mirror : (p: T) => { x: number; y: number; }, Symbol(A.Utils.mirror, Decl(part1.ts, 6, 25))
+>A.Utils : typeof A.Utils, Symbol(A.Utils, Decl(part1.ts, 4, 5), Decl(part2.ts, 1, 46))
+>A : typeof A, Symbol(A, Decl(part1.ts, 0, 0), Decl(part2.ts, 0, 0))
+>Utils : typeof A.Utils, Symbol(A.Utils, Decl(part1.ts, 4, 5), Decl(part2.ts, 1, 46))
+>mirror : (p: T) => { x: number; y: number; }, Symbol(A.Utils.mirror, Decl(part1.ts, 6, 25))
+>o : { x: number; y: number; }, Symbol(o, Decl(part3.ts, 2, 3), Decl(part3.ts, 3, 3), Decl(part3.ts, 4, 3), Decl(part3.ts, 5, 3))
var p: { tl: A.Point; br: A.Point };
->p : { tl: A.Point; br: A.Point; }
->tl : A.Point
->A : unknown
->Point : A.Point
->br : A.Point
->A : unknown
->Point : A.Point
+>p : { tl: A.Point; br: A.Point; }, Symbol(p, Decl(part3.ts, 7, 3), Decl(part3.ts, 8, 3), Decl(part3.ts, 9, 3))
+>tl : A.Point, Symbol(tl, Decl(part3.ts, 7, 8))
+>A : any, Symbol(A, Decl(part1.ts, 0, 0), Decl(part2.ts, 0, 0))
+>Point : A.Point, Symbol(A.Point, Decl(part1.ts, 0, 10))
+>br : A.Point, Symbol(br, Decl(part3.ts, 7, 21))
+>A : any, Symbol(A, Decl(part1.ts, 0, 0), Decl(part2.ts, 0, 0))
+>Point : A.Point, Symbol(A.Point, Decl(part1.ts, 0, 10))
var p: A.Utils.Plane;
->p : { tl: A.Point; br: A.Point; }
->A : unknown
->Utils : unknown
->Plane : A.Utils.Plane
+>p : { tl: A.Point; br: A.Point; }, Symbol(p, Decl(part3.ts, 7, 3), Decl(part3.ts, 8, 3), Decl(part3.ts, 9, 3))
+>A : any, Symbol(A, Decl(part1.ts, 0, 0), Decl(part2.ts, 0, 0))
+>Utils : any, Symbol(A.Utils, Decl(part1.ts, 4, 5), Decl(part2.ts, 1, 46))
+>Plane : A.Utils.Plane, Symbol(A.Utils.Plane, Decl(part2.ts, 3, 25))
var p = new A.Utils.Plane(o, { x: 1, y: 1 });
->p : { tl: A.Point; br: A.Point; }
+>p : { tl: A.Point; br: A.Point; }, Symbol(p, Decl(part3.ts, 7, 3), Decl(part3.ts, 8, 3), Decl(part3.ts, 9, 3))
>new A.Utils.Plane(o, { x: 1, y: 1 }) : A.Utils.Plane
->A.Utils.Plane : typeof A.Utils.Plane
->A.Utils : typeof A.Utils
->A : typeof A
->Utils : typeof A.Utils
->Plane : typeof A.Utils.Plane
->o : { x: number; y: number; }
+>A.Utils.Plane : typeof A.Utils.Plane, Symbol(A.Utils.Plane, Decl(part2.ts, 3, 25))
+>A.Utils : typeof A.Utils, Symbol(A.Utils, Decl(part1.ts, 4, 5), Decl(part2.ts, 1, 46))
+>A : typeof A, Symbol(A, Decl(part1.ts, 0, 0), Decl(part2.ts, 0, 0))
+>Utils : typeof A.Utils, Symbol(A.Utils, Decl(part1.ts, 4, 5), Decl(part2.ts, 1, 46))
+>Plane : typeof A.Utils.Plane, Symbol(A.Utils.Plane, Decl(part2.ts, 3, 25))
+>o : { x: number; y: number; }, Symbol(o, Decl(part3.ts, 2, 3), Decl(part3.ts, 3, 3), Decl(part3.ts, 4, 3), Decl(part3.ts, 5, 3))
>{ x: 1, y: 1 } : { x: number; y: number; }
->x : number
->y : number
+>x : number, Symbol(x, Decl(part3.ts, 9, 30))
+>1 : number
+>y : number, Symbol(y, Decl(part3.ts, 9, 36))
+>1 : number
diff --git a/tests/baselines/reference/TypeGuardWithArrayUnion.types b/tests/baselines/reference/TypeGuardWithArrayUnion.types
index 557e305ef74..8a81a762fd7 100644
--- a/tests/baselines/reference/TypeGuardWithArrayUnion.types
+++ b/tests/baselines/reference/TypeGuardWithArrayUnion.types
@@ -1,26 +1,26 @@
=== tests/cases/conformance/expressions/typeGuards/TypeGuardWithArrayUnion.ts ===
class Message {
->Message : Message
+>Message : Message, Symbol(Message, Decl(TypeGuardWithArrayUnion.ts, 0, 0))
value: string;
->value : string
+>value : string, Symbol(value, Decl(TypeGuardWithArrayUnion.ts, 0, 15))
}
function saySize(message: Message | Message[]) {
->saySize : (message: Message | Message[]) => number
->message : Message | Message[]
->Message : Message
->Message : Message
+>saySize : (message: Message | Message[]) => number, Symbol(saySize, Decl(TypeGuardWithArrayUnion.ts, 2, 1))
+>message : Message | Message[], Symbol(message, Decl(TypeGuardWithArrayUnion.ts, 4, 17))
+>Message : Message, Symbol(Message, Decl(TypeGuardWithArrayUnion.ts, 0, 0))
+>Message : Message, Symbol(Message, Decl(TypeGuardWithArrayUnion.ts, 0, 0))
if (message instanceof Array) {
>message instanceof Array : boolean
->message : Message | Message[]
->Array : ArrayConstructor
+>message : Message | Message[], Symbol(message, Decl(TypeGuardWithArrayUnion.ts, 4, 17))
+>Array : ArrayConstructor, Symbol(Array, Decl(lib.d.ts, 1000, 23), Decl(lib.d.ts, 1171, 11))
return message.length; // Should have type Message[] here
->message.length : number
->message : Message[]
->length : number
+>message.length : number, Symbol(Array.length, Decl(lib.d.ts, 1007, 20))
+>message : Message[], Symbol(message, Decl(TypeGuardWithArrayUnion.ts, 4, 17))
+>length : number, Symbol(Array.length, Decl(lib.d.ts, 1007, 20))
}
}
diff --git a/tests/baselines/reference/TypeGuardWithEnumUnion.types b/tests/baselines/reference/TypeGuardWithEnumUnion.types
index 9296e0ad04e..293b4c431c7 100644
--- a/tests/baselines/reference/TypeGuardWithEnumUnion.types
+++ b/tests/baselines/reference/TypeGuardWithEnumUnion.types
@@ -1,96 +1,100 @@
=== tests/cases/conformance/expressions/typeGuards/TypeGuardWithEnumUnion.ts ===
enum Color { R, G, B }
->Color : Color
->R : Color
->G : Color
->B : Color
+>Color : Color, Symbol(Color, Decl(TypeGuardWithEnumUnion.ts, 0, 0))
+>R : Color, Symbol(Color.R, Decl(TypeGuardWithEnumUnion.ts, 0, 12))
+>G : Color, Symbol(Color.G, Decl(TypeGuardWithEnumUnion.ts, 0, 15))
+>B : Color, Symbol(Color.B, Decl(TypeGuardWithEnumUnion.ts, 0, 18))
function f1(x: Color | string) {
->f1 : (x: string | Color) => void
->x : string | Color
->Color : Color
+>f1 : (x: string | Color) => void, Symbol(f1, Decl(TypeGuardWithEnumUnion.ts, 0, 22))
+>x : string | Color, Symbol(x, Decl(TypeGuardWithEnumUnion.ts, 2, 12))
+>Color : Color, Symbol(Color, Decl(TypeGuardWithEnumUnion.ts, 0, 0))
if (typeof x === "number") {
>typeof x === "number" : boolean
>typeof x : string
->x : string | Color
+>x : string | Color, Symbol(x, Decl(TypeGuardWithEnumUnion.ts, 2, 12))
+>"number" : string
var y = x;
->y : Color
->x : Color
+>y : Color, Symbol(y, Decl(TypeGuardWithEnumUnion.ts, 4, 11), Decl(TypeGuardWithEnumUnion.ts, 5, 11))
+>x : Color, Symbol(x, Decl(TypeGuardWithEnumUnion.ts, 2, 12))
var y: Color;
->y : Color
->Color : Color
+>y : Color, Symbol(y, Decl(TypeGuardWithEnumUnion.ts, 4, 11), Decl(TypeGuardWithEnumUnion.ts, 5, 11))
+>Color : Color, Symbol(Color, Decl(TypeGuardWithEnumUnion.ts, 0, 0))
}
else {
var z = x;
->z : string
->x : string
+>z : string, Symbol(z, Decl(TypeGuardWithEnumUnion.ts, 8, 11), Decl(TypeGuardWithEnumUnion.ts, 9, 11))
+>x : string, Symbol(x, Decl(TypeGuardWithEnumUnion.ts, 2, 12))
var z: string;
->z : string
+>z : string, Symbol(z, Decl(TypeGuardWithEnumUnion.ts, 8, 11), Decl(TypeGuardWithEnumUnion.ts, 9, 11))
}
}
function f2(x: Color | string | string[]) {
->f2 : (x: string | string[] | Color) => void
->x : string | string[] | Color
->Color : Color
+>f2 : (x: string | string[] | Color) => void, Symbol(f2, Decl(TypeGuardWithEnumUnion.ts, 11, 1))
+>x : string | string[] | Color, Symbol(x, Decl(TypeGuardWithEnumUnion.ts, 13, 12))
+>Color : Color, Symbol(Color, Decl(TypeGuardWithEnumUnion.ts, 0, 0))
if (typeof x === "object") {
>typeof x === "object" : boolean
>typeof x : string
->x : string | string[] | Color
+>x : string | string[] | Color, Symbol(x, Decl(TypeGuardWithEnumUnion.ts, 13, 12))
+>"object" : string
var y = x;
->y : string[]
->x : string[]
+>y : string[], Symbol(y, Decl(TypeGuardWithEnumUnion.ts, 15, 11), Decl(TypeGuardWithEnumUnion.ts, 16, 11))
+>x : string[], Symbol(x, Decl(TypeGuardWithEnumUnion.ts, 13, 12))
var y: string[];
->y : string[]
+>y : string[], Symbol(y, Decl(TypeGuardWithEnumUnion.ts, 15, 11), Decl(TypeGuardWithEnumUnion.ts, 16, 11))
}
if (typeof x === "number") {
>typeof x === "number" : boolean
>typeof x : string
->x : string | string[] | Color
+>x : string | string[] | Color, Symbol(x, Decl(TypeGuardWithEnumUnion.ts, 13, 12))
+>"number" : string
var z = x;
->z : Color
->x : Color
+>z : Color, Symbol(z, Decl(TypeGuardWithEnumUnion.ts, 19, 11), Decl(TypeGuardWithEnumUnion.ts, 20, 11))
+>x : Color, Symbol(x, Decl(TypeGuardWithEnumUnion.ts, 13, 12))
var z: Color;
->z : Color
->Color : Color
+>z : Color, Symbol(z, Decl(TypeGuardWithEnumUnion.ts, 19, 11), Decl(TypeGuardWithEnumUnion.ts, 20, 11))
+>Color : Color, Symbol(Color, Decl(TypeGuardWithEnumUnion.ts, 0, 0))
}
else {
var w = x;
->w : string | string[]
->x : string | string[]
+>w : string | string[], Symbol(w, Decl(TypeGuardWithEnumUnion.ts, 23, 11), Decl(TypeGuardWithEnumUnion.ts, 24, 11))
+>x : string | string[], Symbol(x, Decl(TypeGuardWithEnumUnion.ts, 13, 12))
var w: string | string[];
->w : string | string[]
+>w : string | string[], Symbol(w, Decl(TypeGuardWithEnumUnion.ts, 23, 11), Decl(TypeGuardWithEnumUnion.ts, 24, 11))
}
if (typeof x === "string") {
>typeof x === "string" : boolean
>typeof x : string
->x : string | string[] | Color
+>x : string | string[] | Color, Symbol(x, Decl(TypeGuardWithEnumUnion.ts, 13, 12))
+>"string" : string
var a = x;
->a : string
->x : string
+>a : string, Symbol(a, Decl(TypeGuardWithEnumUnion.ts, 27, 11), Decl(TypeGuardWithEnumUnion.ts, 28, 11))
+>x : string, Symbol(x, Decl(TypeGuardWithEnumUnion.ts, 13, 12))
var a: string;
->a : string
+>a : string, Symbol(a, Decl(TypeGuardWithEnumUnion.ts, 27, 11), Decl(TypeGuardWithEnumUnion.ts, 28, 11))
}
else {
var b = x;
->b : string[] | Color
->x : string[] | Color
+>b : string[] | Color, Symbol(b, Decl(TypeGuardWithEnumUnion.ts, 31, 11), Decl(TypeGuardWithEnumUnion.ts, 32, 11))
+>x : string[] | Color, Symbol(x, Decl(TypeGuardWithEnumUnion.ts, 13, 12))
var b: Color | string[];
->b : string[] | Color
->Color : Color
+>b : string[] | Color, Symbol(b, Decl(TypeGuardWithEnumUnion.ts, 31, 11), Decl(TypeGuardWithEnumUnion.ts, 32, 11))
+>Color : Color, Symbol(Color, Decl(TypeGuardWithEnumUnion.ts, 0, 0))
}
}
diff --git a/tests/baselines/reference/TypeGuardWithEnumUnion.types.pull b/tests/baselines/reference/TypeGuardWithEnumUnion.types.pull
index 33a40762445..d98eaa13192 100644
--- a/tests/baselines/reference/TypeGuardWithEnumUnion.types.pull
+++ b/tests/baselines/reference/TypeGuardWithEnumUnion.types.pull
@@ -1,96 +1,100 @@
=== tests/cases/conformance/expressions/typeGuards/TypeGuardWithEnumUnion.ts ===
enum Color { R, G, B }
->Color : Color
->R : Color
->G : Color
->B : Color
+>Color : Color, Symbol(Color, Decl(TypeGuardWithEnumUnion.ts, 0, 0))
+>R : Color, Symbol(Color.R, Decl(TypeGuardWithEnumUnion.ts, 0, 12))
+>G : Color, Symbol(Color.G, Decl(TypeGuardWithEnumUnion.ts, 0, 15))
+>B : Color, Symbol(Color.B, Decl(TypeGuardWithEnumUnion.ts, 0, 18))
function f1(x: Color | string) {
->f1 : (x: string | Color) => void
->x : string | Color
->Color : Color
+>f1 : (x: string | Color) => void, Symbol(f1, Decl(TypeGuardWithEnumUnion.ts, 0, 22))
+>x : string | Color, Symbol(x, Decl(TypeGuardWithEnumUnion.ts, 2, 12))
+>Color : Color, Symbol(Color, Decl(TypeGuardWithEnumUnion.ts, 0, 0))
if (typeof x === "number") {
>typeof x === "number" : boolean
>typeof x : string
->x : string | Color
+>x : string | Color, Symbol(x, Decl(TypeGuardWithEnumUnion.ts, 2, 12))
+>"number" : string
var y = x;
->y : Color
->x : Color
+>y : Color, Symbol(y, Decl(TypeGuardWithEnumUnion.ts, 4, 11), Decl(TypeGuardWithEnumUnion.ts, 5, 11))
+>x : Color, Symbol(x, Decl(TypeGuardWithEnumUnion.ts, 2, 12))
var y: Color;
->y : Color
->Color : Color
+>y : Color, Symbol(y, Decl(TypeGuardWithEnumUnion.ts, 4, 11), Decl(TypeGuardWithEnumUnion.ts, 5, 11))
+>Color : Color, Symbol(Color, Decl(TypeGuardWithEnumUnion.ts, 0, 0))
}
else {
var z = x;
->z : string
->x : string
+>z : string, Symbol(z, Decl(TypeGuardWithEnumUnion.ts, 8, 11), Decl(TypeGuardWithEnumUnion.ts, 9, 11))
+>x : string, Symbol(x, Decl(TypeGuardWithEnumUnion.ts, 2, 12))
var z: string;
->z : string
+>z : string, Symbol(z, Decl(TypeGuardWithEnumUnion.ts, 8, 11), Decl(TypeGuardWithEnumUnion.ts, 9, 11))
}
}
function f2(x: Color | string | string[]) {
->f2 : (x: string | Color | string[]) => void
->x : string | Color | string[]
->Color : Color
+>f2 : (x: string | Color | string[]) => void, Symbol(f2, Decl(TypeGuardWithEnumUnion.ts, 11, 1))
+>x : string | Color | string[], Symbol(x, Decl(TypeGuardWithEnumUnion.ts, 13, 12))
+>Color : Color, Symbol(Color, Decl(TypeGuardWithEnumUnion.ts, 0, 0))
if (typeof x === "object") {
>typeof x === "object" : boolean
>typeof x : string
->x : string | Color | string[]
+>x : string | Color | string[], Symbol(x, Decl(TypeGuardWithEnumUnion.ts, 13, 12))
+>"object" : string
var y = x;
->y : string[]
->x : string[]
+>y : string[], Symbol(y, Decl(TypeGuardWithEnumUnion.ts, 15, 11), Decl(TypeGuardWithEnumUnion.ts, 16, 11))
+>x : string[], Symbol(x, Decl(TypeGuardWithEnumUnion.ts, 13, 12))
var y: string[];
->y : string[]
+>y : string[], Symbol(y, Decl(TypeGuardWithEnumUnion.ts, 15, 11), Decl(TypeGuardWithEnumUnion.ts, 16, 11))
}
if (typeof x === "number") {
>typeof x === "number" : boolean
>typeof x : string
->x : string | Color | string[]
+>x : string | Color | string[], Symbol(x, Decl(TypeGuardWithEnumUnion.ts, 13, 12))
+>"number" : string
var z = x;
->z : Color
->x : Color
+>z : Color, Symbol(z, Decl(TypeGuardWithEnumUnion.ts, 19, 11), Decl(TypeGuardWithEnumUnion.ts, 20, 11))
+>x : Color, Symbol(x, Decl(TypeGuardWithEnumUnion.ts, 13, 12))
var z: Color;
->z : Color
->Color : Color
+>z : Color, Symbol(z, Decl(TypeGuardWithEnumUnion.ts, 19, 11), Decl(TypeGuardWithEnumUnion.ts, 20, 11))
+>Color : Color, Symbol(Color, Decl(TypeGuardWithEnumUnion.ts, 0, 0))
}
else {
var w = x;
->w : string | string[]
->x : string | string[]
+>w : string | string[], Symbol(w, Decl(TypeGuardWithEnumUnion.ts, 23, 11), Decl(TypeGuardWithEnumUnion.ts, 24, 11))
+>x : string | string[], Symbol(x, Decl(TypeGuardWithEnumUnion.ts, 13, 12))
var w: string | string[];
->w : string | string[]
+>w : string | string[], Symbol(w, Decl(TypeGuardWithEnumUnion.ts, 23, 11), Decl(TypeGuardWithEnumUnion.ts, 24, 11))
}
if (typeof x === "string") {
>typeof x === "string" : boolean
>typeof x : string
->x : string | Color | string[]
+>x : string | Color | string[], Symbol(x, Decl(TypeGuardWithEnumUnion.ts, 13, 12))
+>"string" : string
var a = x;
->a : string
->x : string
+>a : string, Symbol(a, Decl(TypeGuardWithEnumUnion.ts, 27, 11), Decl(TypeGuardWithEnumUnion.ts, 28, 11))
+>x : string, Symbol(x, Decl(TypeGuardWithEnumUnion.ts, 13, 12))
var a: string;
->a : string
+>a : string, Symbol(a, Decl(TypeGuardWithEnumUnion.ts, 27, 11), Decl(TypeGuardWithEnumUnion.ts, 28, 11))
}
else {
var b = x;
->b : Color | string[]
->x : Color | string[]
+>b : Color | string[], Symbol(b, Decl(TypeGuardWithEnumUnion.ts, 31, 11), Decl(TypeGuardWithEnumUnion.ts, 32, 11))
+>x : Color | string[], Symbol(x, Decl(TypeGuardWithEnumUnion.ts, 13, 12))
var b: Color | string[];
->b : Color | string[]
->Color : Color
+>b : Color | string[], Symbol(b, Decl(TypeGuardWithEnumUnion.ts, 31, 11), Decl(TypeGuardWithEnumUnion.ts, 32, 11))
+>Color : Color, Symbol(Color, Decl(TypeGuardWithEnumUnion.ts, 0, 0))
}
}
diff --git a/tests/baselines/reference/VariableDeclaration10_es6.types b/tests/baselines/reference/VariableDeclaration10_es6.types
index 47238fdd5a8..dc61a2a5431 100644
--- a/tests/baselines/reference/VariableDeclaration10_es6.types
+++ b/tests/baselines/reference/VariableDeclaration10_es6.types
@@ -1,4 +1,5 @@
=== tests/cases/conformance/es6/variableDeclarations/VariableDeclaration10_es6.ts ===
let a: number = 1
->a : number
+>a : number, Symbol(a, Decl(VariableDeclaration10_es6.ts, 0, 3))
+>1 : number
diff --git a/tests/baselines/reference/VariableDeclaration3_es6.types b/tests/baselines/reference/VariableDeclaration3_es6.types
index a172c8114cb..dd0bdfc8cc2 100644
--- a/tests/baselines/reference/VariableDeclaration3_es6.types
+++ b/tests/baselines/reference/VariableDeclaration3_es6.types
@@ -1,4 +1,5 @@
=== tests/cases/conformance/es6/variableDeclarations/VariableDeclaration3_es6.ts ===
const a = 1
->a : number
+>a : number, Symbol(a, Decl(VariableDeclaration3_es6.ts, 0, 5))
+>1 : number
diff --git a/tests/baselines/reference/VariableDeclaration5_es6.types b/tests/baselines/reference/VariableDeclaration5_es6.types
index a07894d533d..d063fc53a12 100644
--- a/tests/baselines/reference/VariableDeclaration5_es6.types
+++ b/tests/baselines/reference/VariableDeclaration5_es6.types
@@ -1,4 +1,5 @@
=== tests/cases/conformance/es6/variableDeclarations/VariableDeclaration5_es6.ts ===
const a: number = 1
->a : number
+>a : number, Symbol(a, Decl(VariableDeclaration5_es6.ts, 0, 5))
+>1 : number
diff --git a/tests/baselines/reference/VariableDeclaration7_es6.types b/tests/baselines/reference/VariableDeclaration7_es6.types
index 321c1b07bbc..00aabe32e65 100644
--- a/tests/baselines/reference/VariableDeclaration7_es6.types
+++ b/tests/baselines/reference/VariableDeclaration7_es6.types
@@ -1,4 +1,4 @@
=== tests/cases/conformance/es6/variableDeclarations/VariableDeclaration7_es6.ts ===
let a
->a : any
+>a : any, Symbol(a, Decl(VariableDeclaration7_es6.ts, 0, 3))
diff --git a/tests/baselines/reference/VariableDeclaration8_es6.types b/tests/baselines/reference/VariableDeclaration8_es6.types
index 530b147136d..ce6bb6f9bb7 100644
--- a/tests/baselines/reference/VariableDeclaration8_es6.types
+++ b/tests/baselines/reference/VariableDeclaration8_es6.types
@@ -1,4 +1,5 @@
=== tests/cases/conformance/es6/variableDeclarations/VariableDeclaration8_es6.ts ===
let a = 1
->a : number
+>a : number, Symbol(a, Decl(VariableDeclaration8_es6.ts, 0, 3))
+>1 : number
diff --git a/tests/baselines/reference/VariableDeclaration9_es6.types b/tests/baselines/reference/VariableDeclaration9_es6.types
index 6b29a04281b..e51fc72eece 100644
--- a/tests/baselines/reference/VariableDeclaration9_es6.types
+++ b/tests/baselines/reference/VariableDeclaration9_es6.types
@@ -1,4 +1,4 @@
=== tests/cases/conformance/es6/variableDeclarations/VariableDeclaration9_es6.ts ===
let a: number
->a : number
+>a : number, Symbol(a, Decl(VariableDeclaration9_es6.ts, 0, 3))
diff --git a/tests/baselines/reference/acceptableAlias1.types b/tests/baselines/reference/acceptableAlias1.types
index 213e5ad5bc3..7aae99a57b2 100644
--- a/tests/baselines/reference/acceptableAlias1.types
+++ b/tests/baselines/reference/acceptableAlias1.types
@@ -1,17 +1,17 @@
=== tests/cases/compiler/acceptableAlias1.ts ===
module M {
->M : typeof M
+>M : typeof M, Symbol(M, Decl(acceptableAlias1.ts, 0, 0))
export module N {
->N : unknown
+>N : any, Symbol(N, Decl(acceptableAlias1.ts, 0, 10))
}
export import X = N;
->X : unknown
->N : unknown
+>X : any, Symbol(X, Decl(acceptableAlias1.ts, 2, 5))
+>N : any, Symbol(N, Decl(acceptableAlias1.ts, 0, 10))
}
import r = M.X;
->r : unknown
->M : typeof M
->X : unknown
+>r : any, Symbol(r, Decl(acceptableAlias1.ts, 4, 1))
+>M : typeof M, Symbol(M, Decl(acceptableAlias1.ts, 0, 0))
+>X : any, Symbol(r, Decl(acceptableAlias1.ts, 0, 10))
diff --git a/tests/baselines/reference/accessOverriddenBaseClassMember1.types b/tests/baselines/reference/accessOverriddenBaseClassMember1.types
index 15007cebf4c..4ba32e3ff65 100644
--- a/tests/baselines/reference/accessOverriddenBaseClassMember1.types
+++ b/tests/baselines/reference/accessOverriddenBaseClassMember1.types
@@ -1,54 +1,57 @@
=== tests/cases/compiler/accessOverriddenBaseClassMember1.ts ===
class Point {
->Point : Point
+>Point : Point, Symbol(Point, Decl(accessOverriddenBaseClassMember1.ts, 0, 0))
constructor(public x: number, public y: number) { }
->x : number
->y : number
+>x : number, Symbol(x, Decl(accessOverriddenBaseClassMember1.ts, 1, 16))
+>y : number, Symbol(y, Decl(accessOverriddenBaseClassMember1.ts, 1, 33))
public toString() {
->toString : () => string
+>toString : () => string, Symbol(toString, Decl(accessOverriddenBaseClassMember1.ts, 1, 55))
return "x=" + this.x + " y=" + this.y;
>"x=" + this.x + " y=" + this.y : string
>"x=" + this.x + " y=" : string
>"x=" + this.x : string
->this.x : number
->this : Point
->x : number
->this.y : number
->this : Point
->y : number
+>"x=" : string
+>this.x : number, Symbol(x, Decl(accessOverriddenBaseClassMember1.ts, 1, 16))
+>this : Point, Symbol(Point, Decl(accessOverriddenBaseClassMember1.ts, 0, 0))
+>x : number, Symbol(x, Decl(accessOverriddenBaseClassMember1.ts, 1, 16))
+>" y=" : string
+>this.y : number, Symbol(y, Decl(accessOverriddenBaseClassMember1.ts, 1, 33))
+>this : Point, Symbol(Point, Decl(accessOverriddenBaseClassMember1.ts, 0, 0))
+>y : number, Symbol(y, Decl(accessOverriddenBaseClassMember1.ts, 1, 33))
}
}
class ColoredPoint extends Point {
->ColoredPoint : ColoredPoint
->Point : Point
+>ColoredPoint : ColoredPoint, Symbol(ColoredPoint, Decl(accessOverriddenBaseClassMember1.ts, 5, 1))
+>Point : Point, Symbol(Point, Decl(accessOverriddenBaseClassMember1.ts, 0, 0))
constructor(x: number, y: number, public color: string) {
->x : number
->y : number
->color : string
+>x : number, Symbol(x, Decl(accessOverriddenBaseClassMember1.ts, 7, 16))
+>y : number, Symbol(y, Decl(accessOverriddenBaseClassMember1.ts, 7, 26))
+>color : string, Symbol(color, Decl(accessOverriddenBaseClassMember1.ts, 7, 37))
super(x, y);
>super(x, y) : void
->super : typeof Point
->x : number
->y : number
+>super : typeof Point, Symbol(Point, Decl(accessOverriddenBaseClassMember1.ts, 0, 0))
+>x : number, Symbol(x, Decl(accessOverriddenBaseClassMember1.ts, 7, 16))
+>y : number, Symbol(y, Decl(accessOverriddenBaseClassMember1.ts, 7, 26))
}
public toString() {
->toString : () => string
+>toString : () => string, Symbol(toString, Decl(accessOverriddenBaseClassMember1.ts, 9, 5))
return super.toString() + " color=" + this.color;
>super.toString() + " color=" + this.color : string
>super.toString() + " color=" : string
>super.toString() : string
->super.toString : () => string
->super : Point
->toString : () => string
->this.color : string
->this : ColoredPoint
->color : string
+>super.toString : () => string, Symbol(Point.toString, Decl(accessOverriddenBaseClassMember1.ts, 1, 55))
+>super : Point, Symbol(Point, Decl(accessOverriddenBaseClassMember1.ts, 0, 0))
+>toString : () => string, Symbol(Point.toString, Decl(accessOverriddenBaseClassMember1.ts, 1, 55))
+>" color=" : string
+>this.color : string, Symbol(color, Decl(accessOverriddenBaseClassMember1.ts, 7, 37))
+>this : ColoredPoint, Symbol(ColoredPoint, Decl(accessOverriddenBaseClassMember1.ts, 5, 1))
+>color : string, Symbol(color, Decl(accessOverriddenBaseClassMember1.ts, 7, 37))
}
}
diff --git a/tests/baselines/reference/accessorWithES5.types b/tests/baselines/reference/accessorWithES5.types
index 9d4976dd91a..9bbfadce48c 100644
--- a/tests/baselines/reference/accessorWithES5.types
+++ b/tests/baselines/reference/accessorWithES5.types
@@ -1,37 +1,39 @@
=== tests/cases/conformance/classes/propertyMemberDeclarations/memberAccessorDeclarations/accessorWithES5.ts ===
class C {
->C : C
+>C : C, Symbol(C, Decl(accessorWithES5.ts, 0, 0))
get x() {
->x : number
+>x : number, Symbol(x, Decl(accessorWithES5.ts, 1, 9))
return 1;
+>1 : number
}
}
class D {
->D : D
+>D : D, Symbol(D, Decl(accessorWithES5.ts, 5, 1))
set x(v) {
->x : any
->v : any
+>x : any, Symbol(x, Decl(accessorWithES5.ts, 7, 9))
+>v : any, Symbol(v, Decl(accessorWithES5.ts, 8, 10))
}
}
var x = {
->x : { a: number; }
+>x : { a: number; }, Symbol(x, Decl(accessorWithES5.ts, 12, 3))
>{ get a() { return 1 }} : { a: number; }
get a() { return 1 }
->a : number
+>a : number, Symbol(a, Decl(accessorWithES5.ts, 12, 9))
+>1 : number
}
var y = {
->y : { b: any; }
+>y : { b: any; }, Symbol(y, Decl(accessorWithES5.ts, 16, 3))
>{ set b(v) { }} : { b: any; }
set b(v) { }
->b : any
->v : any
+>b : any, Symbol(b, Decl(accessorWithES5.ts, 16, 9))
+>v : any, Symbol(v, Decl(accessorWithES5.ts, 17, 10))
}
diff --git a/tests/baselines/reference/addMoreCallSignaturesToBaseSignature.types b/tests/baselines/reference/addMoreCallSignaturesToBaseSignature.types
index 212186ace77..da8dcb4d0be 100644
--- a/tests/baselines/reference/addMoreCallSignaturesToBaseSignature.types
+++ b/tests/baselines/reference/addMoreCallSignaturesToBaseSignature.types
@@ -1,24 +1,24 @@
=== tests/cases/compiler/addMoreCallSignaturesToBaseSignature.ts ===
interface Foo {
->Foo : Foo
+>Foo : Foo, Symbol(Foo, Decl(addMoreCallSignaturesToBaseSignature.ts, 0, 0))
(): string;
}
interface Bar extends Foo {
->Bar : Bar
->Foo : Foo
+>Bar : Bar, Symbol(Bar, Decl(addMoreCallSignaturesToBaseSignature.ts, 2, 1))
+>Foo : Foo, Symbol(Foo, Decl(addMoreCallSignaturesToBaseSignature.ts, 0, 0))
(key: string): string;
->key : string
+>key : string, Symbol(key, Decl(addMoreCallSignaturesToBaseSignature.ts, 5, 5))
}
var a: Bar;
->a : Bar
->Bar : Bar
+>a : Bar, Symbol(a, Decl(addMoreCallSignaturesToBaseSignature.ts, 8, 3))
+>Bar : Bar, Symbol(Bar, Decl(addMoreCallSignaturesToBaseSignature.ts, 2, 1))
var kitty = a();
->kitty : string
+>kitty : string, Symbol(kitty, Decl(addMoreCallSignaturesToBaseSignature.ts, 9, 3))
>a() : string
->a : Bar
+>a : Bar, Symbol(a, Decl(addMoreCallSignaturesToBaseSignature.ts, 8, 3))
diff --git a/tests/baselines/reference/addMoreCallSignaturesToBaseSignature2.types b/tests/baselines/reference/addMoreCallSignaturesToBaseSignature2.types
index a80986c8cd1..ed187a820cc 100644
--- a/tests/baselines/reference/addMoreCallSignaturesToBaseSignature2.types
+++ b/tests/baselines/reference/addMoreCallSignaturesToBaseSignature2.types
@@ -1,25 +1,26 @@
=== tests/cases/compiler/addMoreCallSignaturesToBaseSignature2.ts ===
interface Foo {
->Foo : Foo
+>Foo : Foo, Symbol(Foo, Decl(addMoreCallSignaturesToBaseSignature2.ts, 0, 0))
(bar:number): string;
->bar : number
+>bar : number, Symbol(bar, Decl(addMoreCallSignaturesToBaseSignature2.ts, 1, 5))
}
interface Bar extends Foo {
->Bar : Bar
->Foo : Foo
+>Bar : Bar, Symbol(Bar, Decl(addMoreCallSignaturesToBaseSignature2.ts, 2, 1))
+>Foo : Foo, Symbol(Foo, Decl(addMoreCallSignaturesToBaseSignature2.ts, 0, 0))
(key: string): string;
->key : string
+>key : string, Symbol(key, Decl(addMoreCallSignaturesToBaseSignature2.ts, 5, 5))
}
var a: Bar;
->a : Bar
->Bar : Bar
+>a : Bar, Symbol(a, Decl(addMoreCallSignaturesToBaseSignature2.ts, 8, 3))
+>Bar : Bar, Symbol(Bar, Decl(addMoreCallSignaturesToBaseSignature2.ts, 2, 1))
var kitty = a(1);
->kitty : string
+>kitty : string, Symbol(kitty, Decl(addMoreCallSignaturesToBaseSignature2.ts, 9, 3))
>a(1) : string
->a : Bar
+>a : Bar, Symbol(a, Decl(addMoreCallSignaturesToBaseSignature2.ts, 8, 3))
+>1 : number
diff --git a/tests/baselines/reference/additionOperatorWithAnyAndEveryType.types b/tests/baselines/reference/additionOperatorWithAnyAndEveryType.types
index da534c68ad6..e4571680a9b 100644
--- a/tests/baselines/reference/additionOperatorWithAnyAndEveryType.types
+++ b/tests/baselines/reference/additionOperatorWithAnyAndEveryType.types
@@ -1,168 +1,171 @@
=== tests/cases/conformance/expressions/binaryOperators/additionOperator/additionOperatorWithAnyAndEveryType.ts ===
function foo() { }
->foo : () => void
+>foo : () => void, Symbol(foo, Decl(additionOperatorWithAnyAndEveryType.ts, 0, 0))
class C {
->C : C
+>C : C, Symbol(C, Decl(additionOperatorWithAnyAndEveryType.ts, 0, 18))
public a: string;
->a : string
+>a : string, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 1, 9))
static foo() { }
->foo : () => void
+>foo : () => void, Symbol(C.foo, Decl(additionOperatorWithAnyAndEveryType.ts, 2, 21))
}
enum E { a, b, c }
->E : E
->a : E
->b : E
->c : E
+>E : E, Symbol(E, Decl(additionOperatorWithAnyAndEveryType.ts, 4, 1))
+>a : E, Symbol(E.a, Decl(additionOperatorWithAnyAndEveryType.ts, 5, 8))
+>b : E, Symbol(E.b, Decl(additionOperatorWithAnyAndEveryType.ts, 5, 11))
+>c : E, Symbol(E.c, Decl(additionOperatorWithAnyAndEveryType.ts, 5, 14))
module M { export var a }
->M : typeof M
->a : any
+>M : typeof M, Symbol(M, Decl(additionOperatorWithAnyAndEveryType.ts, 5, 18))
+>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 6, 21))
var a: any;
->a : any
+>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
var b: boolean;
->b : boolean
+>b : boolean, Symbol(b, Decl(additionOperatorWithAnyAndEveryType.ts, 9, 3))
var c: number;
->c : number
+>c : number, Symbol(c, Decl(additionOperatorWithAnyAndEveryType.ts, 10, 3))
var d: string;
->d : string
+>d : string, Symbol(d, Decl(additionOperatorWithAnyAndEveryType.ts, 11, 3))
var e: Object;
->e : Object
->Object : Object
+>e : Object, Symbol(e, Decl(additionOperatorWithAnyAndEveryType.ts, 12, 3))
+>Object : Object, Symbol(Object, Decl(lib.d.ts, 92, 1), Decl(lib.d.ts, 223, 11))
// any as left operand, result is type Any except plusing string
var r1 = a + a;
->r1 : any
+>r1 : any, Symbol(r1, Decl(additionOperatorWithAnyAndEveryType.ts, 15, 3))
>a + a : any
->a : any
->a : any
+>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
+>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
var r2 = a + b;
->r2 : any
+>r2 : any, Symbol(r2, Decl(additionOperatorWithAnyAndEveryType.ts, 16, 3))
>a + b : any
->a : any
->b : boolean
+>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
+>b : boolean, Symbol(b, Decl(additionOperatorWithAnyAndEveryType.ts, 9, 3))
var r3 = a + c;
->r3 : any
+>r3 : any, Symbol(r3, Decl(additionOperatorWithAnyAndEveryType.ts, 17, 3))
>a + c : any
->a : any
->c : number
+>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
+>c : number, Symbol(c, Decl(additionOperatorWithAnyAndEveryType.ts, 10, 3))
var r4 = a + d;
->r4 : string
+>r4 : string, Symbol(r4, Decl(additionOperatorWithAnyAndEveryType.ts, 18, 3))
>a + d : string
->a : any
->d : string
+>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
+>d : string, Symbol(d, Decl(additionOperatorWithAnyAndEveryType.ts, 11, 3))
var r5 = a + e;
->r5 : any
+>r5 : any, Symbol(r5, Decl(additionOperatorWithAnyAndEveryType.ts, 19, 3))
>a + e : any
->a : any
->e : Object
+>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
+>e : Object, Symbol(e, Decl(additionOperatorWithAnyAndEveryType.ts, 12, 3))
// any as right operand, result is type Any except plusing string
var r6 = b + a;
->r6 : any
+>r6 : any, Symbol(r6, Decl(additionOperatorWithAnyAndEveryType.ts, 22, 3))
>b + a : any
->b : boolean
->a : any
+>b : boolean, Symbol(b, Decl(additionOperatorWithAnyAndEveryType.ts, 9, 3))
+>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
var r7 = c + a;
->r7 : any
+>r7 : any, Symbol(r7, Decl(additionOperatorWithAnyAndEveryType.ts, 23, 3))
>c + a : any
->c : number
->a : any
+>c : number, Symbol(c, Decl(additionOperatorWithAnyAndEveryType.ts, 10, 3))
+>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
var r8 = d + a;
->r8 : string
+>r8 : string, Symbol(r8, Decl(additionOperatorWithAnyAndEveryType.ts, 24, 3))
>d + a : string
->d : string
->a : any
+>d : string, Symbol(d, Decl(additionOperatorWithAnyAndEveryType.ts, 11, 3))
+>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
var r9 = e + a;
->r9 : any
+>r9 : any, Symbol(r9, Decl(additionOperatorWithAnyAndEveryType.ts, 25, 3))
>e + a : any
->e : Object
->a : any
+>e : Object, Symbol(e, Decl(additionOperatorWithAnyAndEveryType.ts, 12, 3))
+>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
// other cases
var r10 = a + foo;
->r10 : any
+>r10 : any, Symbol(r10, Decl(additionOperatorWithAnyAndEveryType.ts, 28, 3))
>a + foo : any
->a : any
->foo : () => void
+>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
+>foo : () => void, Symbol(foo, Decl(additionOperatorWithAnyAndEveryType.ts, 0, 0))
var r11 = a + foo();
->r11 : any
+>r11 : any, Symbol(r11, Decl(additionOperatorWithAnyAndEveryType.ts, 29, 3))
>a + foo() : any
->a : any
+>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
>foo() : void
->foo : () => void
+>foo : () => void, Symbol(foo, Decl(additionOperatorWithAnyAndEveryType.ts, 0, 0))
var r12 = a + C;
->r12 : any
+>r12 : any, Symbol(r12, Decl(additionOperatorWithAnyAndEveryType.ts, 30, 3))
>a + C : any
->a : any
->C : typeof C
+>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
+>C : typeof C, Symbol(C, Decl(additionOperatorWithAnyAndEveryType.ts, 0, 18))
var r13 = a + new C();
->r13 : any
+>r13 : any, Symbol(r13, Decl(additionOperatorWithAnyAndEveryType.ts, 31, 3))
>a + new C() : any
->a : any
+>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
>new C() : C
->C : typeof C
+>C : typeof C, Symbol(C, Decl(additionOperatorWithAnyAndEveryType.ts, 0, 18))
var r14 = a + E;
->r14 : any
+>r14 : any, Symbol(r14, Decl(additionOperatorWithAnyAndEveryType.ts, 32, 3))
>a + E : any
->a : any
->E : typeof E
+>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
+>E : typeof E, Symbol(E, Decl(additionOperatorWithAnyAndEveryType.ts, 4, 1))
var r15 = a + E.a;
->r15 : any
+>r15 : any, Symbol(r15, Decl(additionOperatorWithAnyAndEveryType.ts, 33, 3))
>a + E.a : any
->a : any
->E.a : E
->E : typeof E
->a : E
+>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
+>E.a : E, Symbol(E.a, Decl(additionOperatorWithAnyAndEveryType.ts, 5, 8))
+>E : typeof E, Symbol(E, Decl(additionOperatorWithAnyAndEveryType.ts, 4, 1))
+>a : E, Symbol(E.a, Decl(additionOperatorWithAnyAndEveryType.ts, 5, 8))
var r16 = a + M;
->r16 : any
+>r16 : any, Symbol(r16, Decl(additionOperatorWithAnyAndEveryType.ts, 34, 3))
>a + M : any
->a : any
->M : typeof M
+>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
+>M : typeof M, Symbol(M, Decl(additionOperatorWithAnyAndEveryType.ts, 5, 18))
var r17 = a + '';
->r17 : string
+>r17 : string, Symbol(r17, Decl(additionOperatorWithAnyAndEveryType.ts, 35, 3))
>a + '' : string
->a : any
+>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
+>'' : string
var r18 = a + 123;
->r18 : any
+>r18 : any, Symbol(r18, Decl(additionOperatorWithAnyAndEveryType.ts, 36, 3))
>a + 123 : any
->a : any
+>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
+>123 : number
var r19 = a + { a: '' };
->r19 : any
+>r19 : any, Symbol(r19, Decl(additionOperatorWithAnyAndEveryType.ts, 37, 3))
>a + { a: '' } : any
->a : any
+>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
>{ a: '' } : { a: string; }
->a : string
+>a : string, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 37, 15))
+>'' : string
var r20 = a + ((a: string) => { return a });
->r20 : any
+>r20 : any, Symbol(r20, Decl(additionOperatorWithAnyAndEveryType.ts, 38, 3))
>a + ((a: string) => { return a }) : any
->a : any
+>a : any, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 8, 3))
>((a: string) => { return a }) : (a: string) => string
>(a: string) => { return a } : (a: string) => string
->a : string
->a : string
+>a : string, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 38, 16))
+>a : string, Symbol(a, Decl(additionOperatorWithAnyAndEveryType.ts, 38, 16))
diff --git a/tests/baselines/reference/additionOperatorWithNullValueAndValidOperator.types b/tests/baselines/reference/additionOperatorWithNullValueAndValidOperator.types
index 4dade89f5e4..62db775555a 100644
--- a/tests/baselines/reference/additionOperatorWithNullValueAndValidOperator.types
+++ b/tests/baselines/reference/additionOperatorWithNullValueAndValidOperator.types
@@ -2,106 +2,128 @@
// If one operand is the null or undefined value, it is treated as having the type of the other operand.
enum E { a, b, c }
->E : E
->a : E
->b : E
->c : E
+>E : E, Symbol(E, Decl(additionOperatorWithNullValueAndValidOperator.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(additionOperatorWithNullValueAndValidOperator.ts, 2, 8))
+>b : E, Symbol(E.b, Decl(additionOperatorWithNullValueAndValidOperator.ts, 2, 11))
+>c : E, Symbol(E.c, Decl(additionOperatorWithNullValueAndValidOperator.ts, 2, 14))
var a: any;
->a : any
+>a : any, Symbol(a, Decl(additionOperatorWithNullValueAndValidOperator.ts, 4, 3))
var b: number;
->b : number
+>b : number, Symbol(b, Decl(additionOperatorWithNullValueAndValidOperator.ts, 5, 3))
var c: E;
->c : E
->E : E
+>c : E, Symbol(c, Decl(additionOperatorWithNullValueAndValidOperator.ts, 6, 3))
+>E : E, Symbol(E, Decl(additionOperatorWithNullValueAndValidOperator.ts, 0, 0))
var d: string;
->d : string
+>d : string, Symbol(d, Decl(additionOperatorWithNullValueAndValidOperator.ts, 7, 3))
// null + any
var r1: any = null + a;
->r1 : any
+>r1 : any, Symbol(r1, Decl(additionOperatorWithNullValueAndValidOperator.ts, 10, 3))
>null + a : any
->a : any
+>null : null
+>a : any, Symbol(a, Decl(additionOperatorWithNullValueAndValidOperator.ts, 4, 3))
var r2: any = a + null;
->r2 : any
+>r2 : any, Symbol(r2, Decl(additionOperatorWithNullValueAndValidOperator.ts, 11, 3))
>a + null : any
->a : any
+>a : any, Symbol(a, Decl(additionOperatorWithNullValueAndValidOperator.ts, 4, 3))
+>null : null
// null + number/enum
var r3 = null + b;
->r3 : number
+>r3 : number, Symbol(r3, Decl(additionOperatorWithNullValueAndValidOperator.ts, 14, 3))
>null + b : number
->b : number
+>null : null
+>b : number, Symbol(b, Decl(additionOperatorWithNullValueAndValidOperator.ts, 5, 3))
var r4 = null + 1;
->r4 : number
+>r4 : number, Symbol(r4, Decl(additionOperatorWithNullValueAndValidOperator.ts, 15, 3))
>null + 1 : number
+>null : null
+>1 : number
var r5 = null + c;
->r5 : number
+>r5 : number, Symbol(r5, Decl(additionOperatorWithNullValueAndValidOperator.ts, 16, 3))
>null + c : number
->c : E
+>null : null
+>c : E, Symbol(c, Decl(additionOperatorWithNullValueAndValidOperator.ts, 6, 3))
var r6 = null + E.a;
->r6 : number
+>r6 : number, Symbol(r6, Decl(additionOperatorWithNullValueAndValidOperator.ts, 17, 3))
>null + E.a : number
->E.a : E
->E : typeof E
->a : E
+>null : null
+>E.a : E, Symbol(E.a, Decl(additionOperatorWithNullValueAndValidOperator.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(additionOperatorWithNullValueAndValidOperator.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(additionOperatorWithNullValueAndValidOperator.ts, 2, 8))
var r7 = null + E['a'];
->r7 : number
+>r7 : number, Symbol(r7, Decl(additionOperatorWithNullValueAndValidOperator.ts, 18, 3))
>null + E['a'] : number
+>null : null
>E['a'] : E
->E : typeof E
+>E : typeof E, Symbol(E, Decl(additionOperatorWithNullValueAndValidOperator.ts, 0, 0))
+>'a' : string, Symbol(E.a, Decl(additionOperatorWithNullValueAndValidOperator.ts, 2, 8))
var r8 = b + null;
->r8 : number
+>r8 : number, Symbol(r8, Decl(additionOperatorWithNullValueAndValidOperator.ts, 19, 3))
>b + null : number
->b : number
+>b : number, Symbol(b, Decl(additionOperatorWithNullValueAndValidOperator.ts, 5, 3))
+>null : null
var r9 = 1 + null;
->r9 : number
+>r9 : number, Symbol(r9, Decl(additionOperatorWithNullValueAndValidOperator.ts, 20, 3))
>1 + null : number
+>1 : number
+>null : null
var r10 = c + null
->r10 : number
+>r10 : number, Symbol(r10, Decl(additionOperatorWithNullValueAndValidOperator.ts, 21, 3))
>c + null : number
->c : E
+>c : E, Symbol(c, Decl(additionOperatorWithNullValueAndValidOperator.ts, 6, 3))
+>null : null
var r11 = E.a + null;
->r11 : number
+>r11 : number, Symbol(r11, Decl(additionOperatorWithNullValueAndValidOperator.ts, 22, 3))
>E.a + null : number
->E.a : E
->E : typeof E
->a : E
+>E.a : E, Symbol(E.a, Decl(additionOperatorWithNullValueAndValidOperator.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(additionOperatorWithNullValueAndValidOperator.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(additionOperatorWithNullValueAndValidOperator.ts, 2, 8))
+>null : null
var r12 = E['a'] + null;
->r12 : number
+>r12 : number, Symbol(r12, Decl(additionOperatorWithNullValueAndValidOperator.ts, 23, 3))
>E['a'] + null : number
>E['a'] : E
->E : typeof E
+>E : typeof E, Symbol(E, Decl(additionOperatorWithNullValueAndValidOperator.ts, 0, 0))
+>'a' : string, Symbol(E.a, Decl(additionOperatorWithNullValueAndValidOperator.ts, 2, 8))
+>null : null
// null + string
var r13 = null + d;
->r13 : string
+>r13 : string, Symbol(r13, Decl(additionOperatorWithNullValueAndValidOperator.ts, 26, 3))
>null + d : string
->d : string
+>null : null
+>d : string, Symbol(d, Decl(additionOperatorWithNullValueAndValidOperator.ts, 7, 3))
var r14 = null + '';
->r14 : string
+>r14 : string, Symbol(r14, Decl(additionOperatorWithNullValueAndValidOperator.ts, 27, 3))
>null + '' : string
+>null : null
+>'' : string
var r15 = d + null;
->r15 : string
+>r15 : string, Symbol(r15, Decl(additionOperatorWithNullValueAndValidOperator.ts, 28, 3))
>d + null : string
->d : string
+>d : string, Symbol(d, Decl(additionOperatorWithNullValueAndValidOperator.ts, 7, 3))
+>null : null
var r16 = '' + null;
->r16 : string
+>r16 : string, Symbol(r16, Decl(additionOperatorWithNullValueAndValidOperator.ts, 29, 3))
>'' + null : string
+>'' : string
+>null : null
diff --git a/tests/baselines/reference/additionOperatorWithNumberAndEnum.types b/tests/baselines/reference/additionOperatorWithNumberAndEnum.types
index c22939ffd98..ffca2d5d5cd 100644
--- a/tests/baselines/reference/additionOperatorWithNumberAndEnum.types
+++ b/tests/baselines/reference/additionOperatorWithNumberAndEnum.types
@@ -1,115 +1,121 @@
=== tests/cases/conformance/expressions/binaryOperators/additionOperator/additionOperatorWithNumberAndEnum.ts ===
enum E { a, b }
->E : E
->a : E
->b : E
+>E : E, Symbol(E, Decl(additionOperatorWithNumberAndEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(additionOperatorWithNumberAndEnum.ts, 0, 8))
+>b : E, Symbol(E.b, Decl(additionOperatorWithNumberAndEnum.ts, 0, 11))
enum F { c, d }
->F : F
->c : F
->d : F
+>F : F, Symbol(F, Decl(additionOperatorWithNumberAndEnum.ts, 0, 15))
+>c : F, Symbol(F.c, Decl(additionOperatorWithNumberAndEnum.ts, 1, 8))
+>d : F, Symbol(F.d, Decl(additionOperatorWithNumberAndEnum.ts, 1, 11))
var a: number;
->a : number
+>a : number, Symbol(a, Decl(additionOperatorWithNumberAndEnum.ts, 3, 3))
var b: E;
->b : E
->E : E
+>b : E, Symbol(b, Decl(additionOperatorWithNumberAndEnum.ts, 4, 3))
+>E : E, Symbol(E, Decl(additionOperatorWithNumberAndEnum.ts, 0, 0))
var c: E | F;
->c : E | F
->E : E
->F : F
+>c : E | F, Symbol(c, Decl(additionOperatorWithNumberAndEnum.ts, 5, 3))
+>E : E, Symbol(E, Decl(additionOperatorWithNumberAndEnum.ts, 0, 0))
+>F : F, Symbol(F, Decl(additionOperatorWithNumberAndEnum.ts, 0, 15))
var r1 = a + a;
->r1 : number
+>r1 : number, Symbol(r1, Decl(additionOperatorWithNumberAndEnum.ts, 7, 3))
>a + a : number
->a : number
->a : number
+>a : number, Symbol(a, Decl(additionOperatorWithNumberAndEnum.ts, 3, 3))
+>a : number, Symbol(a, Decl(additionOperatorWithNumberAndEnum.ts, 3, 3))
var r2 = a + b;
->r2 : number
+>r2 : number, Symbol(r2, Decl(additionOperatorWithNumberAndEnum.ts, 8, 3))
>a + b : number
->a : number
->b : E
+>a : number, Symbol(a, Decl(additionOperatorWithNumberAndEnum.ts, 3, 3))
+>b : E, Symbol(b, Decl(additionOperatorWithNumberAndEnum.ts, 4, 3))
var r3 = b + a;
->r3 : number
+>r3 : number, Symbol(r3, Decl(additionOperatorWithNumberAndEnum.ts, 9, 3))
>b + a : number
->b : E
->a : number
+>b : E, Symbol(b, Decl(additionOperatorWithNumberAndEnum.ts, 4, 3))
+>a : number, Symbol(a, Decl(additionOperatorWithNumberAndEnum.ts, 3, 3))
var r4 = b + b;
->r4 : number
+>r4 : number, Symbol(r4, Decl(additionOperatorWithNumberAndEnum.ts, 10, 3))
>b + b : number
->b : E
->b : E
+>b : E, Symbol(b, Decl(additionOperatorWithNumberAndEnum.ts, 4, 3))
+>b : E, Symbol(b, Decl(additionOperatorWithNumberAndEnum.ts, 4, 3))
var r5 = 0 + a;
->r5 : number
+>r5 : number, Symbol(r5, Decl(additionOperatorWithNumberAndEnum.ts, 12, 3))
>0 + a : number
->a : number
+>0 : number
+>a : number, Symbol(a, Decl(additionOperatorWithNumberAndEnum.ts, 3, 3))
var r6 = E.a + 0;
->r6 : number
+>r6 : number, Symbol(r6, Decl(additionOperatorWithNumberAndEnum.ts, 13, 3))
>E.a + 0 : number
->E.a : E
->E : typeof E
->a : E
+>E.a : E, Symbol(E.a, Decl(additionOperatorWithNumberAndEnum.ts, 0, 8))
+>E : typeof E, Symbol(E, Decl(additionOperatorWithNumberAndEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(additionOperatorWithNumberAndEnum.ts, 0, 8))
+>0 : number
var r7 = E.a + E.b;
->r7 : number
+>r7 : number, Symbol(r7, Decl(additionOperatorWithNumberAndEnum.ts, 14, 3))
>E.a + E.b : number
->E.a : E
->E : typeof E
->a : E
->E.b : E
->E : typeof E
->b : E
+>E.a : E, Symbol(E.a, Decl(additionOperatorWithNumberAndEnum.ts, 0, 8))
+>E : typeof E, Symbol(E, Decl(additionOperatorWithNumberAndEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(additionOperatorWithNumberAndEnum.ts, 0, 8))
+>E.b : E, Symbol(E.b, Decl(additionOperatorWithNumberAndEnum.ts, 0, 11))
+>E : typeof E, Symbol(E, Decl(additionOperatorWithNumberAndEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(additionOperatorWithNumberAndEnum.ts, 0, 11))
var r8 = E['a'] + E['b'];
->r8 : number
+>r8 : number, Symbol(r8, Decl(additionOperatorWithNumberAndEnum.ts, 15, 3))
>E['a'] + E['b'] : number
>E['a'] : E
->E : typeof E
+>E : typeof E, Symbol(E, Decl(additionOperatorWithNumberAndEnum.ts, 0, 0))
+>'a' : string, Symbol(E.a, Decl(additionOperatorWithNumberAndEnum.ts, 0, 8))
>E['b'] : E
->E : typeof E
+>E : typeof E, Symbol(E, Decl(additionOperatorWithNumberAndEnum.ts, 0, 0))
+>'b' : string, Symbol(E.b, Decl(additionOperatorWithNumberAndEnum.ts, 0, 11))
var r9 = E['a'] + F['c'];
->r9 : number
+>r9 : number, Symbol(r9, Decl(additionOperatorWithNumberAndEnum.ts, 16, 3))
>E['a'] + F['c'] : number
>E['a'] : E
->E : typeof E
+>E : typeof E, Symbol(E, Decl(additionOperatorWithNumberAndEnum.ts, 0, 0))
+>'a' : string, Symbol(E.a, Decl(additionOperatorWithNumberAndEnum.ts, 0, 8))
>F['c'] : F
->F : typeof F
+>F : typeof F, Symbol(F, Decl(additionOperatorWithNumberAndEnum.ts, 0, 15))
+>'c' : string, Symbol(F.c, Decl(additionOperatorWithNumberAndEnum.ts, 1, 8))
var r10 = a + c;
->r10 : number
+>r10 : number, Symbol(r10, Decl(additionOperatorWithNumberAndEnum.ts, 18, 3))
>a + c : number
->a : number
->c : E | F
+>a : number, Symbol(a, Decl(additionOperatorWithNumberAndEnum.ts, 3, 3))
+>c : E | F, Symbol(c, Decl(additionOperatorWithNumberAndEnum.ts, 5, 3))
var r11 = c + a;
->r11 : number
+>r11 : number, Symbol(r11, Decl(additionOperatorWithNumberAndEnum.ts, 19, 3))
>c + a : number
->c : E | F
->a : number
+>c : E | F, Symbol(c, Decl(additionOperatorWithNumberAndEnum.ts, 5, 3))
+>a : number, Symbol(a, Decl(additionOperatorWithNumberAndEnum.ts, 3, 3))
var r12 = b + c;
->r12 : number
+>r12 : number, Symbol(r12, Decl(additionOperatorWithNumberAndEnum.ts, 20, 3))
>b + c : number
->b : E
->c : E | F
+>b : E, Symbol(b, Decl(additionOperatorWithNumberAndEnum.ts, 4, 3))
+>c : E | F, Symbol(c, Decl(additionOperatorWithNumberAndEnum.ts, 5, 3))
var r13 = c + b;
->r13 : number
+>r13 : number, Symbol(r13, Decl(additionOperatorWithNumberAndEnum.ts, 21, 3))
>c + b : number
->c : E | F
->b : E
+>c : E | F, Symbol(c, Decl(additionOperatorWithNumberAndEnum.ts, 5, 3))
+>b : E, Symbol(b, Decl(additionOperatorWithNumberAndEnum.ts, 4, 3))
var r14 = c + c;
->r14 : number
+>r14 : number, Symbol(r14, Decl(additionOperatorWithNumberAndEnum.ts, 22, 3))
>c + c : number
->c : E | F
->c : E | F
+>c : E | F, Symbol(c, Decl(additionOperatorWithNumberAndEnum.ts, 5, 3))
+>c : E | F, Symbol(c, Decl(additionOperatorWithNumberAndEnum.ts, 5, 3))
diff --git a/tests/baselines/reference/additionOperatorWithStringAndEveryType.types b/tests/baselines/reference/additionOperatorWithStringAndEveryType.types
index 9d5a926c427..31fa60a2562 100644
--- a/tests/baselines/reference/additionOperatorWithStringAndEveryType.types
+++ b/tests/baselines/reference/additionOperatorWithStringAndEveryType.types
@@ -1,158 +1,161 @@
=== tests/cases/conformance/expressions/binaryOperators/additionOperator/additionOperatorWithStringAndEveryType.ts ===
enum E { a, b, c }
->E : E
->a : E
->b : E
->c : E
+>E : E, Symbol(E, Decl(additionOperatorWithStringAndEveryType.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(additionOperatorWithStringAndEveryType.ts, 0, 8))
+>b : E, Symbol(E.b, Decl(additionOperatorWithStringAndEveryType.ts, 0, 11))
+>c : E, Symbol(E.c, Decl(additionOperatorWithStringAndEveryType.ts, 0, 14))
var a: any;
->a : any
+>a : any, Symbol(a, Decl(additionOperatorWithStringAndEveryType.ts, 2, 3))
var b: boolean;
->b : boolean
+>b : boolean, Symbol(b, Decl(additionOperatorWithStringAndEveryType.ts, 3, 3))
var c: number;
->c : number
+>c : number, Symbol(c, Decl(additionOperatorWithStringAndEveryType.ts, 4, 3))
var d: string;
->d : string
+>d : string, Symbol(d, Decl(additionOperatorWithStringAndEveryType.ts, 5, 3))
var e: Object;
->e : Object
->Object : Object
+>e : Object, Symbol(e, Decl(additionOperatorWithStringAndEveryType.ts, 6, 3))
+>Object : Object, Symbol(Object, Decl(lib.d.ts, 92, 1), Decl(lib.d.ts, 223, 11))
var f: void;
->f : void
+>f : void, Symbol(f, Decl(additionOperatorWithStringAndEveryType.ts, 7, 3))
var g: E;
->g : E
->E : E
+>g : E, Symbol(g, Decl(additionOperatorWithStringAndEveryType.ts, 8, 3))
+>E : E, Symbol(E, Decl(additionOperatorWithStringAndEveryType.ts, 0, 0))
var x: string;
->x : string
+>x : string, Symbol(x, Decl(additionOperatorWithStringAndEveryType.ts, 10, 3))
// string could plus every type, and the result is always string
// string as left operand
var r1 = x + a;
->r1 : string
+>r1 : string, Symbol(r1, Decl(additionOperatorWithStringAndEveryType.ts, 14, 3))
>x + a : string
->x : string
->a : any
+>x : string, Symbol(x, Decl(additionOperatorWithStringAndEveryType.ts, 10, 3))
+>a : any, Symbol(a, Decl(additionOperatorWithStringAndEveryType.ts, 2, 3))
var r2 = x + b;
->r2 : string
+>r2 : string, Symbol(r2, Decl(additionOperatorWithStringAndEveryType.ts, 15, 3))
>x + b : string
->x : string
->b : boolean
+>x : string, Symbol(x, Decl(additionOperatorWithStringAndEveryType.ts, 10, 3))
+>b : boolean, Symbol(b, Decl(additionOperatorWithStringAndEveryType.ts, 3, 3))
var r3 = x + c;
->r3 : string
+>r3 : string, Symbol(r3, Decl(additionOperatorWithStringAndEveryType.ts, 16, 3))
>x + c : string
->x : string
->c : number
+>x : string, Symbol(x, Decl(additionOperatorWithStringAndEveryType.ts, 10, 3))
+>c : number, Symbol(c, Decl(additionOperatorWithStringAndEveryType.ts, 4, 3))
var r4 = x + d;
->r4 : string
+>r4 : string, Symbol(r4, Decl(additionOperatorWithStringAndEveryType.ts, 17, 3))
>x + d : string
->x : string
->d : string
+>x : string, Symbol(x, Decl(additionOperatorWithStringAndEveryType.ts, 10, 3))
+>d : string, Symbol(d, Decl(additionOperatorWithStringAndEveryType.ts, 5, 3))
var r5 = x + e;
->r5 : string
+>r5 : string, Symbol(r5, Decl(additionOperatorWithStringAndEveryType.ts, 18, 3))
>x + e : string
->x : string
->e : Object
+>x : string, Symbol(x, Decl(additionOperatorWithStringAndEveryType.ts, 10, 3))
+>e : Object, Symbol(e, Decl(additionOperatorWithStringAndEveryType.ts, 6, 3))
var r6 = x + f;
->r6 : string
+>r6 : string, Symbol(r6, Decl(additionOperatorWithStringAndEveryType.ts, 19, 3))
>x + f : string
->x : string
->f : void
+>x : string, Symbol(x, Decl(additionOperatorWithStringAndEveryType.ts, 10, 3))
+>f : void, Symbol(f, Decl(additionOperatorWithStringAndEveryType.ts, 7, 3))
var r7 = x + g;
->r7 : string
+>r7 : string, Symbol(r7, Decl(additionOperatorWithStringAndEveryType.ts, 20, 3))
>x + g : string
->x : string
->g : E
+>x : string, Symbol(x, Decl(additionOperatorWithStringAndEveryType.ts, 10, 3))
+>g : E, Symbol(g, Decl(additionOperatorWithStringAndEveryType.ts, 8, 3))
// string as right operand
var r8 = a + x;
->r8 : string
+>r8 : string, Symbol(r8, Decl(additionOperatorWithStringAndEveryType.ts, 23, 3))
>a + x : string
->a : any
->x : string
+>a : any, Symbol(a, Decl(additionOperatorWithStringAndEveryType.ts, 2, 3))
+>x : string, Symbol(x, Decl(additionOperatorWithStringAndEveryType.ts, 10, 3))
var r9 = b + x;
->r9 : string
+>r9 : string, Symbol(r9, Decl(additionOperatorWithStringAndEveryType.ts, 24, 3))
>b + x : string
->b : boolean
->x : string
+>b : boolean, Symbol(b, Decl(additionOperatorWithStringAndEveryType.ts, 3, 3))
+>x : string, Symbol(x, Decl(additionOperatorWithStringAndEveryType.ts, 10, 3))
var r10 = c + x;
->r10 : string
+>r10 : string, Symbol(r10, Decl(additionOperatorWithStringAndEveryType.ts, 25, 3))
>c + x : string
->c : number
->x : string
+>c : number, Symbol(c, Decl(additionOperatorWithStringAndEveryType.ts, 4, 3))
+>x : string, Symbol(x, Decl(additionOperatorWithStringAndEveryType.ts, 10, 3))
var r11 = d + x;
->r11 : string
+>r11 : string, Symbol(r11, Decl(additionOperatorWithStringAndEveryType.ts, 26, 3))
>d + x : string
->d : string
->x : string
+>d : string, Symbol(d, Decl(additionOperatorWithStringAndEveryType.ts, 5, 3))
+>x : string, Symbol(x, Decl(additionOperatorWithStringAndEveryType.ts, 10, 3))
var r12 = e + x;
->r12 : string
+>r12 : string, Symbol(r12, Decl(additionOperatorWithStringAndEveryType.ts, 27, 3))
>e + x : string
->e : Object
->x : string
+>e : Object, Symbol(e, Decl(additionOperatorWithStringAndEveryType.ts, 6, 3))
+>x : string, Symbol(x, Decl(additionOperatorWithStringAndEveryType.ts, 10, 3))
var r13 = f + x;
->r13 : string
+>r13 : string, Symbol(r13, Decl(additionOperatorWithStringAndEveryType.ts, 28, 3))
>f + x : string
->f : void
->x : string
+>f : void, Symbol(f, Decl(additionOperatorWithStringAndEveryType.ts, 7, 3))
+>x : string, Symbol(x, Decl(additionOperatorWithStringAndEveryType.ts, 10, 3))
var r14 = g + x;
->r14 : string
+>r14 : string, Symbol(r14, Decl(additionOperatorWithStringAndEveryType.ts, 29, 3))
>g + x : string
->g : E
->x : string
+>g : E, Symbol(g, Decl(additionOperatorWithStringAndEveryType.ts, 8, 3))
+>x : string, Symbol(x, Decl(additionOperatorWithStringAndEveryType.ts, 10, 3))
// other cases
var r15 = x + E;
->r15 : string
+>r15 : string, Symbol(r15, Decl(additionOperatorWithStringAndEveryType.ts, 32, 3))
>x + E : string
->x : string
->E : typeof E
+>x : string, Symbol(x, Decl(additionOperatorWithStringAndEveryType.ts, 10, 3))
+>E : typeof E, Symbol(E, Decl(additionOperatorWithStringAndEveryType.ts, 0, 0))
var r16 = x + E.a;
->r16 : string
+>r16 : string, Symbol(r16, Decl(additionOperatorWithStringAndEveryType.ts, 33, 3))
>x + E.a : string
->x : string
->E.a : E
->E : typeof E
->a : E
+>x : string, Symbol(x, Decl(additionOperatorWithStringAndEveryType.ts, 10, 3))
+>E.a : E, Symbol(E.a, Decl(additionOperatorWithStringAndEveryType.ts, 0, 8))
+>E : typeof E, Symbol(E, Decl(additionOperatorWithStringAndEveryType.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(additionOperatorWithStringAndEveryType.ts, 0, 8))
var r17 = x + '';
->r17 : string
+>r17 : string, Symbol(r17, Decl(additionOperatorWithStringAndEveryType.ts, 34, 3))
>x + '' : string
->x : string
+>x : string, Symbol(x, Decl(additionOperatorWithStringAndEveryType.ts, 10, 3))
+>'' : string
var r18 = x + 0;
->r18 : string
+>r18 : string, Symbol(r18, Decl(additionOperatorWithStringAndEveryType.ts, 35, 3))
>x + 0 : string
->x : string
+>x : string, Symbol(x, Decl(additionOperatorWithStringAndEveryType.ts, 10, 3))
+>0 : number
var r19 = x + { a: '' };
->r19 : string
+>r19 : string, Symbol(r19, Decl(additionOperatorWithStringAndEveryType.ts, 36, 3))
>x + { a: '' } : string
->x : string
+>x : string, Symbol(x, Decl(additionOperatorWithStringAndEveryType.ts, 10, 3))
>{ a: '' } : { a: string; }
->a : string
+>a : string, Symbol(a, Decl(additionOperatorWithStringAndEveryType.ts, 36, 15))
+>'' : string
var r20 = x + [];
->r20 : string
+>r20 : string, Symbol(r20, Decl(additionOperatorWithStringAndEveryType.ts, 37, 3))
>x + [] : string
->x : string
+>x : string, Symbol(x, Decl(additionOperatorWithStringAndEveryType.ts, 10, 3))
>[] : undefined[]
diff --git a/tests/baselines/reference/additionOperatorWithUndefinedValueAndValidOperator.types b/tests/baselines/reference/additionOperatorWithUndefinedValueAndValidOperator.types
index 9a67b25024c..966c19aa8c4 100644
--- a/tests/baselines/reference/additionOperatorWithUndefinedValueAndValidOperator.types
+++ b/tests/baselines/reference/additionOperatorWithUndefinedValueAndValidOperator.types
@@ -2,122 +2,128 @@
// If one operand is the null or undefined value, it is treated as having the type of the other operand.
enum E { a, b, c }
->E : E
->a : E
->b : E
->c : E
+>E : E, Symbol(E, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 2, 8))
+>b : E, Symbol(E.b, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 2, 11))
+>c : E, Symbol(E.c, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 2, 14))
var a: any;
->a : any
+>a : any, Symbol(a, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 4, 3))
var b: number;
->b : number
+>b : number, Symbol(b, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 5, 3))
var c: E;
->c : E
->E : E
+>c : E, Symbol(c, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 6, 3))
+>E : E, Symbol(E, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 0, 0))
var d: string;
->d : string
+>d : string, Symbol(d, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 7, 3))
// undefined + any
var r1: any = undefined + a;
->r1 : any
+>r1 : any, Symbol(r1, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 10, 3))
>undefined + a : any
->undefined : undefined
->a : any
+>undefined : undefined, Symbol(undefined)
+>a : any, Symbol(a, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 4, 3))
var r2: any = a + undefined;
->r2 : any
+>r2 : any, Symbol(r2, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 11, 3))
>a + undefined : any
->a : any
->undefined : undefined
+>a : any, Symbol(a, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 4, 3))
+>undefined : undefined, Symbol(undefined)
// undefined + number/enum
var r3 = undefined + b;
->r3 : number
+>r3 : number, Symbol(r3, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 14, 3))
>undefined + b : number
->undefined : undefined
->b : number
+>undefined : undefined, Symbol(undefined)
+>b : number, Symbol(b, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 5, 3))
var r4 = undefined + 1;
->r4 : number
+>r4 : number, Symbol(r4, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 15, 3))
>undefined + 1 : number
->undefined : undefined
+>undefined : undefined, Symbol(undefined)
+>1 : number
var r5 = undefined + c;
->r5 : number
+>r5 : number, Symbol(r5, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 16, 3))
>undefined + c : number
->undefined : undefined
->c : E
+>undefined : undefined, Symbol(undefined)
+>c : E, Symbol(c, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 6, 3))
var r6 = undefined + E.a;
->r6 : number
+>r6 : number, Symbol(r6, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 17, 3))
>undefined + E.a : number
->undefined : undefined
->E.a : E
->E : typeof E
->a : E
+>undefined : undefined, Symbol(undefined)
+>E.a : E, Symbol(E.a, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 2, 8))
var r7 = undefined + E['a'];
->r7 : number
+>r7 : number, Symbol(r7, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 18, 3))
>undefined + E['a'] : number
->undefined : undefined
+>undefined : undefined, Symbol(undefined)
>E['a'] : E
->E : typeof E
+>E : typeof E, Symbol(E, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 0, 0))
+>'a' : string, Symbol(E.a, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 2, 8))
var r8 = b + undefined;
->r8 : number
+>r8 : number, Symbol(r8, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 19, 3))
>b + undefined : number
->b : number
->undefined : undefined
+>b : number, Symbol(b, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 5, 3))
+>undefined : undefined, Symbol(undefined)
var r9 = 1 + undefined;
->r9 : number
+>r9 : number, Symbol(r9, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 20, 3))
>1 + undefined : number
->undefined : undefined
+>1 : number
+>undefined : undefined, Symbol(undefined)
var r10 = c + undefined
->r10 : number
+>r10 : number, Symbol(r10, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 21, 3))
>c + undefined : number
->c : E
->undefined : undefined
+>c : E, Symbol(c, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 6, 3))
+>undefined : undefined, Symbol(undefined)
var r11 = E.a + undefined;
->r11 : number
+>r11 : number, Symbol(r11, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 22, 3))
>E.a + undefined : number
->E.a : E
->E : typeof E
->a : E
->undefined : undefined
+>E.a : E, Symbol(E.a, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 2, 8))
+>undefined : undefined, Symbol(undefined)
var r12 = E['a'] + undefined;
->r12 : number
+>r12 : number, Symbol(r12, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 23, 3))
>E['a'] + undefined : number
>E['a'] : E
->E : typeof E
->undefined : undefined
+>E : typeof E, Symbol(E, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 0, 0))
+>'a' : string, Symbol(E.a, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 2, 8))
+>undefined : undefined, Symbol(undefined)
// undefined + string
var r13 = undefined + d;
->r13 : string
+>r13 : string, Symbol(r13, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 26, 3))
>undefined + d : string
->undefined : undefined
->d : string
+>undefined : undefined, Symbol(undefined)
+>d : string, Symbol(d, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 7, 3))
var r14 = undefined + '';
->r14 : string
+>r14 : string, Symbol(r14, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 27, 3))
>undefined + '' : string
->undefined : undefined
+>undefined : undefined, Symbol(undefined)
+>'' : string
var r15 = d + undefined;
->r15 : string
+>r15 : string, Symbol(r15, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 28, 3))
>d + undefined : string
->d : string
->undefined : undefined
+>d : string, Symbol(d, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 7, 3))
+>undefined : undefined, Symbol(undefined)
var r16 = '' + undefined;
->r16 : string
+>r16 : string, Symbol(r16, Decl(additionOperatorWithUndefinedValueAndValidOperator.ts, 29, 3))
>'' + undefined : string
->undefined : undefined
+>'' : string
+>undefined : undefined, Symbol(undefined)
diff --git a/tests/baselines/reference/aliasUsageInAccessorsOfClass.types b/tests/baselines/reference/aliasUsageInAccessorsOfClass.types
index a666d2cee98..0a580a47b16 100644
--- a/tests/baselines/reference/aliasUsageInAccessorsOfClass.types
+++ b/tests/baselines/reference/aliasUsageInAccessorsOfClass.types
@@ -1,59 +1,61 @@
=== tests/cases/compiler/aliasUsage1_main.ts ===
import Backbone = require("aliasUsage1_backbone");
->Backbone : typeof Backbone
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsage1_main.ts, 0, 0))
import moduleA = require("aliasUsage1_moduleA");
->moduleA : typeof moduleA
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsage1_main.ts, 0, 50))
interface IHasVisualizationModel {
->IHasVisualizationModel : IHasVisualizationModel
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsage1_main.ts, 1, 48))
VisualizationModel: typeof Backbone.Model;
->VisualizationModel : typeof Backbone.Model
->Backbone : typeof Backbone
->Model : typeof Backbone.Model
+>VisualizationModel : typeof Backbone.Model, Symbol(VisualizationModel, Decl(aliasUsage1_main.ts, 2, 34))
+>Backbone.Model : typeof Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsage1_backbone.ts, 0, 0))
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsage1_main.ts, 0, 0))
+>Model : typeof Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsage1_backbone.ts, 0, 0))
}
class C2 {
->C2 : C2
+>C2 : C2, Symbol(C2, Decl(aliasUsage1_main.ts, 4, 1))
x: IHasVisualizationModel;
->x : IHasVisualizationModel
->IHasVisualizationModel : IHasVisualizationModel
+>x : IHasVisualizationModel, Symbol(x, Decl(aliasUsage1_main.ts, 5, 10))
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsage1_main.ts, 1, 48))
get A() {
->A : IHasVisualizationModel
+>A : IHasVisualizationModel, Symbol(A, Decl(aliasUsage1_main.ts, 6, 30), Decl(aliasUsage1_main.ts, 9, 5))
return this.x;
->this.x : IHasVisualizationModel
->this : C2
->x : IHasVisualizationModel
+>this.x : IHasVisualizationModel, Symbol(x, Decl(aliasUsage1_main.ts, 5, 10))
+>this : C2, Symbol(C2, Decl(aliasUsage1_main.ts, 4, 1))
+>x : IHasVisualizationModel, Symbol(x, Decl(aliasUsage1_main.ts, 5, 10))
}
set A(x) {
->A : IHasVisualizationModel
->x : IHasVisualizationModel
+>A : IHasVisualizationModel, Symbol(A, Decl(aliasUsage1_main.ts, 6, 30), Decl(aliasUsage1_main.ts, 9, 5))
+>x : IHasVisualizationModel, Symbol(x, Decl(aliasUsage1_main.ts, 10, 10))
x = moduleA;
>x = moduleA : typeof moduleA
->x : IHasVisualizationModel
->moduleA : typeof moduleA
+>x : IHasVisualizationModel, Symbol(x, Decl(aliasUsage1_main.ts, 10, 10))
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsage1_main.ts, 0, 50))
}
}
=== tests/cases/compiler/aliasUsage1_backbone.ts ===
export class Model {
->Model : Model
+>Model : Model, Symbol(Model, Decl(aliasUsage1_backbone.ts, 0, 0))
public someData: string;
->someData : string
+>someData : string, Symbol(someData, Decl(aliasUsage1_backbone.ts, 0, 20))
}
=== tests/cases/compiler/aliasUsage1_moduleA.ts ===
import Backbone = require("aliasUsage1_backbone");
->Backbone : typeof Backbone
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsage1_moduleA.ts, 0, 0))
export class VisualizationModel extends Backbone.Model {
->VisualizationModel : VisualizationModel
->Backbone : typeof Backbone
->Model : Backbone.Model
+>VisualizationModel : VisualizationModel, Symbol(VisualizationModel, Decl(aliasUsage1_moduleA.ts, 0, 50))
+>Backbone.Model : any, Symbol(Backbone.Model, Decl(aliasUsage1_backbone.ts, 0, 0))
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsage1_moduleA.ts, 0, 0))
+>Model : Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsage1_backbone.ts, 0, 0))
// interesting stuff here
}
diff --git a/tests/baselines/reference/aliasUsageInArray.types b/tests/baselines/reference/aliasUsageInArray.types
index f7e2beb49dd..b7ff2670cd2 100644
--- a/tests/baselines/reference/aliasUsageInArray.types
+++ b/tests/baselines/reference/aliasUsageInArray.types
@@ -1,47 +1,49 @@
=== tests/cases/compiler/aliasUsageInArray_main.ts ===
import Backbone = require("aliasUsageInArray_backbone");
->Backbone : typeof Backbone
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInArray_main.ts, 0, 0))
import moduleA = require("aliasUsageInArray_moduleA");
->moduleA : typeof moduleA
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInArray_main.ts, 0, 56))
interface IHasVisualizationModel {
->IHasVisualizationModel : IHasVisualizationModel
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInArray_main.ts, 1, 54))
VisualizationModel: typeof Backbone.Model;
->VisualizationModel : typeof Backbone.Model
->Backbone : typeof Backbone
->Model : typeof Backbone.Model
+>VisualizationModel : typeof Backbone.Model, Symbol(VisualizationModel, Decl(aliasUsageInArray_main.ts, 2, 34))
+>Backbone.Model : typeof Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsageInArray_backbone.ts, 0, 0))
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInArray_main.ts, 0, 0))
+>Model : typeof Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsageInArray_backbone.ts, 0, 0))
}
var xs: IHasVisualizationModel[] = [moduleA];
->xs : IHasVisualizationModel[]
->IHasVisualizationModel : IHasVisualizationModel
+>xs : IHasVisualizationModel[], Symbol(xs, Decl(aliasUsageInArray_main.ts, 6, 3))
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInArray_main.ts, 1, 54))
>[moduleA] : typeof moduleA[]
->moduleA : typeof moduleA
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInArray_main.ts, 0, 56))
var xs2: typeof moduleA[] = [moduleA];
->xs2 : typeof moduleA[]
->moduleA : typeof moduleA
+>xs2 : typeof moduleA[], Symbol(xs2, Decl(aliasUsageInArray_main.ts, 7, 3))
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInArray_main.ts, 0, 56))
>[moduleA] : typeof moduleA[]
->moduleA : typeof moduleA
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInArray_main.ts, 0, 56))
=== tests/cases/compiler/aliasUsageInArray_backbone.ts ===
export class Model {
->Model : Model
+>Model : Model, Symbol(Model, Decl(aliasUsageInArray_backbone.ts, 0, 0))
public someData: string;
->someData : string
+>someData : string, Symbol(someData, Decl(aliasUsageInArray_backbone.ts, 0, 20))
}
=== tests/cases/compiler/aliasUsageInArray_moduleA.ts ===
import Backbone = require("aliasUsageInArray_backbone");
->Backbone : typeof Backbone
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInArray_moduleA.ts, 0, 0))
export class VisualizationModel extends Backbone.Model {
->VisualizationModel : VisualizationModel
->Backbone : typeof Backbone
->Model : Backbone.Model
+>VisualizationModel : VisualizationModel, Symbol(VisualizationModel, Decl(aliasUsageInArray_moduleA.ts, 0, 56))
+>Backbone.Model : any, Symbol(Backbone.Model, Decl(aliasUsageInArray_backbone.ts, 0, 0))
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInArray_moduleA.ts, 0, 0))
+>Model : Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsageInArray_backbone.ts, 0, 0))
// interesting stuff here
}
diff --git a/tests/baselines/reference/aliasUsageInFunctionExpression.types b/tests/baselines/reference/aliasUsageInFunctionExpression.types
index 392481d2d02..46ca7a9a76c 100644
--- a/tests/baselines/reference/aliasUsageInFunctionExpression.types
+++ b/tests/baselines/reference/aliasUsageInFunctionExpression.types
@@ -1,48 +1,50 @@
=== tests/cases/compiler/aliasUsageInFunctionExpression_main.ts ===
import Backbone = require("aliasUsageInFunctionExpression_backbone");
->Backbone : typeof Backbone
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInFunctionExpression_main.ts, 0, 0))
import moduleA = require("aliasUsageInFunctionExpression_moduleA");
->moduleA : typeof moduleA
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInFunctionExpression_main.ts, 0, 69))
interface IHasVisualizationModel {
->IHasVisualizationModel : IHasVisualizationModel
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInFunctionExpression_main.ts, 1, 67))
VisualizationModel: typeof Backbone.Model;
->VisualizationModel : typeof Backbone.Model
->Backbone : typeof Backbone
->Model : typeof Backbone.Model
+>VisualizationModel : typeof Backbone.Model, Symbol(VisualizationModel, Decl(aliasUsageInFunctionExpression_main.ts, 2, 34))
+>Backbone.Model : typeof Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsageInFunctionExpression_backbone.ts, 0, 0))
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInFunctionExpression_main.ts, 0, 0))
+>Model : typeof Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsageInFunctionExpression_backbone.ts, 0, 0))
}
var f = (x: IHasVisualizationModel) => x;
->f : (x: IHasVisualizationModel) => IHasVisualizationModel
+>f : (x: IHasVisualizationModel) => IHasVisualizationModel, Symbol(f, Decl(aliasUsageInFunctionExpression_main.ts, 5, 3))
>(x: IHasVisualizationModel) => x : (x: IHasVisualizationModel) => IHasVisualizationModel
->x : IHasVisualizationModel
->IHasVisualizationModel : IHasVisualizationModel
->x : IHasVisualizationModel
+>x : IHasVisualizationModel, Symbol(x, Decl(aliasUsageInFunctionExpression_main.ts, 5, 9))
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInFunctionExpression_main.ts, 1, 67))
+>x : IHasVisualizationModel, Symbol(x, Decl(aliasUsageInFunctionExpression_main.ts, 5, 9))
f = (x) => moduleA;
>f = (x) => moduleA : (x: IHasVisualizationModel) => typeof moduleA
->f : (x: IHasVisualizationModel) => IHasVisualizationModel
+>f : (x: IHasVisualizationModel) => IHasVisualizationModel, Symbol(f, Decl(aliasUsageInFunctionExpression_main.ts, 5, 3))
>(x) => moduleA : (x: IHasVisualizationModel) => typeof moduleA
->x : IHasVisualizationModel
->moduleA : typeof moduleA
+>x : IHasVisualizationModel, Symbol(x, Decl(aliasUsageInFunctionExpression_main.ts, 6, 5))
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInFunctionExpression_main.ts, 0, 69))
=== tests/cases/compiler/aliasUsageInFunctionExpression_backbone.ts ===
export class Model {
->Model : Model
+>Model : Model, Symbol(Model, Decl(aliasUsageInFunctionExpression_backbone.ts, 0, 0))
public someData: string;
->someData : string
+>someData : string, Symbol(someData, Decl(aliasUsageInFunctionExpression_backbone.ts, 0, 20))
}
=== tests/cases/compiler/aliasUsageInFunctionExpression_moduleA.ts ===
import Backbone = require("aliasUsageInFunctionExpression_backbone");
->Backbone : typeof Backbone
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInFunctionExpression_moduleA.ts, 0, 0))
export class VisualizationModel extends Backbone.Model {
->VisualizationModel : VisualizationModel
->Backbone : typeof Backbone
->Model : Backbone.Model
+>VisualizationModel : VisualizationModel, Symbol(VisualizationModel, Decl(aliasUsageInFunctionExpression_moduleA.ts, 0, 69))
+>Backbone.Model : any, Symbol(Backbone.Model, Decl(aliasUsageInFunctionExpression_backbone.ts, 0, 0))
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInFunctionExpression_moduleA.ts, 0, 0))
+>Model : Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsageInFunctionExpression_backbone.ts, 0, 0))
// interesting stuff here
}
diff --git a/tests/baselines/reference/aliasUsageInGenericFunction.types b/tests/baselines/reference/aliasUsageInGenericFunction.types
index 568e885f51f..b32eb87fb19 100644
--- a/tests/baselines/reference/aliasUsageInGenericFunction.types
+++ b/tests/baselines/reference/aliasUsageInGenericFunction.types
@@ -1,62 +1,65 @@
=== tests/cases/compiler/aliasUsageInGenericFunction_main.ts ===
import Backbone = require("aliasUsageInGenericFunction_backbone");
->Backbone : typeof Backbone
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInGenericFunction_main.ts, 0, 0))
import moduleA = require("aliasUsageInGenericFunction_moduleA");
->moduleA : typeof moduleA
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInGenericFunction_main.ts, 0, 66))
interface IHasVisualizationModel {
->IHasVisualizationModel : IHasVisualizationModel
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInGenericFunction_main.ts, 1, 64))
VisualizationModel: typeof Backbone.Model;
->VisualizationModel : typeof Backbone.Model
->Backbone : typeof Backbone
->Model : typeof Backbone.Model
+>VisualizationModel : typeof Backbone.Model, Symbol(VisualizationModel, Decl(aliasUsageInGenericFunction_main.ts, 2, 34))
+>Backbone.Model : typeof Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsageInGenericFunction_backbone.ts, 0, 0))
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInGenericFunction_main.ts, 0, 0))
+>Model : typeof Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsageInGenericFunction_backbone.ts, 0, 0))
}
function foo(x: T) {
->foo : (x: T) => T
->T : T
->a : IHasVisualizationModel
->IHasVisualizationModel : IHasVisualizationModel
->x : T
->T : T
+>foo : (x: T) => T, Symbol(foo, Decl(aliasUsageInGenericFunction_main.ts, 4, 1))
+>T : T, Symbol(T, Decl(aliasUsageInGenericFunction_main.ts, 5, 13))
+>a : IHasVisualizationModel, Symbol(a, Decl(aliasUsageInGenericFunction_main.ts, 5, 24))
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInGenericFunction_main.ts, 1, 64))
+>x : T, Symbol(x, Decl(aliasUsageInGenericFunction_main.ts, 5, 54))
+>T : T, Symbol(T, Decl(aliasUsageInGenericFunction_main.ts, 5, 13))
return x;
->x : T
+>x : T, Symbol(x, Decl(aliasUsageInGenericFunction_main.ts, 5, 54))
}
var r = foo({ a: moduleA });
->r : { a: typeof moduleA; }
+>r : { a: typeof moduleA; }, Symbol(r, Decl(aliasUsageInGenericFunction_main.ts, 8, 3))
>foo({ a: moduleA }) : { a: typeof moduleA; }
->foo : (x: T) => T
+>foo : (x: T) => T, Symbol(foo, Decl(aliasUsageInGenericFunction_main.ts, 4, 1))
>{ a: moduleA } : { a: typeof moduleA; }
->a : typeof moduleA
->moduleA : typeof moduleA
+>a : typeof moduleA, Symbol(a, Decl(aliasUsageInGenericFunction_main.ts, 8, 13))
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInGenericFunction_main.ts, 0, 66))
var r2 = foo({ a: null });
->r2 : { a: IHasVisualizationModel; }
+>r2 : { a: IHasVisualizationModel; }, Symbol(r2, Decl(aliasUsageInGenericFunction_main.ts, 9, 3))
>foo({ a: null }) : { a: IHasVisualizationModel; }
->foo : (x: T) => T
+>foo : (x: T) => T, Symbol(foo, Decl(aliasUsageInGenericFunction_main.ts, 4, 1))
>{ a: null } : { a: IHasVisualizationModel; }
->a : IHasVisualizationModel
+>a : IHasVisualizationModel, Symbol(a, Decl(aliasUsageInGenericFunction_main.ts, 9, 14))
>null : IHasVisualizationModel
->IHasVisualizationModel : IHasVisualizationModel
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInGenericFunction_main.ts, 1, 64))
+>null : null
=== tests/cases/compiler/aliasUsageInGenericFunction_backbone.ts ===
export class Model {
->Model : Model
+>Model : Model, Symbol(Model, Decl(aliasUsageInGenericFunction_backbone.ts, 0, 0))
public someData: string;
->someData : string
+>someData : string, Symbol(someData, Decl(aliasUsageInGenericFunction_backbone.ts, 0, 20))
}
=== tests/cases/compiler/aliasUsageInGenericFunction_moduleA.ts ===
import Backbone = require("aliasUsageInGenericFunction_backbone");
->Backbone : typeof Backbone
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInGenericFunction_moduleA.ts, 0, 0))
export class VisualizationModel extends Backbone.Model {
->VisualizationModel : VisualizationModel
->Backbone : typeof Backbone
->Model : Backbone.Model
+>VisualizationModel : VisualizationModel, Symbol(VisualizationModel, Decl(aliasUsageInGenericFunction_moduleA.ts, 0, 66))
+>Backbone.Model : any, Symbol(Backbone.Model, Decl(aliasUsageInGenericFunction_backbone.ts, 0, 0))
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInGenericFunction_moduleA.ts, 0, 0))
+>Model : Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsageInGenericFunction_backbone.ts, 0, 0))
// interesting stuff here
}
diff --git a/tests/baselines/reference/aliasUsageInIndexerOfClass.types b/tests/baselines/reference/aliasUsageInIndexerOfClass.types
index e968abe597f..af3a88e9762 100644
--- a/tests/baselines/reference/aliasUsageInIndexerOfClass.types
+++ b/tests/baselines/reference/aliasUsageInIndexerOfClass.types
@@ -1,56 +1,58 @@
=== tests/cases/compiler/aliasUsageInIndexerOfClass_main.ts ===
import Backbone = require("aliasUsageInIndexerOfClass_backbone");
->Backbone : typeof Backbone
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInIndexerOfClass_main.ts, 0, 0))
import moduleA = require("aliasUsageInIndexerOfClass_moduleA");
->moduleA : typeof moduleA
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInIndexerOfClass_main.ts, 0, 65))
interface IHasVisualizationModel {
->IHasVisualizationModel : IHasVisualizationModel
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInIndexerOfClass_main.ts, 1, 63))
VisualizationModel: typeof Backbone.Model;
->VisualizationModel : typeof Backbone.Model
->Backbone : typeof Backbone
->Model : typeof Backbone.Model
+>VisualizationModel : typeof Backbone.Model, Symbol(VisualizationModel, Decl(aliasUsageInIndexerOfClass_main.ts, 2, 34))
+>Backbone.Model : typeof Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsageInIndexerOfClass_backbone.ts, 0, 0))
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInIndexerOfClass_main.ts, 0, 0))
+>Model : typeof Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsageInIndexerOfClass_backbone.ts, 0, 0))
}
class N {
->N : N
+>N : N, Symbol(N, Decl(aliasUsageInIndexerOfClass_main.ts, 4, 1))
[idx: string]: IHasVisualizationModel
->idx : string
->IHasVisualizationModel : IHasVisualizationModel
+>idx : string, Symbol(idx, Decl(aliasUsageInIndexerOfClass_main.ts, 6, 5))
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInIndexerOfClass_main.ts, 1, 63))
x = moduleA;
->x : typeof moduleA
->moduleA : typeof moduleA
+>x : typeof moduleA, Symbol(x, Decl(aliasUsageInIndexerOfClass_main.ts, 6, 41))
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInIndexerOfClass_main.ts, 0, 65))
}
class N2 {
->N2 : N2
+>N2 : N2, Symbol(N2, Decl(aliasUsageInIndexerOfClass_main.ts, 8, 1))
[idx: string]: typeof moduleA
->idx : string
->moduleA : typeof moduleA
+>idx : string, Symbol(idx, Decl(aliasUsageInIndexerOfClass_main.ts, 10, 5))
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInIndexerOfClass_main.ts, 0, 65))
x: IHasVisualizationModel;
->x : IHasVisualizationModel
->IHasVisualizationModel : IHasVisualizationModel
+>x : IHasVisualizationModel, Symbol(x, Decl(aliasUsageInIndexerOfClass_main.ts, 10, 33))
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInIndexerOfClass_main.ts, 1, 63))
}
=== tests/cases/compiler/aliasUsageInIndexerOfClass_backbone.ts ===
export class Model {
->Model : Model
+>Model : Model, Symbol(Model, Decl(aliasUsageInIndexerOfClass_backbone.ts, 0, 0))
public someData: string;
->someData : string
+>someData : string, Symbol(someData, Decl(aliasUsageInIndexerOfClass_backbone.ts, 0, 20))
}
=== tests/cases/compiler/aliasUsageInIndexerOfClass_moduleA.ts ===
import Backbone = require("aliasUsageInIndexerOfClass_backbone");
->Backbone : typeof Backbone
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInIndexerOfClass_moduleA.ts, 0, 0))
export class VisualizationModel extends Backbone.Model {
->VisualizationModel : VisualizationModel
->Backbone : typeof Backbone
->Model : Backbone.Model
+>VisualizationModel : VisualizationModel, Symbol(VisualizationModel, Decl(aliasUsageInIndexerOfClass_moduleA.ts, 0, 65))
+>Backbone.Model : any, Symbol(Backbone.Model, Decl(aliasUsageInIndexerOfClass_backbone.ts, 0, 0))
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInIndexerOfClass_moduleA.ts, 0, 0))
+>Model : Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsageInIndexerOfClass_backbone.ts, 0, 0))
// interesting stuff here
}
diff --git a/tests/baselines/reference/aliasUsageInObjectLiteral.types b/tests/baselines/reference/aliasUsageInObjectLiteral.types
index 2e631a41cdf..8d5eed3ca7b 100644
--- a/tests/baselines/reference/aliasUsageInObjectLiteral.types
+++ b/tests/baselines/reference/aliasUsageInObjectLiteral.types
@@ -1,61 +1,63 @@
=== tests/cases/compiler/aliasUsageInObjectLiteral_main.ts ===
import Backbone = require("aliasUsageInObjectLiteral_backbone");
->Backbone : typeof Backbone
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInObjectLiteral_main.ts, 0, 0))
import moduleA = require("aliasUsageInObjectLiteral_moduleA");
->moduleA : typeof moduleA
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInObjectLiteral_main.ts, 0, 64))
interface IHasVisualizationModel {
->IHasVisualizationModel : IHasVisualizationModel
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInObjectLiteral_main.ts, 1, 62))
VisualizationModel: typeof Backbone.Model;
->VisualizationModel : typeof Backbone.Model
->Backbone : typeof Backbone
->Model : typeof Backbone.Model
+>VisualizationModel : typeof Backbone.Model, Symbol(VisualizationModel, Decl(aliasUsageInObjectLiteral_main.ts, 2, 34))
+>Backbone.Model : typeof Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsageInObjectLiteral_backbone.ts, 0, 0))
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInObjectLiteral_main.ts, 0, 0))
+>Model : typeof Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsageInObjectLiteral_backbone.ts, 0, 0))
}
var a: { x: typeof moduleA } = { x: moduleA };
->a : { x: typeof moduleA; }
->x : typeof moduleA
->moduleA : typeof moduleA
+>a : { x: typeof moduleA; }, Symbol(a, Decl(aliasUsageInObjectLiteral_main.ts, 5, 3))
+>x : typeof moduleA, Symbol(x, Decl(aliasUsageInObjectLiteral_main.ts, 5, 8))
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInObjectLiteral_main.ts, 0, 64))
>{ x: moduleA } : { x: typeof moduleA; }
->x : typeof moduleA
->moduleA : typeof moduleA
+>x : typeof moduleA, Symbol(x, Decl(aliasUsageInObjectLiteral_main.ts, 5, 32))
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInObjectLiteral_main.ts, 0, 64))
var b: { x: IHasVisualizationModel } = { x: moduleA };
->b : { x: IHasVisualizationModel; }
->x : IHasVisualizationModel
->IHasVisualizationModel : IHasVisualizationModel
+>b : { x: IHasVisualizationModel; }, Symbol(b, Decl(aliasUsageInObjectLiteral_main.ts, 6, 3))
+>x : IHasVisualizationModel, Symbol(x, Decl(aliasUsageInObjectLiteral_main.ts, 6, 8))
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInObjectLiteral_main.ts, 1, 62))
>{ x: moduleA } : { x: typeof moduleA; }
->x : typeof moduleA
->moduleA : typeof moduleA
+>x : typeof moduleA, Symbol(x, Decl(aliasUsageInObjectLiteral_main.ts, 6, 40))
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInObjectLiteral_main.ts, 0, 64))
var c: { y: { z: IHasVisualizationModel } } = { y: { z: moduleA } };
->c : { y: { z: IHasVisualizationModel; }; }
->y : { z: IHasVisualizationModel; }
->z : IHasVisualizationModel
->IHasVisualizationModel : IHasVisualizationModel
+>c : { y: { z: IHasVisualizationModel; }; }, Symbol(c, Decl(aliasUsageInObjectLiteral_main.ts, 7, 3))
+>y : { z: IHasVisualizationModel; }, Symbol(y, Decl(aliasUsageInObjectLiteral_main.ts, 7, 8))
+>z : IHasVisualizationModel, Symbol(z, Decl(aliasUsageInObjectLiteral_main.ts, 7, 13))
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInObjectLiteral_main.ts, 1, 62))
>{ y: { z: moduleA } } : { y: { z: typeof moduleA; }; }
->y : { z: typeof moduleA; }
+>y : { z: typeof moduleA; }, Symbol(y, Decl(aliasUsageInObjectLiteral_main.ts, 7, 47))
>{ z: moduleA } : { z: typeof moduleA; }
->z : typeof moduleA
->moduleA : typeof moduleA
+>z : typeof moduleA, Symbol(z, Decl(aliasUsageInObjectLiteral_main.ts, 7, 52))
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInObjectLiteral_main.ts, 0, 64))
=== tests/cases/compiler/aliasUsageInObjectLiteral_backbone.ts ===
export class Model {
->Model : Model
+>Model : Model, Symbol(Model, Decl(aliasUsageInObjectLiteral_backbone.ts, 0, 0))
public someData: string;
->someData : string
+>someData : string, Symbol(someData, Decl(aliasUsageInObjectLiteral_backbone.ts, 0, 20))
}
=== tests/cases/compiler/aliasUsageInObjectLiteral_moduleA.ts ===
import Backbone = require("aliasUsageInObjectLiteral_backbone");
->Backbone : typeof Backbone
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInObjectLiteral_moduleA.ts, 0, 0))
export class VisualizationModel extends Backbone.Model {
->VisualizationModel : VisualizationModel
->Backbone : typeof Backbone
->Model : Backbone.Model
+>VisualizationModel : VisualizationModel, Symbol(VisualizationModel, Decl(aliasUsageInObjectLiteral_moduleA.ts, 0, 64))
+>Backbone.Model : any, Symbol(Backbone.Model, Decl(aliasUsageInObjectLiteral_backbone.ts, 0, 0))
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInObjectLiteral_moduleA.ts, 0, 0))
+>Model : Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsageInObjectLiteral_backbone.ts, 0, 0))
// interesting stuff here
}
diff --git a/tests/baselines/reference/aliasUsageInOrExpression.types b/tests/baselines/reference/aliasUsageInOrExpression.types
index 1a4dae90356..dace1e1f7fa 100644
--- a/tests/baselines/reference/aliasUsageInOrExpression.types
+++ b/tests/baselines/reference/aliasUsageInOrExpression.types
@@ -1,82 +1,87 @@
=== tests/cases/compiler/aliasUsageInOrExpression_main.ts ===
import Backbone = require("aliasUsageInOrExpression_backbone");
->Backbone : typeof Backbone
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInOrExpression_main.ts, 0, 0))
import moduleA = require("aliasUsageInOrExpression_moduleA");
->moduleA : typeof moduleA
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInOrExpression_main.ts, 0, 63))
interface IHasVisualizationModel {
->IHasVisualizationModel : IHasVisualizationModel
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInOrExpression_main.ts, 1, 61))
VisualizationModel: typeof Backbone.Model;
->VisualizationModel : typeof Backbone.Model
->Backbone : typeof Backbone
->Model : typeof Backbone.Model
+>VisualizationModel : typeof Backbone.Model, Symbol(VisualizationModel, Decl(aliasUsageInOrExpression_main.ts, 2, 34))
+>Backbone.Model : typeof Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsageInOrExpression_backbone.ts, 0, 0))
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInOrExpression_main.ts, 0, 0))
+>Model : typeof Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsageInOrExpression_backbone.ts, 0, 0))
}
var i: IHasVisualizationModel;
->i : IHasVisualizationModel
->IHasVisualizationModel : IHasVisualizationModel
+>i : IHasVisualizationModel, Symbol(i, Decl(aliasUsageInOrExpression_main.ts, 5, 3))
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInOrExpression_main.ts, 1, 61))
var d1 = i || moduleA;
->d1 : IHasVisualizationModel
+>d1 : IHasVisualizationModel, Symbol(d1, Decl(aliasUsageInOrExpression_main.ts, 6, 3))
>i || moduleA : IHasVisualizationModel
->i : IHasVisualizationModel
->moduleA : typeof moduleA
+>i : IHasVisualizationModel, Symbol(i, Decl(aliasUsageInOrExpression_main.ts, 5, 3))
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInOrExpression_main.ts, 0, 63))
var d2: IHasVisualizationModel = i || moduleA;
->d2 : IHasVisualizationModel
->IHasVisualizationModel : IHasVisualizationModel
+>d2 : IHasVisualizationModel, Symbol(d2, Decl(aliasUsageInOrExpression_main.ts, 7, 3), Decl(aliasUsageInOrExpression_main.ts, 8, 3))
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInOrExpression_main.ts, 1, 61))
>i || moduleA : IHasVisualizationModel
->i : IHasVisualizationModel
->moduleA : typeof moduleA
+>i : IHasVisualizationModel, Symbol(i, Decl(aliasUsageInOrExpression_main.ts, 5, 3))
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInOrExpression_main.ts, 0, 63))
var d2: IHasVisualizationModel = moduleA || i;
->d2 : IHasVisualizationModel
->IHasVisualizationModel : IHasVisualizationModel
+>d2 : IHasVisualizationModel, Symbol(d2, Decl(aliasUsageInOrExpression_main.ts, 7, 3), Decl(aliasUsageInOrExpression_main.ts, 8, 3))
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInOrExpression_main.ts, 1, 61))
>moduleA || i : IHasVisualizationModel
->moduleA : typeof moduleA
->i : IHasVisualizationModel
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInOrExpression_main.ts, 0, 63))
+>i : IHasVisualizationModel, Symbol(i, Decl(aliasUsageInOrExpression_main.ts, 5, 3))
var e: { x: IHasVisualizationModel } = <{ x: IHasVisualizationModel }>null || { x: moduleA };
->e : { x: IHasVisualizationModel; }
->x : IHasVisualizationModel
->IHasVisualizationModel : IHasVisualizationModel
+>e : { x: IHasVisualizationModel; }, Symbol(e, Decl(aliasUsageInOrExpression_main.ts, 9, 3))
+>x : IHasVisualizationModel, Symbol(x, Decl(aliasUsageInOrExpression_main.ts, 9, 8))
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInOrExpression_main.ts, 1, 61))
><{ x: IHasVisualizationModel }>null || { x: moduleA } : { x: IHasVisualizationModel; }
><{ x: IHasVisualizationModel }>null : { x: IHasVisualizationModel; }
->x : IHasVisualizationModel
->IHasVisualizationModel : IHasVisualizationModel
+>x : IHasVisualizationModel, Symbol(x, Decl(aliasUsageInOrExpression_main.ts, 9, 41))
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInOrExpression_main.ts, 1, 61))
+>null : null
>{ x: moduleA } : { x: typeof moduleA; }
->x : typeof moduleA
->moduleA : typeof moduleA
+>x : typeof moduleA, Symbol(x, Decl(aliasUsageInOrExpression_main.ts, 9, 79))
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInOrExpression_main.ts, 0, 63))
var f: { x: IHasVisualizationModel } = <{ x: IHasVisualizationModel }>null ? { x: moduleA } : null;
->f : { x: IHasVisualizationModel; }
->x : IHasVisualizationModel
->IHasVisualizationModel : IHasVisualizationModel
+>f : { x: IHasVisualizationModel; }, Symbol(f, Decl(aliasUsageInOrExpression_main.ts, 10, 3))
+>x : IHasVisualizationModel, Symbol(x, Decl(aliasUsageInOrExpression_main.ts, 10, 8))
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInOrExpression_main.ts, 1, 61))
><{ x: IHasVisualizationModel }>null ? { x: moduleA } : null : { x: typeof moduleA; }
><{ x: IHasVisualizationModel }>null : { x: IHasVisualizationModel; }
->x : IHasVisualizationModel
->IHasVisualizationModel : IHasVisualizationModel
+>x : IHasVisualizationModel, Symbol(x, Decl(aliasUsageInOrExpression_main.ts, 10, 41))
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInOrExpression_main.ts, 1, 61))
+>null : null
>{ x: moduleA } : { x: typeof moduleA; }
->x : typeof moduleA
->moduleA : typeof moduleA
+>x : typeof moduleA, Symbol(x, Decl(aliasUsageInOrExpression_main.ts, 10, 78))
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInOrExpression_main.ts, 0, 63))
+>null : null
=== tests/cases/compiler/aliasUsageInOrExpression_backbone.ts ===
export class Model {
->Model : Model
+>Model : Model, Symbol(Model, Decl(aliasUsageInOrExpression_backbone.ts, 0, 0))
public someData: string;
->someData : string
+>someData : string, Symbol(someData, Decl(aliasUsageInOrExpression_backbone.ts, 0, 20))
}
=== tests/cases/compiler/aliasUsageInOrExpression_moduleA.ts ===
import Backbone = require("aliasUsageInOrExpression_backbone");
->Backbone : typeof Backbone
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInOrExpression_moduleA.ts, 0, 0))
export class VisualizationModel extends Backbone.Model {
->VisualizationModel : VisualizationModel
->Backbone : typeof Backbone
->Model : Backbone.Model
+>VisualizationModel : VisualizationModel, Symbol(VisualizationModel, Decl(aliasUsageInOrExpression_moduleA.ts, 0, 63))
+>Backbone.Model : any, Symbol(Backbone.Model, Decl(aliasUsageInOrExpression_backbone.ts, 0, 0))
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInOrExpression_moduleA.ts, 0, 0))
+>Model : Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsageInOrExpression_backbone.ts, 0, 0))
// interesting stuff here
}
diff --git a/tests/baselines/reference/aliasUsageInOrExpression.types.pull b/tests/baselines/reference/aliasUsageInOrExpression.types.pull
index 3b138d1404a..37fc6d54f33 100644
--- a/tests/baselines/reference/aliasUsageInOrExpression.types.pull
+++ b/tests/baselines/reference/aliasUsageInOrExpression.types.pull
@@ -1,82 +1,87 @@
=== tests/cases/compiler/aliasUsageInOrExpression_main.ts ===
import Backbone = require("aliasUsageInOrExpression_backbone");
->Backbone : typeof Backbone
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInOrExpression_main.ts, 0, 0))
import moduleA = require("aliasUsageInOrExpression_moduleA");
->moduleA : typeof moduleA
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInOrExpression_main.ts, 0, 63))
interface IHasVisualizationModel {
->IHasVisualizationModel : IHasVisualizationModel
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInOrExpression_main.ts, 1, 61))
VisualizationModel: typeof Backbone.Model;
->VisualizationModel : typeof Backbone.Model
->Backbone : typeof Backbone
->Model : typeof Backbone.Model
+>VisualizationModel : typeof Backbone.Model, Symbol(VisualizationModel, Decl(aliasUsageInOrExpression_main.ts, 2, 34))
+>Backbone.Model : typeof Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsageInOrExpression_backbone.ts, 0, 0))
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInOrExpression_main.ts, 0, 0))
+>Model : typeof Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsageInOrExpression_backbone.ts, 0, 0))
}
var i: IHasVisualizationModel;
->i : IHasVisualizationModel
->IHasVisualizationModel : IHasVisualizationModel
+>i : IHasVisualizationModel, Symbol(i, Decl(aliasUsageInOrExpression_main.ts, 5, 3))
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInOrExpression_main.ts, 1, 61))
var d1 = i || moduleA;
->d1 : typeof moduleA
+>d1 : typeof moduleA, Symbol(d1, Decl(aliasUsageInOrExpression_main.ts, 6, 3))
>i || moduleA : typeof moduleA
->i : IHasVisualizationModel
->moduleA : typeof moduleA
+>i : IHasVisualizationModel, Symbol(i, Decl(aliasUsageInOrExpression_main.ts, 5, 3))
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInOrExpression_main.ts, 0, 63))
var d2: IHasVisualizationModel = i || moduleA;
->d2 : IHasVisualizationModel
->IHasVisualizationModel : IHasVisualizationModel
+>d2 : IHasVisualizationModel, Symbol(d2, Decl(aliasUsageInOrExpression_main.ts, 7, 3), Decl(aliasUsageInOrExpression_main.ts, 8, 3))
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInOrExpression_main.ts, 1, 61))
>i || moduleA : typeof moduleA
->i : IHasVisualizationModel
->moduleA : typeof moduleA
+>i : IHasVisualizationModel, Symbol(i, Decl(aliasUsageInOrExpression_main.ts, 5, 3))
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInOrExpression_main.ts, 0, 63))
var d2: IHasVisualizationModel = moduleA || i;
->d2 : IHasVisualizationModel
->IHasVisualizationModel : IHasVisualizationModel
+>d2 : IHasVisualizationModel, Symbol(d2, Decl(aliasUsageInOrExpression_main.ts, 7, 3), Decl(aliasUsageInOrExpression_main.ts, 8, 3))
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInOrExpression_main.ts, 1, 61))
>moduleA || i : typeof moduleA
->moduleA : typeof moduleA
->i : IHasVisualizationModel
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInOrExpression_main.ts, 0, 63))
+>i : IHasVisualizationModel, Symbol(i, Decl(aliasUsageInOrExpression_main.ts, 5, 3))
var e: { x: IHasVisualizationModel } = <{ x: IHasVisualizationModel }>null || { x: moduleA };
->e : { x: IHasVisualizationModel; }
->x : IHasVisualizationModel
->IHasVisualizationModel : IHasVisualizationModel
+>e : { x: IHasVisualizationModel; }, Symbol(e, Decl(aliasUsageInOrExpression_main.ts, 9, 3))
+>x : IHasVisualizationModel, Symbol(x, Decl(aliasUsageInOrExpression_main.ts, 9, 8))
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInOrExpression_main.ts, 1, 61))
><{ x: IHasVisualizationModel }>null || { x: moduleA } : { x: IHasVisualizationModel; }
><{ x: IHasVisualizationModel }>null : { x: IHasVisualizationModel; }
->x : IHasVisualizationModel
->IHasVisualizationModel : IHasVisualizationModel
+>x : IHasVisualizationModel, Symbol(x, Decl(aliasUsageInOrExpression_main.ts, 9, 41))
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInOrExpression_main.ts, 1, 61))
+>null : null
>{ x: moduleA } : { x: typeof moduleA; }
->x : typeof moduleA
->moduleA : typeof moduleA
+>x : typeof moduleA, Symbol(x, Decl(aliasUsageInOrExpression_main.ts, 9, 79))
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInOrExpression_main.ts, 0, 63))
var f: { x: IHasVisualizationModel } = <{ x: IHasVisualizationModel }>null ? { x: moduleA } : null;
->f : { x: IHasVisualizationModel; }
->x : IHasVisualizationModel
->IHasVisualizationModel : IHasVisualizationModel
+>f : { x: IHasVisualizationModel; }, Symbol(f, Decl(aliasUsageInOrExpression_main.ts, 10, 3))
+>x : IHasVisualizationModel, Symbol(x, Decl(aliasUsageInOrExpression_main.ts, 10, 8))
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInOrExpression_main.ts, 1, 61))
><{ x: IHasVisualizationModel }>null ? { x: moduleA } : null : { x: typeof moduleA; }
><{ x: IHasVisualizationModel }>null : { x: IHasVisualizationModel; }
->x : IHasVisualizationModel
->IHasVisualizationModel : IHasVisualizationModel
+>x : IHasVisualizationModel, Symbol(x, Decl(aliasUsageInOrExpression_main.ts, 10, 41))
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInOrExpression_main.ts, 1, 61))
+>null : null
>{ x: moduleA } : { x: typeof moduleA; }
->x : typeof moduleA
->moduleA : typeof moduleA
+>x : typeof moduleA, Symbol(x, Decl(aliasUsageInOrExpression_main.ts, 10, 78))
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInOrExpression_main.ts, 0, 63))
+>null : null
=== tests/cases/compiler/aliasUsageInOrExpression_backbone.ts ===
export class Model {
->Model : Model
+>Model : Model, Symbol(Model, Decl(aliasUsageInOrExpression_backbone.ts, 0, 0))
public someData: string;
->someData : string
+>someData : string, Symbol(someData, Decl(aliasUsageInOrExpression_backbone.ts, 0, 20))
}
=== tests/cases/compiler/aliasUsageInOrExpression_moduleA.ts ===
import Backbone = require("aliasUsageInOrExpression_backbone");
->Backbone : typeof Backbone
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInOrExpression_moduleA.ts, 0, 0))
export class VisualizationModel extends Backbone.Model {
->VisualizationModel : VisualizationModel
->Backbone : typeof Backbone
->Model : Backbone.Model
+>VisualizationModel : VisualizationModel, Symbol(VisualizationModel, Decl(aliasUsageInOrExpression_moduleA.ts, 0, 63))
+>Backbone.Model : any, Symbol(Backbone.Model, Decl(aliasUsageInOrExpression_backbone.ts, 0, 0))
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInOrExpression_moduleA.ts, 0, 0))
+>Model : Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsageInOrExpression_backbone.ts, 0, 0))
// interesting stuff here
}
diff --git a/tests/baselines/reference/aliasUsageInTypeArgumentOfExtendsClause.types b/tests/baselines/reference/aliasUsageInTypeArgumentOfExtendsClause.types
index 72f0aaf9e20..aef12f4fb23 100644
--- a/tests/baselines/reference/aliasUsageInTypeArgumentOfExtendsClause.types
+++ b/tests/baselines/reference/aliasUsageInTypeArgumentOfExtendsClause.types
@@ -1,52 +1,54 @@
=== tests/cases/compiler/aliasUsageInTypeArgumentOfExtendsClause_main.ts ===
import Backbone = require("aliasUsageInTypeArgumentOfExtendsClause_backbone");
->Backbone : typeof Backbone
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInTypeArgumentOfExtendsClause_main.ts, 0, 0))
import moduleA = require("aliasUsageInTypeArgumentOfExtendsClause_moduleA");
->moduleA : typeof moduleA
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInTypeArgumentOfExtendsClause_main.ts, 0, 78))
interface IHasVisualizationModel {
->IHasVisualizationModel : IHasVisualizationModel
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInTypeArgumentOfExtendsClause_main.ts, 1, 76))
VisualizationModel: typeof Backbone.Model;
->VisualizationModel : typeof Backbone.Model
->Backbone : typeof Backbone
->Model : typeof Backbone.Model
+>VisualizationModel : typeof Backbone.Model, Symbol(VisualizationModel, Decl(aliasUsageInTypeArgumentOfExtendsClause_main.ts, 2, 34))
+>Backbone.Model : typeof Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsageInTypeArgumentOfExtendsClause_backbone.ts, 0, 0))
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInTypeArgumentOfExtendsClause_main.ts, 0, 0))
+>Model : typeof Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsageInTypeArgumentOfExtendsClause_backbone.ts, 0, 0))
}
class C {
->C : C
->T : T
->IHasVisualizationModel : IHasVisualizationModel
+>C : C, Symbol(C, Decl(aliasUsageInTypeArgumentOfExtendsClause_main.ts, 4, 1))
+>T : T, Symbol(T, Decl(aliasUsageInTypeArgumentOfExtendsClause_main.ts, 5, 8))
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInTypeArgumentOfExtendsClause_main.ts, 1, 76))
x: T;
->x : T
->T : T
+>x : T, Symbol(x, Decl(aliasUsageInTypeArgumentOfExtendsClause_main.ts, 5, 43))
+>T : T, Symbol(T, Decl(aliasUsageInTypeArgumentOfExtendsClause_main.ts, 5, 8))
}
class D extends C {
->D : D
->C : C
->IHasVisualizationModel : IHasVisualizationModel
+>D : D, Symbol(D, Decl(aliasUsageInTypeArgumentOfExtendsClause_main.ts, 7, 1))
+>C : C, Symbol(C, Decl(aliasUsageInTypeArgumentOfExtendsClause_main.ts, 4, 1))
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInTypeArgumentOfExtendsClause_main.ts, 1, 76))
x = moduleA;
->x : typeof moduleA
->moduleA : typeof moduleA
+>x : typeof moduleA, Symbol(x, Decl(aliasUsageInTypeArgumentOfExtendsClause_main.ts, 8, 43))
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInTypeArgumentOfExtendsClause_main.ts, 0, 78))
}
=== tests/cases/compiler/aliasUsageInTypeArgumentOfExtendsClause_backbone.ts ===
export class Model {
->Model : Model
+>Model : Model, Symbol(Model, Decl(aliasUsageInTypeArgumentOfExtendsClause_backbone.ts, 0, 0))
public someData: string;
->someData : string
+>someData : string, Symbol(someData, Decl(aliasUsageInTypeArgumentOfExtendsClause_backbone.ts, 0, 20))
}
=== tests/cases/compiler/aliasUsageInTypeArgumentOfExtendsClause_moduleA.ts ===
import Backbone = require("aliasUsageInTypeArgumentOfExtendsClause_backbone");
->Backbone : typeof Backbone
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInTypeArgumentOfExtendsClause_moduleA.ts, 0, 0))
export class VisualizationModel extends Backbone.Model {
->VisualizationModel : VisualizationModel
->Backbone : typeof Backbone
->Model : Backbone.Model
+>VisualizationModel : VisualizationModel, Symbol(VisualizationModel, Decl(aliasUsageInTypeArgumentOfExtendsClause_moduleA.ts, 0, 78))
+>Backbone.Model : any, Symbol(Backbone.Model, Decl(aliasUsageInTypeArgumentOfExtendsClause_backbone.ts, 0, 0))
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInTypeArgumentOfExtendsClause_moduleA.ts, 0, 0))
+>Model : Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsageInTypeArgumentOfExtendsClause_backbone.ts, 0, 0))
// interesting stuff here
}
diff --git a/tests/baselines/reference/aliasUsageInVarAssignment.types b/tests/baselines/reference/aliasUsageInVarAssignment.types
index 6b1c097ad97..b31cd522978 100644
--- a/tests/baselines/reference/aliasUsageInVarAssignment.types
+++ b/tests/baselines/reference/aliasUsageInVarAssignment.types
@@ -1,43 +1,45 @@
=== tests/cases/compiler/aliasUsageInVarAssignment_main.ts ===
import Backbone = require("aliasUsageInVarAssignment_backbone");
->Backbone : typeof Backbone
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInVarAssignment_main.ts, 0, 0))
import moduleA = require("aliasUsageInVarAssignment_moduleA");
->moduleA : typeof moduleA
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInVarAssignment_main.ts, 0, 64))
interface IHasVisualizationModel {
->IHasVisualizationModel : IHasVisualizationModel
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInVarAssignment_main.ts, 1, 62))
VisualizationModel: typeof Backbone.Model;
->VisualizationModel : typeof Backbone.Model
->Backbone : typeof Backbone
->Model : typeof Backbone.Model
+>VisualizationModel : typeof Backbone.Model, Symbol(VisualizationModel, Decl(aliasUsageInVarAssignment_main.ts, 2, 34))
+>Backbone.Model : typeof Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsageInVarAssignment_backbone.ts, 0, 0))
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInVarAssignment_main.ts, 0, 0))
+>Model : typeof Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsageInVarAssignment_backbone.ts, 0, 0))
}
var i: IHasVisualizationModel;
->i : IHasVisualizationModel
->IHasVisualizationModel : IHasVisualizationModel
+>i : IHasVisualizationModel, Symbol(i, Decl(aliasUsageInVarAssignment_main.ts, 5, 3))
+>IHasVisualizationModel : IHasVisualizationModel, Symbol(IHasVisualizationModel, Decl(aliasUsageInVarAssignment_main.ts, 1, 62))
var m: typeof moduleA = i;
->m : typeof moduleA
->moduleA : typeof moduleA
->i : IHasVisualizationModel
+>m : typeof moduleA, Symbol(m, Decl(aliasUsageInVarAssignment_main.ts, 6, 3))
+>moduleA : typeof moduleA, Symbol(moduleA, Decl(aliasUsageInVarAssignment_main.ts, 0, 64))
+>i : IHasVisualizationModel, Symbol(i, Decl(aliasUsageInVarAssignment_main.ts, 5, 3))
=== tests/cases/compiler/aliasUsageInVarAssignment_backbone.ts ===
export class Model {
->Model : Model
+>Model : Model, Symbol(Model, Decl(aliasUsageInVarAssignment_backbone.ts, 0, 0))
public someData: string;
->someData : string
+>someData : string, Symbol(someData, Decl(aliasUsageInVarAssignment_backbone.ts, 0, 20))
}
=== tests/cases/compiler/aliasUsageInVarAssignment_moduleA.ts ===
import Backbone = require("aliasUsageInVarAssignment_backbone");
->Backbone : typeof Backbone
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInVarAssignment_moduleA.ts, 0, 0))
export class VisualizationModel extends Backbone.Model {
->VisualizationModel : VisualizationModel
->Backbone : typeof Backbone
->Model : Backbone.Model
+>VisualizationModel : VisualizationModel, Symbol(VisualizationModel, Decl(aliasUsageInVarAssignment_moduleA.ts, 0, 64))
+>Backbone.Model : any, Symbol(Backbone.Model, Decl(aliasUsageInVarAssignment_backbone.ts, 0, 0))
+>Backbone : typeof Backbone, Symbol(Backbone, Decl(aliasUsageInVarAssignment_moduleA.ts, 0, 0))
+>Model : Backbone.Model, Symbol(Backbone.Model, Decl(aliasUsageInVarAssignment_backbone.ts, 0, 0))
// interesting stuff here
}
diff --git a/tests/baselines/reference/aliasUsedAsNameValue.types b/tests/baselines/reference/aliasUsedAsNameValue.types
index b8d92f28496..fc006f03a1b 100644
--- a/tests/baselines/reference/aliasUsedAsNameValue.types
+++ b/tests/baselines/reference/aliasUsedAsNameValue.types
@@ -2,30 +2,31 @@
///
///
import mod = require("aliasUsedAsNameValue_0");
->mod : typeof mod
+>mod : typeof mod, Symbol(mod, Decl(aliasUsedAsNameValue_2.ts, 0, 0))
import b = require("aliasUsedAsNameValue_1");
->b : typeof b
+>b : typeof b, Symbol(b, Decl(aliasUsedAsNameValue_2.ts, 2, 47))
export var a = function () {
->a : () => void
+>a : () => void, Symbol(a, Decl(aliasUsedAsNameValue_2.ts, 5, 10))
>function () { //var x = mod.id; // TODO needed hack that mod is loaded b.b(mod);} : () => void
//var x = mod.id; // TODO needed hack that mod is loaded
b.b(mod);
>b.b(mod) : any
->b.b : (a: any) => any
->b : typeof b
->b : (a: any) => any
->mod : typeof mod
+>b.b : (a: any) => any, Symbol(b.b, Decl(aliasUsedAsNameValue_1.ts, 0, 0))
+>b : typeof b, Symbol(b, Decl(aliasUsedAsNameValue_2.ts, 2, 47))
+>b : (a: any) => any, Symbol(b.b, Decl(aliasUsedAsNameValue_1.ts, 0, 0))
+>mod : typeof mod, Symbol(mod, Decl(aliasUsedAsNameValue_2.ts, 0, 0))
}
=== tests/cases/compiler/aliasUsedAsNameValue_0.ts ===
export var id: number;
->id : number
+>id : number, Symbol(id, Decl(aliasUsedAsNameValue_0.ts, 0, 10))
=== tests/cases/compiler/aliasUsedAsNameValue_1.ts ===
export function b(a: any): any { return null; }
->b : (a: any) => any
->a : any
+>b : (a: any) => any, Symbol(b, Decl(aliasUsedAsNameValue_1.ts, 0, 0))
+>a : any, Symbol(a, Decl(aliasUsedAsNameValue_1.ts, 0, 18))
+>null : null
diff --git a/tests/baselines/reference/ambientClassDeclarationWithExtends.types b/tests/baselines/reference/ambientClassDeclarationWithExtends.types
index 7609856882b..b8d3df42f2b 100644
--- a/tests/baselines/reference/ambientClassDeclarationWithExtends.types
+++ b/tests/baselines/reference/ambientClassDeclarationWithExtends.types
@@ -1,8 +1,8 @@
=== tests/cases/compiler/ambientClassDeclarationWithExtends.ts ===
declare class A { }
->A : A
+>A : A, Symbol(A, Decl(ambientClassDeclarationWithExtends.ts, 0, 0))
declare class B extends A { }
->B : B
->A : A
+>B : B, Symbol(B, Decl(ambientClassDeclarationWithExtends.ts, 0, 19))
+>A : A, Symbol(A, Decl(ambientClassDeclarationWithExtends.ts, 0, 0))
diff --git a/tests/baselines/reference/ambientDeclarations.types b/tests/baselines/reference/ambientDeclarations.types
index 38814405521..0bc407c7ef4 100644
--- a/tests/baselines/reference/ambientDeclarations.types
+++ b/tests/baselines/reference/ambientDeclarations.types
@@ -1,168 +1,170 @@
=== tests/cases/conformance/ambient/ambientDeclarations.ts ===
// Ambient variable without type annotation
declare var n;
->n : any
+>n : any, Symbol(n, Decl(ambientDeclarations.ts, 1, 11))
// Ambient variable with type annotation
declare var m: string;
->m : string
+>m : string, Symbol(m, Decl(ambientDeclarations.ts, 4, 11))
// Ambient function with no type annotations
declare function fn1();
->fn1 : () => any
+>fn1 : () => any, Symbol(fn1, Decl(ambientDeclarations.ts, 4, 22))
// Ambient function with type annotations
declare function fn2(n: string): number;
->fn2 : (n: string) => number
->n : string
+>fn2 : (n: string) => number, Symbol(fn2, Decl(ambientDeclarations.ts, 7, 23))
+>n : string, Symbol(n, Decl(ambientDeclarations.ts, 10, 21))
// Ambient function with valid overloads
declare function fn3(n: string): number;
->fn3 : (n: string) => number
->n : string
+>fn3 : (n: string) => number, Symbol(fn3, Decl(ambientDeclarations.ts, 10, 40))
+>n : string, Symbol(n, Decl(ambientDeclarations.ts, 13, 21))
declare function fn4(n: number, y: number): string;
->fn4 : (n: number, y: number) => string
->n : number
->y : number
+>fn4 : (n: number, y: number) => string, Symbol(fn4, Decl(ambientDeclarations.ts, 13, 40))
+>n : number, Symbol(n, Decl(ambientDeclarations.ts, 14, 21))
+>y : number, Symbol(y, Decl(ambientDeclarations.ts, 14, 31))
// Ambient function with optional parameters
declare function fn5(x, y?);
->fn5 : (x: any, y?: any) => any
->x : any
->y : any
+>fn5 : (x: any, y?: any) => any, Symbol(fn5, Decl(ambientDeclarations.ts, 14, 51))
+>x : any, Symbol(x, Decl(ambientDeclarations.ts, 17, 21))
+>y : any, Symbol(y, Decl(ambientDeclarations.ts, 17, 23))
declare function fn6(e?);
->fn6 : (e?: any) => any
->e : any
+>fn6 : (e?: any) => any, Symbol(fn6, Decl(ambientDeclarations.ts, 17, 28))
+>e : any, Symbol(e, Decl(ambientDeclarations.ts, 18, 21))
declare function fn7(x, y?, ...z);
->fn7 : (x: any, y?: any, ...z: any[]) => any
->x : any
->y : any
->z : any[]
+>fn7 : (x: any, y?: any, ...z: any[]) => any, Symbol(fn7, Decl(ambientDeclarations.ts, 18, 25))
+>x : any, Symbol(x, Decl(ambientDeclarations.ts, 19, 21))
+>y : any, Symbol(y, Decl(ambientDeclarations.ts, 19, 23))
+>z : any[], Symbol(z, Decl(ambientDeclarations.ts, 19, 27))
declare function fn8(y?, ...z: number[]);
->fn8 : (y?: any, ...z: number[]) => any
->y : any
->z : number[]
+>fn8 : (y?: any, ...z: number[]) => any, Symbol(fn8, Decl(ambientDeclarations.ts, 19, 34))
+>y : any, Symbol(y, Decl(ambientDeclarations.ts, 20, 21))
+>z : number[], Symbol(z, Decl(ambientDeclarations.ts, 20, 24))
declare function fn9(...q: {}[]);
->fn9 : (...q: {}[]) => any
->q : {}[]
+>fn9 : (...q: {}[]) => any, Symbol(fn9, Decl(ambientDeclarations.ts, 20, 41))
+>q : {}[], Symbol(q, Decl(ambientDeclarations.ts, 21, 21))
declare function fn10(...q: T[]);
->fn10 : (...q: T[]) => any
->T : T
->q : T[]
->T : T
+>fn10 : (...q: T[]) => any, Symbol(fn10, Decl(ambientDeclarations.ts, 21, 33))
+>T : T, Symbol(T, Decl(ambientDeclarations.ts, 22, 22))
+>q : T[], Symbol(q, Decl(ambientDeclarations.ts, 22, 25))
+>T : T, Symbol(T, Decl(ambientDeclarations.ts, 22, 22))
// Ambient class
declare class cls {
->cls : cls
+>cls : cls, Symbol(cls, Decl(ambientDeclarations.ts, 22, 36))
constructor();
method(): cls;
->method : () => cls
->cls : cls
+>method : () => cls, Symbol(method, Decl(ambientDeclarations.ts, 26, 18))
+>cls : cls, Symbol(cls, Decl(ambientDeclarations.ts, 22, 36))
static static(p): number;
->static : (p: any) => number
->p : any
+>static : (p: any) => number, Symbol(cls.static, Decl(ambientDeclarations.ts, 27, 18))
+>p : any, Symbol(p, Decl(ambientDeclarations.ts, 28, 18))
static q;
->q : any
+>q : any, Symbol(cls.q, Decl(ambientDeclarations.ts, 28, 29))
private fn();
->fn : () => any
+>fn : () => any, Symbol(fn, Decl(ambientDeclarations.ts, 29, 13))
private static fns();
->fns : () => any
+>fns : () => any, Symbol(cls.fns, Decl(ambientDeclarations.ts, 30, 17))
}
// Ambient enum
declare enum E1 {
->E1 : E1
+>E1 : E1, Symbol(E1, Decl(ambientDeclarations.ts, 32, 1))
x,
->x : E1
+>x : E1, Symbol(E1.x, Decl(ambientDeclarations.ts, 35, 17))
y,
->y : E1
+>y : E1, Symbol(E1.y, Decl(ambientDeclarations.ts, 36, 6))
z
->z : E1
+>z : E1, Symbol(E1.z, Decl(ambientDeclarations.ts, 37, 6))
}
// Ambient enum with integer literal initializer
declare enum E2 {
->E2 : E2
+>E2 : E2, Symbol(E2, Decl(ambientDeclarations.ts, 39, 1))
q,
->q : E2
+>q : E2, Symbol(E2.q, Decl(ambientDeclarations.ts, 42, 17))
a = 1,
->a : E2
+>a : E2, Symbol(E2.a, Decl(ambientDeclarations.ts, 43, 6))
+>1 : number
b,
->b : E2
+>b : E2, Symbol(E2.b, Decl(ambientDeclarations.ts, 44, 10))
c = 2,
->c : E2
+>c : E2, Symbol(E2.c, Decl(ambientDeclarations.ts, 45, 6))
+>2 : number
d
->d : E2
+>d : E2, Symbol(E2.d, Decl(ambientDeclarations.ts, 46, 10))
}
// Ambient enum members are always exported with or without export keyword
declare enum E3 {
->E3 : E3
+>E3 : E3, Symbol(E3, Decl(ambientDeclarations.ts, 48, 1), Decl(ambientDeclarations.ts, 53, 1))
A
->A : E3
+>A : E3, Symbol(E3.A, Decl(ambientDeclarations.ts, 51, 17))
}
declare module E3 {
->E3 : typeof E3
+>E3 : typeof E3, Symbol(E3, Decl(ambientDeclarations.ts, 48, 1), Decl(ambientDeclarations.ts, 53, 1))
var B;
->B : any
+>B : any, Symbol(B, Decl(ambientDeclarations.ts, 55, 7))
}
var x = E3.B;
->x : any
->E3.B : any
->E3 : typeof E3
->B : any
+>x : any, Symbol(x, Decl(ambientDeclarations.ts, 57, 3))
+>E3.B : any, Symbol(E3.B, Decl(ambientDeclarations.ts, 55, 7))
+>E3 : typeof E3, Symbol(E3, Decl(ambientDeclarations.ts, 48, 1), Decl(ambientDeclarations.ts, 53, 1))
+>B : any, Symbol(E3.B, Decl(ambientDeclarations.ts, 55, 7))
// Ambient module
declare module M1 {
->M1 : typeof M1
+>M1 : typeof M1, Symbol(M1, Decl(ambientDeclarations.ts, 57, 13))
var x;
->x : any
+>x : any, Symbol(x, Decl(ambientDeclarations.ts, 61, 7))
function fn(): number;
->fn : () => number
+>fn : () => number, Symbol(fn, Decl(ambientDeclarations.ts, 61, 10))
}
// Ambient module members are always exported with or without export keyword
var p = M1.x;
->p : any
->M1.x : any
->M1 : typeof M1
->x : any
+>p : any, Symbol(p, Decl(ambientDeclarations.ts, 66, 3))
+>M1.x : any, Symbol(M1.x, Decl(ambientDeclarations.ts, 61, 7))
+>M1 : typeof M1, Symbol(M1, Decl(ambientDeclarations.ts, 57, 13))
+>x : any, Symbol(M1.x, Decl(ambientDeclarations.ts, 61, 7))
var q = M1.fn();
->q : number
+>q : number, Symbol(q, Decl(ambientDeclarations.ts, 67, 3))
>M1.fn() : number
->M1.fn : () => number
->M1 : typeof M1
->fn : () => number
+>M1.fn : () => number, Symbol(M1.fn, Decl(ambientDeclarations.ts, 61, 10))
+>M1 : typeof M1, Symbol(M1, Decl(ambientDeclarations.ts, 57, 13))
+>fn : () => number, Symbol(M1.fn, Decl(ambientDeclarations.ts, 61, 10))
// Ambient external module in the global module
// Ambient external module with a string literal name that is a top level external module name
declare module 'external1' {
var q;
->q : any
+>q : any, Symbol(q, Decl(ambientDeclarations.ts, 72, 7))
}
diff --git a/tests/baselines/reference/ambientEnumElementInitializer1.types b/tests/baselines/reference/ambientEnumElementInitializer1.types
index da80015cbd5..7239ccac246 100644
--- a/tests/baselines/reference/ambientEnumElementInitializer1.types
+++ b/tests/baselines/reference/ambientEnumElementInitializer1.types
@@ -1,7 +1,8 @@
=== tests/cases/compiler/ambientEnumElementInitializer1.ts ===
declare enum E {
->E : E
+>E : E, Symbol(E, Decl(ambientEnumElementInitializer1.ts, 0, 0))
e = 3
->e : E
+>e : E, Symbol(E.e, Decl(ambientEnumElementInitializer1.ts, 0, 16))
+>3 : number
}
diff --git a/tests/baselines/reference/ambientEnumElementInitializer2.types b/tests/baselines/reference/ambientEnumElementInitializer2.types
index cb1414630b9..61ef74cb6bf 100644
--- a/tests/baselines/reference/ambientEnumElementInitializer2.types
+++ b/tests/baselines/reference/ambientEnumElementInitializer2.types
@@ -1,8 +1,9 @@
=== tests/cases/compiler/ambientEnumElementInitializer2.ts ===
declare enum E {
->E : E
+>E : E, Symbol(E, Decl(ambientEnumElementInitializer2.ts, 0, 0))
e = -3 // Negative
->e : E
+>e : E, Symbol(E.e, Decl(ambientEnumElementInitializer2.ts, 0, 16))
>-3 : number
+>3 : number
}
diff --git a/tests/baselines/reference/ambientEnumElementInitializer4.types b/tests/baselines/reference/ambientEnumElementInitializer4.types
index 566c03103a1..ea7664ae6c6 100644
--- a/tests/baselines/reference/ambientEnumElementInitializer4.types
+++ b/tests/baselines/reference/ambientEnumElementInitializer4.types
@@ -1,7 +1,8 @@
=== tests/cases/compiler/ambientEnumElementInitializer4.ts ===
declare enum E {
->E : E
+>E : E, Symbol(E, Decl(ambientEnumElementInitializer4.ts, 0, 0))
e = 0xA
->e : E
+>e : E, Symbol(E.e, Decl(ambientEnumElementInitializer4.ts, 0, 16))
+>0xA : number
}
diff --git a/tests/baselines/reference/ambientEnumElementInitializer5.types b/tests/baselines/reference/ambientEnumElementInitializer5.types
index 3b6198f0e24..cb6fdc29fc1 100644
--- a/tests/baselines/reference/ambientEnumElementInitializer5.types
+++ b/tests/baselines/reference/ambientEnumElementInitializer5.types
@@ -1,8 +1,9 @@
=== tests/cases/compiler/ambientEnumElementInitializer5.ts ===
declare enum E {
->E : E
+>E : E, Symbol(E, Decl(ambientEnumElementInitializer5.ts, 0, 0))
e = -0xA
->e : E
+>e : E, Symbol(E.e, Decl(ambientEnumElementInitializer5.ts, 0, 16))
>-0xA : number
+>0xA : number
}
diff --git a/tests/baselines/reference/ambientEnumElementInitializer6.types b/tests/baselines/reference/ambientEnumElementInitializer6.types
index 3a38fd6912d..1756629e4f2 100644
--- a/tests/baselines/reference/ambientEnumElementInitializer6.types
+++ b/tests/baselines/reference/ambientEnumElementInitializer6.types
@@ -1,11 +1,12 @@
=== tests/cases/compiler/ambientEnumElementInitializer6.ts ===
declare module M {
->M : typeof M
+>M : typeof M, Symbol(M, Decl(ambientEnumElementInitializer6.ts, 0, 0))
enum E {
->E : E
+>E : E, Symbol(E, Decl(ambientEnumElementInitializer6.ts, 0, 18))
e = 3
->e : E
+>e : E, Symbol(E.e, Decl(ambientEnumElementInitializer6.ts, 1, 12))
+>3 : number
}
}
diff --git a/tests/baselines/reference/ambientExternalModuleMerging.types b/tests/baselines/reference/ambientExternalModuleMerging.types
index 1c1be0fd256..716cc64f248 100644
--- a/tests/baselines/reference/ambientExternalModuleMerging.types
+++ b/tests/baselines/reference/ambientExternalModuleMerging.types
@@ -1,28 +1,28 @@
=== tests/cases/conformance/ambient/ambientExternalModuleMerging_use.ts ===
import M = require("M");
->M : typeof M
+>M : typeof M, Symbol(M, Decl(ambientExternalModuleMerging_use.ts, 0, 0))
// Should be strings
var x = M.x;
->x : string
->M.x : string
->M : typeof M
->x : string
+>x : string, Symbol(x, Decl(ambientExternalModuleMerging_use.ts, 2, 3))
+>M.x : string, Symbol(M.x, Decl(ambientExternalModuleMerging_declare.ts, 1, 14))
+>M : typeof M, Symbol(M, Decl(ambientExternalModuleMerging_use.ts, 0, 0))
+>x : string, Symbol(M.x, Decl(ambientExternalModuleMerging_declare.ts, 1, 14))
var y = M.y;
->y : string
->M.y : string
->M : typeof M
->y : string
+>y : string, Symbol(y, Decl(ambientExternalModuleMerging_use.ts, 3, 3))
+>M.y : string, Symbol(M.y, Decl(ambientExternalModuleMerging_declare.ts, 6, 14))
+>M : typeof M, Symbol(M, Decl(ambientExternalModuleMerging_use.ts, 0, 0))
+>y : string, Symbol(M.y, Decl(ambientExternalModuleMerging_declare.ts, 6, 14))
=== tests/cases/conformance/ambient/ambientExternalModuleMerging_declare.ts ===
declare module "M" {
export var x: string;
->x : string
+>x : string, Symbol(x, Decl(ambientExternalModuleMerging_declare.ts, 1, 14))
}
// Merge
declare module "M" {
export var y: string;
->y : string
+>y : string, Symbol(y, Decl(ambientExternalModuleMerging_declare.ts, 6, 14))
}
diff --git a/tests/baselines/reference/ambientExternalModuleReopen.types b/tests/baselines/reference/ambientExternalModuleReopen.types
index 842d634344c..fdc40f4cd4b 100644
--- a/tests/baselines/reference/ambientExternalModuleReopen.types
+++ b/tests/baselines/reference/ambientExternalModuleReopen.types
@@ -1,9 +1,9 @@
=== tests/cases/compiler/ambientExternalModuleReopen.ts ===
declare module "fs" {
var x: string;
->x : string
+>x : string, Symbol(x, Decl(ambientExternalModuleReopen.ts, 1, 7))
}
declare module 'fs' {
var y: number;
->y : number
+>y : number, Symbol(y, Decl(ambientExternalModuleReopen.ts, 4, 7))
}
diff --git a/tests/baselines/reference/ambientExternalModuleWithInternalImportDeclaration.types b/tests/baselines/reference/ambientExternalModuleWithInternalImportDeclaration.types
index 4e9043d1b75..2bd3929e286 100644
--- a/tests/baselines/reference/ambientExternalModuleWithInternalImportDeclaration.types
+++ b/tests/baselines/reference/ambientExternalModuleWithInternalImportDeclaration.types
@@ -1,33 +1,33 @@
=== tests/cases/compiler/ambientExternalModuleWithInternalImportDeclaration_1.ts ===
///
import A = require('M');
->A : typeof A
+>A : typeof A, Symbol(A, Decl(ambientExternalModuleWithInternalImportDeclaration_1.ts, 0, 0))
var c = new A();
->c : A
+>c : A, Symbol(c, Decl(ambientExternalModuleWithInternalImportDeclaration_1.ts, 2, 3))
>new A() : A
->A : typeof A
+>A : typeof A, Symbol(A, Decl(ambientExternalModuleWithInternalImportDeclaration_1.ts, 0, 0))
=== tests/cases/compiler/ambientExternalModuleWithInternalImportDeclaration_0.ts ===
declare module 'M' {
module C {
->C : typeof C
+>C : typeof C, Symbol(C, Decl(ambientExternalModuleWithInternalImportDeclaration_0.ts, 0, 20), Decl(ambientExternalModuleWithInternalImportDeclaration_0.ts, 3, 5))
export var f: number;
->f : number
+>f : number, Symbol(f, Decl(ambientExternalModuleWithInternalImportDeclaration_0.ts, 2, 18))
}
class C {
->C : C
+>C : C, Symbol(C, Decl(ambientExternalModuleWithInternalImportDeclaration_0.ts, 0, 20), Decl(ambientExternalModuleWithInternalImportDeclaration_0.ts, 3, 5))
foo(): void;
->foo : () => void
+>foo : () => void, Symbol(foo, Decl(ambientExternalModuleWithInternalImportDeclaration_0.ts, 4, 13))
}
import X = C;
->X : typeof C
->C : C
+>X : typeof C, Symbol(X, Decl(ambientExternalModuleWithInternalImportDeclaration_0.ts, 6, 5))
+>C : C, Symbol(C, Decl(ambientExternalModuleWithInternalImportDeclaration_0.ts, 0, 20), Decl(ambientExternalModuleWithInternalImportDeclaration_0.ts, 3, 5))
export = X;
->X : C
+>X : C, Symbol(X, Decl(ambientExternalModuleWithInternalImportDeclaration_0.ts, 6, 5))
}
diff --git a/tests/baselines/reference/ambientExternalModuleWithoutInternalImportDeclaration.types b/tests/baselines/reference/ambientExternalModuleWithoutInternalImportDeclaration.types
index 0029817400b..7131f7bbe8b 100644
--- a/tests/baselines/reference/ambientExternalModuleWithoutInternalImportDeclaration.types
+++ b/tests/baselines/reference/ambientExternalModuleWithoutInternalImportDeclaration.types
@@ -1,29 +1,29 @@
=== tests/cases/compiler/ambientExternalModuleWithoutInternalImportDeclaration_1.ts ===
///
import A = require('M');
->A : typeof A
+>A : typeof A, Symbol(A, Decl(ambientExternalModuleWithoutInternalImportDeclaration_1.ts, 0, 0))
var c = new A();
->c : A
+>c : A, Symbol(c, Decl(ambientExternalModuleWithoutInternalImportDeclaration_1.ts, 2, 3))
>new A() : A
->A : typeof A
+>A : typeof A, Symbol(A, Decl(ambientExternalModuleWithoutInternalImportDeclaration_1.ts, 0, 0))
=== tests/cases/compiler/ambientExternalModuleWithoutInternalImportDeclaration_0.ts ===
declare module 'M' {
module C {
->C : typeof C
+>C : typeof C, Symbol(C, Decl(ambientExternalModuleWithoutInternalImportDeclaration_0.ts, 0, 20), Decl(ambientExternalModuleWithoutInternalImportDeclaration_0.ts, 3, 5))
export var f: number;
->f : number
+>f : number, Symbol(f, Decl(ambientExternalModuleWithoutInternalImportDeclaration_0.ts, 2, 18))
}
class C {
->C : C
+>C : C, Symbol(C, Decl(ambientExternalModuleWithoutInternalImportDeclaration_0.ts, 0, 20), Decl(ambientExternalModuleWithoutInternalImportDeclaration_0.ts, 3, 5))
foo(): void;
->foo : () => void
+>foo : () => void, Symbol(foo, Decl(ambientExternalModuleWithoutInternalImportDeclaration_0.ts, 4, 13))
}
export = C;
->C : C
+>C : C, Symbol(C, Decl(ambientExternalModuleWithoutInternalImportDeclaration_0.ts, 0, 20), Decl(ambientExternalModuleWithoutInternalImportDeclaration_0.ts, 3, 5))
}
diff --git a/tests/baselines/reference/ambientFundule.types b/tests/baselines/reference/ambientFundule.types
index edd2290859c..686c7c6fb85 100644
--- a/tests/baselines/reference/ambientFundule.types
+++ b/tests/baselines/reference/ambientFundule.types
@@ -1,12 +1,12 @@
=== tests/cases/compiler/ambientFundule.ts ===
declare function f();
->f : typeof f
+>f : typeof f, Symbol(f, Decl(ambientFundule.ts, 0, 0), Decl(ambientFundule.ts, 0, 21), Decl(ambientFundule.ts, 1, 26))
declare module f { var x }
->f : typeof f
->x : any
+>f : typeof f, Symbol(f, Decl(ambientFundule.ts, 0, 0), Decl(ambientFundule.ts, 0, 21), Decl(ambientFundule.ts, 1, 26))
+>x : any, Symbol(x, Decl(ambientFundule.ts, 1, 22))
declare function f(x);
->f : typeof f
->x : any
+>f : typeof f, Symbol(f, Decl(ambientFundule.ts, 0, 0), Decl(ambientFundule.ts, 0, 21), Decl(ambientFundule.ts, 1, 26))
+>x : any, Symbol(x, Decl(ambientFundule.ts, 2, 19))
diff --git a/tests/baselines/reference/ambientInsideNonAmbient.types b/tests/baselines/reference/ambientInsideNonAmbient.types
index ee654aee333..6ccc20aba93 100644
--- a/tests/baselines/reference/ambientInsideNonAmbient.types
+++ b/tests/baselines/reference/ambientInsideNonAmbient.types
@@ -1,38 +1,38 @@
=== tests/cases/conformance/ambient/ambientInsideNonAmbient.ts ===
module M {
->M : typeof M
+>M : typeof M, Symbol(M, Decl(ambientInsideNonAmbient.ts, 0, 0))
export declare var x;
->x : any
+>x : any, Symbol(x, Decl(ambientInsideNonAmbient.ts, 1, 22))
export declare function f();
->f : () => any
+>f : () => any, Symbol(f, Decl(ambientInsideNonAmbient.ts, 1, 25))
export declare class C { }
->C : C
+>C : C, Symbol(C, Decl(ambientInsideNonAmbient.ts, 2, 32))
export declare enum E { }
->E : E
+>E : E, Symbol(E, Decl(ambientInsideNonAmbient.ts, 3, 30))
export declare module M { }
->M : unknown
+>M : any, Symbol(M, Decl(ambientInsideNonAmbient.ts, 4, 29))
}
module M2 {
->M2 : typeof M2
+>M2 : typeof M2, Symbol(M2, Decl(ambientInsideNonAmbient.ts, 6, 1))
declare var x;
->x : any
+>x : any, Symbol(x, Decl(ambientInsideNonAmbient.ts, 9, 15))
declare function f();
->f : () => any
+>f : () => any, Symbol(f, Decl(ambientInsideNonAmbient.ts, 9, 18))
declare class C { }
->C : C
+>C : C, Symbol(C, Decl(ambientInsideNonAmbient.ts, 10, 25))
declare enum E { }
->E : E
+>E : E, Symbol(E, Decl(ambientInsideNonAmbient.ts, 11, 23))
declare module M { }
->M : unknown
+>M : any, Symbol(M, Decl(ambientInsideNonAmbient.ts, 12, 22))
}
diff --git a/tests/baselines/reference/ambientInsideNonAmbientExternalModule.types b/tests/baselines/reference/ambientInsideNonAmbientExternalModule.types
index bda7a61a7f3..698b963c78d 100644
--- a/tests/baselines/reference/ambientInsideNonAmbientExternalModule.types
+++ b/tests/baselines/reference/ambientInsideNonAmbientExternalModule.types
@@ -1,16 +1,16 @@
=== tests/cases/conformance/ambient/ambientInsideNonAmbientExternalModule.ts ===
export declare var x;
->x : any
+>x : any, Symbol(x, Decl(ambientInsideNonAmbientExternalModule.ts, 0, 18))
export declare function f();
->f : () => any
+>f : () => any, Symbol(f, Decl(ambientInsideNonAmbientExternalModule.ts, 0, 21))
export declare class C { }
->C : C
+>C : C, Symbol(C, Decl(ambientInsideNonAmbientExternalModule.ts, 1, 28))
export declare enum E { }
->E : E
+>E : E, Symbol(E, Decl(ambientInsideNonAmbientExternalModule.ts, 2, 26))
export declare module M { }
->M : unknown
+>M : any, Symbol(M, Decl(ambientInsideNonAmbientExternalModule.ts, 3, 25))
diff --git a/tests/baselines/reference/ambientModuleExports.types b/tests/baselines/reference/ambientModuleExports.types
index 3f096afa838..8149ab0c5f9 100644
--- a/tests/baselines/reference/ambientModuleExports.types
+++ b/tests/baselines/reference/ambientModuleExports.types
@@ -1,63 +1,63 @@
=== tests/cases/compiler/ambientModuleExports.ts ===
declare module Foo {
->Foo : typeof Foo
+>Foo : typeof Foo, Symbol(Foo, Decl(ambientModuleExports.ts, 0, 0))
function a():void;
->a : () => void
+>a : () => void, Symbol(a, Decl(ambientModuleExports.ts, 0, 20))
var b:number;
->b : number
+>b : number, Symbol(b, Decl(ambientModuleExports.ts, 2, 4))
class C {}
->C : C
+>C : C, Symbol(C, Decl(ambientModuleExports.ts, 2, 14))
}
Foo.a();
>Foo.a() : void
->Foo.a : () => void
->Foo : typeof Foo
->a : () => void
+>Foo.a : () => void, Symbol(Foo.a, Decl(ambientModuleExports.ts, 0, 20))
+>Foo : typeof Foo, Symbol(Foo, Decl(ambientModuleExports.ts, 0, 0))
+>a : () => void, Symbol(Foo.a, Decl(ambientModuleExports.ts, 0, 20))
Foo.b;
->Foo.b : number
->Foo : typeof Foo
->b : number
+>Foo.b : number, Symbol(Foo.b, Decl(ambientModuleExports.ts, 2, 4))
+>Foo : typeof Foo, Symbol(Foo, Decl(ambientModuleExports.ts, 0, 0))
+>b : number, Symbol(Foo.b, Decl(ambientModuleExports.ts, 2, 4))
var c = new Foo.C();
->c : Foo.C
+>c : Foo.C, Symbol(c, Decl(ambientModuleExports.ts, 8, 3))
>new Foo.C() : Foo.C
->Foo.C : typeof Foo.C
->Foo : typeof Foo
->C : typeof Foo.C
+>Foo.C : typeof Foo.C, Symbol(Foo.C, Decl(ambientModuleExports.ts, 2, 14))
+>Foo : typeof Foo, Symbol(Foo, Decl(ambientModuleExports.ts, 0, 0))
+>C : typeof Foo.C, Symbol(Foo.C, Decl(ambientModuleExports.ts, 2, 14))
declare module Foo2 {
->Foo2 : typeof Foo2
+>Foo2 : typeof Foo2, Symbol(Foo2, Decl(ambientModuleExports.ts, 8, 20))
export function a(): void;
->a : () => void
+>a : () => void, Symbol(a, Decl(ambientModuleExports.ts, 10, 21))
export var b: number;
->b : number
+>b : number, Symbol(b, Decl(ambientModuleExports.ts, 12, 14))
export class C { }
->C : C
+>C : C, Symbol(C, Decl(ambientModuleExports.ts, 12, 25))
}
Foo2.a();
>Foo2.a() : void
->Foo2.a : () => void
->Foo2 : typeof Foo2
->a : () => void
+>Foo2.a : () => void, Symbol(Foo2.a, Decl(ambientModuleExports.ts, 10, 21))
+>Foo2 : typeof Foo2, Symbol(Foo2, Decl(ambientModuleExports.ts, 8, 20))
+>a : () => void, Symbol(Foo2.a, Decl(ambientModuleExports.ts, 10, 21))
Foo2.b;
->Foo2.b : number
->Foo2 : typeof Foo2
->b : number
+>Foo2.b : number, Symbol(Foo2.b, Decl(ambientModuleExports.ts, 12, 14))
+>Foo2 : typeof Foo2, Symbol(Foo2, Decl(ambientModuleExports.ts, 8, 20))
+>b : number, Symbol(Foo2.b, Decl(ambientModuleExports.ts, 12, 14))
var c2 = new Foo2.C();
->c2 : Foo2.C
+>c2 : Foo2.C, Symbol(c2, Decl(ambientModuleExports.ts, 18, 3))
>new Foo2.C() : Foo2.C
->Foo2.C : typeof Foo2.C
->Foo2 : typeof Foo2
->C : typeof Foo2.C
+>Foo2.C : typeof Foo2.C, Symbol(Foo2.C, Decl(ambientModuleExports.ts, 12, 25))
+>Foo2 : typeof Foo2, Symbol(Foo2, Decl(ambientModuleExports.ts, 8, 20))
+>C : typeof Foo2.C, Symbol(Foo2.C, Decl(ambientModuleExports.ts, 12, 25))
diff --git a/tests/baselines/reference/ambientModuleWithClassDeclarationWithExtends.types b/tests/baselines/reference/ambientModuleWithClassDeclarationWithExtends.types
index 2708946518f..c2036fd70ae 100644
--- a/tests/baselines/reference/ambientModuleWithClassDeclarationWithExtends.types
+++ b/tests/baselines/reference/ambientModuleWithClassDeclarationWithExtends.types
@@ -1,11 +1,11 @@
=== tests/cases/compiler/ambientModuleWithClassDeclarationWithExtends.ts ===
declare module foo {
->foo : typeof foo
+>foo : typeof foo, Symbol(foo, Decl(ambientModuleWithClassDeclarationWithExtends.ts, 0, 0))
class A { }
->A : A
+>A : A, Symbol(A, Decl(ambientModuleWithClassDeclarationWithExtends.ts, 0, 20))
class B extends A { }
->B : B
->A : A
+>B : B, Symbol(B, Decl(ambientModuleWithClassDeclarationWithExtends.ts, 1, 15))
+>A : A, Symbol(A, Decl(ambientModuleWithClassDeclarationWithExtends.ts, 0, 20))
}
diff --git a/tests/baselines/reference/ambientModules.types b/tests/baselines/reference/ambientModules.types
index fe0aceef810..1484888e14e 100644
--- a/tests/baselines/reference/ambientModules.types
+++ b/tests/baselines/reference/ambientModules.types
@@ -1,14 +1,15 @@
=== tests/cases/compiler/ambientModules.ts ===
declare module Foo.Bar { export var foo; };
->Foo : typeof Foo
->Bar : typeof Bar
->foo : any
+>Foo : typeof Foo, Symbol(Foo, Decl(ambientModules.ts, 0, 0))
+>Bar : typeof Bar, Symbol(Bar, Decl(ambientModules.ts, 0, 19))
+>foo : any, Symbol(foo, Decl(ambientModules.ts, 0, 35))
Foo.Bar.foo = 5;
>Foo.Bar.foo = 5 : number
->Foo.Bar.foo : any
->Foo.Bar : typeof Foo.Bar
->Foo : typeof Foo
->Bar : typeof Foo.Bar
->foo : any
+>Foo.Bar.foo : any, Symbol(Foo.Bar.foo, Decl(ambientModules.ts, 0, 35))
+>Foo.Bar : typeof Foo.Bar, Symbol(Foo.Bar, Decl(ambientModules.ts, 0, 19))
+>Foo : typeof Foo, Symbol(Foo, Decl(ambientModules.ts, 0, 0))
+>Bar : typeof Foo.Bar, Symbol(Foo.Bar, Decl(ambientModules.ts, 0, 19))
+>foo : any, Symbol(Foo.Bar.foo, Decl(ambientModules.ts, 0, 35))
+>5 : number
diff --git a/tests/baselines/reference/ambiguousCallsWhereReturnTypesAgree.types b/tests/baselines/reference/ambiguousCallsWhereReturnTypesAgree.types
index 4e508ba2df5..16d4d6f7d40 100644
--- a/tests/baselines/reference/ambiguousCallsWhereReturnTypesAgree.types
+++ b/tests/baselines/reference/ambiguousCallsWhereReturnTypesAgree.types
@@ -1,78 +1,79 @@
=== tests/cases/compiler/ambiguousCallsWhereReturnTypesAgree.ts ===
class TestClass {
->TestClass : TestClass
+>TestClass : TestClass, Symbol(TestClass, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 0, 0))
public bar(x: string): void;
->bar : { (x: string): void; (x: string[]): void; }
->x : string
+>bar : { (x: string): void; (x: string[]): void; }, Symbol(bar, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 0, 17), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 1, 32), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 2, 34))
+>x : string, Symbol(x, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 1, 15))
public bar(x: string[]): void;
->bar : { (x: string): void; (x: string[]): void; }
->x : string[]
+>bar : { (x: string): void; (x: string[]): void; }, Symbol(bar, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 0, 17), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 1, 32), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 2, 34))
+>x : string[], Symbol(x, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 2, 15))
public bar(x: any): void {
->bar : { (x: string): void; (x: string[]): void; }
->x : any
+>bar : { (x: string): void; (x: string[]): void; }, Symbol(bar, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 0, 17), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 1, 32), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 2, 34))
+>x : any, Symbol(x, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 3, 15))
}
public foo(x: string): void;
->foo : { (x: string): void; (x: string[]): void; }
->x : string
+>foo : { (x: string): void; (x: string[]): void; }, Symbol(foo, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 5, 5), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 7, 32), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 8, 34))
+>x : string, Symbol(x, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 7, 15))
public foo(x: string[]): void;
->foo : { (x: string): void; (x: string[]): void; }
->x : string[]
+>foo : { (x: string): void; (x: string[]): void; }, Symbol(foo, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 5, 5), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 7, 32), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 8, 34))
+>x : string[], Symbol(x, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 8, 15))
public foo(x: any): void {
->foo : { (x: string): void; (x: string[]): void; }
->x : any
+>foo : { (x: string): void; (x: string[]): void; }, Symbol(foo, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 5, 5), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 7, 32), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 8, 34))
+>x : any, Symbol(x, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 9, 15))
this.bar(x); // should not error
>this.bar(x) : void
->this.bar : { (x: string): void; (x: string[]): void; }
->this : TestClass
->bar : { (x: string): void; (x: string[]): void; }
->x : any
+>this.bar : { (x: string): void; (x: string[]): void; }, Symbol(bar, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 0, 17), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 1, 32), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 2, 34))
+>this : TestClass, Symbol(TestClass, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 0, 0))
+>bar : { (x: string): void; (x: string[]): void; }, Symbol(bar, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 0, 17), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 1, 32), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 2, 34))
+>x : any, Symbol(x, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 9, 15))
}
}
class TestClass2 {
->TestClass2 : TestClass2
+>TestClass2 : TestClass2, Symbol(TestClass2, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 12, 1))
public bar(x: string): number;
->bar : { (x: string): number; (x: string[]): number; }
->x : string
+>bar : { (x: string): number; (x: string[]): number; }, Symbol(bar, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 14, 18), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 15, 34), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 16, 36))
+>x : string, Symbol(x, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 15, 15))
public bar(x: string[]): number;
->bar : { (x: string): number; (x: string[]): number; }
->x : string[]
+>bar : { (x: string): number; (x: string[]): number; }, Symbol(bar, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 14, 18), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 15, 34), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 16, 36))
+>x : string[], Symbol(x, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 16, 15))
public bar(x: any): number {
->bar : { (x: string): number; (x: string[]): number; }
->x : any
+>bar : { (x: string): number; (x: string[]): number; }, Symbol(bar, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 14, 18), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 15, 34), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 16, 36))
+>x : any, Symbol(x, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 17, 15))
return 0;
+>0 : number
}
public foo(x: string): number;
->foo : { (x: string): number; (x: string[]): number; }
->x : string
+>foo : { (x: string): number; (x: string[]): number; }, Symbol(foo, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 19, 5), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 21, 34), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 22, 36))
+>x : string, Symbol(x, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 21, 15))
public foo(x: string[]): number;
->foo : { (x: string): number; (x: string[]): number; }
->x : string[]
+>foo : { (x: string): number; (x: string[]): number; }, Symbol(foo, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 19, 5), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 21, 34), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 22, 36))
+>x : string[], Symbol(x, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 22, 15))
public foo(x: any): number {
->foo : { (x: string): number; (x: string[]): number; }
->x : any
+>foo : { (x: string): number; (x: string[]): number; }, Symbol(foo, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 19, 5), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 21, 34), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 22, 36))
+>x : any, Symbol(x, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 23, 15))
return this.bar(x); // should not error
>this.bar(x) : number
->this.bar : { (x: string): number; (x: string[]): number; }
->this : TestClass2
->bar : { (x: string): number; (x: string[]): number; }
->x : any
+>this.bar : { (x: string): number; (x: string[]): number; }, Symbol(bar, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 14, 18), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 15, 34), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 16, 36))
+>this : TestClass2, Symbol(TestClass2, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 12, 1))
+>bar : { (x: string): number; (x: string[]): number; }, Symbol(bar, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 14, 18), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 15, 34), Decl(ambiguousCallsWhereReturnTypesAgree.ts, 16, 36))
+>x : any, Symbol(x, Decl(ambiguousCallsWhereReturnTypesAgree.ts, 23, 15))
}
}
diff --git a/tests/baselines/reference/ambiguousOverloadResolution.types b/tests/baselines/reference/ambiguousOverloadResolution.types
index dd42b44d7c3..94d8a590155 100644
--- a/tests/baselines/reference/ambiguousOverloadResolution.types
+++ b/tests/baselines/reference/ambiguousOverloadResolution.types
@@ -1,34 +1,34 @@
=== tests/cases/compiler/ambiguousOverloadResolution.ts ===
class A { }
->A : A
+>A : A, Symbol(A, Decl(ambiguousOverloadResolution.ts, 0, 0))
class B extends A { x: number; }
->B : B
->A : A
->x : number
+>B : B, Symbol(B, Decl(ambiguousOverloadResolution.ts, 0, 11))
+>A : A, Symbol(A, Decl(ambiguousOverloadResolution.ts, 0, 0))
+>x : number, Symbol(x, Decl(ambiguousOverloadResolution.ts, 1, 19))
declare function f(p: A, q: B): number;
->f : { (p: A, q: B): number; (p: B, q: A): string; }
->p : A
->A : A
->q : B
->B : B
+>f : { (p: A, q: B): number; (p: B, q: A): string; }, Symbol(f, Decl(ambiguousOverloadResolution.ts, 1, 32), Decl(ambiguousOverloadResolution.ts, 3, 39))
+>p : A, Symbol(p, Decl(ambiguousOverloadResolution.ts, 3, 19))
+>A : A, Symbol(A, Decl(ambiguousOverloadResolution.ts, 0, 0))
+>q : B, Symbol(q, Decl(ambiguousOverloadResolution.ts, 3, 24))
+>B : B, Symbol(B, Decl(ambiguousOverloadResolution.ts, 0, 11))
declare function f(p: B, q: A): string;
->f : { (p: A, q: B): number; (p: B, q: A): string; }
->p : B
->B : B
->q : A
->A : A
+>f : { (p: A, q: B): number; (p: B, q: A): string; }, Symbol(f, Decl(ambiguousOverloadResolution.ts, 1, 32), Decl(ambiguousOverloadResolution.ts, 3, 39))
+>p : B, Symbol(p, Decl(ambiguousOverloadResolution.ts, 4, 19))
+>B : B, Symbol(B, Decl(ambiguousOverloadResolution.ts, 0, 11))
+>q : A, Symbol(q, Decl(ambiguousOverloadResolution.ts, 4, 24))
+>A : A, Symbol(A, Decl(ambiguousOverloadResolution.ts, 0, 0))
var x: B;
->x : B
->B : B
+>x : B, Symbol(x, Decl(ambiguousOverloadResolution.ts, 6, 3))
+>B : B, Symbol(B, Decl(ambiguousOverloadResolution.ts, 0, 11))
var t: number = f(x, x); // Not an error
->t : number
+>t : number, Symbol(t, Decl(ambiguousOverloadResolution.ts, 7, 3))
>f(x, x) : number
->f : { (p: A, q: B): number; (p: B, q: A): string; }
->x : B
->x : B
+>f : { (p: A, q: B): number; (p: B, q: A): string; }, Symbol(f, Decl(ambiguousOverloadResolution.ts, 1, 32), Decl(ambiguousOverloadResolution.ts, 3, 39))
+>x : B, Symbol(x, Decl(ambiguousOverloadResolution.ts, 6, 3))
+>x : B, Symbol(x, Decl(ambiguousOverloadResolution.ts, 6, 3))
diff --git a/tests/baselines/reference/amdImportAsPrimaryExpression.types b/tests/baselines/reference/amdImportAsPrimaryExpression.types
index f88bc9a1ffe..f055c162d09 100644
--- a/tests/baselines/reference/amdImportAsPrimaryExpression.types
+++ b/tests/baselines/reference/amdImportAsPrimaryExpression.types
@@ -1,25 +1,26 @@
=== tests/cases/conformance/externalModules/foo_1.ts ===
import foo = require("./foo_0");
->foo : typeof foo
+>foo : typeof foo, Symbol(foo, Decl(foo_1.ts, 0, 0))
if(foo.E1.A === 0){
>foo.E1.A === 0 : boolean
->foo.E1.A : foo.E1
->foo.E1 : typeof foo.E1
->foo : typeof foo
->E1 : typeof foo.E1
->A : foo.E1
+>foo.E1.A : foo.E1, Symbol(foo.E1.A, Decl(foo_0.ts, 0, 16))
+>foo.E1 : typeof foo.E1, Symbol(foo.E1, Decl(foo_0.ts, 0, 0))
+>foo : typeof foo, Symbol(foo, Decl(foo_1.ts, 0, 0))
+>E1 : typeof foo.E1, Symbol(foo.E1, Decl(foo_0.ts, 0, 0))
+>A : foo.E1, Symbol(foo.E1.A, Decl(foo_0.ts, 0, 16))
+>0 : number
// Should cause runtime import - interesting optimization possibility, as gets inlined to 0.
}
=== tests/cases/conformance/externalModules/foo_0.ts ===
export enum E1 {
->E1 : E1
+>E1 : E1, Symbol(E1, Decl(foo_0.ts, 0, 0))
A,B,C
->A : E1
->B : E1
->C : E1
+>A : E1, Symbol(E1.A, Decl(foo_0.ts, 0, 16))
+>B : E1, Symbol(E1.B, Decl(foo_0.ts, 1, 3))
+>C : E1, Symbol(E1.C, Decl(foo_0.ts, 1, 5))
}
diff --git a/tests/baselines/reference/amdImportNotAsPrimaryExpression.types b/tests/baselines/reference/amdImportNotAsPrimaryExpression.types
index bde0cb02b1e..61a55d73b0c 100644
--- a/tests/baselines/reference/amdImportNotAsPrimaryExpression.types
+++ b/tests/baselines/reference/amdImportNotAsPrimaryExpression.types
@@ -1,82 +1,88 @@
=== tests/cases/conformance/externalModules/foo_1.ts ===
import foo = require("./foo_0");
->foo : typeof foo
+>foo : typeof foo, Symbol(foo, Decl(foo_1.ts, 0, 0))
// None of the below should cause a runtime dependency on foo_0
import f = foo.M1;
->f : unknown
->foo : typeof foo
->M1 : unknown
+>f : any, Symbol(f, Decl(foo_1.ts, 0, 32))
+>foo : typeof foo, Symbol(foo, Decl(foo_0.ts, 0, 0))
+>M1 : any, Symbol(foo.M1, Decl(foo_0.ts, 8, 1))
var i: f.I2;
->i : f.I2
->f : unknown
->I2 : f.I2
+>i : f.I2, Symbol(i, Decl(foo_1.ts, 3, 3))
+>f : any, Symbol(f, Decl(foo_1.ts, 0, 32))
+>I2 : f.I2, Symbol(f.I2, Decl(foo_0.ts, 10, 18))
var x: foo.C1 = <{m1: number}>{};
->x : foo.C1
->foo : unknown
->C1 : foo.C1
+>x : foo.C1, Symbol(x, Decl(foo_1.ts, 4, 3))
+>foo : any, Symbol(foo, Decl(foo_1.ts, 0, 0))
+>C1 : foo.C1, Symbol(foo.C1, Decl(foo_0.ts, 0, 0))
><{m1: number}>{} : { m1: number; }
->m1 : number
+>m1 : number, Symbol(m1, Decl(foo_1.ts, 4, 18))
>{} : {}
var y: typeof foo.C1.s1 = false;
->y : boolean
->foo : typeof foo
->C1 : typeof foo.C1
->s1 : boolean
+>y : boolean, Symbol(y, Decl(foo_1.ts, 5, 3))
+>foo.C1.s1 : boolean, Symbol(foo.C1.s1, Decl(foo_0.ts, 1, 9))
+>foo.C1 : typeof foo.C1, Symbol(foo.C1, Decl(foo_0.ts, 0, 0))
+>foo : typeof foo, Symbol(foo, Decl(foo_1.ts, 0, 0))
+>C1 : typeof foo.C1, Symbol(foo.C1, Decl(foo_0.ts, 0, 0))
+>s1 : boolean, Symbol(foo.C1.s1, Decl(foo_0.ts, 1, 9))
+>false : boolean
var z: foo.M1.I2;
->z : f.I2
->foo : unknown
->M1 : unknown
->I2 : f.I2
+>z : f.I2, Symbol(z, Decl(foo_1.ts, 6, 3))
+>foo : any, Symbol(foo, Decl(foo_1.ts, 0, 0))
+>M1 : any, Symbol(foo.M1, Decl(foo_0.ts, 8, 1))
+>I2 : f.I2, Symbol(f.I2, Decl(foo_0.ts, 10, 18))
var e: number = 0;
->e : number
+>e : number, Symbol(e, Decl(foo_1.ts, 7, 3))
>0 : foo.E1
->foo : unknown
->E1 : foo.E1
+>foo : any, Symbol(foo, Decl(foo_1.ts, 0, 0))
+>E1 : foo.E1, Symbol(foo.E1, Decl(foo_0.ts, 14, 1))
+>0 : number
=== tests/cases/conformance/externalModules/foo_0.ts ===
export class C1 {
->C1 : C1
+>C1 : C1, Symbol(C1, Decl(foo_0.ts, 0, 0))
m1 = 42;
->m1 : number
+>m1 : number, Symbol(m1, Decl(foo_0.ts, 0, 17))
+>42 : number
static s1 = true;
->s1 : boolean
+>s1 : boolean, Symbol(C1.s1, Decl(foo_0.ts, 1, 9))
+>true : boolean
}
export interface I1 {
->I1 : I1
+>I1 : I1, Symbol(I1, Decl(foo_0.ts, 3, 1))
name: string;
->name : string
+>name : string, Symbol(name, Decl(foo_0.ts, 5, 21))
age: number;
->age : number
+>age : number, Symbol(age, Decl(foo_0.ts, 6, 14))
}
export module M1 {
->M1 : unknown
+>M1 : any, Symbol(M1, Decl(foo_0.ts, 8, 1))
export interface I2 {
->I2 : I2
+>I2 : I2, Symbol(I2, Decl(foo_0.ts, 10, 18))
foo: string;
->foo : string
+>foo : string, Symbol(foo, Decl(foo_0.ts, 11, 22))
}
}
export enum E1 {
->E1 : E1
+>E1 : E1, Symbol(E1, Decl(foo_0.ts, 14, 1))
A,B,C
->A : E1
->B : E1
->C : E1
+>A : E1, Symbol(E1.A, Decl(foo_0.ts, 16, 16))
+>B : E1, Symbol(E1.B, Decl(foo_0.ts, 17, 3))
+>C : E1, Symbol(E1.C, Decl(foo_0.ts, 17, 5))
}
diff --git a/tests/baselines/reference/amdModuleName1.types b/tests/baselines/reference/amdModuleName1.types
index 02ad9472354..90fdfcc9aa8 100644
--- a/tests/baselines/reference/amdModuleName1.types
+++ b/tests/baselines/reference/amdModuleName1.types
@@ -1,19 +1,20 @@
=== tests/cases/compiler/amdModuleName1.ts ===
///
class Foo {
->Foo : Foo
+>Foo : Foo, Symbol(Foo, Decl(amdModuleName1.ts, 0, 0))
x: number;
->x : number
+>x : number, Symbol(x, Decl(amdModuleName1.ts, 1, 11))
constructor() {
this.x = 5;
>this.x = 5 : number
->this.x : number
->this : Foo
->x : number
+>this.x : number, Symbol(x, Decl(amdModuleName1.ts, 1, 11))
+>this : Foo, Symbol(Foo, Decl(amdModuleName1.ts, 0, 0))
+>x : number, Symbol(x, Decl(amdModuleName1.ts, 1, 11))
+>5 : number
}
}
export = Foo;
->Foo : Foo
+>Foo : Foo, Symbol(Foo, Decl(amdModuleName1.ts, 0, 0))
diff --git a/tests/baselines/reference/anonterface.types b/tests/baselines/reference/anonterface.types
index 7b5b1401cac..1d84fe8f8e0 100644
--- a/tests/baselines/reference/anonterface.types
+++ b/tests/baselines/reference/anonterface.types
@@ -1,40 +1,42 @@
=== tests/cases/compiler/anonterface.ts ===
module M {
->M : typeof M
+>M : typeof M, Symbol(M, Decl(anonterface.ts, 0, 0))
export class C {
->C : C
+>C : C, Symbol(C, Decl(anonterface.ts, 0, 10))
m(fn:{ (n:number):string; },n2:number):string {
->m : (fn: (n: number) => string, n2: number) => string
->fn : (n: number) => string
->n : number
->n2 : number
+>m : (fn: (n: number) => string, n2: number) => string, Symbol(m, Decl(anonterface.ts, 1, 20))
+>fn : (n: number) => string, Symbol(fn, Decl(anonterface.ts, 2, 10))
+>n : number, Symbol(n, Decl(anonterface.ts, 2, 16))
+>n2 : number, Symbol(n2, Decl(anonterface.ts, 2, 36))
return fn(n2);
>fn(n2) : string
->fn : (n: number) => string
->n2 : number
+>fn : (n: number) => string, Symbol(fn, Decl(anonterface.ts, 2, 10))
+>n2 : number, Symbol(n2, Decl(anonterface.ts, 2, 36))
}
}
}
var c=new M.C();
->c : M.C
+>c : M.C, Symbol(c, Decl(anonterface.ts, 8, 3))
>new M.C() : M.C
->M.C : typeof M.C
->M : typeof M
->C : typeof M.C
+>M.C : typeof M.C, Symbol(M.C, Decl(anonterface.ts, 0, 10))
+>M : typeof M, Symbol(M, Decl(anonterface.ts, 0, 0))
+>C : typeof M.C, Symbol(M.C, Decl(anonterface.ts, 0, 10))
c.m(function(n) { return "hello: "+n; },18);
>c.m(function(n) { return "hello: "+n; },18) : string
->c.m : (fn: (n: number) => string, n2: number) => string
->c : M.C
->m : (fn: (n: number) => string, n2: number) => string
+>c.m : (fn: (n: number) => string, n2: number) => string, Symbol(M.C.m, Decl(anonterface.ts, 1, 20))
+>c : M.C, Symbol(c, Decl(anonterface.ts, 8, 3))
+>m : (fn: (n: number) => string, n2: number) => string, Symbol(M.C.m, Decl(anonterface.ts, 1, 20))
>function(n) { return "hello: "+n; } : (n: number) => string
->n : number
+>n : number, Symbol(n, Decl(anonterface.ts, 9, 13))
>"hello: "+n : string
->n : number
+>"hello: " : string
+>n : number, Symbol(n, Decl(anonterface.ts, 9, 13))
+>18 : number
diff --git a/tests/baselines/reference/anyAsFunctionCall.types b/tests/baselines/reference/anyAsFunctionCall.types
index 6492dce37d2..80e039f76dd 100644
--- a/tests/baselines/reference/anyAsFunctionCall.types
+++ b/tests/baselines/reference/anyAsFunctionCall.types
@@ -3,21 +3,22 @@
// can be called except with type arguments which is an error
var x: any;
->x : any
+>x : any, Symbol(x, Decl(anyAsFunctionCall.ts, 3, 3))
var a = x();
->a : any
+>a : any, Symbol(a, Decl(anyAsFunctionCall.ts, 4, 3))
>x() : any
->x : any
+>x : any, Symbol(x, Decl(anyAsFunctionCall.ts, 3, 3))
var b = x('hello');
->b : any
+>b : any, Symbol(b, Decl(anyAsFunctionCall.ts, 5, 3))
>x('hello') : any
->x : any
+>x : any, Symbol(x, Decl(anyAsFunctionCall.ts, 3, 3))
+>'hello' : string
var c = x(x);
->c : any
+>c : any, Symbol(c, Decl(anyAsFunctionCall.ts, 6, 3))
>x(x) : any
->x : any
->x : any
+>x : any, Symbol(x, Decl(anyAsFunctionCall.ts, 3, 3))
+>x : any, Symbol(x, Decl(anyAsFunctionCall.ts, 3, 3))
diff --git a/tests/baselines/reference/anyAsReturnTypeForNewOnCall.types b/tests/baselines/reference/anyAsReturnTypeForNewOnCall.types
index f25cd57831b..2abdb1cbeda 100644
--- a/tests/baselines/reference/anyAsReturnTypeForNewOnCall.types
+++ b/tests/baselines/reference/anyAsReturnTypeForNewOnCall.types
@@ -1,34 +1,36 @@
=== tests/cases/compiler/anyAsReturnTypeForNewOnCall.ts ===
function Point(x, y) {
->Point : (x: any, y: any) => void
->x : any
->y : any
+>Point : (x: any, y: any) => void, Symbol(Point, Decl(anyAsReturnTypeForNewOnCall.ts, 0, 0))
+>x : any, Symbol(x, Decl(anyAsReturnTypeForNewOnCall.ts, 0, 15))
+>y : any, Symbol(y, Decl(anyAsReturnTypeForNewOnCall.ts, 0, 17))
this.x = x;
>this.x = x : any
>this.x : any
>this : any
>x : any
->x : any
+>x : any, Symbol(x, Decl(anyAsReturnTypeForNewOnCall.ts, 0, 15))
this.y = y;
>this.y = y : any
>this.y : any
>this : any
>y : any
->y : any
+>y : any, Symbol(y, Decl(anyAsReturnTypeForNewOnCall.ts, 0, 17))
}
var o = new Point(3, 4);
->o : any
+>o : any, Symbol(o, Decl(anyAsReturnTypeForNewOnCall.ts, 8, 3))
>new Point(3, 4) : any
->Point : (x: any, y: any) => void
+>Point : (x: any, y: any) => void, Symbol(Point, Decl(anyAsReturnTypeForNewOnCall.ts, 0, 0))
+>3 : number
+>4 : number
var xx = o.x;
->xx : any
+>xx : any, Symbol(xx, Decl(anyAsReturnTypeForNewOnCall.ts, 10, 3))
>o.x : any
->o : any
+>o : any, Symbol(o, Decl(anyAsReturnTypeForNewOnCall.ts, 8, 3))
>x : any
diff --git a/tests/baselines/reference/anyAssignabilityInInheritance.types b/tests/baselines/reference/anyAssignabilityInInheritance.types
index f5a4f22ef3f..8f54b6761c8 100644
--- a/tests/baselines/reference/anyAssignabilityInInheritance.types
+++ b/tests/baselines/reference/anyAssignabilityInInheritance.types
@@ -2,320 +2,322 @@
// any is not a subtype of any other types, errors expected on all the below derived classes unless otherwise noted
interface I {
->I : I
+>I : I, Symbol(I, Decl(anyAssignabilityInInheritance.ts, 0, 0))
[x: string]: any;
->x : string
+>x : string, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 3, 5))
foo: any; // ok, any identical to itself
->foo : any
+>foo : any, Symbol(foo, Decl(anyAssignabilityInInheritance.ts, 3, 21))
}
var a: any;
->a : any
+>a : any, Symbol(a, Decl(anyAssignabilityInInheritance.ts, 7, 3))
declare function foo2(x: number): number;
->foo2 : { (x: number): number; (x: any): any; }
->x : number
+>foo2 : { (x: number): number; (x: any): any; }, Symbol(foo2, Decl(anyAssignabilityInInheritance.ts, 7, 11), Decl(anyAssignabilityInInheritance.ts, 9, 41))
+>x : number, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 9, 22))
declare function foo2(x: any): any;
->foo2 : { (x: number): number; (x: any): any; }
->x : any
+>foo2 : { (x: number): number; (x: any): any; }, Symbol(foo2, Decl(anyAssignabilityInInheritance.ts, 7, 11), Decl(anyAssignabilityInInheritance.ts, 9, 41))
+>x : any, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 10, 22))
var r3 = foo2(a); // any, not a subtype of number so it skips that overload, is a subtype of itself so it picks second (if truly ambiguous it would pick first overload)
->r3 : any
+>r3 : any, Symbol(r3, Decl(anyAssignabilityInInheritance.ts, 11, 3), Decl(anyAssignabilityInInheritance.ts, 15, 3), Decl(anyAssignabilityInInheritance.ts, 19, 3), Decl(anyAssignabilityInInheritance.ts, 23, 3), Decl(anyAssignabilityInInheritance.ts, 27, 3), Decl(anyAssignabilityInInheritance.ts, 31, 3), Decl(anyAssignabilityInInheritance.ts, 35, 3), Decl(anyAssignabilityInInheritance.ts, 40, 3), Decl(anyAssignabilityInInheritance.ts, 45, 3), Decl(anyAssignabilityInInheritance.ts, 50, 3), Decl(anyAssignabilityInInheritance.ts, 54, 3), Decl(anyAssignabilityInInheritance.ts, 58, 3), Decl(anyAssignabilityInInheritance.ts, 63, 3), Decl(anyAssignabilityInInheritance.ts, 71, 3), Decl(anyAssignabilityInInheritance.ts, 79, 3), Decl(anyAssignabilityInInheritance.ts, 83, 3), Decl(anyAssignabilityInInheritance.ts, 87, 3))
>foo2(a) : any
->foo2 : { (x: number): number; (x: any): any; }
->a : any
+>foo2 : { (x: number): number; (x: any): any; }, Symbol(foo2, Decl(anyAssignabilityInInheritance.ts, 7, 11), Decl(anyAssignabilityInInheritance.ts, 9, 41))
+>a : any, Symbol(a, Decl(anyAssignabilityInInheritance.ts, 7, 3))
declare function foo3(x: string): string;
->foo3 : { (x: string): string; (x: any): any; }
->x : string
+>foo3 : { (x: string): string; (x: any): any; }, Symbol(foo3, Decl(anyAssignabilityInInheritance.ts, 11, 17), Decl(anyAssignabilityInInheritance.ts, 13, 41))
+>x : string, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 13, 22))
declare function foo3(x: any): any;
->foo3 : { (x: string): string; (x: any): any; }
->x : any
+>foo3 : { (x: string): string; (x: any): any; }, Symbol(foo3, Decl(anyAssignabilityInInheritance.ts, 11, 17), Decl(anyAssignabilityInInheritance.ts, 13, 41))
+>x : any, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 14, 22))
var r3 = foo3(a); // any
->r3 : any
+>r3 : any, Symbol(r3, Decl(anyAssignabilityInInheritance.ts, 11, 3), Decl(anyAssignabilityInInheritance.ts, 15, 3), Decl(anyAssignabilityInInheritance.ts, 19, 3), Decl(anyAssignabilityInInheritance.ts, 23, 3), Decl(anyAssignabilityInInheritance.ts, 27, 3), Decl(anyAssignabilityInInheritance.ts, 31, 3), Decl(anyAssignabilityInInheritance.ts, 35, 3), Decl(anyAssignabilityInInheritance.ts, 40, 3), Decl(anyAssignabilityInInheritance.ts, 45, 3), Decl(anyAssignabilityInInheritance.ts, 50, 3), Decl(anyAssignabilityInInheritance.ts, 54, 3), Decl(anyAssignabilityInInheritance.ts, 58, 3), Decl(anyAssignabilityInInheritance.ts, 63, 3), Decl(anyAssignabilityInInheritance.ts, 71, 3), Decl(anyAssignabilityInInheritance.ts, 79, 3), Decl(anyAssignabilityInInheritance.ts, 83, 3), Decl(anyAssignabilityInInheritance.ts, 87, 3))
>foo3(a) : any
->foo3 : { (x: string): string; (x: any): any; }
->a : any
+>foo3 : { (x: string): string; (x: any): any; }, Symbol(foo3, Decl(anyAssignabilityInInheritance.ts, 11, 17), Decl(anyAssignabilityInInheritance.ts, 13, 41))
+>a : any, Symbol(a, Decl(anyAssignabilityInInheritance.ts, 7, 3))
declare function foo4(x: boolean): boolean;
->foo4 : { (x: boolean): boolean; (x: any): any; }
->x : boolean
+>foo4 : { (x: boolean): boolean; (x: any): any; }, Symbol(foo4, Decl(anyAssignabilityInInheritance.ts, 15, 17), Decl(anyAssignabilityInInheritance.ts, 17, 43))
+>x : boolean, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 17, 22))
declare function foo4(x: any): any;
->foo4 : { (x: boolean): boolean; (x: any): any; }
->x : any
+>foo4 : { (x: boolean): boolean; (x: any): any; }, Symbol(foo4, Decl(anyAssignabilityInInheritance.ts, 15, 17), Decl(anyAssignabilityInInheritance.ts, 17, 43))
+>x : any, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 18, 22))
var r3 = foo3(a); // any
->r3 : any
+>r3 : any, Symbol(r3, Decl(anyAssignabilityInInheritance.ts, 11, 3), Decl(anyAssignabilityInInheritance.ts, 15, 3), Decl(anyAssignabilityInInheritance.ts, 19, 3), Decl(anyAssignabilityInInheritance.ts, 23, 3), Decl(anyAssignabilityInInheritance.ts, 27, 3), Decl(anyAssignabilityInInheritance.ts, 31, 3), Decl(anyAssignabilityInInheritance.ts, 35, 3), Decl(anyAssignabilityInInheritance.ts, 40, 3), Decl(anyAssignabilityInInheritance.ts, 45, 3), Decl(anyAssignabilityInInheritance.ts, 50, 3), Decl(anyAssignabilityInInheritance.ts, 54, 3), Decl(anyAssignabilityInInheritance.ts, 58, 3), Decl(anyAssignabilityInInheritance.ts, 63, 3), Decl(anyAssignabilityInInheritance.ts, 71, 3), Decl(anyAssignabilityInInheritance.ts, 79, 3), Decl(anyAssignabilityInInheritance.ts, 83, 3), Decl(anyAssignabilityInInheritance.ts, 87, 3))
>foo3(a) : any
->foo3 : { (x: string): string; (x: any): any; }
->a : any
+>foo3 : { (x: string): string; (x: any): any; }, Symbol(foo3, Decl(anyAssignabilityInInheritance.ts, 11, 17), Decl(anyAssignabilityInInheritance.ts, 13, 41))
+>a : any, Symbol(a, Decl(anyAssignabilityInInheritance.ts, 7, 3))
declare function foo5(x: Date): Date;
->foo5 : { (x: Date): Date; (x: any): any; }
->x : Date
->Date : Date
->Date : Date
+>foo5 : { (x: Date): Date; (x: any): any; }, Symbol(foo5, Decl(anyAssignabilityInInheritance.ts, 19, 17), Decl(anyAssignabilityInInheritance.ts, 21, 37))
+>x : Date, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 21, 22))
+>Date : Date, Symbol(Date, Decl(lib.d.ts, 633, 23), Decl(lib.d.ts, 815, 11))
+>Date : Date, Symbol(Date, Decl(lib.d.ts, 633, 23), Decl(lib.d.ts, 815, 11))
declare function foo5(x: any): any;
->foo5 : { (x: Date): Date; (x: any): any; }
->x : any
+>foo5 : { (x: Date): Date; (x: any): any; }, Symbol(foo5, Decl(anyAssignabilityInInheritance.ts, 19, 17), Decl(anyAssignabilityInInheritance.ts, 21, 37))
+>x : any, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 22, 22))
var r3 = foo3(a); // any
->r3 : any
+>r3 : any, Symbol(r3, Decl(anyAssignabilityInInheritance.ts, 11, 3), Decl(anyAssignabilityInInheritance.ts, 15, 3), Decl(anyAssignabilityInInheritance.ts, 19, 3), Decl(anyAssignabilityInInheritance.ts, 23, 3), Decl(anyAssignabilityInInheritance.ts, 27, 3), Decl(anyAssignabilityInInheritance.ts, 31, 3), Decl(anyAssignabilityInInheritance.ts, 35, 3), Decl(anyAssignabilityInInheritance.ts, 40, 3), Decl(anyAssignabilityInInheritance.ts, 45, 3), Decl(anyAssignabilityInInheritance.ts, 50, 3), Decl(anyAssignabilityInInheritance.ts, 54, 3), Decl(anyAssignabilityInInheritance.ts, 58, 3), Decl(anyAssignabilityInInheritance.ts, 63, 3), Decl(anyAssignabilityInInheritance.ts, 71, 3), Decl(anyAssignabilityInInheritance.ts, 79, 3), Decl(anyAssignabilityInInheritance.ts, 83, 3), Decl(anyAssignabilityInInheritance.ts, 87, 3))
>foo3(a) : any
->foo3 : { (x: string): string; (x: any): any; }
->a : any
+>foo3 : { (x: string): string; (x: any): any; }, Symbol(foo3, Decl(anyAssignabilityInInheritance.ts, 11, 17), Decl(anyAssignabilityInInheritance.ts, 13, 41))
+>a : any, Symbol(a, Decl(anyAssignabilityInInheritance.ts, 7, 3))
declare function foo6(x: RegExp): RegExp;
->foo6 : { (x: RegExp): RegExp; (x: any): any; }
->x : RegExp
->RegExp : RegExp
->RegExp : RegExp
+>foo6 : { (x: RegExp): RegExp; (x: any): any; }, Symbol(foo6, Decl(anyAssignabilityInInheritance.ts, 23, 17), Decl(anyAssignabilityInInheritance.ts, 25, 41))
+>x : RegExp, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 25, 22))
+>RegExp : RegExp, Symbol(RegExp, Decl(lib.d.ts, 825, 1), Decl(lib.d.ts, 876, 11))
+>RegExp : RegExp, Symbol(RegExp, Decl(lib.d.ts, 825, 1), Decl(lib.d.ts, 876, 11))
declare function foo6(x: any): any;
->foo6 : { (x: RegExp): RegExp; (x: any): any; }
->x : any
+>foo6 : { (x: RegExp): RegExp; (x: any): any; }, Symbol(foo6, Decl(anyAssignabilityInInheritance.ts, 23, 17), Decl(anyAssignabilityInInheritance.ts, 25, 41))
+>x : any, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 26, 22))
var r3 = foo3(a); // any
->r3 : any
+>r3 : any, Symbol(r3, Decl(anyAssignabilityInInheritance.ts, 11, 3), Decl(anyAssignabilityInInheritance.ts, 15, 3), Decl(anyAssignabilityInInheritance.ts, 19, 3), Decl(anyAssignabilityInInheritance.ts, 23, 3), Decl(anyAssignabilityInInheritance.ts, 27, 3), Decl(anyAssignabilityInInheritance.ts, 31, 3), Decl(anyAssignabilityInInheritance.ts, 35, 3), Decl(anyAssignabilityInInheritance.ts, 40, 3), Decl(anyAssignabilityInInheritance.ts, 45, 3), Decl(anyAssignabilityInInheritance.ts, 50, 3), Decl(anyAssignabilityInInheritance.ts, 54, 3), Decl(anyAssignabilityInInheritance.ts, 58, 3), Decl(anyAssignabilityInInheritance.ts, 63, 3), Decl(anyAssignabilityInInheritance.ts, 71, 3), Decl(anyAssignabilityInInheritance.ts, 79, 3), Decl(anyAssignabilityInInheritance.ts, 83, 3), Decl(anyAssignabilityInInheritance.ts, 87, 3))
>foo3(a) : any
->foo3 : { (x: string): string; (x: any): any; }
->a : any
+>foo3 : { (x: string): string; (x: any): any; }, Symbol(foo3, Decl(anyAssignabilityInInheritance.ts, 11, 17), Decl(anyAssignabilityInInheritance.ts, 13, 41))
+>a : any, Symbol(a, Decl(anyAssignabilityInInheritance.ts, 7, 3))
declare function foo7(x: { bar: number }): { bar: number };
->foo7 : { (x: { bar: number; }): { bar: number; }; (x: any): any; }
->x : { bar: number; }
->bar : number
->bar : number
+>foo7 : { (x: { bar: number; }): { bar: number; }; (x: any): any; }, Symbol(foo7, Decl(anyAssignabilityInInheritance.ts, 27, 17), Decl(anyAssignabilityInInheritance.ts, 29, 59))
+>x : { bar: number; }, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 29, 22))
+>bar : number, Symbol(bar, Decl(anyAssignabilityInInheritance.ts, 29, 26))
+>bar : number, Symbol(bar, Decl(anyAssignabilityInInheritance.ts, 29, 44))
declare function foo7(x: any): any;
->foo7 : { (x: { bar: number; }): { bar: number; }; (x: any): any; }
->x : any
+>foo7 : { (x: { bar: number; }): { bar: number; }; (x: any): any; }, Symbol(foo7, Decl(anyAssignabilityInInheritance.ts, 27, 17), Decl(anyAssignabilityInInheritance.ts, 29, 59))
+>x : any, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 30, 22))
var r3 = foo3(a); // any
->r3 : any
+>r3 : any, Symbol(r3, Decl(anyAssignabilityInInheritance.ts, 11, 3), Decl(anyAssignabilityInInheritance.ts, 15, 3), Decl(anyAssignabilityInInheritance.ts, 19, 3), Decl(anyAssignabilityInInheritance.ts, 23, 3), Decl(anyAssignabilityInInheritance.ts, 27, 3), Decl(anyAssignabilityInInheritance.ts, 31, 3), Decl(anyAssignabilityInInheritance.ts, 35, 3), Decl(anyAssignabilityInInheritance.ts, 40, 3), Decl(anyAssignabilityInInheritance.ts, 45, 3), Decl(anyAssignabilityInInheritance.ts, 50, 3), Decl(anyAssignabilityInInheritance.ts, 54, 3), Decl(anyAssignabilityInInheritance.ts, 58, 3), Decl(anyAssignabilityInInheritance.ts, 63, 3), Decl(anyAssignabilityInInheritance.ts, 71, 3), Decl(anyAssignabilityInInheritance.ts, 79, 3), Decl(anyAssignabilityInInheritance.ts, 83, 3), Decl(anyAssignabilityInInheritance.ts, 87, 3))
>foo3(a) : any
->foo3 : { (x: string): string; (x: any): any; }
->a : any
+>foo3 : { (x: string): string; (x: any): any; }, Symbol(foo3, Decl(anyAssignabilityInInheritance.ts, 11, 17), Decl(anyAssignabilityInInheritance.ts, 13, 41))
+>a : any, Symbol(a, Decl(anyAssignabilityInInheritance.ts, 7, 3))
declare function foo8(x: number[]): number[];
->foo8 : { (x: number[]): number[]; (x: any): any; }
->x : number[]
+>foo8 : { (x: number[]): number[]; (x: any): any; }, Symbol(foo8, Decl(anyAssignabilityInInheritance.ts, 31, 17), Decl(anyAssignabilityInInheritance.ts, 33, 45))
+>x : number[], Symbol(x, Decl(anyAssignabilityInInheritance.ts, 33, 22))
declare function foo8(x: any): any;
->foo8 : { (x: number[]): number[]; (x: any): any; }
->x : any
+>foo8 : { (x: number[]): number[]; (x: any): any; }, Symbol(foo8, Decl(anyAssignabilityInInheritance.ts, 31, 17), Decl(anyAssignabilityInInheritance.ts, 33, 45))
+>x : any, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 34, 22))
var r3 = foo3(a); // any
->r3 : any
+>r3 : any, Symbol(r3, Decl(anyAssignabilityInInheritance.ts, 11, 3), Decl(anyAssignabilityInInheritance.ts, 15, 3), Decl(anyAssignabilityInInheritance.ts, 19, 3), Decl(anyAssignabilityInInheritance.ts, 23, 3), Decl(anyAssignabilityInInheritance.ts, 27, 3), Decl(anyAssignabilityInInheritance.ts, 31, 3), Decl(anyAssignabilityInInheritance.ts, 35, 3), Decl(anyAssignabilityInInheritance.ts, 40, 3), Decl(anyAssignabilityInInheritance.ts, 45, 3), Decl(anyAssignabilityInInheritance.ts, 50, 3), Decl(anyAssignabilityInInheritance.ts, 54, 3), Decl(anyAssignabilityInInheritance.ts, 58, 3), Decl(anyAssignabilityInInheritance.ts, 63, 3), Decl(anyAssignabilityInInheritance.ts, 71, 3), Decl(anyAssignabilityInInheritance.ts, 79, 3), Decl(anyAssignabilityInInheritance.ts, 83, 3), Decl(anyAssignabilityInInheritance.ts, 87, 3))
>foo3(a) : any
->foo3 : { (x: string): string; (x: any): any; }
->a : any
+>foo3 : { (x: string): string; (x: any): any; }, Symbol(foo3, Decl(anyAssignabilityInInheritance.ts, 11, 17), Decl(anyAssignabilityInInheritance.ts, 13, 41))
+>a : any, Symbol(a, Decl(anyAssignabilityInInheritance.ts, 7, 3))
interface I8 { foo: string }
->I8 : I8
->foo : string
+>I8 : I8, Symbol(I8, Decl(anyAssignabilityInInheritance.ts, 35, 17))
+>foo : string, Symbol(foo, Decl(anyAssignabilityInInheritance.ts, 37, 14))
declare function foo9(x: I8): I8;
->foo9 : { (x: I8): I8; (x: any): any; }
->x : I8
->I8 : I8
->I8 : I8
+>foo9 : { (x: I8): I8; (x: any): any; }, Symbol(foo9, Decl(anyAssignabilityInInheritance.ts, 37, 28), Decl(anyAssignabilityInInheritance.ts, 38, 33))
+>x : I8, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 38, 22))
+>I8 : I8, Symbol(I8, Decl(anyAssignabilityInInheritance.ts, 35, 17))
+>I8 : I8, Symbol(I8, Decl(anyAssignabilityInInheritance.ts, 35, 17))
declare function foo9(x: any): any;
->foo9 : { (x: I8): I8; (x: any): any; }
->x : any
+>foo9 : { (x: I8): I8; (x: any): any; }, Symbol(foo9, Decl(anyAssignabilityInInheritance.ts, 37, 28), Decl(anyAssignabilityInInheritance.ts, 38, 33))
+>x : any, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 39, 22))
var r3 = foo3(a); // any
->r3 : any
+>r3 : any, Symbol(r3, Decl(anyAssignabilityInInheritance.ts, 11, 3), Decl(anyAssignabilityInInheritance.ts, 15, 3), Decl(anyAssignabilityInInheritance.ts, 19, 3), Decl(anyAssignabilityInInheritance.ts, 23, 3), Decl(anyAssignabilityInInheritance.ts, 27, 3), Decl(anyAssignabilityInInheritance.ts, 31, 3), Decl(anyAssignabilityInInheritance.ts, 35, 3), Decl(anyAssignabilityInInheritance.ts, 40, 3), Decl(anyAssignabilityInInheritance.ts, 45, 3), Decl(anyAssignabilityInInheritance.ts, 50, 3), Decl(anyAssignabilityInInheritance.ts, 54, 3), Decl(anyAssignabilityInInheritance.ts, 58, 3), Decl(anyAssignabilityInInheritance.ts, 63, 3), Decl(anyAssignabilityInInheritance.ts, 71, 3), Decl(anyAssignabilityInInheritance.ts, 79, 3), Decl(anyAssignabilityInInheritance.ts, 83, 3), Decl(anyAssignabilityInInheritance.ts, 87, 3))
>foo3(a) : any
->foo3 : { (x: string): string; (x: any): any; }
->a : any
+>foo3 : { (x: string): string; (x: any): any; }, Symbol(foo3, Decl(anyAssignabilityInInheritance.ts, 11, 17), Decl(anyAssignabilityInInheritance.ts, 13, 41))
+>a : any, Symbol(a, Decl(anyAssignabilityInInheritance.ts, 7, 3))
class A { foo: number; }
->A : A
->foo : number
+>A : A, Symbol(A, Decl(anyAssignabilityInInheritance.ts, 40, 17))
+>foo : number, Symbol(foo, Decl(anyAssignabilityInInheritance.ts, 42, 9))
declare function foo10(x: A): A;
->foo10 : { (x: A): A; (x: any): any; }
->x : A
->A : A
->A : A
+>foo10 : { (x: A): A; (x: any): any; }, Symbol(foo10, Decl(anyAssignabilityInInheritance.ts, 42, 24), Decl(anyAssignabilityInInheritance.ts, 43, 32))
+>x : A, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 43, 23))
+>A : A, Symbol(A, Decl(anyAssignabilityInInheritance.ts, 40, 17))
+>A : A, Symbol(A, Decl(anyAssignabilityInInheritance.ts, 40, 17))
declare function foo10(x: any): any;
->foo10 : { (x: A): A; (x: any): any; }
->x : any
+>foo10 : { (x: A): A; (x: any): any; }, Symbol(foo10, Decl(anyAssignabilityInInheritance.ts, 42, 24), Decl(anyAssignabilityInInheritance.ts, 43, 32))
+>x : any, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 44, 23))
var r3 = foo3(a); // any
->r3 : any
+>r3 : any, Symbol(r3, Decl(anyAssignabilityInInheritance.ts, 11, 3), Decl(anyAssignabilityInInheritance.ts, 15, 3), Decl(anyAssignabilityInInheritance.ts, 19, 3), Decl(anyAssignabilityInInheritance.ts, 23, 3), Decl(anyAssignabilityInInheritance.ts, 27, 3), Decl(anyAssignabilityInInheritance.ts, 31, 3), Decl(anyAssignabilityInInheritance.ts, 35, 3), Decl(anyAssignabilityInInheritance.ts, 40, 3), Decl(anyAssignabilityInInheritance.ts, 45, 3), Decl(anyAssignabilityInInheritance.ts, 50, 3), Decl(anyAssignabilityInInheritance.ts, 54, 3), Decl(anyAssignabilityInInheritance.ts, 58, 3), Decl(anyAssignabilityInInheritance.ts, 63, 3), Decl(anyAssignabilityInInheritance.ts, 71, 3), Decl(anyAssignabilityInInheritance.ts, 79, 3), Decl(anyAssignabilityInInheritance.ts, 83, 3), Decl(anyAssignabilityInInheritance.ts, 87, 3))
>foo3(a) : any
->foo3 : { (x: string): string; (x: any): any; }
->a : any
+>foo3 : { (x: string): string; (x: any): any; }, Symbol(foo3, Decl(anyAssignabilityInInheritance.ts, 11, 17), Decl(anyAssignabilityInInheritance.ts, 13, 41))
+>a : any, Symbol(a, Decl(anyAssignabilityInInheritance.ts, 7, 3))
class A2 { foo: T; }
->A2 : A2
->T : T
->foo : T
->T : T
+>A2 : A2, Symbol(A2, Decl(anyAssignabilityInInheritance.ts, 45, 17))
+>T : T, Symbol(T, Decl(anyAssignabilityInInheritance.ts, 47, 9))
+>foo : T, Symbol(foo, Decl(anyAssignabilityInInheritance.ts, 47, 13))
+>T : T, Symbol(T, Decl(anyAssignabilityInInheritance.ts, 47, 9))
declare function foo11(x: A2): A2;
->foo11 : { (x: A2): A2; (x: any): any; }
->x : A2
->A2 : A2
->A2 : A2
+>foo11 : { (x: A2): A2; (x: any): any; }, Symbol(foo11, Decl(anyAssignabilityInInheritance.ts, 47, 23), Decl(anyAssignabilityInInheritance.ts, 48, 50))
+>x : A2, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 48, 23))
+>A2 : A2, Symbol(A2, Decl(anyAssignabilityInInheritance.ts, 45, 17))
+>A2 : A2, Symbol(A2, Decl(anyAssignabilityInInheritance.ts, 45, 17))
declare function foo11(x: any): any;
->foo11 : { (x: A2): A2; (x: any): any; }
->x : any
+>foo11 : { (x: A2): A2; (x: any): any; }, Symbol(foo11, Decl(anyAssignabilityInInheritance.ts, 47, 23), Decl(anyAssignabilityInInheritance.ts, 48, 50))
+>x : any, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 49, 23))
var r3 = foo3(a); // any
->r3 : any
+>r3 : any, Symbol(r3, Decl(anyAssignabilityInInheritance.ts, 11, 3), Decl(anyAssignabilityInInheritance.ts, 15, 3), Decl(anyAssignabilityInInheritance.ts, 19, 3), Decl(anyAssignabilityInInheritance.ts, 23, 3), Decl(anyAssignabilityInInheritance.ts, 27, 3), Decl(anyAssignabilityInInheritance.ts, 31, 3), Decl(anyAssignabilityInInheritance.ts, 35, 3), Decl(anyAssignabilityInInheritance.ts, 40, 3), Decl(anyAssignabilityInInheritance.ts, 45, 3), Decl(anyAssignabilityInInheritance.ts, 50, 3), Decl(anyAssignabilityInInheritance.ts, 54, 3), Decl(anyAssignabilityInInheritance.ts, 58, 3), Decl(anyAssignabilityInInheritance.ts, 63, 3), Decl(anyAssignabilityInInheritance.ts, 71, 3), Decl(anyAssignabilityInInheritance.ts, 79, 3), Decl(anyAssignabilityInInheritance.ts, 83, 3), Decl(anyAssignabilityInInheritance.ts, 87, 3))
>foo3(a) : any
->foo3 : { (x: string): string; (x: any): any; }
->a : any
+>foo3 : { (x: string): string; (x: any): any; }, Symbol(foo3, Decl(anyAssignabilityInInheritance.ts, 11, 17), Decl(anyAssignabilityInInheritance.ts, 13, 41))
+>a : any, Symbol(a, Decl(anyAssignabilityInInheritance.ts, 7, 3))
declare function foo12(x: (x) => number): (x) => number;
->foo12 : { (x: (x: any) => number): (x: any) => number; (x: any): any; }
->x : (x: any) => number
->x : any
->x : any
+>foo12 : { (x: (x: any) => number): (x: any) => number; (x: any): any; }, Symbol(foo12, Decl(anyAssignabilityInInheritance.ts, 50, 17), Decl(anyAssignabilityInInheritance.ts, 52, 56))
+>x : (x: any) => number, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 52, 23))
+>x : any, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 52, 27))
+>x : any, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 52, 43))
declare function foo12(x: any): any;
->foo12 : { (x: (x: any) => number): (x: any) => number; (x: any): any; }
->x : any
+>foo12 : { (x: (x: any) => number): (x: any) => number; (x: any): any; }, Symbol(foo12, Decl(anyAssignabilityInInheritance.ts, 50, 17), Decl(anyAssignabilityInInheritance.ts, 52, 56))
+>x : any, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 53, 23))
var r3 = foo3(a); // any
->r3 : any
+>r3 : any, Symbol(r3, Decl(anyAssignabilityInInheritance.ts, 11, 3), Decl(anyAssignabilityInInheritance.ts, 15, 3), Decl(anyAssignabilityInInheritance.ts, 19, 3), Decl(anyAssignabilityInInheritance.ts, 23, 3), Decl(anyAssignabilityInInheritance.ts, 27, 3), Decl(anyAssignabilityInInheritance.ts, 31, 3), Decl(anyAssignabilityInInheritance.ts, 35, 3), Decl(anyAssignabilityInInheritance.ts, 40, 3), Decl(anyAssignabilityInInheritance.ts, 45, 3), Decl(anyAssignabilityInInheritance.ts, 50, 3), Decl(anyAssignabilityInInheritance.ts, 54, 3), Decl(anyAssignabilityInInheritance.ts, 58, 3), Decl(anyAssignabilityInInheritance.ts, 63, 3), Decl(anyAssignabilityInInheritance.ts, 71, 3), Decl(anyAssignabilityInInheritance.ts, 79, 3), Decl(anyAssignabilityInInheritance.ts, 83, 3), Decl(anyAssignabilityInInheritance.ts, 87, 3))
>foo3(a) : any
->foo3 : { (x: string): string; (x: any): any; }
->a : any
+>foo3 : { (x: string): string; (x: any): any; }, Symbol(foo3, Decl(anyAssignabilityInInheritance.ts, 11, 17), Decl(anyAssignabilityInInheritance.ts, 13, 41))
+>a : any, Symbol(a, Decl(anyAssignabilityInInheritance.ts, 7, 3))
declare function foo13(x: (x: T) => T): (x: T) => T;
->foo13 : { (x: (x: T) => T): (x: T) => T; (x: any): any; }
->x : (x: T) => T
->T : T
->x : T
->T : T
->T : T
->T : T
->x : T
->T : T
->T : T
+>foo13 : { (x: (x: T) => T): (x: T) => T; (x: any): any; }, Symbol(foo13, Decl(anyAssignabilityInInheritance.ts, 54, 17), Decl(anyAssignabilityInInheritance.ts, 56, 58))
+>x : (x: T) => T, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 56, 23))
+>T : T, Symbol(T, Decl(anyAssignabilityInInheritance.ts, 56, 27))
+>x : T, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 56, 30))
+>T : T, Symbol(T, Decl(anyAssignabilityInInheritance.ts, 56, 27))
+>T : T, Symbol(T, Decl(anyAssignabilityInInheritance.ts, 56, 27))
+>T : T, Symbol(T, Decl(anyAssignabilityInInheritance.ts, 56, 44))
+>x : T, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 56, 47))
+>T : T, Symbol(T, Decl(anyAssignabilityInInheritance.ts, 56, 44))
+>T : T, Symbol(T, Decl(anyAssignabilityInInheritance.ts, 56, 44))
declare function foo13(x: any): any;
->foo13 : { (x: (x: T) => T): (x: T) => T; (x: any): any; }
->x : any
+>foo13 : { (x: (x: T) => T): (x: T) => T; (x: any): any; }, Symbol(foo13, Decl(anyAssignabilityInInheritance.ts, 54, 17), Decl(anyAssignabilityInInheritance.ts, 56, 58))
+>x : any, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 57, 23))
var r3 = foo3(a); // any
->r3 : any
+>r3 : any, Symbol(r3, Decl(anyAssignabilityInInheritance.ts, 11, 3), Decl(anyAssignabilityInInheritance.ts, 15, 3), Decl(anyAssignabilityInInheritance.ts, 19, 3), Decl(anyAssignabilityInInheritance.ts, 23, 3), Decl(anyAssignabilityInInheritance.ts, 27, 3), Decl(anyAssignabilityInInheritance.ts, 31, 3), Decl(anyAssignabilityInInheritance.ts, 35, 3), Decl(anyAssignabilityInInheritance.ts, 40, 3), Decl(anyAssignabilityInInheritance.ts, 45, 3), Decl(anyAssignabilityInInheritance.ts, 50, 3), Decl(anyAssignabilityInInheritance.ts, 54, 3), Decl(anyAssignabilityInInheritance.ts, 58, 3), Decl(anyAssignabilityInInheritance.ts, 63, 3), Decl(anyAssignabilityInInheritance.ts, 71, 3), Decl(anyAssignabilityInInheritance.ts, 79, 3), Decl(anyAssignabilityInInheritance.ts, 83, 3), Decl(anyAssignabilityInInheritance.ts, 87, 3))
>foo3(a) : any
->foo3 : { (x: string): string; (x: any): any; }
->a : any
+>foo3 : { (x: string): string; (x: any): any; }, Symbol(foo3, Decl(anyAssignabilityInInheritance.ts, 11, 17), Decl(anyAssignabilityInInheritance.ts, 13, 41))
+>a : any, Symbol(a, Decl(anyAssignabilityInInheritance.ts, 7, 3))
enum E { A }
->E : E
->A : E
+>E : E, Symbol(E, Decl(anyAssignabilityInInheritance.ts, 58, 17))
+>A : E, Symbol(E.A, Decl(anyAssignabilityInInheritance.ts, 60, 8))
declare function foo14(x: E): E;
->foo14 : { (x: E): E; (x: any): any; }
->x : E
->E : E
->E : E
+>foo14 : { (x: E): E; (x: any): any; }, Symbol(foo14, Decl(anyAssignabilityInInheritance.ts, 60, 12), Decl(anyAssignabilityInInheritance.ts, 61, 32))
+>x : E, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 61, 23))
+>E : E, Symbol(E, Decl(anyAssignabilityInInheritance.ts, 58, 17))
+>E : E, Symbol(E, Decl(anyAssignabilityInInheritance.ts, 58, 17))
declare function foo14(x: any): any;
->foo14 : { (x: E): E; (x: any): any; }
->x : any
+>foo14 : { (x: E): E; (x: any): any; }, Symbol(foo14, Decl(anyAssignabilityInInheritance.ts, 60, 12), Decl(anyAssignabilityInInheritance.ts, 61, 32))
+>x : any, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 62, 23))
var r3 = foo3(a); // any
->r3 : any
+>r3 : any, Symbol(r3, Decl(anyAssignabilityInInheritance.ts, 11, 3), Decl(anyAssignabilityInInheritance.ts, 15, 3), Decl(anyAssignabilityInInheritance.ts, 19, 3), Decl(anyAssignabilityInInheritance.ts, 23, 3), Decl(anyAssignabilityInInheritance.ts, 27, 3), Decl(anyAssignabilityInInheritance.ts, 31, 3), Decl(anyAssignabilityInInheritance.ts, 35, 3), Decl(anyAssignabilityInInheritance.ts, 40, 3), Decl(anyAssignabilityInInheritance.ts, 45, 3), Decl(anyAssignabilityInInheritance.ts, 50, 3), Decl(anyAssignabilityInInheritance.ts, 54, 3), Decl(anyAssignabilityInInheritance.ts, 58, 3), Decl(anyAssignabilityInInheritance.ts, 63, 3), Decl(anyAssignabilityInInheritance.ts, 71, 3), Decl(anyAssignabilityInInheritance.ts, 79, 3), Decl(anyAssignabilityInInheritance.ts, 83, 3), Decl(anyAssignabilityInInheritance.ts, 87, 3))
>foo3(a) : any
->foo3 : { (x: string): string; (x: any): any; }
->a : any
+>foo3 : { (x: string): string; (x: any): any; }, Symbol(foo3, Decl(anyAssignabilityInInheritance.ts, 11, 17), Decl(anyAssignabilityInInheritance.ts, 13, 41))
+>a : any, Symbol(a, Decl(anyAssignabilityInInheritance.ts, 7, 3))
function f() { }
->f : typeof f
+>f : typeof f, Symbol(f, Decl(anyAssignabilityInInheritance.ts, 63, 17), Decl(anyAssignabilityInInheritance.ts, 65, 16))
module f {
->f : typeof f
+>f : typeof f, Symbol(f, Decl(anyAssignabilityInInheritance.ts, 63, 17), Decl(anyAssignabilityInInheritance.ts, 65, 16))
export var bar = 1;
->bar : number
+>bar : number, Symbol(bar, Decl(anyAssignabilityInInheritance.ts, 67, 14))
+>1 : number
}
declare function foo15(x: typeof f): typeof f;
->foo15 : { (x: typeof f): typeof f; (x: any): any; }
->x : typeof f
->f : typeof f
->f : typeof f
+>foo15 : { (x: typeof f): typeof f; (x: any): any; }, Symbol(foo15, Decl(anyAssignabilityInInheritance.ts, 68, 1), Decl(anyAssignabilityInInheritance.ts, 69, 46))
+>x : typeof f, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 69, 23))
+>f : typeof f, Symbol(f, Decl(anyAssignabilityInInheritance.ts, 63, 17), Decl(anyAssignabilityInInheritance.ts, 65, 16))
+>f : typeof f, Symbol(f, Decl(anyAssignabilityInInheritance.ts, 63, 17), Decl(anyAssignabilityInInheritance.ts, 65, 16))
declare function foo15(x: any): any;
->foo15 : { (x: typeof f): typeof f; (x: any): any; }
->x : any
+>foo15 : { (x: typeof f): typeof f; (x: any): any; }, Symbol(foo15, Decl(anyAssignabilityInInheritance.ts, 68, 1), Decl(anyAssignabilityInInheritance.ts, 69, 46))
+>x : any, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 70, 23))
var r3 = foo3(a); // any
->r3 : any
+>r3 : any, Symbol(r3, Decl(anyAssignabilityInInheritance.ts, 11, 3), Decl(anyAssignabilityInInheritance.ts, 15, 3), Decl(anyAssignabilityInInheritance.ts, 19, 3), Decl(anyAssignabilityInInheritance.ts, 23, 3), Decl(anyAssignabilityInInheritance.ts, 27, 3), Decl(anyAssignabilityInInheritance.ts, 31, 3), Decl(anyAssignabilityInInheritance.ts, 35, 3), Decl(anyAssignabilityInInheritance.ts, 40, 3), Decl(anyAssignabilityInInheritance.ts, 45, 3), Decl(anyAssignabilityInInheritance.ts, 50, 3), Decl(anyAssignabilityInInheritance.ts, 54, 3), Decl(anyAssignabilityInInheritance.ts, 58, 3), Decl(anyAssignabilityInInheritance.ts, 63, 3), Decl(anyAssignabilityInInheritance.ts, 71, 3), Decl(anyAssignabilityInInheritance.ts, 79, 3), Decl(anyAssignabilityInInheritance.ts, 83, 3), Decl(anyAssignabilityInInheritance.ts, 87, 3))
>foo3(a) : any
->foo3 : { (x: string): string; (x: any): any; }
->a : any
+>foo3 : { (x: string): string; (x: any): any; }, Symbol(foo3, Decl(anyAssignabilityInInheritance.ts, 11, 17), Decl(anyAssignabilityInInheritance.ts, 13, 41))
+>a : any, Symbol(a, Decl(anyAssignabilityInInheritance.ts, 7, 3))
class CC { baz: string }
->CC : CC
->baz : string
+>CC : CC, Symbol(CC, Decl(anyAssignabilityInInheritance.ts, 71, 17), Decl(anyAssignabilityInInheritance.ts, 73, 24))
+>baz : string, Symbol(baz, Decl(anyAssignabilityInInheritance.ts, 73, 10))
module CC {
->CC : typeof CC
+>CC : typeof CC, Symbol(CC, Decl(anyAssignabilityInInheritance.ts, 71, 17), Decl(anyAssignabilityInInheritance.ts, 73, 24))
export var bar = 1;
->bar : number
+>bar : number, Symbol(bar, Decl(anyAssignabilityInInheritance.ts, 75, 14))
+>1 : number
}
declare function foo16(x: CC): CC;
->foo16 : { (x: CC): CC; (x: any): any; }
->x : CC
->CC : CC
->CC : CC
+>foo16 : { (x: CC): CC; (x: any): any; }, Symbol(foo16, Decl(anyAssignabilityInInheritance.ts, 76, 1), Decl(anyAssignabilityInInheritance.ts, 77, 34))
+>x : CC, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 77, 23))
+>CC : CC, Symbol(CC, Decl(anyAssignabilityInInheritance.ts, 71, 17), Decl(anyAssignabilityInInheritance.ts, 73, 24))
+>CC : CC, Symbol(CC, Decl(anyAssignabilityInInheritance.ts, 71, 17), Decl(anyAssignabilityInInheritance.ts, 73, 24))
declare function foo16(x: any): any;
->foo16 : { (x: CC): CC; (x: any): any; }
->x : any
+>foo16 : { (x: CC): CC; (x: any): any; }, Symbol(foo16, Decl(anyAssignabilityInInheritance.ts, 76, 1), Decl(anyAssignabilityInInheritance.ts, 77, 34))
+>x : any, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 78, 23))
var r3 = foo3(a); // any
->r3 : any
+>r3 : any, Symbol(r3, Decl(anyAssignabilityInInheritance.ts, 11, 3), Decl(anyAssignabilityInInheritance.ts, 15, 3), Decl(anyAssignabilityInInheritance.ts, 19, 3), Decl(anyAssignabilityInInheritance.ts, 23, 3), Decl(anyAssignabilityInInheritance.ts, 27, 3), Decl(anyAssignabilityInInheritance.ts, 31, 3), Decl(anyAssignabilityInInheritance.ts, 35, 3), Decl(anyAssignabilityInInheritance.ts, 40, 3), Decl(anyAssignabilityInInheritance.ts, 45, 3), Decl(anyAssignabilityInInheritance.ts, 50, 3), Decl(anyAssignabilityInInheritance.ts, 54, 3), Decl(anyAssignabilityInInheritance.ts, 58, 3), Decl(anyAssignabilityInInheritance.ts, 63, 3), Decl(anyAssignabilityInInheritance.ts, 71, 3), Decl(anyAssignabilityInInheritance.ts, 79, 3), Decl(anyAssignabilityInInheritance.ts, 83, 3), Decl(anyAssignabilityInInheritance.ts, 87, 3))
>foo3(a) : any
->foo3 : { (x: string): string; (x: any): any; }
->a : any
+>foo3 : { (x: string): string; (x: any): any; }, Symbol(foo3, Decl(anyAssignabilityInInheritance.ts, 11, 17), Decl(anyAssignabilityInInheritance.ts, 13, 41))
+>a : any, Symbol(a, Decl(anyAssignabilityInInheritance.ts, 7, 3))
declare function foo17(x: Object): Object;
->foo17 : { (x: Object): Object; (x: any): any; }
->x : Object
->Object : Object
->Object : Object
+>foo17 : { (x: Object): Object; (x: any): any; }, Symbol(foo17, Decl(anyAssignabilityInInheritance.ts, 79, 17), Decl(anyAssignabilityInInheritance.ts, 81, 42))
+>x : Object, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 81, 23))
+>Object : Object, Symbol(Object, Decl(lib.d.ts, 92, 1), Decl(lib.d.ts, 223, 11))
+>Object : Object, Symbol(Object, Decl(lib.d.ts, 92, 1), Decl(lib.d.ts, 223, 11))
declare function foo17(x: any): any;
->foo17 : { (x: Object): Object; (x: any): any; }
->x : any
+>foo17 : { (x: Object): Object; (x: any): any; }, Symbol(foo17, Decl(anyAssignabilityInInheritance.ts, 79, 17), Decl(anyAssignabilityInInheritance.ts, 81, 42))
+>x : any, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 82, 23))
var r3 = foo3(a); // any
->r3 : any
+>r3 : any, Symbol(r3, Decl(anyAssignabilityInInheritance.ts, 11, 3), Decl(anyAssignabilityInInheritance.ts, 15, 3), Decl(anyAssignabilityInInheritance.ts, 19, 3), Decl(anyAssignabilityInInheritance.ts, 23, 3), Decl(anyAssignabilityInInheritance.ts, 27, 3), Decl(anyAssignabilityInInheritance.ts, 31, 3), Decl(anyAssignabilityInInheritance.ts, 35, 3), Decl(anyAssignabilityInInheritance.ts, 40, 3), Decl(anyAssignabilityInInheritance.ts, 45, 3), Decl(anyAssignabilityInInheritance.ts, 50, 3), Decl(anyAssignabilityInInheritance.ts, 54, 3), Decl(anyAssignabilityInInheritance.ts, 58, 3), Decl(anyAssignabilityInInheritance.ts, 63, 3), Decl(anyAssignabilityInInheritance.ts, 71, 3), Decl(anyAssignabilityInInheritance.ts, 79, 3), Decl(anyAssignabilityInInheritance.ts, 83, 3), Decl(anyAssignabilityInInheritance.ts, 87, 3))
>foo3(a) : any
->foo3 : { (x: string): string; (x: any): any; }
->a : any
+>foo3 : { (x: string): string; (x: any): any; }, Symbol(foo3, Decl(anyAssignabilityInInheritance.ts, 11, 17), Decl(anyAssignabilityInInheritance.ts, 13, 41))
+>a : any, Symbol(a, Decl(anyAssignabilityInInheritance.ts, 7, 3))
declare function foo18(x: {}): {};
->foo18 : { (x: {}): {}; (x: any): any; }
->x : {}
+>foo18 : { (x: {}): {}; (x: any): any; }, Symbol(foo18, Decl(anyAssignabilityInInheritance.ts, 83, 17), Decl(anyAssignabilityInInheritance.ts, 85, 34))
+>x : {}, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 85, 23))
declare function foo18(x: any): any;
->foo18 : { (x: {}): {}; (x: any): any; }
->x : any
+>foo18 : { (x: {}): {}; (x: any): any; }, Symbol(foo18, Decl(anyAssignabilityInInheritance.ts, 83, 17), Decl(anyAssignabilityInInheritance.ts, 85, 34))
+>x : any, Symbol(x, Decl(anyAssignabilityInInheritance.ts, 86, 23))
var r3 = foo3(a); // any
->r3 : any
+>r3 : any, Symbol(r3, Decl(anyAssignabilityInInheritance.ts, 11, 3), Decl(anyAssignabilityInInheritance.ts, 15, 3), Decl(anyAssignabilityInInheritance.ts, 19, 3), Decl(anyAssignabilityInInheritance.ts, 23, 3), Decl(anyAssignabilityInInheritance.ts, 27, 3), Decl(anyAssignabilityInInheritance.ts, 31, 3), Decl(anyAssignabilityInInheritance.ts, 35, 3), Decl(anyAssignabilityInInheritance.ts, 40, 3), Decl(anyAssignabilityInInheritance.ts, 45, 3), Decl(anyAssignabilityInInheritance.ts, 50, 3), Decl(anyAssignabilityInInheritance.ts, 54, 3), Decl(anyAssignabilityInInheritance.ts, 58, 3), Decl(anyAssignabilityInInheritance.ts, 63, 3), Decl(anyAssignabilityInInheritance.ts, 71, 3), Decl(anyAssignabilityInInheritance.ts, 79, 3), Decl(anyAssignabilityInInheritance.ts, 83, 3), Decl(anyAssignabilityInInheritance.ts, 87, 3))
>foo3(a) : any
->foo3 : { (x: string): string; (x: any): any; }
->a : any
+>foo3 : { (x: string): string; (x: any): any; }, Symbol(foo3, Decl(anyAssignabilityInInheritance.ts, 11, 17), Decl(anyAssignabilityInInheritance.ts, 13, 41))
+>a : any, Symbol(a, Decl(anyAssignabilityInInheritance.ts, 7, 3))
diff --git a/tests/baselines/reference/anyAssignableToEveryType.types b/tests/baselines/reference/anyAssignableToEveryType.types
index c2a9b324d96..b6e420facb2 100644
--- a/tests/baselines/reference/anyAssignableToEveryType.types
+++ b/tests/baselines/reference/anyAssignableToEveryType.types
@@ -1,152 +1,152 @@
=== tests/cases/conformance/types/typeRelationships/assignmentCompatibility/anyAssignableToEveryType.ts ===
var a: any;
->a : any
+>a : any, Symbol(a, Decl(anyAssignableToEveryType.ts, 0, 3))
class C {
->C : C
+>C : C, Symbol(C, Decl(anyAssignableToEveryType.ts, 0, 11))
foo: string;
->foo : string
+>foo : string, Symbol(foo, Decl(anyAssignableToEveryType.ts, 2, 9))
}
var ac: C;
->ac : C
->C : C
+>ac : C, Symbol(ac, Decl(anyAssignableToEveryType.ts, 5, 3))
+>C : C, Symbol(C, Decl(anyAssignableToEveryType.ts, 0, 11))
interface I {
->I : I
+>I : I, Symbol(I, Decl(anyAssignableToEveryType.ts, 5, 10))
foo: string;
->foo : string
+>foo : string, Symbol(foo, Decl(anyAssignableToEveryType.ts, 6, 13))
}
var ai: I;
->ai : I
->I : I
+>ai : I, Symbol(ai, Decl(anyAssignableToEveryType.ts, 9, 3))
+>I : I, Symbol(I, Decl(anyAssignableToEveryType.ts, 5, 10))
enum E { A }
->E : E
->A : E
+>E : E, Symbol(E, Decl(anyAssignableToEveryType.ts, 9, 10))
+>A : E, Symbol(E.A, Decl(anyAssignableToEveryType.ts, 11, 8))
var ae: E;
->ae : E
->E : E
+>ae : E, Symbol(ae, Decl(anyAssignableToEveryType.ts, 12, 3))
+>E : E, Symbol(E, Decl(anyAssignableToEveryType.ts, 9, 10))
var b: number = a;
->b : number
->a : any
+>b : number, Symbol(b, Decl(anyAssignableToEveryType.ts, 14, 3))
+>a : any, Symbol(a, Decl(anyAssignableToEveryType.ts, 0, 3))
var c: string = a;
->c : string
->a : any
+>c : string, Symbol(c, Decl(anyAssignableToEveryType.ts, 15, 3))
+>a : any, Symbol(a, Decl(anyAssignableToEveryType.ts, 0, 3))
var d: boolean = a;
->d : boolean
->a : any
+>d : boolean, Symbol(d, Decl(anyAssignableToEveryType.ts, 16, 3))
+>a : any, Symbol(a, Decl(anyAssignableToEveryType.ts, 0, 3))
var e: Date = a;
->e : Date
->Date : Date
->a : any
+>e : Date, Symbol(e, Decl(anyAssignableToEveryType.ts, 17, 3))
+>Date : Date, Symbol(Date, Decl(lib.d.ts, 633, 23), Decl(lib.d.ts, 815, 11))
+>a : any, Symbol(a, Decl(anyAssignableToEveryType.ts, 0, 3))
var f: any = a;
->f : any
->a : any
+>f : any, Symbol(f, Decl(anyAssignableToEveryType.ts, 18, 3))
+>a : any, Symbol(a, Decl(anyAssignableToEveryType.ts, 0, 3))
var g: void = a;
->g : void
->a : any
+>g : void, Symbol(g, Decl(anyAssignableToEveryType.ts, 19, 3))
+>a : any, Symbol(a, Decl(anyAssignableToEveryType.ts, 0, 3))
var h: Object = a;
->h : Object
->Object : Object
->a : any
+>h : Object, Symbol(h, Decl(anyAssignableToEveryType.ts, 20, 3))
+>Object : Object, Symbol(Object, Decl(lib.d.ts, 92, 1), Decl(lib.d.ts, 223, 11))
+>a : any, Symbol(a, Decl(anyAssignableToEveryType.ts, 0, 3))
var i: {} = a;
->i : {}
->a : any
+>i : {}, Symbol(i, Decl(anyAssignableToEveryType.ts, 21, 3))
+>a : any, Symbol(a, Decl(anyAssignableToEveryType.ts, 0, 3))
var j: () => {} = a;
->j : () => {}
->a : any
+>j : () => {}, Symbol(j, Decl(anyAssignableToEveryType.ts, 22, 3))
+>a : any, Symbol(a, Decl(anyAssignableToEveryType.ts, 0, 3))
var k: Function = a;
->k : Function
->Function : Function
->a : any
+>k : Function, Symbol(k, Decl(anyAssignableToEveryType.ts, 23, 3))
+>Function : Function, Symbol(Function, Decl(lib.d.ts, 223, 38), Decl(lib.d.ts, 269, 11))
+>a : any, Symbol(a, Decl(anyAssignableToEveryType.ts, 0, 3))
var l: (x: number) => string = a;
->l : (x: number) => string
->x : number
->a : any
+>l : (x: number) => string, Symbol(l, Decl(anyAssignableToEveryType.ts, 24, 3))
+>x : number, Symbol(x, Decl(anyAssignableToEveryType.ts, 24, 8))
+>a : any, Symbol(a, Decl(anyAssignableToEveryType.ts, 0, 3))
ac = a;
>ac = a : any
->ac : C
->a : any
+>ac : C, Symbol(ac, Decl(anyAssignableToEveryType.ts, 5, 3))
+>a : any, Symbol(a, Decl(anyAssignableToEveryType.ts, 0, 3))
ai = a;
>ai = a : any
->ai : I
->a : any
+>ai : I, Symbol(ai, Decl(anyAssignableToEveryType.ts, 9, 3))
+>a : any, Symbol(a, Decl(anyAssignableToEveryType.ts, 0, 3))
ae = a;
>ae = a : any
->ae : E
->a : any
+>ae : E, Symbol(ae, Decl(anyAssignableToEveryType.ts, 12, 3))
+>a : any, Symbol(a, Decl(anyAssignableToEveryType.ts, 0, 3))
var m: number[] = a;
->m : number[]
->a : any
+>m : number[], Symbol(m, Decl(anyAssignableToEveryType.ts, 28, 3))
+>a : any, Symbol(a, Decl(anyAssignableToEveryType.ts, 0, 3))
var n: { foo: string } = a;
->n : { foo: string; }
->foo : string
->a : any
+>n : { foo: string; }, Symbol(n, Decl(anyAssignableToEveryType.ts, 29, 3))
+>foo : string, Symbol(foo, Decl(anyAssignableToEveryType.ts, 29, 8))
+>a : any, Symbol(a, Decl(anyAssignableToEveryType.ts, 0, 3))
var o: (x: T) => T = a;
->o : (x: T) => T
->T : T
->x : T
->T : T
->T : T
->a : any
+>o : (x: T) => T, Symbol(o, Decl(anyAssignableToEveryType.ts, 30, 3))
+>T : T, Symbol(T, Decl(anyAssignableToEveryType.ts, 30, 8))
+>x : T, Symbol(x, Decl(anyAssignableToEveryType.ts, 30, 11))
+>T : T, Symbol(T, Decl(anyAssignableToEveryType.ts, 30, 8))
+>T : T, Symbol(T, Decl(anyAssignableToEveryType.ts, 30, 8))
+>a : any, Symbol(a, Decl(anyAssignableToEveryType.ts, 0, 3))
var p: Number = a;
->p : Number
->Number : Number
->a : any
+>p : Number, Symbol(p, Decl(anyAssignableToEveryType.ts, 31, 3))
+>Number : Number, Symbol(Number, Decl(lib.d.ts, 456, 40), Decl(lib.d.ts, 518, 11))
+>a : any, Symbol(a, Decl(anyAssignableToEveryType.ts, 0, 3))
var q: String = a;
->q : String
->String : String
->a : any
+>q : String, Symbol(q, Decl(anyAssignableToEveryType.ts, 32, 3))
+>String : String, Symbol(String, Decl(lib.d.ts, 275, 1), Decl(lib.d.ts, 443, 11))
+>a : any, Symbol(a, Decl(anyAssignableToEveryType.ts, 0, 3))
function foo(x: T, y: U, z: V) {
->foo : (x: T, y: U, z: V) => void
->T : T
->U : U
->V : V
->Date : Date
->x : T
->T : T
->y : U
->U : U
->z : V
->V : V
+>foo : (x: T, y: U, z: V) => void, Symbol(foo, Decl(anyAssignableToEveryType.ts, 32, 18))
+>T : T, Symbol(T, Decl(anyAssignableToEveryType.ts, 34, 13))
+>U : U, Symbol(U, Decl(anyAssignableToEveryType.ts, 34, 15))
+>V : V, Symbol(V, Decl(anyAssignableToEveryType.ts, 34, 32))
+>Date : Date, Symbol(Date, Decl(lib.d.ts, 633, 23), Decl(lib.d.ts, 815, 11))
+>x : T, Symbol(x, Decl(anyAssignableToEveryType.ts, 34, 49))
+>T : T, Symbol(T, Decl(anyAssignableToEveryType.ts, 34, 13))
+>y : U, Symbol(y, Decl(anyAssignableToEveryType.ts, 34, 54))
+>U : U, Symbol(U, Decl(anyAssignableToEveryType.ts, 34, 15))
+>z : V, Symbol(z, Decl(anyAssignableToEveryType.ts, 34, 60))
+>V : V, Symbol(V, Decl(anyAssignableToEveryType.ts, 34, 32))
x = a;
>x = a : any
->x : T
->a : any
+>x : T, Symbol(x, Decl(anyAssignableToEveryType.ts, 34, 49))
+>a : any, Symbol(a, Decl(anyAssignableToEveryType.ts, 0, 3))
y = a;
>y = a : any
->y : U
->a : any
+>y : U, Symbol(y, Decl(anyAssignableToEveryType.ts, 34, 54))
+>a : any, Symbol(a, Decl(anyAssignableToEveryType.ts, 0, 3))
z = a;
>z = a : any
->z : V
->a : any
+>z : V, Symbol(z, Decl(anyAssignableToEveryType.ts, 34, 60))
+>a : any, Symbol(a, Decl(anyAssignableToEveryType.ts, 0, 3))
}
//function foo(x: T, y: U, z: V) {
diff --git a/tests/baselines/reference/anyInferenceAnonymousFunctions.types b/tests/baselines/reference/anyInferenceAnonymousFunctions.types
index 8dc7fdcb90f..f434d147990 100644
--- a/tests/baselines/reference/anyInferenceAnonymousFunctions.types
+++ b/tests/baselines/reference/anyInferenceAnonymousFunctions.types
@@ -1,20 +1,20 @@
=== tests/cases/compiler/anyInferenceAnonymousFunctions.ts ===
var paired: any[];
->paired : any[]
+>paired : any[], Symbol(paired, Decl(anyInferenceAnonymousFunctions.ts, 0, 3))
paired.reduce(function (a1, a2) {
>paired.reduce(function (a1, a2) { return a1.concat({});} , []) : any
->paired.reduce : { (callbackfn: (previousValue: any, currentValue: any, currentIndex: number, array: any[]) => any, initialValue?: any): any; (callbackfn: (previousValue: U, currentValue: any, currentIndex: number, array: any[]) => U, initialValue: U): U; }
->paired : any[]
->reduce : { (callbackfn: (previousValue: any, currentValue: any, currentIndex: number, array: any[]) => any, initialValue?: any): any; (callbackfn: (previousValue: U, currentValue: any, currentIndex: number, array: any[]) => U, initialValue: U): U; }
+>paired.reduce : { (callbackfn: (previousValue: any, currentValue: any, currentIndex: number, array: any[]) => any, initialValue?: any): any; (callbackfn: (previousValue: U, currentValue: any, currentIndex: number, array: any[]) => U, initialValue: U): U; }, Symbol(Array.reduce, Decl(lib.d.ts, 1129, 93), Decl(lib.d.ts, 1136, 120))
+>paired : any[], Symbol(paired, Decl(anyInferenceAnonymousFunctions.ts, 0, 3))
+>reduce : { (callbackfn: (previousValue: any, currentValue: any, currentIndex: number, array: any[]) => any, initialValue?: any): any; (callbackfn: (previousValue: U, currentValue: any, currentIndex: number, array: any[]) => U, initialValue: U): U; }, Symbol(Array.reduce, Decl(lib.d.ts, 1129, 93), Decl(lib.d.ts, 1136, 120))
>function (a1, a2) { return a1.concat({});} : (a1: any, a2: any) => any
->a1 : any
->a2 : any
+>a1 : any, Symbol(a1, Decl(anyInferenceAnonymousFunctions.ts, 2, 24))
+>a2 : any, Symbol(a2, Decl(anyInferenceAnonymousFunctions.ts, 2, 27))
return a1.concat({});
>a1.concat({}) : any
>a1.concat : any
->a1 : any
+>a1 : any, Symbol(a1, Decl(anyInferenceAnonymousFunctions.ts, 2, 24))
>concat : any
>{} : {}
@@ -23,17 +23,17 @@ paired.reduce(function (a1, a2) {
paired.reduce((b1, b2) => {
>paired.reduce((b1, b2) => { return b1.concat({});} , []) : any
->paired.reduce : { (callbackfn: (previousValue: any, currentValue: any, currentIndex: number, array: any[]) => any, initialValue?: any): any; (callbackfn: (previousValue: U, currentValue: any, currentIndex: number, array: any[]) => U, initialValue: U): U; }
->paired : any[]
->reduce : { (callbackfn: (previousValue: any, currentValue: any, currentIndex: number, array: any[]) => any, initialValue?: any): any; (callbackfn: (previousValue: U, currentValue: any, currentIndex: number, array: any[]) => U, initialValue: U): U; }
+>paired.reduce : { (callbackfn: (previousValue: any, currentValue: any, currentIndex: number, array: any[]) => any, initialValue?: any): any; (callbackfn: (previousValue: U, currentValue: any, currentIndex: number, array: any[]) => U, initialValue: U): U; }, Symbol(Array.reduce, Decl(lib.d.ts, 1129, 93), Decl(lib.d.ts, 1136, 120))
+>paired : any[], Symbol(paired, Decl(anyInferenceAnonymousFunctions.ts, 0, 3))
+>reduce : { (callbackfn: (previousValue: any, currentValue: any, currentIndex: number, array: any[]) => any, initialValue?: any): any; (callbackfn: (previousValue: U, currentValue: any, currentIndex: number, array: any[]) => U, initialValue: U): U; }, Symbol(Array.reduce, Decl(lib.d.ts, 1129, 93), Decl(lib.d.ts, 1136, 120))
>(b1, b2) => { return b1.concat({});} : (b1: any, b2: any) => any
->b1 : any
->b2 : any
+>b1 : any, Symbol(b1, Decl(anyInferenceAnonymousFunctions.ts, 8, 15))
+>b2 : any, Symbol(b2, Decl(anyInferenceAnonymousFunctions.ts, 8, 18))
return b1.concat({});
>b1.concat({}) : any
>b1.concat : any
->b1 : any
+>b1 : any, Symbol(b1, Decl(anyInferenceAnonymousFunctions.ts, 8, 15))
>concat : any
>{} : {}
@@ -42,38 +42,38 @@ paired.reduce((b1, b2) => {
paired.reduce((b3, b4) => b3.concat({}), []);
>paired.reduce((b3, b4) => b3.concat({}), []) : any
->paired.reduce : { (callbackfn: (previousValue: any, currentValue: any, currentIndex: number, array: any[]) => any, initialValue?: any): any; (callbackfn: (previousValue: U, currentValue: any, currentIndex: number, array: any[]) => U, initialValue: U): U; }
->paired : any[]
->reduce : { (callbackfn: (previousValue: any, currentValue: any, currentIndex: number, array: any[]) => any, initialValue?: any): any; (callbackfn: (previousValue: U, currentValue: any, currentIndex: number, array: any[]) => U, initialValue: U): U; }
+>paired.reduce : { (callbackfn: (previousValue: any, currentValue: any, currentIndex: number, array: any[]) => any, initialValue?: any): any; (callbackfn: (previousValue: U, currentValue: any, currentIndex: number, array: any[]) => U, initialValue: U): U; }, Symbol(Array.reduce, Decl(lib.d.ts, 1129, 93), Decl(lib.d.ts, 1136, 120))
+>paired : any[], Symbol(paired, Decl(anyInferenceAnonymousFunctions.ts, 0, 3))
+>reduce : { (callbackfn: (previousValue: any, currentValue: any, currentIndex: number, array: any[]) => any, initialValue?: any): any; (callbackfn: (previousValue: U, currentValue: any, currentIndex: number, array: any[]) => U, initialValue: U): U; }, Symbol(Array.reduce, Decl(lib.d.ts, 1129, 93), Decl(lib.d.ts, 1136, 120))
>(b3, b4) => b3.concat({}) : (b3: any, b4: any) => any
->b3 : any
->b4 : any
+>b3 : any, Symbol(b3, Decl(anyInferenceAnonymousFunctions.ts, 13, 15))
+>b4 : any, Symbol(b4, Decl(anyInferenceAnonymousFunctions.ts, 13, 18))
>b3.concat({}) : any
>b3.concat : any
->b3 : any
+>b3 : any, Symbol(b3, Decl(anyInferenceAnonymousFunctions.ts, 13, 15))
>concat : any
>{} : {}
>[] : undefined[]
paired.map((c1) => c1.count);
>paired.map((c1) => c1.count) : any[]
->paired.map : (callbackfn: (value: any, index: number, array: any[]) => U, thisArg?: any) => U[]
->paired : any[]
->map : (callbackfn: (value: any, index: number, array: any[]) => U, thisArg?: any) => U[]
+>paired.map : (callbackfn: (value: any, index: number, array: any[]) => U, thisArg?: any) => U[], Symbol(Array.map, Decl(lib.d.ts, 1115, 92))
+>paired : any[], Symbol(paired, Decl(anyInferenceAnonymousFunctions.ts, 0, 3))
+>map : (callbackfn: (value: any, index: number, array: any[]) => U, thisArg?: any) => U[], Symbol(Array.map, Decl(lib.d.ts, 1115, 92))
>(c1) => c1.count : (c1: any) => any
->c1 : any
+>c1 : any, Symbol(c1, Decl(anyInferenceAnonymousFunctions.ts, 15, 12))
>c1.count : any
->c1 : any
+>c1 : any, Symbol(c1, Decl(anyInferenceAnonymousFunctions.ts, 15, 12))
>count : any
paired.map(function (c2) { return c2.count; });
>paired.map(function (c2) { return c2.count; }) : any[]
->paired.map : (callbackfn: (value: any, index: number, array: any[]) => U, thisArg?: any) => U[]
->paired : any[]
->map : (callbackfn: (value: any, index: number, array: any[]) => U, thisArg?: any) => U[]
+>paired.map : (callbackfn: (value: any, index: number, array: any[]) => U, thisArg?: any) => U[], Symbol(Array.map, Decl(lib.d.ts, 1115, 92))
+>paired : any[], Symbol(paired, Decl(anyInferenceAnonymousFunctions.ts, 0, 3))
+>map : (callbackfn: (value: any, index: number, array: any[]) => U, thisArg?: any) => U[], Symbol(Array.map, Decl(lib.d.ts, 1115, 92))
>function (c2) { return c2.count; } : (c2: any) => any
->c2 : any
+>c2 : any, Symbol(c2, Decl(anyInferenceAnonymousFunctions.ts, 16, 21))
>c2.count : any
->c2 : any
+>c2 : any, Symbol(c2, Decl(anyInferenceAnonymousFunctions.ts, 16, 21))
>count : any
diff --git a/tests/baselines/reference/anyIsAssignableToObject.types b/tests/baselines/reference/anyIsAssignableToObject.types
index 5df5d3b345f..73e1ef8b8dc 100644
--- a/tests/baselines/reference/anyIsAssignableToObject.types
+++ b/tests/baselines/reference/anyIsAssignableToObject.types
@@ -1,15 +1,15 @@
=== tests/cases/compiler/anyIsAssignableToObject.ts ===
interface P {
->P : P
+>P : P, Symbol(P, Decl(anyIsAssignableToObject.ts, 0, 0))
p: {};
->p : {}
+>p : {}, Symbol(p, Decl(anyIsAssignableToObject.ts, 0, 13))
}
interface Q extends P { // Check assignability here. Any is assignable to {}
->Q : Q
->P : P
+>Q : Q, Symbol(Q, Decl(anyIsAssignableToObject.ts, 2, 1))
+>P : P, Symbol(P, Decl(anyIsAssignableToObject.ts, 0, 0))
p: any;
->p : any
+>p : any, Symbol(p, Decl(anyIsAssignableToObject.ts, 4, 23))
}
diff --git a/tests/baselines/reference/anyIsAssignableToVoid.types b/tests/baselines/reference/anyIsAssignableToVoid.types
index 0e1af90971f..33d2b35bef2 100644
--- a/tests/baselines/reference/anyIsAssignableToVoid.types
+++ b/tests/baselines/reference/anyIsAssignableToVoid.types
@@ -1,15 +1,15 @@
=== tests/cases/compiler/anyIsAssignableToVoid.ts ===
interface P {
->P : P
+>P : P, Symbol(P, Decl(anyIsAssignableToVoid.ts, 0, 0))
p: void;
->p : void
+>p : void, Symbol(p, Decl(anyIsAssignableToVoid.ts, 0, 13))
}
interface Q extends P { // check assignability here. any is assignable to void.
->Q : Q
->P : P
+>Q : Q, Symbol(Q, Decl(anyIsAssignableToVoid.ts, 2, 1))
+>P : P, Symbol(P, Decl(anyIsAssignableToVoid.ts, 0, 0))
p: any;
->p : any
+>p : any, Symbol(p, Decl(anyIsAssignableToVoid.ts, 4, 23))
}
diff --git a/tests/baselines/reference/anyPlusAny1.types b/tests/baselines/reference/anyPlusAny1.types
index aeda001eeaa..003781fb0f4 100644
--- a/tests/baselines/reference/anyPlusAny1.types
+++ b/tests/baselines/reference/anyPlusAny1.types
@@ -1,16 +1,17 @@
=== tests/cases/compiler/anyPlusAny1.ts ===
var x;
->x : any
+>x : any, Symbol(x, Decl(anyPlusAny1.ts, 0, 3))
x.name = "hello";
>x.name = "hello" : string
>x.name : any
->x : any
+>x : any, Symbol(x, Decl(anyPlusAny1.ts, 0, 3))
>name : any
+>"hello" : string
var z = x + x;
->z : any
+>z : any, Symbol(z, Decl(anyPlusAny1.ts, 2, 3))
>x + x : any
->x : any
->x : any
+>x : any, Symbol(x, Decl(anyPlusAny1.ts, 0, 3))
+>x : any, Symbol(x, Decl(anyPlusAny1.ts, 0, 3))
diff --git a/tests/baselines/reference/anyPropertyAccess.types b/tests/baselines/reference/anyPropertyAccess.types
index 5ea20cefdd6..20ceabe687b 100644
--- a/tests/baselines/reference/anyPropertyAccess.types
+++ b/tests/baselines/reference/anyPropertyAccess.types
@@ -1,43 +1,47 @@
=== tests/cases/conformance/types/any/anyPropertyAccess.ts ===
var x: any;
->x : any
+>x : any, Symbol(x, Decl(anyPropertyAccess.ts, 0, 3))
var a = x.foo;
->a : any
+>a : any, Symbol(a, Decl(anyPropertyAccess.ts, 1, 3))
>x.foo : any
->x : any
+>x : any, Symbol(x, Decl(anyPropertyAccess.ts, 0, 3))
>foo : any
var b = x['foo'];
->b : any
+>b : any, Symbol(b, Decl(anyPropertyAccess.ts, 2, 3))
>x['foo'] : any
->x : any
+>x : any, Symbol(x, Decl(anyPropertyAccess.ts, 0, 3))
+>'foo' : string
var c = x['fn']();
->c : any
+>c : any, Symbol(c, Decl(anyPropertyAccess.ts, 3, 3))
>x['fn']() : any
>x['fn'] : any
->x : any
+>x : any, Symbol(x, Decl(anyPropertyAccess.ts, 0, 3))
+>'fn' : string
var d = x.bar.baz;
->d : any
+>d : any, Symbol(d, Decl(anyPropertyAccess.ts, 4, 3))
>x.bar.baz : any
>x.bar : any
->x : any
+>x : any, Symbol(x, Decl(anyPropertyAccess.ts, 0, 3))
>bar : any
>baz : any
var e = x[0].foo;
->e : any
+>e : any, Symbol(e, Decl(anyPropertyAccess.ts, 5, 3))
>x[0].foo : any
>x[0] : any
->x : any
+>x : any, Symbol(x, Decl(anyPropertyAccess.ts, 0, 3))
+>0 : number
>foo : any
var f = x['0'].bar;
->f : any
+>f : any, Symbol(f, Decl(anyPropertyAccess.ts, 6, 3))
>x['0'].bar : any
>x['0'] : any
->x : any
+>x : any, Symbol(x, Decl(anyPropertyAccess.ts, 0, 3))
+>'0' : string
>bar : any
diff --git a/tests/baselines/reference/argsInScope.types b/tests/baselines/reference/argsInScope.types
index 010e5624039..52f474c11c9 100644
--- a/tests/baselines/reference/argsInScope.types
+++ b/tests/baselines/reference/argsInScope.types
@@ -1,22 +1,23 @@
=== tests/cases/compiler/argsInScope.ts ===
class C {
->C : C
+>C : C, Symbol(C, Decl(argsInScope.ts, 0, 0))
P(ii:number, j:number, k:number) {
->P : (ii: number, j: number, k: number) => void
->ii : number
->j : number
->k : number
+>P : (ii: number, j: number, k: number) => void, Symbol(P, Decl(argsInScope.ts, 0, 9))
+>ii : number, Symbol(ii, Decl(argsInScope.ts, 1, 6))
+>j : number, Symbol(j, Decl(argsInScope.ts, 1, 16))
+>k : number, Symbol(k, Decl(argsInScope.ts, 1, 26))
for (var i = 0; i < arguments.length; i++) {
->i : number
+>i : number, Symbol(i, Decl(argsInScope.ts, 2, 15))
+>0 : number
>i < arguments.length : boolean
->i : number
->arguments.length : number
->arguments : IArguments
->length : number
+>i : number, Symbol(i, Decl(argsInScope.ts, 2, 15))
+>arguments.length : number, Symbol(IArguments.length, Decl(lib.d.ts, 272, 25))
+>arguments : IArguments, Symbol(arguments)
+>length : number, Symbol(IArguments.length, Decl(lib.d.ts, 272, 25))
>i++ : number
->i : number
+>i : number, Symbol(i, Decl(argsInScope.ts, 2, 15))
// WScript.Echo("param: " + arguments[i]);
}
@@ -24,13 +25,16 @@ class C {
}
var c = new C();
->c : C
+>c : C, Symbol(c, Decl(argsInScope.ts, 8, 3))
>new C() : C
->C : typeof C
+>C : typeof C, Symbol(C, Decl(argsInScope.ts, 0, 0))
c.P(1,2,3);
>c.P(1,2,3) : void
->c.P : (ii: number, j: number, k: number) => void
->c : C
->P : (ii: number, j: number, k: number) => void
+>c.P : (ii: number, j: number, k: number) => void, Symbol(C.P, Decl(argsInScope.ts, 0, 9))
+>c : C, Symbol(c, Decl(argsInScope.ts, 8, 3))
+>P : (ii: number, j: number, k: number) => void, Symbol(C.P, Decl(argsInScope.ts, 0, 9))
+>1 : number
+>2 : number
+>3 : number
diff --git a/tests/baselines/reference/arguments.types b/tests/baselines/reference/arguments.types
index 1902e459316..c1d618e99b3 100644
--- a/tests/baselines/reference/arguments.types
+++ b/tests/baselines/reference/arguments.types
@@ -1,9 +1,10 @@
=== tests/cases/compiler/arguments.ts ===
function f() {
->f : () => void
+>f : () => void, Symbol(f, Decl(arguments.ts, 0, 0))
var x=arguments[12];
->x : any
+>x : any, Symbol(x, Decl(arguments.ts, 1, 7))
>arguments[12] : any
->arguments : IArguments
+>arguments : IArguments, Symbol(arguments)
+>12 : number
}
diff --git a/tests/baselines/reference/argumentsUsedInObjectLiteralProperty.types b/tests/baselines/reference/argumentsUsedInObjectLiteralProperty.types
index 697858534db..a2f20b8c2fd 100644
--- a/tests/baselines/reference/argumentsUsedInObjectLiteralProperty.types
+++ b/tests/baselines/reference/argumentsUsedInObjectLiteralProperty.types
@@ -1,20 +1,20 @@
=== tests/cases/compiler/argumentsUsedInObjectLiteralProperty.ts ===
class A {
->A : A
+>A : A, Symbol(A, Decl(argumentsUsedInObjectLiteralProperty.ts, 0, 0))
public static createSelectableViewModel(initialState?: any, selectedValue?: any) {
->createSelectableViewModel : (initialState?: any, selectedValue?: any) => { selectedValue: number; }
->initialState : any
->selectedValue : any
+>createSelectableViewModel : (initialState?: any, selectedValue?: any) => { selectedValue: number; }, Symbol(A.createSelectableViewModel, Decl(argumentsUsedInObjectLiteralProperty.ts, 0, 9))
+>initialState : any, Symbol(initialState, Decl(argumentsUsedInObjectLiteralProperty.ts, 1, 44))
+>selectedValue : any, Symbol(selectedValue, Decl(argumentsUsedInObjectLiteralProperty.ts, 1, 63))
return {
>{ selectedValue: arguments.length } : { selectedValue: number; }
selectedValue: arguments.length
->selectedValue : number
->arguments.length : number
->arguments : IArguments
->length : number
+>selectedValue : number, Symbol(selectedValue, Decl(argumentsUsedInObjectLiteralProperty.ts, 2, 16))
+>arguments.length : number, Symbol(IArguments.length, Decl(lib.d.ts, 272, 25))
+>arguments : IArguments, Symbol(arguments)
+>length : number, Symbol(IArguments.length, Decl(lib.d.ts, 272, 25))
};
}
diff --git a/tests/baselines/reference/arithmeticOperatorWithAnyAndNumber.types b/tests/baselines/reference/arithmeticOperatorWithAnyAndNumber.types
index f0120f328c4..2eea0222969 100644
--- a/tests/baselines/reference/arithmeticOperatorWithAnyAndNumber.types
+++ b/tests/baselines/reference/arithmeticOperatorWithAnyAndNumber.types
@@ -1,437 +1,497 @@
=== tests/cases/conformance/expressions/binaryOperators/arithmeticOperator/arithmeticOperatorWithAnyAndNumber.ts ===
var a: any;
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
var b: number;
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
// operator *
var ra1 = a * a;
->ra1 : number
+>ra1 : number, Symbol(ra1, Decl(arithmeticOperatorWithAnyAndNumber.ts, 4, 3))
>a * a : number
->a : any
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
var ra2 = a * b;
->ra2 : number
+>ra2 : number, Symbol(ra2, Decl(arithmeticOperatorWithAnyAndNumber.ts, 5, 3))
>a * b : number
->a : any
->b : number
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
var ra3 = a * 0;
->ra3 : number
+>ra3 : number, Symbol(ra3, Decl(arithmeticOperatorWithAnyAndNumber.ts, 6, 3))
>a * 0 : number
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>0 : number
var ra4 = 0 * a;
->ra4 : number
+>ra4 : number, Symbol(ra4, Decl(arithmeticOperatorWithAnyAndNumber.ts, 7, 3))
>0 * a : number
->a : any
+>0 : number
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
var ra5 = 0 * 0;
->ra5 : number
+>ra5 : number, Symbol(ra5, Decl(arithmeticOperatorWithAnyAndNumber.ts, 8, 3))
>0 * 0 : number
+>0 : number
+>0 : number
var ra6 = b * 0;
->ra6 : number
+>ra6 : number, Symbol(ra6, Decl(arithmeticOperatorWithAnyAndNumber.ts, 9, 3))
>b * 0 : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
+>0 : number
var ra7 = 0 * b;
->ra7 : number
+>ra7 : number, Symbol(ra7, Decl(arithmeticOperatorWithAnyAndNumber.ts, 10, 3))
>0 * b : number
->b : number
+>0 : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
var ra8 = b * b;
->ra8 : number
+>ra8 : number, Symbol(ra8, Decl(arithmeticOperatorWithAnyAndNumber.ts, 11, 3))
>b * b : number
->b : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
// operator /
var rb1 = a / a;
->rb1 : number
+>rb1 : number, Symbol(rb1, Decl(arithmeticOperatorWithAnyAndNumber.ts, 14, 3))
>a / a : number
->a : any
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
var rb2 = a / b;
->rb2 : number
+>rb2 : number, Symbol(rb2, Decl(arithmeticOperatorWithAnyAndNumber.ts, 15, 3))
>a / b : number
->a : any
->b : number
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
var rb3 = a / 0;
->rb3 : number
+>rb3 : number, Symbol(rb3, Decl(arithmeticOperatorWithAnyAndNumber.ts, 16, 3))
>a / 0 : number
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>0 : number
var rb4 = 0 / a;
->rb4 : number
+>rb4 : number, Symbol(rb4, Decl(arithmeticOperatorWithAnyAndNumber.ts, 17, 3))
>0 / a : number
->a : any
+>0 : number
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
var rb5 = 0 / 0;
->rb5 : number
+>rb5 : number, Symbol(rb5, Decl(arithmeticOperatorWithAnyAndNumber.ts, 18, 3))
>0 / 0 : number
+>0 : number
+>0 : number
var rb6 = b / 0;
->rb6 : number
+>rb6 : number, Symbol(rb6, Decl(arithmeticOperatorWithAnyAndNumber.ts, 19, 3))
>b / 0 : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
+>0 : number
var rb7 = 0 / b;
->rb7 : number
+>rb7 : number, Symbol(rb7, Decl(arithmeticOperatorWithAnyAndNumber.ts, 20, 3))
>0 / b : number
->b : number
+>0 : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
var rb8 = b / b;
->rb8 : number
+>rb8 : number, Symbol(rb8, Decl(arithmeticOperatorWithAnyAndNumber.ts, 21, 3))
>b / b : number
->b : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
// operator %
var rc1 = a % a;
->rc1 : number
+>rc1 : number, Symbol(rc1, Decl(arithmeticOperatorWithAnyAndNumber.ts, 24, 3))
>a % a : number
->a : any
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
var rc2 = a % b;
->rc2 : number
+>rc2 : number, Symbol(rc2, Decl(arithmeticOperatorWithAnyAndNumber.ts, 25, 3))
>a % b : number
->a : any
->b : number
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
var rc3 = a % 0;
->rc3 : number
+>rc3 : number, Symbol(rc3, Decl(arithmeticOperatorWithAnyAndNumber.ts, 26, 3))
>a % 0 : number
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>0 : number
var rc4 = 0 % a;
->rc4 : number
+>rc4 : number, Symbol(rc4, Decl(arithmeticOperatorWithAnyAndNumber.ts, 27, 3))
>0 % a : number
->a : any
+>0 : number
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
var rc5 = 0 % 0;
->rc5 : number
+>rc5 : number, Symbol(rc5, Decl(arithmeticOperatorWithAnyAndNumber.ts, 28, 3))
>0 % 0 : number
+>0 : number
+>0 : number
var rc6 = b % 0;
->rc6 : number
+>rc6 : number, Symbol(rc6, Decl(arithmeticOperatorWithAnyAndNumber.ts, 29, 3))
>b % 0 : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
+>0 : number
var rc7 = 0 % b;
->rc7 : number
+>rc7 : number, Symbol(rc7, Decl(arithmeticOperatorWithAnyAndNumber.ts, 30, 3))
>0 % b : number
->b : number
+>0 : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
var rc8 = b % b;
->rc8 : number
+>rc8 : number, Symbol(rc8, Decl(arithmeticOperatorWithAnyAndNumber.ts, 31, 3))
>b % b : number
->b : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
// operator -
var rd1 = a - a;
->rd1 : number
+>rd1 : number, Symbol(rd1, Decl(arithmeticOperatorWithAnyAndNumber.ts, 34, 3))
>a - a : number
->a : any
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
var rd2 = a - b;
->rd2 : number
+>rd2 : number, Symbol(rd2, Decl(arithmeticOperatorWithAnyAndNumber.ts, 35, 3))
>a - b : number
->a : any
->b : number
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
var rd3 = a - 0;
->rd3 : number
+>rd3 : number, Symbol(rd3, Decl(arithmeticOperatorWithAnyAndNumber.ts, 36, 3))
>a - 0 : number
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>0 : number
var rd4 = 0 - a;
->rd4 : number
+>rd4 : number, Symbol(rd4, Decl(arithmeticOperatorWithAnyAndNumber.ts, 37, 3))
>0 - a : number
->a : any
+>0 : number
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
var rd5 = 0 - 0;
->rd5 : number
+>rd5 : number, Symbol(rd5, Decl(arithmeticOperatorWithAnyAndNumber.ts, 38, 3))
>0 - 0 : number
+>0 : number
+>0 : number
var rd6 = b - 0;
->rd6 : number
+>rd6 : number, Symbol(rd6, Decl(arithmeticOperatorWithAnyAndNumber.ts, 39, 3))
>b - 0 : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
+>0 : number
var rd7 = 0 - b;
->rd7 : number
+>rd7 : number, Symbol(rd7, Decl(arithmeticOperatorWithAnyAndNumber.ts, 40, 3))
>0 - b : number
->b : number
+>0 : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
var rd8 = b - b;
->rd8 : number
+>rd8 : number, Symbol(rd8, Decl(arithmeticOperatorWithAnyAndNumber.ts, 41, 3))
>b - b : number
->b : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
// operator <<
var re1 = a << a;
->re1 : number
+>re1 : number, Symbol(re1, Decl(arithmeticOperatorWithAnyAndNumber.ts, 44, 3))
>a << a : number
->a : any
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
var re2 = a << b;
->re2 : number
+>re2 : number, Symbol(re2, Decl(arithmeticOperatorWithAnyAndNumber.ts, 45, 3))
>a << b : number
->a : any
->b : number
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
var re3 = a << 0;
->re3 : number
+>re3 : number, Symbol(re3, Decl(arithmeticOperatorWithAnyAndNumber.ts, 46, 3))
>a << 0 : number
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>0 : number
var re4 = 0 << a;
->re4 : number
+>re4 : number, Symbol(re4, Decl(arithmeticOperatorWithAnyAndNumber.ts, 47, 3))
>0 << a : number
->a : any
+>0 : number
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
var re5 = 0 << 0;
->re5 : number
+>re5 : number, Symbol(re5, Decl(arithmeticOperatorWithAnyAndNumber.ts, 48, 3))
>0 << 0 : number
+>0 : number
+>0 : number
var re6 = b << 0;
->re6 : number
+>re6 : number, Symbol(re6, Decl(arithmeticOperatorWithAnyAndNumber.ts, 49, 3))
>b << 0 : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
+>0 : number
var re7 = 0 << b;
->re7 : number
+>re7 : number, Symbol(re7, Decl(arithmeticOperatorWithAnyAndNumber.ts, 50, 3))
>0 << b : number
->b : number
+>0 : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
var re8 = b << b;
->re8 : number
+>re8 : number, Symbol(re8, Decl(arithmeticOperatorWithAnyAndNumber.ts, 51, 3))
>b << b : number
->b : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
// operator >>
var rf1 = a >> a;
->rf1 : number
+>rf1 : number, Symbol(rf1, Decl(arithmeticOperatorWithAnyAndNumber.ts, 54, 3))
>a >> a : number
->a : any
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
var rf2 = a >> b;
->rf2 : number
+>rf2 : number, Symbol(rf2, Decl(arithmeticOperatorWithAnyAndNumber.ts, 55, 3))
>a >> b : number
->a : any
->b : number
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
var rf3 = a >> 0;
->rf3 : number
+>rf3 : number, Symbol(rf3, Decl(arithmeticOperatorWithAnyAndNumber.ts, 56, 3))
>a >> 0 : number
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>0 : number
var rf4 = 0 >> a;
->rf4 : number
+>rf4 : number, Symbol(rf4, Decl(arithmeticOperatorWithAnyAndNumber.ts, 57, 3))
>0 >> a : number
->a : any
+>0 : number
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
var rf5 = 0 >> 0;
->rf5 : number
+>rf5 : number, Symbol(rf5, Decl(arithmeticOperatorWithAnyAndNumber.ts, 58, 3))
>0 >> 0 : number
+>0 : number
+>0 : number
var rf6 = b >> 0;
->rf6 : number
+>rf6 : number, Symbol(rf6, Decl(arithmeticOperatorWithAnyAndNumber.ts, 59, 3))
>b >> 0 : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
+>0 : number
var rf7 = 0 >> b;
->rf7 : number
+>rf7 : number, Symbol(rf7, Decl(arithmeticOperatorWithAnyAndNumber.ts, 60, 3))
>0 >> b : number
->b : number
+>0 : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
var rf8 = b >> b;
->rf8 : number
+>rf8 : number, Symbol(rf8, Decl(arithmeticOperatorWithAnyAndNumber.ts, 61, 3))
>b >> b : number
->b : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
// operator >>>
var rg1 = a >>> a;
->rg1 : number
+>rg1 : number, Symbol(rg1, Decl(arithmeticOperatorWithAnyAndNumber.ts, 64, 3))
>a >>> a : number
->a : any
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
var rg2 = a >>> b;
->rg2 : number
+>rg2 : number, Symbol(rg2, Decl(arithmeticOperatorWithAnyAndNumber.ts, 65, 3))
>a >>> b : number
->a : any
->b : number
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
var rg3 = a >>> 0;
->rg3 : number
+>rg3 : number, Symbol(rg3, Decl(arithmeticOperatorWithAnyAndNumber.ts, 66, 3))
>a >>> 0 : number
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>0 : number
var rg4 = 0 >>> a;
->rg4 : number
+>rg4 : number, Symbol(rg4, Decl(arithmeticOperatorWithAnyAndNumber.ts, 67, 3))
>0 >>> a : number
->a : any
+>0 : number
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
var rg5 = 0 >>> 0;
->rg5 : number
+>rg5 : number, Symbol(rg5, Decl(arithmeticOperatorWithAnyAndNumber.ts, 68, 3))
>0 >>> 0 : number
+>0 : number
+>0 : number
var rg6 = b >>> 0;
->rg6 : number
+>rg6 : number, Symbol(rg6, Decl(arithmeticOperatorWithAnyAndNumber.ts, 69, 3))
>b >>> 0 : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
+>0 : number
var rg7 = 0 >>> b;
->rg7 : number
+>rg7 : number, Symbol(rg7, Decl(arithmeticOperatorWithAnyAndNumber.ts, 70, 3))
>0 >>> b : number
->b : number
+>0 : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
var rg8 = b >>> b;
->rg8 : number
+>rg8 : number, Symbol(rg8, Decl(arithmeticOperatorWithAnyAndNumber.ts, 71, 3))
>b >>> b : number
->b : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
// operator &
var rh1 = a & a;
->rh1 : number
+>rh1 : number, Symbol(rh1, Decl(arithmeticOperatorWithAnyAndNumber.ts, 74, 3))
>a & a : number
->a : any
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
var rh2 = a & b;
->rh2 : number
+>rh2 : number, Symbol(rh2, Decl(arithmeticOperatorWithAnyAndNumber.ts, 75, 3))
>a & b : number
->a : any
->b : number
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
var rh3 = a & 0;
->rh3 : number
+>rh3 : number, Symbol(rh3, Decl(arithmeticOperatorWithAnyAndNumber.ts, 76, 3))
>a & 0 : number
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>0 : number
var rh4 = 0 & a;
->rh4 : number
+>rh4 : number, Symbol(rh4, Decl(arithmeticOperatorWithAnyAndNumber.ts, 77, 3))
>0 & a : number
->a : any
+>0 : number
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
var rh5 = 0 & 0;
->rh5 : number
+>rh5 : number, Symbol(rh5, Decl(arithmeticOperatorWithAnyAndNumber.ts, 78, 3))
>0 & 0 : number
+>0 : number
+>0 : number
var rh6 = b & 0;
->rh6 : number
+>rh6 : number, Symbol(rh6, Decl(arithmeticOperatorWithAnyAndNumber.ts, 79, 3))
>b & 0 : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
+>0 : number
var rh7 = 0 & b;
->rh7 : number
+>rh7 : number, Symbol(rh7, Decl(arithmeticOperatorWithAnyAndNumber.ts, 80, 3))
>0 & b : number
->b : number
+>0 : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
var rh8 = b & b;
->rh8 : number
+>rh8 : number, Symbol(rh8, Decl(arithmeticOperatorWithAnyAndNumber.ts, 81, 3))
>b & b : number
->b : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
// operator ^
var ri1 = a ^ a;
->ri1 : number
+>ri1 : number, Symbol(ri1, Decl(arithmeticOperatorWithAnyAndNumber.ts, 84, 3))
>a ^ a : number
->a : any
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
var ri2 = a ^ b;
->ri2 : number
+>ri2 : number, Symbol(ri2, Decl(arithmeticOperatorWithAnyAndNumber.ts, 85, 3))
>a ^ b : number
->a : any
->b : number
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
var ri3 = a ^ 0;
->ri3 : number
+>ri3 : number, Symbol(ri3, Decl(arithmeticOperatorWithAnyAndNumber.ts, 86, 3))
>a ^ 0 : number
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>0 : number
var ri4 = 0 ^ a;
->ri4 : number
+>ri4 : number, Symbol(ri4, Decl(arithmeticOperatorWithAnyAndNumber.ts, 87, 3))
>0 ^ a : number
->a : any
+>0 : number
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
var ri5 = 0 ^ 0;
->ri5 : number
+>ri5 : number, Symbol(ri5, Decl(arithmeticOperatorWithAnyAndNumber.ts, 88, 3))
>0 ^ 0 : number
+>0 : number
+>0 : number
var ri6 = b ^ 0;
->ri6 : number
+>ri6 : number, Symbol(ri6, Decl(arithmeticOperatorWithAnyAndNumber.ts, 89, 3))
>b ^ 0 : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
+>0 : number
var ri7 = 0 ^ b;
->ri7 : number
+>ri7 : number, Symbol(ri7, Decl(arithmeticOperatorWithAnyAndNumber.ts, 90, 3))
>0 ^ b : number
->b : number
+>0 : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
var ri8 = b ^ b;
->ri8 : number
+>ri8 : number, Symbol(ri8, Decl(arithmeticOperatorWithAnyAndNumber.ts, 91, 3))
>b ^ b : number
->b : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
// operator |
var rj1 = a | a;
->rj1 : number
+>rj1 : number, Symbol(rj1, Decl(arithmeticOperatorWithAnyAndNumber.ts, 94, 3))
>a | a : number
->a : any
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
var rj2 = a | b;
->rj2 : number
+>rj2 : number, Symbol(rj2, Decl(arithmeticOperatorWithAnyAndNumber.ts, 95, 3))
>a | b : number
->a : any
->b : number
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
var rj3 = a | 0;
->rj3 : number
+>rj3 : number, Symbol(rj3, Decl(arithmeticOperatorWithAnyAndNumber.ts, 96, 3))
>a | 0 : number
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
+>0 : number
var rj4 = 0 | a;
->rj4 : number
+>rj4 : number, Symbol(rj4, Decl(arithmeticOperatorWithAnyAndNumber.ts, 97, 3))
>0 | a : number
->a : any
+>0 : number
+>a : any, Symbol(a, Decl(arithmeticOperatorWithAnyAndNumber.ts, 0, 3))
var rj5 = 0 | 0;
->rj5 : number
+>rj5 : number, Symbol(rj5, Decl(arithmeticOperatorWithAnyAndNumber.ts, 98, 3))
>0 | 0 : number
+>0 : number
+>0 : number
var rj6 = b | 0;
->rj6 : number
+>rj6 : number, Symbol(rj6, Decl(arithmeticOperatorWithAnyAndNumber.ts, 99, 3))
>b | 0 : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
+>0 : number
var rj7 = 0 | b;
->rj7 : number
+>rj7 : number, Symbol(rj7, Decl(arithmeticOperatorWithAnyAndNumber.ts, 100, 3))
>0 | b : number
->b : number
+>0 : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
var rj8 = b | b;
->rj8 : number
+>rj8 : number, Symbol(rj8, Decl(arithmeticOperatorWithAnyAndNumber.ts, 101, 3))
>b | b : number
->b : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithAnyAndNumber.ts, 1, 3))
diff --git a/tests/baselines/reference/arithmeticOperatorWithEnum.types b/tests/baselines/reference/arithmeticOperatorWithEnum.types
index 2f4ebce8f32..923163200d5 100644
--- a/tests/baselines/reference/arithmeticOperatorWithEnum.types
+++ b/tests/baselines/reference/arithmeticOperatorWithEnum.types
@@ -2,892 +2,912 @@
// operands of an enum type are treated as having the primitive type Number.
enum E {
->E : E
+>E : E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
a,
->a : E
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
b
->b : E
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
}
var a: any;
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
var b: number;
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
var c: E;
->c : E
->E : E
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>E : E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
// operator *
var ra1 = c * a;
->ra1 : number
+>ra1 : number, Symbol(ra1, Decl(arithmeticOperatorWithEnum.ts, 12, 3))
>c * a : number
->c : E
->a : any
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
var ra2 = c * b;
->ra2 : number
+>ra2 : number, Symbol(ra2, Decl(arithmeticOperatorWithEnum.ts, 13, 3))
>c * b : number
->c : E
->b : number
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
var ra3 = c * c;
->ra3 : number
+>ra3 : number, Symbol(ra3, Decl(arithmeticOperatorWithEnum.ts, 14, 3))
>c * c : number
->c : E
->c : E
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var ra4 = a * c;
->ra4 : number
+>ra4 : number, Symbol(ra4, Decl(arithmeticOperatorWithEnum.ts, 15, 3))
>a * c : number
->a : any
->c : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var ra5 = b * c;
->ra5 : number
+>ra5 : number, Symbol(ra5, Decl(arithmeticOperatorWithEnum.ts, 16, 3))
>b * c : number
->b : number
->c : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var ra6 = E.a * a;
->ra6 : number
+>ra6 : number, Symbol(ra6, Decl(arithmeticOperatorWithEnum.ts, 17, 3))
>E.a * a : number
->E.a : E
->E : typeof E
->a : E
->a : any
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
var ra7 = E.a * b;
->ra7 : number
+>ra7 : number, Symbol(ra7, Decl(arithmeticOperatorWithEnum.ts, 18, 3))
>E.a * b : number
->E.a : E
->E : typeof E
->a : E
->b : number
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
var ra8 = E.a * E.b;
->ra8 : number
+>ra8 : number, Symbol(ra8, Decl(arithmeticOperatorWithEnum.ts, 19, 3))
>E.a * E.b : number
->E.a : E
->E : typeof E
->a : E
->E.b : E
->E : typeof E
->b : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var ra9 = E.a * 1;
->ra9 : number
+>ra9 : number, Symbol(ra9, Decl(arithmeticOperatorWithEnum.ts, 20, 3))
>E.a * 1 : number
->E.a : E
->E : typeof E
->a : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>1 : number
var ra10 = a * E.b;
->ra10 : number
+>ra10 : number, Symbol(ra10, Decl(arithmeticOperatorWithEnum.ts, 21, 3))
>a * E.b : number
->a : any
->E.b : E
->E : typeof E
->b : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var ra11 = b * E.b;
->ra11 : number
+>ra11 : number, Symbol(ra11, Decl(arithmeticOperatorWithEnum.ts, 22, 3))
>b * E.b : number
->b : number
->E.b : E
->E : typeof E
->b : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var ra12 = 1 * E.b;
->ra12 : number
+>ra12 : number, Symbol(ra12, Decl(arithmeticOperatorWithEnum.ts, 23, 3))
>1 * E.b : number
->E.b : E
->E : typeof E
->b : E
+>1 : number
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
// operator /
var rb1 = c / a;
->rb1 : number
+>rb1 : number, Symbol(rb1, Decl(arithmeticOperatorWithEnum.ts, 26, 3))
>c / a : number
->c : E
->a : any
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
var rb2 = c / b;
->rb2 : number
+>rb2 : number, Symbol(rb2, Decl(arithmeticOperatorWithEnum.ts, 27, 3))
>c / b : number
->c : E
->b : number
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
var rb3 = c / c;
->rb3 : number
+>rb3 : number, Symbol(rb3, Decl(arithmeticOperatorWithEnum.ts, 28, 3))
>c / c : number
->c : E
->c : E
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var rb4 = a / c;
->rb4 : number
+>rb4 : number, Symbol(rb4, Decl(arithmeticOperatorWithEnum.ts, 29, 3))
>a / c : number
->a : any
->c : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var rb5 = b / c;
->rb5 : number
+>rb5 : number, Symbol(rb5, Decl(arithmeticOperatorWithEnum.ts, 30, 3))
>b / c : number
->b : number
->c : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var rb6 = E.a / a;
->rb6 : number
+>rb6 : number, Symbol(rb6, Decl(arithmeticOperatorWithEnum.ts, 31, 3))
>E.a / a : number
->E.a : E
->E : typeof E
->a : E
->a : any
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
var rb7 = E.a / b;
->rb7 : number
+>rb7 : number, Symbol(rb7, Decl(arithmeticOperatorWithEnum.ts, 32, 3))
>E.a / b : number
->E.a : E
->E : typeof E
->a : E
->b : number
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
var rb8 = E.a / E.b;
->rb8 : number
+>rb8 : number, Symbol(rb8, Decl(arithmeticOperatorWithEnum.ts, 33, 3))
>E.a / E.b : number
->E.a : E
->E : typeof E
->a : E
->E.b : E
->E : typeof E
->b : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var rb9 = E.a / 1;
->rb9 : number
+>rb9 : number, Symbol(rb9, Decl(arithmeticOperatorWithEnum.ts, 34, 3))
>E.a / 1 : number
->E.a : E
->E : typeof E
->a : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>1 : number
var rb10 = a / E.b;
->rb10 : number
+>rb10 : number, Symbol(rb10, Decl(arithmeticOperatorWithEnum.ts, 35, 3))
>a / E.b : number
->a : any
->E.b : E
->E : typeof E
->b : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var rb11 = b / E.b;
->rb11 : number
+>rb11 : number, Symbol(rb11, Decl(arithmeticOperatorWithEnum.ts, 36, 3))
>b / E.b : number
->b : number
->E.b : E
->E : typeof E
->b : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var rb12 = 1 / E.b;
->rb12 : number
+>rb12 : number, Symbol(rb12, Decl(arithmeticOperatorWithEnum.ts, 37, 3))
>1 / E.b : number
->E.b : E
->E : typeof E
->b : E
+>1 : number
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
// operator %
var rc1 = c % a;
->rc1 : number
+>rc1 : number, Symbol(rc1, Decl(arithmeticOperatorWithEnum.ts, 40, 3))
>c % a : number
->c : E
->a : any
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
var rc2 = c % b;
->rc2 : number
+>rc2 : number, Symbol(rc2, Decl(arithmeticOperatorWithEnum.ts, 41, 3))
>c % b : number
->c : E
->b : number
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
var rc3 = c % c;
->rc3 : number
+>rc3 : number, Symbol(rc3, Decl(arithmeticOperatorWithEnum.ts, 42, 3))
>c % c : number
->c : E
->c : E
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var rc4 = a % c;
->rc4 : number
+>rc4 : number, Symbol(rc4, Decl(arithmeticOperatorWithEnum.ts, 43, 3))
>a % c : number
->a : any
->c : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var rc5 = b % c;
->rc5 : number
+>rc5 : number, Symbol(rc5, Decl(arithmeticOperatorWithEnum.ts, 44, 3))
>b % c : number
->b : number
->c : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var rc6 = E.a % a;
->rc6 : number
+>rc6 : number, Symbol(rc6, Decl(arithmeticOperatorWithEnum.ts, 45, 3))
>E.a % a : number
->E.a : E
->E : typeof E
->a : E
->a : any
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
var rc7 = E.a % b;
->rc7 : number
+>rc7 : number, Symbol(rc7, Decl(arithmeticOperatorWithEnum.ts, 46, 3))
>E.a % b : number
->E.a : E
->E : typeof E
->a : E
->b : number
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
var rc8 = E.a % E.b;
->rc8 : number
+>rc8 : number, Symbol(rc8, Decl(arithmeticOperatorWithEnum.ts, 47, 3))
>E.a % E.b : number
->E.a : E
->E : typeof E
->a : E
->E.b : E
->E : typeof E
->b : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var rc9 = E.a % 1;
->rc9 : number
+>rc9 : number, Symbol(rc9, Decl(arithmeticOperatorWithEnum.ts, 48, 3))
>E.a % 1 : number
->E.a : E
->E : typeof E
->a : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>1 : number
var rc10 = a % E.b;
->rc10 : number
+>rc10 : number, Symbol(rc10, Decl(arithmeticOperatorWithEnum.ts, 49, 3))
>a % E.b : number
->a : any
->E.b : E
->E : typeof E
->b : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var rc11 = b % E.b;
->rc11 : number
+>rc11 : number, Symbol(rc11, Decl(arithmeticOperatorWithEnum.ts, 50, 3))
>b % E.b : number
->b : number
->E.b : E
->E : typeof E
->b : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var rc12 = 1 % E.b;
->rc12 : number
+>rc12 : number, Symbol(rc12, Decl(arithmeticOperatorWithEnum.ts, 51, 3))
>1 % E.b : number
->E.b : E
->E : typeof E
->b : E
+>1 : number
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
// operator -
var rd1 = c - a;
->rd1 : number
+>rd1 : number, Symbol(rd1, Decl(arithmeticOperatorWithEnum.ts, 54, 3))
>c - a : number
->c : E
->a : any
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
var rd2 = c - b;
->rd2 : number
+>rd2 : number, Symbol(rd2, Decl(arithmeticOperatorWithEnum.ts, 55, 3))
>c - b : number
->c : E
->b : number
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
var rd3 = c - c;
->rd3 : number
+>rd3 : number, Symbol(rd3, Decl(arithmeticOperatorWithEnum.ts, 56, 3))
>c - c : number
->c : E
->c : E
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var rd4 = a - c;
->rd4 : number
+>rd4 : number, Symbol(rd4, Decl(arithmeticOperatorWithEnum.ts, 57, 3))
>a - c : number
->a : any
->c : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var rd5 = b - c;
->rd5 : number
+>rd5 : number, Symbol(rd5, Decl(arithmeticOperatorWithEnum.ts, 58, 3))
>b - c : number
->b : number
->c : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var rd6 = E.a - a;
->rd6 : number
+>rd6 : number, Symbol(rd6, Decl(arithmeticOperatorWithEnum.ts, 59, 3))
>E.a - a : number
->E.a : E
->E : typeof E
->a : E
->a : any
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
var rd7 = E.a - b;
->rd7 : number
+>rd7 : number, Symbol(rd7, Decl(arithmeticOperatorWithEnum.ts, 60, 3))
>E.a - b : number
->E.a : E
->E : typeof E
->a : E
->b : number
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
var rd8 = E.a - E.b;
->rd8 : number
+>rd8 : number, Symbol(rd8, Decl(arithmeticOperatorWithEnum.ts, 61, 3))
>E.a - E.b : number
->E.a : E
->E : typeof E
->a : E
->E.b : E
->E : typeof E
->b : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var rd9 = E.a - 1;
->rd9 : number
+>rd9 : number, Symbol(rd9, Decl(arithmeticOperatorWithEnum.ts, 62, 3))
>E.a - 1 : number
->E.a : E
->E : typeof E
->a : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>1 : number
var rd10 = a - E.b;
->rd10 : number
+>rd10 : number, Symbol(rd10, Decl(arithmeticOperatorWithEnum.ts, 63, 3))
>a - E.b : number
->a : any
->E.b : E
->E : typeof E
->b : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var rd11 = b - E.b;
->rd11 : number
+>rd11 : number, Symbol(rd11, Decl(arithmeticOperatorWithEnum.ts, 64, 3))
>b - E.b : number
->b : number
->E.b : E
->E : typeof E
->b : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var rd12 = 1 - E.b;
->rd12 : number
+>rd12 : number, Symbol(rd12, Decl(arithmeticOperatorWithEnum.ts, 65, 3))
>1 - E.b : number
->E.b : E
->E : typeof E
->b : E
+>1 : number
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
// operator <<
var re1 = c << a;
->re1 : number
+>re1 : number, Symbol(re1, Decl(arithmeticOperatorWithEnum.ts, 68, 3))
>c << a : number
->c : E
->a : any
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
var re2 = c << b;
->re2 : number
+>re2 : number, Symbol(re2, Decl(arithmeticOperatorWithEnum.ts, 69, 3))
>c << b : number
->c : E
->b : number
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
var re3 = c << c;
->re3 : number
+>re3 : number, Symbol(re3, Decl(arithmeticOperatorWithEnum.ts, 70, 3))
>c << c : number
->c : E
->c : E
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var re4 = a << c;
->re4 : number
+>re4 : number, Symbol(re4, Decl(arithmeticOperatorWithEnum.ts, 71, 3))
>a << c : number
->a : any
->c : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var re5 = b << c;
->re5 : number
+>re5 : number, Symbol(re5, Decl(arithmeticOperatorWithEnum.ts, 72, 3))
>b << c : number
->b : number
->c : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var re6 = E.a << a;
->re6 : number
+>re6 : number, Symbol(re6, Decl(arithmeticOperatorWithEnum.ts, 73, 3))
>E.a << a : number
->E.a : E
->E : typeof E
->a : E
->a : any
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
var re7 = E.a << b;
->re7 : number
+>re7 : number, Symbol(re7, Decl(arithmeticOperatorWithEnum.ts, 74, 3))
>E.a << b : number
->E.a : E
->E : typeof E
->a : E
->b : number
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
var re8 = E.a << E.b;
->re8 : number
+>re8 : number, Symbol(re8, Decl(arithmeticOperatorWithEnum.ts, 75, 3))
>E.a << E.b : number
->E.a : E
->E : typeof E
->a : E
->E.b : E
->E : typeof E
->b : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var re9 = E.a << 1;
->re9 : number
+>re9 : number, Symbol(re9, Decl(arithmeticOperatorWithEnum.ts, 76, 3))
>E.a << 1 : number
->E.a : E
->E : typeof E
->a : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>1 : number
var re10 = a << E.b;
->re10 : number
+>re10 : number, Symbol(re10, Decl(arithmeticOperatorWithEnum.ts, 77, 3))
>a << E.b : number
->a : any
->E.b : E
->E : typeof E
->b : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var re11 = b << E.b;
->re11 : number
+>re11 : number, Symbol(re11, Decl(arithmeticOperatorWithEnum.ts, 78, 3))
>b << E.b : number
->b : number
->E.b : E
->E : typeof E
->b : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var re12 = 1 << E.b;
->re12 : number
+>re12 : number, Symbol(re12, Decl(arithmeticOperatorWithEnum.ts, 79, 3))
>1 << E.b : number
->E.b : E
->E : typeof E
->b : E
+>1 : number
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
// operator >>
var rf1 = c >> a;
->rf1 : number
+>rf1 : number, Symbol(rf1, Decl(arithmeticOperatorWithEnum.ts, 82, 3))
>c >> a : number
->c : E
->a : any
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
var rf2 = c >> b;
->rf2 : number
+>rf2 : number, Symbol(rf2, Decl(arithmeticOperatorWithEnum.ts, 83, 3))
>c >> b : number
->c : E
->b : number
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
var rf3 = c >> c;
->rf3 : number
+>rf3 : number, Symbol(rf3, Decl(arithmeticOperatorWithEnum.ts, 84, 3))
>c >> c : number
->c : E
->c : E
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var rf4 = a >> c;
->rf4 : number
+>rf4 : number, Symbol(rf4, Decl(arithmeticOperatorWithEnum.ts, 85, 3))
>a >> c : number
->a : any
->c : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var rf5 = b >> c;
->rf5 : number
+>rf5 : number, Symbol(rf5, Decl(arithmeticOperatorWithEnum.ts, 86, 3))
>b >> c : number
->b : number
->c : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var rf6 = E.a >> a;
->rf6 : number
+>rf6 : number, Symbol(rf6, Decl(arithmeticOperatorWithEnum.ts, 87, 3))
>E.a >> a : number
->E.a : E
->E : typeof E
->a : E
->a : any
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
var rf7 = E.a >> b;
->rf7 : number
+>rf7 : number, Symbol(rf7, Decl(arithmeticOperatorWithEnum.ts, 88, 3))
>E.a >> b : number
->E.a : E
->E : typeof E
->a : E
->b : number
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
var rf8 = E.a >> E.b;
->rf8 : number
+>rf8 : number, Symbol(rf8, Decl(arithmeticOperatorWithEnum.ts, 89, 3))
>E.a >> E.b : number
->E.a : E
->E : typeof E
->a : E
->E.b : E
->E : typeof E
->b : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var rf9 = E.a >> 1;
->rf9 : number
+>rf9 : number, Symbol(rf9, Decl(arithmeticOperatorWithEnum.ts, 90, 3))
>E.a >> 1 : number
->E.a : E
->E : typeof E
->a : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>1 : number
var rf10 = a >> E.b;
->rf10 : number
+>rf10 : number, Symbol(rf10, Decl(arithmeticOperatorWithEnum.ts, 91, 3))
>a >> E.b : number
->a : any
->E.b : E
->E : typeof E
->b : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var rf11 = b >> E.b;
->rf11 : number
+>rf11 : number, Symbol(rf11, Decl(arithmeticOperatorWithEnum.ts, 92, 3))
>b >> E.b : number
->b : number
->E.b : E
->E : typeof E
->b : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var rf12 = 1 >> E.b;
->rf12 : number
+>rf12 : number, Symbol(rf12, Decl(arithmeticOperatorWithEnum.ts, 93, 3))
>1 >> E.b : number
->E.b : E
->E : typeof E
->b : E
+>1 : number
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
// operator >>>
var rg1 = c >>> a;
->rg1 : number
+>rg1 : number, Symbol(rg1, Decl(arithmeticOperatorWithEnum.ts, 96, 3))
>c >>> a : number
->c : E
->a : any
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
var rg2 = c >>> b;
->rg2 : number
+>rg2 : number, Symbol(rg2, Decl(arithmeticOperatorWithEnum.ts, 97, 3))
>c >>> b : number
->c : E
->b : number
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
var rg3 = c >>> c;
->rg3 : number
+>rg3 : number, Symbol(rg3, Decl(arithmeticOperatorWithEnum.ts, 98, 3))
>c >>> c : number
->c : E
->c : E
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var rg4 = a >>> c;
->rg4 : number
+>rg4 : number, Symbol(rg4, Decl(arithmeticOperatorWithEnum.ts, 99, 3))
>a >>> c : number
->a : any
->c : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var rg5 = b >>> c;
->rg5 : number
+>rg5 : number, Symbol(rg5, Decl(arithmeticOperatorWithEnum.ts, 100, 3))
>b >>> c : number
->b : number
->c : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var rg6 = E.a >>> a;
->rg6 : number
+>rg6 : number, Symbol(rg6, Decl(arithmeticOperatorWithEnum.ts, 101, 3))
>E.a >>> a : number
->E.a : E
->E : typeof E
->a : E
->a : any
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
var rg7 = E.a >>> b;
->rg7 : number
+>rg7 : number, Symbol(rg7, Decl(arithmeticOperatorWithEnum.ts, 102, 3))
>E.a >>> b : number
->E.a : E
->E : typeof E
->a : E
->b : number
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
var rg8 = E.a >>> E.b;
->rg8 : number
+>rg8 : number, Symbol(rg8, Decl(arithmeticOperatorWithEnum.ts, 103, 3))
>E.a >>> E.b : number
->E.a : E
->E : typeof E
->a : E
->E.b : E
->E : typeof E
->b : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var rg9 = E.a >>> 1;
->rg9 : number
+>rg9 : number, Symbol(rg9, Decl(arithmeticOperatorWithEnum.ts, 104, 3))
>E.a >>> 1 : number
->E.a : E
->E : typeof E
->a : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>1 : number
var rg10 = a >>> E.b;
->rg10 : number
+>rg10 : number, Symbol(rg10, Decl(arithmeticOperatorWithEnum.ts, 105, 3))
>a >>> E.b : number
->a : any
->E.b : E
->E : typeof E
->b : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var rg11 = b >>> E.b;
->rg11 : number
+>rg11 : number, Symbol(rg11, Decl(arithmeticOperatorWithEnum.ts, 106, 3))
>b >>> E.b : number
->b : number
->E.b : E
->E : typeof E
->b : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var rg12 = 1 >>> E.b;
->rg12 : number
+>rg12 : number, Symbol(rg12, Decl(arithmeticOperatorWithEnum.ts, 107, 3))
>1 >>> E.b : number
->E.b : E
->E : typeof E
->b : E
+>1 : number
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
// operator &
var rh1 = c & a;
->rh1 : number
+>rh1 : number, Symbol(rh1, Decl(arithmeticOperatorWithEnum.ts, 110, 3))
>c & a : number
->c : E
->a : any
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
var rh2 = c & b;
->rh2 : number
+>rh2 : number, Symbol(rh2, Decl(arithmeticOperatorWithEnum.ts, 111, 3))
>c & b : number
->c : E
->b : number
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
var rh3 = c & c;
->rh3 : number
+>rh3 : number, Symbol(rh3, Decl(arithmeticOperatorWithEnum.ts, 112, 3))
>c & c : number
->c : E
->c : E
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var rh4 = a & c;
->rh4 : number
+>rh4 : number, Symbol(rh4, Decl(arithmeticOperatorWithEnum.ts, 113, 3))
>a & c : number
->a : any
->c : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var rh5 = b & c;
->rh5 : number
+>rh5 : number, Symbol(rh5, Decl(arithmeticOperatorWithEnum.ts, 114, 3))
>b & c : number
->b : number
->c : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var rh6 = E.a & a;
->rh6 : number
+>rh6 : number, Symbol(rh6, Decl(arithmeticOperatorWithEnum.ts, 115, 3))
>E.a & a : number
->E.a : E
->E : typeof E
->a : E
->a : any
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
var rh7 = E.a & b;
->rh7 : number
+>rh7 : number, Symbol(rh7, Decl(arithmeticOperatorWithEnum.ts, 116, 3))
>E.a & b : number
->E.a : E
->E : typeof E
->a : E
->b : number
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
var rh8 = E.a & E.b;
->rh8 : number
+>rh8 : number, Symbol(rh8, Decl(arithmeticOperatorWithEnum.ts, 117, 3))
>E.a & E.b : number
->E.a : E
->E : typeof E
->a : E
->E.b : E
->E : typeof E
->b : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var rh9 = E.a & 1;
->rh9 : number
+>rh9 : number, Symbol(rh9, Decl(arithmeticOperatorWithEnum.ts, 118, 3))
>E.a & 1 : number
->E.a : E
->E : typeof E
->a : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>1 : number
var rh10 = a & E.b;
->rh10 : number
+>rh10 : number, Symbol(rh10, Decl(arithmeticOperatorWithEnum.ts, 119, 3))
>a & E.b : number
->a : any
->E.b : E
->E : typeof E
->b : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var rh11 = b & E.b;
->rh11 : number
+>rh11 : number, Symbol(rh11, Decl(arithmeticOperatorWithEnum.ts, 120, 3))
>b & E.b : number
->b : number
->E.b : E
->E : typeof E
->b : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var rh12 = 1 & E.b;
->rh12 : number
+>rh12 : number, Symbol(rh12, Decl(arithmeticOperatorWithEnum.ts, 121, 3))
>1 & E.b : number
->E.b : E
->E : typeof E
->b : E
+>1 : number
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
// operator ^
var ri1 = c ^ a;
->ri1 : number
+>ri1 : number, Symbol(ri1, Decl(arithmeticOperatorWithEnum.ts, 124, 3))
>c ^ a : number
->c : E
->a : any
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
var ri2 = c ^ b;
->ri2 : number
+>ri2 : number, Symbol(ri2, Decl(arithmeticOperatorWithEnum.ts, 125, 3))
>c ^ b : number
->c : E
->b : number
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
var ri3 = c ^ c;
->ri3 : number
+>ri3 : number, Symbol(ri3, Decl(arithmeticOperatorWithEnum.ts, 126, 3))
>c ^ c : number
->c : E
->c : E
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var ri4 = a ^ c;
->ri4 : number
+>ri4 : number, Symbol(ri4, Decl(arithmeticOperatorWithEnum.ts, 127, 3))
>a ^ c : number
->a : any
->c : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var ri5 = b ^ c;
->ri5 : number
+>ri5 : number, Symbol(ri5, Decl(arithmeticOperatorWithEnum.ts, 128, 3))
>b ^ c : number
->b : number
->c : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var ri6 = E.a ^ a;
->ri6 : number
+>ri6 : number, Symbol(ri6, Decl(arithmeticOperatorWithEnum.ts, 129, 3))
>E.a ^ a : number
->E.a : E
->E : typeof E
->a : E
->a : any
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
var ri7 = E.a ^ b;
->ri7 : number
+>ri7 : number, Symbol(ri7, Decl(arithmeticOperatorWithEnum.ts, 130, 3))
>E.a ^ b : number
->E.a : E
->E : typeof E
->a : E
->b : number
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
var ri8 = E.a ^ E.b;
->ri8 : number
+>ri8 : number, Symbol(ri8, Decl(arithmeticOperatorWithEnum.ts, 131, 3))
>E.a ^ E.b : number
->E.a : E
->E : typeof E
->a : E
->E.b : E
->E : typeof E
->b : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var ri9 = E.a ^ 1;
->ri9 : number
+>ri9 : number, Symbol(ri9, Decl(arithmeticOperatorWithEnum.ts, 132, 3))
>E.a ^ 1 : number
->E.a : E
->E : typeof E
->a : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>1 : number
var ri10 = a ^ E.b;
->ri10 : number
+>ri10 : number, Symbol(ri10, Decl(arithmeticOperatorWithEnum.ts, 133, 3))
>a ^ E.b : number
->a : any
->E.b : E
->E : typeof E
->b : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var ri11 = b ^ E.b;
->ri11 : number
+>ri11 : number, Symbol(ri11, Decl(arithmeticOperatorWithEnum.ts, 134, 3))
>b ^ E.b : number
->b : number
->E.b : E
->E : typeof E
->b : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var ri12 = 1 ^ E.b;
->ri12 : number
+>ri12 : number, Symbol(ri12, Decl(arithmeticOperatorWithEnum.ts, 135, 3))
>1 ^ E.b : number
->E.b : E
->E : typeof E
->b : E
+>1 : number
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
// operator |
var rj1 = c | a;
->rj1 : number
+>rj1 : number, Symbol(rj1, Decl(arithmeticOperatorWithEnum.ts, 138, 3))
>c | a : number
->c : E
->a : any
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
var rj2 = c | b;
->rj2 : number
+>rj2 : number, Symbol(rj2, Decl(arithmeticOperatorWithEnum.ts, 139, 3))
>c | b : number
->c : E
->b : number
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
var rj3 = c | c;
->rj3 : number
+>rj3 : number, Symbol(rj3, Decl(arithmeticOperatorWithEnum.ts, 140, 3))
>c | c : number
->c : E
->c : E
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var rj4 = a | c;
->rj4 : number
+>rj4 : number, Symbol(rj4, Decl(arithmeticOperatorWithEnum.ts, 141, 3))
>a | c : number
->a : any
->c : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var rj5 = b | c;
->rj5 : number
+>rj5 : number, Symbol(rj5, Decl(arithmeticOperatorWithEnum.ts, 142, 3))
>b | c : number
->b : number
->c : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
+>c : E, Symbol(c, Decl(arithmeticOperatorWithEnum.ts, 9, 3))
var rj6 = E.a | a;
->rj6 : number
+>rj6 : number, Symbol(rj6, Decl(arithmeticOperatorWithEnum.ts, 143, 3))
>E.a | a : number
->E.a : E
->E : typeof E
->a : E
->a : any
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
var rj7 = E.a | b;
->rj7 : number
+>rj7 : number, Symbol(rj7, Decl(arithmeticOperatorWithEnum.ts, 144, 3))
>E.a | b : number
->E.a : E
->E : typeof E
->a : E
->b : number
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
var rj8 = E.a | E.b;
->rj8 : number
+>rj8 : number, Symbol(rj8, Decl(arithmeticOperatorWithEnum.ts, 145, 3))
>E.a | E.b : number
->E.a : E
->E : typeof E
->a : E
->E.b : E
->E : typeof E
->b : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var rj9 = E.a | 1;
->rj9 : number
+>rj9 : number, Symbol(rj9, Decl(arithmeticOperatorWithEnum.ts, 146, 3))
>E.a | 1 : number
->E.a : E
->E : typeof E
->a : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnum.ts, 2, 8))
+>1 : number
var rj10 = a | E.b;
->rj10 : number
+>rj10 : number, Symbol(rj10, Decl(arithmeticOperatorWithEnum.ts, 147, 3))
>a | E.b : number
->a : any
->E.b : E
->E : typeof E
->b : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnum.ts, 7, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var rj11 = b | E.b;
->rj11 : number
+>rj11 : number, Symbol(rj11, Decl(arithmeticOperatorWithEnum.ts, 148, 3))
>b | E.b : number
->b : number
->E.b : E
->E : typeof E
->b : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnum.ts, 8, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
var rj12 = 1 | E.b;
->rj12 : number
+>rj12 : number, Symbol(rj12, Decl(arithmeticOperatorWithEnum.ts, 149, 3))
>1 | E.b : number
->E.b : E
->E : typeof E
->b : E
+>1 : number
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnum.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnum.ts, 3, 6))
diff --git a/tests/baselines/reference/arithmeticOperatorWithEnumUnion.types b/tests/baselines/reference/arithmeticOperatorWithEnumUnion.types
index 7b65ddf7f00..698be4feb7f 100644
--- a/tests/baselines/reference/arithmeticOperatorWithEnumUnion.types
+++ b/tests/baselines/reference/arithmeticOperatorWithEnumUnion.types
@@ -2,902 +2,922 @@
// operands of an enum type are treated as having the primitive type Number.
enum E {
->E : E
+>E : E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
a,
->a : E
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
b
->b : E
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
}
enum F {
->F : F
+>F : F, Symbol(F, Decl(arithmeticOperatorWithEnumUnion.ts, 5, 1))
c,
->c : F
+>c : F, Symbol(F.c, Decl(arithmeticOperatorWithEnumUnion.ts, 6, 8))
d
->d : F
+>d : F, Symbol(F.d, Decl(arithmeticOperatorWithEnumUnion.ts, 7, 6))
}
var a: any;
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
var b: number;
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
var c: E | F;
->c : E | F
->E : E
->F : F
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>E : E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>F : F, Symbol(F, Decl(arithmeticOperatorWithEnumUnion.ts, 5, 1))
// operator *
var ra1 = c * a;
->ra1 : number
+>ra1 : number, Symbol(ra1, Decl(arithmeticOperatorWithEnumUnion.ts, 16, 3))
>c * a : number
->c : E | F
->a : any
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
var ra2 = c * b;
->ra2 : number
+>ra2 : number, Symbol(ra2, Decl(arithmeticOperatorWithEnumUnion.ts, 17, 3))
>c * b : number
->c : E | F
->b : number
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
var ra3 = c * c;
->ra3 : number
+>ra3 : number, Symbol(ra3, Decl(arithmeticOperatorWithEnumUnion.ts, 18, 3))
>c * c : number
->c : E | F
->c : E | F
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var ra4 = a * c;
->ra4 : number
+>ra4 : number, Symbol(ra4, Decl(arithmeticOperatorWithEnumUnion.ts, 19, 3))
>a * c : number
->a : any
->c : E | F
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var ra5 = b * c;
->ra5 : number
+>ra5 : number, Symbol(ra5, Decl(arithmeticOperatorWithEnumUnion.ts, 20, 3))
>b * c : number
->b : number
->c : E | F
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var ra6 = E.a * a;
->ra6 : number
+>ra6 : number, Symbol(ra6, Decl(arithmeticOperatorWithEnumUnion.ts, 21, 3))
>E.a * a : number
->E.a : E
->E : typeof E
->a : E
->a : any
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
var ra7 = E.a * b;
->ra7 : number
+>ra7 : number, Symbol(ra7, Decl(arithmeticOperatorWithEnumUnion.ts, 22, 3))
>E.a * b : number
->E.a : E
->E : typeof E
->a : E
->b : number
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
var ra8 = E.a * E.b;
->ra8 : number
+>ra8 : number, Symbol(ra8, Decl(arithmeticOperatorWithEnumUnion.ts, 23, 3))
>E.a * E.b : number
->E.a : E
->E : typeof E
->a : E
->E.b : E
->E : typeof E
->b : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var ra9 = E.a * 1;
->ra9 : number
+>ra9 : number, Symbol(ra9, Decl(arithmeticOperatorWithEnumUnion.ts, 24, 3))
>E.a * 1 : number
->E.a : E
->E : typeof E
->a : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>1 : number
var ra10 = a * E.b;
->ra10 : number
+>ra10 : number, Symbol(ra10, Decl(arithmeticOperatorWithEnumUnion.ts, 25, 3))
>a * E.b : number
->a : any
->E.b : E
->E : typeof E
->b : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var ra11 = b * E.b;
->ra11 : number
+>ra11 : number, Symbol(ra11, Decl(arithmeticOperatorWithEnumUnion.ts, 26, 3))
>b * E.b : number
->b : number
->E.b : E
->E : typeof E
->b : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var ra12 = 1 * E.b;
->ra12 : number
+>ra12 : number, Symbol(ra12, Decl(arithmeticOperatorWithEnumUnion.ts, 27, 3))
>1 * E.b : number
->E.b : E
->E : typeof E
->b : E
+>1 : number
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
// operator /
var rb1 = c / a;
->rb1 : number
+>rb1 : number, Symbol(rb1, Decl(arithmeticOperatorWithEnumUnion.ts, 30, 3))
>c / a : number
->c : E | F
->a : any
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
var rb2 = c / b;
->rb2 : number
+>rb2 : number, Symbol(rb2, Decl(arithmeticOperatorWithEnumUnion.ts, 31, 3))
>c / b : number
->c : E | F
->b : number
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
var rb3 = c / c;
->rb3 : number
+>rb3 : number, Symbol(rb3, Decl(arithmeticOperatorWithEnumUnion.ts, 32, 3))
>c / c : number
->c : E | F
->c : E | F
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var rb4 = a / c;
->rb4 : number
+>rb4 : number, Symbol(rb4, Decl(arithmeticOperatorWithEnumUnion.ts, 33, 3))
>a / c : number
->a : any
->c : E | F
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var rb5 = b / c;
->rb5 : number
+>rb5 : number, Symbol(rb5, Decl(arithmeticOperatorWithEnumUnion.ts, 34, 3))
>b / c : number
->b : number
->c : E | F
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var rb6 = E.a / a;
->rb6 : number
+>rb6 : number, Symbol(rb6, Decl(arithmeticOperatorWithEnumUnion.ts, 35, 3))
>E.a / a : number
->E.a : E
->E : typeof E
->a : E
->a : any
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
var rb7 = E.a / b;
->rb7 : number
+>rb7 : number, Symbol(rb7, Decl(arithmeticOperatorWithEnumUnion.ts, 36, 3))
>E.a / b : number
->E.a : E
->E : typeof E
->a : E
->b : number
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
var rb8 = E.a / E.b;
->rb8 : number
+>rb8 : number, Symbol(rb8, Decl(arithmeticOperatorWithEnumUnion.ts, 37, 3))
>E.a / E.b : number
->E.a : E
->E : typeof E
->a : E
->E.b : E
->E : typeof E
->b : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var rb9 = E.a / 1;
->rb9 : number
+>rb9 : number, Symbol(rb9, Decl(arithmeticOperatorWithEnumUnion.ts, 38, 3))
>E.a / 1 : number
->E.a : E
->E : typeof E
->a : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>1 : number
var rb10 = a / E.b;
->rb10 : number
+>rb10 : number, Symbol(rb10, Decl(arithmeticOperatorWithEnumUnion.ts, 39, 3))
>a / E.b : number
->a : any
->E.b : E
->E : typeof E
->b : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var rb11 = b / E.b;
->rb11 : number
+>rb11 : number, Symbol(rb11, Decl(arithmeticOperatorWithEnumUnion.ts, 40, 3))
>b / E.b : number
->b : number
->E.b : E
->E : typeof E
->b : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var rb12 = 1 / E.b;
->rb12 : number
+>rb12 : number, Symbol(rb12, Decl(arithmeticOperatorWithEnumUnion.ts, 41, 3))
>1 / E.b : number
->E.b : E
->E : typeof E
->b : E
+>1 : number
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
// operator %
var rc1 = c % a;
->rc1 : number
+>rc1 : number, Symbol(rc1, Decl(arithmeticOperatorWithEnumUnion.ts, 44, 3))
>c % a : number
->c : E | F
->a : any
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
var rc2 = c % b;
->rc2 : number
+>rc2 : number, Symbol(rc2, Decl(arithmeticOperatorWithEnumUnion.ts, 45, 3))
>c % b : number
->c : E | F
->b : number
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
var rc3 = c % c;
->rc3 : number
+>rc3 : number, Symbol(rc3, Decl(arithmeticOperatorWithEnumUnion.ts, 46, 3))
>c % c : number
->c : E | F
->c : E | F
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var rc4 = a % c;
->rc4 : number
+>rc4 : number, Symbol(rc4, Decl(arithmeticOperatorWithEnumUnion.ts, 47, 3))
>a % c : number
->a : any
->c : E | F
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var rc5 = b % c;
->rc5 : number
+>rc5 : number, Symbol(rc5, Decl(arithmeticOperatorWithEnumUnion.ts, 48, 3))
>b % c : number
->b : number
->c : E | F
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var rc6 = E.a % a;
->rc6 : number
+>rc6 : number, Symbol(rc6, Decl(arithmeticOperatorWithEnumUnion.ts, 49, 3))
>E.a % a : number
->E.a : E
->E : typeof E
->a : E
->a : any
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
var rc7 = E.a % b;
->rc7 : number
+>rc7 : number, Symbol(rc7, Decl(arithmeticOperatorWithEnumUnion.ts, 50, 3))
>E.a % b : number
->E.a : E
->E : typeof E
->a : E
->b : number
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
var rc8 = E.a % E.b;
->rc8 : number
+>rc8 : number, Symbol(rc8, Decl(arithmeticOperatorWithEnumUnion.ts, 51, 3))
>E.a % E.b : number
->E.a : E
->E : typeof E
->a : E
->E.b : E
->E : typeof E
->b : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var rc9 = E.a % 1;
->rc9 : number
+>rc9 : number, Symbol(rc9, Decl(arithmeticOperatorWithEnumUnion.ts, 52, 3))
>E.a % 1 : number
->E.a : E
->E : typeof E
->a : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>1 : number
var rc10 = a % E.b;
->rc10 : number
+>rc10 : number, Symbol(rc10, Decl(arithmeticOperatorWithEnumUnion.ts, 53, 3))
>a % E.b : number
->a : any
->E.b : E
->E : typeof E
->b : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var rc11 = b % E.b;
->rc11 : number
+>rc11 : number, Symbol(rc11, Decl(arithmeticOperatorWithEnumUnion.ts, 54, 3))
>b % E.b : number
->b : number
->E.b : E
->E : typeof E
->b : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var rc12 = 1 % E.b;
->rc12 : number
+>rc12 : number, Symbol(rc12, Decl(arithmeticOperatorWithEnumUnion.ts, 55, 3))
>1 % E.b : number
->E.b : E
->E : typeof E
->b : E
+>1 : number
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
// operator -
var rd1 = c - a;
->rd1 : number
+>rd1 : number, Symbol(rd1, Decl(arithmeticOperatorWithEnumUnion.ts, 58, 3))
>c - a : number
->c : E | F
->a : any
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
var rd2 = c - b;
->rd2 : number
+>rd2 : number, Symbol(rd2, Decl(arithmeticOperatorWithEnumUnion.ts, 59, 3))
>c - b : number
->c : E | F
->b : number
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
var rd3 = c - c;
->rd3 : number
+>rd3 : number, Symbol(rd3, Decl(arithmeticOperatorWithEnumUnion.ts, 60, 3))
>c - c : number
->c : E | F
->c : E | F
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var rd4 = a - c;
->rd4 : number
+>rd4 : number, Symbol(rd4, Decl(arithmeticOperatorWithEnumUnion.ts, 61, 3))
>a - c : number
->a : any
->c : E | F
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var rd5 = b - c;
->rd5 : number
+>rd5 : number, Symbol(rd5, Decl(arithmeticOperatorWithEnumUnion.ts, 62, 3))
>b - c : number
->b : number
->c : E | F
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var rd6 = E.a - a;
->rd6 : number
+>rd6 : number, Symbol(rd6, Decl(arithmeticOperatorWithEnumUnion.ts, 63, 3))
>E.a - a : number
->E.a : E
->E : typeof E
->a : E
->a : any
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
var rd7 = E.a - b;
->rd7 : number
+>rd7 : number, Symbol(rd7, Decl(arithmeticOperatorWithEnumUnion.ts, 64, 3))
>E.a - b : number
->E.a : E
->E : typeof E
->a : E
->b : number
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
var rd8 = E.a - E.b;
->rd8 : number
+>rd8 : number, Symbol(rd8, Decl(arithmeticOperatorWithEnumUnion.ts, 65, 3))
>E.a - E.b : number
->E.a : E
->E : typeof E
->a : E
->E.b : E
->E : typeof E
->b : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var rd9 = E.a - 1;
->rd9 : number
+>rd9 : number, Symbol(rd9, Decl(arithmeticOperatorWithEnumUnion.ts, 66, 3))
>E.a - 1 : number
->E.a : E
->E : typeof E
->a : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>1 : number
var rd10 = a - E.b;
->rd10 : number
+>rd10 : number, Symbol(rd10, Decl(arithmeticOperatorWithEnumUnion.ts, 67, 3))
>a - E.b : number
->a : any
->E.b : E
->E : typeof E
->b : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var rd11 = b - E.b;
->rd11 : number
+>rd11 : number, Symbol(rd11, Decl(arithmeticOperatorWithEnumUnion.ts, 68, 3))
>b - E.b : number
->b : number
->E.b : E
->E : typeof E
->b : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var rd12 = 1 - E.b;
->rd12 : number
+>rd12 : number, Symbol(rd12, Decl(arithmeticOperatorWithEnumUnion.ts, 69, 3))
>1 - E.b : number
->E.b : E
->E : typeof E
->b : E
+>1 : number
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
// operator <<
var re1 = c << a;
->re1 : number
+>re1 : number, Symbol(re1, Decl(arithmeticOperatorWithEnumUnion.ts, 72, 3))
>c << a : number
->c : E | F
->a : any
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
var re2 = c << b;
->re2 : number
+>re2 : number, Symbol(re2, Decl(arithmeticOperatorWithEnumUnion.ts, 73, 3))
>c << b : number
->c : E | F
->b : number
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
var re3 = c << c;
->re3 : number
+>re3 : number, Symbol(re3, Decl(arithmeticOperatorWithEnumUnion.ts, 74, 3))
>c << c : number
->c : E | F
->c : E | F
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var re4 = a << c;
->re4 : number
+>re4 : number, Symbol(re4, Decl(arithmeticOperatorWithEnumUnion.ts, 75, 3))
>a << c : number
->a : any
->c : E | F
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var re5 = b << c;
->re5 : number
+>re5 : number, Symbol(re5, Decl(arithmeticOperatorWithEnumUnion.ts, 76, 3))
>b << c : number
->b : number
->c : E | F
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var re6 = E.a << a;
->re6 : number
+>re6 : number, Symbol(re6, Decl(arithmeticOperatorWithEnumUnion.ts, 77, 3))
>E.a << a : number
->E.a : E
->E : typeof E
->a : E
->a : any
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
var re7 = E.a << b;
->re7 : number
+>re7 : number, Symbol(re7, Decl(arithmeticOperatorWithEnumUnion.ts, 78, 3))
>E.a << b : number
->E.a : E
->E : typeof E
->a : E
->b : number
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
var re8 = E.a << E.b;
->re8 : number
+>re8 : number, Symbol(re8, Decl(arithmeticOperatorWithEnumUnion.ts, 79, 3))
>E.a << E.b : number
->E.a : E
->E : typeof E
->a : E
->E.b : E
->E : typeof E
->b : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var re9 = E.a << 1;
->re9 : number
+>re9 : number, Symbol(re9, Decl(arithmeticOperatorWithEnumUnion.ts, 80, 3))
>E.a << 1 : number
->E.a : E
->E : typeof E
->a : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>1 : number
var re10 = a << E.b;
->re10 : number
+>re10 : number, Symbol(re10, Decl(arithmeticOperatorWithEnumUnion.ts, 81, 3))
>a << E.b : number
->a : any
->E.b : E
->E : typeof E
->b : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var re11 = b << E.b;
->re11 : number
+>re11 : number, Symbol(re11, Decl(arithmeticOperatorWithEnumUnion.ts, 82, 3))
>b << E.b : number
->b : number
->E.b : E
->E : typeof E
->b : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var re12 = 1 << E.b;
->re12 : number
+>re12 : number, Symbol(re12, Decl(arithmeticOperatorWithEnumUnion.ts, 83, 3))
>1 << E.b : number
->E.b : E
->E : typeof E
->b : E
+>1 : number
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
// operator >>
var rf1 = c >> a;
->rf1 : number
+>rf1 : number, Symbol(rf1, Decl(arithmeticOperatorWithEnumUnion.ts, 86, 3))
>c >> a : number
->c : E | F
->a : any
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
var rf2 = c >> b;
->rf2 : number
+>rf2 : number, Symbol(rf2, Decl(arithmeticOperatorWithEnumUnion.ts, 87, 3))
>c >> b : number
->c : E | F
->b : number
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
var rf3 = c >> c;
->rf3 : number
+>rf3 : number, Symbol(rf3, Decl(arithmeticOperatorWithEnumUnion.ts, 88, 3))
>c >> c : number
->c : E | F
->c : E | F
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var rf4 = a >> c;
->rf4 : number
+>rf4 : number, Symbol(rf4, Decl(arithmeticOperatorWithEnumUnion.ts, 89, 3))
>a >> c : number
->a : any
->c : E | F
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var rf5 = b >> c;
->rf5 : number
+>rf5 : number, Symbol(rf5, Decl(arithmeticOperatorWithEnumUnion.ts, 90, 3))
>b >> c : number
->b : number
->c : E | F
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var rf6 = E.a >> a;
->rf6 : number
+>rf6 : number, Symbol(rf6, Decl(arithmeticOperatorWithEnumUnion.ts, 91, 3))
>E.a >> a : number
->E.a : E
->E : typeof E
->a : E
->a : any
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
var rf7 = E.a >> b;
->rf7 : number
+>rf7 : number, Symbol(rf7, Decl(arithmeticOperatorWithEnumUnion.ts, 92, 3))
>E.a >> b : number
->E.a : E
->E : typeof E
->a : E
->b : number
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
var rf8 = E.a >> E.b;
->rf8 : number
+>rf8 : number, Symbol(rf8, Decl(arithmeticOperatorWithEnumUnion.ts, 93, 3))
>E.a >> E.b : number
->E.a : E
->E : typeof E
->a : E
->E.b : E
->E : typeof E
->b : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var rf9 = E.a >> 1;
->rf9 : number
+>rf9 : number, Symbol(rf9, Decl(arithmeticOperatorWithEnumUnion.ts, 94, 3))
>E.a >> 1 : number
->E.a : E
->E : typeof E
->a : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>1 : number
var rf10 = a >> E.b;
->rf10 : number
+>rf10 : number, Symbol(rf10, Decl(arithmeticOperatorWithEnumUnion.ts, 95, 3))
>a >> E.b : number
->a : any
->E.b : E
->E : typeof E
->b : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var rf11 = b >> E.b;
->rf11 : number
+>rf11 : number, Symbol(rf11, Decl(arithmeticOperatorWithEnumUnion.ts, 96, 3))
>b >> E.b : number
->b : number
->E.b : E
->E : typeof E
->b : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var rf12 = 1 >> E.b;
->rf12 : number
+>rf12 : number, Symbol(rf12, Decl(arithmeticOperatorWithEnumUnion.ts, 97, 3))
>1 >> E.b : number
->E.b : E
->E : typeof E
->b : E
+>1 : number
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
// operator >>>
var rg1 = c >>> a;
->rg1 : number
+>rg1 : number, Symbol(rg1, Decl(arithmeticOperatorWithEnumUnion.ts, 100, 3))
>c >>> a : number
->c : E | F
->a : any
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
var rg2 = c >>> b;
->rg2 : number
+>rg2 : number, Symbol(rg2, Decl(arithmeticOperatorWithEnumUnion.ts, 101, 3))
>c >>> b : number
->c : E | F
->b : number
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
var rg3 = c >>> c;
->rg3 : number
+>rg3 : number, Symbol(rg3, Decl(arithmeticOperatorWithEnumUnion.ts, 102, 3))
>c >>> c : number
->c : E | F
->c : E | F
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var rg4 = a >>> c;
->rg4 : number
+>rg4 : number, Symbol(rg4, Decl(arithmeticOperatorWithEnumUnion.ts, 103, 3))
>a >>> c : number
->a : any
->c : E | F
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var rg5 = b >>> c;
->rg5 : number
+>rg5 : number, Symbol(rg5, Decl(arithmeticOperatorWithEnumUnion.ts, 104, 3))
>b >>> c : number
->b : number
->c : E | F
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var rg6 = E.a >>> a;
->rg6 : number
+>rg6 : number, Symbol(rg6, Decl(arithmeticOperatorWithEnumUnion.ts, 105, 3))
>E.a >>> a : number
->E.a : E
->E : typeof E
->a : E
->a : any
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
var rg7 = E.a >>> b;
->rg7 : number
+>rg7 : number, Symbol(rg7, Decl(arithmeticOperatorWithEnumUnion.ts, 106, 3))
>E.a >>> b : number
->E.a : E
->E : typeof E
->a : E
->b : number
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
var rg8 = E.a >>> E.b;
->rg8 : number
+>rg8 : number, Symbol(rg8, Decl(arithmeticOperatorWithEnumUnion.ts, 107, 3))
>E.a >>> E.b : number
->E.a : E
->E : typeof E
->a : E
->E.b : E
->E : typeof E
->b : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var rg9 = E.a >>> 1;
->rg9 : number
+>rg9 : number, Symbol(rg9, Decl(arithmeticOperatorWithEnumUnion.ts, 108, 3))
>E.a >>> 1 : number
->E.a : E
->E : typeof E
->a : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>1 : number
var rg10 = a >>> E.b;
->rg10 : number
+>rg10 : number, Symbol(rg10, Decl(arithmeticOperatorWithEnumUnion.ts, 109, 3))
>a >>> E.b : number
->a : any
->E.b : E
->E : typeof E
->b : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var rg11 = b >>> E.b;
->rg11 : number
+>rg11 : number, Symbol(rg11, Decl(arithmeticOperatorWithEnumUnion.ts, 110, 3))
>b >>> E.b : number
->b : number
->E.b : E
->E : typeof E
->b : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var rg12 = 1 >>> E.b;
->rg12 : number
+>rg12 : number, Symbol(rg12, Decl(arithmeticOperatorWithEnumUnion.ts, 111, 3))
>1 >>> E.b : number
->E.b : E
->E : typeof E
->b : E
+>1 : number
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
// operator &
var rh1 = c & a;
->rh1 : number
+>rh1 : number, Symbol(rh1, Decl(arithmeticOperatorWithEnumUnion.ts, 114, 3))
>c & a : number
->c : E | F
->a : any
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
var rh2 = c & b;
->rh2 : number
+>rh2 : number, Symbol(rh2, Decl(arithmeticOperatorWithEnumUnion.ts, 115, 3))
>c & b : number
->c : E | F
->b : number
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
var rh3 = c & c;
->rh3 : number
+>rh3 : number, Symbol(rh3, Decl(arithmeticOperatorWithEnumUnion.ts, 116, 3))
>c & c : number
->c : E | F
->c : E | F
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var rh4 = a & c;
->rh4 : number
+>rh4 : number, Symbol(rh4, Decl(arithmeticOperatorWithEnumUnion.ts, 117, 3))
>a & c : number
->a : any
->c : E | F
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var rh5 = b & c;
->rh5 : number
+>rh5 : number, Symbol(rh5, Decl(arithmeticOperatorWithEnumUnion.ts, 118, 3))
>b & c : number
->b : number
->c : E | F
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var rh6 = E.a & a;
->rh6 : number
+>rh6 : number, Symbol(rh6, Decl(arithmeticOperatorWithEnumUnion.ts, 119, 3))
>E.a & a : number
->E.a : E
->E : typeof E
->a : E
->a : any
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
var rh7 = E.a & b;
->rh7 : number
+>rh7 : number, Symbol(rh7, Decl(arithmeticOperatorWithEnumUnion.ts, 120, 3))
>E.a & b : number
->E.a : E
->E : typeof E
->a : E
->b : number
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
var rh8 = E.a & E.b;
->rh8 : number
+>rh8 : number, Symbol(rh8, Decl(arithmeticOperatorWithEnumUnion.ts, 121, 3))
>E.a & E.b : number
->E.a : E
->E : typeof E
->a : E
->E.b : E
->E : typeof E
->b : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var rh9 = E.a & 1;
->rh9 : number
+>rh9 : number, Symbol(rh9, Decl(arithmeticOperatorWithEnumUnion.ts, 122, 3))
>E.a & 1 : number
->E.a : E
->E : typeof E
->a : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>1 : number
var rh10 = a & E.b;
->rh10 : number
+>rh10 : number, Symbol(rh10, Decl(arithmeticOperatorWithEnumUnion.ts, 123, 3))
>a & E.b : number
->a : any
->E.b : E
->E : typeof E
->b : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var rh11 = b & E.b;
->rh11 : number
+>rh11 : number, Symbol(rh11, Decl(arithmeticOperatorWithEnumUnion.ts, 124, 3))
>b & E.b : number
->b : number
->E.b : E
->E : typeof E
->b : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var rh12 = 1 & E.b;
->rh12 : number
+>rh12 : number, Symbol(rh12, Decl(arithmeticOperatorWithEnumUnion.ts, 125, 3))
>1 & E.b : number
->E.b : E
->E : typeof E
->b : E
+>1 : number
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
// operator ^
var ri1 = c ^ a;
->ri1 : number
+>ri1 : number, Symbol(ri1, Decl(arithmeticOperatorWithEnumUnion.ts, 128, 3))
>c ^ a : number
->c : E | F
->a : any
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
var ri2 = c ^ b;
->ri2 : number
+>ri2 : number, Symbol(ri2, Decl(arithmeticOperatorWithEnumUnion.ts, 129, 3))
>c ^ b : number
->c : E | F
->b : number
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
var ri3 = c ^ c;
->ri3 : number
+>ri3 : number, Symbol(ri3, Decl(arithmeticOperatorWithEnumUnion.ts, 130, 3))
>c ^ c : number
->c : E | F
->c : E | F
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var ri4 = a ^ c;
->ri4 : number
+>ri4 : number, Symbol(ri4, Decl(arithmeticOperatorWithEnumUnion.ts, 131, 3))
>a ^ c : number
->a : any
->c : E | F
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var ri5 = b ^ c;
->ri5 : number
+>ri5 : number, Symbol(ri5, Decl(arithmeticOperatorWithEnumUnion.ts, 132, 3))
>b ^ c : number
->b : number
->c : E | F
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var ri6 = E.a ^ a;
->ri6 : number
+>ri6 : number, Symbol(ri6, Decl(arithmeticOperatorWithEnumUnion.ts, 133, 3))
>E.a ^ a : number
->E.a : E
->E : typeof E
->a : E
->a : any
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
var ri7 = E.a ^ b;
->ri7 : number
+>ri7 : number, Symbol(ri7, Decl(arithmeticOperatorWithEnumUnion.ts, 134, 3))
>E.a ^ b : number
->E.a : E
->E : typeof E
->a : E
->b : number
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
var ri8 = E.a ^ E.b;
->ri8 : number
+>ri8 : number, Symbol(ri8, Decl(arithmeticOperatorWithEnumUnion.ts, 135, 3))
>E.a ^ E.b : number
->E.a : E
->E : typeof E
->a : E
->E.b : E
->E : typeof E
->b : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var ri9 = E.a ^ 1;
->ri9 : number
+>ri9 : number, Symbol(ri9, Decl(arithmeticOperatorWithEnumUnion.ts, 136, 3))
>E.a ^ 1 : number
->E.a : E
->E : typeof E
->a : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>1 : number
var ri10 = a ^ E.b;
->ri10 : number
+>ri10 : number, Symbol(ri10, Decl(arithmeticOperatorWithEnumUnion.ts, 137, 3))
>a ^ E.b : number
->a : any
->E.b : E
->E : typeof E
->b : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var ri11 = b ^ E.b;
->ri11 : number
+>ri11 : number, Symbol(ri11, Decl(arithmeticOperatorWithEnumUnion.ts, 138, 3))
>b ^ E.b : number
->b : number
->E.b : E
->E : typeof E
->b : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var ri12 = 1 ^ E.b;
->ri12 : number
+>ri12 : number, Symbol(ri12, Decl(arithmeticOperatorWithEnumUnion.ts, 139, 3))
>1 ^ E.b : number
->E.b : E
->E : typeof E
->b : E
+>1 : number
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
// operator |
var rj1 = c | a;
->rj1 : number
+>rj1 : number, Symbol(rj1, Decl(arithmeticOperatorWithEnumUnion.ts, 142, 3))
>c | a : number
->c : E | F
->a : any
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
var rj2 = c | b;
->rj2 : number
+>rj2 : number, Symbol(rj2, Decl(arithmeticOperatorWithEnumUnion.ts, 143, 3))
>c | b : number
->c : E | F
->b : number
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
var rj3 = c | c;
->rj3 : number
+>rj3 : number, Symbol(rj3, Decl(arithmeticOperatorWithEnumUnion.ts, 144, 3))
>c | c : number
->c : E | F
->c : E | F
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var rj4 = a | c;
->rj4 : number
+>rj4 : number, Symbol(rj4, Decl(arithmeticOperatorWithEnumUnion.ts, 145, 3))
>a | c : number
->a : any
->c : E | F
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var rj5 = b | c;
->rj5 : number
+>rj5 : number, Symbol(rj5, Decl(arithmeticOperatorWithEnumUnion.ts, 146, 3))
>b | c : number
->b : number
->c : E | F
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
+>c : E | F, Symbol(c, Decl(arithmeticOperatorWithEnumUnion.ts, 13, 3))
var rj6 = E.a | a;
->rj6 : number
+>rj6 : number, Symbol(rj6, Decl(arithmeticOperatorWithEnumUnion.ts, 147, 3))
>E.a | a : number
->E.a : E
->E : typeof E
->a : E
->a : any
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
var rj7 = E.a | b;
->rj7 : number
+>rj7 : number, Symbol(rj7, Decl(arithmeticOperatorWithEnumUnion.ts, 148, 3))
>E.a | b : number
->E.a : E
->E : typeof E
->a : E
->b : number
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
var rj8 = E.a | E.b;
->rj8 : number
+>rj8 : number, Symbol(rj8, Decl(arithmeticOperatorWithEnumUnion.ts, 149, 3))
>E.a | E.b : number
->E.a : E
->E : typeof E
->a : E
->E.b : E
->E : typeof E
->b : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var rj9 = E.a | 1;
->rj9 : number
+>rj9 : number, Symbol(rj9, Decl(arithmeticOperatorWithEnumUnion.ts, 150, 3))
>E.a | 1 : number
->E.a : E
->E : typeof E
->a : E
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithEnumUnion.ts, 2, 8))
+>1 : number
var rj10 = a | E.b;
->rj10 : number
+>rj10 : number, Symbol(rj10, Decl(arithmeticOperatorWithEnumUnion.ts, 151, 3))
>a | E.b : number
->a : any
->E.b : E
->E : typeof E
->b : E
+>a : any, Symbol(a, Decl(arithmeticOperatorWithEnumUnion.ts, 11, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var rj11 = b | E.b;
->rj11 : number
+>rj11 : number, Symbol(rj11, Decl(arithmeticOperatorWithEnumUnion.ts, 152, 3))
>b | E.b : number
->b : number
->E.b : E
->E : typeof E
->b : E
+>b : number, Symbol(b, Decl(arithmeticOperatorWithEnumUnion.ts, 12, 3))
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
var rj12 = 1 | E.b;
->rj12 : number
+>rj12 : number, Symbol(rj12, Decl(arithmeticOperatorWithEnumUnion.ts, 153, 3))
>1 | E.b : number
->E.b : E
->E : typeof E
->b : E
+>1 : number
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithEnumUnion.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithEnumUnion.ts, 3, 6))
diff --git a/tests/baselines/reference/arithmeticOperatorWithNullValueAndValidOperands.types b/tests/baselines/reference/arithmeticOperatorWithNullValueAndValidOperands.types
index 711ccd0c66c..120b7427453 100644
--- a/tests/baselines/reference/arithmeticOperatorWithNullValueAndValidOperands.types
+++ b/tests/baselines/reference/arithmeticOperatorWithNullValueAndValidOperands.types
@@ -3,448 +3,548 @@
// other operand.
enum E {
->E : E
+>E : E, Symbol(E, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 0, 0))
a,
->a : E
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 3, 8))
b
->b : E
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 4, 6))
}
var a: any;
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 8, 3))
var b: number;
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 9, 3))
// operator *
var ra1 = null * a;
->ra1 : number
+>ra1 : number, Symbol(ra1, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 12, 3))
>null * a : number
->a : any
+>null : null
+>a : any, Symbol(a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 8, 3))
var ra2 = null * b;
->ra2 : number
+>ra2 : number, Symbol(ra2, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 13, 3))
>null * b : number
->b : number
+>null : null
+>b : number, Symbol(b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 9, 3))
var ra3 = null * 1;
->ra3 : number
+>ra3 : number, Symbol(ra3, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 14, 3))
>null * 1 : number
+>null : null
+>1 : number
var ra4 = null * E.a;
->ra4 : number
+>ra4 : number, Symbol(ra4, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 15, 3))
>null * E.a : number
->E.a : E
->E : typeof E
->a : E
+>null : null
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 3, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 3, 8))
var ra5 = a * null;
->ra5 : number
+>ra5 : number, Symbol(ra5, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 16, 3))
>a * null : number
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 8, 3))
+>null : null
var ra6 = b * null;
->ra6 : number
+>ra6 : number, Symbol(ra6, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 17, 3))
>b * null : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 9, 3))
+>null : null
var ra7 = 0 * null;
->ra7 : number
+>ra7 : number, Symbol(ra7, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 18, 3))
>0 * null : number
+>0 : number
+>null : null
var ra8 = E.b * null;
->ra8 : number
+>ra8 : number, Symbol(ra8, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 19, 3))
>E.b * null : number
->E.b : E
->E : typeof E
->b : E
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 4, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 4, 6))
+>null : null
// operator /
var rb1 = null / a;
->rb1 : number
+>rb1 : number, Symbol(rb1, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 22, 3))
>null / a : number
->a : any
+>null : null
+>a : any, Symbol(a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 8, 3))
var rb2 = null / b;
->rb2 : number
+>rb2 : number, Symbol(rb2, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 23, 3))
>null / b : number
->b : number
+>null : null
+>b : number, Symbol(b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 9, 3))
var rb3 = null / 1;
->rb3 : number
+>rb3 : number, Symbol(rb3, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 24, 3))
>null / 1 : number
+>null : null
+>1 : number
var rb4 = null / E.a;
->rb4 : number
+>rb4 : number, Symbol(rb4, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 25, 3))
>null / E.a : number
->E.a : E
->E : typeof E
->a : E
+>null : null
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 3, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 3, 8))
var rb5 = a / null;
->rb5 : number
+>rb5 : number, Symbol(rb5, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 26, 3))
>a / null : number
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 8, 3))
+>null : null
var rb6 = b / null;
->rb6 : number
+>rb6 : number, Symbol(rb6, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 27, 3))
>b / null : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 9, 3))
+>null : null
var rb7 = 0 / null;
->rb7 : number
+>rb7 : number, Symbol(rb7, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 28, 3))
>0 / null : number
+>0 : number
+>null : null
var rb8 = E.b / null;
->rb8 : number
+>rb8 : number, Symbol(rb8, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 29, 3))
>E.b / null : number
->E.b : E
->E : typeof E
->b : E
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 4, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 4, 6))
+>null : null
// operator %
var rc1 = null % a;
->rc1 : number
+>rc1 : number, Symbol(rc1, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 32, 3))
>null % a : number
->a : any
+>null : null
+>a : any, Symbol(a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 8, 3))
var rc2 = null % b;
->rc2 : number
+>rc2 : number, Symbol(rc2, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 33, 3))
>null % b : number
->b : number
+>null : null
+>b : number, Symbol(b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 9, 3))
var rc3 = null % 1;
->rc3 : number
+>rc3 : number, Symbol(rc3, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 34, 3))
>null % 1 : number
+>null : null
+>1 : number
var rc4 = null % E.a;
->rc4 : number
+>rc4 : number, Symbol(rc4, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 35, 3))
>null % E.a : number
->E.a : E
->E : typeof E
->a : E
+>null : null
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 3, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 3, 8))
var rc5 = a % null;
->rc5 : number
+>rc5 : number, Symbol(rc5, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 36, 3))
>a % null : number
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 8, 3))
+>null : null
var rc6 = b % null;
->rc6 : number
+>rc6 : number, Symbol(rc6, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 37, 3))
>b % null : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 9, 3))
+>null : null
var rc7 = 0 % null;
->rc7 : number
+>rc7 : number, Symbol(rc7, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 38, 3))
>0 % null : number
+>0 : number
+>null : null
var rc8 = E.b % null;
->rc8 : number
+>rc8 : number, Symbol(rc8, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 39, 3))
>E.b % null : number
->E.b : E
->E : typeof E
->b : E
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 4, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 4, 6))
+>null : null
// operator -
var rd1 = null - a;
->rd1 : number
+>rd1 : number, Symbol(rd1, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 42, 3))
>null - a : number
->a : any
+>null : null
+>a : any, Symbol(a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 8, 3))
var rd2 = null - b;
->rd2 : number
+>rd2 : number, Symbol(rd2, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 43, 3))
>null - b : number
->b : number
+>null : null
+>b : number, Symbol(b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 9, 3))
var rd3 = null - 1;
->rd3 : number
+>rd3 : number, Symbol(rd3, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 44, 3))
>null - 1 : number
+>null : null
+>1 : number
var rd4 = null - E.a;
->rd4 : number
+>rd4 : number, Symbol(rd4, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 45, 3))
>null - E.a : number
->E.a : E
->E : typeof E
->a : E
+>null : null
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 3, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 3, 8))
var rd5 = a - null;
->rd5 : number
+>rd5 : number, Symbol(rd5, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 46, 3))
>a - null : number
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 8, 3))
+>null : null
var rd6 = b - null;
->rd6 : number
+>rd6 : number, Symbol(rd6, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 47, 3))
>b - null : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 9, 3))
+>null : null
var rd7 = 0 - null;
->rd7 : number
+>rd7 : number, Symbol(rd7, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 48, 3))
>0 - null : number
+>0 : number
+>null : null
var rd8 = E.b - null;
->rd8 : number
+>rd8 : number, Symbol(rd8, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 49, 3))
>E.b - null : number
->E.b : E
->E : typeof E
->b : E
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 4, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 4, 6))
+>null : null
// operator <<
var re1 = null << a;
->re1 : number
+>re1 : number, Symbol(re1, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 52, 3))
>null << a : number
->a : any
+>null : null
+>a : any, Symbol(a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 8, 3))
var re2 = null << b;
->re2 : number
+>re2 : number, Symbol(re2, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 53, 3))
>null << b : number
->b : number
+>null : null
+>b : number, Symbol(b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 9, 3))
var re3 = null << 1;
->re3 : number
+>re3 : number, Symbol(re3, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 54, 3))
>null << 1 : number
+>null : null
+>1 : number
var re4 = null << E.a;
->re4 : number
+>re4 : number, Symbol(re4, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 55, 3))
>null << E.a : number
->E.a : E
->E : typeof E
->a : E
+>null : null
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 3, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 3, 8))
var re5 = a << null;
->re5 : number
+>re5 : number, Symbol(re5, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 56, 3))
>a << null : number
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 8, 3))
+>null : null
var re6 = b << null;
->re6 : number
+>re6 : number, Symbol(re6, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 57, 3))
>b << null : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 9, 3))
+>null : null
var re7 = 0 << null;
->re7 : number
+>re7 : number, Symbol(re7, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 58, 3))
>0 << null : number
+>0 : number
+>null : null
var re8 = E.b << null;
->re8 : number
+>re8 : number, Symbol(re8, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 59, 3))
>E.b << null : number
->E.b : E
->E : typeof E
->b : E
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 4, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 4, 6))
+>null : null
// operator >>
var rf1 = null >> a;
->rf1 : number
+>rf1 : number, Symbol(rf1, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 62, 3))
>null >> a : number
->a : any
+>null : null
+>a : any, Symbol(a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 8, 3))
var rf2 = null >> b;
->rf2 : number
+>rf2 : number, Symbol(rf2, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 63, 3))
>null >> b : number
->b : number
+>null : null
+>b : number, Symbol(b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 9, 3))
var rf3 = null >> 1;
->rf3 : number
+>rf3 : number, Symbol(rf3, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 64, 3))
>null >> 1 : number
+>null : null
+>1 : number
var rf4 = null >> E.a;
->rf4 : number
+>rf4 : number, Symbol(rf4, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 65, 3))
>null >> E.a : number
->E.a : E
->E : typeof E
->a : E
+>null : null
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 3, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 3, 8))
var rf5 = a >> null;
->rf5 : number
+>rf5 : number, Symbol(rf5, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 66, 3))
>a >> null : number
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 8, 3))
+>null : null
var rf6 = b >> null;
->rf6 : number
+>rf6 : number, Symbol(rf6, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 67, 3))
>b >> null : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 9, 3))
+>null : null
var rf7 = 0 >> null;
->rf7 : number
+>rf7 : number, Symbol(rf7, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 68, 3))
>0 >> null : number
+>0 : number
+>null : null
var rf8 = E.b >> null;
->rf8 : number
+>rf8 : number, Symbol(rf8, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 69, 3))
>E.b >> null : number
->E.b : E
->E : typeof E
->b : E
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 4, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 4, 6))
+>null : null
// operator >>>
var rg1 = null >>> a;
->rg1 : number
+>rg1 : number, Symbol(rg1, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 72, 3))
>null >>> a : number
->a : any
+>null : null
+>a : any, Symbol(a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 8, 3))
var rg2 = null >>> b;
->rg2 : number
+>rg2 : number, Symbol(rg2, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 73, 3))
>null >>> b : number
->b : number
+>null : null
+>b : number, Symbol(b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 9, 3))
var rg3 = null >>> 1;
->rg3 : number
+>rg3 : number, Symbol(rg3, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 74, 3))
>null >>> 1 : number
+>null : null
+>1 : number
var rg4 = null >>> E.a;
->rg4 : number
+>rg4 : number, Symbol(rg4, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 75, 3))
>null >>> E.a : number
->E.a : E
->E : typeof E
->a : E
+>null : null
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 3, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 3, 8))
var rg5 = a >>> null;
->rg5 : number
+>rg5 : number, Symbol(rg5, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 76, 3))
>a >>> null : number
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 8, 3))
+>null : null
var rg6 = b >>> null;
->rg6 : number
+>rg6 : number, Symbol(rg6, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 77, 3))
>b >>> null : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 9, 3))
+>null : null
var rg7 = 0 >>> null;
->rg7 : number
+>rg7 : number, Symbol(rg7, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 78, 3))
>0 >>> null : number
+>0 : number
+>null : null
var rg8 = E.b >>> null;
->rg8 : number
+>rg8 : number, Symbol(rg8, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 79, 3))
>E.b >>> null : number
->E.b : E
->E : typeof E
->b : E
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 4, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 4, 6))
+>null : null
// operator &
var rh1 = null & a;
->rh1 : number
+>rh1 : number, Symbol(rh1, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 82, 3))
>null & a : number
->a : any
+>null : null
+>a : any, Symbol(a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 8, 3))
var rh2 = null & b;
->rh2 : number
+>rh2 : number, Symbol(rh2, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 83, 3))
>null & b : number
->b : number
+>null : null
+>b : number, Symbol(b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 9, 3))
var rh3 = null & 1;
->rh3 : number
+>rh3 : number, Symbol(rh3, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 84, 3))
>null & 1 : number
+>null : null
+>1 : number
var rh4 = null & E.a;
->rh4 : number
+>rh4 : number, Symbol(rh4, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 85, 3))
>null & E.a : number
->E.a : E
->E : typeof E
->a : E
+>null : null
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 3, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 3, 8))
var rh5 = a & null;
->rh5 : number
+>rh5 : number, Symbol(rh5, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 86, 3))
>a & null : number
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 8, 3))
+>null : null
var rh6 = b & null;
->rh6 : number
+>rh6 : number, Symbol(rh6, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 87, 3))
>b & null : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 9, 3))
+>null : null
var rh7 = 0 & null;
->rh7 : number
+>rh7 : number, Symbol(rh7, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 88, 3))
>0 & null : number
+>0 : number
+>null : null
var rh8 = E.b & null;
->rh8 : number
+>rh8 : number, Symbol(rh8, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 89, 3))
>E.b & null : number
->E.b : E
->E : typeof E
->b : E
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 4, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 4, 6))
+>null : null
// operator ^
var ri1 = null ^ a;
->ri1 : number
+>ri1 : number, Symbol(ri1, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 92, 3))
>null ^ a : number
->a : any
+>null : null
+>a : any, Symbol(a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 8, 3))
var ri2 = null ^ b;
->ri2 : number
+>ri2 : number, Symbol(ri2, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 93, 3))
>null ^ b : number
->b : number
+>null : null
+>b : number, Symbol(b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 9, 3))
var ri3 = null ^ 1;
->ri3 : number
+>ri3 : number, Symbol(ri3, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 94, 3))
>null ^ 1 : number
+>null : null
+>1 : number
var ri4 = null ^ E.a;
->ri4 : number
+>ri4 : number, Symbol(ri4, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 95, 3))
>null ^ E.a : number
->E.a : E
->E : typeof E
->a : E
+>null : null
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 3, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 3, 8))
var ri5 = a ^ null;
->ri5 : number
+>ri5 : number, Symbol(ri5, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 96, 3))
>a ^ null : number
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 8, 3))
+>null : null
var ri6 = b ^ null;
->ri6 : number
+>ri6 : number, Symbol(ri6, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 97, 3))
>b ^ null : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 9, 3))
+>null : null
var ri7 = 0 ^ null;
->ri7 : number
+>ri7 : number, Symbol(ri7, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 98, 3))
>0 ^ null : number
+>0 : number
+>null : null
var ri8 = E.b ^ null;
->ri8 : number
+>ri8 : number, Symbol(ri8, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 99, 3))
>E.b ^ null : number
->E.b : E
->E : typeof E
->b : E
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 4, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 4, 6))
+>null : null
// operator |
var rj1 = null | a;
->rj1 : number
+>rj1 : number, Symbol(rj1, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 102, 3))
>null | a : number
->a : any
+>null : null
+>a : any, Symbol(a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 8, 3))
var rj2 = null | b;
->rj2 : number
+>rj2 : number, Symbol(rj2, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 103, 3))
>null | b : number
->b : number
+>null : null
+>b : number, Symbol(b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 9, 3))
var rj3 = null | 1;
->rj3 : number
+>rj3 : number, Symbol(rj3, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 104, 3))
>null | 1 : number
+>null : null
+>1 : number
var rj4 = null | E.a;
->rj4 : number
+>rj4 : number, Symbol(rj4, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 105, 3))
>null | E.a : number
->E.a : E
->E : typeof E
->a : E
+>null : null
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 3, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 3, 8))
var rj5 = a | null;
->rj5 : number
+>rj5 : number, Symbol(rj5, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 106, 3))
>a | null : number
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 8, 3))
+>null : null
var rj6 = b | null;
->rj6 : number
+>rj6 : number, Symbol(rj6, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 107, 3))
>b | null : number
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 9, 3))
+>null : null
var rj7 = 0 | null;
->rj7 : number
+>rj7 : number, Symbol(rj7, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 108, 3))
>0 | null : number
+>0 : number
+>null : null
var rj8 = E.b | null;
->rj8 : number
+>rj8 : number, Symbol(rj8, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 109, 3))
>E.b | null : number
->E.b : E
->E : typeof E
->b : E
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 4, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithNullValueAndValidOperands.ts, 4, 6))
+>null : null
diff --git a/tests/baselines/reference/arithmeticOperatorWithUndefinedValueAndValidOperands.types b/tests/baselines/reference/arithmeticOperatorWithUndefinedValueAndValidOperands.types
index 7db074df8bb..9dc36bd1d9b 100644
--- a/tests/baselines/reference/arithmeticOperatorWithUndefinedValueAndValidOperands.types
+++ b/tests/baselines/reference/arithmeticOperatorWithUndefinedValueAndValidOperands.types
@@ -3,528 +3,548 @@
// other operand.
enum E {
->E : E
+>E : E, Symbol(E, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 0, 0))
a,
->a : E
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 3, 8))
b
->b : E
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 4, 6))
}
var a: any;
->a : any
+>a : any, Symbol(a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 8, 3))
var b: number;
->b : number
+>b : number, Symbol(b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 9, 3))
// operator *
var ra1 = undefined * a;
->ra1 : number
+>ra1 : number, Symbol(ra1, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 12, 3))
>undefined * a : number
->undefined : undefined
->a : any
+>undefined : undefined, Symbol(undefined)
+>a : any, Symbol(a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 8, 3))
var ra2 = undefined * b;
->ra2 : number
+>ra2 : number, Symbol(ra2, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 13, 3))
>undefined * b : number
->undefined : undefined
->b : number
+>undefined : undefined, Symbol(undefined)
+>b : number, Symbol(b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 9, 3))
var ra3 = undefined * 1;
->ra3 : number
+>ra3 : number, Symbol(ra3, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 14, 3))
>undefined * 1 : number
->undefined : undefined
+>undefined : undefined, Symbol(undefined)
+>1 : number
var ra4 = undefined * E.a;
->ra4 : number
+>ra4 : number, Symbol(ra4, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 15, 3))
>undefined * E.a : number
->undefined : undefined
->E.a : E
->E : typeof E
->a : E
+>undefined : undefined, Symbol(undefined)
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 3, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 3, 8))
var ra5 = a * undefined;
->ra5 : number
+>ra5 : number, Symbol(ra5, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 16, 3))
>a * undefined : number
->a : any
->undefined : undefined
+>a : any, Symbol(a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 8, 3))
+>undefined : undefined, Symbol(undefined)
var ra6 = b * undefined;
->ra6 : number
+>ra6 : number, Symbol(ra6, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 17, 3))
>b * undefined : number
->b : number
->undefined : undefined
+>b : number, Symbol(b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 9, 3))
+>undefined : undefined, Symbol(undefined)
var ra7 = 0 * undefined;
->ra7 : number
+>ra7 : number, Symbol(ra7, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 18, 3))
>0 * undefined : number
->undefined : undefined
+>0 : number
+>undefined : undefined, Symbol(undefined)
var ra8 = E.b * undefined;
->ra8 : number
+>ra8 : number, Symbol(ra8, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 19, 3))
>E.b * undefined : number
->E.b : E
->E : typeof E
->b : E
->undefined : undefined
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 4, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 4, 6))
+>undefined : undefined, Symbol(undefined)
// operator /
var rb1 = undefined / a;
->rb1 : number
+>rb1 : number, Symbol(rb1, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 22, 3))
>undefined / a : number
->undefined : undefined
->a : any
+>undefined : undefined, Symbol(undefined)
+>a : any, Symbol(a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 8, 3))
var rb2 = undefined / b;
->rb2 : number
+>rb2 : number, Symbol(rb2, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 23, 3))
>undefined / b : number
->undefined : undefined
->b : number
+>undefined : undefined, Symbol(undefined)
+>b : number, Symbol(b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 9, 3))
var rb3 = undefined / 1;
->rb3 : number
+>rb3 : number, Symbol(rb3, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 24, 3))
>undefined / 1 : number
->undefined : undefined
+>undefined : undefined, Symbol(undefined)
+>1 : number
var rb4 = undefined / E.a;
->rb4 : number
+>rb4 : number, Symbol(rb4, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 25, 3))
>undefined / E.a : number
->undefined : undefined
->E.a : E
->E : typeof E
->a : E
+>undefined : undefined, Symbol(undefined)
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 3, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 3, 8))
var rb5 = a / undefined;
->rb5 : number
+>rb5 : number, Symbol(rb5, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 26, 3))
>a / undefined : number
->a : any
->undefined : undefined
+>a : any, Symbol(a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 8, 3))
+>undefined : undefined, Symbol(undefined)
var rb6 = b / undefined;
->rb6 : number
+>rb6 : number, Symbol(rb6, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 27, 3))
>b / undefined : number
->b : number
->undefined : undefined
+>b : number, Symbol(b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 9, 3))
+>undefined : undefined, Symbol(undefined)
var rb7 = 0 / undefined;
->rb7 : number
+>rb7 : number, Symbol(rb7, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 28, 3))
>0 / undefined : number
->undefined : undefined
+>0 : number
+>undefined : undefined, Symbol(undefined)
var rb8 = E.b / undefined;
->rb8 : number
+>rb8 : number, Symbol(rb8, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 29, 3))
>E.b / undefined : number
->E.b : E
->E : typeof E
->b : E
->undefined : undefined
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 4, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 4, 6))
+>undefined : undefined, Symbol(undefined)
// operator %
var rc1 = undefined % a;
->rc1 : number
+>rc1 : number, Symbol(rc1, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 32, 3))
>undefined % a : number
->undefined : undefined
->a : any
+>undefined : undefined, Symbol(undefined)
+>a : any, Symbol(a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 8, 3))
var rc2 = undefined % b;
->rc2 : number
+>rc2 : number, Symbol(rc2, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 33, 3))
>undefined % b : number
->undefined : undefined
->b : number
+>undefined : undefined, Symbol(undefined)
+>b : number, Symbol(b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 9, 3))
var rc3 = undefined % 1;
->rc3 : number
+>rc3 : number, Symbol(rc3, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 34, 3))
>undefined % 1 : number
->undefined : undefined
+>undefined : undefined, Symbol(undefined)
+>1 : number
var rc4 = undefined % E.a;
->rc4 : number
+>rc4 : number, Symbol(rc4, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 35, 3))
>undefined % E.a : number
->undefined : undefined
->E.a : E
->E : typeof E
->a : E
+>undefined : undefined, Symbol(undefined)
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 3, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 3, 8))
var rc5 = a % undefined;
->rc5 : number
+>rc5 : number, Symbol(rc5, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 36, 3))
>a % undefined : number
->a : any
->undefined : undefined
+>a : any, Symbol(a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 8, 3))
+>undefined : undefined, Symbol(undefined)
var rc6 = b % undefined;
->rc6 : number
+>rc6 : number, Symbol(rc6, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 37, 3))
>b % undefined : number
->b : number
->undefined : undefined
+>b : number, Symbol(b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 9, 3))
+>undefined : undefined, Symbol(undefined)
var rc7 = 0 % undefined;
->rc7 : number
+>rc7 : number, Symbol(rc7, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 38, 3))
>0 % undefined : number
->undefined : undefined
+>0 : number
+>undefined : undefined, Symbol(undefined)
var rc8 = E.b % undefined;
->rc8 : number
+>rc8 : number, Symbol(rc8, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 39, 3))
>E.b % undefined : number
->E.b : E
->E : typeof E
->b : E
->undefined : undefined
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 4, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 4, 6))
+>undefined : undefined, Symbol(undefined)
// operator -
var rd1 = undefined - a;
->rd1 : number
+>rd1 : number, Symbol(rd1, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 42, 3))
>undefined - a : number
->undefined : undefined
->a : any
+>undefined : undefined, Symbol(undefined)
+>a : any, Symbol(a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 8, 3))
var rd2 = undefined - b;
->rd2 : number
+>rd2 : number, Symbol(rd2, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 43, 3))
>undefined - b : number
->undefined : undefined
->b : number
+>undefined : undefined, Symbol(undefined)
+>b : number, Symbol(b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 9, 3))
var rd3 = undefined - 1;
->rd3 : number
+>rd3 : number, Symbol(rd3, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 44, 3))
>undefined - 1 : number
->undefined : undefined
+>undefined : undefined, Symbol(undefined)
+>1 : number
var rd4 = undefined - E.a;
->rd4 : number
+>rd4 : number, Symbol(rd4, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 45, 3))
>undefined - E.a : number
->undefined : undefined
->E.a : E
->E : typeof E
->a : E
+>undefined : undefined, Symbol(undefined)
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 3, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 3, 8))
var rd5 = a - undefined;
->rd5 : number
+>rd5 : number, Symbol(rd5, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 46, 3))
>a - undefined : number
->a : any
->undefined : undefined
+>a : any, Symbol(a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 8, 3))
+>undefined : undefined, Symbol(undefined)
var rd6 = b - undefined;
->rd6 : number
+>rd6 : number, Symbol(rd6, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 47, 3))
>b - undefined : number
->b : number
->undefined : undefined
+>b : number, Symbol(b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 9, 3))
+>undefined : undefined, Symbol(undefined)
var rd7 = 0 - undefined;
->rd7 : number
+>rd7 : number, Symbol(rd7, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 48, 3))
>0 - undefined : number
->undefined : undefined
+>0 : number
+>undefined : undefined, Symbol(undefined)
var rd8 = E.b - undefined;
->rd8 : number
+>rd8 : number, Symbol(rd8, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 49, 3))
>E.b - undefined : number
->E.b : E
->E : typeof E
->b : E
->undefined : undefined
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 4, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 4, 6))
+>undefined : undefined, Symbol(undefined)
// operator <<
var re1 = undefined << a;
->re1 : number
+>re1 : number, Symbol(re1, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 52, 3))
>undefined << a : number
->undefined : undefined
->a : any
+>undefined : undefined, Symbol(undefined)
+>a : any, Symbol(a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 8, 3))
var re2 = undefined << b;
->re2 : number
+>re2 : number, Symbol(re2, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 53, 3))
>undefined << b : number
->undefined : undefined
->b : number
+>undefined : undefined, Symbol(undefined)
+>b : number, Symbol(b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 9, 3))
var re3 = undefined << 1;
->re3 : number
+>re3 : number, Symbol(re3, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 54, 3))
>undefined << 1 : number
->undefined : undefined
+>undefined : undefined, Symbol(undefined)
+>1 : number
var re4 = undefined << E.a;
->re4 : number
+>re4 : number, Symbol(re4, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 55, 3))
>undefined << E.a : number
->undefined : undefined
->E.a : E
->E : typeof E
->a : E
+>undefined : undefined, Symbol(undefined)
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 3, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 3, 8))
var re5 = a << undefined;
->re5 : number
+>re5 : number, Symbol(re5, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 56, 3))
>a << undefined : number
->a : any
->undefined : undefined
+>a : any, Symbol(a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 8, 3))
+>undefined : undefined, Symbol(undefined)
var re6 = b << undefined;
->re6 : number
+>re6 : number, Symbol(re6, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 57, 3))
>b << undefined : number
->b : number
->undefined : undefined
+>b : number, Symbol(b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 9, 3))
+>undefined : undefined, Symbol(undefined)
var re7 = 0 << undefined;
->re7 : number
+>re7 : number, Symbol(re7, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 58, 3))
>0 << undefined : number
->undefined : undefined
+>0 : number
+>undefined : undefined, Symbol(undefined)
var re8 = E.b << undefined;
->re8 : number
+>re8 : number, Symbol(re8, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 59, 3))
>E.b << undefined : number
->E.b : E
->E : typeof E
->b : E
->undefined : undefined
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 4, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 4, 6))
+>undefined : undefined, Symbol(undefined)
// operator >>
var rf1 = undefined >> a;
->rf1 : number
+>rf1 : number, Symbol(rf1, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 62, 3))
>undefined >> a : number
->undefined : undefined
->a : any
+>undefined : undefined, Symbol(undefined)
+>a : any, Symbol(a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 8, 3))
var rf2 = undefined >> b;
->rf2 : number
+>rf2 : number, Symbol(rf2, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 63, 3))
>undefined >> b : number
->undefined : undefined
->b : number
+>undefined : undefined, Symbol(undefined)
+>b : number, Symbol(b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 9, 3))
var rf3 = undefined >> 1;
->rf3 : number
+>rf3 : number, Symbol(rf3, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 64, 3))
>undefined >> 1 : number
->undefined : undefined
+>undefined : undefined, Symbol(undefined)
+>1 : number
var rf4 = undefined >> E.a;
->rf4 : number
+>rf4 : number, Symbol(rf4, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 65, 3))
>undefined >> E.a : number
->undefined : undefined
->E.a : E
->E : typeof E
->a : E
+>undefined : undefined, Symbol(undefined)
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 3, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 3, 8))
var rf5 = a >> undefined;
->rf5 : number
+>rf5 : number, Symbol(rf5, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 66, 3))
>a >> undefined : number
->a : any
->undefined : undefined
+>a : any, Symbol(a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 8, 3))
+>undefined : undefined, Symbol(undefined)
var rf6 = b >> undefined;
->rf6 : number
+>rf6 : number, Symbol(rf6, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 67, 3))
>b >> undefined : number
->b : number
->undefined : undefined
+>b : number, Symbol(b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 9, 3))
+>undefined : undefined, Symbol(undefined)
var rf7 = 0 >> undefined;
->rf7 : number
+>rf7 : number, Symbol(rf7, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 68, 3))
>0 >> undefined : number
->undefined : undefined
+>0 : number
+>undefined : undefined, Symbol(undefined)
var rf8 = E.b >> undefined;
->rf8 : number
+>rf8 : number, Symbol(rf8, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 69, 3))
>E.b >> undefined : number
->E.b : E
->E : typeof E
->b : E
->undefined : undefined
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 4, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 4, 6))
+>undefined : undefined, Symbol(undefined)
// operator >>>
var rg1 = undefined >>> a;
->rg1 : number
+>rg1 : number, Symbol(rg1, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 72, 3))
>undefined >>> a : number
->undefined : undefined
->a : any
+>undefined : undefined, Symbol(undefined)
+>a : any, Symbol(a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 8, 3))
var rg2 = undefined >>> b;
->rg2 : number
+>rg2 : number, Symbol(rg2, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 73, 3))
>undefined >>> b : number
->undefined : undefined
->b : number
+>undefined : undefined, Symbol(undefined)
+>b : number, Symbol(b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 9, 3))
var rg3 = undefined >>> 1;
->rg3 : number
+>rg3 : number, Symbol(rg3, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 74, 3))
>undefined >>> 1 : number
->undefined : undefined
+>undefined : undefined, Symbol(undefined)
+>1 : number
var rg4 = undefined >>> E.a;
->rg4 : number
+>rg4 : number, Symbol(rg4, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 75, 3))
>undefined >>> E.a : number
->undefined : undefined
->E.a : E
->E : typeof E
->a : E
+>undefined : undefined, Symbol(undefined)
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 3, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 3, 8))
var rg5 = a >>> undefined;
->rg5 : number
+>rg5 : number, Symbol(rg5, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 76, 3))
>a >>> undefined : number
->a : any
->undefined : undefined
+>a : any, Symbol(a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 8, 3))
+>undefined : undefined, Symbol(undefined)
var rg6 = b >>> undefined;
->rg6 : number
+>rg6 : number, Symbol(rg6, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 77, 3))
>b >>> undefined : number
->b : number
->undefined : undefined
+>b : number, Symbol(b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 9, 3))
+>undefined : undefined, Symbol(undefined)
var rg7 = 0 >>> undefined;
->rg7 : number
+>rg7 : number, Symbol(rg7, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 78, 3))
>0 >>> undefined : number
->undefined : undefined
+>0 : number
+>undefined : undefined, Symbol(undefined)
var rg8 = E.b >>> undefined;
->rg8 : number
+>rg8 : number, Symbol(rg8, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 79, 3))
>E.b >>> undefined : number
->E.b : E
->E : typeof E
->b : E
->undefined : undefined
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 4, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 4, 6))
+>undefined : undefined, Symbol(undefined)
// operator &
var rh1 = undefined & a;
->rh1 : number
+>rh1 : number, Symbol(rh1, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 82, 3))
>undefined & a : number
->undefined : undefined
->a : any
+>undefined : undefined, Symbol(undefined)
+>a : any, Symbol(a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 8, 3))
var rh2 = undefined & b;
->rh2 : number
+>rh2 : number, Symbol(rh2, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 83, 3))
>undefined & b : number
->undefined : undefined
->b : number
+>undefined : undefined, Symbol(undefined)
+>b : number, Symbol(b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 9, 3))
var rh3 = undefined & 1;
->rh3 : number
+>rh3 : number, Symbol(rh3, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 84, 3))
>undefined & 1 : number
->undefined : undefined
+>undefined : undefined, Symbol(undefined)
+>1 : number
var rh4 = undefined & E.a;
->rh4 : number
+>rh4 : number, Symbol(rh4, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 85, 3))
>undefined & E.a : number
->undefined : undefined
->E.a : E
->E : typeof E
->a : E
+>undefined : undefined, Symbol(undefined)
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 3, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 3, 8))
var rh5 = a & undefined;
->rh5 : number
+>rh5 : number, Symbol(rh5, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 86, 3))
>a & undefined : number
->a : any
->undefined : undefined
+>a : any, Symbol(a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 8, 3))
+>undefined : undefined, Symbol(undefined)
var rh6 = b & undefined;
->rh6 : number
+>rh6 : number, Symbol(rh6, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 87, 3))
>b & undefined : number
->b : number
->undefined : undefined
+>b : number, Symbol(b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 9, 3))
+>undefined : undefined, Symbol(undefined)
var rh7 = 0 & undefined;
->rh7 : number
+>rh7 : number, Symbol(rh7, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 88, 3))
>0 & undefined : number
->undefined : undefined
+>0 : number
+>undefined : undefined, Symbol(undefined)
var rh8 = E.b & undefined;
->rh8 : number
+>rh8 : number, Symbol(rh8, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 89, 3))
>E.b & undefined : number
->E.b : E
->E : typeof E
->b : E
->undefined : undefined
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 4, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 4, 6))
+>undefined : undefined, Symbol(undefined)
// operator ^
var ri1 = undefined ^ a;
->ri1 : number
+>ri1 : number, Symbol(ri1, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 92, 3))
>undefined ^ a : number
->undefined : undefined
->a : any
+>undefined : undefined, Symbol(undefined)
+>a : any, Symbol(a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 8, 3))
var ri2 = undefined ^ b;
->ri2 : number
+>ri2 : number, Symbol(ri2, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 93, 3))
>undefined ^ b : number
->undefined : undefined
->b : number
+>undefined : undefined, Symbol(undefined)
+>b : number, Symbol(b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 9, 3))
var ri3 = undefined ^ 1;
->ri3 : number
+>ri3 : number, Symbol(ri3, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 94, 3))
>undefined ^ 1 : number
->undefined : undefined
+>undefined : undefined, Symbol(undefined)
+>1 : number
var ri4 = undefined ^ E.a;
->ri4 : number
+>ri4 : number, Symbol(ri4, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 95, 3))
>undefined ^ E.a : number
->undefined : undefined
->E.a : E
->E : typeof E
->a : E
+>undefined : undefined, Symbol(undefined)
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 3, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 3, 8))
var ri5 = a ^ undefined;
->ri5 : number
+>ri5 : number, Symbol(ri5, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 96, 3))
>a ^ undefined : number
->a : any
->undefined : undefined
+>a : any, Symbol(a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 8, 3))
+>undefined : undefined, Symbol(undefined)
var ri6 = b ^ undefined;
->ri6 : number
+>ri6 : number, Symbol(ri6, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 97, 3))
>b ^ undefined : number
->b : number
->undefined : undefined
+>b : number, Symbol(b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 9, 3))
+>undefined : undefined, Symbol(undefined)
var ri7 = 0 ^ undefined;
->ri7 : number
+>ri7 : number, Symbol(ri7, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 98, 3))
>0 ^ undefined : number
->undefined : undefined
+>0 : number
+>undefined : undefined, Symbol(undefined)
var ri8 = E.b ^ undefined;
->ri8 : number
+>ri8 : number, Symbol(ri8, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 99, 3))
>E.b ^ undefined : number
->E.b : E
->E : typeof E
->b : E
->undefined : undefined
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 4, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 4, 6))
+>undefined : undefined, Symbol(undefined)
// operator |
var rj1 = undefined | a;
->rj1 : number
+>rj1 : number, Symbol(rj1, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 102, 3))
>undefined | a : number
->undefined : undefined
->a : any
+>undefined : undefined, Symbol(undefined)
+>a : any, Symbol(a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 8, 3))
var rj2 = undefined | b;
->rj2 : number
+>rj2 : number, Symbol(rj2, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 103, 3))
>undefined | b : number
->undefined : undefined
->b : number
+>undefined : undefined, Symbol(undefined)
+>b : number, Symbol(b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 9, 3))
var rj3 = undefined | 1;
->rj3 : number
+>rj3 : number, Symbol(rj3, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 104, 3))
>undefined | 1 : number
->undefined : undefined
+>undefined : undefined, Symbol(undefined)
+>1 : number
var rj4 = undefined | E.a;
->rj4 : number
+>rj4 : number, Symbol(rj4, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 105, 3))
>undefined | E.a : number
->undefined : undefined
->E.a : E
->E : typeof E
->a : E
+>undefined : undefined, Symbol(undefined)
+>E.a : E, Symbol(E.a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 3, 8))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 0, 0))
+>a : E, Symbol(E.a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 3, 8))
var rj5 = a | undefined;
->rj5 : number
+>rj5 : number, Symbol(rj5, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 106, 3))
>a | undefined : number
->a : any
->undefined : undefined
+>a : any, Symbol(a, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 8, 3))
+>undefined : undefined, Symbol(undefined)
var rj6 = b | undefined;
->rj6 : number
+>rj6 : number, Symbol(rj6, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 107, 3))
>b | undefined : number
->b : number
->undefined : undefined
+>b : number, Symbol(b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 9, 3))
+>undefined : undefined, Symbol(undefined)
var rj7 = 0 | undefined;
->rj7 : number
+>rj7 : number, Symbol(rj7, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 108, 3))
>0 | undefined : number
->undefined : undefined
+>0 : number
+>undefined : undefined, Symbol(undefined)
var rj8 = E.b | undefined;
->rj8 : number
+>rj8 : number, Symbol(rj8, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 109, 3))
>E.b | undefined : number
->E.b : E
->E : typeof E
->b : E
->undefined : undefined
+>E.b : E, Symbol(E.b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 4, 6))
+>E : typeof E, Symbol(E, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 0, 0))
+>b : E, Symbol(E.b, Decl(arithmeticOperatorWithUndefinedValueAndValidOperands.ts, 4, 6))
+>undefined : undefined, Symbol(undefined)
diff --git a/tests/baselines/reference/arrayAssignmentTest6.types b/tests/baselines/reference/arrayAssignmentTest6.types
index 0c932cb7556..b9a486f103b 100644
--- a/tests/baselines/reference/arrayAssignmentTest6.types
+++ b/tests/baselines/reference/arrayAssignmentTest6.types
@@ -1,51 +1,52 @@
=== tests/cases/compiler/arrayAssignmentTest6.ts ===
module Test {
->Test : typeof Test
+>Test : typeof Test, Symbol(Test, Decl(arrayAssignmentTest6.ts, 0, 0))
interface IState {
->IState : IState
+>IState : IState, Symbol(IState, Decl(arrayAssignmentTest6.ts, 0, 13))
}
interface IToken {
->IToken : IToken
+>IToken : IToken, Symbol(IToken, Decl(arrayAssignmentTest6.ts, 2, 5))
startIndex: number;
->startIndex : number
+>startIndex : number, Symbol(startIndex, Decl(arrayAssignmentTest6.ts, 3, 22))
}
interface ILineTokens {
->ILineTokens : ILineTokens
+>ILineTokens : ILineTokens, Symbol(ILineTokens, Decl(arrayAssignmentTest6.ts, 5, 5))
tokens: IToken[];
->tokens : IToken[]
->IToken : IToken
+>tokens : IToken[], Symbol(tokens, Decl(arrayAssignmentTest6.ts, 6, 27))
+>IToken : IToken, Symbol(IToken, Decl(arrayAssignmentTest6.ts, 2, 5))
endState: IState;
->endState : IState
->IState : IState
+>endState : IState, Symbol(endState, Decl(arrayAssignmentTest6.ts, 7, 25))
+>IState : IState, Symbol(IState, Decl(arrayAssignmentTest6.ts, 0, 13))
}
interface IMode {
->IMode : IMode
+>IMode : IMode, Symbol(IMode, Decl(arrayAssignmentTest6.ts, 9, 5))
tokenize(line:string, state:IState, includeStates:boolean):ILineTokens;
->tokenize : (line: string, state: IState, includeStates: boolean) => ILineTokens
->line : string
->state : IState
->IState : IState
->includeStates : boolean
->ILineTokens : ILineTokens
+>tokenize : (line: string, state: IState, includeStates: boolean) => ILineTokens, Symbol(tokenize, Decl(arrayAssignmentTest6.ts, 10, 21))
+>line : string, Symbol(line, Decl(arrayAssignmentTest6.ts, 11, 17))
+>state : IState, Symbol(state, Decl(arrayAssignmentTest6.ts, 11, 29))
+>IState : IState, Symbol(IState, Decl(arrayAssignmentTest6.ts, 0, 13))
+>includeStates : boolean, Symbol(includeStates, Decl(arrayAssignmentTest6.ts, 11, 43))
+>ILineTokens : ILineTokens, Symbol(ILineTokens, Decl(arrayAssignmentTest6.ts, 5, 5))
}
export class Bug implements IMode {
->Bug : Bug
->IMode : IMode
+>Bug : Bug, Symbol(Bug, Decl(arrayAssignmentTest6.ts, 12, 5))
+>IMode : IMode, Symbol(IMode, Decl(arrayAssignmentTest6.ts, 9, 5))
public tokenize(line:string, tokens:IToken[], includeStates:boolean):ILineTokens {
->tokenize : (line: string, tokens: IToken[], includeStates: boolean) => ILineTokens
->line : string
->tokens : IToken[]
->IToken : IToken
->includeStates : boolean
->ILineTokens : ILineTokens
+>tokenize : (line: string, tokens: IToken[], includeStates: boolean) => ILineTokens, Symbol(tokenize, Decl(arrayAssignmentTest6.ts, 13, 39))
+>line : string, Symbol(line, Decl(arrayAssignmentTest6.ts, 14, 24))
+>tokens : IToken[], Symbol(tokens, Decl(arrayAssignmentTest6.ts, 14, 36))
+>IToken : IToken, Symbol(IToken, Decl(arrayAssignmentTest6.ts, 2, 5))
+>includeStates : boolean, Symbol(includeStates, Decl(arrayAssignmentTest6.ts, 14, 53))
+>ILineTokens : ILineTokens, Symbol(ILineTokens, Decl(arrayAssignmentTest6.ts, 5, 5))
return null;
+>null : null
}
}
}
diff --git a/tests/baselines/reference/arrayAugment.types b/tests/baselines/reference/arrayAugment.types
index b338d7f5c5f..e784d9cbb52 100644
--- a/tests/baselines/reference/arrayAugment.types
+++ b/tests/baselines/reference/arrayAugment.types
@@ -1,25 +1,27 @@
=== tests/cases/compiler/arrayAugment.ts ===
interface Array {
->Array : T[]
->T : T
+>Array : T[], Symbol(Array, Decl(lib.d.ts, 1000, 23), Decl(lib.d.ts, 1171, 11), Decl(arrayAugment.ts, 0, 0))
+>T : T, Symbol(T, Decl(lib.d.ts, 1007, 16), Decl(arrayAugment.ts, 0, 16))
split: (parts: number) => T[][];
->split : (parts: number) => T[][]
->parts : number
->T : T
+>split : (parts: number) => T[][], Symbol(split, Decl(arrayAugment.ts, 0, 20))
+>parts : number, Symbol(parts, Decl(arrayAugment.ts, 1, 12))
+>T : T, Symbol(T, Decl(lib.d.ts, 1007, 16), Decl(arrayAugment.ts, 0, 16))
}
var x = [''];
->x : string[]
+>x : string[], Symbol(x, Decl(arrayAugment.ts, 4, 3))
>[''] : string[]
+>'' : string
var y = x.split(4);
->y : string[][]
+>y : string[][], Symbol(y, Decl(arrayAugment.ts, 5, 3), Decl(arrayAugment.ts, 6, 3))
>x.split(4) : string[][]
->x.split : (parts: number) => string[][]
->x : string[]
->split : (parts: number) => string[][]
+>x.split : (parts: number) => string[][], Symbol(Array.split, Decl(arrayAugment.ts, 0, 20))
+>x : string[], Symbol(x, Decl(arrayAugment.ts, 4, 3))
+>split : (parts: number) => string[][], Symbol(Array.split, Decl(arrayAugment.ts, 0, 20))
+>4 : number
var y: string[][]; // Expect no error here
->y : string[][]
+>y : string[][], Symbol(y, Decl(arrayAugment.ts, 5, 3), Decl(arrayAugment.ts, 6, 3))
diff --git a/tests/baselines/reference/arrayBestCommonTypes.types b/tests/baselines/reference/arrayBestCommonTypes.types
index 5e34380673d..66cf874850e 100644
--- a/tests/baselines/reference/arrayBestCommonTypes.types
+++ b/tests/baselines/reference/arrayBestCommonTypes.types
@@ -1,662 +1,800 @@
=== tests/cases/compiler/arrayBestCommonTypes.ts ===
module EmptyTypes {
->EmptyTypes : typeof EmptyTypes
+>EmptyTypes : typeof EmptyTypes, Symbol(EmptyTypes, Decl(arrayBestCommonTypes.ts, 0, 0))
interface iface { }
->iface : iface
+>iface : iface, Symbol(iface, Decl(arrayBestCommonTypes.ts, 0, 19))
class base implements iface { }
->base : base
->iface : iface
+>base : base, Symbol(base, Decl(arrayBestCommonTypes.ts, 1, 23))
+>iface : iface, Symbol(iface, Decl(arrayBestCommonTypes.ts, 0, 19))
class base2 implements iface { }
->base2 : base2
->iface : iface
+>base2 : base2, Symbol(base2, Decl(arrayBestCommonTypes.ts, 2, 35))
+>iface : iface, Symbol(iface, Decl(arrayBestCommonTypes.ts, 0, 19))
class derived extends base { }
->derived : derived
->base : base
+>derived : derived, Symbol(derived, Decl(arrayBestCommonTypes.ts, 3, 36))
+>base : base, Symbol(base, Decl(arrayBestCommonTypes.ts, 1, 23))
class f {
->f : f
+>f : f, Symbol(f, Decl(arrayBestCommonTypes.ts, 4, 34))
public voidIfAny(x: boolean, y?: boolean): number;
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->x : boolean
->y : boolean
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
+>x : boolean, Symbol(x, Decl(arrayBestCommonTypes.ts, 8, 25))
+>y : boolean, Symbol(y, Decl(arrayBestCommonTypes.ts, 8, 36))
public voidIfAny(x: string, y?: boolean): number;
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->x : string
->y : boolean
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
+>x : string, Symbol(x, Decl(arrayBestCommonTypes.ts, 9, 25))
+>y : boolean, Symbol(y, Decl(arrayBestCommonTypes.ts, 9, 35))
public voidIfAny(x: number, y?: boolean): number;
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->x : number
->y : boolean
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
+>x : number, Symbol(x, Decl(arrayBestCommonTypes.ts, 10, 25))
+>y : boolean, Symbol(y, Decl(arrayBestCommonTypes.ts, 10, 35))
public voidIfAny(x: any, y = false): any { return null; }
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->x : any
->y : boolean
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
+>x : any, Symbol(x, Decl(arrayBestCommonTypes.ts, 11, 25))
+>y : boolean, Symbol(y, Decl(arrayBestCommonTypes.ts, 11, 32))
+>false : boolean
+>null : null
public x() {
->x : () => void
+>x : () => void, Symbol(x, Decl(arrayBestCommonTypes.ts, 11, 65))
(this.voidIfAny([4, 2][0]));
>(this.voidIfAny([4, 2][0])) : number
>(this.voidIfAny([4, 2][0])) : number
>this.voidIfAny([4, 2][0]) : number
->this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->this : f
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
+>this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
+>this : f, Symbol(f, Decl(arrayBestCommonTypes.ts, 4, 34))
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
>[4, 2][0] : number
>[4, 2] : number[]
+>4 : number
+>2 : number
+>0 : number
(this.voidIfAny([4, 2, undefined][0]));
>(this.voidIfAny([4, 2, undefined][0])) : number
>(this.voidIfAny([4, 2, undefined][0])) : number
>this.voidIfAny([4, 2, undefined][0]) : number
->this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->this : f
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
+>this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
+>this : f, Symbol(f, Decl(arrayBestCommonTypes.ts, 4, 34))
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
>[4, 2, undefined][0] : number
>[4, 2, undefined] : number[]
->undefined : undefined
+>4 : number
+>2 : number
+>undefined : undefined, Symbol(undefined)
+>0 : number
(this.voidIfAny([undefined, 2, 4][0]));
>(this.voidIfAny([undefined, 2, 4][0])) : number
>(this.voidIfAny([undefined, 2, 4][0])) : number
>this.voidIfAny([undefined, 2, 4][0]) : number
->this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->this : f
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
+>this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
+>this : f, Symbol(f, Decl(arrayBestCommonTypes.ts, 4, 34))
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
>[undefined, 2, 4][0] : number
>[undefined, 2, 4] : number[]
->undefined : undefined
+>undefined : undefined, Symbol(undefined)
+>2 : number
+>4 : number
+>0 : number
(this.voidIfAny([null, 2, 4][0]));
>(this.voidIfAny([null, 2, 4][0])) : number
>(this.voidIfAny([null, 2, 4][0])) : number
>this.voidIfAny([null, 2, 4][0]) : number
->this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->this : f
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
+>this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
+>this : f, Symbol(f, Decl(arrayBestCommonTypes.ts, 4, 34))
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
>[null, 2, 4][0] : number
>[null, 2, 4] : number[]
+>null : null
+>2 : number
+>4 : number
+>0 : number
(this.voidIfAny([2, 4, null][0]));
>(this.voidIfAny([2, 4, null][0])) : number
>(this.voidIfAny([2, 4, null][0])) : number
>this.voidIfAny([2, 4, null][0]) : number
->this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->this : f
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
+>this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
+>this : f, Symbol(f, Decl(arrayBestCommonTypes.ts, 4, 34))
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
>[2, 4, null][0] : number
>[2, 4, null] : number[]
+>2 : number
+>4 : number
+>null : null
+>0 : number
(this.voidIfAny([undefined, 4, null][0]));
>(this.voidIfAny([undefined, 4, null][0])) : number
>(this.voidIfAny([undefined, 4, null][0])) : number
>this.voidIfAny([undefined, 4, null][0]) : number
->this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->this : f
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
+>this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
+>this : f, Symbol(f, Decl(arrayBestCommonTypes.ts, 4, 34))
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
>[undefined, 4, null][0] : number
>[undefined, 4, null] : number[]
->undefined : undefined
+>undefined : undefined, Symbol(undefined)
+>4 : number
+>null : null
+>0 : number
(this.voidIfAny(['', "q"][0]));
>(this.voidIfAny(['', "q"][0])) : number
>(this.voidIfAny(['', "q"][0])) : number
>this.voidIfAny(['', "q"][0]) : number
->this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->this : f
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
+>this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
+>this : f, Symbol(f, Decl(arrayBestCommonTypes.ts, 4, 34))
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
>['', "q"][0] : string
>['', "q"] : string[]
+>'' : string
+>"q" : string
+>0 : number
(this.voidIfAny(['', "q", undefined][0]));
>(this.voidIfAny(['', "q", undefined][0])) : number
>(this.voidIfAny(['', "q", undefined][0])) : number
>this.voidIfAny(['', "q", undefined][0]) : number
->this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->this : f
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
+>this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
+>this : f, Symbol(f, Decl(arrayBestCommonTypes.ts, 4, 34))
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
>['', "q", undefined][0] : string
>['', "q", undefined] : string[]
->undefined : undefined
+>'' : string
+>"q" : string
+>undefined : undefined, Symbol(undefined)
+>0 : number
(this.voidIfAny([undefined, "q", ''][0]));
>(this.voidIfAny([undefined, "q", ''][0])) : number
>(this.voidIfAny([undefined, "q", ''][0])) : number
>this.voidIfAny([undefined, "q", ''][0]) : number
->this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->this : f
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
+>this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
+>this : f, Symbol(f, Decl(arrayBestCommonTypes.ts, 4, 34))
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
>[undefined, "q", ''][0] : string
>[undefined, "q", ''] : string[]
->undefined : undefined
+>undefined : undefined, Symbol(undefined)
+>"q" : string
+>'' : string
+>0 : number
(this.voidIfAny([null, "q", ''][0]));
>(this.voidIfAny([null, "q", ''][0])) : number
>(this.voidIfAny([null, "q", ''][0])) : number
>this.voidIfAny([null, "q", ''][0]) : number
->this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->this : f
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
+>this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
+>this : f, Symbol(f, Decl(arrayBestCommonTypes.ts, 4, 34))
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
>[null, "q", ''][0] : string
>[null, "q", ''] : string[]
+>null : null
+>"q" : string
+>'' : string
+>0 : number
(this.voidIfAny(["q", '', null][0]));
>(this.voidIfAny(["q", '', null][0])) : number
>(this.voidIfAny(["q", '', null][0])) : number
>this.voidIfAny(["q", '', null][0]) : number
->this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->this : f
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
+>this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
+>this : f, Symbol(f, Decl(arrayBestCommonTypes.ts, 4, 34))
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
>["q", '', null][0] : string
>["q", '', null] : string[]
+>"q" : string
+>'' : string
+>null : null
+>0 : number
(this.voidIfAny([undefined, '', null][0]));
>(this.voidIfAny([undefined, '', null][0])) : number
>(this.voidIfAny([undefined, '', null][0])) : number
>this.voidIfAny([undefined, '', null][0]) : number
->this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->this : f
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
+>this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
+>this : f, Symbol(f, Decl(arrayBestCommonTypes.ts, 4, 34))
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
>[undefined, '', null][0] : string
>[undefined, '', null] : string[]
->undefined : undefined
+>undefined : undefined, Symbol(undefined)
+>'' : string
+>null : null
+>0 : number
(this.voidIfAny([[3, 4], [null]][0][0]));
>(this.voidIfAny([[3, 4], [null]][0][0])) : number
>(this.voidIfAny([[3, 4], [null]][0][0])) : number
>this.voidIfAny([[3, 4], [null]][0][0]) : number
->this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->this : f
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
+>this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
+>this : f, Symbol(f, Decl(arrayBestCommonTypes.ts, 4, 34))
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 7, 13), Decl(arrayBestCommonTypes.ts, 8, 58), Decl(arrayBestCommonTypes.ts, 9, 57), Decl(arrayBestCommonTypes.ts, 10, 57))
>[[3, 4], [null]][0][0] : number
>[[3, 4], [null]][0] : number[]
>[[3, 4], [null]] : number[][]
>[3, 4] : number[]
+>3 : number
+>4 : number
>[null] : null[]
+>null : null
+>0 : number
+>0 : number
var t1: { x: number; y: base; }[] = [{ x: 7, y: new derived() }, { x: 5, y: new base() }];
->t1 : { x: number; y: base; }[]
->x : number
->y : base
->base : base
+>t1 : { x: number; y: base; }[], Symbol(t1, Decl(arrayBestCommonTypes.ts, 31, 15))
+>x : number, Symbol(x, Decl(arrayBestCommonTypes.ts, 31, 21))
+>y : base, Symbol(y, Decl(arrayBestCommonTypes.ts, 31, 32))
+>base : base, Symbol(base, Decl(arrayBestCommonTypes.ts, 1, 23))
>[{ x: 7, y: new derived() }, { x: 5, y: new base() }] : { x: number; y: derived; }[]
>{ x: 7, y: new derived() } : { x: number; y: derived; }
->x : number
->y : derived
+>x : number, Symbol(x, Decl(arrayBestCommonTypes.ts, 31, 50))
+>7 : number
+>y : derived, Symbol(y, Decl(arrayBestCommonTypes.ts, 31, 56))
>new derived() : derived
->derived : typeof derived
+>derived : typeof derived, Symbol(derived, Decl(arrayBestCommonTypes.ts, 3, 36))
>{ x: 5, y: new base() } : { x: number; y: base; }
->x : number
->y : base
+>x : number, Symbol(x, Decl(arrayBestCommonTypes.ts, 31, 78))
+>5 : number
+>y : base, Symbol(y, Decl(arrayBestCommonTypes.ts, 31, 84))
>new base() : base
->base : typeof base
+>base : typeof base, Symbol(base, Decl(arrayBestCommonTypes.ts, 1, 23))
var t2: { x: boolean; y: base; }[] = [{ x: true, y: new derived() }, { x: false, y: new base() }];
->t2 : { x: boolean; y: base; }[]
->x : boolean
->y : base
->base : base
+>t2 : { x: boolean; y: base; }[], Symbol(t2, Decl(arrayBestCommonTypes.ts, 32, 15))
+>x : boolean, Symbol(x, Decl(arrayBestCommonTypes.ts, 32, 21))
+>y : base, Symbol(y, Decl(arrayBestCommonTypes.ts, 32, 33))
+>base : base, Symbol(base, Decl(arrayBestCommonTypes.ts, 1, 23))
>[{ x: true, y: new derived() }, { x: false, y: new base() }] : { x: boolean; y: derived; }[]
>{ x: true, y: new derived() } : { x: boolean; y: derived; }
->x : boolean
->y : derived
+>x : boolean, Symbol(x, Decl(arrayBestCommonTypes.ts, 32, 51))
+>true : boolean
+>y : derived, Symbol(y, Decl(arrayBestCommonTypes.ts, 32, 60))
>new derived() : derived
->derived : typeof derived
+>derived : typeof derived, Symbol(derived, Decl(arrayBestCommonTypes.ts, 3, 36))
>{ x: false, y: new base() } : { x: boolean; y: base; }
->x : boolean
->y : base
+>x : boolean, Symbol(x, Decl(arrayBestCommonTypes.ts, 32, 82))
+>false : boolean
+>y : base, Symbol(y, Decl(arrayBestCommonTypes.ts, 32, 92))
>new base() : base
->base : typeof base
+>base : typeof base, Symbol(base, Decl(arrayBestCommonTypes.ts, 1, 23))
var t3: { x: string; y: base; }[] = [{ x: undefined, y: new base() }, { x: '', y: new derived() }];
->t3 : { x: string; y: base; }[]
->x : string
->y : base
->base : base
+>t3 : { x: string; y: base; }[], Symbol(t3, Decl(arrayBestCommonTypes.ts, 33, 15))
+>x : string, Symbol(x, Decl(arrayBestCommonTypes.ts, 33, 21))
+>y : base, Symbol(y, Decl(arrayBestCommonTypes.ts, 33, 32))
+>base : base, Symbol(base, Decl(arrayBestCommonTypes.ts, 1, 23))
>[{ x: undefined, y: new base() }, { x: '', y: new derived() }] : { x: string; y: derived; }[]
>{ x: undefined, y: new base() } : { x: undefined; y: base; }
->x : undefined
->undefined : undefined
->y : base
+>x : undefined, Symbol(x, Decl(arrayBestCommonTypes.ts, 33, 50))
+>undefined : undefined, Symbol(undefined)
+>y : base, Symbol(y, Decl(arrayBestCommonTypes.ts, 33, 64))
>new base() : base
->base : typeof base
+>base : typeof base, Symbol(base, Decl(arrayBestCommonTypes.ts, 1, 23))
>{ x: '', y: new derived() } : { x: string; y: derived; }
->x : string
->y : derived
+>x : string, Symbol(x, Decl(arrayBestCommonTypes.ts, 33, 83))
+>'' : string
+>y : derived, Symbol(y, Decl(arrayBestCommonTypes.ts, 33, 90))
>new derived() : derived
->derived : typeof derived
+>derived : typeof derived, Symbol(derived, Decl(arrayBestCommonTypes.ts, 3, 36))
var anyObj: any = null;
->anyObj : any
+>anyObj : any, Symbol(anyObj, Decl(arrayBestCommonTypes.ts, 35, 15))
+>null : null
// Order matters here so test all the variants
var a1 = [{ x: 0, y: 'a' }, { x: 'a', y: 'a' }, { x: anyObj, y: 'a' }];
->a1 : { x: any; y: string; }[]
+>a1 : { x: any; y: string; }[], Symbol(a1, Decl(arrayBestCommonTypes.ts, 37, 15))
>[{ x: 0, y: 'a' }, { x: 'a', y: 'a' }, { x: anyObj, y: 'a' }] : { x: any; y: string; }[]
>{ x: 0, y: 'a' } : { x: number; y: string; }
->x : number
->y : string
+>x : number, Symbol(x, Decl(arrayBestCommonTypes.ts, 37, 23))
+>0 : number
+>y : string, Symbol(y, Decl(arrayBestCommonTypes.ts, 37, 29))
+>'a' : string
>{ x: 'a', y: 'a' } : { x: string; y: string; }
->x : string
->y : string
+>x : string, Symbol(x, Decl(arrayBestCommonTypes.ts, 37, 41))
+>'a' : string
+>y : string, Symbol(y, Decl(arrayBestCommonTypes.ts, 37, 49))
+>'a' : string
>{ x: anyObj, y: 'a' } : { x: any; y: string; }
->x : any
->anyObj : any
->y : string
+>x : any, Symbol(x, Decl(arrayBestCommonTypes.ts, 37, 61))
+>anyObj : any, Symbol(anyObj, Decl(arrayBestCommonTypes.ts, 35, 15))
+>y : string, Symbol(y, Decl(arrayBestCommonTypes.ts, 37, 72))
+>'a' : string
var a2 = [{ x: anyObj, y: 'a' }, { x: 0, y: 'a' }, { x: 'a', y: 'a' }];
->a2 : { x: any; y: string; }[]
+>a2 : { x: any; y: string; }[], Symbol(a2, Decl(arrayBestCommonTypes.ts, 38, 15))
>[{ x: anyObj, y: 'a' }, { x: 0, y: 'a' }, { x: 'a', y: 'a' }] : { x: any; y: string; }[]
>{ x: anyObj, y: 'a' } : { x: any; y: string; }
->x : any
->anyObj : any
->y : string
+>x : any, Symbol(x, Decl(arrayBestCommonTypes.ts, 38, 23))
+>anyObj : any, Symbol(anyObj, Decl(arrayBestCommonTypes.ts, 35, 15))
+>y : string, Symbol(y, Decl(arrayBestCommonTypes.ts, 38, 34))
+>'a' : string
>{ x: 0, y: 'a' } : { x: number; y: string; }
->x : number
->y : string
+>x : number, Symbol(x, Decl(arrayBestCommonTypes.ts, 38, 46))
+>0 : number
+>y : string, Symbol(y, Decl(arrayBestCommonTypes.ts, 38, 52))
+>'a' : string
>{ x: 'a', y: 'a' } : { x: string; y: string; }
->x : string
->y : string
+>x : string, Symbol(x, Decl(arrayBestCommonTypes.ts, 38, 64))
+>'a' : string
+>y : string, Symbol(y, Decl(arrayBestCommonTypes.ts, 38, 72))
+>'a' : string
var a3 = [{ x: 0, y: 'a' }, { x: anyObj, y: 'a' }, { x: 'a', y: 'a' }];
->a3 : { x: any; y: string; }[]
+>a3 : { x: any; y: string; }[], Symbol(a3, Decl(arrayBestCommonTypes.ts, 39, 15))
>[{ x: 0, y: 'a' }, { x: anyObj, y: 'a' }, { x: 'a', y: 'a' }] : { x: any; y: string; }[]
>{ x: 0, y: 'a' } : { x: number; y: string; }
->x : number
->y : string
+>x : number, Symbol(x, Decl(arrayBestCommonTypes.ts, 39, 23))
+>0 : number
+>y : string, Symbol(y, Decl(arrayBestCommonTypes.ts, 39, 29))
+>'a' : string
>{ x: anyObj, y: 'a' } : { x: any; y: string; }
->x : any
->anyObj : any
->y : string
+>x : any, Symbol(x, Decl(arrayBestCommonTypes.ts, 39, 41))
+>anyObj : any, Symbol(anyObj, Decl(arrayBestCommonTypes.ts, 35, 15))
+>y : string, Symbol(y, Decl(arrayBestCommonTypes.ts, 39, 52))
+>'a' : string
>{ x: 'a', y: 'a' } : { x: string; y: string; }
->x : string
->y : string
+>x : string, Symbol(x, Decl(arrayBestCommonTypes.ts, 39, 64))
+>'a' : string
+>y : string, Symbol(y, Decl(arrayBestCommonTypes.ts, 39, 72))
+>'a' : string
var ifaceObj: iface = null;
->ifaceObj : iface
->iface : iface
+>ifaceObj : iface, Symbol(ifaceObj, Decl(arrayBestCommonTypes.ts, 41, 15))
+>iface : iface, Symbol(iface, Decl(arrayBestCommonTypes.ts, 0, 19))
+>null : null
var baseObj = new base();
->baseObj : base
+>baseObj : base, Symbol(baseObj, Decl(arrayBestCommonTypes.ts, 42, 15))
>new base() : base
->base : typeof base
+>base : typeof base, Symbol(base, Decl(arrayBestCommonTypes.ts, 1, 23))
var base2Obj = new base2();
->base2Obj : base2
+>base2Obj : base2, Symbol(base2Obj, Decl(arrayBestCommonTypes.ts, 43, 15))
>new base2() : base2
->base2 : typeof base2
+>base2 : typeof base2, Symbol(base2, Decl(arrayBestCommonTypes.ts, 2, 35))
var b1 = [baseObj, base2Obj, ifaceObj];
->b1 : iface[]
+>b1 : iface[], Symbol(b1, Decl(arrayBestCommonTypes.ts, 45, 15))
>[baseObj, base2Obj, ifaceObj] : iface[]
->baseObj : base
->base2Obj : base2
->ifaceObj : iface
+>baseObj : base, Symbol(baseObj, Decl(arrayBestCommonTypes.ts, 42, 15))
+>base2Obj : base2, Symbol(base2Obj, Decl(arrayBestCommonTypes.ts, 43, 15))
+>ifaceObj : iface, Symbol(ifaceObj, Decl(arrayBestCommonTypes.ts, 41, 15))
var b2 = [base2Obj, baseObj, ifaceObj];
->b2 : iface[]
+>b2 : iface[], Symbol(b2, Decl(arrayBestCommonTypes.ts, 46, 15))
>[base2Obj, baseObj, ifaceObj] : iface[]
->base2Obj : base2
->baseObj : base
->ifaceObj : iface
+>base2Obj : base2, Symbol(base2Obj, Decl(arrayBestCommonTypes.ts, 43, 15))
+>baseObj : base, Symbol(baseObj, Decl(arrayBestCommonTypes.ts, 42, 15))
+>ifaceObj : iface, Symbol(ifaceObj, Decl(arrayBestCommonTypes.ts, 41, 15))
var b3 = [baseObj, ifaceObj, base2Obj];
->b3 : iface[]
+>b3 : iface[], Symbol(b3, Decl(arrayBestCommonTypes.ts, 47, 15))
>[baseObj, ifaceObj, base2Obj] : iface[]
->baseObj : base
->ifaceObj : iface
->base2Obj : base2
+>baseObj : base, Symbol(baseObj, Decl(arrayBestCommonTypes.ts, 42, 15))
+>ifaceObj : iface, Symbol(ifaceObj, Decl(arrayBestCommonTypes.ts, 41, 15))
+>base2Obj : base2, Symbol(base2Obj, Decl(arrayBestCommonTypes.ts, 43, 15))
var b4 = [ifaceObj, baseObj, base2Obj];
->b4 : iface[]
+>b4 : iface[], Symbol(b4, Decl(arrayBestCommonTypes.ts, 48, 15))
>[ifaceObj, baseObj, base2Obj] : iface[]
->ifaceObj : iface
->baseObj : base
->base2Obj : base2
+>ifaceObj : iface, Symbol(ifaceObj, Decl(arrayBestCommonTypes.ts, 41, 15))
+>baseObj : base, Symbol(baseObj, Decl(arrayBestCommonTypes.ts, 42, 15))
+>base2Obj : base2, Symbol(base2Obj, Decl(arrayBestCommonTypes.ts, 43, 15))
}
}
}
module NonEmptyTypes {
->NonEmptyTypes : typeof NonEmptyTypes
+>NonEmptyTypes : typeof NonEmptyTypes, Symbol(NonEmptyTypes, Decl(arrayBestCommonTypes.ts, 51, 1))
interface iface { x: string; }
->iface : iface
->x : string
+>iface : iface, Symbol(iface, Decl(arrayBestCommonTypes.ts, 53, 22))
+>x : string, Symbol(x, Decl(arrayBestCommonTypes.ts, 54, 21))
class base implements iface { x: string; y: string; }
->base : base
->iface : iface
->x : string
->y : string
+>base : base, Symbol(base, Decl(arrayBestCommonTypes.ts, 54, 34))
+>iface : iface, Symbol(iface, Decl(arrayBestCommonTypes.ts, 53, 22))
+>x : string, Symbol(x, Decl(arrayBestCommonTypes.ts, 55, 33))
+>y : string, Symbol(y, Decl(arrayBestCommonTypes.ts, 55, 44))
class base2 implements iface { x: string; z: string; }
->base2 : base2
->iface : iface
->x : string
->z : string
+>base2 : base2, Symbol(base2, Decl(arrayBestCommonTypes.ts, 55, 57))
+>iface : iface, Symbol(iface, Decl(arrayBestCommonTypes.ts, 53, 22))
+>x : string, Symbol(x, Decl(arrayBestCommonTypes.ts, 56, 34))
+>z : string, Symbol(z, Decl(arrayBestCommonTypes.ts, 56, 45))
class derived extends base { a: string; }
->derived : derived
->base : base
->a : string
+>derived : derived, Symbol(derived, Decl(arrayBestCommonTypes.ts, 56, 58))
+>base : base, Symbol(base, Decl(arrayBestCommonTypes.ts, 54, 34))
+>a : string, Symbol(a, Decl(arrayBestCommonTypes.ts, 57, 32))
class f {
->f : f
+>f : f, Symbol(f, Decl(arrayBestCommonTypes.ts, 57, 45))
public voidIfAny(x: boolean, y?: boolean): number;
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->x : boolean
->y : boolean
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
+>x : boolean, Symbol(x, Decl(arrayBestCommonTypes.ts, 61, 25))
+>y : boolean, Symbol(y, Decl(arrayBestCommonTypes.ts, 61, 36))
public voidIfAny(x: string, y?: boolean): number;
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->x : string
->y : boolean
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
+>x : string, Symbol(x, Decl(arrayBestCommonTypes.ts, 62, 25))
+>y : boolean, Symbol(y, Decl(arrayBestCommonTypes.ts, 62, 35))
public voidIfAny(x: number, y?: boolean): number;
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->x : number
->y : boolean
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
+>x : number, Symbol(x, Decl(arrayBestCommonTypes.ts, 63, 25))
+>y : boolean, Symbol(y, Decl(arrayBestCommonTypes.ts, 63, 35))
public voidIfAny(x: any, y = false): any { return null; }
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->x : any
->y : boolean
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
+>x : any, Symbol(x, Decl(arrayBestCommonTypes.ts, 64, 25))
+>y : boolean, Symbol(y, Decl(arrayBestCommonTypes.ts, 64, 32))
+>false : boolean
+>null : null
public x() {
->x : () => void
+>x : () => void, Symbol(x, Decl(arrayBestCommonTypes.ts, 64, 65))
(this.voidIfAny([4, 2][0]));
>(this.voidIfAny([4, 2][0])) : number
>(this.voidIfAny([4, 2][0])) : number
>this.voidIfAny([4, 2][0]) : number
->this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->this : f
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
+>this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
+>this : f, Symbol(f, Decl(arrayBestCommonTypes.ts, 57, 45))
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
>[4, 2][0] : number
>[4, 2] : number[]
+>4 : number
+>2 : number
+>0 : number
(this.voidIfAny([4, 2, undefined][0]));
>(this.voidIfAny([4, 2, undefined][0])) : number
>(this.voidIfAny([4, 2, undefined][0])) : number
>this.voidIfAny([4, 2, undefined][0]) : number
->this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->this : f
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
+>this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
+>this : f, Symbol(f, Decl(arrayBestCommonTypes.ts, 57, 45))
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
>[4, 2, undefined][0] : number
>[4, 2, undefined] : number[]
->undefined : undefined
+>4 : number
+>2 : number
+>undefined : undefined, Symbol(undefined)
+>0 : number
(this.voidIfAny([undefined, 2, 4][0]));
>(this.voidIfAny([undefined, 2, 4][0])) : number
>(this.voidIfAny([undefined, 2, 4][0])) : number
>this.voidIfAny([undefined, 2, 4][0]) : number
->this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->this : f
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
+>this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
+>this : f, Symbol(f, Decl(arrayBestCommonTypes.ts, 57, 45))
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
>[undefined, 2, 4][0] : number
>[undefined, 2, 4] : number[]
->undefined : undefined
+>undefined : undefined, Symbol(undefined)
+>2 : number
+>4 : number
+>0 : number
(this.voidIfAny([null, 2, 4][0]));
>(this.voidIfAny([null, 2, 4][0])) : number
>(this.voidIfAny([null, 2, 4][0])) : number
>this.voidIfAny([null, 2, 4][0]) : number
->this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->this : f
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
+>this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
+>this : f, Symbol(f, Decl(arrayBestCommonTypes.ts, 57, 45))
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
>[null, 2, 4][0] : number
>[null, 2, 4] : number[]
+>null : null
+>2 : number
+>4 : number
+>0 : number
(this.voidIfAny([2, 4, null][0]));
>(this.voidIfAny([2, 4, null][0])) : number
>(this.voidIfAny([2, 4, null][0])) : number
>this.voidIfAny([2, 4, null][0]) : number
->this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->this : f
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
+>this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
+>this : f, Symbol(f, Decl(arrayBestCommonTypes.ts, 57, 45))
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
>[2, 4, null][0] : number
>[2, 4, null] : number[]
+>2 : number
+>4 : number
+>null : null
+>0 : number
(this.voidIfAny([undefined, 4, null][0]));
>(this.voidIfAny([undefined, 4, null][0])) : number
>(this.voidIfAny([undefined, 4, null][0])) : number
>this.voidIfAny([undefined, 4, null][0]) : number
->this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->this : f
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
+>this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
+>this : f, Symbol(f, Decl(arrayBestCommonTypes.ts, 57, 45))
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
>[undefined, 4, null][0] : number
>[undefined, 4, null] : number[]
->undefined : undefined
+>undefined : undefined, Symbol(undefined)
+>4 : number
+>null : null
+>0 : number
(this.voidIfAny(['', "q"][0]));
>(this.voidIfAny(['', "q"][0])) : number
>(this.voidIfAny(['', "q"][0])) : number
>this.voidIfAny(['', "q"][0]) : number
->this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->this : f
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
+>this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
+>this : f, Symbol(f, Decl(arrayBestCommonTypes.ts, 57, 45))
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
>['', "q"][0] : string
>['', "q"] : string[]
+>'' : string
+>"q" : string
+>0 : number
(this.voidIfAny(['', "q", undefined][0]));
>(this.voidIfAny(['', "q", undefined][0])) : number
>(this.voidIfAny(['', "q", undefined][0])) : number
>this.voidIfAny(['', "q", undefined][0]) : number
->this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->this : f
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
+>this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
+>this : f, Symbol(f, Decl(arrayBestCommonTypes.ts, 57, 45))
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
>['', "q", undefined][0] : string
>['', "q", undefined] : string[]
->undefined : undefined
+>'' : string
+>"q" : string
+>undefined : undefined, Symbol(undefined)
+>0 : number
(this.voidIfAny([undefined, "q", ''][0]));
>(this.voidIfAny([undefined, "q", ''][0])) : number
>(this.voidIfAny([undefined, "q", ''][0])) : number
>this.voidIfAny([undefined, "q", ''][0]) : number
->this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->this : f
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
+>this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
+>this : f, Symbol(f, Decl(arrayBestCommonTypes.ts, 57, 45))
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
>[undefined, "q", ''][0] : string
>[undefined, "q", ''] : string[]
->undefined : undefined
+>undefined : undefined, Symbol(undefined)
+>"q" : string
+>'' : string
+>0 : number
(this.voidIfAny([null, "q", ''][0]));
>(this.voidIfAny([null, "q", ''][0])) : number
>(this.voidIfAny([null, "q", ''][0])) : number
>this.voidIfAny([null, "q", ''][0]) : number
->this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->this : f
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
+>this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
+>this : f, Symbol(f, Decl(arrayBestCommonTypes.ts, 57, 45))
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
>[null, "q", ''][0] : string
>[null, "q", ''] : string[]
+>null : null
+>"q" : string
+>'' : string
+>0 : number
(this.voidIfAny(["q", '', null][0]));
>(this.voidIfAny(["q", '', null][0])) : number
>(this.voidIfAny(["q", '', null][0])) : number
>this.voidIfAny(["q", '', null][0]) : number
->this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->this : f
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
+>this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
+>this : f, Symbol(f, Decl(arrayBestCommonTypes.ts, 57, 45))
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
>["q", '', null][0] : string
>["q", '', null] : string[]
+>"q" : string
+>'' : string
+>null : null
+>0 : number
(this.voidIfAny([undefined, '', null][0]));
>(this.voidIfAny([undefined, '', null][0])) : number
>(this.voidIfAny([undefined, '', null][0])) : number
>this.voidIfAny([undefined, '', null][0]) : number
->this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->this : f
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
+>this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
+>this : f, Symbol(f, Decl(arrayBestCommonTypes.ts, 57, 45))
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
>[undefined, '', null][0] : string
>[undefined, '', null] : string[]
->undefined : undefined
+>undefined : undefined, Symbol(undefined)
+>'' : string
+>null : null
+>0 : number
(this.voidIfAny([[3, 4], [null]][0][0]));
>(this.voidIfAny([[3, 4], [null]][0][0])) : number
>(this.voidIfAny([[3, 4], [null]][0][0])) : number
>this.voidIfAny([[3, 4], [null]][0][0]) : number
->this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
->this : f
->voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }
+>this.voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
+>this : f, Symbol(f, Decl(arrayBestCommonTypes.ts, 57, 45))
+>voidIfAny : { (x: boolean, y?: boolean): number; (x: string, y?: boolean): number; (x: number, y?: boolean): number; }, Symbol(voidIfAny, Decl(arrayBestCommonTypes.ts, 60, 13), Decl(arrayBestCommonTypes.ts, 61, 58), Decl(arrayBestCommonTypes.ts, 62, 57), Decl(arrayBestCommonTypes.ts, 63, 57))
>[[3, 4], [null]][0][0] : number
>[[3, 4], [null]][0] : number[]
>[[3, 4], [null]] : number[][]
>[3, 4] : number[]
+>3 : number
+>4 : number
>[null] : null[]
+>null : null
+>0 : number
+>0 : number
var t1: { x: number; y: base; }[] = [{ x: 7, y: new derived() }, { x: 5, y: new base() }];
->t1 : { x: number; y: base; }[]
->x : number
->y : base
->base : base
+>t1 : { x: number; y: base; }[], Symbol(t1, Decl(arrayBestCommonTypes.ts, 84, 15))
+>x : number, Symbol(x, Decl(arrayBestCommonTypes.ts, 84, 21))
+>y : base, Symbol(y, Decl(arrayBestCommonTypes.ts, 84, 32))
+>base : base, Symbol(base, Decl(arrayBestCommonTypes.ts, 54, 34))
>[{ x: 7, y: new derived() }, { x: 5, y: new base() }] : { x: number; y: base; }[]
>{ x: 7, y: new derived() } : { x: number; y: derived; }
->x : number
->y : derived
+>x : number, Symbol(x, Decl(arrayBestCommonTypes.ts, 84, 50))
+>7 : number
+>y : derived, Symbol(y, Decl(arrayBestCommonTypes.ts, 84, 56))
>new derived() : derived
->derived : typeof derived
+>derived : typeof derived, Symbol(derived, Decl(arrayBestCommonTypes.ts, 56, 58))
>{ x: 5, y: new base() } : { x: number; y: base; }
->x : number
->y : base
+>x : number, Symbol(x, Decl(arrayBestCommonTypes.ts, 84, 78))
+>5 : number
+>y : base, Symbol(y, Decl(arrayBestCommonTypes.ts, 84, 84))
>new base() : base
->base : typeof base
+>base : typeof base, Symbol(base, Decl(arrayBestCommonTypes.ts, 54, 34))
var t2: { x: boolean; y: base; }[] = [{ x: true, y: new derived() }, { x: false, y: new base() }];
->t2 : { x: boolean; y: base; }[]
->x : boolean
->y : base
->base : base
+>t2 : { x: boolean; y: base; }[], Symbol(t2, Decl(arrayBestCommonTypes.ts, 85, 15))
+>x : boolean, Symbol(x, Decl(arrayBestCommonTypes.ts, 85, 21))
+>y : base, Symbol(y, Decl(arrayBestCommonTypes.ts, 85, 33))
+>base : base, Symbol(base, Decl(arrayBestCommonTypes.ts, 54, 34))
>[{ x: true, y: new derived() }, { x: false, y: new base() }] : { x: boolean; y: base; }[]
>{ x: true, y: new derived() } : { x: boolean; y: derived; }
->x : boolean
->y : derived
+>x : boolean, Symbol(x, Decl(arrayBestCommonTypes.ts, 85, 51))
+>true : boolean
+>y : derived, Symbol(y, Decl(arrayBestCommonTypes.ts, 85, 60))
>new derived() : derived
->derived : typeof derived
+>derived : typeof derived, Symbol(derived, Decl(arrayBestCommonTypes.ts, 56, 58))
>{ x: false, y: new base() } : { x: boolean; y: base; }
->x : boolean
->y : base
+>x : boolean, Symbol(x, Decl(arrayBestCommonTypes.ts, 85, 82))
+>false : boolean
+>y : base, Symbol(y, Decl(arrayBestCommonTypes.ts, 85, 92))
>new base() : base
->base : typeof base
+>base : typeof base, Symbol(base, Decl(arrayBestCommonTypes.ts, 54, 34))
var t3: { x: string; y: base; }[] = [{ x: undefined, y: new base() }, { x: '', y: new derived() }];
->t3 : { x: string; y: base; }[]
->x : string
->y : base
->base : base
+>t3 : { x: string; y: base; }[], Symbol(t3, Decl(arrayBestCommonTypes.ts, 86, 15))
+>x : string, Symbol(x, Decl(arrayBestCommonTypes.ts, 86, 21))
+>y : base, Symbol(y, Decl(arrayBestCommonTypes.ts, 86, 32))
+>base : base, Symbol(base, Decl(arrayBestCommonTypes.ts, 54, 34))
>[{ x: undefined, y: new base() }, { x: '', y: new derived() }] : ({ x: undefined; y: base; } | { x: string; y: derived; })[]
>{ x: undefined, y: new base() } : { x: undefined; y: base; }
->x : undefined
->undefined : undefined
->y : base
+>x : undefined, Symbol(x, Decl(arrayBestCommonTypes.ts, 86, 50))
+>undefined : undefined, Symbol(undefined)
+>y : base, Symbol(y, Decl(arrayBestCommonTypes.ts, 86, 64))
>new base() : base
->base : typeof base
+>base : typeof base, Symbol(base, Decl(arrayBestCommonTypes.ts, 54, 34))
>{ x: '', y: new derived() } : { x: string; y: derived; }
->x : string
->y : derived
+>x : string, Symbol(x, Decl(arrayBestCommonTypes.ts, 86, 83))
+>'' : string
+>y : derived, Symbol(y, Decl(arrayBestCommonTypes.ts, 86, 90))
>new derived() : derived
->derived : typeof derived
+>derived : typeof derived, Symbol(derived, Decl(arrayBestCommonTypes.ts, 56, 58))
var anyObj: any = null;
->anyObj : any
+>anyObj : any, Symbol(anyObj, Decl(arrayBestCommonTypes.ts, 88, 15))
+>null : null
// Order matters here so test all the variants
var a1 = [{ x: 0, y: 'a' }, { x: 'a', y: 'a' }, { x: anyObj, y: 'a' }];
->a1 : { x: any; y: string; }[]
+>a1 : { x: any; y: string; }[], Symbol(a1, Decl(arrayBestCommonTypes.ts, 90, 15))
>[{ x: 0, y: 'a' }, { x: 'a', y: 'a' }, { x: anyObj, y: 'a' }] : { x: any; y: string; }[]
>{ x: 0, y: 'a' } : { x: number; y: string; }
->x : number
->y : string
+>x : number, Symbol(x, Decl(arrayBestCommonTypes.ts, 90, 23))
+>0 : number
+>y : string, Symbol(y, Decl(arrayBestCommonTypes.ts, 90, 29))
+>'a' : string
>{ x: 'a', y: 'a' } : { x: string; y: string; }
->x : string
->y : string
+>x : string, Symbol(x, Decl(arrayBestCommonTypes.ts, 90, 41))
+>'a' : string
+>y : string, Symbol(y, Decl(arrayBestCommonTypes.ts, 90, 49))
+>'a' : string
>{ x: anyObj, y: 'a' } : { x: any; y: string; }
->x : any
->anyObj : any
->y : string
+>x : any, Symbol(x, Decl(arrayBestCommonTypes.ts, 90, 61))
+>anyObj : any, Symbol(anyObj, Decl(arrayBestCommonTypes.ts, 88, 15))
+>y : string, Symbol(y, Decl(arrayBestCommonTypes.ts, 90, 72))
+>'a' : string
var a2 = [{ x: anyObj, y: 'a' }, { x: 0, y: 'a' }, { x: 'a', y: 'a' }];
->a2 : { x: any; y: string; }[]
+>a2 : { x: any; y: string; }[], Symbol(a2, Decl(arrayBestCommonTypes.ts, 91, 15))
>[{ x: anyObj, y: 'a' }, { x: 0, y: 'a' }, { x: 'a', y: 'a' }] : { x: any; y: string; }[]
>{ x: anyObj, y: 'a' } : { x: any; y: string; }
->x : any
->anyObj : any
->y : string
+>x : any, Symbol(x, Decl(arrayBestCommonTypes.ts, 91, 23))
+>anyObj : any, Symbol(anyObj, Decl(arrayBestCommonTypes.ts, 88, 15))
+>y : string, Symbol(y, Decl(arrayBestCommonTypes.ts, 91, 34))
+>'a' : string
>{ x: 0, y: 'a' } : { x: number; y: string; }
->x : number
->y : string
+>x : number, Symbol(x, Decl(arrayBestCommonTypes.ts, 91, 46))
+>0 : number
+>y : string, Symbol(y, Decl(arrayBestCommonTypes.ts, 91, 52))
+>'a' : string
>{ x: 'a', y: 'a' } : { x: string; y: string; }
->x : string
->y : string
+>x : string, Symbol(x, Decl(arrayBestCommonTypes.ts, 91, 64))
+>'a' : string
+>y : string, Symbol(y, Decl(arrayBestCommonTypes.ts, 91, 72))
+>'a' : string
var a3 = [{ x: 0, y: 'a' }, { x: anyObj, y: 'a' }, { x: 'a', y: 'a' }];
->a3 : { x: any; y: string; }[]
+>a3 : { x: any; y: string; }[], Symbol(a3, Decl(arrayBestCommonTypes.ts, 92, 15))
>[{ x: 0, y: 'a' }, { x: anyObj, y: 'a' }, { x: 'a', y: 'a' }] : { x: any; y: string; }[]
>{ x: 0, y: 'a' } : { x: number; y: string; }
->x : number
->y : string
+>x : number, Symbol(x, Decl(arrayBestCommonTypes.ts, 92, 23))
+>0 : number
+>y : string, Symbol(y, Decl(arrayBestCommonTypes.ts, 92, 29))
+>'a' : string
>{ x: anyObj, y: 'a' } : { x: any; y: string; }
->x : any
->anyObj : any
->y : string
+>x : any, Symbol(x, Decl(arrayBestCommonTypes.ts, 92, 41))
+>anyObj : any, Symbol(anyObj, Decl(arrayBestCommonTypes.ts, 88, 15))
+>y : string, Symbol(y, Decl(arrayBestCommonTypes.ts, 92, 52))
+>'a' : string
>{ x: 'a', y: 'a' } : { x: string; y: string; }
->x : string
->y : string
+>x : string, Symbol(x, Decl(arrayBestCommonTypes.ts, 92, 64))
+>'a' : string
+>y : string, Symbol(y, Decl(arrayBestCommonTypes.ts, 92, 72))
+>'a' : string
var ifaceObj: iface = null;
->ifaceObj : iface
->iface : iface
+>ifaceObj : iface, Symbol(ifaceObj, Decl(arrayBestCommonTypes.ts, 94, 15))
+>iface : iface, Symbol(iface, Decl(arrayBestCommonTypes.ts, 53, 22))
+>null : null
var baseObj = new base();
->baseObj : base
+>baseObj : base, Symbol(baseObj, Decl(arrayBestCommonTypes.ts, 95, 15))
>new base() : base
->base : typeof base
+>base : typeof base, Symbol(base, Decl(arrayBestCommonTypes.ts, 54, 34))
var base2Obj = new base2();
->base2Obj : base2
+>base2Obj : base2, Symbol(base2Obj, Decl(arrayBestCommonTypes.ts, 96, 15))
>new base2() : base2
->base2 : typeof base2
+>base2 : typeof base2, Symbol(base2, Decl(arrayBestCommonTypes.ts, 55, 57))
var b1 = [baseObj, base2Obj, ifaceObj];
->b1 : iface[]
+>b1 : iface[], Symbol(b1, Decl(arrayBestCommonTypes.ts, 98, 15))
>[baseObj, base2Obj, ifaceObj] : iface[]
->baseObj : base
->base2Obj : base2
->ifaceObj : iface
+>baseObj : base, Symbol(baseObj, Decl(arrayBestCommonTypes.ts, 95, 15))
+>base2Obj : base2, Symbol(base2Obj, Decl(arrayBestCommonTypes.ts, 96, 15))
+>ifaceObj : iface, Symbol(ifaceObj, Decl(arrayBestCommonTypes.ts, 94, 15))
var b2 = [base2Obj, baseObj, ifaceObj];
->b2 : iface[]
+>b2 : iface[], Symbol(b2, Decl(arrayBestCommonTypes.ts, 99, 15))
>[base2Obj, baseObj, ifaceObj] : iface[]
->base2Obj : base2
->baseObj : base
->ifaceObj : iface
+>base2Obj : base2, Symbol(base2Obj, Decl(arrayBestCommonTypes.ts, 96, 15))
+>baseObj : base, Symbol(baseObj, Decl(arrayBestCommonTypes.ts, 95, 15))
+>ifaceObj : iface, Symbol(ifaceObj, Decl(arrayBestCommonTypes.ts, 94, 15))
var b3 = [baseObj, ifaceObj, base2Obj];
->b3 : iface[]
+>b3 : iface[], Symbol(b3, Decl(arrayBestCommonTypes.ts, 100, 15))
>[baseObj, ifaceObj, base2Obj] : iface[]
->baseObj : base
->ifaceObj : iface
->base2Obj : base2
+>baseObj : base, Symbol(baseObj, Decl(arrayBestCommonTypes.ts, 95, 15))
+>ifaceObj : iface, Symbol(ifaceObj, Decl(arrayBestCommonTypes.ts, 94, 15))
+>base2Obj : base2, Symbol(base2Obj, Decl(arrayBestCommonTypes.ts, 96, 15))
var b4 = [ifaceObj, baseObj, base2Obj];
->b4 : iface[]
+>b4 : iface[], Symbol(b4, Decl(arrayBestCommonTypes.ts, 101, 15))
>[ifaceObj, baseObj, base2Obj] : iface[]
->ifaceObj : iface
->baseObj : base
->base2Obj : base2
+>ifaceObj : iface, Symbol(ifaceObj, Decl(arrayBestCommonTypes.ts, 94, 15))
+>baseObj : base, Symbol(baseObj, Decl(arrayBestCommonTypes.ts, 95, 15))
+>base2Obj : base2, Symbol(base2Obj, Decl(arrayBestCommonTypes.ts, 96, 15))
}
}
}
diff --git a/tests/baselines/reference/arrayBindingPatternOmittedExpressions.types b/tests/baselines/reference/arrayBindingPatternOmittedExpressions.types
index ba1ac955b85..7acae10cffd 100644
--- a/tests/baselines/reference/arrayBindingPatternOmittedExpressions.types
+++ b/tests/baselines/reference/arrayBindingPatternOmittedExpressions.types
@@ -1,43 +1,54 @@
=== tests/cases/compiler/arrayBindingPatternOmittedExpressions.ts ===
var results: string[];
->results : string[]
+>results : string[], Symbol(results, Decl(arrayBindingPatternOmittedExpressions.ts, 1, 3))
{
let [, b, , a] = results;
->b : string
->a : string
->results : string[]
+> : undefined
+>b : string, Symbol(b, Decl(arrayBindingPatternOmittedExpressions.ts, 4, 10))
+> : undefined
+>a : string, Symbol(a, Decl(arrayBindingPatternOmittedExpressions.ts, 4, 15))
+>results : string[], Symbol(results, Decl(arrayBindingPatternOmittedExpressions.ts, 1, 3))
let x = {
->x : { a: string; b: string; }
+>x : { a: string; b: string; }, Symbol(x, Decl(arrayBindingPatternOmittedExpressions.ts, 5, 7))
>{ a, b } : { a: string; b: string; }
a,
->a : string
+>a : string, Symbol(a, Decl(arrayBindingPatternOmittedExpressions.ts, 5, 13))
b
->b : string
+>b : string, Symbol(b, Decl(arrayBindingPatternOmittedExpressions.ts, 6, 10))
}
}
function f([, a, , b, , , , s, , , ] = results) {
->f : ([, a, , b, , , , s, , , ]?: string[]) => void
->a : string
->b : string
->s : string
->results : string[]
+>f : ([, a, , b, , , , s, , , ]?: string[]) => void, Symbol(f, Decl(arrayBindingPatternOmittedExpressions.ts, 9, 1))
+> : undefined
+>a : string, Symbol(a, Decl(arrayBindingPatternOmittedExpressions.ts, 12, 13))
+> : undefined
+>b : string, Symbol(b, Decl(arrayBindingPatternOmittedExpressions.ts, 12, 18))
+> : undefined
+> : undefined
+> : undefined
+>s : string, Symbol(s, Decl(arrayBindingPatternOmittedExpressions.ts, 12, 27))
+> : undefined
+> : undefined
+>results : string[], Symbol(results, Decl(arrayBindingPatternOmittedExpressions.ts, 1, 3))
a = s[1];
>a = s[1] : string
->a : string
+>a : string, Symbol(a, Decl(arrayBindingPatternOmittedExpressions.ts, 12, 13))
>s[1] : string
->s : string
+>s : string, Symbol(s, Decl(arrayBindingPatternOmittedExpressions.ts, 12, 27))
+>1 : number
b = s[2];
>b = s[2] : string
->b : string
+>b : string, Symbol(b, Decl(arrayBindingPatternOmittedExpressions.ts, 12, 18))
>s[2] : string
->s : string
+>s : string, Symbol(s, Decl(arrayBindingPatternOmittedExpressions.ts, 12, 27))
+>2 : number
}
diff --git a/tests/baselines/reference/arrayConcat2.types b/tests/baselines/reference/arrayConcat2.types
index aa0e0478033..873d286f784 100644
--- a/tests/baselines/reference/arrayConcat2.types
+++ b/tests/baselines/reference/arrayConcat2.types
@@ -1,28 +1,32 @@
=== tests/cases/compiler/arrayConcat2.ts ===
var a: string[] = [];
->a : string[]
+>a : string[], Symbol(a, Decl(arrayConcat2.ts, 0, 3))
>[] : undefined[]
a.concat("hello", 'world');
>a.concat("hello", 'world') : string[]
->a.concat : { (...items: U[]): string[]; (...items: string[]): string[]; }
->a : string[]
->concat : { (...items: U[]): string[]; (...items: string[]): string[]; }
+>a.concat : { (...items: U[]): string[]; (...items: string[]): string[]; }, Symbol(Array.concat, Decl(lib.d.ts, 1025, 13), Decl(lib.d.ts, 1030, 46))
+>a : string[], Symbol(a, Decl(arrayConcat2.ts, 0, 3))
+>concat : { (...items: U[]): string[]; (...items: string[]): string[]; }, Symbol(Array.concat, Decl(lib.d.ts, 1025, 13), Decl(lib.d.ts, 1030, 46))
+>"hello" : string
+>'world' : string
a.concat('Hello');
>a.concat('Hello') : string[]
->a.concat : { (...items: U[]): string[]; (...items: string[]): string[]; }
->a : string[]
->concat : {