Fix silent failure with no input files.

llvm-svn: 109500
This commit is contained in:
Mikhail Glushenkov 2010-07-27 11:19:40 +00:00
parent d359cf2e44
commit ee68696c5f
1 changed files with 7 additions and 0 deletions

View File

@ -355,6 +355,7 @@ TopologicalSortFilterJoinNodes(std::vector<const Node*>& Out) {
int CompilationGraph::Build (const sys::Path& TempDir,
const LanguageMap& LangMap) {
InputLanguagesSet InLangs;
bool WasSomeActionGenerated = !InputFilenames.empty();
// Traverse initial parts of the toolchains and fill in InLangs.
if (int ret = BuildInitial(InLangs, TempDir, LangMap))
@ -375,6 +376,7 @@ int CompilationGraph::Build (const sys::Path& TempDir,
if (JT->JoinListEmpty() && !(JT->WorksOnEmpty() && InputFilenames.empty()))
continue;
WasSomeActionGenerated = true;
Action CurAction;
if (int ret = JT->GenerateAction(CurAction, CurNode->HasChildren(),
TempDir, InLangs, LangMap)) {
@ -401,6 +403,11 @@ int CompilationGraph::Build (const sys::Path& TempDir,
}
}
if (!WasSomeActionGenerated) {
PrintError("no input files");
return 1;
}
return 0;
}