AST: Don't crash when computing identifier for an invalid extension.

This commit is contained in:
Allan Shortlidge
2023-08-31 09:53:10 -07:00
parent de4370bba6
commit fb3972c2cc

View File

@@ -67,7 +67,8 @@ static std::string identifierForContext(const DeclContext *DC) {
const auto *ext = cast<ExtensionDecl>(DC);
auto fp = ext->getBodyFingerprint().value_or(Fingerprint::ZERO());
auto typeStr = Mangler.mangleTypeAsContextUSR(ext->getExtendedNominal());
const auto *nominal = ext->getExtendedNominal();
auto typeStr = nominal ? Mangler.mangleTypeAsContextUSR(nominal) : "";
return (typeStr + "@" + fp.getRawValue()).str();
}