mirror of
git://sourceware.org/git/libabigail.git
synced 2025-03-06 14:47:32 +00:00
There are two kinds of data member changes: 1/ changes to the type or offset of a given data member basically, in this kind of change, the name of the data member remained the same. 2/ changes where the data member (at a given offset) was replaced by something else completely. Today, the comparison engine recognizes these two kinds of changes and records them in two different data structures. This is useful because it allows for a finer grain analysis. But when we report these changes, today, we report them separately and sometimes that doesn't make sense. For instance, because there is no change of the 1/ kind, the reporter would say "no data member changes", and yet go ahead and emit data member changes of the 2/ kind. This patch groups the reporting of the two kinds of changes so that when it says "no data member changes", it means there was no data member changes at all. * include/abg-comparison.h (class_or_union_diff::{sorted_changed_data_members, count_filtered_changed_data_members, sorted_subtype_changed_data_members, count_filtered_subtype_changed_data_members}): Declare ... * src/abg-comparison.cc (class_or_union_diff::{sorted_changed_data_members, count_filtered_changed_data_members, sorted_subtype_changed_data_members, count_filtered_subtype_changed_data_members}): ... accessors for existing private data members. * src/abg-default-reporter.cc (default_reporter::report): In the class_or_union_diff& overload, group the reporting of the changes to data member sub-types with the replacement of data members. These are just data member changes after all. Use the newly declared accessors for better measure. * src/abg-leaf-reporter.cc (leaf_reporter::report): Likewise. * tests/data/test-diff-dwarf/test45-anon-dm-change-report-0.txt: Adjust. * src/abg-leaf-reporter.cc (leaf_reporter::report): Likewise. * tests/data/test-diff-pkg/spice-server-0.12.4-19.el7.x86_64-0.12.8-1.el7.x86_64-report-2.txt: Likewise. Signed-off-by: Dodji Seketeli <dodji@redhat.com> |
||
---|---|---|
.. | ||
abg-comp-filter.h | ||
abg-comparison.h | ||
abg-config.h | ||
abg-corpus.h | ||
abg-cxx-compat.h | ||
abg-diff-utils.h | ||
abg-dwarf-reader.h | ||
abg-fwd.h | ||
abg-hash.h | ||
abg-ini.h | ||
abg-interned-str.h | ||
abg-ir.h | ||
abg-libxml-utils.h | ||
abg-libzip-utils.h | ||
abg-reader.h | ||
abg-regex.h | ||
abg-reporter.h | ||
abg-sptr-utils.h | ||
abg-suppression.h | ||
abg-tools-utils.h | ||
abg-traverse.h | ||
abg-version.h.in | ||
abg-viz-common.h | ||
abg-viz-dot.h | ||
abg-viz-svg.h | ||
abg-workers.h | ||
abg-writer.h | ||
Makefile.am |