From patchwork Fri Feb 3 20:12:28 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: dichen at redhat dot com X-Patchwork-Id: 64274 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id C4E5A3858C74 for ; Fri, 3 Feb 2023 20:12:38 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org C4E5A3858C74 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1675455158; bh=iSJD/486u0btKyDDD180FjTm9By0th/Jo0xzN8DkKU8=; h=To:Subject:Date:List-Id:List-Unsubscribe:List-Archive:List-Help: List-Subscribe:From:Reply-To:From; b=IJejNa/0/cHsKacHE0fxRdtoiHb/U62uyIpMqcQjzJcnyfNpqCNjeK9prDRsAdDbM kvMlUNZx5c7saQrJ4wCgA91rktfp1vT3WLeP8QMtoUqyJmgW7rKn+QXaBTsyNZnU8f mX27yyMEtQNWhTzuziaA4qE02ceoBJSeXrKfRLAw= X-Original-To: elfutils-devel@sourceware.org Delivered-To: elfutils-devel@sourceware.org Received: by sourceware.org (Postfix, from userid 48) id 974A33858C5F; Fri, 3 Feb 2023 20:12:29 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 974A33858C5F To: elfutils-devel@sourceware.org Subject: [Bug libdw/30077] New: Duplicate definition of typedef struct debuginfod_client in libdwfl Date: Fri, 03 Feb 2023 20:12:28 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: elfutils X-Bugzilla-Component: libdw X-Bugzilla-Version: unspecified X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: dje at sourceware dot org X-Bugzilla-Status: NEW X-Bugzilla-Resolution: X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: unassigned at sourceware dot org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_id short_desc product version bug_status bug_severity priority component assigned_to reporter cc target_milestone Message-ID: X-Bugzilla-URL: http://sourceware.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-BeenThere: elfutils-devel@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Elfutils-devel mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-Patchwork-Original-From: dje at sourceware dot org via Elfutils-devel From: dichen at redhat dot com Reply-To: dje at sourceware dot org Errors-To: elfutils-devel-bounces+patchwork=sourceware.org@sourceware.org Sender: "Elfutils-devel" 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 #include #include @@ -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 \