libabigail/tests
Dodji Seketeli 4cea6708d6 ir: Strip typedefs from pointed-to-types during comparison
When comparing two pointers, a pointer to type T is considered
different from a pointer to typedef-of-T.  This can lead to spurious
self-comparison errors and doesn't provide any practical benefit.
More-over, the hash value of type typedef-of-T is the same as the hash
value of type T.  So today, a pointer to type T and pointer to
typedef-of-T have the same hash value.

This patch strips typedefs from the pointed-to type of pointers and
references before comparing them.  It thus fixes the self-comparison
issue exhibited by the command:

    $ fedabipkgdiff --self-compare -a --from fc36 binutils

	* src/abg-ir.cc (equals): In the overload for pointers and
	reference types, strip typedefs off of pointed-to types before
	comparing them.
	* tests/data/test-annotate/test14-pr18893.so.abi: Adjust.
	* tests/data/test-annotate/test15-pr18892.so.abi: Likewise.
	* tests/data/test-annotate/test17-pr19027.so.abi: Likewise.
	* tests/data/test-annotate/test19-pr19023-libtcmalloc_and_profiler.so.abi:
	Likewise.
	* tests/data/test-annotate/test21-pr19092.so.abi: Likewise.
	* tests/data/test-read-dwarf/PR22122-libftdc.so.abi: Likewise.
	* tests/data/test-read-dwarf/test-libandroid.so.abi: Likewise.
	* tests/data/test-read-dwarf/test11-pr18828.so.abi: Likewise.
	* tests/data/test-read-dwarf/test12-pr18844.so.abi: Likewise.
	* tests/data/test-read-dwarf/test14-pr18893.so.abi: Likewise.
	* tests/data/test-read-dwarf/test15-pr18892.so.abi: Likewise.
	* tests/data/test-read-dwarf/test16-pr18904.so.abi: Likewise.
	* tests/data/test-read-dwarf/test17-pr19027.so.abi: Likewise.
	* tests/data/test-read-dwarf/test19-pr19023-libtcmalloc_and_profiler.so.abi:
	Likewise.
	* tests/data/test-read-dwarf/test21-pr19092.so.abi: Likewise.
	* tests/data/test-read-dwarf/test22-pr19097-libstdc++.so.6.0.17.so.abi:
	Likewise.
	* tests/data/test-read-dwarf/test9-pr18818-clang.so.abi: Likewise.

Signed-off-by: Dodji Seketeli <dodji@redhat.com>
2024-09-05 17:56:24 +02:00
..
data ir: Strip typedefs from pointed-to-types during comparison 2024-09-05 17:56:24 +02:00
lib tests: Update Catch2 library to v2.13.9 2022-07-08 15:54:21 +02:00
.gitignore tests/.gitignore: ignore all files starting with runtest* 2020-05-13 11:26:28 +02:00
Makefile.am dwarf-reader: Avoid duplicating anonymous member types 2024-08-29 17:15:43 +02:00
mockfedabipkgdiff.in Remove python3-mock dependency and use unittest.mock instead 2024-01-26 12:51:40 +01:00
print-diff-tree.cc Update Copyright for year 2024 2024-04-26 15:29:50 +02:00
runtestabidb1.sh.in tests/runtestabidb?.sh.in: Use bash shebang 2024-04-30 13:14:38 +02:00
runtestabidb2.sh.in tests/runtestabidb?.sh.in: Use bash shebang 2024-04-30 13:14:38 +02:00
runtestcanonicalizetypes.sh.in Re-license the project to Apache v2 With LLVM Exception 2020-12-02 11:49:13 +01:00
runtestdefaultsupprs.py.in Re-license the project to Apache v2 With LLVM Exception 2020-12-02 11:49:13 +01:00
runtestdefaultsupprspy3.sh.in Re-license the project to Apache v2 With LLVM Exception 2020-12-02 11:49:13 +01:00
runtestfedabipkgdiff.py.in Re-license the project to Apache v2 With LLVM Exception 2020-12-02 11:49:13 +01:00
runtestfedabipkgdiffpy3.sh.in Re-license the project to Apache v2 With LLVM Exception 2020-12-02 11:49:13 +01:00
runtestslowselfcompare.sh.in Bug 26769 - Fix missing types in abixml output 2020-11-23 13:02:34 +01:00
test-abicompat.cc Update Copyright for year 2024 2024-04-26 15:29:50 +02:00
test-abidiff-exit.cc Update Copyright for year 2024 2024-04-26 15:29:50 +02:00
test-abidiff.cc Update Copyright for year 2024 2024-04-26 15:29:50 +02:00
test-alt-dwarf-file.cc Update Copyright for year 2024 2024-04-26 15:29:50 +02:00
test-annotate.cc writer: Fix control of emitting parm names in function types 2024-05-06 18:31:42 +02:00
test-core-diff.cc Update Copyright for year 2024 2024-04-26 15:29:50 +02:00
test-cxx-compat.cc Update Copyright for year 2024 2024-04-26 15:29:50 +02:00
test-diff2.cc Update Copyright for year 2024 2024-04-26 15:29:50 +02:00
test-diff-dwarf-abixml.cc Update Copyright for year 2024 2024-04-26 15:29:50 +02:00
test-diff-dwarf.cc Update Copyright for year 2024 2024-04-26 15:29:50 +02:00
test-diff-filter.cc Update Copyright for year 2024 2024-04-26 15:29:50 +02:00
test-diff-pkg.cc abipkgdiff: Extract devel and main packages in the same directory 2024-08-29 17:15:44 +02:00
test-diff-suppr.cc Update Copyright for year 2024 2024-04-26 15:29:50 +02:00
test-dot.cc Update Copyright for year 2024 2024-04-26 15:29:50 +02:00
test-elf-helpers.cc Update Copyright for year 2024 2024-04-26 15:29:50 +02:00
test-ini.cc Update Copyright for year 2024 2024-04-26 15:29:50 +02:00
test-ir-walker.cc Update Copyright for year 2024 2024-04-26 15:29:50 +02:00
test-kmi-whitelist.cc Update Copyright for year 2024 2024-04-26 15:29:50 +02:00
test-lookup-syms.cc Update Copyright for year 2024 2024-04-26 15:29:50 +02:00
test-read-btf.cc Update Copyright for year 2024 2024-04-26 15:29:50 +02:00
test-read-common.cc test-read-common: Fix error message 2024-05-06 19:00:14 +02:00
test-read-common.h Use the CTF reader by default when applicable 2022-11-28 16:52:33 +01:00
test-read-ctf.cc Update Copyright for year 2024 2024-04-26 15:29:50 +02:00
test-read-dwarf.cc writer: Fix control of emitting parm names in function types 2024-05-06 18:31:42 +02:00
test-read-write.cc Update Copyright for year 2024 2024-04-26 15:29:50 +02:00
test-svg.cc Update Copyright for year 2024 2024-04-26 15:29:50 +02:00
test-symtab-reader.cc Update Copyright for year 2024 2024-04-26 15:29:50 +02:00
test-symtab.cc Update Copyright for year 2024 2024-04-26 15:29:50 +02:00
test-tools-utils.cc Update Copyright for year 2024 2024-04-26 15:29:50 +02:00
test-types-stability.cc Update Copyright for year 2024 2024-04-26 15:29:50 +02:00
test-utils.cc Update Copyright for year 2024 2024-04-26 15:29:50 +02:00
test-utils.h Update Copyright for year 2024 2024-04-26 15:29:50 +02:00
test-valgrind-suppressions.supp Shut down a helgrind false positive in the "system" libc call 2017-03-17 09:02:19 +01:00
update-test-output.py tests/update-test-output.py: Adapt to some broken test output 2023-04-25 15:50:25 +02:00