diff --git a/src/compiler/checker.ts b/src/compiler/checker.ts index c08d2a2348..80f535d180 100644 --- a/src/compiler/checker.ts +++ b/src/compiler/checker.ts @@ -19772,6 +19772,9 @@ namespace ts { case SyntaxKind.BinaryExpression: switch ((node).operatorToken.kind) { case SyntaxKind.EqualsToken: + case SyntaxKind.BarBarEqualsToken: + case SyntaxKind.AmpersandAmpersandEqualsToken: + case SyntaxKind.QuestionQuestionEqualsToken: return getReferenceCandidate((node).left); case SyntaxKind.CommaToken: return getReferenceCandidate((node).right); @@ -28590,7 +28593,7 @@ namespace ts { getUnionType([extractDefinitelyFalsyTypes(strictNullChecks ? leftType : getBaseTypeOfLiteralType(rightType)), rightType]) : leftType; if (operator === SyntaxKind.AmpersandAmpersandEqualsToken) { - checkAssignmentOperator(resultType); + checkAssignmentOperator(rightType); } return resultType; }