The read_3ubyte_unaligned_inc macro calls read_2ubyte_unaligned, but it should call read_3ubyte_unaligned.
Signed-off-by: Tom Tromey <t...@tromey.com> --- libdw/ChangeLog | 5 +++++ libdw/memory-access.h | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/libdw/ChangeLog b/libdw/ChangeLog index 8b0b583a..1ac4e8a9 100644 --- a/libdw/ChangeLog +++ b/libdw/ChangeLog @@ -1,3 +1,8 @@ +2020-10-23 Tom Tromey <t...@tromey.com> + + * memory-access.h (read_3ubyte_unaligned_inc): Call + read_3ubyte_unaligned. + 2020-09-03 Mark Wielaard <m...@klomp.org> * dwarf.h: Add DW_CFA_AARCH64_negate_ra_state. diff --git a/libdw/memory-access.h b/libdw/memory-access.h index a39ad6d2..14436a71 100644 --- a/libdw/memory-access.h +++ b/libdw/memory-access.h @@ -363,7 +363,7 @@ read_3ubyte_unaligned (Dwarf *dbg, const unsigned char *p) #define read_3ubyte_unaligned_inc(Dbg, Addr) \ - ({ uint32_t t_ = read_2ubyte_unaligned (Dbg, Addr); \ + ({ uint32_t t_ = read_3ubyte_unaligned (Dbg, Addr); \ Addr = (__typeof (Addr)) (((uintptr_t) (Addr)) + 3); \ t_; }) -- 2.17.2