diff --git a/src/compiler/checker.ts b/src/compiler/checker.ts index 406084f80ce14..4cb0ece6c4768 100644 --- a/src/compiler/checker.ts +++ b/src/compiler/checker.ts @@ -437,6 +437,7 @@ import { isBlock, isBlockOrCatchScoped, isBlockScopedContainerTopLevel, + isBooleanLiteral, isCallChain, isCallExpression, isCallLikeExpression, @@ -582,6 +583,7 @@ import { isLet, isLineBreak, isLiteralComputedPropertyDeclarationName, + isLiteralExpression, isLiteralExpressionOfObject, isLiteralImportTypeNode, isLiteralTypeNode, @@ -36505,8 +36507,7 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker { else if (isAssertionExpression(expr) && !isConstTypeReference(expr.type)) { return getTypeFromTypeNode((expr as TypeAssertion).type); } - else if (node.kind === SyntaxKind.NumericLiteral || node.kind === SyntaxKind.StringLiteral || - node.kind === SyntaxKind.TrueKeyword || node.kind === SyntaxKind.FalseKeyword) { + else if (isLiteralExpression(node) || isBooleanLiteral(node)) { return checkExpression(node); } return undefined;