diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2012-12-03 14:34:05 +0000 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2012-12-03 14:34:05 +0000 |
commit | 4505fe63ea00697ff10ea03e571e9627bf95fd9a (patch) | |
tree | b52cb741340e466a296c52c9b445854088e80fb0 /ld/lexsup.c | |
parent | ab92020c760abc449a16849258b5168842ea0d6e (diff) | |
download | binutils-redhat-4505fe63ea00697ff10ea03e571e9627bf95fd9a.tar.gz |
Improve plugin error handling
ld/
PR ld/14904
* ldmain.c (main): Don't check plugin_load_plugins return.
* lexsup.c (parse_args): Don't check plugin_opt_plugin return.
* plugin.c (dlerror): New. Defined if HAVE_DLFCN_H isn't
defined.
(plugin_opt_plugin): Change return type to void. Stop on
dlopen error and report error with dlerror ().
(plugin_load_plugins): Change return type to void. Stop on
dlsym error and report error with dlerror (). Don't use
set_plugin_error.
(plugin_call_cleanup): Issue an error for each plugin.
* plugin.h (plugin_opt_plugin): Change return type to void.
(plugin_load_plugins): Likewise.
ld/testsuite/
PR ld/14904
* ld-plugin/plugin-2.d: Update expected error message.
* ld-plugin/plugin-4.d: Likewise.
Diffstat (limited to 'ld/lexsup.c')
-rw-r--r-- | ld/lexsup.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/ld/lexsup.c b/ld/lexsup.c index c6baebe889..be8a8974b5 100644 --- a/ld/lexsup.c +++ b/ld/lexsup.c @@ -954,9 +954,7 @@ parse_args (unsigned argc, char **argv) break; #ifdef ENABLE_PLUGINS case OPTION_PLUGIN: - if (plugin_opt_plugin (optarg)) - einfo (_("%P%F: %s: error loading plugin\n"), - plugin_error_plugin ()); + plugin_opt_plugin (optarg); break; case OPTION_PLUGIN_OPT: if (plugin_opt_plugin_arg (optarg)) |