mirror of
git://sourceware.org/git/libabigail.git
synced 2024-12-22 01:40:12 +00:00
318b31db5d
It appears we were flagging too many base class changes as local. That was preventing some change category propagation through base class diff nodes. This patch fixes that. * abg-ir.cc (equals): In the overload of class_decl::base_spec, if the underlying class carries changes, then do not flag these changes as local for the class_decl::base_spec. * tests/data/test-diff-dwarf/test27-local-base-diff-v{0,1}.o: New test input binaries. * tests/data/test-diff-dwarf/test27-local-base-diff-v{0,1}.cc: Source code for the test input binaries above. * tests/data/test-diff-dwarf/test27-local-base-diff-report.txt: New test input. * tests/data/Makefile.am: Add the test inputs above to source distribution. Signed-off-by: Dodji Seketeli <dodji@redhat.com>
21 lines
171 B
C++
21 lines
171 B
C++
// Compile with:
|
|
// g++ -g -Wall -c test27-local-base-diff-v0.cc
|
|
struct base
|
|
{
|
|
int m0;
|
|
};
|
|
|
|
struct S : public base
|
|
{
|
|
int m0;
|
|
};
|
|
|
|
void
|
|
bar(base&)
|
|
{}
|
|
|
|
void
|
|
foo(S*)
|
|
{
|
|
}
|