This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

PATCH: Replace return FALSE with abort in x86 finish_dynamic_symbol


It is too late for elf_link_output_extsym to do anything useful when
finish_dynamic_symbol returns FALSE.  It is a linker internal bug and
we should fix it.  I checked it in.


H.J.
---
	* elf32-i386.c (elf_i386_finish_dynamic_symbol): Replace return
	FALSE with abort.
	* elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Likewise.

diff --git a/bfd/elf32-i386.c b/bfd/elf32-i386.c
index 25e3a33..59feea2 100644
--- a/bfd/elf32-i386.c
+++ b/bfd/elf32-i386.c
@@ -4520,7 +4520,7 @@ elf_i386_finish_dynamic_symbol (bfd *output_bfd,
 	  || plt == NULL
 	  || gotplt == NULL
 	  || relplt == NULL)
-	return FALSE;
+	abort ();
 
       /* Get the index in the procedure linkage table which
 	 corresponds to this symbol.  This is the index of this symbol
diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c
index 7daecb4..cccc5ca 100644
--- a/bfd/elf64-x86-64.c
+++ b/bfd/elf64-x86-64.c
@@ -4466,7 +4466,7 @@ elf_x86_64_finish_dynamic_symbol (bfd *output_bfd,
 	  || plt == NULL
 	  || gotplt == NULL
 	  || relplt == NULL)
-	return FALSE;
+	abort ();
 
       /* Get the index in the procedure linkage table which
 	 corresponds to this symbol.  This is the index of this symbol


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]