diff options
Diffstat (limited to 'llvm/lib/Transforms/Utils/Debugify.cpp')
-rw-r--r-- | llvm/lib/Transforms/Utils/Debugify.cpp | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/llvm/lib/Transforms/Utils/Debugify.cpp b/llvm/lib/Transforms/Utils/Debugify.cpp index 24126b5..f17d252 100644 --- a/llvm/lib/Transforms/Utils/Debugify.cpp +++ b/llvm/lib/Transforms/Utils/Debugify.cpp @@ -513,15 +513,19 @@ static void writeJSON(StringRef OrigDIVerifyBugsReportFilePath, return; } - OS_FILE << "{\"file\":\"" << FileNameFromCU << "\", "; + if (auto L = OS_FILE.lock()) { + OS_FILE << "{\"file\":\"" << FileNameFromCU << "\", "; - StringRef PassName = NameOfWrappedPass != "" ? NameOfWrappedPass : "no-name"; - OS_FILE << "\"pass\":\"" << PassName << "\", "; + StringRef PassName = + NameOfWrappedPass != "" ? NameOfWrappedPass : "no-name"; + OS_FILE << "\"pass\":\"" << PassName << "\", "; - llvm::json::Value BugsToPrint{std::move(Bugs)}; - OS_FILE << "\"bugs\": " << BugsToPrint; + llvm::json::Value BugsToPrint{std::move(Bugs)}; + OS_FILE << "\"bugs\": " << BugsToPrint; - OS_FILE << "}\n"; + OS_FILE << "}\n"; + } + OS_FILE.close(); } bool llvm::checkDebugInfoMetadata(Module &M, |