From 31408001e3a19f829b892726c5dbabcef5af6142 Mon Sep 17 00:00:00 2001 From: Eric Traut Date: Fri, 29 Oct 2021 10:37:46 -0700 Subject: [PATCH] Changed type evaluator to elide `NoReturn` from union generated from ternary operator. --- packages/pyright-internal/src/analyzer/typeEvaluator.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/pyright-internal/src/analyzer/typeEvaluator.ts b/packages/pyright-internal/src/analyzer/typeEvaluator.ts index ecb466df8..6810419c8 100644 --- a/packages/pyright-internal/src/analyzer/typeEvaluator.ts +++ b/packages/pyright-internal/src/analyzer/typeEvaluator.ts @@ -10510,7 +10510,7 @@ export function createTypeEvaluator(importLookup: ImportLookup, evaluatorOptions const ifType = getTypeOfExpression(node.ifExpression, expectedType, flags); const elseType = getTypeOfExpression(node.elseExpression, expectedType, flags); - const type = combineTypes([ifType.type, elseType.type]); + const type = removeNoReturnFromUnion(combineTypes([ifType.type, elseType.type])); return { type, node, isIncomplete: ifType.isIncomplete || elseType.isIncomplete }; }