Make bfd_error_handler_type like vprintf
authorAlan Modra <amodra@gmail.com>
Fri, 30 Sep 2016 01:33:52 +0000 (11:03 +0930)
committerAlan Modra <amodra@gmail.com>
Fri, 30 Sep 2016 02:08:39 +0000 (11:38 +0930)
commit52d45da3f275b5d1c8ef2e96a7760585c736133b
tree2ead3ed78b4f3488034512473db1b9e3a965a629
parent1fcf3da985a9f4436674816046cf5a308eae74f3
Make bfd_error_handler_type like vprintf

It was like printf, which means you can't use bfd_set_error_handler to
hook in a function to do something and then call the original handler.

The patch also deletes some unused functions and makes pointers local.

bfd/
* bfd-in.h: Include stdarg.h.
* bfd.c (bfd_error_handler_type): Make like vprintf.
(_bfd_error_internal): Rename from _bfd_error_handler.  Make static.
(error_handler_internal): New function, split out from..
(_bfd_default_error_handler): ..here.  Rename to _bfd_error_handler.
(bfd_set_error_handler): Update.
(bfd_get_error_handler, bfd_get_assert_handler): Delete.
(_bfd_assert_handler): Make static.
* coffgen.c (null_error_handler): Update params.
* elf-bfd.h (struct elf_backend_data <link_order_error_handler>):
Don't use bfd_error_handler_type.
* elf64-mmix.c (mmix_dump_bpo_gregs): Likewise.
* elfxx-target.h (elf_backend_link_order_error_handler): Default
to _bfd_error_handler.
* libbfd-in.h (_bfd_default_error_handler): Don't declare.
(bfd_assert_handler_type): Likewise.
(_bfd_error_handler): Update.
* bfd-in2.h: Regenerate.
* libbfd.h: Regenerate.
ld/
* ldlang.c (ignore_bfd_errors): Update params.
12 files changed:
bfd/ChangeLog
bfd/bfd-in.h
bfd/bfd-in2.h
bfd/bfd.c
bfd/coffgen.c
bfd/elf-bfd.h
bfd/elf64-mmix.c
bfd/elfxx-target.h
bfd/libbfd-in.h
bfd/libbfd.h
ld/ChangeLog
ld/ldlang.c