libabigail/src
Dodji Seketeli ba5b4452d5 Bug 18844 - assert failure in abidw at abg-dwarf-reader.cc:6537
The DWARF reader is not scheduling a declaration-only class for
resolution when the class has member types.  When reading the code of
build_class_type_and_add_to_ir(), we see that the scheduling is done
before getting out of the function.  But then, building members of the
class can trigger another invocation of
build_class_type_and_add_to_ir() before the current invocation
returns.  In that case, the declaration-only class being built appears
as not being scheduled for resolution.  And that is what violates the
assertion that declaration-only classes should be scheduled for
resolution whenever they are used.

This patch addresses the issue by scheduling the resolution earlier, when
we know we are dealing with a declaration-only class, and before
dealing with members of that classes.

	* src/abg-dwarf-reader.cc (build_class_type_and_add_to_ir):
	Schedule declaration-only class resolution before the class
	appears as usable as to other types being built.
	* tests/data/test-read-dwarf/test12-pr18844.so: Add a new binary
	test input.
	* tests/data/test-read-dwarf/test12-pr18844.so.abi: The reference
	ABI XML output for the binary above.
	* tests/data/Makefile.am: Add the new test inputs above to the
	source distribution.
	* tests/test-read-dwarf.cc (in_out_specs): Add the new test inputs
	above to the set of input this test harness has to run over.

Signed-off-by: Dodji Seketeli <dodji@redhat.com>
2015-08-18 12:33:57 +02:00
..
abg-comp-filter.cc Fix symbols comparison 2015-06-02 00:07:02 +02:00
abg-comparison.cc Update diff stats when added symbols are removed from change report 2015-08-06 15:15:41 +02:00
abg-config.cc Update copyright years 2015-01-07 17:52:10 +01:00
abg-corpus.cc Consider default symbol versions when computing added/removed fns/vars 2015-07-24 14:04:11 +02:00
abg-diff-utils.cc Update copyright years 2015-01-07 17:52:10 +01:00
abg-dwarf-reader.cc Bug 18844 - assert failure in abidw at abg-dwarf-reader.cc:6537 2015-08-18 12:33:57 +02:00
abg-hash.cc Do not compare static data members when comparing types 2015-06-23 13:17:37 +02:00
abg-ini.cc Support specifying data member insertion in suppressions 2015-05-24 23:43:02 +02:00
abg-ir.cc Fix a thinko in language support de-serialization 2015-08-09 02:10:09 +02:00
abg-libxml-utils.cc Update copyright years 2015-01-07 17:52:10 +01:00
abg-libzip-utils.cc Update copyright years 2015-01-07 17:52:10 +01:00
abg-reader.cc Bug 18791 - libabigail fails to read the output of abidw 2015-08-09 02:11:17 +02:00
abg-tools-utils.cc Add support for .deb files to abipkgdiff 2015-08-14 13:36:23 +02:00
abg-traverse.cc Update copyright years 2015-01-07 17:52:10 +01:00
abg-viz-common.cc Update copyright years 2015-01-07 17:52:10 +01:00
abg-viz-dot.cc Update copyright years 2015-01-07 17:52:10 +01:00
abg-viz-svg.cc Update copyright years 2015-01-07 17:52:10 +01:00
abg-writer.cc Escape XML property names that were not escaped before 2015-08-18 12:07:18 +02:00
Makefile.am Expose a new libabigail::tools_utils namespace 2015-01-08 12:28:14 +01:00