[Bug default/27985] New: abidiff: bad array types in report

gprocida at google dot com sourceware-bugzilla@sourceware.org
Wed Jun 16 11:04:23 GMT 2021


https://sourceware.org/bugzilla/show_bug.cgi?id=27985

            Bug ID: 27985
           Summary: abidiff: bad array types in report
           Product: libabigail
           Version: unspecified
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: default
          Assignee: dodji at redhat dot com
          Reporter: gprocida at google dot com
                CC: libabigail at sourceware dot org
  Target Milestone: ---

Created attachment 13496
  --> https://sourceware.org/bugzilla/attachment.cgi?id=13496&action=edit
two XML files to compare

This is a regression which I've bisected to the recent commit
9681ab04d20f8dacdb14404f6234f63a62e61dd2 "Fix recursive array type definition".

The attached XML files were generated straightforwardly with abidw. The source
files look like the following.

--- indirect_c.0.c   2020-07-31 13:35:19.000000000 +0100
+++ indirect_c.1.c   2020-07-31 13:35:19.000000000 +0100
@@ -1,9 +1,9 @@
 struct leaf {
-  int numbers[2];
+  int numbers[3];
 };

 struct node {
   struct leaf* ptr;
 };

 void foo(struct node *n) { (void) n; }

The resulting abidiff output contains:

                type of 'int numbers[2]' changed:
                  type name changed from 'void[2]' to 'void[3]'
                  array type size changed from 64 to 96
                  array type subrange 1 changed length from 2 to 3

instead of

                type of 'int numbers[2]' changed:
                  type name changed from 'int[2]' to 'int[3]'
                  array type size changed from 64 to 96
                  array type subrange 1 changed length from 2 to 3

-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the Libabigail mailing list