Skip to content

Commit 8e464dd

Browse files
committed
Frontend: Use early returns in CompilerInstance::clearOutputFiles, NFC
Use early returns in `CompilerInstance::clearOutputFiles` to clarify the logic, and rename `ec` to `EC` as a drive-by. No functionality change.
1 parent e4871c1 commit 8e464dd

File tree

1 file changed

+22
-17
lines changed

1 file changed

+22
-17
lines changed

clang/lib/Frontend/CompilerInstance.cpp

Lines changed: 22 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -648,25 +648,30 @@ void CompilerInstance::createSema(TranslationUnitKind TUKind,
648648

649649
void CompilerInstance::clearOutputFiles(bool EraseFiles) {
650650
for (OutputFile &OF : OutputFiles) {
651-
if (!OF.TempFilename.empty()) {
652-
if (EraseFiles) {
651+
if (EraseFiles) {
652+
if (!OF.TempFilename.empty()) {
653653
llvm::sys::fs::remove(OF.TempFilename);
654-
} else {
655-
SmallString<128> NewOutFile(OF.Filename);
656-
657-
// If '-working-directory' was passed, the output filename should be
658-
// relative to that.
659-
FileMgr->FixupRelativePath(NewOutFile);
660-
if (std::error_code ec =
661-
llvm::sys::fs::rename(OF.TempFilename, NewOutFile)) {
662-
getDiagnostics().Report(diag::err_unable_to_rename_temp)
663-
<< OF.TempFilename << OF.Filename << ec.message();
664-
665-
llvm::sys::fs::remove(OF.TempFilename);
666-
}
654+
continue;
667655
}
668-
} else if (!OF.Filename.empty() && EraseFiles)
669-
llvm::sys::fs::remove(OF.Filename);
656+
if (!OF.Filename.empty())
657+
llvm::sys::fs::remove(OF.Filename);
658+
continue;
659+
}
660+
661+
if (OF.TempFilename.empty())
662+
continue;
663+
664+
// If '-working-directory' was passed, the output filename should be
665+
// relative to that.
666+
SmallString<128> NewOutFile(OF.Filename);
667+
FileMgr->FixupRelativePath(NewOutFile);
668+
std::error_code EC = llvm::sys::fs::rename(OF.TempFilename, NewOutFile);
669+
if (!EC)
670+
continue;
671+
getDiagnostics().Report(diag::err_unable_to_rename_temp)
672+
<< OF.TempFilename << OF.Filename << EC.message();
673+
674+
llvm::sys::fs::remove(OF.TempFilename);
670675
}
671676
OutputFiles.clear();
672677
if (DeleteBuiltModules) {

0 commit comments

Comments
 (0)