mirror of
git://sourceware.org/git/libabigail.git
synced 2025-02-02 06:41:40 +00:00
The Git repository of the Libabigail Project
04690d216a
This change adds a test which exercises libabigail's handling of qualified typedefs of arrays. The base type in the test case is an array of pointers (chosen so we can also use restrict). Various typedefs and (indirect) qualifications of this type are created. In all cases, the resulting type should be an array of qualified pointers. However, abidiff reports things like 'const volatile void* const' changed to 'restrict const volatile volatile void* const' I've not attempted to check whether DWARF and ABI XML faithfully reflect the source types. There may be trouble there as well. For the record, these are the expected v0 types: A = void *[7] B = void *[7] C = void *const[7] D = void *const[7] E = void *const volatile[7] F = void *const volatile[7] G = void *const volatile restrict[7] H = void *const volatile restrict[7] The v1 types should be these plus others with extra pointer qualifiers. * tests/data/Makefile.am: Add new test files * tests/data/test-abidiff-exit/qualifier-typedef-array-v0.c: New test file. * tests/data/test-abidiff-exit/qualifier-typedef-array-v0.o: New test file. * tests/data/test-abidiff-exit/qualifier-typedef-array-v1.c: New test file. * tests/data/test-abidiff-exit/qualifier-typedef-array-v1.o: New test file. * tests/data/test-abidiff-exit/qualifier-typedef-array-report-0.txt: Plain diff report. * tests/data/test-abidiff-exit/qualifier-typedef-array-report-1.txt: Harmless diff report. * tests/data/test-abidiff-exit/qualifier-typedef-array-report-2.txt: Leaf changes report. * tests/data/test-abidiff-exit/qualifier-typedef-array-report-3.txt: Harmless leaf changes report. * tests/test-abidiff-exit.cc: Run new test. Signed-off-by: Giuliano Procida <gprocida@google.com> |
||
---|---|---|
autoconf-archive | ||
bash-completion | ||
doc | ||
include | ||
m4 | ||
relicensing-scripts | ||
scripts | ||
src | ||
tests | ||
tools | ||
.clang-format | ||
.gitignore | ||
abigail.m4 | ||
AUTHORS | ||
ChangeLog | ||
COMMIT-LOG-GUIDELINES | ||
COMPILING | ||
configure.ac | ||
CONTRIBUTING | ||
default.abignore | ||
gen-changelog.py | ||
install-sh | ||
libabigail.pc.in | ||
license-change-2020.txt | ||
LICENSE.txt | ||
ltmain.sh | ||
Makefile.am | ||
NEWS | ||
README | ||
release-text-template.txt | ||
update-copyright.sh | ||
VISIBILITY |
This is the Application Binary Interface Generic Analysis and Instrumentation Library. It aims at constructing, manipulating, serializing and de-serializing ABI-relevant artifacts. The set of artifacts that we are intersted is made of quantities like types, variable, fonctions and declarations of a given library or program. For a given library or program this set of quantities is called an ABI corpus. This library aims at (among other things) providing a way to compare two ABI Corpora (apparently the plural of corpus is copora, heh, that's cool), provide detailed information about their differences, and help build tools to infer interesting conclusions about these differences. You are welcome to contribute to this project after reading the files CONTRIBUTING and COMMIT-LOG-GUIDELINES files in the source tree. Communicating with the maintainers of this project -- including sending patches to be include to the source code -- happens via email at libabigail@sourceware.org.