From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 2111F3851C0C; Wed, 9 Sep 2020 15:18:31 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 2111F3851C0C From: "dodji at redhat dot com" To: libabigail@sourceware.org Subject: [Bug default/26591] New: detect pathologically redundant types in abixml Date: Wed, 09 Sep 2020 15:18:30 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: libabigail X-Bugzilla-Component: default X-Bugzilla-Version: unspecified X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: dodji at redhat dot com X-Bugzilla-Status: NEW X-Bugzilla-Resolution: X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: dodji at redhat dot com 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: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://sourceware.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-BeenThere: libabigail@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Mailing list of the Libabigail project List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 09 Sep 2020 15:18:31 -0000 https://sourceware.org/bugzilla/show_bug.cgi?id=3D26591 Bug ID: 26591 Summary: detect pathologically redundant types in abixml Product: libabigail Version: unspecified Status: NEW Severity: normal Priority: P2 Component: default Assignee: dodji at redhat dot com Reporter: dodji at redhat dot com CC: libabigail at sourceware dot org Target Milestone: --- In general, a current version of libabigail tries hard to de-duplicate type= s.=20 As a result, the idea is that abixml file have non-duplicated types. This means that in theory, type ids as specified by the value of the attrib= ute id=3D"type-id-xxxx" should be defined only once in the abixml file. But then that is the theory. In practice, there are cases where two types can have the same ID. That usually involves a sub-type. For instance, sub-ranges of arrays are sub-types that are always part of ar= ray types in C and C++ (In Ada, though, they can be a type on their own). So sub-ranges are duplicated in practice, but then I don't think that's a prob= lem. Another valid instance of duplicated type is when there are declaration-only types, in C++, which have different member types. For instance, a type Foo might be declared in a header file with a member type Bar0; then in another header file, Foo might be declared again with another member type Bar1. So just to be able to define Bar0 and Bar1 in the abixml, we need to show decl= are Foo twice, with the same type id. In C++, I am guessing that the other "fair" case of duplicated ID would be violations of the "One Definition Rule", because libabigail doesn't detect these. All other cases (included those listed here) of duplicated type IDs should = be detected so that they can be either documented or be flagged as being sympt= oms a problem related to type comparison in libabigail. --=20 You are receiving this mail because: You are on the CC list for the bug.=