[driver] Clear the FailureResultFiles when initializing clang diagnostics. Also,

minor cleanup.

llvm-svn: 173852
This commit is contained in:
Chad Rosier
2013-01-29 23:57:10 +00:00
parent 7b3ae19048
commit c5103c3f3e
2 changed files with 7 additions and 6 deletions

View File

@@ -329,6 +329,7 @@ void Compilation::initCompilationForDiagnostics() {
// Clear temporary/results file lists.
TempFiles.clear();
ResultFiles.clear();
FailureResultFiles.clear();
// Remove any user specified output. Claim any unclaimed arguments, so as
// to avoid emitting warnings about unused args.

View File

@@ -398,6 +398,12 @@ void Driver::generateCompilationDiagnostics(Compilation &C,
}
}
if (Inputs.empty()) {
Diag(clang::diag::note_drv_command_failed_diag_msg)
<< "Error generating preprocessed source(s) - no preprocessable inputs.";
return;
}
// Don't attempt to generate preprocessed files if multiple -arch options are
// used, unless they're all duplicates.
llvm::StringSet<> ArchNames;
@@ -416,12 +422,6 @@ void Driver::generateCompilationDiagnostics(Compilation &C,
return;
}
if (Inputs.empty()) {
Diag(clang::diag::note_drv_command_failed_diag_msg)
<< "Error generating preprocessed source(s) - no preprocessable inputs.";
return;
}
// Construct the list of abstract actions to perform for this compilation. On
// Darwin OSes this uses the driver-driver and builds universal actions.
const ToolChain &TC = C.getDefaultToolChain();