From 0bfc9f51ec1ca80d0712244e5df5f8fd4a102323 Mon Sep 17 00:00:00 2001 From: Ruben Tytgat Date: Mon, 22 May 2023 19:34:05 +0200 Subject: [PATCH] Fix a logic-changing typo in getRecursionIdentity (#54321) --- 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 453595b1e37..597a506f264 100644 --- a/src/compiler/checker.ts +++ b/src/compiler/checker.ts @@ -22990,7 +22990,7 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker { function getRecursionIdentity(type: Type): object { // Object and array literals are known not to contain recursive references and don't need a recursion identity. if (type.flags & TypeFlags.Object && !isObjectOrArrayLiteralType(type)) { - if (getObjectFlags(type) && ObjectFlags.Reference && (type as TypeReference).node) { + if (getObjectFlags(type) & ObjectFlags.Reference && (type as TypeReference).node) { // Deferred type references are tracked through their associated AST node. This gives us finer // granularity than using their associated target because each manifest type reference has a // unique AST node.