diff options
-rw-r--r-- | lib/CompilerDriver/CompilationGraph.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/CompilerDriver/CompilationGraph.cpp b/lib/CompilerDriver/CompilationGraph.cpp index 9ea69c1..259911f 100644 --- a/lib/CompilerDriver/CompilationGraph.cpp +++ b/lib/CompilerDriver/CompilationGraph.cpp @@ -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; } |