Remove undefined behavior warning for null reference passed to emitLoadedModuleTraceIfNeeded.

This commit is contained in:
David Ungar
2018-02-11 13:59:49 -08:00
parent d78136f586
commit 52b54dca95

View File

@@ -188,7 +188,7 @@ template <> struct ObjectTraits<LoadedModuleTraceFormat> {
}
static bool emitLoadedModuleTraceIfNeeded(ASTContext &ctxt,
DependencyTracker &depTracker,
DependencyTracker *depTracker,
const FrontendOptions &opts) {
if (opts.InputsAndOutputs.supplementaryOutputs()
.LoadedModuleTracePath.empty())
@@ -210,7 +210,7 @@ static bool emitLoadedModuleTraceIfNeeded(ASTContext &ctxt,
llvm::SmallVector<std::string, 16> swiftModules;
// Canonicalise all the paths by opening them.
for (auto &dep : depTracker.getDependencies()) {
for (auto &dep : depTracker->getDependencies()) {
llvm::SmallString<256> buffer;
StringRef realPath;
int FD;
@@ -903,7 +903,7 @@ static bool performCompile(CompilerInstance &Instance,
emitReferenceDependenciesIfNeeded(Invocation, Instance);
(void)emitLoadedModuleTraceIfNeeded(Context, *Instance.getDependencyTracker(),
(void)emitLoadedModuleTraceIfNeeded(Context, Instance.getDependencyTracker(),
opts);
if (Context.hadError()) {