From 728d9cb9117255ae9caae9a8910acf221fe61681 Mon Sep 17 00:00:00 2001 From: Anders Hejlsberg Date: Wed, 15 Apr 2020 18:25:14 -0700 Subject: [PATCH] Only widen fresh literal types in CFA of assignment to auto-typed --- src/compiler/checker.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/compiler/checker.ts b/src/compiler/checker.ts index 82b149d8cc3..e6f8f62fe31 100644 --- a/src/compiler/checker.ts +++ b/src/compiler/checker.ts @@ -20150,7 +20150,7 @@ namespace ts { if (isEmptyArrayAssignment(node)) { return getEvolvingArrayType(neverType); } - const assignedType = getBaseTypeOfLiteralType(getInitialOrAssignedType(flow)); + const assignedType = getWidenedLiteralType(getInitialOrAssignedType(flow)); return isTypeAssignableTo(assignedType, declaredType) ? assignedType : anyArrayType; } if (declaredType.flags & TypeFlags.Union) {