aboutsummaryrefslogtreecommitdiff
path: root/ld/plugin.c
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2015-02-11 12:16:07 -0800
committerH.J. Lu <hjl.tools@gmail.com>2015-02-11 14:00:51 -0800
commit45e813544eb076dd52fefe7b36e28b088963207d (patch)
treea3954237e7a9dfcf3c529a82eb3007328868fb89 /ld/plugin.c
parente3001fd92063282c55ad251d58f112b10a0cf7d6 (diff)
downloadbinutils-45e813544eb076dd52fefe7b36e28b088963207d.zip
binutils-45e813544eb076dd52fefe7b36e28b088963207d.tar.gz
binutils-45e813544eb076dd52fefe7b36e28b088963207d.tar.bz2
Output "warning:" or "error:" in plugin messages
When plugin generates LDPL_WARNING, LDPL_FATAL and LDPL_ERROR messages, linker should display "warning:" or "error:" in plugin messages like regular linker messages. ld/ * plugin.c (message): Output "warning:" for LDPL_WARNING. Output "error:" for LDPL_FATAL and LDPL_ERROR. * testplug2.c (parse_option): Handle fatal, error and warning. ld/testsuite/ * ld-plugin/plugin-27.d: New. * ld-plugin/plugin-28.d: Likewise. * ld-plugin/plugin-29.d: Likewise. * plugin.exp (plugin_tests): Add tests for LDPL_FATAL, LDPL_ERROR and LDPL_WARNING.
Diffstat (limited to 'ld/plugin.c')
-rw-r--r--ld/plugin.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/ld/plugin.c b/ld/plugin.c
index b48ce86..4fee305 100644
--- a/ld/plugin.c
+++ b/ld/plugin.c
@@ -814,15 +814,19 @@ message (int level, const char *format, ...)
putchar ('\n');
break;
case LDPL_WARNING:
- vfinfo (stdout, format, args, TRUE);
- putchar ('\n');
+ {
+ char *newfmt = ACONCAT (("%P: warning: ", format, "\n",
+ (const char *) NULL));
+ vfinfo (stdout, newfmt, args, TRUE);
+ }
break;
case LDPL_FATAL:
case LDPL_ERROR:
default:
{
- char *newfmt = ACONCAT ((level == LDPL_FATAL ? "%P%F: " : "%P%X: ",
- format, "\n", (const char *) NULL));
+ char *newfmt = ACONCAT ((level == LDPL_FATAL ? "%P%F" : "%P%X",
+ ": error: ", format, "\n",
+ (const char *) NULL));
fflush (stdout);
vfinfo (stderr, newfmt, args, TRUE);
fflush (stderr);