mirror of
git://sourceware.org/git/libabigail.git
synced 2024-12-17 23:44:35 +00:00
The Git repository of the Libabigail Project
9b99a77d8a
* src/abg-ir.h (class_decl::base_spec::base_spec): Take an offset and a is_virtual flag. (class_decl::base_spec::{get_is_virtual, get_offset_in_bits}): New methods. (class_decl::has_no_base_nor_member): New method declaration.. * src/abg-ir.cc (class_decl::base_spec::base_spec): Take an offset and a is_virtual flag (class_decl::has_no_base_nor_member): Define it. * src/abg-reader.cc (read_offset_in_bits): Renamed read_var_offset_in_bits into this. (read_is_virtual): New static function. (build_class_decl): Read the 'layout-offset-in-bits' and the 'is-virtual' of the base class specifier. Adjust for the read_var_offset_in_bits -> read_offset_in_bits rename. * src/abg-writer.cc (write_layout_offset): New overload for the base class specifiers. (write_class_decl): If the class has no member or base class, make it a proper empty xml element. Write the offset and the is-virtual attribute. * tests/data/test-read-write/test20.xml: New test input data. * tests/test-read-write.cc: De-serialize the test above, serialize it back and compare that both versions are the same. |
||
---|---|---|
doc | ||
m4 | ||
src | ||
tests | ||
abigail.m4 | ||
aclocal.m4 | ||
AUTHORS | ||
ChangeLog | ||
config.guess | ||
config.h.in | ||
config.sub | ||
configure | ||
configure.ac | ||
COPYING | ||
depcomp | ||
INSTALL | ||
install-sh | ||
ltmain.sh | ||
Makefile.am | ||
Makefile.in | ||
missing | ||
NEWS | ||
README |
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 comparing two ABI Corpuses, provide detailed information about their differences, and help build tools to infer interesting conclusions about these differences.