swift
2d5b04e4 - AST: Don't canonicalize GenericFunctionTypes in TypeBase::getASTContext()

Commit
5 years ago
AST: Don't canonicalize GenericFunctionTypes in TypeBase::getASTContext() A TypeBase stores either an ASTContext if its canonical, or its canonical type if it is not. getASTContext() will then canonicalize the type if its not canonical. While this is very clever, in the case of a GenericFunctionType, it triggers the rather expensive creation of a GenericSignatureBuilder. Avoid this by special-casing GenericFunctionType here and getting the ASTContext from a structural sub-component that is known to exist instead.
Author
Committer
Parents
Loading