libabigail/include
Dodji Seketeli 48f26ddc00 {default,leaf}-reporter: group data members changes reports together
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>
2020-05-18 13:42:50 +02:00
..
abg-comp-filter.h Update copyright year to 2020 2020-02-21 17:05:01 +01:00
abg-comparison.h {default,leaf}-reporter: group data members changes reports together 2020-05-18 13:42:50 +02:00
abg-config.h Update copyright year to 2020 2020-02-21 17:05:01 +01:00
abg-corpus.h Update copyright year to 2020 2020-02-21 17:05:01 +01:00
abg-cxx-compat.h Update copyright year to 2020 2020-02-21 17:05:01 +01:00
abg-diff-utils.h Don't iterate before the start of a RandomAccessOutputIterator. 2020-05-13 13:00:52 +02:00
abg-dwarf-reader.h Add --drop-undefined-syms to abidw. 2020-04-15 14:29:55 +02:00
abg-fwd.h Remove stray semicolons. 2020-05-11 14:13:20 +02:00
abg-hash.h Update copyright year to 2020 2020-02-21 17:05:01 +01:00
abg-ini.h Update copyright year to 2020 2020-02-21 17:05:01 +01:00
abg-interned-str.h Update copyright year to 2020 2020-02-21 17:05:01 +01:00
abg-ir.h Tidy get_pretty_representation qualified_name. 2020-05-14 16:34:30 +02:00
abg-libxml-utils.h Fix compilation with g++ 4.8.5 on el7 2020-05-04 13:07:24 +02:00
abg-libzip-utils.h Update copyright year to 2020 2020-02-21 17:05:01 +01:00
abg-reader.h Update copyright year to 2020 2020-02-21 17:05:01 +01:00
abg-regex.h Add POSIX regex wrapper functions. 2020-05-11 18:30:44 +02:00
abg-reporter.h abidiff: Remove blank line after typedef changes. 2020-04-01 15:54:02 +02:00
abg-sptr-utils.h Move libxml bits out of abg-sptr-utils.h. 2020-05-04 11:17:30 +02:00
abg-suppression.h Make set_drops_artifact_from_ir non-const. 2020-05-11 14:36:55 +02:00
abg-tools-utils.h Add --header-file option to add individual public header files. 2020-04-14 17:17:28 +02:00
abg-traverse.h Update copyright year to 2020 2020-02-21 17:05:01 +01:00
abg-version.h.in Add (undocumented) support for version suffixes 2020-01-09 17:06:31 +00:00
abg-viz-common.h Update copyright year to 2020 2020-02-21 17:05:01 +01:00
abg-viz-dot.h Update copyright year to 2020 2020-02-21 17:05:01 +01:00
abg-viz-svg.h Update copyright year to 2020 2020-02-21 17:05:01 +01:00
abg-workers.h Update copyright year to 2020 2020-02-21 17:05:01 +01:00
abg-writer.h Add --no-write-default-sizes option. 2020-04-29 11:56:40 +02:00
Makefile.am Move regex definitions to own files. 2020-05-04 11:15:23 +02:00