]> git.ipfire.org Git - thirdparty/elfutils.git/commitdiff
libdw: Don't use INTUSE in libdwP.h str_offsets_base_off
authorMark Wielaard <mark@klomp.org>
Sat, 2 Mar 2024 23:45:34 +0000 (00:45 +0100)
committerMark Wielaard <mark@klomp.org>
Sat, 2 Mar 2024 23:45:49 +0000 (00:45 +0100)
readelf.c cheats and include libdwP.h, which is an internal only
header of libdw. It really shouldn't do that, but there are some
internals that readelf currently needs. The str_offsets_base_off
function used by readelf uses INTUSE when calling dwarf_get_units.
This is a micro optimization useful inside libdw so a public
function can be called directly, skipping a PLT call. This can
cause issues linking readelf since it might not be able to call
the internal function, since readelf.c isn't part of libdw itself.
Just drop the INTUSE.

* libdw/libdwP.h (str_offsets_base_off): Don't use INTUSE
when calling dwarf_get_units.

Signed-off-by: Mark Wielaard <mark@klomp.org>
libdw/libdwP.h

index 8b2f06fa59372f2e21f5849120e78588b29ee302..c1c84ed3567df23d7118b1f88f96e0c023a88110 100644 (file)
@@ -1153,8 +1153,7 @@ str_offsets_base_off (Dwarf *dbg, Dwarf_CU *cu)
   if (cu == NULL && dbg != NULL)
     {
       Dwarf_CU *first_cu;
-      if (INTUSE(dwarf_get_units) (dbg, NULL, &first_cu,
-                                  NULL, NULL, NULL, NULL) == 0)
+      if (dwarf_get_units (dbg, NULL, &first_cu, NULL, NULL, NULL, NULL) == 0)
        cu = first_cu;
     }