Provide a skeleton for re-exports from serialized modules...

...and use it for shadowed modules (e.g. the Clang module "Foundation"
referenced by the Swift module "Foundation"), so that we can actually
find "NSString" when building AppKit.

Additionally, record shadowed modules as dependencies, so that they can
be loaded when the adapter module is loaded.

Swift SVN r6522
This commit is contained in:
Jordan Rose
2013-07-23 23:10:13 +00:00
parent f12f3c29ac
commit 110d644297
9 changed files with 94 additions and 49 deletions

View File

@@ -247,8 +247,13 @@ OperatorDecl *SerializedModuleLoader::lookupOperator(Module *module,
return moduleFile->lookupOperator(name, fixity);
}
void SerializedModuleLoader::loadExtensions(NominalTypeDecl *nominal,
unsigned previousGeneration) {
// FIXME: Look for extensions of the given nominal type within the
// serialized module.
void SerializedModuleLoader::getReexportedModules(
Module *module,
SmallVectorImpl<swift::Module *> &exports) {
ModuleFile *moduleFile = cast<SerializedModule>(module)->File;
if (!moduleFile)
return;
moduleFile->getReexportedModules(exports);
}