[PATCH] dwarf5: Fix parsing DWARF-5 line number tables

H.J. Lu hjl.tools@gmail.com
Sat Jan 23 23:29:34 GMT 2021


Advance rngs_ptr when parsing DW_RLE_offset_pair, which was missing in

commit c3757b583d2448a5996e83e374fb96ac7938da35
Author: Mark Wielaard <mark@klomp.org>
Date:   Tue Aug 25 15:33:00 2020 +0100

    Fix the linker's handling of DWARF-5 line number tables.

OK for master and 2.36 branch?

H.J.
---
	PR binutils/27231
	* dwarf2.c (read_rnglists): Advance rngs_ptr after
	_bfd_safe_read_leb128 when parsing DW_RLE_offset_pair.
---
 bfd/dwarf2.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/bfd/dwarf2.c b/bfd/dwarf2.c
index d1770ae4fdb..292d60c33d4 100644
--- a/bfd/dwarf2.c
+++ b/bfd/dwarf2.c
@@ -3265,9 +3265,11 @@ read_rnglists (struct comp_unit *unit, struct arange *arange,
 	  low_pc = base_address;
 	  low_pc += _bfd_safe_read_leb128 (abfd, rngs_ptr, &bytes_read,
 					   FALSE, rngs_end);
+	  rngs_ptr += bytes_read;
 	  high_pc = base_address;
 	  high_pc += _bfd_safe_read_leb128 (abfd, rngs_ptr, &bytes_read,
 					    FALSE, rngs_end);
+	  rngs_ptr += bytes_read;
 	  break;
 
 	case DW_RLE_start_end:
-- 
2.29.2



More information about the Binutils mailing list