File tree 1 file changed +6
-2
lines changed
1 file changed +6
-2
lines changed Original file line number Diff line number Diff line change @@ -18800,8 +18800,12 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
18800
18800
// If none of the type arguments for the outer type parameters contain type variables, it follows
18801
18801
// that the instantiated type doesn't reference type variables.
18802
18802
if (result.flags & TypeFlags.ObjectFlagsType && !((result as ObjectFlagsType).objectFlags & ObjectFlags.CouldContainTypeVariablesComputed)) {
18803
- (result as ObjectFlagsType).objectFlags |= ObjectFlags.CouldContainTypeVariablesComputed |
18804
- (some(typeArguments, couldContainTypeVariables) ? ObjectFlags.CouldContainTypeVariables : 0);
18803
+ const resultCouldContainTypeVariables = some(typeArguments, couldContainTypeVariables);
18804
+ // The above check may have caused the result's objectFlags to update if the result is referenced via typeArguments.
18805
+ if (!((result as ObjectFlagsType).objectFlags & ObjectFlags.CouldContainTypeVariablesComputed)) {
18806
+ (result as ObjectFlagsType).objectFlags |= ObjectFlags.CouldContainTypeVariablesComputed |
18807
+ (resultCouldContainTypeVariables ? ObjectFlags.CouldContainTypeVariables : 0);
18808
+ }
18805
18809
}
18806
18810
target.instantiations.set(id, result);
18807
18811
}
You can’t perform that action at this time.
0 commit comments