@@ -7315,7 +7315,7 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
73157315
73167316 if (propertySymbol.flags & SymbolFlags.Accessor) {
73177317 const writeType = getWriteTypeOfSymbol(propertySymbol);
7318- if (propertyType !== writeType && !isErrorType(propertyType) && !isErrorType(writeType) ) {
7318+ if (propertyType !== writeType) {
73197319 const getterDeclaration = getDeclarationOfKind<GetAccessorDeclaration>(propertySymbol, SyntaxKind.GetAccessor)!;
73207320 const getterSignature = getSignatureFromDeclaration(getterDeclaration);
73217321 typeElements.push(
@@ -11769,7 +11769,7 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
1176911769 else if (getter && noImplicitAny) {
1177011770 error(getter, Diagnostics._0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions, symbolToString(symbol));
1177111771 }
11772- type = anyType ;
11772+ type = errorType ;
1177311773 }
1177411774 links.type = type;
1177511775 }
@@ -11790,7 +11790,7 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
1179011790 if (getAnnotatedAccessorTypeNode(setter)) {
1179111791 error(setter, Diagnostics._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation, symbolToString(symbol));
1179211792 }
11793- writeType = anyType ;
11793+ writeType = errorType ;
1179411794 }
1179511795 // Absent an explicit setter type annotation we use the read type of the accessor.
1179611796 links.writeType = writeType || getTypeOfAccessors(symbol);
@@ -11886,8 +11886,7 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
1188611886 : errorType;
1188711887
1188811888 if (!popTypeResolution()) {
11889- reportCircularityError(exportSymbol ?? symbol);
11890- return links.type = errorType;
11889+ return links.type = reportCircularityError(exportSymbol ?? symbol);
1189111890 }
1189211891 }
1189311892 return links.type;
@@ -11925,7 +11924,7 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
1192511924 // Circularities could also result from parameters in function expressions that end up
1192611925 // having themselves as contextual types following type argument inference. In those cases
1192711926 // we have already reported an implicit any error so we don't report anything here.
11928- return anyType ;
11927+ return errorType ;
1192911928 }
1193011929
1193111930 function getTypeOfSymbolWithDeferredType(symbol: Symbol) {
@@ -15328,7 +15327,7 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
1532815327 }
1532915328 }
1533015329 }
15331- type = anyType ;
15330+ type = errorType ;
1533215331 }
1533315332 signature.resolvedReturnType = type;
1533415333 }
0 commit comments