mirror of
git://sourceware.org/git/libabigail.git
synced 2025-01-11 03:49:29 +00:00
The Git repository of the Libabigail Project
fcc7f02904
When the canonical type of the scope type T a member type MT doesn't contain MT, then emitting T doesn't (obviously) emit MT. The ABIXML writer detects that MT wasn't emitted, but then mistakenly emits MT in the global scope, making MT lose its T scope. When the ABIXML is read back again, MT mistakenly becomes a non-qualified type, leading to a self-comparison error. This issue appears when self comparing gcc-gnat on fc36 on armv7hl at least. This patch fixes the issue by making write_decl_in_scope detect that emitting T hasn't emitted MT. In that case, the function still needs to emit the tags of the scope of MT and then emit MT. * src/abg-writer.cc (write_decl_in_scope): Detect that emitting a scope type T doesn't emit a particular member type MT that we are looking at. In that case, the function still needs to emit the tags of the scope of MT and then emit MT even though T was just emitted. Signed-off-by: Dodji Seketeli <dodji@redhat.com> |
||
---|---|---|
.github | ||
autoconf-archive | ||
bash-completion | ||
big-tests@4b12e5e53f | ||
doc | ||
docker | ||
include | ||
m4 | ||
relicensing-scripts | ||
scripts | ||
src | ||
tests | ||
tools | ||
.clang-format | ||
.gitignore | ||
.gitmodules | ||
.mailmap | ||
abigail.m4 | ||
ABIXML-FORMAT-VERSIONS | ||
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 | ||
README-DOCKER.md | ||
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, functions 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.