Skip to content

Commit b48757c

Browse files
committed
Fix leaking top level logical assignment
1 parent e9d2aa1 commit b48757c

File tree

2 files changed

+13
-1
lines changed

2 files changed

+13
-1
lines changed

src/compiler/binder.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1039,7 +1039,6 @@ namespace ts {
10391039
node = node.parent;
10401040
}
10411041
return !isStatementCondition(node) &&
1042-
!isLogicalAssignmentExpression(node.parent) &&
10431042
!isLogicalExpression(node.parent) &&
10441043
!(isOptionalChain(node.parent) && node.parent.expression === node);
10451044
}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
// @strict: true
2+
// @target: esnext, es2020, es2015
3+
4+
let x: string | undefined;
5+
6+
// let d: string | undefined;
7+
// d ?? (d = x ?? "x")
8+
// d.length;
9+
10+
11+
let e: string | undefined;
12+
e ??= x ?? "x"
13+
e.length

0 commit comments

Comments
 (0)