@@ -657,8 +657,7 @@ ModuleMap::findOrCreateModuleForHeaderInUmbrellaDir(FileEntryRef File) {
657657 llvm::sys::path::stem (SkippedDir.getName ()), NameBuf);
658658 Result = findOrCreateModule (Name, Result, /* IsFramework=*/ false ,
659659 Explicit).first ;
660- InferredModuleAllowedBy[Result] = UmbrellaModuleMap;
661- Result->IsInferred = true ;
660+ setInferredModuleAllowedBy (Result, UmbrellaModuleMap);
662661
663662 // Associate the module and the directory.
664663 UmbrellaDirs[SkippedDir] = Result;
@@ -675,8 +674,7 @@ ModuleMap::findOrCreateModuleForHeaderInUmbrellaDir(FileEntryRef File) {
675674 llvm::sys::path::stem (File.getName ()), NameBuf);
676675 Result = findOrCreateModule (Name, Result, /* IsFramework=*/ false ,
677676 Explicit).first ;
678- InferredModuleAllowedBy[Result] = UmbrellaModuleMap;
679- Result->IsInferred = true ;
677+ setInferredModuleAllowedBy (Result, UmbrellaModuleMap);
680678 Result->addTopHeader (File);
681679
682680 // If inferred submodules export everything they import, add a
@@ -1097,8 +1095,7 @@ Module *ModuleMap::inferFrameworkModule(DirectoryEntryRef FrameworkDir,
10971095 Module *Result = new (ModulesAlloc.Allocate ())
10981096 Module (ModuleConstructorTag{}, ModuleName, SourceLocation (), Parent,
10991097 /* IsFramework=*/ true , /* IsExplicit=*/ false , NumCreatedModules++);
1100- InferredModuleAllowedBy[Result] = ModuleMapFID;
1101- Result->IsInferred = true ;
1098+ setInferredModuleAllowedBy (Result, ModuleMapFID);
11021099 if (!Parent) {
11031100 if (LangOpts.CurrentModule == ModuleName)
11041101 SourceModule = Result;
@@ -1345,7 +1342,7 @@ ModuleMap::getModuleMapFileForUniquing(const Module *M) const {
13451342}
13461343
13471344void ModuleMap::setInferredModuleAllowedBy (Module *M, FileID ModMapFID) {
1348- assert ( M->IsInferred && " module not inferred " ) ;
1345+ M->IsInferred = true ;
13491346 InferredModuleAllowedBy[M] = ModMapFID;
13501347}
13511348
0 commit comments