diff options
author | Serge Pavlov <sepavloff@gmail.com> | 2022-10-30 01:58:47 +0700 |
---|---|---|
committer | Serge Pavlov <sepavloff@gmail.com> | 2022-10-30 02:03:12 +0700 |
commit | c1728a40aae31abc0a5d4d07f6f6a6773d803f2c (patch) | |
tree | 84b231b8003485e52c52c4a9292e8eb56067679a /clang/lib/Driver/Driver.cpp | |
parent | cd9aff8aa87d5397bb674d1e35904314dca72aac (diff) | |
download | llvm-c1728a40aae31abc0a5d4d07f6f6a6773d803f2c.zip llvm-c1728a40aae31abc0a5d4d07f6f6a6773d803f2c.tar.gz llvm-c1728a40aae31abc0a5d4d07f6f6a6773d803f2c.tar.bz2 |
Revert "Handle errors in expansion of response files"
This reverts commit 17eb198de934eced784e16ec15e020a574ba07e1.
Reverted for investigation, because ClangDriverTests failed on some builders.
Diffstat (limited to 'clang/lib/Driver/Driver.cpp')
-rw-r--r-- | clang/lib/Driver/Driver.cpp | 27 |
1 files changed, 8 insertions, 19 deletions
diff --git a/clang/lib/Driver/Driver.cpp b/clang/lib/Driver/Driver.cpp index 80e6ec7..26729f1 100644 --- a/clang/lib/Driver/Driver.cpp +++ b/clang/lib/Driver/Driver.cpp @@ -940,24 +940,10 @@ static void appendOneArg(InputArgList &Args, const Arg *Opt, bool Driver::readConfigFile(StringRef FileName, llvm::cl::ExpansionContext &ExpCtx) { - // Try opening the given file. - auto Status = getVFS().status(FileName); - if (!Status) { - Diag(diag::err_drv_cannot_open_config_file) - << FileName << Status.getError().message(); - return true; - } - if (Status->getType() != llvm::sys::fs::file_type::regular_file) { - Diag(diag::err_drv_cannot_open_config_file) - << FileName << "not a regular file"; - return true; - } - // Try reading the given file. SmallVector<const char *, 32> NewCfgArgs; - if (llvm::Error Err = ExpCtx.readConfigFile(FileName, NewCfgArgs)) { - Diag(diag::err_drv_cannot_read_config_file) - << FileName << toString(std::move(Err)); + if (!ExpCtx.readConfigFile(FileName, NewCfgArgs)) { + Diag(diag::err_drv_cannot_read_config_file) << FileName; return true; } @@ -1039,9 +1025,12 @@ bool Driver::loadConfigFiles() { if (llvm::sys::path::has_parent_path(CfgFileName)) { CfgFilePath.assign(CfgFileName); if (llvm::sys::path::is_relative(CfgFilePath)) { - if (getVFS().makeAbsolute(CfgFilePath)) { - Diag(diag::err_drv_cannot_open_config_file) - << CfgFilePath << "cannot get absolute path"; + if (getVFS().makeAbsolute(CfgFilePath)) + return true; + auto Status = getVFS().status(CfgFilePath); + if (!Status || + Status->getType() != llvm::sys::fs::file_type::regular_file) { + Diag(diag::err_drv_config_file_not_exist) << CfgFilePath; return true; } } |