+2018-02-19 Alan Modra <amodra@gmail.com>
+
+ * elf-attrs.c (_bfd_elf_parse_attributes): Correct _bfd_error_handler
+ arguments.
+ * elfxx-mips.c (_bfd_mips_elf_final_link): Likewise.
+ * elfnn-riscv.c (_bfd_riscv_relax_align): Likewise.
+ (_bfd_riscv_relax_pc): Likewise and fix typos.
+ * libbfd-in.h (_bfd_error_handler): Add attribute printf.
+ * libbfd.h: Regenerate.
+
+2018-02-19 Alan Modra <amodra@gmail.com>
+
+ * dwarf2.c (read_section): Don't use 'll' format modifier.
+ (find_abstract_instance): Likewise.
+ * elfcore.h (elf_core_file_p): Likewise.
+
+2018-02-19 Alan Modra <amodra@gmail.com>
+
+ * bfd-in.h: Include inttypes.h or if not available define
+ PRId64, PRIu64 and PRIx64.
+ * bfd.c (_bfd_doprnt, _bfd_doprnt_scan): Remove support for L
+ modifier to print bfd_vma.
+ * coff-arm.c, * coff-mcore.c, * coff-ppc.c, * coff-rs6000.c,
+ * coff-sh.c, * coff-tic80.c, * coffcode.h, * coffgen.c, * cofflink.c,
+ * compress.c, * dwarf2.c, * elf-m10300.c, * elf.c, * elf32-arc.c,
+ * elf32-arm.c, * elf32-bfin.c, * elf32-cris.c, * elf32-hppa.c,
+ * elf32-i386.c, * elf32-ip2k.c, * elf32-lm32.c, * elf32-m32r.c,
+ * elf32-m68k.c, * elf32-metag.c, * elf32-nds32.c, * elf32-nios2.c,
+ * elf32-ppc.c, * elf32-rx.c, * elf32-s390.c, * elf32-score.c,
+ * elf32-score7.c, * elf32-sh.c, * elf32-sh64.c, * elf32-spu.c,
+ * elf32-tic6x.c, * elf32-tilepro.c, * elf32-v850.c, * elf32-vax.c,
+ * elf32-xtensa.c, * elf64-alpha.c, * elf64-hppa.c, * elf64-ia64-vms.c,
+ * elf64-mmix.c, * elf64-s390.c, * elf64-sh64.c, * elf64-x86-64.c,
+ * elfcode.h, * elfcore.h, * elflink.c, * elfnn-aarch64.c,
+ * elfnn-ia64.c, * elfnn-riscv.c, * elfxx-mips.c, * elfxx-sparc.c,
+ * elfxx-tilegx.c, * ieee.c, * ihex.c, * mach-o.c, * merge.c, * mmo.c,
+ * peXXigen.c, * xcofflink.c: Replace use of Lx modifier with PRIx64,
+ and cast input to uint64_t, and similarly for Ld and Lu.
+ * bfd-in2.h: Regenerate.
+
+2018-02-19 Alan Modra <amodra@gmail.com>
+
+ * elf32-arm.c, * elf32-hppa.c, * elf32-lm32.c, * elf32-m32r.c,
+ * elf32-metag.c, * elf32-nds32.c, * elf32-or1k.c, * elf32-ppc.c,
+ * elf32-s390.c, * elf32-sh.c, * elf32-tic6x.c, * elf32-tilepro.c,
+ * elf64-ppc.c, * elf64-s390.c, * elflink.c, * elfnn-aarch64.c,
+ * elfnn-riscv.c, * elfxx-sparc.c, * elfxx-tilegx.c, * elfxx-x86.c,
+ * reloc.c: Replace use of %R and %T in format strings passed to
+ einfo and friends by %pR and %pT.
+
+2018-02-19 Alan Modra <amodra@gmail.com>
+
+ * bfd.c (_bfd_doprnt, _bfd_doprnt_scan): Handle %pA and %pB in place
+ of %A and %B.
+ * aout-adobe.c: Update all messages using %A and %B.
+ * aout-cris.c: Likewise.
+ * aoutx.h: Likewise.
+ * archive.c: Likewise.
+ * binary.c: Likewise.
+ * cache.c: Likewise.
+ * coff-alpha.c: Likewise.
+ * coff-arm.c: Likewise.
+ * coff-i860.c: Likewise.
+ * coff-mcore.c: Likewise.
+ * coff-ppc.c: Likewise.
+ * coff-rs6000.c: Likewise.
+ * coff-sh.c: Likewise.
+ * coff-tic4x.c: Likewise.
+ * coff-tic54x.c: Likewise.
+ * coff-tic80.c: Likewise.
+ * coff64-rs6000.c: Likewise.
+ * coffcode.h: Likewise.
+ * coffgen.c: Likewise.
+ * cofflink.c: Likewise.
+ * coffswap.h: Likewise.
+ * compress.c: Likewise.
+ * cpu-arm.c: Likewise.
+ * ecoff.c: Likewise.
+ * elf-attrs.c: Likewise.
+ * elf-eh-frame.c: Likewise.
+ * elf-ifunc.c: Likewise.
+ * elf-m10300.c: Likewise.
+ * elf-properties.c: Likewise.
+ * elf-s390-common.c: Likewise.
+ * elf.c: Likewise.
+ * elf32-arc.c: Likewise.
+ * elf32-arm.c: Likewise.
+ * elf32-avr.c: Likewise.
+ * elf32-bfin.c: Likewise.
+ * elf32-cr16.c: Likewise.
+ * elf32-cr16c.c: Likewise.
+ * elf32-cris.c: Likewise.
+ * elf32-crx.c: Likewise.
+ * elf32-d10v.c: Likewise.
+ * elf32-d30v.c: Likewise.
+ * elf32-epiphany.c: Likewise.
+ * elf32-fr30.c: Likewise.
+ * elf32-frv.c: Likewise.
+ * elf32-gen.c: Likewise.
+ * elf32-hppa.c: Likewise.
+ * elf32-i370.c: Likewise.
+ * elf32-i386.c: Likewise.
+ * elf32-i960.c: Likewise.
+ * elf32-ip2k.c: Likewise.
+ * elf32-iq2000.c: Likewise.
+ * elf32-lm32.c: Likewise.
+ * elf32-m32c.c: Likewise.
+ * elf32-m32r.c: Likewise.
+ * elf32-m68hc11.c: Likewise.
+ * elf32-m68hc12.c: Likewise.
+ * elf32-m68hc1x.c: Likewise.
+ * elf32-m68k.c: Likewise.
+ * elf32-mcore.c: Likewise.
+ * elf32-mep.c: Likewise.
+ * elf32-metag.c: Likewise.
+ * elf32-microblaze.c: Likewise.
+ * elf32-moxie.c: Likewise.
+ * elf32-msp430.c: Likewise.
+ * elf32-mt.c: Likewise.
+ * elf32-nds32.c: Likewise.
+ * elf32-nios2.c: Likewise.
+ * elf32-or1k.c: Likewise.
+ * elf32-pj.c: Likewise.
+ * elf32-ppc.c: Likewise.
+ * elf32-rl78.c: Likewise.
+ * elf32-rx.c: Likewise.
+ * elf32-s390.c: Likewise.
+ * elf32-score.c: Likewise.
+ * elf32-score7.c: Likewise.
+ * elf32-sh-symbian.c: Likewise.
+ * elf32-sh.c: Likewise.
+ * elf32-sh64.c: Likewise.
+ * elf32-sparc.c: Likewise.
+ * elf32-spu.c: Likewise.
+ * elf32-tic6x.c: Likewise.
+ * elf32-tilepro.c: Likewise.
+ * elf32-v850.c: Likewise.
+ * elf32-vax.c: Likewise.
+ * elf32-visium.c: Likewise.
+ * elf32-wasm32.c: Likewise.
+ * elf32-xgate.c: Likewise.
+ * elf32-xtensa.c: Likewise.
+ * elf64-alpha.c: Likewise.
+ * elf64-gen.c: Likewise.
+ * elf64-hppa.c: Likewise.
+ * elf64-ia64-vms.c: Likewise.
+ * elf64-mmix.c: Likewise.
+ * elf64-ppc.c: Likewise.
+ * elf64-s390.c: Likewise.
+ * elf64-sh64.c: Likewise.
+ * elf64-sparc.c: Likewise.
+ * elf64-x86-64.c: Likewise.
+ * elfcode.h: Likewise.
+ * elfcore.h: Likewise.
+ * elflink.c: Likewise.
+ * elfnn-aarch64.c: Likewise.
+ * elfnn-ia64.c: Likewise.
+ * elfnn-riscv.c: Likewise.
+ * elfxx-mips.c: Likewise.
+ * elfxx-sparc.c: Likewise.
+ * elfxx-tilegx.c: Likewise.
+ * elfxx-x86.c: Likewise.
+ * hpux-core.c: Likewise.
+ * ieee.c: Likewise.
+ * ihex.c: Likewise.
+ * libbfd.c: Likewise.
+ * linker.c: Likewise.
+ * mach-o.c: Likewise.
+ * merge.c: Likewise.
+ * mmo.c: Likewise.
+ * oasys.c: Likewise.
+ * pdp11.c: Likewise.
+ * pe-mips.c: Likewise.
+ * peXXigen.c: Likewise.
+ * peicode.h: Likewise.
+ * reloc.c: Likewise.
+ * rs6000-core.c: Likewise.
+ * srec.c: Likewise.
+ * stabs.c: Likewise.
+ * vms-alpha.c: Likewise.
+ * xcofflink.c: Likewise.
+
+2018-02-19 Alan Modra <amodra@gmail.com>
+
+ PR 22845
+ * elf.c (IS_TBSS): Define.
+ (_bfd_elf_map_sections_to_segments): Use IS_TBSS.
+ (assign_file_positions_for_non_load_sections): Revert last change.
+ Properly calculate load segment limits to compare against relro limits.
+
+2018-02-17 Alan Modra <amodra@gmail.com>
+
+ PR 22845
+ * elf.c (assign_file_positions_for_non_load_sections): Ignore
+ degenerate zero size PT_LOAD segments when finding one overlapping
+ the PT_GNU_RELRO segment.
+
+2018-02-16 Alan Modra <amodra@gmail.com>
+
+ * libbfd.c (_bfd_bool_bfd_false_error): Rename from bfd_false.
+ (_bfd_bool_bfd_true): Rename from bfd_true.
+ (_bfd_ptr_bfd_null_error): Rename from bfd_nullvoidptr.
+ (_bfd_int_bfd_0): Rename from bfd_0.
+ (_bfd_uint_bfd_0): Rename from bfd_0u.
+ (_bfd_long_bfd_0): Rename from bfd_0l.
+ (_bfd_long_bfd_n1_error): Rename from _bfd_n1.
+ (_bfd_void_bfd): Rename from bfd_void.
+ (_bfd_bool_bfd_false, _bfd_bool_bfd_asymbol_false),
+ (_bfd_bool_bfd_link_false_error),
+ (_bfd_bool_bfd_link_true, _bfd_bool_bfd_bfd_true),
+ (_bfd_bool_bfd_uint_true, _bfd_bool_bfd_ptr_true),
+ (_bfd_bool_bfd_asection_bfd_asection_true),
+ (_bfd_bool_bfd_asymbol_bfd_asymbol_true),
+ (_bfd_void_bfd_link, _bfd_void_bfd_asection): New functions.
+ * archive.c (_bfd_noarchive_get_elt_at_index),
+ (_bfd_noarchive_openr_next_archived_file),
+ (_bfd_noarchive_construct_extended_name_table),
+ (_bfd_noarchive_write_ar_hdr, _bfd_noarchive_truncate_arname),
+ (_bfd_noarchive_write_armap): New functions.
+ * archures.c (_bfd_nowrite_set_arch_mach): New function.
+ * coff-alpha.c (alpha_ecoff_swap_coff_aux_in),
+ (alpha_ecoff_swap_coff_sym_in, alpha_ecoff_swap_coff_lineno_in),
+ (alpha_ecoff_swap_coff_aux_out, alpha_ecoff_swap_coff_sym_out),
+ (alpha_ecoff_swap_coff_lineno_out),
+ (alpha_ecoff_swap_coff_reloc_out): New functions.
+ * coff-mips.c (mips_ecoff_swap_coff_aux_in),
+ (mips_ecoff_swap_coff_sym_in, mips_ecoff_swap_coff_lineno_in),
+ (mips_ecoff_swap_coff_aux_out, mips_ecoff_swap_coff_sym_out),
+ (mips_ecoff_swap_coff_lineno_out),
+ (mips_ecoff_swap_coff_reloc_out): New functions.
+ * coffcode.h (coff_set_alignment_hook): Replace define with
+ new function.
+ (symname_in_debug_hook): Likewise.
+ * ecoff.c (_bfd_ecoff_set_alignment_hook): New function.
+ * elfxx-target.h (elf_backend_allow_non_load_phdr): Default to 0.
+ * elf.c (assign_file_positions_except_relocs): Test
+ elf_backend_allow_non_load_phdr for NULL.
+ * elflink.c (_bfd_elf_omit_section_dynsym_default): Rename from
+ _bfd_elf_link_omit_section_dynsym. Update uses.
+ (_bfd_elf_omit_section_dynsym_all): New function.
+ * elf-bfd.h (_bfd_elf_link_omit_section_dynsym): Delete.
+ (_bfd_elf_omit_section_dynsym_default): Declare.
+ (_bfd_elf_omit_section_dynsym_all): Declare.
+ * linker.c (_bfd_nolink_sizeof_headers, _bfd_nolink_bfd_relax_section),
+ (_bfd_nolink_bfd_get_relocated_section_contents),
+ (_bfd_nolink_bfd_lookup_section_flags),
+ (_bfd_nolink_bfd_is_group_section, _bfd_nolink_bfd_discard_group),
+ (_bfd_nolink_bfd_link_hash_table_create),
+ (_bfd_nolink_bfd_link_just_syms),
+ (_bfd_nolink_bfd_copy_link_hash_symbol_type),
+ (_bfd_nolink_bfd_link_split_section),
+ (_bfd_nolink_section_already_linked),
+ (_bfd_nolink_bfd_define_common_symbol),
+ (_bfd_nolink_bfd_define_start_stop): New functions.
+ * reloc.c (_bfd_norelocs_bfd_reloc_type_lookup),
+ (_bfd_norelocs_bfd_reloc_name_lookup),
+ (_bfd_nodynamic_canonicalize_dynamic_reloc): New functions.
+ * section.c (_bfd_nowrite_set_section_contents): New function.
+ * syms.c (_bfd_nosymbols_canonicalize_symtab),
+ (_bfd_nosymbols_print_symbol, _bfd_nosymbols_get_symbol_info),
+ (_bfd_nosymbols_get_symbol_version_string),
+ (_bfd_nosymbols_bfd_is_local_label_name),
+ (_bfd_nosymbols_get_lineno, _bfd_nosymbols_find_nearest_line),
+ (_bfd_nosymbols_find_line, _bfd_nosymbols_find_inliner_info),
+ (_bfd_nosymbols_bfd_make_debug_symbol),
+ ( _bfd_nosymbols_read_minisymbols),
+ ( _bfd_nosymbols_minisymbol_to_symbol),
+ (_bfd_nodynamic_get_synthetic_symtab): New functions.
+ * libbfd-in.h: Declare new functions. Update existing defines,
+ removing casts.
+ * aix386-core.c: Update to use new hooks. Formatting.
+ * aout-adobe.c: Likewise.
+ * aout-arm.c: Likewise.
+ * aout-target.h: Likewise.
+ * aout-tic30.c: Likewise.
+ * aoutf1.h: Likewise.
+ * binary.c: Likewise.
+ * bout.c: Likewise.
+ * cisco-core.c: Likewise.
+ * coff-alpha.c: Likewise.
+ * coff-i386.c: Likewise.
+ * coff-i860.c: Likewise.
+ * coff-i960.c: Likewise.
+ * coff-ia64.c: Likewise.
+ * coff-mips.c: Likewise.
+ * coff-ppc.c: Likewise.
+ * coff-rs6000.c: Likewise.
+ * coff-sh.c: Likewise.
+ * coff-tic30.c: Likewise.
+ * coff-tic54x.c: Likewise.
+ * coff-x86_64.c: Likewise.
+ * coff64-rs6000.c: Likewise.
+ * coffcode.h: Likewise.
+ * elf-m10300.c: Likewise.
+ * elf32-cr16.c: Likewise.
+ * elf32-lm32.c: Likewise.
+ * elf32-m32r.c: Likewise.
+ * elf32-metag.c: Likewise.
+ * elf32-score.c: Likewise.
+ * elf32-score7.c: Likewise.
+ * elf32-tilepro.c: Likewise.
+ * elf32-xstormy16.c: Likewise.
+ * elf32-xtensa.c: Likewise.
+ * elf64-alpha.c: Likewise.
+ * elf64-hppa.c: Likewise.
+ * elf64-ia64-vms.c: Likewise.
+ * elf64-mmix.c: Likewise.
+ * elf64-sh64.c: Likewise.
+ * elfnn-ia64.c: Likewise.
+ * elfxx-sparc.c: Likewise.
+ * elfxx-target.h: Likewise.
+ * elfxx-tilegx.c: Likewise.
+ * elfxx-x86.h: Likewise.
+ * hp300hpux.c: Likewise.
+ * hppabsd-core.c: Likewise.
+ * hpux-core.c: Likewise.
+ * i386msdos.c: Likewise.
+ * i386os9k.c: Likewise.
+ * ieee.c: Likewise.
+ * ihex.c: Likewise.
+ * irix-core.c: Likewise.
+ * libaout.h: Likewise.
+ * libecoff.h: Likewise.
+ * mach-o-target.c: Likewise.
+ * mach-o.c: Likewise.
+ * mipsbsd.c: Likewise.
+ * mmo.c: Likewise.
+ * netbsd-core.c: Likewise.
+ * nlm-target.h: Likewise.
+ * oasys.c: Likewise.
+ * osf-core.c: Likewise.
+ * pdp11.c: Likewise.
+ * pe-mips.c: Likewise.
+ * pe-x86_64.c: Likewise.
+ * pef.c: Likewise.
+ * plugin.c: Likewise.
+ * ppcboot.c: Likewise.
+ * ptrace-core.c: Likewise.
+ * sco5-core.c: Likewise.
+ * som.c: Likewise.
+ * sparclynx.c: Likewise.
+ * srec.c: Likewise.
+ * tekhex.c: Likewise.
+ * trad-core.c: Likewise.
+ * verilog.c: Likewise.
+ * versados.c: Likewise.
+ * vms-alpha.c: Likewise.
+ * vms-lib.c: Likewise.
+ * wasm-module.c: Likewise.
+ * xsym.c: Likewise.
+ * libbfd.h: Regenerate.
+
+2018-02-15 Jim Wilson <jimw@sifive.com>
+
+ * elfnn-riscv.c (_bfd_riscv_relax_section): Ifdef out check to ignore
+ symbols whose section address is zero.
+
+ * elfnn-riscv.c (riscv_elf_relocate_section): Use bfd_reloc_dangerous
+ when pcrel_lo reloc has an addend. Use reloc_dangerous callback for
+ bfd_reloc_dangerous. Use einfo instead of warning callback for errors.
+ Add %X%P to error messages.
+
+2018-02-15 Eric Botcazou <ebotcazou@adacore.com>
+
+ PR ld/22832
+ * elfxx-sparc.c (_bfd_sparc_elf_check_relocs) <R_SPARC_TLS_GD_CALL>:
+ Pass FALSE instead of TRUE as 'create' argument to bfd_link_hash_lookup
+ and assert that the result of the call is not NULL.
+
+2018-02-14 Nick Clifton <nickc@redhat.com>
+
+ PR 22823
+ Revert previous delta. Add extra casts to avoid compile time
+ warnings instead.
+ * libbfd-in.h (_bfd_generic_bfd_copy_private_bfd_data): Add extra
+ cast to avoid warning from gcc v8 compiler.
+ (_bfd_generic_bfd_merge_private_bfd_data): Likewise.
+ (_bfd_generic_bfd_set_private_flags): Likewise.
+ (_bfd_generic_bfd_copy_private_section_data): Likewise.
+ (_bfd_generic_bfd_copy_private_symbol_data): Likewise.
+ (_bfd_generic_bfd_copy_private_header_data): Likewise.
+ (_bfd_generic_bfd_print_private_bfd_data): Likewise.
+ (_bfd_noarchive_construct_extended_name_table): Likewise.
+ (_bfd_noarchive_truncate_arname): Likewise.
+ (_bfd_noarchive_write_ar_hdr): Likewise.
+ (_bfd_noarchive_get_elt_at_index): Likewise.
+ (_bfd_nosymbols_canonicalize_symtab): Likewise.
+ (_bfd_nosymbols_print_symbol): Likewise.
+ (_bfd_nosymbols_get_symbol_info): Likewise.
+ (_bfd_nosymbols_get_symbol_version_string): Likewise.
+ (_bfd_nosymbols_bfd_is_local_label_name): Likewise.
+ (_bfd_nosymbols_bfd_is_target_special_symbol): Likewise.
+ (_bfd_nosymbols_get_lineno): Likewise.
+ (_bfd_nosymbols_find_nearest_line): Likewise.
+ (_bfd_nosymbols_find_line): Likewise.
+ (_bfd_nosymbols_find_inliner_info): Likewise.
+ (_bfd_nosymbols_bfd_make_debug_symbol): Likewise.
+ (_bfd_nosymbols_read_minisymbols): Likewise.
+ (_bfd_nosymbols_minisymbol_to_symbol): Likewise.
+ (_bfd_norelocs_bfd_reloc_type_lookup): Likewise.
+ (_bfd_norelocs_bfd_reloc_name_lookup): Likewise.
+ (_bfd_nowrite_set_arch_mach): Likewise.
+ (_bfd_nowrite_set_section_contents): Likewise.
+ (_bfd_nolink_sizeof_headers): Likewise.
+ (_bfd_nolink_bfd_get_relocated_section_contents): Likewise.
+ (_bfd_nolink_bfd_relax_section): Likewise.
+ (_bfd_nolink_bfd_gc_sections): Likewise.
+ (_bfd_nolink_bfd_lookup_section_flags): Likewise.
+ (_bfd_nolink_bfd_merge_sections): Likewise.
+ (_bfd_nolink_bfd_is_group_section): Likewise.
+ (_bfd_nolink_bfd_discard_group): Likewise.
+ (_bfd_nolink_bfd_link_hash_table_create): Likewise.
+ (_bfd_nolink_bfd_link_add_symbols): Likewise.
+ (_bfd_nolink_bfd_link_just_syms): Likewise.
+ (_bfd_nolink_bfd_copy_link_hash_symbol_type): Likewise.
+ (_bfd_nolink_bfd_final_link): Likewise.
+ (_bfd_nolink_bfd_link_split_section): Likewise.
+ (_bfd_nolink_section_already_linked): Likewise.
+ (_bfd_nolink_bfd_define_common_symbol): Likewise.
+ (_bfd_nolink_bfd_define_start_stop): Likewise.
+ (_bfd_nodynamic_canonicalize_dynamic_symtab): Likewise.
+ (_bfd_nodynamic_get_synthetic_symtab): Likewise.
+ (_bfd_nodynamic_get_dynamic_reloc_upper_bound _bfd_): Likewise.
+ (_bfd_nodynamic_canonicalize_dynamic_reloc): Likewise.
+ * libbfd.c (bfd_false_any): Delete.
+ (bfd_true_any, bfd_nullvoidptr_any, bfd_0_any): Delete.
+ (bfd_0u_any, bfd_0l_any, _bfd_n1_any, bfd_void_any): Delete.
+ * libbfd.h (extern): Regenerate
+ * aout-target.h (MY_bfd_is_target_special_symbol): Add extra
+ cast to avoid warning from gcc v8 compiler.
+ * aout-tic30.c (tic30_aout_set_arch_mach): Likewise.
+ * binary.c (binary_get_symbol_info): Likewise.
+ * coff-alpha.c (alpha_ecoff_backend_data): Likewise.
+ * coff-mips.c (mips_ecoff_backend_data): Likewise.
+ * coffcode.h (coff_set_alignment_hook): Likewise.
+ (symname_in_debug_hook): Likewise.
+ (bfd_coff_backend_data bigobj_swap_table): Likewise.
+ * elf-m10300.c (elf_backend_omit_section_dynsym): Likewise.
+ * elf32-cr16.c (elf_backend_omit_section_dynsym): Likewise.
+ * elf32-lm32.c (elf_backend_omit_section_dynsym): Likewise.
+ * elf32-m32r.c (elf_backend_omit_section_dynsym): Likewise.
+ * elf32-metag.c (elf_backend_omit_section_dynsym): Likewise.
+ * elf32-score.c (elf_backend_omit_section_dynsym): Likewise.
+ * elf32-score7.c (elf_backend_omit_section_dynsym): Likewise.
+ * elf32-xstormy16.c (elf_backend_omit_section_dynsym): Likewise.
+ * elf32-xtensa.c (elf_backend_omit_section_dynsym): Likewise.
+ * elf64-alpha.c (elf_backend_omit_section_dynsym): Likewise.
+ * elf64-hppa.c (elf_backend_omit_section_dynsym): Likewise.
+ * elf64-ia64-vms.c (elf_backend_omit_section_dynsym): Likewise.
+ * elf64-mmix.c (elf_backend_omit_section_dynsym): Likewise.
+ * elf64-sh64.c (elf_backend_omit_section_dynsym): Likewise.
+ * elfnn-ia64.c (elf_backend_omit_section_dynsym): Likewise.
+ * elfxx-target.h (bfd_elfNN_bfd_debug_info_accumulate): Likewise.
+ (bfd_elfNN_bfd_make_debug_symbol): Likewise.
+ (bfd_elfNN_bfd_merge_private_bfd_data): Likewise.
+ (bfd_elfNN_bfd_set_private_flags): Likewise.
+ (bfd_elfNN_bfd_is_target_special_symbol): Likewise.
+ (elf_backend_init_index_section): Likewise.
+ (elf_backend_allow_non_load_phdr): Likewise.
+ * elfxx-x86.h (elf_backend_omit_section_dynsym): Likewise.
+ * i386msdos.c (msdos_bfd_is_target_special_symbol): Likewise.
+ * ieee.c (ieee_construct_extended_name_table): Likewise.
+ (ieee_write_armap): Likewise.
+ (ieee_write_ar_hdr): Likewise.
+ (ieee_bfd_is_target_special_symbol): Likewise.
+ * ihex.c (ihex_canonicalize_symtab): Likewise.
+ (ihex_bfd_is_target_special_symbol): Likewise.
+ * libaout.h (aout_32_bfd_is_target_special_symbol): Likewise.
+ * libecoff.h (_bfd_ecoff_bfd_is_target_special_symbol): Likewise.
+ (_bfd_ecoff_set_alignment_hook): Likewise.
+ * mach-o-target.c (bfd_mach_o_bfd_is_target_special_symbol): Likewise.
+ * mmo.c (mmo_bfd_is_target_special_symbol): Likewise.
+ * nlm-target.h (nlm_bfd_is_target_special_symbol): Likewise.
+ * oasys.c (oasys_construct_extended_name_table): Likewise.
+ (oasys_write_armap): Likewise.
+ (oasys_write_ar_hdr): Likewise.
+ (oasys_bfd_is_target_special_symbol): Likewise.
+ * pef.c (bfd_pef_bfd_is_target_special_symbol): Likewise.
+ * plugin.c (bfd_plugin_bfd_is_target_special_symbol): Likewise.
+ * ppcboot.c (ppcboot_bfd_is_target_special_symbol): Likewise.
+ * som.c (som_bfd_is_target_special_symbol): Likewise.
+ * srec.c (srec_bfd_is_target_special_symbol): Likewise.
+ * tekhex.c (tekhex_bfd_is_target_special_symbol): Likewise.
+ * verilog.c (verilog_bfd_is_target_special_symbol): Likewise.
+ * versados.c (versados_bfd_is_target_special_symbol): Likewise.
+ (versados_bfd_reloc_name_lookup): Likewise.
+ * vms-alpha.c (vms_bfd_is_target_special_symbol): Likewise.
+ (vms_bfd_define_start_stop): Likewise.
+ (alpha_vms_bfd_is_target_special_symbol): Likewise.
+ * wasm-module.c (wasm_bfd_is_target_special_symbol): Likewise.
+ * xsym.c (bfd_sym_bfd_is_target_special_symbol): Likewise.
+
+2018-02-14 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/22842
+ * elf32-i386.c (elf_i386_check_relocs): Pass FALSE for non
+ PC-relative PLT to NEED_DYNAMIC_RELOCATION_P.
+ * elf64-x86-64.c (elf_x86_64_check_relocs): Create PLT for
+ R_X86_64_PC32 reloc against dynamic function in data section.
+ Pass TRUE for PC-relative PLT to NEED_DYNAMIC_RELOCATION_P.
+ (elf_x86_64_relocate_section): Use PLT for R_X86_64_PC32 reloc
+ against dynamic function in data section.
+ * elfxx-x86.c (elf_x86_allocate_dynrelocs): Use PLT in PIE as
+ function address only if pcrel_plt is true.
+ (_bfd_x86_elf_link_hash_table_create): Set pcrel_plt.
+ * elfxx-x86.h (NEED_DYNAMIC_RELOCATION_P): Add PCREL_PLT for
+ PC-relative PLT. If PLT is PC-relative, don't generate dynamic
+ PC-relative relocation against a function definition in data
+ secton in PIE. Remove the obsolete comments.
+ (elf_x86_link_hash_table): Add pcrel_plt.
+
+2018-02-13 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elfxx-x86.c (elf_x86_allocate_dynrelocs): Check bfd_link_dll,
+ instead of bfd_link_pic, for building shared library.
+
+2018-02-13 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR gas/22791
+ * elf64-x86-64.c (is_32bit_relative_branch): Removed.
+ (elf_x86_64_relocate_section): Check PIC relocations in PIE.
+ Remove is_32bit_relative_branch usage. Disallow PC32 reloc
+ against protected function in shared object.
+
+2018-02-13 Sergei Trofimovich <slyfox@inbox.ru>
+
+ PR 22828
+ * po/ru.po: Fix typo in Russian translation.
+
+2018-02-13 Maciej W. Rozycki <macro@mips.com>
+
+ * wasm-module.c (wasm_scan_name_function_section): Rename
+ `index' local variable to `idx'.
+
+2018-02-13 Nick Clifton <nickc@redhat.com>
+
+ PR 22823
+ Fix compile time warnings generated by gcc version 8.
+ * libbfd-in.h: Remove extraneous text from prototypes.
+ Add prototypes for bfd_false_any, bfd_true_any,
+ bfd_nullvoidptr_any, bfd_0_any, bfd_0u_any, bfd_0l_any,
+ bfd_n1_any, bfd_void_any.
+ (_bfd_generic_bfd_copy_private_bfd_data): Use vararg based dummy
+ function.
+ (_bfd_generic_bfd_merge_private_bfd_data): Likewise.
+ (_bfd_generic_bfd_set_private_flags): Likewise.
+ (_bfd_generic_bfd_copy_private_section_data): Likewise.
+ (_bfd_generic_bfd_copy_private_symbol_data): Likewise.
+ (_bfd_generic_bfd_copy_private_header_data): Likewise.
+ (_bfd_generic_bfd_print_private_bfd_data): Likewise.
+ (_bfd_noarchive_construct_extended_name_table): Likewise.
+ (_bfd_noarchive_truncate_arname): Likewise.
+ (_bfd_noarchive_write_ar_hdr): Likewise.
+ (_bfd_noarchive_get_elt_at_index): Likewise.
+ (_bfd_nosymbols_canonicalize_symtab): Likewise.
+ (_bfd_nosymbols_print_symbol): Likewise.
+ (_bfd_nosymbols_get_symbol_info): Likewise.
+ (_bfd_nosymbols_get_symbol_version_string): Likewise.
+ (_bfd_nosymbols_bfd_is_local_label_name): Likewise.
+ (_bfd_nosymbols_bfd_is_target_special_symbol): Likewise.
+ (_bfd_nosymbols_get_lineno): Likewise.
+ (_bfd_nosymbols_find_nearest_line): Likewise.
+ (_bfd_nosymbols_find_line): Likewise.
+ (_bfd_nosymbols_find_inliner_info): Likewise.
+ (_bfd_nosymbols_bfd_make_debug_symbol): Likewise.
+ (_bfd_nosymbols_read_minisymbols): Likewise.
+ (_bfd_nosymbols_minisymbol_to_symbol): Likewise.
+ (_bfd_norelocs_bfd_reloc_type_lookup): Likewise.
+ (_bfd_norelocs_bfd_reloc_name_lookup): Likewise.
+ (_bfd_nowrite_set_arch_mach): Likewise.
+ (_bfd_nowrite_set_section_contents): Likewise.
+ (_bfd_nolink_sizeof_headers): Likewise.
+ (_bfd_nolink_bfd_get_relocated_section_contents): Likewise.
+ (_bfd_nolink_bfd_relax_section): Likewise.
+ (_bfd_nolink_bfd_gc_sections): Likewise.
+ (_bfd_nolink_bfd_lookup_section_flags): Likewise.
+ (_bfd_nolink_bfd_merge_sections): Likewise.
+ (_bfd_nolink_bfd_is_group_section): Likewise.
+ (_bfd_nolink_bfd_discard_group): Likewise.
+ (_bfd_nolink_bfd_link_hash_table_create): Likewise.
+ (_bfd_nolink_bfd_link_add_symbols): Likewise.
+ (_bfd_nolink_bfd_link_just_syms): Likewise.
+ (_bfd_nolink_bfd_copy_link_hash_symbol_type): Likewise.
+ (_bfd_nolink_bfd_final_link): Likewise.
+ (_bfd_nolink_bfd_link_split_section): Likewise.
+ (_bfd_nolink_section_already_linked): Likewise.
+ (_bfd_nolink_bfd_define_common_symbol): Likewise.
+ (_bfd_nolink_bfd_define_start_stop): Likewise.
+ (_bfd_nodynamic_canonicalize_dynamic_symtab): Likewise.
+ (_bfd_nodynamic_get_synthetic_symtab): Likewise.
+ (_bfd_nodynamic_get_dynamic_reloc_upper_bound _bfd_): Likewise.
+ (_bfd_nodynamic_canonicalize_dynamic_reloc): Likewise.
+ * libbfd.c (bfd_false_any): New function. Like bfd_false but
+ accepts one or more arguments.
+ (bfd_true_any): Likewise.
+ (bfd_nullvoidptr_any): Likewise.
+ (bfd_0_any): Likewise.
+ (bfd_0u_any): Likewise.
+ (bfd_0l_any): Likewise.
+ (_bfd_n1_any): Likewise.
+ (bfd_void_any): Likewise.
+ * libbfd.h (extern): Regenerate
+ * aout-target.h (MY_bfd_is_target_special_symbol): Use vararg
+ based dummy function.
+ * aout-tic30.c (tic30_aout_set_arch_mach): Likewise.
+ * binary.c (binary_get_symbol_info): Likewise.
+ * coff-alpha.c (alpha_ecoff_backend_data): Likewise.
+ * coff-mips.c (mips_ecoff_backend_data): Likewise.
+ * coffcode.h (coff_set_alignment_hook): Likewise.
+ (symname_in_debug_hook): Likewise.
+ (bfd_coff_backend_data bigobj_swap_table): Likewise.
+ * elf-m10300.c (elf_backend_omit_section_dynsym): Likewise.
+ * elf32-cr16.c (elf_backend_omit_section_dynsym): Likewise.
+ * elf32-lm32.c (elf_backend_omit_section_dynsym): Likewise.
+ * elf32-m32r.c (elf_backend_omit_section_dynsym): Likewise.
+ * elf32-metag.c (elf_backend_omit_section_dynsym): Likewise.
+ * elf32-score.c (elf_backend_omit_section_dynsym): Likewise.
+ * elf32-score7.c (elf_backend_omit_section_dynsym): Likewise.
+ * elf32-xstormy16.c (elf_backend_omit_section_dynsym): Likewise.
+ * elf32-xtensa.c (elf_backend_omit_section_dynsym): Likewise.
+ * elf64-alpha.c (elf_backend_omit_section_dynsym): Likewise.
+ * elf64-hppa.c (elf_backend_omit_section_dynsym): Likewise.
+ * elf64-ia64-vms.c (elf_backend_omit_section_dynsym): Likewise.
+ * elf64-mmix.c (elf_backend_omit_section_dynsym): Likewise.
+ * elf64-sh64.c (elf_backend_omit_section_dynsym): Likewise.
+ * elfnn-ia64.c (elf_backend_omit_section_dynsym): Likewise.
+ * elfxx-target.h (bfd_elfNN_bfd_debug_info_accumulate): Likewise.
+ (bfd_elfNN_bfd_make_debug_symbol): Likewise.
+ (bfd_elfNN_bfd_merge_private_bfd_data): Likewise.
+ (bfd_elfNN_bfd_set_private_flags): Likewise.
+ (bfd_elfNN_bfd_is_target_special_symbol): Likewise.
+ (elf_backend_init_index_section): Likewise.
+ (elf_backend_allow_non_load_phdr): Likewise.
+ * elfxx-x86.h (elf_backend_omit_section_dynsym): Likewise.
+ * i386msdos.c (msdos_bfd_is_target_special_symbol): Likewise.
+ * ieee.c (ieee_construct_extended_name_table): Likewise.
+ (ieee_write_armap): Likewise.
+ (ieee_write_ar_hdr): Likewise.
+ (ieee_bfd_is_target_special_symbol): Likewise.
+ * ihex.c (ihex_canonicalize_symtab): Likewise.
+ (ihex_bfd_is_target_special_symbol): Likewise.
+ * libaout.h (aout_32_bfd_is_target_special_symbol): Likewise.
+ * libecoff.h (_bfd_ecoff_bfd_is_target_special_symbol): Likewise.
+ (_bfd_ecoff_set_alignment_hook): Likewise.
+ * mach-o-target.c (bfd_mach_o_bfd_is_target_special_symbol): Likewise.
+ * mmo.c (mmo_bfd_is_target_special_symbol): Likewise.
+ * nlm-target.h (nlm_bfd_is_target_special_symbol): Likewise.
+ * oasys.c (oasys_construct_extended_name_table): Likewise.
+ (oasys_write_armap): Likewise.
+ (oasys_write_ar_hdr): Likewise.
+ (oasys_bfd_is_target_special_symbol): Likewise.
+ * pef.c (bfd_pef_bfd_is_target_special_symbol): Likewise.
+ * plugin.c (bfd_plugin_bfd_is_target_special_symbol): Likewise.
+ * ppcboot.c (ppcboot_bfd_is_target_special_symbol): Likewise.
+ * som.c (som_bfd_is_target_special_symbol): Likewise.
+ * srec.c (srec_bfd_is_target_special_symbol): Likewise.
+ * tekhex.c (tekhex_bfd_is_target_special_symbol): Likewise.
+ * verilog.c (verilog_bfd_is_target_special_symbol): Likewise.
+ * versados.c (versados_bfd_is_target_special_symbol): Likewise.
+ (versados_bfd_reloc_name_lookup): Likewise.
+ * vms-alpha.c (vms_bfd_is_target_special_symbol): Likewise.
+ (vms_bfd_define_start_stop): Likewise.
+ (alpha_vms_bfd_is_target_special_symbol): Likewise.
+ * wasm-module.c (wasm_bfd_is_target_special_symbol): Likewise.
+ * xsym.c (bfd_sym_bfd_is_target_special_symbol): Likewise.
+ * elf32-arc.c (get_replace_function): Assign replacement function
+ to func pointer.
+ * elf32-i370.c (i370_noop): Update prototype.
+
2018-02-13 Alan Modra <amodra@gmail.com>
PR 22836