From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from relay11.mail.gandi.net (relay11.mail.gandi.net [217.70.178.231]) by sourceware.org (Postfix) with ESMTPS id 684C43858D28 for ; Mon, 19 Dec 2022 17:11:05 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 684C43858D28 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=seketeli.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=seketeli.org Received: (Authenticated sender: dodji@seketeli.org) by mail.gandi.net (Postfix) with ESMTPSA id C274910000A; Mon, 19 Dec 2022 17:11:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=seketeli.org; s=gm1; t=1671469864; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=2jgHKQ2fNy6ZX0ET/07kbkYmNYJ3/NsYG3pS41pFneE=; b=CMvUGKCA8dsec+5+/sHs1AhKdj3cj3jxY4e6N6f4EPJr7MWbdQgvTzSrrvzJWhu2BEpLRj +klSPu743Yg/8+jOd5ZbVq8Bd0SN/61CDM0jnJpS4pJd1x9MGx7t9hwpUUosqT5DKOPh2E gg3JdioFvZfnGkx9SyfyoHFrzj5q7M4J7DQR3zuB3BXJ8bcdOkYymOdhxOE37BuAiDeum6 NXhHKYl7sNP+zjOxWVlXhQPvpdgq/oT2o5bpChk8EDbEZLRhPGwe647bQDUujRnuAj/hmu H925jNQfpzXKEazWWiTFeuhulGd8xGQZm/XkA8JwF3mN91ZONUwH550iSgTLCA== Received: by localhost (Postfix, from userid 1000) id D42DBB5649; Mon, 19 Dec 2022 18:11:02 +0100 (CET) From: Dodji Seketeli To: Dodji Seketeli via Libabigail Cc: Dodji Seketeli Subject: [PATCH 1/3, applied] Bug 29857 - Don't pop comparison operands that haven't been pushed Organization: Me, myself and I References: <87wn6ne30e.fsf@redhat.com> X-Operating-System: CentOS Stream release 9 X-URL: http://www.seketeli.net/~dodji Date: Mon, 19 Dec 2022 18:11:02 +0100 In-Reply-To: <87wn6ne30e.fsf@redhat.com> (Dodji Seketeli via Libabigail's message of "Mon, 19 Dec 2022 18:07:13 +0100") Message-ID: <87sfhbe2u1.fsf@seketeli.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Status: No, score=-9.9 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,JMQ_SPF_NEUTRAL,RCVD_IN_DNSWL_LOW,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: Hello, While looking at bug https://sourceware.org/bugzilla/show_bug.cgi?id=29857, I noticed a crash that is happening due to the fact that the equal overload for classes tries pop comparison operands that haven't been pushed to the stack of comparison operands. Oops. Fixed thus. * src/abg-ir.cc (equals): In the overload for class_or_union, don't try to pop, operands that haven't been pushed. Signed-off-by: Dodji Seketeli --- src/abg-ir.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/abg-ir.cc b/src/abg-ir.cc index 2719954e..4b375c1a 100644 --- a/src/abg-ir.cc +++ b/src/abg-ir.cc @@ -22042,7 +22042,7 @@ equals(const class_or_union& l, const class_or_union& r, change_kind* k) if (!val) if (k) *k |= LOCAL_TYPE_CHANGE_KIND; - RETURN(val); + ABG_RETURN(val); } // No need to go further if the classes have different names or -- 2.31.1 -- Dodji