From 1cd5309f7dec081960e992b47f238286537c3f50 Mon Sep 17 00:00:00 2001 From: Anders Hejlsberg Date: Sun, 28 Sep 2025 22:55:30 +0200 Subject: [PATCH] Port https://github.com/microsoft/typescript-go/pull/1759 (#62502) --- src/compiler/checker.ts | 11 ++++------- ...sDeclarationsFunctionClassesCjsExportAssignment.js | 2 +- 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/src/compiler/checker.ts b/src/compiler/checker.ts index 10376e268a4..75f68783020 100644 --- a/src/compiler/checker.ts +++ b/src/compiler/checker.ts @@ -24457,16 +24457,13 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker { } return Ternary.False; } - if (isObjectLiteralType(target)) { + if (getObjectFlags(target) & ObjectFlags.FreshLiteral) { for (const sourceProp of excludeProperties(getPropertiesOfType(source), excludedProperties)) { if (!getPropertyOfObjectType(target, sourceProp.escapedName)) { - const sourceType = getTypeOfSymbol(sourceProp); - if (!(sourceType.flags & TypeFlags.Undefined)) { - if (reportErrors) { - reportError(Diagnostics.Property_0_does_not_exist_on_type_1, symbolToString(sourceProp), typeToString(target)); - } - return Ternary.False; + if (reportErrors) { + reportError(Diagnostics.Property_0_does_not_exist_on_type_1, symbolToString(sourceProp), typeToString(target)); } + return Ternary.False; } } } diff --git a/tests/baselines/reference/jsDeclarationsFunctionClassesCjsExportAssignment.js b/tests/baselines/reference/jsDeclarationsFunctionClassesCjsExportAssignment.js index 2d051216e7a..129d1c42d9a 100644 --- a/tests/baselines/reference/jsDeclarationsFunctionClassesCjsExportAssignment.js +++ b/tests/baselines/reference/jsDeclarationsFunctionClassesCjsExportAssignment.js @@ -210,7 +210,7 @@ declare class Context { * @param {Input} input */ constructor(input: Input); - state: any; + state: State; /** * @param {Input} input * @param {HookHandler=} handle