From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from relay10.mail.gandi.net (relay10.mail.gandi.net [217.70.178.230]) by sourceware.org (Postfix) with ESMTPS id C07C939450DC for ; Mon, 6 Apr 2020 17:15:24 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org C07C939450DC Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=seketeli.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=dodji@seketeli.org Received: from localhost (91-166-131-130.subs.proxad.net [91.166.131.130]) (Authenticated sender: dodj@seketeli.org) by relay10.mail.gandi.net (Postfix) with ESMTPSA id 6626F240002; Mon, 6 Apr 2020 17:15:22 +0000 (UTC) Received: by localhost (Postfix, from userid 1001) id DE4691A4AD6; Mon, 6 Apr 2020 19:15:21 +0200 (CEST) From: Dodji Seketeli To: Mark Wielaard Cc: libabigail@sourceware.org Subject: Re: Surprising behavior of suppress_type drop = yes Organization: Me, myself and I References: X-Operating-System: Red Hat Enterprise Linux Server 7.7 X-URL: http://www.seketeli.net/~dodji Date: Mon, 06 Apr 2020 19:15:21 +0200 In-Reply-To: (Mark Wielaard's message of "Sun, 05 Apr 2020 16:38:28 +0200") Message-ID: <86pnckpmc6.fsf@seketeli.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-4.6 required=5.0 tests=BAYES_00, JMQ_SPF_NEUTRAL, KAM_DMARC_STATUS, RCVD_IN_DNSWL_LOW, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: libabigail@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libabigail mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Apr 2020 17:15:26 -0000 Hello Mark, > Note how abidiff treats the function return type and parameters changed > from void * to Foo * as disappearing. > > Is there another way to achieve what I want/need? I think there is a non-documented way to do this, yes. It hasn't been yet documented because nobody expressed the need for it yet. Basically you want to do this: [suppress_type] label =3D "Artificial=C2=B7private=C2=B7types=C2=B7suppression=C2=B7speci= fication" source_location_not_in =3D list.h, of.h, public.h, headers.h drop =3D yes The 'label' property there is important and it needs to have that exact string value. Libabigail generates this kind of suppression specifications internally to handle types that it considers to be private types, namely, types that are defined in files specified by --headers-dir{1,2}. So I guess you can use that undocumented feature for now. > Or can we have a "drop mode" that treats handles to dropped types a > simple void pointers instead? I think what you'd need, really, is a combination of: 1/ a new --header-files{1,2} option 2/ an "opaque =3D yes" attribute in the suppression specification. I think either 1/ or 2/ should work, but it'd be nice to have both. If you think that suggession holds water, then we should probably file a bug to add this new feature. Sorry for the inconvenience. --=20 Dodji