From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-il1-x12a.google.com (mail-il1-x12a.google.com [IPv6:2607:f8b0:4864:20::12a]) by sourceware.org (Postfix) with ESMTPS id C5307385041B for ; Wed, 18 May 2022 18:01:00 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org C5307385041B Received: by mail-il1-x12a.google.com with SMTP id s14so2039665ild.6 for ; Wed, 18 May 2022 11:01:00 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=YMVbN+VLgTVUzA23zrc3hwP91suE2Str1JDXJAdBTI8=; b=z0invQFClzNkQrUPatAnEYcqk2L37awGkKlqV56Oayg5NTAInrnuxoDUmzr7vWLRmp HXyU68vFOVIlx2G3FzGinfTss45XXmGHk4b3DleG5IOADRzJzmCXokXglC/WZWJhgqb5 zDaXJpluC/o5CODgU/xiP6Ph1IRUWg99eWFaI8lCGXBcScOoR72JjRHcynpaRXQrTGQJ kGqKEGQ6E823GsByAKgHIUwF49cMRIDnabymB3Y3hO6OvW5LDYJSjXTcjVBjvDmCP/Wh FtD5AjKd/v6Q3kDuEpRuKK+qYER+rAA+VpTkUi1pj5Dn7S+QDNNSyFjttHYQS9YhFXEU Kugw== X-Gm-Message-State: AOAM531zuXl8lkHpusnJ1+sRyu5vWPAypD7M1k55P30jjCR09BVFY4rW mam27evfkkCUfeCqiSP45btpfgR2Itf/SQ== X-Google-Smtp-Source: ABdhPJzDZBuThrXEUD1zIBKSOYIdR/t4gTn0NwoSCEe6ZvDRGo6avdHSLVhUCBY2+OAVo62i1fM5Ng== X-Received: by 2002:a92:ce87:0:b0:2d0:f39f:8aaa with SMTP id r7-20020a92ce87000000b002d0f39f8aaamr520442ilo.115.1652896860069; Wed, 18 May 2022 11:01:00 -0700 (PDT) Received: from murgatroyd.Home (71-211-158-194.hlrn.qwest.net. [71.211.158.194]) by smtp.gmail.com with ESMTPSA id r4-20020a92d984000000b002cde6e352ffsm715083iln.73.2022.05.18.11.00.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 18 May 2022 11:00:59 -0700 (PDT) From: Tom Tromey To: gdb-patches@sourceware.org Cc: Tom Tromey Subject: [PATCH 07/14] ODR warning for "struct stack_item" Date: Wed, 18 May 2022 12:00:42 -0600 Message-Id: <20220518180049.2337257-8-tromey@adacore.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220518180049.2337257-1-tromey@adacore.com> References: <20220518180049.2337257-1-tromey@adacore.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-11.6 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 May 2022 18:01:03 -0000 "struct stack_item" is defined in multiple .c files, causing ODR warnings. This patch renames these types. Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=22395 --- gdb/arm-tdep.c | 21 +++++++++++---------- gdb/avr-tdep.c | 22 +++++++++++----------- gdb/cris-tdep.c | 19 ++++++++++--------- gdb/csky-tdep.c | 8 ++++---- 4 files changed, 36 insertions(+), 34 deletions(-) diff --git a/gdb/arm-tdep.c b/gdb/arm-tdep.c index 49664093f00..07836cfa1d5 100644 --- a/gdb/arm-tdep.c +++ b/gdb/arm-tdep.c @@ -3844,18 +3844,19 @@ arm_stack_frame_destroyed_p (struct gdbarch *gdbarch, CORE_ADDR pc) /* When arguments must be pushed onto the stack, they go on in reverse order. The code below implements a FILO (stack) to do this. */ -struct stack_item +struct arm_stack_item { int len; - struct stack_item *prev; + struct arm_stack_item *prev; gdb_byte *data; }; -static struct stack_item * -push_stack_item (struct stack_item *prev, const gdb_byte *contents, int len) +static struct arm_stack_item * +push_stack_item (struct arm_stack_item *prev, const gdb_byte *contents, + int len) { - struct stack_item *si; - si = XNEW (struct stack_item); + struct arm_stack_item *si; + si = XNEW (struct arm_stack_item); si->data = (gdb_byte *) xmalloc (len); si->len = len; si->prev = prev; @@ -3863,10 +3864,10 @@ push_stack_item (struct stack_item *prev, const gdb_byte *contents, int len) return si; } -static struct stack_item * -pop_stack_item (struct stack_item *si) +static struct arm_stack_item * +pop_stack_item (struct arm_stack_item *si) { - struct stack_item *dead = si; + struct arm_stack_item *dead = si; si = si->prev; xfree (dead->data); xfree (dead); @@ -4184,7 +4185,7 @@ arm_push_dummy_call (struct gdbarch *gdbarch, struct value *function, int argnum; int argreg; int nstack; - struct stack_item *si = NULL; + struct arm_stack_item *si = NULL; int use_vfp_abi; struct type *ftype; unsigned vfp_regs_free = (1 << 16) - 1; diff --git a/gdb/avr-tdep.c b/gdb/avr-tdep.c index 9e73c507b2e..e103045cb23 100644 --- a/gdb/avr-tdep.c +++ b/gdb/avr-tdep.c @@ -1199,18 +1199,19 @@ avr_dummy_id (struct gdbarch *gdbarch, struct frame_info *this_frame) /* When arguments must be pushed onto the stack, they go on in reverse order. The below implements a FILO (stack) to do this. */ -struct stack_item +struct avr_stack_item { int len; - struct stack_item *prev; + struct avr_stack_item *prev; gdb_byte *data; }; -static struct stack_item * -push_stack_item (struct stack_item *prev, const bfd_byte *contents, int len) +static struct avr_stack_item * +push_stack_item (struct avr_stack_item *prev, const bfd_byte *contents, + int len) { - struct stack_item *si; - si = XNEW (struct stack_item); + struct avr_stack_item *si; + si = XNEW (struct avr_stack_item); si->data = (gdb_byte *) xmalloc (len); si->len = len; si->prev = prev; @@ -1218,11 +1219,10 @@ push_stack_item (struct stack_item *prev, const bfd_byte *contents, int len) return si; } -static struct stack_item *pop_stack_item (struct stack_item *si); -static struct stack_item * -pop_stack_item (struct stack_item *si) +static struct avr_stack_item * +pop_stack_item (struct avr_stack_item *si) { - struct stack_item *dead = si; + struct avr_stack_item *dead = si; si = si->prev; xfree (dead->data); xfree (dead); @@ -1281,7 +1281,7 @@ avr_push_dummy_call (struct gdbarch *gdbarch, struct value *function, int call_length = tdep->call_length; CORE_ADDR return_pc = avr_convert_iaddr_to_raw (bp_addr); int regnum = AVR_ARGN_REGNUM; - struct stack_item *si = NULL; + struct avr_stack_item *si = NULL; if (return_method == return_method_struct) { diff --git a/gdb/cris-tdep.c b/gdb/cris-tdep.c index 898d277b3fe..efd728a5229 100644 --- a/gdb/cris-tdep.c +++ b/gdb/cris-tdep.c @@ -656,17 +656,18 @@ static CORE_ADDR crisv32_scan_prologue (CORE_ADDR pc, order. The below implements a FILO (stack) to do this. Copied from d10v-tdep.c. */ -struct stack_item +struct cris_stack_item { int len; - struct stack_item *prev; + struct cris_stack_item *prev; gdb_byte *data; }; -static struct stack_item * -push_stack_item (struct stack_item *prev, const gdb_byte *contents, int len) +static struct cris_stack_item * +push_stack_item (struct cris_stack_item *prev, const gdb_byte *contents, + int len) { - struct stack_item *si = XNEW (struct stack_item); + struct cris_stack_item *si = XNEW (struct cris_stack_item); si->data = (gdb_byte *) xmalloc (len); si->len = len; si->prev = prev; @@ -674,10 +675,10 @@ push_stack_item (struct stack_item *prev, const gdb_byte *contents, int len) return si; } -static struct stack_item * -pop_stack_item (struct stack_item *si) +static struct cris_stack_item * +pop_stack_item (struct cris_stack_item *si) { - struct stack_item *dead = si; + struct cris_stack_item *dead = si; si = si->prev; xfree (dead->data); xfree (dead); @@ -798,7 +799,7 @@ cris_push_dummy_call (struct gdbarch *gdbarch, struct value *function, int argreg; int argnum; - struct stack_item *si = NULL; + struct cris_stack_item *si = NULL; /* Push the return address. */ regcache_cooked_write_unsigned (regcache, SRP_REGNUM, bp_addr); diff --git a/gdb/csky-tdep.c b/gdb/csky-tdep.c index a9b53916561..4c2aa010cb4 100644 --- a/gdb/csky-tdep.c +++ b/gdb/csky-tdep.c @@ -307,9 +307,9 @@ csky_register_type (struct gdbarch *gdbarch, int reg_nr) /* Data structure to marshall items in a dummy stack frame when calling a function in the inferior. */ -struct stack_item +struct csky_stack_item { - stack_item (int len_, const gdb_byte *data_) + csky_stack_item (int len_, const gdb_byte *data_) : len (len_), data (data_) {} @@ -330,7 +330,7 @@ csky_push_dummy_call (struct gdbarch *gdbarch, struct value *function, int argreg = CSKY_ABI_A0_REGNUM; int last_arg_regnum = CSKY_ABI_LAST_ARG_REGNUM; enum bfd_endian byte_order = gdbarch_byte_order (gdbarch); - std::vector stack_items; + std::vector stack_items; /* Set the return address. For CSKY, the return breakpoint is always at BP_ADDR. */ @@ -406,7 +406,7 @@ csky_push_dummy_call (struct gdbarch *gdbarch, struct value *function, } /* Transfer the dummy stack frame to the target. */ - std::vector::reverse_iterator iter; + std::vector::reverse_iterator iter; for (iter = stack_items.rbegin (); iter != stack_items.rend (); ++iter) { sp -= iter->len; -- 2.34.1