mirror of
git://sourceware.org/git/libabigail.git
synced 2024-12-21 01:09:59 +00:00
f6c182bb56
In a suppression specification, soname_regexp or file_name_regexp cannot be the only property of a suppression directive. For instance, the suppression specification below won't work: [suppress_type] # suppress all change reports about *any type* from the library # libtestfoo.so file_name_regexp = libtestfoo.so This is because as documented in the manual, the suppression directive 'suppress_type' requires that some other properties be specified. For instance, the below would work: [suppress_type] name_regexp = .* file_name_regexp This was done on purpose to prevent folks from inadvertently suppressing too much of change report bits. But experience is showing that this is surprising some users. And in hindsight, I kind of agree it's surprising. So this patch allows the first example to work, as seems to be expected. The patch allows the first example to work for the suppress_function and suppress_variable directive too. * doc/manuals/libabigail-concepts.rst: Update the manual to reflect the changes in the suppression_type, suppress_function and suppress_variable directives. * src/abg-comparison.cc (read_type_suppression): Accept that the suppress_type directive contains only file_name_regexp or the soname_regexp property. (read_function_suppression): Likewise for the suppress_function directive. (read_variable_suppression): Likewise for the suppress_variable directive. * tests/data/test-diff-suppr/libtest29-soname-v0.so: New binary test input. * tests/data/test-diff-suppr/libtest29-soname-v1.so: Likewise. * tests/data/test-diff-suppr/test24-soname-report-5.txt: New reference test output. * tests/data/test-diff-suppr/test24-soname-report-6.txt: Likewise. * tests/data/test-diff-suppr/test24-soname-report-7.txt: Likewise. * tests/data/test-diff-suppr/test24-soname-report-8.txt: Likewise. * tests/data/test-diff-suppr/test24-soname-suppr-5.txt: New test suppression file. * tests/data/test-diff-suppr/test24-soname-suppr-6.txt: Likewise. * tests/data/test-diff-suppr/test24-soname-suppr-7.txt: Likewise. * tests/data/test-diff-suppr/test24-soname-suppr-8.txt: Likewise. * tests/data/test-diff-suppr/test29-soname-report-0.txt: New reference test output. * tests/data/test-diff-suppr/test29-soname-report-1.txt: Likewise. * tests/data/test-diff-suppr/test29-soname-v0.cc: Source code for the new binary output above. * tests/data/test-diff-suppr/test29-soname-v1.cc: Likewise. * tests/data/test-diff-suppr/test29-suppr-0.txt: New test suppression file. * tests/data/test-diff-suppr/test29-suppr-1.txt: Likewise. * tests/data/Makefile.am: Add the new test material above to source distribution. * tests/test-diff-suppr.cc (in_out_specs): Make this test harness run over the new test input above. Signed-off-by: Dodji Seketeli <dodji@redhat.com> |
||
---|---|---|
.. | ||
data | ||
Makefile.am | ||
print-diff-tree.cc | ||
runtestcanonicalizetypes.sh.in | ||
test-abicompat.cc | ||
test-abidiff-exit.cc | ||
test-abidiff.cc | ||
test-alt-dwarf-file.cc | ||
test-core-diff.cc | ||
test-diff2.cc | ||
test-diff-dwarf-abixml.cc | ||
test-diff-dwarf.cc | ||
test-diff-filter.cc | ||
test-diff-pkg.cc | ||
test-diff-suppr.cc | ||
test-dot.cc | ||
test-ir-walker.cc | ||
test-lookup-syms.cc | ||
test-read-dwarf.cc | ||
test-read-write.cc | ||
test-svg.cc | ||
test-types-stability.cc | ||
test-utils.cc | ||
test-utils.h | ||
test-write-read-archive.cc | ||
update-test-read-dwarf-output.py |