From cd312d3076c054cdf9ed6f33c2d3e3995bca92eb Mon Sep 17 00:00:00 2001 From: navya9singh Date: Wed, 31 Aug 2022 13:13:29 -0700 Subject: [PATCH] Managing control flow --- src/compiler/checker.ts | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/compiler/checker.ts b/src/compiler/checker.ts index 679e79ded0c1a..f5e29d66dc181 100644 --- a/src/compiler/checker.ts +++ b/src/compiler/checker.ts @@ -15589,12 +15589,13 @@ m2: ${(this.mapper2 as unknown as DebugTypeMapper).__debugToString().split("\n") return accessFlags & AccessFlags.IncludeUndefined ? getUnionType([indexInfo.type, undefinedType]) : indexInfo.type; } errorIfWritingToReadonlyIndex(indexInfo); - if (accessFlags & AccessFlags.IncludeUndefined && objectType.symbol && objectType.symbol.flags & (SymbolFlags.RegularEnum | SymbolFlags.ConstEnum)) { - if (indexType.symbol && indexType.flags & TypeFlags.EnumLiteral && getParentOfSymbol(indexType.symbol) === objectType.symbol) { + if (accessFlags & AccessFlags.IncludeUndefined) { + if (objectType.symbol && objectType.symbol.flags & (SymbolFlags.RegularEnum | SymbolFlags.ConstEnum) && (indexType.symbol && indexType.flags & TypeFlags.EnumLiteral && getParentOfSymbol(indexType.symbol) === objectType.symbol)) { return indexInfo.type; } + return getUnionType([indexInfo.type, undefinedType]); } - return accessFlags & AccessFlags.IncludeUndefined ? getUnionType([indexInfo.type, undefinedType]) : indexInfo.type; + return indexInfo.type; } if (indexType.flags & TypeFlags.Never) { return neverType;