From 6e6c6de33b7e944c80bf72549e6fa5d085f9d285 Mon Sep 17 00:00:00 2001 From: Peter Collingbourne Date: Wed, 25 Jan 2017 03:35:28 +0000 Subject: [PATCH] gold-plugin: Add the file path to the file open error diagnostic. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@293013 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/tools/gold/X86/error-unopenable.ll | 8 ++++++++ tools/gold/gold-plugin.cpp | 3 ++- 2 files changed, 10 insertions(+), 1 deletion(-) create mode 100644 test/tools/gold/X86/error-unopenable.ll diff --git a/test/tools/gold/X86/error-unopenable.ll b/test/tools/gold/X86/error-unopenable.ll new file mode 100644 index 000000000000..c8532a5b187f --- /dev/null +++ b/test/tools/gold/X86/error-unopenable.ll @@ -0,0 +1,8 @@ +; RUN: llvm-as -o %t %s +; RUN: not %gold -plugin %llvmshlibdir/LLVMgold.so \ +; RUN: --plugin-opt=obj-path=%T/nonexistent-dir/foo.o \ +; RUN: %t -o %t2 2>&1 | FileCheck %s + +; CHECK: Could not open file {{.*}}nonexistent-dir + +target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" diff --git a/tools/gold/gold-plugin.cpp b/tools/gold/gold-plugin.cpp index 50e102b04595..1ac542b28764 100644 --- a/tools/gold/gold-plugin.cpp +++ b/tools/gold/gold-plugin.cpp @@ -826,7 +826,8 @@ static ld_plugin_status allSymbolsReadHook() { std::error_code EC = sys::fs::openFileForWrite(Filenames[Task], FD, sys::fs::F_None); if (EC) - message(LDPL_FATAL, "Could not open file: %s", EC.message().c_str()); + message(LDPL_FATAL, "Could not open file %s: %s", Filenames[Task].c_str(), + EC.message().c_str()); return llvm::make_unique( llvm::make_unique(FD, true)); };