libabigail/tests/data/test-read-dwarf/test1.abi
Dodji Seketeli 04a1e27258 Follow DW_AT_abstract_origin and add missing mangled name
* src/abg-dwarf-reader.cc (build_function_decl): Change signature
	to take function_decl to which one shall add properties that got
	added by subsequent DIEs later.
	(build_class_type_and_add_to_ir): Adjust.
	(build_function_decl): Allow adding new properties to an existing
	function_decl.  Add the mangled name in particular.
	* tests/data/test-read-dwarf/test1.abi: Update test.

Signed-off-by: Dodji Seketeli <dodji@redhat.com>
2014-03-24 12:22:05 +01:00

69 lines
5.6 KiB
Plaintext

<abi-corpus path='data/test-read-dwarf/test1'>
<abi-instr version='1.0' address-size='64' path='test1.cc'>
<class-decl name='s0' size-in-bits='384' is-struct='yes' visibility='default' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='13' column='1' id='type-id-1'>
<base-class access='public' layout-offset-in-bits='24' is-virtual='yes' type-id='type-id-2'/>
<base-class access='public' layout-offset-in-bits='32' is-virtual='yes' type-id='type-id-3'/>
<member-type access='public'>
<typedef-decl name='integer' type-id='type-id-5' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='15' column='1' id='type-id-4'/>
</member-type>
<member-type access='public'>
<typedef-decl name='byte' type-id='type-id-7' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='16' column='1' id='type-id-6'/>
</member-type>
<data-member access='public' layout-offset-in-bits='64'>
<var-decl name='m0' type-id='type-id-4' visibility='default' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='18' column='1'/>
</data-member>
<data-member access='public' layout-offset-in-bits='96'>
<var-decl name='m1' type-id='type-id-6' visibility='default' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='19' column='1'/>
</data-member>
<member-function access='public' constructor='yes'>
<function-decl name='s0' mangled-name='_ZN2s0C1Ev' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='21' column='1' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='64'>
<parameter type-id='type-id-8' is-artificial='yes'/>
<parameter type-id='type-id-5' is-artificial='yes'/>
</function-decl>
</member-function>
<member-function access='public' destructor='yes'>
<function-decl name='~s0' mangled-name='_ZN2s0D1Ev' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='27' column='1' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='64'>
<parameter type-id='type-id-8' is-artificial='yes'/>
<parameter type-id='type-id-5' is-artificial='yes'/>
</function-decl>
</member-function>
<member-function access='public'>
<function-decl name='mem_fun' mangled-name='_ZN2s07mem_funEv' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='36' column='1' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='64'>
<parameter type-id='type-id-8' is-artificial='yes'/>
<return type-id='type-id-4'/>
</function-decl>
</member-function>
</class-decl>
<class-decl name='b0' size-in-bits='128' is-struct='yes' visibility='default' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='1' column='1' id='type-id-2'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='m0' type-id='type-id-9' visibility='default' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='3' column='1'/>
</data-member>
<data-member access='public' layout-offset-in-bits='64'>
<var-decl name='m1' type-id='type-id-10' visibility='default' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='4' column='1'/>
</data-member>
</class-decl>
<type-decl name='long long int' size-in-bits='64' alignment-in-bits='64' id='type-id-9'/>
<type-decl name='char' size-in-bits='8' alignment-in-bits='8' id='type-id-10'/>
<class-decl name='b1' size-in-bits='128' is-struct='yes' visibility='default' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='7' column='1' id='type-id-3'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='m0' type-id='type-id-11' visibility='default' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='9' column='1'/>
</data-member>
<data-member access='public' layout-offset-in-bits='64'>
<var-decl name='m1' type-id='type-id-10' visibility='default' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='10' column='1'/>
</data-member>
</class-decl>
<type-decl name='double' size-in-bits='64' alignment-in-bits='64' id='type-id-11'/>
<type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-5'/>
<type-decl name='unsigned char' size-in-bits='8' alignment-in-bits='8' id='type-id-7'/>
<pointer-type-def type-id='type-id-1' size-in-bits='64' alignment-in-bits='64' id='type-id-8'/>
<reference-type-def kind='lvalue' type-id='type-id-1' size-in-bits='64' alignment-in-bits='64' id='type-id-12'/>
<qualified-type-def type-id='type-id-12' const='yes' id='type-id-13'/>
<function-decl name='foo' mangled-name='_Z3fooR2s0' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='42' column='1' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='64'>
<parameter type-id='type-id-13' name='s' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='42' column='1'/>
</function-decl>
<function-decl name='main' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='48' column='1' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='64'>
<return type-id='type-id-5'/>
</function-decl>
</abi-instr>
</abi-corpus>