@@ -78,7 +78,7 @@ std::error_code PlaceholderSwiftModuleScanner::findModuleFilesInDirectory(
7878 std::unique_ptr<llvm::MemoryBuffer> *ModuleDocBuffer,
7979 std::unique_ptr<llvm::MemoryBuffer> *ModuleSourceInfoBuffer,
8080 bool skipBuildingInterface, bool IsFramework) {
81- StringRef moduleName = ModuleID.Item .str ();
81+ StringRef moduleName = Ctx. getRealModuleName ( ModuleID.Item ) .str ();
8282 auto it = PlaceholderDependencyModuleMap.find (moduleName);
8383 // If no placeholder module stub path is given matches the name, return with an
8484 // error code.
@@ -106,11 +106,12 @@ ErrorOr<ModuleDependencies> ModuleDependencyScanner::scanInterfaceFile(
106106 // FIXME: Query the module interface loader to determine an appropriate
107107 // name for the module, which includes an appropriate hash.
108108 auto newExt = file_types::getExtension (file_types::TY_SwiftModuleFile);
109- llvm::SmallString<32 > modulePath = moduleName.str ();
109+ auto realModuleName = Ctx.getRealModuleName (moduleName);
110+ llvm::SmallString<32 > modulePath = realModuleName.str ();
110111 llvm::sys::path::replace_extension (modulePath, newExt);
111112 Optional<ModuleDependencies> Result;
112113 std::error_code code =
113- astDelegate.runInSubContext (moduleName .str (),
114+ astDelegate.runInSubContext (realModuleName .str (),
114115 moduleInterfacePath.str (),
115116 StringRef (),
116117 SourceLoc (),
@@ -119,7 +120,7 @@ ErrorOr<ModuleDependencies> ModuleDependencyScanner::scanInterfaceFile(
119120 ArrayRef<StringRef> PCMArgs, StringRef Hash) {
120121 assert (mainMod);
121122 std::string InPath = moduleInterfacePath.str ();
122- auto compiledCandidates = getCompiledCandidates (Ctx, moduleName .str (),
123+ auto compiledCandidates = getCompiledCandidates (Ctx, realModuleName .str (),
123124 InPath);
124125 Result = ModuleDependencies::forSwiftInterfaceModule (InPath,
125126 compiledCandidates,
@@ -136,7 +137,7 @@ ErrorOr<ModuleDependencies> ModuleDependencyScanner::scanInterfaceFile(
136137
137138 // Create a source file.
138139 unsigned bufferID = Ctx.SourceMgr .addNewSourceBuffer (std::move (interfaceBuf.get ()));
139- auto moduleDecl = ModuleDecl::create (moduleName , Ctx);
140+ auto moduleDecl = ModuleDecl::create (realModuleName , Ctx);
140141 auto sourceFile = new (Ctx) SourceFile (
141142 *moduleDecl, SourceFileKind::Interface, bufferID);
142143
0 commit comments