Author: Yaraslau Date: 2024-01-31T09:55:05+08:00 New Revision: d783933bc910ac005e18928d22b6c10c4fe8d6f6
URL: https://github.com/llvm/llvm-project/commit/d783933bc910ac005e18928d22b6c10c4fe8d6f6 DIFF: https://github.com/llvm/llvm-project/commit/d783933bc910ac005e18928d22b6c10c4fe8d6f6.diff LOG: [clang-scan-deps] Fix check for empty `Compilation` (#75545) Closes https://github.com/llvm/llvm-project/issues/64144 Instead of checking for `nullptr` we need to ensure that `JobList` is not empty to proceed Added: clang/test/ClangScanDeps/empty.cpp Modified: clang/tools/clang-scan-deps/ClangScanDeps.cpp Removed: ################################################################################ diff --git a/clang/test/ClangScanDeps/empty.cpp b/clang/test/ClangScanDeps/empty.cpp new file mode 100644 index 0000000000000..807bb5c3fee4b --- /dev/null +++ b/clang/test/ClangScanDeps/empty.cpp @@ -0,0 +1,4 @@ +// RUN: rm -rf %t +// RUN: not clang-scan-deps --format=p1689 -- %clang this-file-does-not-exist.cpp 2>&1 | FileCheck %s --check-prefix=CHECK +// CHECK: error: no such file or directory: 'this-file-does-not-exist.cpp' +// CHECK: error: no input files diff --git a/clang/tools/clang-scan-deps/ClangScanDeps.cpp b/clang/tools/clang-scan-deps/ClangScanDeps.cpp index 76337664c45e3..e45ea700d87b9 100644 --- a/clang/tools/clang-scan-deps/ClangScanDeps.cpp +++ b/clang/tools/clang-scan-deps/ClangScanDeps.cpp @@ -727,7 +727,7 @@ getCompilationDataBase(int argc, char **argv, std::string &ErrorMessage) { *Diags); std::unique_ptr<driver::Compilation> C( TheDriver.BuildCompilation(CommandLine)); - if (!C) + if (!C || C->getJobs().empty()) return nullptr; auto Cmd = C->getJobs().begin(); _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits