PR 33210 NULL pointer arithmetic in coffcode.h

Alan Modra amodra@gmail.com
Fri Jul 25 02:19:27 GMT 2025


Fix ubsan "runtime error: applying zero offset to null pointer".

diff --git a/bfd/coffcode.h b/bfd/coffcode.h
index b81195dd2ec..a2ee0362256 100644
--- a/bfd/coffcode.h
+++ b/bfd/coffcode.h
@@ -909,7 +909,9 @@ fill_comdat_hash (bfd *abfd)
   if (! _bfd_coff_get_external_symbols (abfd))
     return true;
 
-  esymstart = esym = (bfd_byte *) obj_coff_external_syms (abfd);
+  esymstart = esym = obj_coff_external_syms (abfd);
+  if (esym == NULL)
+    return true;
   esymend = esym + obj_raw_syment_count (abfd) * bfd_coff_symesz (abfd);
 
   for (struct internal_syment isym;

-- 
Alan Modra


More information about the Binutils mailing list