libabigail/tests/data
Dodji Seketeli 0cf1828a90 Fix type synthesis to fix abicompat weak mode
While looking further in the issue Sinny Kumari reported, I realized
that the weak mode wasn't working in that example either.

It turned out that synthesizing qualified types was not working
because we were just looking them up in the binary, rather than
looking up the un-qualified underlying type and then synthezing the
resulting qualified type.

This patch just does that.

	* include/abg-fwd.h
	(synthesize_type_from_translation_unit): Declare new function.
	(synthesize_function_type_from_translation_unit): Make the
	translation_unit parameter non-const because the function needs to
	bind the life time of the synthesized function to the life time of
	the translation unit.  Make this function be a friend of
	abigail::ir::translation_unit.
	(synthesize_function_type_from_translation_unit):
	* src/abg-ir.cc (translation_unit::priv::synthesized_types_): New
	data member.
	(synthesize_type_from_translation_unit): Define new function.
	(synthesize_function_type_from_translation_unit): Make the
	translation_unit parameter non-const.  If the return is void, then
	take that in account carefuly.  Rather than just looking up the
	type of parameters and return value, synthesize them too,
	especially when they are qualified types.  Bind the life time of
	the synthesized function type to the lifetime of the translation
	unit.
	* tests/data/test-abicompat/test7-fn-changed-report-1.txt: New
	test reference output.
	* tests/test-abicompat.cc (in_out_spec): Run the harness on the
	exisiting test7-fn-changed-app and libtest7-fn-changed-libapp-v1
	but in weak mode this time.

Signed-off-by: Dodji Seketeli <dodji@redhat.com>
2015-07-20 17:11:32 +02:00
..
test-abicompat Fix type synthesis to fix abicompat weak mode 2015-07-20 17:11:32 +02:00
test-abidiff Adjust some tests for output changes 2015-07-09 00:10:33 +02:00
test-alt-dwarf-file
test-core-diff
test-diff-dwarf Adjust some tests for output changes 2015-07-09 00:10:33 +02:00
test-diff-filter Remove extra vertical spaces from diff report 2015-07-16 12:27:24 +02:00
test-diff-pkg Add regression tests for abipkgdiff tool 2015-07-17 10:10:21 +02:00
test-diff-suppr Support file_name_regexp and soname_regexp in supp-specs 2015-07-19 19:48:51 +02:00
test-lookup-syms
test-read-dwarf On changed fn, show symbol info when name is different from linkage name in C 2015-07-19 19:52:01 +02:00
test-read-write
test-write-read-archive
Makefile.am Fix type synthesis to fix abicompat weak mode 2015-07-20 17:11:32 +02:00