libabigail/tests/data/test-abicompat
Dodji Seketeli 5ed0e40bfd Bug 20887 - Show relative change of offsets
Until now, an offset change is reported by showing the old and new
offsets of the data member that changed.

This patch adds the string "(by +N bits)" with 'N' being the number of
bits by which the offset of the data member was increased, or "(by -N
bits) if the offset of the data member was decreased of N bits.

The patch also emits a string that says "size hasn't changed" if the
size of the structure did not change.

This can be disabled by a new --no-show-relative-offset-changes
option.

	* doc/manuals/abidiff.rst: Document the new
	--no-show-relative-offset-changes.
	* doc/manuals/abipkgdiff.rst: Likewise.
	* include/abg-comparison.h
	(diff_context::show_relative_offset_changes): New accessors.
	* include/abg-ir.h ({set,get}_data_member_offset): Return uint64_t
	instead of the less portable size_t.
	* src/abg-comparison.cc
	(diff_context::priv::show_relative_offset_changes_): New data
	member.
	(dif_context::show_relative_offset_changes): Define accessor.
	(maybe_show_relative_offset_change): Define new function.
	(represent): In the overload for var_diff, call the new
	maybe_show_relative_offset_change.
	(report_size_and_alignment_changes):  If the size of the type
	didn't change then say it now.
	* src/abg-ir.cc (set_data_member_offset, get_data_member_offset):
	Take or return a uint64_t instead of a size_t.
	* tools/abidiff.cc (options::show_relative_offset_changes): New
	data member.
	(options::options): Initialize it.
	(display_usage): Display help string for the new
	--no-show-relative-offset-changes.
	(parse_command_line): Parse the new
	--no-show-relative-offset-changes options.
	(set_diff_context_from_opts): Set the
	"show-relative-offset-changes" flag according to the new option.n
	* tools/abipkgdiff.cc (options::show_relative_offset_changes): New
	data member.
	(options::options): Initialize it.
	(display_usage): Add help string for the new
	--no-show-relative-offset-changes option.
	(set_diff_context_from_opts): Set the
	"show-relative-offset-changes" flag according to the new option.
	(parse_command_line): Parse the new command line option.
	* tests/data/test-diff-dwarf/test40-report-0.txt: Add new
	reference output.
	* tests/data/test-diff-dwarf/test40-v0.c: Source code of the first
	test binary.
	* tests/data/test-diff-dwarf/test40-v1.c: Source code of the
	second test binay.
	* tests/data/test-diff-dwarf/libtest40-v0.so: New first test binary.
	* tests/data/test-diff-dwarf/libtest40-v1.so: New second test binary.
	* tests/test-diff-dwarf.cc (in_out_spec): Add the new test
	binaries above to the set of binaries that are compared.
	* tests/data/Makefile.am: Add the new test material to source
	distribution.
	* tests/data/test-abicompat/test7-fn-changed-report-0.txt: Adjust.
	* tests/data/test-abidiff/test-PR18791-report0.txt: Likewise.
	* tests/data/test-abidiff/test-enum0-report.txt: Likewise.
	* tests/data/test-abidiff/test-enum1-report.txt: Likewise.
	* tests/data/test-abidiff/test-struct1-report.txt: Likewise.
	* tests/data/test-diff-dwarf/test0-report.txt: Likewise.
	* tests/data/test-diff-dwarf/test1-report.txt: Likewise.
	* tests/data/test-diff-dwarf/test10-report.txt: Likewise.
	* tests/data/test-diff-dwarf/test11-report.txt: Likewise.
	* tests/data/test-diff-dwarf/test13-report.txt: Likewise.
	* tests/data/test-diff-dwarf/test15-enum-report.txt: Likewise.
	* tests/data/test-diff-dwarf/test27-local-base-diff-report.txt: Likewise.
	* tests/data/test-diff-dwarf/test32-fnptr-changes-report-0.txt: Likewise.
	* tests/data/test-diff-dwarf/test33-fnref-changes-report-0.txt: Likewise.
	* tests/data/test-diff-dwarf/test38-union-report-0.txt: Likewise.
	* tests/data/test-diff-dwarf/test4-report.txt: Likewise.
	* tests/data/test-diff-dwarf/test5-report.txt: Likewise.
	* tests/data/test-diff-dwarf/test6-report.txt: Likewise.
	* tests/data/test-diff-dwarf/test8-report.txt: Likewise.
	* tests/data/test-diff-filter/test0-report.txt: Likewise.
	* tests/data/test-diff-filter/test01-report.txt: Likewise.
	* tests/data/test-diff-filter/test1-report.txt: Likewise.
	* tests/data/test-diff-filter/test13-report.txt: Likewise.
	* tests/data/test-diff-filter/test16-report-2.txt: Likewise.
	* tests/data/test-diff-filter/test16-report.txt: Likewise.
	* tests/data/test-diff-filter/test17-0-report.txt: Likewise.
	* tests/data/test-diff-filter/test17-1-report.txt: Likewise.
	* tests/data/test-diff-filter/test18-report.txt: Likewise.
	* tests/data/test-diff-filter/test19-enum-report-1.txt: Likewise.
	* tests/data/test-diff-filter/test2-report.txt: Likewise.
	* tests/data/test-diff-filter/test23-redundant-fn-parm-change-report-0.txt:
	Likewise.
	* tests/data/test-diff-filter/test24-compatible-vars-report-1.txt:
	Likewise.
	* tests/data/test-diff-filter/test25-cyclic-type-report-0.txt:
	Likewise.
	* tests/data/test-diff-filter/test25-cyclic-type-report-1.txt:
	Likewise.
	* tests/data/test-diff-filter/test26-qualified-redundant-node-report-0.t:
	Likewise.xt
	* tests/data/test-diff-filter/test26-qualified-redundant-node-report-1.txt:
	Likewise.
	* tests/data/test-diff-filter/test27-redundant-and-filtered-children-nodes-report-1.txt:
	Likewise.
	* tests/data/test-diff-filter/test27-redundant-and-filtered-children-nodes-report-2.txt:
	Likewise.
	* tests/data/test-diff-filter/test29-finer-redundancy-marking-report-0.txt:
	Likewise.
	* tests/data/test-diff-filter/test3-report.txt: Likewise.
	* tests/data/test-diff-filter/test30-pr18904-rvalueref-report0.txt:
	Likewise.
	* tests/data/test-diff-filter/test30-pr18904-rvalueref-report1.txt:
	Likewise.
	* tests/data/test-diff-filter/test31-pr18535-libstdc++-report-0.txt:
	Likewise.
	* tests/data/test-diff-filter/test31-pr18535-libstdc++-report-1.txt:
	Likewise.
	* tests/data/test-diff-pkg/libICE-1.0.6-1.el6.x86_64.rpm--libICE-1.0.9-2.el7.x86_64.rpm-report-0.txt: Likewise.
	* tests/data/test-diff-pkg/libsigc++-2.0-0c2a_2.4.0-1_amd64--libsigc++-2.0-0v5_2.4.1-1ubuntu2_amd64-report-0.txt: Likewise.
	* tests/data/test-diff-pkg/tbb-4.1-9.20130314.fc22.x86_64--tbb-4.3-3.20141204.fc23.x86_64-report-0.txt: Likewise.
	* tests/data/test-diff-pkg/tbb-4.1-9.20130314.fc22.x86_64--tbb-4.3-3.20141204.fc23.x86_64-report-1.txt: Likewise.
	* tests/data/test-diff-suppr/test0-type-suppr-report-0.txt: Likewise.
	* tests/data/test-diff-suppr/test0-type-suppr-report-3.txt: Likewise.
	* tests/data/test-diff-suppr/test0-type-suppr-report-5.txt: Likewise.
	* tests/data/test-diff-suppr/test0-type-suppr-report-7.txt: Likewise.
	* tests/data/test-diff-suppr/test1-typedef-suppr-report-0.txt: Likewise.
	* tests/data/test-diff-suppr/test1-typedef-suppr-report-2.txt: Likewise.
	* tests/data/test-diff-suppr/test10-changed-parm-c-report-0.txt: Likewise.
	* tests/data/test-diff-suppr/test2-struct-suppr-report-0.txt: Likewise.
	* tests/data/test-diff-suppr/test23-alias-filter-report-0.txt: Likewise.
	* tests/data/test-diff-suppr/test23-alias-filter-report-2.txt: Likewise.
	* tests/data/test-diff-suppr/test3-struct-suppr-report-0.txt: Likewise.
	* tests/data/test-diff-suppr/test3-struct-suppr-report-1.txt: Likewise.
	* tests/data/test-diff-suppr/test3-struct-suppr-report-2.txt: Likewise.
	* tests/data/test-diff-suppr/test30-report-0.txt: Likewise.
	* tests/data/test-diff-suppr/test4-local-suppr-report-0.txt: Likewise.
	* tests/data/test-diff-suppr/test4-local-suppr-report-1.txt: Likewise.
	* tests/data/test-diff-suppr/test5-fn-suppr-report-0.txt: Likewise.
	* tests/data/test-diff-suppr/test5-fn-suppr-report-1.txt: Likewise.
	* tests/data/test-diff-suppr/test5-fn-suppr-report-2.txt: Likewise.
	* tests/data/test-diff-suppr/test5-fn-suppr-report-3.txt: Likewise.
	* tests/data/test-diff-suppr/test5-fn-suppr-report-4.txt: Likewise.
	* tests/data/test-diff-suppr/test5-fn-suppr-report-5.txt: Likewise.
	* tests/data/test-diff-suppr/test6-fn-suppr-report-0-1.txt: Likewise.
	* tests/data/test-diff-suppr/test6-fn-suppr-report-0.txt: Likewise.
	* tests/data/test-diff-suppr/test6-fn-suppr-report-1.txt: Likewise.
	* tests/data/test-diff-suppr/test6-fn-suppr-report-2.txt: Likewise.
	* tests/data/test-diff-suppr/test6-fn-suppr-report-3.txt: Likewise.
	* tests/data/test-diff-suppr/test7-var-suppr-report-0.txt: Likewise.
	* tests/data/test-diff-suppr/test7-var-suppr-report-1.txt: Likewise.
	* tests/data/test-diff-suppr/test7-var-suppr-report-2.txt: Likewise.
	* tests/data/test-diff-suppr/test7-var-suppr-report-3.txt: Likewise.
	* tests/data/test-diff-suppr/test7-var-suppr-report-4.txt: Likewise.
	* tests/data/test-diff-suppr/test7-var-suppr-report-7.txt: Likewise.
	* tests/data/test-diff-suppr/test7-var-suppr-report-8.txt: Likewise.

Signed-off-by: Dodji Seketeli <dodji@redhat.com>
2016-12-02 21:29:28 +01:00
..
libtest0-fn-changed-libapp-v0.so Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
libtest0-fn-changed-libapp-v1.so Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
libtest1-fn-removed-v0.so Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
libtest1-fn-removed-v1.so Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
libtest2-var-removed-v0.so Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
libtest2-var-removed-v1.so Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
libtest3-fn-removed-v0.so Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
libtest3-fn-removed-v1.so Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
libtest4-soname-changed-v0.so Wire the soname check into abicompat 2014-12-08 13:47:00 +01:00
libtest4-soname-changed-v1.so Wire the soname check into abicompat 2014-12-08 13:47:00 +01:00
libtest5-fn-changed-libapp-v0.so Add support for abicompat weak mode 2015-04-03 22:45:41 +02:00
libtest5-fn-changed-libapp-v1.so Add support for abicompat weak mode 2015-04-03 22:45:41 +02:00
libtest6-var-changed-libapp-v0.so Add support for abicompat weak mode 2015-04-03 22:45:41 +02:00
libtest6-var-changed-libapp-v1.so Add support for abicompat weak mode 2015-04-03 22:45:41 +02:00
libtest7-fn-changed-libapp-v0.so Fix computing the set of exported functions and varible symbols 2015-07-20 12:46:21 +02:00
libtest7-fn-changed-libapp-v1.so Fix computing the set of exported functions and varible symbols 2015-07-20 12:46:21 +02:00
libtest8-fn-changed-libapp-v0.so Fix synthesizing of pointer type 2016-02-03 13:00:51 +01:00
libtest8-fn-changed-libapp-v1.so Fix synthesizing of pointer type 2016-02-03 13:00:51 +01:00
libtest9-fn-changed-v0.so Fix synthesizing of reference type 2016-02-04 11:26:22 +01:00
libtest9-fn-changed-v1.so Fix synthesizing of reference type 2016-02-04 11:26:22 +01:00
test0-fn-changed-0.suppr Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
test0-fn-changed-1.suppr Implement a [suppress_file] suppression directive 2016-05-08 12:39:26 +02:00
test0-fn-changed-app Add support for abicompat weak mode 2015-04-03 22:45:41 +02:00
test0-fn-changed-app.cc Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
test0-fn-changed-libapp-v0.cc Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
test0-fn-changed-libapp-v1.cc Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
test0-fn-changed-libapp.h Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
test0-fn-changed-report-0.txt Misc reporting fixes/improvements 2015-04-14 06:16:00 +02:00
test0-fn-changed-report-1.txt Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
test0-fn-changed-report-2.txt Add the option of printing the file, line and column information about a type being reported. 2015-12-15 12:32:55 +01:00
test0-fn-changed-report-3.txt Implement a [suppress_file] suppression directive 2016-05-08 12:39:26 +02:00
test1-fn-removed-app Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
test1-fn-removed-app.cc Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
test1-fn-removed-report-0.txt Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
test1-fn-removed-v0.cc Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
test1-fn-removed-v1.cc Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
test2-var-removed-app Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
test2-var-removed-app.cc Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
test2-var-removed-report-0.txt Make the name of the removed variable section be consistent 2015-07-24 14:06:29 +02:00
test2-var-removed-v0.cc Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
test2-var-removed-v1.cc Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
test3-fn-removed-app Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
test3-fn-removed-app.cc Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
test3-fn-removed-report-0.txt Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
test3-fn-removed-v0.cc Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
test3-fn-removed-v1.cc Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
test3-fn-removed-version-script-0 Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
test3-fn-removed-version-script-1 Initial implementation of the abicompat tool 2014-12-05 15:43:31 +01:00
test4-soname-changed-app Wire the soname check into abicompat 2014-12-08 13:47:00 +01:00
test4-soname-changed-app.cc Wire the soname check into abicompat 2014-12-08 13:47:00 +01:00
test4-soname-changed-report-0.txt Wire the soname check into abicompat 2014-12-08 13:47:00 +01:00
test4-soname-changed-v0.cc Wire the soname check into abicompat 2014-12-08 13:47:00 +01:00
test4-soname-changed-v1.cc Wire the soname check into abicompat 2014-12-08 13:47:00 +01:00
test5-fn-changed-app Add support for abicompat weak mode 2015-04-03 22:45:41 +02:00
test5-fn-changed-app.cc Add support for abicompat weak mode 2015-04-03 22:45:41 +02:00
test5-fn-changed-libapp-v0.cc Add support for abicompat weak mode 2015-04-03 22:45:41 +02:00
test5-fn-changed-libapp-v0.h Add support for abicompat weak mode 2015-04-03 22:45:41 +02:00
test5-fn-changed-libapp-v1.cc Add support for abicompat weak mode 2015-04-03 22:45:41 +02:00
test5-fn-changed-libapp-v1.h Add support for abicompat weak mode 2015-04-03 22:45:41 +02:00
test5-fn-changed-report-0.txt Clean up the output of abicompat weak mode 2015-07-20 16:01:27 +02:00
test5-fn-changed-report-1.txt Add the option of printing the file, line and column information about a type being reported. 2015-12-15 12:32:55 +01:00
test6-var-changed-app Add support for abicompat weak mode 2015-04-03 22:45:41 +02:00
test6-var-changed-app.cc Add support for abicompat weak mode 2015-04-03 22:45:41 +02:00
test6-var-changed-libapp-v0.cc Add support for abicompat weak mode 2015-04-03 22:45:41 +02:00
test6-var-changed-libapp-v0.h Add support for abicompat weak mode 2015-04-03 22:45:41 +02:00
test6-var-changed-libapp-v1.cc Add support for abicompat weak mode 2015-04-03 22:45:41 +02:00
test6-var-changed-libapp-v1.h Add support for abicompat weak mode 2015-04-03 22:45:41 +02:00
test6-var-changed-report-0.txt Clean up the output of abicompat weak mode 2015-07-20 16:01:27 +02:00
test6-var-changed-report-1.txt Add the option of printing the file, line and column information about a type being reported. 2015-12-15 12:32:55 +01:00
test7-fn-changed-app Fix computing the set of exported functions and varible symbols 2015-07-20 12:46:21 +02:00
test7-fn-changed-app.c Fix computing the set of exported functions and varible symbols 2015-07-20 12:46:21 +02:00
test7-fn-changed-libapp-v0.c Fix computing the set of exported functions and varible symbols 2015-07-20 12:46:21 +02:00
test7-fn-changed-libapp-v0.h Fix computing the set of exported functions and varible symbols 2015-07-20 12:46:21 +02:00
test7-fn-changed-libapp-v1.c Fix computing the set of exported functions and varible symbols 2015-07-20 12:46:21 +02:00
test7-fn-changed-libapp-v1.h Fix computing the set of exported functions and varible symbols 2015-07-20 12:46:21 +02:00
test7-fn-changed-report-0.txt Bug 20887 - Show relative change of offsets 2016-12-02 21:29:28 +01:00
test7-fn-changed-report-1.txt Fix type synthesis to fix abicompat weak mode 2015-07-20 17:11:32 +02:00
test7-fn-changed-report-2.txt Add the option of printing the file, line and column information about a type being reported. 2015-12-15 12:32:55 +01:00
test8-fn-changed-app Fix synthesizing of pointer type 2016-02-03 13:00:51 +01:00
test8-fn-changed-app.c Fix synthesizing of pointer type 2016-02-03 13:00:51 +01:00
test8-fn-changed-libapp-v0.c Fix synthesizing of pointer type 2016-02-03 13:00:51 +01:00
test8-fn-changed-libapp-v0.h Fix synthesizing of pointer type 2016-02-03 13:00:51 +01:00
test8-fn-changed-libapp-v1.c Fix synthesizing of pointer type 2016-02-03 13:00:51 +01:00
test8-fn-changed-libapp-v1.h Fix synthesizing of pointer type 2016-02-03 13:00:51 +01:00
test8-fn-changed-report-0.txt Fix synthesizing of pointer type 2016-02-03 13:00:51 +01:00
test9-fn-changed-app Fix synthesizing of reference type 2016-02-04 11:26:22 +01:00
test9-fn-changed-app.cc Fix synthesizing of reference type 2016-02-04 11:26:22 +01:00
test9-fn-changed-report-0.txt Fix synthesizing of reference type 2016-02-04 11:26:22 +01:00
test9-fn-changed-v0.cc Fix synthesizing of reference type 2016-02-04 11:26:22 +01:00
test9-fn-changed-v0.h Fix synthesizing of reference type 2016-02-04 11:26:22 +01:00
test9-fn-changed-v1.cc Fix synthesizing of reference type 2016-02-04 11:26:22 +01:00
test9-fn-changed-v1.h Fix synthesizing of reference type 2016-02-04 11:26:22 +01:00