Skip to content

Commit 3e32946

Browse files
authored
Actually use the moer complete update function in visitEachChild (#35301)
1 parent 1388f87 commit 3e32946

File tree

3 files changed

+14
-1
lines changed

3 files changed

+14
-1
lines changed

src/compiler/visitor.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -702,8 +702,9 @@ namespace ts {
702702
visitNode((<TryStatement>node).finallyBlock, visitor, isBlock));
703703

704704
case SyntaxKind.VariableDeclaration:
705-
return updateVariableDeclaration(<VariableDeclaration>node,
705+
return updateTypeScriptVariableDeclaration(<VariableDeclaration>node,
706706
visitNode((<VariableDeclaration>node).name, visitor, isBindingName),
707+
visitNode((<VariableDeclaration>node).exclamationToken, tokenVisitor, isToken),
707708
visitNode((<VariableDeclaration>node).type, visitor, isTypeNode),
708709
visitNode((<VariableDeclaration>node).initializer, visitor, isExpression));
709710

src/testRunner/unittests/transform.ts

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,17 @@ namespace ts {
9797
]);
9898
});
9999

100+
testBaseline("transformDefiniteAssignmentAssertions", () => {
101+
return transformSourceFile(`let a!: () => void`, [
102+
context => file => visitNode(file, function visitor(node: Node): VisitResult<Node> {
103+
if (node.kind === SyntaxKind.VoidKeyword) {
104+
return createIdentifier("undefined");
105+
}
106+
return visitEachChild(node, visitor, context);
107+
})
108+
]);
109+
});
110+
100111
testBaseline("fromTranspileModule", () => {
101112
return transpileModule(`var oldName = undefined;`, {
102113
transformers: {
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
let a!: () => undefined;

0 commit comments

Comments
 (0)