public inbox for libabigail@sourceware.org
 help / color / mirror / Atom feed
* [Bug default/27569] New: abidiff misses a function parameter addition
@ 2021-03-12 15:21 gprocida+abigail at google dot com
  2021-03-15 13:17 ` [Bug default/27569] " gprocida+abigail at google dot com
                   ` (9 more replies)
  0 siblings, 10 replies; 13+ messages in thread
From: gprocida+abigail at google dot com @ 2021-03-12 15:21 UTC (permalink / raw)
  To: libabigail

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

            Bug ID: 27569
           Summary: abidiff misses a function parameter addition
           Product: libabigail
           Version: unspecified
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: default
          Assignee: dodji at redhat dot com
          Reporter: gprocida+abigail at google dot com
                CC: libabigail at sourceware dot org
  Target Milestone: ---

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

Hi Dodji.

I'm attaching two reduced (manually edited, pruned) ABIs. Alas, they are still
quite large. I've tried and failed to reproduce the issue with a small test
case.

abidiff reports nothing, but should report this:

  [C] 'function void device_add_disk(gendisk*)' at genhd.h:420:1 has some
indirect sub-type changes:
    parameter 2 of type 'int' was added

Note that adding --redundant makes no difference.

Changing the type of the first argument in common to int made the problem go
away.

I believe I've narrowed the problem down to diff filtering.

Looking at apply_filters_and_compute_diff_stats, is_filtered_out for the single
function diff initially returns true, but this changes to false after
filtering.

The category of the diff changes from NO_CHANGE_CATEGORY before the filtering
and to HARMLESS_UNION_CHANGE_CATEGORY|FN_RETURN_TYPE_CV_CHANGE_CATEGORY
afterwards. I believe these values come from deep within inconsequential
changes to the first argument's type. Exactly one filter is applied:
harmless_harmful_filter.

My best guess is that there is a hole in the category classification for
"incompatible function type/decl changes", though it seems unlikely that this
wasn't noticed before now.

Regards,
Giuliano.

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

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2021-03-29 17:55 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-12 15:21 [Bug default/27569] New: abidiff misses a function parameter addition gprocida+abigail at google dot com
2021-03-15 13:17 ` [Bug default/27569] " gprocida+abigail at google dot com
2021-03-15 13:24 ` gprocida+abigail at google dot com
2021-03-24 17:10 ` dodji at redhat dot com
2021-03-24 17:18 ` gprocida+abigail at google dot com
2021-03-24 23:58 ` gprocida+abigail at google dot com
2021-03-25 10:07 ` dodji at redhat dot com
2021-03-25 11:22 ` dodji at redhat dot com
2021-03-25 16:33   ` Giuliano Procida
2021-03-26 11:25     ` Dodji Seketeli
2021-03-25 16:34 ` gprocida at google dot com
2021-03-26 11:26 ` dodji at seketeli dot org
2021-03-29 17:55 ` dodji at redhat dot com

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).