Subject: [PATCH, applied] Bug 28013 - Acknowledge variadic parameter type is not canonicalized

Dodji Seketeli dodji@seketeli.org
Mon Mar 7 10:59:34 GMT 2022


Hello,

Variadic parameter types are one of the rare types that should not be
canonicalized, just like the void type.  These types are created by
the system (compiler/libabigail) and thus can be compared in O(1)
time.  So far, I forgot to prevent the canonicalization of variadic
parameter type everywhere, as should have been the case since the
recent introduction of the is_non_canonicalized_type function.  This
patch fixes that.

	* src/abg-ir.cc (is_non_canonicalized_type): Recognize variadic
	parameter types.
	* tests/data/test-diff-filter/test-PR28013-fn-variadic.c.{0,1}.abi: New test inputs.
	* tests/data/test-diff-filter/test-PR28013-fn-variadic.c.report.txt: Likewise.
	* tests/data/Makefile.am: Add the new test files to source distribution.
	* tests/test-diff-filter.cc (in_out_specs): Add the new tests to
	this harness.
	* tests/data/test-annotate/libtest23.so.abi: Likewise.
	* tests/data/test-annotate/libtest24-drop-fns-2.so.abi: Likewise.
	* tests/data/test-annotate/libtest24-drop-fns.so.abi: Likewise.
	* tests/data/test-annotate/test0.abi: Likewise.
	* tests/data/test-annotate/test13-pr18894.so.abi: Likewise.
	* tests/data/test-annotate/test15-pr18892.so.abi: Likewise.
	* tests/data/test-annotate/test17-pr19027.so.abi: Likewise.
	* tests/data/test-annotate/test18-pr19037-libvtkRenderingLIC-6.1.so.abi: Likewise.
	* tests/data/test-annotate/test19-pr19023-libtcmalloc_and_profiler.so.abi: Likewise.
	* tests/data/test-annotate/test20-pr19025-libvtkParallelCore-6.1.so.abi: Likewise.
	* tests/data/test-annotate/test21-pr19092.so.abi: Likewise.
	* tests/data/test-diff-filter/test-PR28013-fn-variadic.c.0.abi: Likewise.
	* tests/data/test-diff-filter/test-PR28013-fn-variadic.c.1.abi: Likewise.
	* tests/data/test-diff-filter/test-PR28013-fn-variadic.c.report.txt: Likewise.
	* tests/data/test-read-dwarf/PR22015-libboost_iostreams.so.abi: Likewise.
	* tests/data/test-read-dwarf/PR22122-libftdc.so.abi: Likewise.
	* tests/data/test-read-dwarf/PR25042-libgdbm-clang-dwarf5.so.6.0.0.abi: Likewise.
	* tests/data/test-read-dwarf/libtest23.so.abi: Likewise.
	* tests/data/test-read-dwarf/libtest24-drop-fns-2.so.abi: Likewise.
	* tests/data/test-read-dwarf/libtest24-drop-fns.so.abi: Likewise.
	* tests/data/test-read-dwarf/test-libaaudio.so.abi: Likewise.
	* tests/data/test-read-dwarf/test-libandroid.so.abi: Likewise.
	* tests/data/test-read-dwarf/test0.abi: Likewise.
	* tests/data/test-read-dwarf/test0.hash.abi: Likewise.
	* tests/data/test-read-dwarf/test10-pr18818-gcc.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/test13-pr18894.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/test18-pr19037-libvtkRenderingLIC-6.1.so.abi: Likewise.
	* tests/data/test-read-dwarf/test19-pr19023-libtcmalloc_and_profiler.so.abi: Likewise.
	* tests/data/test-read-dwarf/test20-pr19025-libvtkParallelCore-6.1.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>

This patch is too big for the mailing list so I am attaching it gzipped
below.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Bug-28013-Acknowledge-variadic-parameter-type-is-not.patch.gz
Type: application/gzip
Size: 1473794 bytes
Desc: Gzipped patch
URL: <https://sourceware.org/pipermail/libabigail/attachments/20220307/257e70c8/attachment-0001.gz>
-------------- next part --------------

-- 
		Dodji


More information about the Libabigail mailing list