Warn on multiple '-swift-module-file' options

This commit is contained in:
Artem Chikin
2025-07-11 13:22:17 -07:00
parent 89268e9b4d
commit 29786c023a
4 changed files with 58 additions and 3 deletions

View File

@@ -2282,7 +2282,15 @@ static bool validateSwiftModuleFileArgumentAndAdd(const std::string &swiftModule
Diags.diagnose(SourceLoc(), diag::error_bad_module_name, moduleName, false);
return true;
}
ExplicitSwiftModuleInputs.insert(std::make_pair(moduleName, modulePath));
auto priorEntryIt = ExplicitSwiftModuleInputs.find(moduleName);
if (priorEntryIt != ExplicitSwiftModuleInputs.end()) {
Diags.diagnose(SourceLoc(), diag::warn_multiple_module_inputs_same_name,
moduleName, priorEntryIt->getValue(), modulePath);
ExplicitSwiftModuleInputs[moduleName] = modulePath;
} else
ExplicitSwiftModuleInputs.insert(std::make_pair(moduleName, modulePath));
return false;
}