diff --git a/packages/pyright-internal/src/analyzer/typePrinter.ts b/packages/pyright-internal/src/analyzer/typePrinter.ts index fdd07ba5d..d5ddbba37 100644 --- a/packages/pyright-internal/src/analyzer/typePrinter.ts +++ b/packages/pyright-internal/src/analyzer/typePrinter.ts @@ -449,8 +449,19 @@ function printTypeInternal( typeToWrap = `Literal[${printLiteralValue(type)}]`; } } else { + if (type.specialForm) { + return printTypeInternal( + type.specialForm, + printTypeFlags, + returnTypeCallback, + uniqueNameMap, + recursionTypes, + recursionCount + ); + } + typeToWrap = printObjectTypeForClassInternal( - type.specialForm ?? type, + type, printTypeFlags, returnTypeCallback, uniqueNameMap,