PR 33701, abort in byte_get_little_endian

Alan Modra amodra@gmail.com
Mon Dec 8 09:23:05 GMT 2025


	PR 33701
	* dwarf.c (process_debug_info): Set debug_info_p NULL when
	DEBUG_INFO_UNAVAILABLE.

diff --git a/binutils/dwarf.c b/binutils/dwarf.c
index e610d4235da..c5ceaa9a4fd 100644
--- a/binutils/dwarf.c
+++ b/binutils/dwarf.c
@@ -4317,9 +4317,11 @@ process_debug_info (struct dwarf_section * section,
 	      break;
 	    }
 
-	  debug_info *debug_info_p = ((debug_information
-				       && unit < alloc_num_debug_info_entries)
-				      ? debug_information + unit : NULL);
+	  debug_info *debug_info_p = NULL;
+	  if (debug_information
+	      && num_debug_info_entries != DEBUG_INFO_UNAVAILABLE
+	      && unit < alloc_num_debug_info_entries)
+	    debug_info_p = debug_information + unit;
 
 	  assert (!debug_info_p
 		  || (debug_info_p->num_loc_offsets

-- 
Alan Modra


More information about the Binutils mailing list