diff options
Diffstat (limited to 'clang/tools')
| -rw-r--r-- | clang/tools/driver/cc1as_main.cpp | 5 | ||||
| -rw-r--r-- | clang/tools/driver/driver.cpp | 4 |
2 files changed, 7 insertions, 2 deletions
diff --git a/clang/tools/driver/cc1as_main.cpp b/clang/tools/driver/cc1as_main.cpp index a0901fd7555..40ee20eed0f 100644 --- a/clang/tools/driver/cc1as_main.cpp +++ b/clang/tools/driver/cc1as_main.cpp @@ -42,6 +42,7 @@ #include "llvm/Support/Host.h" #include "llvm/Support/Path.h" #include "llvm/Support/Signals.h" +#include "llvm/Support/system_error.h" #include "llvm/Target/TargetAsmBackend.h" #include "llvm/Target/TargetAsmParser.h" #include "llvm/Target/TargetData.h" @@ -224,8 +225,10 @@ static bool ExecuteAssembler(AssemblerInvocation &Opts, Diagnostic &Diags) { return false; } - MemoryBuffer *Buffer = MemoryBuffer::getFileOrSTDIN(Opts.InputFile, &Error); + error_code ec; + MemoryBuffer *Buffer = MemoryBuffer::getFileOrSTDIN(Opts.InputFile, ec); if (Buffer == 0) { + Error = ec.message(); Diags.Report(diag::err_fe_error_reading) << Opts.InputFile; return false; } diff --git a/clang/tools/driver/driver.cpp b/clang/tools/driver/driver.cpp index e0021505185..1e0aaf6258c 100644 --- a/clang/tools/driver/driver.cpp +++ b/clang/tools/driver/driver.cpp @@ -33,6 +33,7 @@ #include "llvm/Support/Path.h" #include "llvm/Support/Program.h" #include "llvm/Support/Signals.h" +#include "llvm/Support/system_error.h" using namespace clang; using namespace clang::driver; @@ -181,7 +182,8 @@ static void ExpandArgsFromBuf(const char *Arg, llvm::SmallVectorImpl<const char*> &ArgVector, std::set<std::string> &SavedStrings) { const char *FName = Arg + 1; - llvm::MemoryBuffer *MemBuf = llvm::MemoryBuffer::getFile(FName); + llvm::error_code ec; + llvm::MemoryBuffer *MemBuf = llvm::MemoryBuffer::getFile(FName, ec); if (!MemBuf) { ArgVector.push_back(SaveStringInSet(SavedStrings, Arg)); return; |

