@@ -266,7 +266,8 @@ void ModuleMap::resolveHeader(Module *Mod,
266266 << UmbrellaMod->getFullModuleName ();
267267 else
268268 // Record this umbrella header.
269- setUmbrellaHeader (Mod, *File, Header.FileName , RelativePathName.str ());
269+ setUmbrellaHeaderAsWritten (Mod, *File, Header.FileName ,
270+ RelativePathName.str ());
270271 } else {
271272 Module::Header H = {Header.FileName , std::string (RelativePathName.str ()),
272273 *File};
@@ -622,7 +623,7 @@ ModuleMap::findOrCreateModuleForHeaderInUmbrellaDir(const FileEntry *File) {
622623 // Search up the module stack until we find a module with an umbrella
623624 // directory.
624625 Module *UmbrellaModule = Result;
625- while (!UmbrellaModule->getUmbrellaDir () && UmbrellaModule->Parent )
626+ while (!UmbrellaModule->getEffectiveUmbrellaDir () && UmbrellaModule->Parent )
626627 UmbrellaModule = UmbrellaModule->Parent ;
627628
628629 if (UmbrellaModule->InferSubmodules ) {
@@ -760,7 +761,8 @@ ModuleMap::isHeaderUnavailableInModule(const FileEntry *Header,
760761 // Search up the module stack until we find a module with an umbrella
761762 // directory.
762763 Module *UmbrellaModule = Found;
763- while (!UmbrellaModule->getUmbrellaDir () && UmbrellaModule->Parent )
764+ while (!UmbrellaModule->getEffectiveUmbrellaDir () &&
765+ UmbrellaModule->Parent )
764766 UmbrellaModule = UmbrellaModule->Parent ;
765767
766768 if (UmbrellaModule->InferSubmodules ) {
@@ -1089,7 +1091,8 @@ Module *ModuleMap::inferFrameworkModule(const DirectoryEntry *FrameworkDir,
10891091 RelativePath = llvm::sys::path::relative_path (RelativePath);
10901092
10911093 // umbrella header "umbrella-header-name"
1092- setUmbrellaHeader (Result, *UmbrellaHeader, ModuleName + " .h" , RelativePath);
1094+ setUmbrellaHeaderAsWritten (Result, *UmbrellaHeader, ModuleName + " .h" ,
1095+ RelativePath);
10931096
10941097 // export *
10951098 Result->Exports .push_back (Module::ExportDecl (nullptr , true ));
@@ -1167,7 +1170,7 @@ Module *ModuleMap::createShadowedModule(StringRef Name, bool IsFramework,
11671170 return Result;
11681171}
11691172
1170- void ModuleMap::setUmbrellaHeader (
1173+ void ModuleMap::setUmbrellaHeaderAsWritten (
11711174 Module *Mod, FileEntryRef UmbrellaHeader, const Twine &NameAsWritten,
11721175 const Twine &PathRelativeToRootModuleDirectory) {
11731176 Headers[UmbrellaHeader].push_back (KnownHeader (Mod, NormalHeader));
@@ -1182,9 +1185,9 @@ void ModuleMap::setUmbrellaHeader(
11821185 Cb->moduleMapAddUmbrellaHeader (&SourceMgr.getFileManager (), UmbrellaHeader);
11831186}
11841187
1185- void ModuleMap::setUmbrellaDir (Module *Mod, const DirectoryEntry *UmbrellaDir,
1186- const Twine &NameAsWritten,
1187- const Twine &PathRelativeToRootModuleDirectory) {
1188+ void ModuleMap::setUmbrellaDirAsWritten (
1189+ Module *Mod, const DirectoryEntry *UmbrellaDir, const Twine &NameAsWritten,
1190+ const Twine &PathRelativeToRootModuleDirectory) {
11881191 Mod->Umbrella = UmbrellaDir;
11891192 Mod->UmbrellaAsWritten = NameAsWritten.str ();
11901193 Mod->UmbrellaRelativeToRootModuleDirectory =
@@ -2563,7 +2566,7 @@ void ModuleMapParser::parseUmbrellaDirDecl(SourceLocation UmbrellaLoc) {
25632566 }
25642567
25652568 // Record this umbrella directory.
2566- Map.setUmbrellaDir (ActiveModule, Dir, DirNameAsWritten, DirName);
2569+ Map.setUmbrellaDirAsWritten (ActiveModule, Dir, DirNameAsWritten, DirName);
25672570}
25682571
25692572// / Parse a module export declaration.
@@ -2827,7 +2830,7 @@ void ModuleMapParser::parseInferredModuleDecl(bool Framework, bool Explicit) {
28272830 if (ActiveModule) {
28282831 // Inferred modules must have umbrella directories.
28292832 if (!Failed && ActiveModule->IsAvailable &&
2830- !ActiveModule->getUmbrellaDir ()) {
2833+ !ActiveModule->getEffectiveUmbrellaDir ()) {
28312834 Diags.Report (StarLoc, diag::err_mmap_inferred_no_umbrella);
28322835 Failed = true ;
28332836 }
0 commit comments