1<abi-corpus version='2.0' architecture='elf-amd-x86_64'>
2  <elf-function-symbols>
3    <!-- foo(S&) -->
4    <elf-symbol name='_Z3fooR1S' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
5  </elf-function-symbols>
6  <abi-instr address-size='64' path='test-anonymous-members-0.cc' comp-dir-path='/home/dodji/git/libabigail/fixes/tests/data/test-annotate' language='LANG_C_plus_plus'>
7    <!-- char -->
8    <type-decl name='char' size-in-bits='8' id='type-id-1'/>
9    <!-- double -->
10    <type-decl name='double' size-in-bits='64' id='type-id-2'/>
11    <!-- int -->
12    <type-decl name='int' size-in-bits='32' id='type-id-3'/>
13    <!-- unnamed&#45;enum&#45;underlying&#45;type&#45;32 -->
14    <type-decl name='unnamed-enum-underlying-type-32' is-anonymous='yes' size-in-bits='32' alignment-in-bits='32' id='type-id-4'/>
15    <!-- unsigned int -->
16    <type-decl name='unsigned int' size-in-bits='32' id='type-id-5'/>
17    <!-- void -->
18    <type-decl name='void' id='type-id-6'/>
19    <!-- struct S -->
20    <class-decl name='S' size-in-bits='256' is-struct='yes' visibility='default' filepath='/home/dodji/git/libabigail/fixes/tests/data/test-annotate/test-anonymous-members-0.cc' line='1' column='1' id='type-id-7'>
21      <member-type access='public'>
22        <!-- struct {int m;} -->
23        <class-decl name='__anonymous_struct__' size-in-bits='32' is-struct='yes' is-anonymous='yes' visibility='default' filepath='/home/dodji/git/libabigail/fixes/tests/data/test-annotate/test-anonymous-members-0.cc' line='4' column='1' id='type-id-8'>
24          <data-member access='public' layout-offset-in-bits='0'>
25            <!-- int m -->
26            <var-decl name='m' type-id='type-id-3' visibility='default' filepath='/home/dodji/git/libabigail/fixes/tests/data/test-annotate/test-anonymous-members-0.cc' line='5' column='1'/>
27          </data-member>
28        </class-decl>
29      </member-type>
30      <member-type access='public'>
31        <!-- struct {char bar;} -->
32        <class-decl name='__anonymous_struct__1' size-in-bits='8' is-struct='yes' is-anonymous='yes' visibility='default' filepath='/home/dodji/git/libabigail/fixes/tests/data/test-annotate/test-anonymous-members-0.cc' line='9' column='1' id='type-id-9'>
33          <data-member access='public' layout-offset-in-bits='0'>
34            <!-- char bar -->
35            <var-decl name='bar' type-id='type-id-1' visibility='default' filepath='/home/dodji/git/libabigail/fixes/tests/data/test-annotate/test-anonymous-members-0.cc' line='10' column='1'/>
36          </data-member>
37        </class-decl>
38      </member-type>
39      <member-type access='public'>
40        <!-- struct {char baz;} -->
41        <class-decl name='__anonymous_struct__2' size-in-bits='8' is-struct='yes' is-anonymous='yes' visibility='default' filepath='/home/dodji/git/libabigail/fixes/tests/data/test-annotate/test-anonymous-members-0.cc' line='14' column='1' id='type-id-10'>
42          <data-member access='public' layout-offset-in-bits='0'>
43            <!-- char baz -->
44            <var-decl name='baz' type-id='type-id-1' visibility='default' filepath='/home/dodji/git/libabigail/fixes/tests/data/test-annotate/test-anonymous-members-0.cc' line='15' column='1'/>
45          </data-member>
46        </class-decl>
47      </member-type>
48      <member-type access='public'>
49        <!-- enum S::__anonymous_enum__ -->
50        <enum-decl name='__anonymous_enum__' is-anonymous='yes' filepath='/home/dodji/git/libabigail/fixes/tests/data/test-annotate/test-anonymous-members-0.cc' line='18' column='1' id='type-id-11'>
51          <underlying-type type-id='type-id-4'/>
52          <enumerator name='one' value='0'/>
53          <enumerator name='two' value='1'/>
54        </enum-decl>
55      </member-type>
56      <member-type access='public'>
57        <!-- enum S::__anonymous_enum__1 -->
58        <enum-decl name='__anonymous_enum__1' is-anonymous='yes' filepath='/home/dodji/git/libabigail/fixes/tests/data/test-annotate/test-anonymous-members-0.cc' line='20' column='1' id='type-id-12'>
59          <underlying-type type-id='type-id-4'/>
60          <enumerator name='three' value='0'/>
61          <enumerator name='four' value='1'/>
62        </enum-decl>
63      </member-type>
64      <member-type access='public'>
65        <!-- enum S::__anonymous_enum__2 -->
66        <enum-decl name='__anonymous_enum__2' is-anonymous='yes' filepath='/home/dodji/git/libabigail/fixes/tests/data/test-annotate/test-anonymous-members-0.cc' line='22' column='1' id='type-id-13'>
67          <underlying-type type-id='type-id-4'/>
68          <enumerator name='five' value='0'/>
69          <enumerator name='six' value='1'/>
70        </enum-decl>
71      </member-type>
72      <member-type access='public'>
73        <!-- union {int a; char b;} -->
74        <union-decl name='__anonymous_union__' size-in-bits='32' is-anonymous='yes' visibility='default' filepath='/home/dodji/git/libabigail/fixes/tests/data/test-annotate/test-anonymous-members-0.cc' line='24' column='1' id='type-id-14'>
75          <data-member access='public'>
76            <!-- int a -->
77            <var-decl name='a' type-id='type-id-3' visibility='default' filepath='/home/dodji/git/libabigail/fixes/tests/data/test-annotate/test-anonymous-members-0.cc' line='24' column='1'/>
78          </data-member>
79          <data-member access='public'>
80            <!-- char b -->
81            <var-decl name='b' type-id='type-id-1' visibility='default' filepath='/home/dodji/git/libabigail/fixes/tests/data/test-annotate/test-anonymous-members-0.cc' line='24' column='1'/>
82          </data-member>
83        </union-decl>
84      </member-type>
85      <member-type access='public'>
86        <!-- union {unsigned int c; double d;} -->
87        <union-decl name='__anonymous_union__1' size-in-bits='64' is-anonymous='yes' visibility='default' filepath='/home/dodji/git/libabigail/fixes/tests/data/test-annotate/test-anonymous-members-0.cc' line='26' column='1' id='type-id-15'>
88          <data-member access='public'>
89            <!-- unsigned int c -->
90            <var-decl name='c' type-id='type-id-5' visibility='default' filepath='/home/dodji/git/libabigail/fixes/tests/data/test-annotate/test-anonymous-members-0.cc' line='26' column='1'/>
91          </data-member>
92          <data-member access='public'>
93            <!-- double d -->
94            <var-decl name='d' type-id='type-id-2' visibility='default' filepath='/home/dodji/git/libabigail/fixes/tests/data/test-annotate/test-anonymous-members-0.cc' line='26' column='1'/>
95          </data-member>
96        </union-decl>
97      </member-type>
98      <data-member access='public' layout-offset-in-bits='0'>
99        <!-- struct {int m;} -->
100        <var-decl name='' type-id='type-id-8' visibility='default'/>
101      </data-member>
102      <data-member access='public' layout-offset-in-bits='32'>
103        <!-- struct {char bar;} -->
104        <var-decl name='' type-id='type-id-9' visibility='default'/>
105      </data-member>
106      <data-member access='public' layout-offset-in-bits='40'>
107        <!-- struct {char baz;} -->
108        <var-decl name='' type-id='type-id-10' visibility='default'/>
109      </data-member>
110      <data-member access='public' layout-offset-in-bits='64'>
111        <!-- S::__anonymous_enum__ S::e1 -->
112        <var-decl name='e1' type-id='type-id-11' visibility='default' filepath='/home/dodji/git/libabigail/fixes/tests/data/test-annotate/test-anonymous-members-0.cc' line='18' column='1'/>
113      </data-member>
114      <data-member access='public' layout-offset-in-bits='96'>
115        <!-- S::__anonymous_enum__1 S::e2 -->
116        <var-decl name='e2' type-id='type-id-12' visibility='default' filepath='/home/dodji/git/libabigail/fixes/tests/data/test-annotate/test-anonymous-members-0.cc' line='20' column='1'/>
117      </data-member>
118      <data-member access='public' layout-offset-in-bits='128'>
119        <!-- S::__anonymous_enum__2 S::e3 -->
120        <var-decl name='e3' type-id='type-id-13' visibility='default' filepath='/home/dodji/git/libabigail/fixes/tests/data/test-annotate/test-anonymous-members-0.cc' line='22' column='1'/>
121      </data-member>
122      <data-member access='public' layout-offset-in-bits='160'>
123        <!-- union {int a; char b;} -->
124        <var-decl name='' type-id='type-id-14' visibility='default'/>
125      </data-member>
126      <data-member access='public' layout-offset-in-bits='192'>
127        <!-- union {unsigned int c; double d;} -->
128        <var-decl name='' type-id='type-id-15' visibility='default'/>
129      </data-member>
130    </class-decl>
131    <!-- S& -->
132    <qualified-type-def type-id='type-id-16' id='type-id-17'/>
133    <!-- S& -->
134    <reference-type-def kind='lvalue' type-id='type-id-7' size-in-bits='64' id='type-id-16'/>
135    <!-- void foo(S&) -->
136    <function-decl name='foo' mangled-name='_Z3fooR1S' filepath='/home/dodji/git/libabigail/fixes/tests/data/test-annotate/test-anonymous-members-0.cc' line='30' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='_Z3fooR1S'>
137      <!-- parameter of type 'S&' -->
138      <parameter type-id='type-id-17'/>
139      <!-- void -->
140      <return type-id='type-id-6'/>
141    </function-decl>
142  </abi-instr>
143</abi-corpus>
144