diff --git a/src/compiler/checker.ts b/src/compiler/checker.ts index c60abea743c..3d40bb6ec3f 100644 --- a/src/compiler/checker.ts +++ b/src/compiler/checker.ts @@ -6441,6 +6441,10 @@ module ts { } function checkDestructuringAssignment(target: Expression, sourceType: Type, contextualMapper?: TypeMapper): Type { + if (target.kind === SyntaxKind.BinaryExpression && (target).operator === SyntaxKind.EqualsToken) { + checkBinaryExpression(target, contextualMapper); + target = (target).left; + } if (target.kind === SyntaxKind.ObjectLiteral) { return checkObjectLiteralAssignment(target, sourceType, contextualMapper); }