[NFC] Serialize ObjC selectors for protocols

The ObjCMethodLookupTable for protocols was not being serialized and rebuilt on load, so NominalTypeDecl::lookupDirect() on selectors was not working correctly for deserialized types. Correct this oversight.
This commit is contained in:
Becca Royal-Gordon
2022-06-16 14:07:49 -07:00
parent dc4162fddb
commit 9b5f89963b
12 changed files with 40 additions and 30 deletions

View File

@@ -1320,7 +1320,7 @@ void SerializedModuleLoaderBase::loadExtensions(NominalTypeDecl *nominal,
}
void SerializedModuleLoaderBase::loadObjCMethods(
ClassDecl *classDecl,
NominalTypeDecl *typeDecl,
ObjCSelector selector,
bool isInstanceMethod,
unsigned previousGeneration,
@@ -1328,7 +1328,7 @@ void SerializedModuleLoaderBase::loadObjCMethods(
for (auto &modulePair : LoadedModuleFiles) {
if (modulePair.second <= previousGeneration)
continue;
modulePair.first->loadObjCMethods(classDecl, selector, isInstanceMethod,
modulePair.first->loadObjCMethods(typeDecl, selector, isInstanceMethod,
methods);
}
}