https://sourceware.org/bugzilla/show_bug.cgi?id=30077
Bug ID: 30077
Summary: Duplicate definition of typedef struct
debuginfod_client in libdwfl
Product: elfutils
Version: unspecified
Status: NEW
Severity: normal
Priority: P2
Component: libdw
Assignee: unassigned at sourceware dot org
Reporter: dje at sourceware dot org
CC: elfutils-devel at sourceware dot org
Target Milestone: ---
typedef struct debuginfod_client is defined in both libdwfl/libdwfl.h and in
debuginfod.h included by libdwfl/libdwflP.h. Although innocuous, this is
invalid C and causes compilation failures with strict compliance.
One possible set of patches is:
--- libdwfl.h.orig 2023-02-03 15:03:57.669810336 -0500
+++ libdwfl.h 2023-02-03 15:00:53.959921348 -0500
@@ -49,8 +49,10 @@
PC location described by an FDE belonging to Dwfl_Thread. */
typedef struct Dwfl_Frame Dwfl_Frame;
+#ifndef ENABLE_LIBDEBUGINFOD
/* Handle for debuginfod-client connection. */
typedef struct debuginfod_client debuginfod_client;
+#endif
/* Callbacks. */
typedef struct
--- libdwflP.h.orig 2023-02-03 15:04:29.749793736 -0500
+++ libdwflP.h 2023-02-03 14:53:56.320181520 -0500
@@ -29,6 +29,10 @@
#ifndef _LIBDWFLP_H
#define _LIBDWFLP_H 1
+#ifdef ENABLE_LIBDEBUGINFOD
+#include "../debuginfod/debuginfod.h"
+#endif
+
#include <libdwfl.h>
#include <libebl.h>
#include <assert.h>
@@ -41,10 +45,6 @@
#include "../libdw/libdwP.h" /* We need its INTDECLs. */
#include "../libdwelf/libdwelfP.h"
-#ifdef ENABLE_LIBDEBUGINFOD
-#include "../debuginfod/debuginfod.h"
-#endif
-
typedef struct Dwfl_Process Dwfl_Process;
#define DWFL_ERRORS \
--
You are receiving this mail because:
You are on the CC list for the bug.