Fix compile time warnings building the binutils with clang.
bfdI would like to fix instances of the following warning, when building
with clang with no special CFLAGS other than -g3 -O0.
/home/emaisin/src/binutils-gdb/bfd/elflink.c:5425:45: error: performing pointer arithmetic on a null pointer has undefined behavior [-Werror,-Wnull-pointer-arithmetic]
    return (struct elf_link_hash_entry *) 0 - 1;
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
Replacing those with "(struct elf_link_hash_entry *) -1" gets rid of the
warning.  I wanted to check that it didn't change the resulting code, so
I tried to build this:
  $ cat test.c
  int *before()
  {
          return (int *) 0 - 1;
  }
  int *after()
  {
          return (int *) - 1;
  }
  $ gcc -c test.c -g
  $ objdump -d test.o
  test.o:     file format elf64-x86-64
  Disassembly of section .text:
  
0000000000000000 <before>:
     0:   55                      push   %rbp
     1:   48 89 e5                mov    %rsp,%rbp
     4:   48 c7 c0 fc ff ff ff    mov    $0xfffffffffffffffc,%rax
     b:   5d                      pop    %rbp
     c:   c3                      retq
  
000000000000000d <after>:
     d:   55                      push   %rbp
     e:   48 89 e5                mov    %rsp,%rbp
    11:   48 c7 c0 ff ff ff ff    mov    $0xffffffffffffffff,%rax
    18:   5d                      pop    %rbp
    19:   c3                      retq
This shows that the previous code doesn't actually return -1 as the
function documentation says, but the new one does, so it's kind of a
bugfix.
bfd	* elf64-ppc.c (ppc64_elf_archive_symbol_lookup): Avoid pointer
	arithmetic on NULL pointer.
	* elflink.c (_bfd_elf_archive_symbol_lookup,
	elf_link_add_archive_symbols): Likewise.
ld	* ldexp.c (fold_name, exp_fold_tree_1): Avoid pointer arithmetic
	on NULL pointer.