@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/PR22015-libboost_iostreams.so'>
+<abi-corpus version='2.1'>
<elf-needed>
<dependency name='build/cached/third_party/boost-1.60.0/libboost_system.so'/>
<dependency name='libm.so.6'/>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/PR22122-libftdc.so'>
+<abi-corpus version='2.1'>
<elf-needed>
<dependency name='build/cached/third_party/s2/libs2.so'/>
<dependency name='build/cached/third_party/s2/util/math/libmath.so'/>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/PR24378-fn-is-not-scope.o'>
+<abi-corpus version='2.1'>
<elf-function-symbols>
<elf-symbol name='_ZN4stac14buggy_functionEPFvPFfiiEE' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/PR25007-sdhci.ko'>
+<abi-corpus version='2.1'>
<elf-function-symbols>
<elf-symbol name='__sdhci_add_host' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes' crc='0x74ae518'/>
<elf-symbol name='__sdhci_read_caps' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes' crc='0x711f65c'/>
@@ -10107,10 +10107,19 @@
<parameter type-id='type-id-1183'/>
<return type-id='type-id-165'/>
</function-type>
+ <function-type size-in-bits='64' id='type-id-1112'>
+ <parameter type-id='type-id-614'/>
+ <parameter type-id='type-id-279'/>
+ <return type-id='type-id-165'/>
+ </function-type>
<function-type size-in-bits='64' id='type-id-1114'>
<parameter type-id='type-id-125'/>
<return type-id='type-id-165'/>
</function-type>
+ <function-type size-in-bits='64' id='type-id-1153'>
+ <parameter type-id='type-id-279'/>
+ <return type-id='type-id-282'/>
+ </function-type>
<function-type size-in-bits='64' id='type-id-1184'>
<parameter type-id='type-id-238'/>
<parameter type-id='type-id-1138'/>
@@ -10138,6 +10147,10 @@
<parameter type-id='type-id-51'/>
<return type-id='type-id-1195'/>
</function-type>
+ <function-type size-in-bits='64' id='type-id-1198'>
+ <parameter type-id='type-id-538'/>
+ <return type-id='type-id-530'/>
+ </function-type>
<function-type size-in-bits='64' id='type-id-1199'>
<parameter type-id='type-id-1357'/>
<return type-id='type-id-635'/>
@@ -10164,6 +10177,9 @@
<parameter type-id='type-id-241'/>
<return type-id='type-id-51'/>
</function-type>
+ <function-type size-in-bits='64' id='type-id-1220'>
+ <return type-id='type-id-53'/>
+ </function-type>
<function-type size-in-bits='64' id='type-id-1221'>
<parameter type-id='type-id-374'/>
<parameter type-id='type-id-139'/>
@@ -10181,6 +10197,16 @@
<parameter type-id='type-id-1553'/>
<return type-id='type-id-53'/>
</function-type>
+ <function-type size-in-bits='64' id='type-id-1224'>
+ <parameter type-id='type-id-24'/>
+ <parameter type-id='type-id-1143'/>
+ <return type-id='type-id-53'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-1225'>
+ <parameter type-id='type-id-165'/>
+ <parameter type-id='type-id-1143'/>
+ <return type-id='type-id-53'/>
+ </function-type>
<function-type size-in-bits='64' id='type-id-1226'>
<parameter type-id='type-id-1118'/>
<return type-id='type-id-53'/>
@@ -10370,6 +10396,13 @@
<parameter type-id='type-id-411'/>
<return type-id='type-id-53'/>
</function-type>
+ <function-type size-in-bits='64' id='type-id-1256'>
+ <parameter type-id='type-id-335'/>
+ <parameter type-id='type-id-279'/>
+ <parameter type-id='type-id-1093'/>
+ <parameter type-id='type-id-125'/>
+ <return type-id='type-id-53'/>
+ </function-type>
<function-type size-in-bits='64' id='type-id-1257'>
<parameter type-id='type-id-335'/>
<parameter type-id='type-id-67'/>
@@ -10519,6 +10552,31 @@
<parameter type-id='type-id-53'/>
<return type-id='type-id-53'/>
</function-type>
+ <function-type size-in-bits='64' id='type-id-1283'>
+ <parameter type-id='type-id-559'/>
+ <return type-id='type-id-53'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-1284'>
+ <parameter type-id='type-id-559'/>
+ <parameter type-id='type-id-165'/>
+ <parameter type-id='type-id-332'/>
+ <return type-id='type-id-53'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-1285'>
+ <parameter type-id='type-id-559'/>
+ <parameter type-id='type-id-559'/>
+ <parameter type-id='type-id-165'/>
+ <return type-id='type-id-53'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-1286'>
+ <parameter type-id='type-id-1343'/>
+ <return type-id='type-id-53'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-1287'>
+ <parameter type-id='type-id-1343'/>
+ <parameter type-id='type-id-125'/>
+ <return type-id='type-id-53'/>
+ </function-type>
<function-type size-in-bits='64' id='type-id-1288'>
<parameter type-id='type-id-225'/>
<parameter type-id='type-id-1151'/>
@@ -10531,6 +10589,17 @@
<parameter type-id='type-id-172'/>
<return type-id='type-id-53'/>
</function-type>
+ <function-type size-in-bits='64' id='type-id-1290'>
+ <parameter type-id='type-id-614'/>
+ <parameter type-id='type-id-279'/>
+ <return type-id='type-id-53'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-1292'>
+ <parameter type-id='type-id-614'/>
+ <parameter type-id='type-id-279'/>
+ <parameter type-id='type-id-1350'/>
+ <return type-id='type-id-53'/>
+ </function-type>
<function-type size-in-bits='64' id='type-id-1294'>
<parameter type-id='type-id-1357'/>
<return type-id='type-id-53'/>
@@ -10591,6 +10660,10 @@
<parameter type-id='type-id-100'/>
<return type-id='type-id-53'/>
</function-type>
+ <function-type size-in-bits='64' id='type-id-1305'>
+ <parameter type-id='type-id-274'/>
+ <return type-id='type-id-53'/>
+ </function-type>
<function-type size-in-bits='64' id='type-id-1306'>
<parameter type-id='type-id-826'/>
<parameter type-id='type-id-114'/>
@@ -10631,6 +10704,22 @@
<parameter type-id='type-id-238'/>
<return type-id='type-id-53'/>
</function-type>
+ <function-type size-in-bits='64' id='type-id-1314'>
+ <parameter type-id='type-id-577'/>
+ <parameter type-id='type-id-559'/>
+ <parameter type-id='type-id-557'/>
+ <return type-id='type-id-53'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-1315'>
+ <parameter type-id='type-id-577'/>
+ <parameter type-id='type-id-557'/>
+ <return type-id='type-id-53'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-1316'>
+ <parameter type-id='type-id-577'/>
+ <parameter type-id='type-id-127'/>
+ <return type-id='type-id-53'/>
+ </function-type>
<function-type size-in-bits='64' id='type-id-1317'>
<parameter type-id='type-id-241'/>
<return type-id='type-id-53'/>
@@ -10746,6 +10835,10 @@
<parameter type-id='type-id-114'/>
<return type-id='type-id-67'/>
</function-type>
+ <function-type size-in-bits='64' id='type-id-1363'>
+ <parameter type-id='type-id-1398'/>
+ <return type-id='type-id-67'/>
+ </function-type>
<function-type size-in-bits='64' id='type-id-1364'>
<parameter type-id='type-id-241'/>
<parameter type-id='type-id-1409'/>
@@ -10770,6 +10863,14 @@
<parameter type-id='type-id-1384'/>
<return type-id='type-id-1085'/>
</function-type>
+ <function-type size-in-bits='64' id='type-id-1427'>
+ <parameter type-id='type-id-1343'/>
+ <parameter type-id='type-id-1384'/>
+ <return type-id='type-id-1085'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-1428'>
+ <return type-id='type-id-172'/>
+ </function-type>
<function-type size-in-bits='64' id='type-id-1429'>
<parameter type-id='type-id-515'/>
<return type-id='type-id-172'/>
@@ -10815,6 +10916,9 @@
<parameter type-id='type-id-399'/>
<return type-id='type-id-399'/>
</function-type>
+ <function-type size-in-bits='64' id='type-id-1437'>
+ <return type-id='type-id-533'/>
+ </function-type>
<function-type size-in-bits='64' id='type-id-1438'>
<parameter type-id='type-id-335'/>
<parameter type-id='type-id-333'/>
@@ -10859,6 +10963,15 @@
<parameter type-id='type-id-1360'/>
<return type-id='type-id-1027'/>
</function-type>
+ <function-type size-in-bits='64' id='type-id-1445'>
+ <parameter type-id='type-id-335'/>
+ <parameter type-id='type-id-279'/>
+ <parameter type-id='type-id-1093'/>
+ <parameter type-id='type-id-24'/>
+ <parameter type-id='type-id-333'/>
+ <parameter type-id='type-id-176'/>
+ <return type-id='type-id-1027'/>
+ </function-type>
<function-type size-in-bits='64' id='type-id-1446'>
<parameter type-id='type-id-335'/>
<parameter type-id='type-id-1360'/>
@@ -10885,11 +10998,44 @@
<parameter type-id='type-id-113'/>
<return type-id='type-id-1027'/>
</function-type>
+ <function-type size-in-bits='64' id='type-id-1449'>
+ <parameter type-id='type-id-1343'/>
+ <parameter type-id='type-id-24'/>
+ <parameter type-id='type-id-176'/>
+ <parameter type-id='type-id-333'/>
+ <return type-id='type-id-1027'/>
+ </function-type>
<function-type size-in-bits='64' id='type-id-1450'>
<parameter type-id='type-id-1347'/>
<parameter type-id='type-id-1339'/>
<return type-id='type-id-1027'/>
</function-type>
+ <function-type size-in-bits='64' id='type-id-1451'>
+ <parameter type-id='type-id-279'/>
+ <parameter type-id='type-id-1088'/>
+ <parameter type-id='type-id-24'/>
+ <return type-id='type-id-1027'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-1452'>
+ <parameter type-id='type-id-279'/>
+ <parameter type-id='type-id-1088'/>
+ <parameter type-id='type-id-165'/>
+ <parameter type-id='type-id-176'/>
+ <return type-id='type-id-1027'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-1453'>
+ <parameter type-id='type-id-790'/>
+ <parameter type-id='type-id-1369'/>
+ <parameter type-id='type-id-24'/>
+ <return type-id='type-id-1027'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-1454'>
+ <parameter type-id='type-id-790'/>
+ <parameter type-id='type-id-1369'/>
+ <parameter type-id='type-id-165'/>
+ <parameter type-id='type-id-176'/>
+ <return type-id='type-id-1027'/>
+ </function-type>
<function-type size-in-bits='64' id='type-id-1455'>
<parameter type-id='type-id-387'/>
<parameter type-id='type-id-335'/>
@@ -10923,6 +11069,18 @@
<parameter type-id='type-id-261'/>
<return type-id='type-id-104'/>
</function-type>
+ <function-type size-in-bits='64' id='type-id-1460'>
+ <parameter type-id='type-id-279'/>
+ <parameter type-id='type-id-1088'/>
+ <parameter type-id='type-id-53'/>
+ <return type-id='type-id-332'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-1461'>
+ <parameter type-id='type-id-279'/>
+ <parameter type-id='type-id-1093'/>
+ <parameter type-id='type-id-53'/>
+ <return type-id='type-id-332'/>
+ </function-type>
<function-type size-in-bits='64' id='type-id-1462'>
<parameter type-id='type-id-1476'/>
<return type-id='type-id-718'/>
@@ -10936,6 +11094,14 @@
<parameter type-id='type-id-1402'/>
<return type-id='type-id-113'/>
</function-type>
+ <function-type size-in-bits='64' id='type-id-1468'>
+ <parameter type-id='type-id-335'/>
+ <parameter type-id='type-id-114'/>
+ <parameter type-id='type-id-114'/>
+ <parameter type-id='type-id-114'/>
+ <parameter type-id='type-id-114'/>
+ <return type-id='type-id-114'/>
+ </function-type>
<function-type size-in-bits='64' id='type-id-1469'>
<parameter type-id='type-id-1410'/>
<parameter type-id='type-id-1409'/>
@@ -10949,6 +11115,13 @@
<parameter type-id='type-id-1379'/>
<return type-id='type-id-841'/>
</function-type>
+ <function-type size-in-bits='64' id='type-id-1073'>
+ <return type-id='type-id-1538'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-1477'>
+ <parameter type-id='type-id-899'/>
+ <return type-id='type-id-1538'/>
+ </function-type>
<function-type size-in-bits='64' id='type-id-1478'>
<parameter type-id='type-id-308'/>
<return type-id='type-id-1538'/>
@@ -11075,12 +11248,26 @@
<parameter type-id='type-id-53'/>
<return type-id='type-id-1538'/>
</function-type>
+ <function-type size-in-bits='64' id='type-id-1501'>
+ <parameter type-id='type-id-1343'/>
+ <return type-id='type-id-1538'/>
+ </function-type>
<function-type size-in-bits='64' id='type-id-1502'>
<parameter type-id='type-id-1347'/>
<parameter type-id='type-id-67'/>
<parameter type-id='type-id-67'/>
<return type-id='type-id-1538'/>
</function-type>
+ <function-type size-in-bits='64' id='type-id-1503'>
+ <parameter type-id='type-id-279'/>
+ <return type-id='type-id-1538'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-1504'>
+ <parameter type-id='type-id-279'/>
+ <parameter type-id='type-id-1356'/>
+ <parameter type-id='type-id-1346'/>
+ <return type-id='type-id-1538'/>
+ </function-type>
<function-type size-in-bits='64' id='type-id-1505'>
<parameter type-id='type-id-1357'/>
<return type-id='type-id-1538'/>
@@ -11124,6 +11311,15 @@
<parameter type-id='type-id-75'/>
<return type-id='type-id-1538'/>
</function-type>
+ <function-type size-in-bits='64' id='type-id-1514'>
+ <parameter type-id='type-id-274'/>
+ <return type-id='type-id-1538'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-1515'>
+ <parameter type-id='type-id-274'/>
+ <parameter type-id='type-id-165'/>
+ <return type-id='type-id-1538'/>
+ </function-type>
<function-type size-in-bits='64' id='type-id-1516'>
<parameter type-id='type-id-139'/>
<return type-id='type-id-1538'/>
@@ -11192,10 +11388,19 @@
<parameter type-id='type-id-335'/>
<return type-id='type-id-1538'/>
</function-type>
+ <function-type size-in-bits='64' id='type-id-1528'>
+ <parameter type-id='type-id-577'/>
+ <parameter type-id='type-id-127'/>
+ <return type-id='type-id-1538'/>
+ </function-type>
<function-type size-in-bits='64' id='type-id-1529'>
<parameter type-id='type-id-241'/>
<return type-id='type-id-1538'/>
</function-type>
+ <function-type size-in-bits='64' id='type-id-1530'>
+ <parameter type-id='type-id-1418'/>
+ <return type-id='type-id-1538'/>
+ </function-type>
<function-type size-in-bits='64' id='type-id-1531'>
<parameter type-id='type-id-399'/>
<return type-id='type-id-1538'/>
@@ -11210,6 +11415,10 @@
<parameter type-id='type-id-114'/>
<return type-id='type-id-1538'/>
</function-type>
+ <function-type size-in-bits='64' id='type-id-1534'>
+ <parameter type-id='type-id-127'/>
+ <return type-id='type-id-1538'/>
+ </function-type>
<function-type size-in-bits='64' id='type-id-1535'>
<parameter type-id='type-id-127'/>
<parameter type-id='type-id-1204'/>
@@ -11224,6 +11433,9 @@
<parameter type-id='type-id-1550'/>
<return type-id='type-id-1538'/>
</function-type>
+ <function-type size-in-bits='64' id='type-id-1539'>
+ <return type-id='type-id-127'/>
+ </function-type>
<function-type size-in-bits='64' id='type-id-1540'>
<parameter type-id='type-id-515'/>
<parameter type-id='type-id-1123'/>
@@ -11241,223 +11453,6 @@
<parameter type-id='type-id-114'/>
<return type-id='type-id-127'/>
</function-type>
- <function-type size-in-bits='64' id='type-id-1547'>
- <parameter type-id='type-id-127'/>
- <return type-id='type-id-127'/>
- </function-type>
- <type-decl name='void' id='type-id-1538'/>
- <function-type size-in-bits='64' id='type-id-1112'>
- <parameter type-id='type-id-614'/>
- <parameter type-id='type-id-279'/>
- <return type-id='type-id-165'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1153'>
- <parameter type-id='type-id-279'/>
- <return type-id='type-id-282'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1198'>
- <parameter type-id='type-id-538'/>
- <return type-id='type-id-530'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1220'>
- <return type-id='type-id-53'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1224'>
- <parameter type-id='type-id-24'/>
- <parameter type-id='type-id-1143'/>
- <return type-id='type-id-53'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1225'>
- <parameter type-id='type-id-165'/>
- <parameter type-id='type-id-1143'/>
- <return type-id='type-id-53'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1256'>
- <parameter type-id='type-id-335'/>
- <parameter type-id='type-id-279'/>
- <parameter type-id='type-id-1093'/>
- <parameter type-id='type-id-125'/>
- <return type-id='type-id-53'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1283'>
- <parameter type-id='type-id-559'/>
- <return type-id='type-id-53'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1284'>
- <parameter type-id='type-id-559'/>
- <parameter type-id='type-id-165'/>
- <parameter type-id='type-id-332'/>
- <return type-id='type-id-53'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1285'>
- <parameter type-id='type-id-559'/>
- <parameter type-id='type-id-559'/>
- <parameter type-id='type-id-165'/>
- <return type-id='type-id-53'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1286'>
- <parameter type-id='type-id-1343'/>
- <return type-id='type-id-53'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1287'>
- <parameter type-id='type-id-1343'/>
- <parameter type-id='type-id-125'/>
- <return type-id='type-id-53'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1290'>
- <parameter type-id='type-id-614'/>
- <parameter type-id='type-id-279'/>
- <return type-id='type-id-53'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1292'>
- <parameter type-id='type-id-614'/>
- <parameter type-id='type-id-279'/>
- <parameter type-id='type-id-1350'/>
- <return type-id='type-id-53'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1305'>
- <parameter type-id='type-id-274'/>
- <return type-id='type-id-53'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1314'>
- <parameter type-id='type-id-577'/>
- <parameter type-id='type-id-559'/>
- <parameter type-id='type-id-557'/>
- <return type-id='type-id-53'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1315'>
- <parameter type-id='type-id-577'/>
- <parameter type-id='type-id-557'/>
- <return type-id='type-id-53'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1316'>
- <parameter type-id='type-id-577'/>
- <parameter type-id='type-id-127'/>
- <return type-id='type-id-53'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1363'>
- <parameter type-id='type-id-1398'/>
- <return type-id='type-id-67'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1427'>
- <parameter type-id='type-id-1343'/>
- <parameter type-id='type-id-1384'/>
- <return type-id='type-id-1085'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1428'>
- <return type-id='type-id-172'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1437'>
- <return type-id='type-id-533'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1445'>
- <parameter type-id='type-id-335'/>
- <parameter type-id='type-id-279'/>
- <parameter type-id='type-id-1093'/>
- <parameter type-id='type-id-24'/>
- <parameter type-id='type-id-333'/>
- <parameter type-id='type-id-176'/>
- <return type-id='type-id-1027'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1449'>
- <parameter type-id='type-id-1343'/>
- <parameter type-id='type-id-24'/>
- <parameter type-id='type-id-176'/>
- <parameter type-id='type-id-333'/>
- <return type-id='type-id-1027'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1451'>
- <parameter type-id='type-id-279'/>
- <parameter type-id='type-id-1088'/>
- <parameter type-id='type-id-24'/>
- <return type-id='type-id-1027'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1452'>
- <parameter type-id='type-id-279'/>
- <parameter type-id='type-id-1088'/>
- <parameter type-id='type-id-165'/>
- <parameter type-id='type-id-176'/>
- <return type-id='type-id-1027'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1453'>
- <parameter type-id='type-id-790'/>
- <parameter type-id='type-id-1369'/>
- <parameter type-id='type-id-24'/>
- <return type-id='type-id-1027'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1454'>
- <parameter type-id='type-id-790'/>
- <parameter type-id='type-id-1369'/>
- <parameter type-id='type-id-165'/>
- <parameter type-id='type-id-176'/>
- <return type-id='type-id-1027'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1460'>
- <parameter type-id='type-id-279'/>
- <parameter type-id='type-id-1088'/>
- <parameter type-id='type-id-53'/>
- <return type-id='type-id-332'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1461'>
- <parameter type-id='type-id-279'/>
- <parameter type-id='type-id-1093'/>
- <parameter type-id='type-id-53'/>
- <return type-id='type-id-332'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1468'>
- <parameter type-id='type-id-335'/>
- <parameter type-id='type-id-114'/>
- <parameter type-id='type-id-114'/>
- <parameter type-id='type-id-114'/>
- <parameter type-id='type-id-114'/>
- <return type-id='type-id-114'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1073'>
- <return type-id='type-id-1538'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1477'>
- <parameter type-id='type-id-899'/>
- <return type-id='type-id-1538'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1501'>
- <parameter type-id='type-id-1343'/>
- <return type-id='type-id-1538'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1503'>
- <parameter type-id='type-id-279'/>
- <return type-id='type-id-1538'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1504'>
- <parameter type-id='type-id-279'/>
- <parameter type-id='type-id-1356'/>
- <parameter type-id='type-id-1346'/>
- <return type-id='type-id-1538'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1514'>
- <parameter type-id='type-id-274'/>
- <return type-id='type-id-1538'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1515'>
- <parameter type-id='type-id-274'/>
- <parameter type-id='type-id-165'/>
- <return type-id='type-id-1538'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1528'>
- <parameter type-id='type-id-577'/>
- <parameter type-id='type-id-127'/>
- <return type-id='type-id-1538'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1530'>
- <parameter type-id='type-id-1418'/>
- <return type-id='type-id-1538'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1534'>
- <parameter type-id='type-id-127'/>
- <return type-id='type-id-1538'/>
- </function-type>
- <function-type size-in-bits='64' id='type-id-1539'>
- <return type-id='type-id-127'/>
- </function-type>
<function-type size-in-bits='64' id='type-id-1543'>
<parameter type-id='type-id-279'/>
<return type-id='type-id-127'/>
@@ -11477,48 +11472,10 @@
<parameter type-id='type-id-1412'/>
<return type-id='type-id-127'/>
</function-type>
- </abi-instr>
- <abi-instr address-size='64' path='drivers/mmc/host/sdhci.mod.c' comp-dir-path='/ws/android/kernel/aosp/common-mainline/out/android-mainline/common' language='LANG_C89'>
- <class-decl name='anon_vma' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1555'/>
- <class-decl name='audit_context' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1556'/>
- <class-decl name='backing_dev_info' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1557'/>
- <class-decl name='bio_list' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1558'/>
- <class-decl name='blk_plug' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1559'/>
- <class-decl name='capture_control' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1560'/>
- <class-decl name='cfs_rq' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1561'/>
- <class-decl name='files_struct' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1562'/>
- <class-decl name='fs_struct' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1563'/>
- <class-decl name='ftrace_ret_stack' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1564'/>
- <class-decl name='kernfs_iattrs' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1565'/>
- <class-decl name='kernfs_open_node' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1566'/>
- <class-decl name='kioctx_table' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1567'/>
- <class-decl name='kmem_cache' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1568'/>
- <class-decl name='linux_binfmt' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1569'/>
- <class-decl name='mem_cgroup' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1570'/>
- <class-decl name='module_notes_attrs' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1571'/>
- <class-decl name='module_param_attrs' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1572'/>
- <class-decl name='module_sect_attrs' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1573'/>
- <class-decl name='nameidata' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1574'/>
- <class-decl name='perf_event' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1575'/>
- <class-decl name='pipe_inode_info' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1576'/>
- <class-decl name='poll_table_struct' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1577'/>
- <class-decl name='pollfd' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1578'/>
- <class-decl name='rcu_node' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1579'/>
- <class-decl name='reclaim_state' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1580'/>
- <class-decl name='request_queue' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1581'/>
- <class-decl name='rt_mutex_waiter' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1582'/>
- <class-decl name='rt_rq' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1583'/>
- <class-decl name='sched_class' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1584'/>
- <class-decl name='seccomp_filter' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1585'/>
- <class-decl name='seq_file' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1586'/>
- <class-decl name='sock' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1587'/>
- <class-decl name='task_group' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1588'/>
- <class-decl name='trace_eval_map' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1589'/>
- <class-decl name='trace_event_call' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1590'/>
- <class-decl name='uprobe' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1591'/>
- <class-decl name='user_namespace' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1592'/>
- <class-decl name='workqueue_struct' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1593'/>
- <class-decl name='xol_area' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-1594'/>
- <var-decl name='__this_module' type-id='type-id-789' mangled-name='__this_module' visibility='default' filepath='/ws/android/kernel/aosp/common-mainline/out/android-mainline/common/drivers/mmc/host/sdhci.mod.c' line='11' column='1' elf-symbol-id='__this_module'/>
+ <function-type size-in-bits='64' id='type-id-1547'>
+ <parameter type-id='type-id-127'/>
+ <return type-id='type-id-127'/>
+ </function-type>
+ <type-decl name='void' id='type-id-1538'/>
</abi-instr>
</abi-corpus>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/PR25042-libgdbm-clang-dwarf5.so.6.0.0' soname='libgdbm.so.6'>
+<abi-corpus version='2.1' soname='libgdbm.so.6'>
<elf-needed>
<dependency name='libc.so.6'/>
<dependency name='ld-linux-x86-64.so.2'/>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-common/PR26261/PR26261-exe'>
+<abi-corpus version='2.1'>
<elf-needed>
<dependency name='libc.so.6'/>
</elf-needed>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-common/PR27700/test-PR27700.o'>
+<abi-corpus version='2.1'>
<elf-function-symbols>
<elf-symbol name='foo' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/PR28584/PR28584-smv.clang.o'>
+<abi-corpus version='2.1'>
<elf-variable-symbols>
<elf-symbol name='_ZN1N1S1DE' size='4' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-variable-symbols>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/libtest23.so'>
+<abi-corpus version='2.1'>
<elf-needed>
<dependency name='libstdc++.so.6'/>
<dependency name='libm.so.6'/>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/libtest24-drop-fns.so'>
+<abi-corpus version='2.1'>
<elf-needed>
<dependency name='libgcc_s.so.1'/>
<dependency name='libc.so.6'/>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/libtest24-drop-fns.so'>
+<abi-corpus version='2.1'>
<elf-needed>
<dependency name='libgcc_s.so.1'/>
<dependency name='libc.so.6'/>
@@ -204,70 +204,85 @@
<qualified-type-def type-id='type-id-55' const='yes' id='type-id-56'/>
<reference-type-def kind='lvalue' type-id='type-id-56' size-in-bits='64' id='type-id-57'/>
<qualified-type-def type-id='type-id-58' const='yes' id='type-id-59'/>
- <qualified-type-def type-id='type-id-60' const='yes' id='type-id-61'/>
+ <reference-type-def kind='lvalue' type-id='type-id-59' size-in-bits='64' id='type-id-60'/>
+ <pointer-type-def type-id='type-id-59' size-in-bits='64' id='type-id-61'/>
<qualified-type-def type-id='type-id-62' const='yes' id='type-id-63'/>
- <qualified-type-def type-id='type-id-64' const='yes' id='type-id-65'/>
- <qualified-type-def type-id='type-id-66' const='yes' id='type-id-67'/>
- <reference-type-def kind='lvalue' type-id='type-id-67' size-in-bits='64' id='type-id-68'/>
- <qualified-type-def type-id='type-id-27' const='yes' id='type-id-69'/>
- <pointer-type-def type-id='type-id-69' size-in-bits='64' id='type-id-70'/>
- <qualified-type-def type-id='type-id-17' const='yes' id='type-id-71'/>
- <qualified-type-def type-id='type-id-20' const='yes' id='type-id-72'/>
- <pointer-type-def type-id='type-id-72' size-in-bits='64' id='type-id-73'/>
- <pointer-type-def type-id='type-id-73' size-in-bits='64' id='type-id-74'/>
- <pointer-type-def type-id='type-id-23' size-in-bits='64' id='type-id-75'/>
- <pointer-type-def type-id='type-id-32' size-in-bits='64' id='type-id-76'/>
+ <pointer-type-def type-id='type-id-63' size-in-bits='64' id='type-id-64'/>
+ <qualified-type-def type-id='type-id-65' const='yes' id='type-id-66'/>
+ <qualified-type-def type-id='type-id-67' const='yes' id='type-id-68'/>
+ <reference-type-def kind='lvalue' type-id='type-id-68' size-in-bits='64' id='type-id-69'/>
+ <pointer-type-def type-id='type-id-68' size-in-bits='64' id='type-id-70'/>
+ <qualified-type-def type-id='type-id-71' const='yes' id='type-id-72'/>
+ <reference-type-def kind='lvalue' type-id='type-id-72' size-in-bits='64' id='type-id-73'/>
+ <qualified-type-def type-id='type-id-74' const='yes' id='type-id-75'/>
+ <reference-type-def kind='lvalue' type-id='type-id-75' size-in-bits='64' id='type-id-76'/>
+ <qualified-type-def type-id='type-id-27' const='yes' id='type-id-77'/>
<pointer-type-def type-id='type-id-77' size-in-bits='64' id='type-id-78'/>
- <pointer-type-def type-id='type-id-6' size-in-bits='64' id='type-id-79'/>
- <pointer-type-def type-id='type-id-80' size-in-bits='64' id='type-id-8'/>
- <pointer-type-def type-id='type-id-20' size-in-bits='64' id='type-id-81'/>
+ <qualified-type-def type-id='type-id-17' const='yes' id='type-id-79'/>
+ <qualified-type-def type-id='type-id-20' const='yes' id='type-id-80'/>
+ <pointer-type-def type-id='type-id-80' size-in-bits='64' id='type-id-81'/>
<pointer-type-def type-id='type-id-81' size-in-bits='64' id='type-id-82'/>
+ <pointer-type-def type-id='type-id-23' size-in-bits='64' id='type-id-83'/>
+ <pointer-type-def type-id='type-id-32' size-in-bits='64' id='type-id-84'/>
+ <pointer-type-def type-id='type-id-55' size-in-bits='64' id='type-id-85'/>
+ <reference-type-def kind='lvalue' type-id='type-id-58' size-in-bits='64' id='type-id-86'/>
+ <pointer-type-def type-id='type-id-58' size-in-bits='64' id='type-id-87'/>
+ <pointer-type-def type-id='type-id-88' size-in-bits='64' id='type-id-89'/>
+ <reference-type-def kind='lvalue' type-id='type-id-62' size-in-bits='64' id='type-id-90'/>
+ <pointer-type-def type-id='type-id-62' size-in-bits='64' id='type-id-91'/>
+ <reference-type-def kind='lvalue' type-id='type-id-67' size-in-bits='64' id='type-id-92'/>
+ <pointer-type-def type-id='type-id-67' size-in-bits='64' id='type-id-93'/>
+ <pointer-type-def type-id='type-id-94' size-in-bits='64' id='type-id-95'/>
+ <pointer-type-def type-id='type-id-6' size-in-bits='64' id='type-id-96'/>
+ <pointer-type-def type-id='type-id-97' size-in-bits='64' id='type-id-8'/>
+ <pointer-type-def type-id='type-id-20' size-in-bits='64' id='type-id-98'/>
+ <pointer-type-def type-id='type-id-98' size-in-bits='64' id='type-id-99'/>
<class-decl name='_IO_FILE' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-25'/>
<namespace-decl name='std'>
- <class-decl name='allocator<char>' size-in-bits='8' visibility='default' filepath='/usr/include/c++/5.3.1/bits/allocator.h' line='92' column='1' id='type-id-83'>
+ <class-decl name='allocator<char>' size-in-bits='8' visibility='default' filepath='/usr/include/c++/5.3.1/bits/allocator.h' line='92' column='1' id='type-id-55'>
<base-class access='public' layout-offset-in-bits='0' type-id='type-id-39'/>
<member-type access='public'>
- <typedef-decl name='size_type' type-id='type-id-85' filepath='/usr/include/c++/5.3.1/bits/allocator.h' line='95' column='1' id='type-id-84'/>
+ <typedef-decl name='size_type' type-id='type-id-101' filepath='/usr/include/c++/5.3.1/bits/allocator.h' line='95' column='1' id='type-id-100'/>
</member-type>
<member-type access='public'>
- <typedef-decl name='reference' type-id='type-id-41' filepath='/usr/include/c++/5.3.1/bits/allocator.h' line='99' column='1' id='type-id-86'/>
+ <typedef-decl name='reference' type-id='type-id-41' filepath='/usr/include/c++/5.3.1/bits/allocator.h' line='99' column='1' id='type-id-102'/>
</member-type>
<member-type access='public'>
- <typedef-decl name='const_reference' type-id='type-id-48' filepath='/usr/include/c++/5.3.1/bits/allocator.h' line='100' column='1' id='type-id-87'/>
+ <typedef-decl name='const_reference' type-id='type-id-48' filepath='/usr/include/c++/5.3.1/bits/allocator.h' line='100' column='1' id='type-id-103'/>
</member-type>
</class-decl>
- <class-decl name='basic_string<char, std::char_traits<char>, std::allocator<char> >' size-in-bits='64' visibility='default' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2510' column='1' id='type-id-55'>
+ <class-decl name='basic_string<char, std::char_traits<char>, std::allocator<char> >' size-in-bits='64' visibility='default' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2510' column='1' id='type-id-58'>
<member-type access='public'>
- <typedef-decl name='allocator_type' type-id='type-id-83' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2518' column='1' id='type-id-88'/>
+ <typedef-decl name='allocator_type' type-id='type-id-55' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2518' column='1' id='type-id-104'/>
</member-type>
<member-type access='public'>
- <typedef-decl name='size_type' type-id='type-id-84' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2519' column='1' id='type-id-60'/>
+ <typedef-decl name='size_type' type-id='type-id-100' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2519' column='1' id='type-id-65'/>
</member-type>
<member-type access='public'>
- <typedef-decl name='reference' type-id='type-id-86' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2521' column='1' id='type-id-89'/>
+ <typedef-decl name='reference' type-id='type-id-102' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2521' column='1' id='type-id-105'/>
</member-type>
<member-type access='public'>
- <typedef-decl name='const_reference' type-id='type-id-87' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2522' column='1' id='type-id-90'/>
+ <typedef-decl name='const_reference' type-id='type-id-103' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2522' column='1' id='type-id-106'/>
</member-type>
<member-type access='public'>
- <typedef-decl name='iterator' type-id='type-id-92' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2525' column='1' id='type-id-91'/>
+ <typedef-decl name='iterator' type-id='type-id-108' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2525' column='1' id='type-id-107'/>
</member-type>
<member-type access='public'>
- <typedef-decl name='const_iterator' type-id='type-id-94' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2527' column='1' id='type-id-93'/>
+ <typedef-decl name='const_iterator' type-id='type-id-110' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2527' column='1' id='type-id-109'/>
</member-type>
<member-type access='public'>
- <typedef-decl name='const_reverse_iterator' type-id='type-id-96' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2528' column='1' id='type-id-95'/>
+ <typedef-decl name='const_reverse_iterator' type-id='type-id-112' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2528' column='1' id='type-id-111'/>
</member-type>
<member-type access='public'>
- <typedef-decl name='reverse_iterator' type-id='type-id-98' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2529' column='1' id='type-id-97'/>
+ <typedef-decl name='reverse_iterator' type-id='type-id-114' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2529' column='1' id='type-id-113'/>
</member-type>
<member-type access='private'>
- <class-decl name='_Rep_base' size-in-bits='192' is-struct='yes' visibility='default' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2546' column='1' id='type-id-99'>
+ <class-decl name='_Rep_base' size-in-bits='192' is-struct='yes' visibility='default' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2546' column='1' id='type-id-115'>
<data-member access='public' layout-offset-in-bits='0'>
- <var-decl name='_M_length' type-id='type-id-60' visibility='default' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2548' column='1'/>
+ <var-decl name='_M_length' type-id='type-id-65' visibility='default' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2548' column='1'/>
</data-member>
<data-member access='public' layout-offset-in-bits='64'>
- <var-decl name='_M_capacity' type-id='type-id-60' visibility='default' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2549' column='1'/>
+ <var-decl name='_M_capacity' type-id='type-id-65' visibility='default' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2549' column='1'/>
</data-member>
<data-member access='public' layout-offset-in-bits='128'>
<var-decl name='_M_refcount' type-id='type-id-22' visibility='default' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2550' column='1'/>
@@ -275,10 +290,10 @@
</class-decl>
</member-type>
<member-type access='private'>
- <class-decl name='_Rep' size-in-bits='192' is-struct='yes' visibility='default' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2553' column='1' id='type-id-58'>
- <base-class access='public' layout-offset-in-bits='0' type-id='type-id-99'/>
+ <class-decl name='_Rep' size-in-bits='192' is-struct='yes' visibility='default' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2553' column='1' id='type-id-62'>
+ <base-class access='public' layout-offset-in-bits='0' type-id='type-id-115'/>
<data-member access='public' static='yes'>
- <var-decl name='_S_max_size' type-id='type-id-61' visibility='default' filepath='/usr/include/c++/5.3.1/bits/basic_string.tcc' line='494' column='1'/>
+ <var-decl name='_S_max_size' type-id='type-id-66' visibility='default' filepath='/usr/include/c++/5.3.1/bits/basic_string.tcc' line='494' column='1'/>
</data-member>
<data-member access='public' static='yes'>
<var-decl name='_S_terminal' type-id='type-id-47' visibility='default' filepath='/usr/include/c++/5.3.1/bits/basic_string.tcc' line='499' column='1'/>
@@ -289,67 +304,73 @@
</class-decl>
</member-type>
<member-type access='private'>
- <class-decl name='_Alloc_hider' size-in-bits='64' is-struct='yes' visibility='default' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2670' column='1' id='type-id-100'>
- <base-class access='public' layout-offset-in-bits='0' type-id='type-id-83'/>
+ <class-decl name='_Alloc_hider' size-in-bits='64' is-struct='yes' visibility='default' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2670' column='1' id='type-id-88'>
+ <base-class access='public' layout-offset-in-bits='0' type-id='type-id-55'/>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='_M_p' type-id='type-id-24' visibility='default' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2675' column='1'/>
</data-member>
</class-decl>
</member-type>
<data-member access='public' static='yes'>
- <var-decl name='npos' type-id='type-id-61' visibility='default' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2683' column='1'/>
+ <var-decl name='npos' type-id='type-id-66' visibility='default' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2683' column='1'/>
</data-member>
<data-member access='private' layout-offset-in-bits='0'>
- <var-decl name='_M_dataplus' type-id='type-id-100' visibility='default' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2687' column='1'/>
+ <var-decl name='_M_dataplus' type-id='type-id-88' visibility='default' filepath='/usr/include/c++/5.3.1/bits/basic_string.h' line='2687' column='1'/>
</data-member>
</class-decl>
- <class-decl name='char_traits<char>' size-in-bits='8' is-struct='yes' visibility='default' filepath='/usr/include/c++/5.3.1/bits/char_traits.h' line='233' column='1' id='type-id-101'>
+ <class-decl name='char_traits<char>' size-in-bits='8' is-struct='yes' visibility='default' filepath='/usr/include/c++/5.3.1/bits/char_traits.h' line='233' column='1' id='type-id-116'>
<member-type access='public'>
- <typedef-decl name='char_type' type-id='type-id-2' filepath='/usr/include/c++/5.3.1/bits/char_traits.h' line='235' column='1' id='type-id-62'/>
+ <typedef-decl name='char_type' type-id='type-id-2' filepath='/usr/include/c++/5.3.1/bits/char_traits.h' line='235' column='1' id='type-id-67'/>
</member-type>
<member-type access='public'>
- <typedef-decl name='int_type' type-id='type-id-11' filepath='/usr/include/c++/5.3.1/bits/char_traits.h' line='236' column='1' id='type-id-64'/>
+ <typedef-decl name='int_type' type-id='type-id-11' filepath='/usr/include/c++/5.3.1/bits/char_traits.h' line='236' column='1' id='type-id-71'/>
</member-type>
+ <member-function access='public' static='yes'>
+ <function-decl name='length' mangled-name='_ZNSt11char_traitsIcE6lengthEPKc' filepath='/usr/include/c++/5.3.1/bits/char_traits.h' line='266' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='_ZNSt11char_traitsIcE6lengthEPKc'>
+ <parameter type-id='type-id-70'/>
+ <return type-id='type-id-101'/>
+ </function-decl>
+ </member-function>
</class-decl>
- <typedef-decl name='string' type-id='type-id-55' filepath='/usr/include/c++/5.3.1/bits/stringfwd.h' line='74' column='1' id='type-id-66'/>
- <typedef-decl name='ostream' type-id='type-id-102' filepath='/usr/include/c++/5.3.1/iosfwd' line='141' column='1' id='type-id-77'/>
- <typedef-decl name='size_t' type-id='type-id-17' filepath='/usr/include/c++/5.3.1/x86_64-redhat-linux/bits/c++config.h' line='1969' column='1' id='type-id-85'/>
- <class-decl name='basic_ostream<char, std::char_traits<char> >' visibility='default' is-declaration-only='yes' id='type-id-102'/>
- <class-decl name='reverse_iterator<__gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >' visibility='default' is-declaration-only='yes' id='type-id-96'/>
- <class-decl name='reverse_iterator<__gnu_cxx::__normal_iterator<char*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >' visibility='default' is-declaration-only='yes' id='type-id-98'/>
+ <typedef-decl name='string' type-id='type-id-58' filepath='/usr/include/c++/5.3.1/bits/stringfwd.h' line='74' column='1' id='type-id-74'/>
+ <typedef-decl name='ostream' type-id='type-id-117' filepath='/usr/include/c++/5.3.1/iosfwd' line='141' column='1' id='type-id-94'/>
+ <typedef-decl name='size_t' type-id='type-id-17' filepath='/usr/include/c++/5.3.1/x86_64-redhat-linux/bits/c++config.h' line='1969' column='1' id='type-id-101'/>
+ <class-decl name='basic_ostream<char, std::char_traits<char> >' visibility='default' is-declaration-only='yes' id='type-id-117'/>
+ <class-decl name='reverse_iterator<__gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >' visibility='default' is-declaration-only='yes' id='type-id-112'/>
+ <class-decl name='reverse_iterator<__gnu_cxx::__normal_iterator<char*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >' visibility='default' is-declaration-only='yes' id='type-id-114'/>
<function-decl name='operator+<char, std::char_traits<char>, std::allocator<char> >' mangled-name='_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_EPKS3_RKS6_' filepath='/usr/include/c++/5.3.1/bits/basic_string.tcc' line='1151' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_EPKS3_RKS6_'>
<parameter type-id='type-id-28' name='__lhs' filepath='/usr/include/c++/5.3.1/bits/basic_string.tcc' line='1151' column='1'/>
- <parameter type-id='type-id-57' name='__rhs' filepath='/usr/include/c++/5.3.1/bits/basic_string.tcc' line='1152' column='1'/>
- <return type-id='type-id-55'/>
+ <parameter type-id='type-id-60' name='__rhs' filepath='/usr/include/c++/5.3.1/bits/basic_string.tcc' line='1152' column='1'/>
+ <return type-id='type-id-58'/>
</function-decl>
</namespace-decl>
<function-decl name='foo' mangled-name='_Z3fooRKSs' filepath='/home/dodji/git/libabigail.git/suppr/tests/data/test-read-dwarf/test24-drop-fns.cc' line='14' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='_Z3fooRKSs'>
- <parameter type-id='type-id-68' name='s' filepath='/home/dodji/git/libabigail.git/suppr/tests/data/test-read-dwarf/test24-drop-fns.cc' line='14' column='1'/>
- <return type-id='type-id-66'/>
+ <parameter type-id='type-id-76' name='s' filepath='/home/dodji/git/libabigail.git/suppr/tests/data/test-read-dwarf/test24-drop-fns.cc' line='14' column='1'/>
+ <return type-id='type-id-74'/>
</function-decl>
<function-decl name='bar' mangled-name='_Z3barRKSs' filepath='/home/dodji/git/libabigail.git/suppr/tests/data/test-read-dwarf/test24-drop-fns.cc' line='21' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='_Z3barRKSs'>
- <parameter type-id='type-id-68' name='str' filepath='/home/dodji/git/libabigail.git/suppr/tests/data/test-read-dwarf/test24-drop-fns.cc' line='21' column='1'/>
- <return type-id='type-id-78'/>
+ <parameter type-id='type-id-76' name='str' filepath='/home/dodji/git/libabigail.git/suppr/tests/data/test-read-dwarf/test24-drop-fns.cc' line='21' column='1'/>
+ <return type-id='type-id-95'/>
</function-decl>
<namespace-decl name='__gnu_cxx'>
<class-decl name='new_allocator<char>' size-in-bits='8' visibility='default' filepath='/usr/include/c++/5.3.1/ext/new_allocator.h' line='58' column='1' id='type-id-39'>
<member-type access='public'>
- <typedef-decl name='size_type' type-id='type-id-85' filepath='/usr/include/c++/5.3.1/ext/new_allocator.h' line='61' column='1' id='type-id-103'/>
+ <typedef-decl name='size_type' type-id='type-id-101' filepath='/usr/include/c++/5.3.1/ext/new_allocator.h' line='61' column='1' id='type-id-118'/>
</member-type>
<member-type access='public'>
- <typedef-decl name='pointer' type-id='type-id-24' filepath='/usr/include/c++/5.3.1/ext/new_allocator.h' line='63' column='1' id='type-id-104'/>
+ <typedef-decl name='pointer' type-id='type-id-24' filepath='/usr/include/c++/5.3.1/ext/new_allocator.h' line='63' column='1' id='type-id-119'/>
</member-type>
<member-type access='public'>
- <typedef-decl name='const_pointer' type-id='type-id-28' filepath='/usr/include/c++/5.3.1/ext/new_allocator.h' line='64' column='1' id='type-id-105'/>
+ <typedef-decl name='const_pointer' type-id='type-id-28' filepath='/usr/include/c++/5.3.1/ext/new_allocator.h' line='64' column='1' id='type-id-120'/>
</member-type>
<member-type access='public'>
- <typedef-decl name='reference' type-id='type-id-41' filepath='/usr/include/c++/5.3.1/ext/new_allocator.h' line='65' column='1' id='type-id-106'/>
+ <typedef-decl name='reference' type-id='type-id-41' filepath='/usr/include/c++/5.3.1/ext/new_allocator.h' line='65' column='1' id='type-id-121'/>
</member-type>
<member-type access='public'>
- <typedef-decl name='const_reference' type-id='type-id-48' filepath='/usr/include/c++/5.3.1/ext/new_allocator.h' line='66' column='1' id='type-id-107'/>
+ <typedef-decl name='const_reference' type-id='type-id-48' filepath='/usr/include/c++/5.3.1/ext/new_allocator.h' line='66' column='1' id='type-id-122'/>
</member-type>
</class-decl>
- <class-decl name='__numeric_traits_integer<char>' size-in-bits='8' is-struct='yes' visibility='default' filepath='/usr/include/c++/5.3.1/ext/numeric_traits.h' line='55' column='1' id='type-id-108'>
+ <class-decl name='__numeric_traits_integer<char>' size-in-bits='8' is-struct='yes' visibility='default' filepath='/usr/include/c++/5.3.1/ext/numeric_traits.h' line='55' column='1' id='type-id-123'>
<data-member access='public' static='yes'>
<var-decl name='__min' type-id='type-id-47' visibility='default' filepath='/usr/include/c++/5.3.1/ext/numeric_traits.h' line='58' column='1'/>
</data-member>
@@ -363,7 +384,7 @@
<var-decl name='__digits' type-id='type-id-50' visibility='default' filepath='/usr/include/c++/5.3.1/ext/numeric_traits.h' line='64' column='1'/>
</data-member>
</class-decl>
- <class-decl name='__numeric_traits_integer<int>' size-in-bits='8' is-struct='yes' visibility='default' filepath='/usr/include/c++/5.3.1/ext/numeric_traits.h' line='55' column='1' id='type-id-109'>
+ <class-decl name='__numeric_traits_integer<int>' size-in-bits='8' is-struct='yes' visibility='default' filepath='/usr/include/c++/5.3.1/ext/numeric_traits.h' line='55' column='1' id='type-id-124'>
<data-member access='public' static='yes'>
<var-decl name='__min' type-id='type-id-50' mangled-name='_ZN9__gnu_cxx24__numeric_traits_integerIiE5__minE' visibility='default' filepath='/usr/include/c++/5.3.1/ext/numeric_traits.h' line='58' column='1'/>
</data-member>
@@ -377,7 +398,7 @@
<var-decl name='__digits' type-id='type-id-50' visibility='default' filepath='/usr/include/c++/5.3.1/ext/numeric_traits.h' line='64' column='1'/>
</data-member>
</class-decl>
- <class-decl name='__numeric_traits_integer<long int>' size-in-bits='8' is-struct='yes' visibility='default' filepath='/usr/include/c++/5.3.1/ext/numeric_traits.h' line='55' column='1' id='type-id-110'>
+ <class-decl name='__numeric_traits_integer<long int>' size-in-bits='8' is-struct='yes' visibility='default' filepath='/usr/include/c++/5.3.1/ext/numeric_traits.h' line='55' column='1' id='type-id-125'>
<data-member access='public' static='yes'>
<var-decl name='__min' type-id='type-id-51' mangled-name='_ZN9__gnu_cxx24__numeric_traits_integerIlE5__minE' visibility='default' filepath='/usr/include/c++/5.3.1/ext/numeric_traits.h' line='58' column='1'/>
</data-member>
@@ -391,12 +412,12 @@
<var-decl name='__digits' type-id='type-id-50' visibility='default' filepath='/usr/include/c++/5.3.1/ext/numeric_traits.h' line='64' column='1'/>
</data-member>
</class-decl>
- <class-decl name='__numeric_traits_integer<long unsigned int>' size-in-bits='8' is-struct='yes' visibility='default' filepath='/usr/include/c++/5.3.1/ext/numeric_traits.h' line='55' column='1' id='type-id-111'>
+ <class-decl name='__numeric_traits_integer<long unsigned int>' size-in-bits='8' is-struct='yes' visibility='default' filepath='/usr/include/c++/5.3.1/ext/numeric_traits.h' line='55' column='1' id='type-id-126'>
<data-member access='public' static='yes'>
- <var-decl name='__min' type-id='type-id-71' visibility='default' filepath='/usr/include/c++/5.3.1/ext/numeric_traits.h' line='58' column='1'/>
+ <var-decl name='__min' type-id='type-id-79' visibility='default' filepath='/usr/include/c++/5.3.1/ext/numeric_traits.h' line='58' column='1'/>
</data-member>
<data-member access='public' static='yes'>
- <var-decl name='__max' type-id='type-id-71' visibility='default' filepath='/usr/include/c++/5.3.1/ext/numeric_traits.h' line='59' column='1'/>
+ <var-decl name='__max' type-id='type-id-79' visibility='default' filepath='/usr/include/c++/5.3.1/ext/numeric_traits.h' line='59' column='1'/>
</data-member>
<data-member access='public' static='yes'>
<var-decl name='__is_signed' type-id='type-id-46' visibility='default' filepath='/usr/include/c++/5.3.1/ext/numeric_traits.h' line='63' column='1'/>
@@ -405,7 +426,7 @@
<var-decl name='__digits' type-id='type-id-50' mangled-name='_ZN9__gnu_cxx24__numeric_traits_integerImE8__digitsE' visibility='default' filepath='/usr/include/c++/5.3.1/ext/numeric_traits.h' line='64' column='1'/>
</data-member>
</class-decl>
- <class-decl name='__numeric_traits_integer<short int>' size-in-bits='8' is-struct='yes' visibility='default' filepath='/usr/include/c++/5.3.1/ext/numeric_traits.h' line='55' column='1' id='type-id-112'>
+ <class-decl name='__numeric_traits_integer<short int>' size-in-bits='8' is-struct='yes' visibility='default' filepath='/usr/include/c++/5.3.1/ext/numeric_traits.h' line='55' column='1' id='type-id-127'>
<data-member access='public' static='yes'>
<var-decl name='__min' type-id='type-id-54' mangled-name='_ZN9__gnu_cxx24__numeric_traits_integerIsE5__minE' visibility='default' filepath='/usr/include/c++/5.3.1/ext/numeric_traits.h' line='58' column='1'/>
</data-member>
@@ -419,8 +440,8 @@
<var-decl name='__digits' type-id='type-id-50' visibility='default' filepath='/usr/include/c++/5.3.1/ext/numeric_traits.h' line='64' column='1'/>
</data-member>
</class-decl>
- <class-decl name='__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >' visibility='default' is-declaration-only='yes' id='type-id-94'/>
- <class-decl name='__normal_iterator<char*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >' visibility='default' is-declaration-only='yes' id='type-id-92'/>
+ <class-decl name='__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >' visibility='default' is-declaration-only='yes' id='type-id-110'/>
+ <class-decl name='__normal_iterator<char*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >' visibility='default' is-declaration-only='yes' id='type-id-108'/>
</namespace-decl>
<function-decl name='setlocale' filepath='/usr/include/locale.h' line='124' column='1' visibility='default' binding='global' size-in-bits='64'>
<parameter type-id='type-id-11'/>
@@ -428,95 +449,95 @@
<return type-id='type-id-24'/>
</function-decl>
<function-decl name='localeconv' filepath='/usr/include/locale.h' line='127' column='1' visibility='default' binding='global' size-in-bits='64'>
- <return type-id='type-id-75'/>
+ <return type-id='type-id-83'/>
</function-decl>
<function-decl name='wcscpy' filepath='/usr/include/wchar.h' line='147' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-98'/>
<parameter type-id='type-id-81'/>
- <parameter type-id='type-id-73'/>
- <return type-id='type-id-81'/>
+ <return type-id='type-id-98'/>
</function-decl>
<function-decl name='wcsncpy' filepath='/usr/include/wchar.h' line='150' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-98'/>
<parameter type-id='type-id-81'/>
- <parameter type-id='type-id-73'/>
<parameter type-id='type-id-36'/>
- <return type-id='type-id-81'/>
+ <return type-id='type-id-98'/>
</function-decl>
<function-decl name='wcscat' filepath='/usr/include/wchar.h' line='155' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-98'/>
<parameter type-id='type-id-81'/>
- <parameter type-id='type-id-73'/>
- <return type-id='type-id-81'/>
+ <return type-id='type-id-98'/>
</function-decl>
<function-decl name='wcsncat' filepath='/usr/include/wchar.h' line='158' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-98'/>
<parameter type-id='type-id-81'/>
- <parameter type-id='type-id-73'/>
<parameter type-id='type-id-36'/>
- <return type-id='type-id-81'/>
+ <return type-id='type-id-98'/>
</function-decl>
<function-decl name='wcscmp' filepath='/usr/include/wchar.h' line='163' column='1' visibility='default' binding='global' size-in-bits='64'>
- <parameter type-id='type-id-73'/>
- <parameter type-id='type-id-73'/>
+ <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-81'/>
<return type-id='type-id-11'/>
</function-decl>
<function-decl name='wcsncmp' filepath='/usr/include/wchar.h' line='166' column='1' visibility='default' binding='global' size-in-bits='64'>
- <parameter type-id='type-id-73'/>
- <parameter type-id='type-id-73'/>
+ <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-81'/>
<parameter type-id='type-id-36'/>
<return type-id='type-id-11'/>
</function-decl>
<function-decl name='wcscoll' filepath='/usr/include/wchar.h' line='192' column='1' visibility='default' binding='global' size-in-bits='64'>
- <parameter type-id='type-id-73'/>
- <parameter type-id='type-id-73'/>
+ <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-81'/>
<return type-id='type-id-11'/>
</function-decl>
<function-decl name='wcsxfrm' filepath='/usr/include/wchar.h' line='196' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-98'/>
<parameter type-id='type-id-81'/>
- <parameter type-id='type-id-73'/>
<parameter type-id='type-id-36'/>
<return type-id='type-id-36'/>
</function-decl>
<function-decl name='wcscspn' filepath='/usr/include/wchar.h' line='252' column='1' visibility='default' binding='global' size-in-bits='64'>
- <parameter type-id='type-id-73'/>
- <parameter type-id='type-id-73'/>
+ <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-81'/>
<return type-id='type-id-36'/>
</function-decl>
<function-decl name='wcsspn' filepath='/usr/include/wchar.h' line='256' column='1' visibility='default' binding='global' size-in-bits='64'>
- <parameter type-id='type-id-73'/>
- <parameter type-id='type-id-73'/>
+ <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-81'/>
<return type-id='type-id-36'/>
</function-decl>
<function-decl name='wcstok' filepath='/usr/include/wchar.h' line='282' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-98'/>
<parameter type-id='type-id-81'/>
- <parameter type-id='type-id-73'/>
- <parameter type-id='type-id-82'/>
- <return type-id='type-id-81'/>
+ <parameter type-id='type-id-99'/>
+ <return type-id='type-id-98'/>
</function-decl>
<function-decl name='wcslen' filepath='/usr/include/wchar.h' line='287' column='1' visibility='default' binding='global' size-in-bits='64'>
- <parameter type-id='type-id-73'/>
+ <parameter type-id='type-id-81'/>
<return type-id='type-id-36'/>
</function-decl>
<function-decl name='wmemcmp' filepath='/usr/include/wchar.h' line='325' column='1' visibility='default' binding='global' size-in-bits='64'>
- <parameter type-id='type-id-73'/>
- <parameter type-id='type-id-73'/>
+ <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-81'/>
<parameter type-id='type-id-36'/>
<return type-id='type-id-11'/>
</function-decl>
<function-decl name='wmemcpy' filepath='/usr/include/wchar.h' line='329' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-98'/>
<parameter type-id='type-id-81'/>
- <parameter type-id='type-id-73'/>
<parameter type-id='type-id-36'/>
- <return type-id='type-id-81'/>
+ <return type-id='type-id-98'/>
</function-decl>
<function-decl name='wmemmove' filepath='/usr/include/wchar.h' line='334' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-98'/>
<parameter type-id='type-id-81'/>
- <parameter type-id='type-id-73'/>
<parameter type-id='type-id-36'/>
- <return type-id='type-id-81'/>
+ <return type-id='type-id-98'/>
</function-decl>
<function-decl name='wmemset' filepath='/usr/include/wchar.h' line='338' column='1' visibility='default' binding='global' size-in-bits='64'>
- <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-98'/>
<parameter type-id='type-id-20'/>
<parameter type-id='type-id-36'/>
- <return type-id='type-id-81'/>
+ <return type-id='type-id-98'/>
</function-decl>
<function-decl name='btowc' filepath='/usr/include/wchar.h' line='353' column='1' visibility='default' binding='global' size-in-bits='64'>
<parameter type-id='type-id-11'/>
@@ -531,74 +552,74 @@
<return type-id='type-id-11'/>
</function-decl>
<function-decl name='mbrtowc' filepath='/usr/include/wchar.h' line='365' column='1' visibility='default' binding='global' size-in-bits='64'>
- <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-98'/>
<parameter type-id='type-id-28'/>
<parameter type-id='type-id-36'/>
- <parameter type-id='type-id-76'/>
+ <parameter type-id='type-id-84'/>
<return type-id='type-id-36'/>
</function-decl>
<function-decl name='wcrtomb' filepath='/usr/include/wchar.h' line='370' column='1' visibility='default' binding='global' size-in-bits='64'>
<parameter type-id='type-id-24'/>
<parameter type-id='type-id-20'/>
- <parameter type-id='type-id-76'/>
+ <parameter type-id='type-id-84'/>
<return type-id='type-id-36'/>
</function-decl>
<function-decl name='mbrlen' filepath='/usr/include/wchar.h' line='376' column='1' visibility='default' binding='global' size-in-bits='64'>
<parameter type-id='type-id-28'/>
<parameter type-id='type-id-36'/>
- <parameter type-id='type-id-76'/>
+ <parameter type-id='type-id-84'/>
<return type-id='type-id-36'/>
</function-decl>
<function-decl name='mbsrtowcs' filepath='/usr/include/wchar.h' line='408' column='1' visibility='default' binding='global' size-in-bits='64'>
- <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-98'/>
<parameter type-id='type-id-49'/>
<parameter type-id='type-id-36'/>
- <parameter type-id='type-id-76'/>
+ <parameter type-id='type-id-84'/>
<return type-id='type-id-36'/>
</function-decl>
<function-decl name='wcsrtombs' filepath='/usr/include/wchar.h' line='414' column='1' visibility='default' binding='global' size-in-bits='64'>
<parameter type-id='type-id-24'/>
- <parameter type-id='type-id-74'/>
+ <parameter type-id='type-id-82'/>
<parameter type-id='type-id-36'/>
- <parameter type-id='type-id-76'/>
+ <parameter type-id='type-id-84'/>
<return type-id='type-id-36'/>
</function-decl>
<function-decl name='wcstod' filepath='/usr/include/wchar.h' line='450' column='1' visibility='default' binding='global' size-in-bits='64'>
- <parameter type-id='type-id-73'/>
- <parameter type-id='type-id-82'/>
+ <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-99'/>
<return type-id='type-id-9'/>
</function-decl>
<function-decl name='wcstof' filepath='/usr/include/wchar.h' line='457' column='1' visibility='default' binding='global' size-in-bits='64'>
- <parameter type-id='type-id-73'/>
- <parameter type-id='type-id-82'/>
+ <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-99'/>
<return type-id='type-id-10'/>
</function-decl>
<function-decl name='wcstold' filepath='/usr/include/wchar.h' line='459' column='1' visibility='default' binding='global' size-in-bits='64'>
- <parameter type-id='type-id-73'/>
- <parameter type-id='type-id-82'/>
+ <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-99'/>
<return type-id='type-id-12'/>
</function-decl>
<function-decl name='wcstol' filepath='/usr/include/wchar.h' line='468' column='1' visibility='default' binding='global' size-in-bits='64'>
- <parameter type-id='type-id-73'/>
- <parameter type-id='type-id-82'/>
+ <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-99'/>
<parameter type-id='type-id-11'/>
<return type-id='type-id-13'/>
</function-decl>
<function-decl name='wcstoul' filepath='/usr/include/wchar.h' line='473' column='1' visibility='default' binding='global' size-in-bits='64'>
- <parameter type-id='type-id-73'/>
- <parameter type-id='type-id-82'/>
+ <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-99'/>
<parameter type-id='type-id-11'/>
<return type-id='type-id-17'/>
</function-decl>
<function-decl name='wcstoll' filepath='/usr/include/wchar.h' line='483' column='1' visibility='default' binding='global' size-in-bits='64'>
- <parameter type-id='type-id-73'/>
- <parameter type-id='type-id-82'/>
+ <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-99'/>
<parameter type-id='type-id-11'/>
<return type-id='type-id-14'/>
</function-decl>
<function-decl name='wcstoull' filepath='/usr/include/wchar.h' line='490' column='1' visibility='default' binding='global' size-in-bits='64'>
- <parameter type-id='type-id-73'/>
- <parameter type-id='type-id-82'/>
+ <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-99'/>
<parameter type-id='type-id-11'/>
<return type-id='type-id-15'/>
</function-decl>
@@ -609,72 +630,72 @@
</function-decl>
<function-decl name='fwprintf' filepath='/usr/include/wchar.h' line='594' column='1' visibility='default' binding='global' size-in-bits='64'>
<parameter type-id='type-id-38'/>
- <parameter type-id='type-id-73'/>
+ <parameter type-id='type-id-81'/>
<parameter is-variadic='yes'/>
<return type-id='type-id-11'/>
</function-decl>
<function-decl name='wprintf' filepath='/usr/include/wchar.h' line='601' column='1' visibility='default' binding='global' size-in-bits='64'>
- <parameter type-id='type-id-73'/>
+ <parameter type-id='type-id-81'/>
<parameter is-variadic='yes'/>
<return type-id='type-id-11'/>
</function-decl>
<function-decl name='swprintf' filepath='/usr/include/wchar.h' line='604' column='1' visibility='default' binding='global' size-in-bits='64'>
- <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-98'/>
<parameter type-id='type-id-36'/>
- <parameter type-id='type-id-73'/>
+ <parameter type-id='type-id-81'/>
<parameter is-variadic='yes'/>
<return type-id='type-id-11'/>
</function-decl>
<function-decl name='vfwprintf' filepath='/usr/include/wchar.h' line='612' column='1' visibility='default' binding='global' size-in-bits='64'>
<parameter type-id='type-id-38'/>
- <parameter type-id='type-id-73'/>
- <parameter type-id='type-id-79'/>
+ <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-96'/>
<return type-id='type-id-11'/>
</function-decl>
<function-decl name='vwprintf' filepath='/usr/include/wchar.h' line='620' column='1' visibility='default' binding='global' size-in-bits='64'>
- <parameter type-id='type-id-73'/>
- <parameter type-id='type-id-79'/>
+ <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-96'/>
<return type-id='type-id-11'/>
</function-decl>
<function-decl name='vswprintf' filepath='/usr/include/wchar.h' line='625' column='1' visibility='default' binding='global' size-in-bits='64'>
- <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-98'/>
<parameter type-id='type-id-36'/>
- <parameter type-id='type-id-73'/>
- <parameter type-id='type-id-79'/>
+ <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-96'/>
<return type-id='type-id-11'/>
</function-decl>
<function-decl name='fwscanf' filepath='/usr/include/wchar.h' line='635' column='1' visibility='default' binding='global' size-in-bits='64'>
<parameter type-id='type-id-38'/>
- <parameter type-id='type-id-73'/>
+ <parameter type-id='type-id-81'/>
<parameter is-variadic='yes'/>
<return type-id='type-id-11'/>
</function-decl>
<function-decl name='wscanf' filepath='/usr/include/wchar.h' line='642' column='1' visibility='default' binding='global' size-in-bits='64'>
- <parameter type-id='type-id-73'/>
+ <parameter type-id='type-id-81'/>
<parameter is-variadic='yes'/>
<return type-id='type-id-11'/>
</function-decl>
<function-decl name='swscanf' filepath='/usr/include/wchar.h' line='645' column='1' visibility='default' binding='global' size-in-bits='64'>
- <parameter type-id='type-id-73'/>
- <parameter type-id='type-id-73'/>
+ <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-81'/>
<parameter is-variadic='yes'/>
<return type-id='type-id-11'/>
</function-decl>
<function-decl name='vfwscanf' filepath='/usr/include/wchar.h' line='689' column='1' visibility='default' binding='global' size-in-bits='64'>
<parameter type-id='type-id-38'/>
- <parameter type-id='type-id-73'/>
- <parameter type-id='type-id-79'/>
+ <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-96'/>
<return type-id='type-id-11'/>
</function-decl>
<function-decl name='vwscanf' filepath='/usr/include/wchar.h' line='697' column='1' visibility='default' binding='global' size-in-bits='64'>
- <parameter type-id='type-id-73'/>
- <parameter type-id='type-id-79'/>
+ <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-96'/>
<return type-id='type-id-11'/>
</function-decl>
<function-decl name='vswscanf' filepath='/usr/include/wchar.h' line='701' column='1' visibility='default' binding='global' size-in-bits='64'>
- <parameter type-id='type-id-73'/>
- <parameter type-id='type-id-73'/>
- <parameter type-id='type-id-79'/>
+ <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-96'/>
<return type-id='type-id-11'/>
</function-decl>
<function-decl name='fgetwc' filepath='/usr/include/wchar.h' line='745' column='1' visibility='default' binding='global' size-in-bits='64'>
@@ -703,13 +724,13 @@
<return type-id='type-id-37'/>
</function-decl>
<function-decl name='fgetws' filepath='/usr/include/wchar.h' line='774' column='1' visibility='default' binding='global' size-in-bits='64'>
- <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-98'/>
<parameter type-id='type-id-11'/>
<parameter type-id='type-id-38'/>
- <return type-id='type-id-81'/>
+ <return type-id='type-id-98'/>
</function-decl>
<function-decl name='fputws' filepath='/usr/include/wchar.h' line='781' column='1' visibility='default' binding='global' size-in-bits='64'>
- <parameter type-id='type-id-73'/>
+ <parameter type-id='type-id-81'/>
<parameter type-id='type-id-38'/>
<return type-id='type-id-11'/>
</function-decl>
@@ -719,10 +740,10 @@
<return type-id='type-id-37'/>
</function-decl>
<function-decl name='wcsftime' filepath='/usr/include/wchar.h' line='855' column='1' visibility='default' binding='global' size-in-bits='64'>
- <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-98'/>
<parameter type-id='type-id-36'/>
- <parameter type-id='type-id-73'/>
- <parameter type-id='type-id-70'/>
+ <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-78'/>
<return type-id='type-id-36'/>
</function-decl>
<function-decl name='wctype' filepath='/usr/include/wctype.h' line='171' column='1' visibility='default' binding='global' size-in-bits='64'>
@@ -743,6 +764,6 @@
<parameter type-id='type-id-35'/>
<return type-id='type-id-37'/>
</function-decl>
- <type-decl name='void' id='type-id-80'/>
+ <type-decl name='void' id='type-id-97'/>
</abi-instr>
</abi-corpus>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-common/test-PR26568-1.o'>
+<abi-corpus version='2.1'>
<elf-function-symbols>
<elf-symbol name='fun' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-common/test-PR26568-2.o'>
+<abi-corpus version='2.1'>
<elf-function-symbols>
<elf-symbol name='fun' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test-libaaudio.so' soname='libaaudio.so'>
+<abi-corpus version='2.1' soname='libaaudio.so'>
<elf-needed>
<dependency name='libaaudio_internal.so'/>
<dependency name='libaudioclient.so'/>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test-libandroid.so' soname='libandroid.so'>
+<abi-corpus version='2.1' soname='libandroid.so'>
<elf-needed>
<dependency name='liblog.so'/>
<dependency name='libhidlbase.so'/>
@@ -1,16 +1,18 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test-suppressed-alias.o'>
+<abi-corpus version='2.1'>
<elf-function-symbols>
<elf-symbol name='alias_func' type='func-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='main_func' type='func-type' binding='global-binding' visibility='default-visibility' alias='alias_func' is-defined='yes'/>
</elf-function-symbols>
<elf-variable-symbols>
<elf-symbol name='alias_var' size='4' type='object-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='main_var' size='4' type='object-type' binding='global-binding' visibility='default-visibility' alias='alias_var' is-defined='yes'/>
</elf-variable-symbols>
<abi-instr address-size='64' path='test.c' comp-dir-path='/ws/android/aosp/kernel-build-tools/external/libabigail' language='LANG_C99'>
<type-decl name='int' size-in-bits='32' id='95e97e5e'/>
- <function-decl name='main_func' mangled-name='main_func' filepath='/ws/android/aosp/kernel-build-tools/external/libabigail/test.c' line='7' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='alias_func'>
+ <function-decl name='main_func' mangled-name='main_func' filepath='/ws/android/aosp/kernel-build-tools/external/libabigail/test.c' line='7' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='main_func'>
<return type-id='48b5725f'/>
</function-decl>
- <var-decl name='main_var' type-id='95e97e5e' mangled-name='main_var' visibility='default' filepath='/ws/android/aosp/kernel-build-tools/external/libabigail/test.c' line='14' column='1' elf-symbol-id='alias_var'/>
+ <var-decl name='main_var' type-id='95e97e5e' mangled-name='main_var' visibility='default' filepath='/ws/android/aosp/kernel-build-tools/external/libabigail/test.c' line='14' column='1' elf-symbol-id='main_var'/>
<type-decl name='void' id='48b5725f'/>
</abi-instr>
</abi-corpus>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test0'>
+<abi-corpus version='2.1'>
<elf-needed>
<dependency name='libstdc++.so.6'/>
<dependency name='libm.so.6'/>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test0'>
+<abi-corpus version='2.1'>
<elf-needed>
<dependency name='libstdc++.so.6'/>
<dependency name='libm.so.6'/>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test1'>
+<abi-corpus version='2.1'>
<elf-needed>
<dependency name='libstdc++.so.6'/>
<dependency name='libm.so.6'/>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test1'>
+<abi-corpus version='2.1'>
<elf-needed>
<dependency name='libstdc++.so.6'/>
<dependency name='libm.so.6'/>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test10-pr18818-gcc.so'>
+<abi-corpus version='2.1'>
<elf-needed>
<dependency name='build/debug/third_party/boost-1.56.0/libboost_system.so'/>
<dependency name='librt.so.1'/>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test11-pr18828.so'>
+<abi-corpus version='2.1'>
<elf-needed>
<dependency name='build/debug/mongo/db/libserver_parameters.so'/>
<dependency name='build/debug/mongo/libbase.so'/>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test12-pr18844.so'>
+<abi-corpus version='2.1'>
<elf-needed>
<dependency name='build/debug/mongo/bson/mutable/libmutable_bson.so'/>
<dependency name='build/debug/mongo/bson/util/libbson_extract.so'/>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test13-pr18894.so' soname='libdbus-1.so.3'>
+<abi-corpus version='2.1' soname='libdbus-1.so.3'>
<elf-needed>
<dependency name='librt.so.1'/>
<dependency name='libpthread.so.0'/>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test14-pr18893.so' soname='libGLU.so.1'>
+<abi-corpus version='2.1' soname='libGLU.so.1'>
<elf-needed>
<dependency name='libGL.so.1'/>
<dependency name='libstdc++.so.6'/>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test15-pr18892.so' soname='libtsan.so.0'>
+<abi-corpus version='2.1' soname='libtsan.so.0'>
<elf-needed>
<dependency name='librt.so.1'/>
<dependency name='libpthread.so.0'/>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test16-pr18904.so' soname='liboffloadmic_host.so.5'>
+<abi-corpus version='2.1' soname='liboffloadmic_host.so.5'>
<elf-needed>
<dependency name='libdl.so.2'/>
<dependency name='libstdc++.so.6'/>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test17-pr19027.so' soname='libharfbuzz.so.0'>
+<abi-corpus version='2.1' soname='libharfbuzz.so.0'>
<elf-needed>
<dependency name='libglib-2.0.so.0'/>
<dependency name='libfreetype.so.6'/>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test18-pr19037-libvtkRenderingLIC-6.1.so' soname='libvtkRenderingLIC-6.1.so.1'>
+<abi-corpus version='2.1' soname='libvtkRenderingLIC-6.1.so.1'>
<elf-needed>
<dependency name='libvtkIOLegacy-6.1.so.1'/>
<dependency name='libvtkIOXML-6.1.so.1'/>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test19-pr19023-libtcmalloc_and_profiler.so' soname='libtcmalloc_and_profiler.so.4'>
+<abi-corpus version='2.1' soname='libtcmalloc_and_profiler.so.4'>
<elf-needed>
<dependency name='libunwind.so.8'/>
<dependency name='libpthread.so.0'/>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test2.so'>
+<abi-corpus version='2.1'>
<elf-needed>
<dependency name='libstdc++.so.6'/>
<dependency name='libm.so.6'/>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test2.so'>
+<abi-corpus version='2.1'>
<elf-needed>
<dependency name='libstdc++.so.6'/>
<dependency name='libm.so.6'/>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test20-pr19025-libvtkParallelCore-6.1.so' soname='libvtkParallelCore-6.1.so.1'>
+<abi-corpus version='2.1' soname='libvtkParallelCore-6.1.so.1'>
<elf-needed>
<dependency name='libvtkIOLegacy-6.1.so.1'/>
<dependency name='libvtkIOCore-6.1.so.1'/>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test21-pr19092.so'>
+<abi-corpus version='2.1'>
<elf-needed>
<dependency name='libstdc++.so.6'/>
<dependency name='libm.so.6'/>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test22-pr19097-libstdc++.so.6.0.17.so' soname='libstdc++.so.6'>
+<abi-corpus version='2.1' soname='libstdc++.so.6'>
<elf-needed>
<dependency name='libm.so.6'/>
<dependency name='libc.so.6'/>
@@ -1,9 +1,14 @@
-<abi-corpus version='2.1' path='data/test-read-common/test3.so' soname='test3.so.1'>
+<abi-corpus version='2.1' soname='test3.so.1'>
<elf-needed>
<dependency name='libc.so.6'/>
</elf-needed>
<elf-function-symbols>
- <elf-symbol name='__foo' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='__foo' type='func-type' binding='global-binding' visibility='default-visibility' alias='foo,foo__,__foo__' is-defined='yes'/>
+ <elf-symbol name='__foo__' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='_fini' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='_init' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='foo' type='func-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='foo__' type='func-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' path='test3.c' comp-dir-path='/home/byby/oracle/src/libabigail/tests/data/test-read-common' language='LANG_C89'>
<function-decl name='__foo' mangled-name='__foo' filepath='/home/byby/oracle/src/libabigail/tests/data/test-read-common/test3.c' line='23' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__foo'>
@@ -1,8 +1,9 @@
-<abi-corpus version='2.1' path='data/test-read-common/test3.so' soname='test3.so.1'>
+<abi-corpus version='2.1' soname='test3.so.1'>
<elf-needed>
<dependency name='libc.so.6'/>
</elf-needed>
<elf-function-symbols>
+ <elf-symbol name='__foo' type='func-type' binding='global-binding' visibility='default-visibility' alias='foo,foo__,__foo__' is-defined='yes'/>
<elf-symbol name='__foo__' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
<elf-symbol name='_fini' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
<elf-symbol name='_init' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
@@ -10,7 +11,7 @@
<elf-symbol name='foo__' type='func-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' path='test3.c' comp-dir-path='/home/byby/oracle/src/libabigail/tests/data/test-read-common' language='LANG_C89'>
- <function-decl name='__foo' mangled-name='__foo' filepath='/home/byby/oracle/src/libabigail/tests/data/test-read-common/test3.c' line='23' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='foo'>
+ <function-decl name='__foo' mangled-name='__foo' filepath='/home/byby/oracle/src/libabigail/tests/data/test-read-common/test3.c' line='23' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__foo'>
<return type-id='48b5725f'/>
</function-decl>
<type-decl name='void' id='48b5725f'/>
@@ -1,12 +1,17 @@
-<abi-corpus version='2.1' path='data/test-read-common/test3.so' soname='test3.so.1'>
+<abi-corpus version='2.1' soname='test3.so.1'>
<elf-needed>
<dependency name='libc.so.6'/>
</elf-needed>
<elf-function-symbols>
+ <elf-symbol name='__foo' type='func-type' binding='global-binding' visibility='default-visibility' alias='foo,foo__,__foo__' is-defined='yes'/>
+ <elf-symbol name='__foo__' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='_fini' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='_init' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
<elf-symbol name='foo' type='func-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='foo__' type='func-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' path='test3.c' comp-dir-path='/home/byby/oracle/src/libabigail/tests/data/test-read-common' language='LANG_C89'>
- <function-decl name='__foo' mangled-name='__foo' filepath='/home/byby/oracle/src/libabigail/tests/data/test-read-common/test3.c' line='23' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='foo'>
+ <function-decl name='__foo' mangled-name='__foo' filepath='/home/byby/oracle/src/libabigail/tests/data/test-read-common/test3.c' line='23' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__foo'>
<return type-id='48b5725f'/>
</function-decl>
<type-decl name='void' id='48b5725f'/>
@@ -1,8 +1,19 @@
-<abi-corpus version='2.1' path='data/test-read-common/test3.so' soname='test3.so.1'>
+<abi-corpus version='2.1' soname='test3.so.1'>
<elf-needed>
<dependency name='libc.so.6'/>
</elf-needed>
<elf-function-symbols>
+ <elf-symbol name='__foo' type='func-type' binding='global-binding' visibility='default-visibility' alias='foo,foo__,__foo__' is-defined='yes'/>
+ <elf-symbol name='__foo__' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='_fini' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
<elf-symbol name='_init' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='foo' type='func-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='foo__' type='func-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
+ <abi-instr address-size='64' path='test3.c' comp-dir-path='/home/byby/oracle/src/libabigail/tests/data/test-read-common' language='LANG_C89'>
+ <function-decl name='__foo' mangled-name='__foo' filepath='/home/byby/oracle/src/libabigail/tests/data/test-read-common/test3.c' line='23' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__foo'>
+ <return type-id='48b5725f'/>
+ </function-decl>
+ <type-decl name='void' id='48b5725f'/>
+ </abi-instr>
</abi-corpus>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-common/test3.so' soname='test3.so.1'>
+<abi-corpus version='2.1' soname='test3.so.1'>
<elf-needed>
<dependency name='libc.so.6'/>
</elf-needed>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-common/test3.so' soname='test3.so.1'>
+<abi-corpus version='2.1' soname='test3.so.1'>
<elf-needed>
<dependency name='libc.so.6'/>
</elf-needed>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-common/test4.so'>
+<abi-corpus version='2.1'>
<elf-needed>
<dependency name='libc.so.6'/>
</elf-needed>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-common/test4.so'>
+<abi-corpus version='2.1'>
<elf-needed>
<dependency name='libc.so.6'/>
</elf-needed>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test5.o'>
+<abi-corpus version='2.1'>
<elf-function-symbols>
<elf-symbol name='_Z3barPv' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test5.o'>
+<abi-corpus version='2.1'>
<elf-function-symbols>
<elf-symbol name='_Z3barPv' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test6.so'>
+<abi-corpus version='2.1'>
<elf-needed>
<dependency name='libstdc++.so.6'/>
<dependency name='libm.so.6'/>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test6.so'>
+<abi-corpus version='2.1'>
<elf-needed>
<dependency name='libstdc++.so.6'/>
<dependency name='libm.so.6'/>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test7.so'>
+<abi-corpus version='2.1'>
<elf-function-symbols>
<elf-symbol name='_Z3fooR1S' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test7.so'>
+<abi-corpus version='2.1'>
<elf-function-symbols>
<elf-symbol name='_Z3fooR1S' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test8-qualified-this-pointer.so'>
+<abi-corpus version='2.1'>
<elf-needed>
<dependency name='libstdc++.so.6'/>
<dependency name='libm.so.6'/>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test8-qualified-this-pointer.so'>
+<abi-corpus version='2.1'>
<elf-needed>
<dependency name='libstdc++.so.6'/>
<dependency name='libm.so.6'/>
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='data/test-read-dwarf/test9-pr18818-clang.so'>
+<abi-corpus version='2.1'>
<elf-needed>
<dependency name='build/debug/third_party/boost-1.56.0/libboost_system.so'/>
<dependency name='libm.so.6'/>
@@ -26,6 +26,7 @@ using abigail::tests::read_common::InOutSpec;
using abigail::tests::read_common::test_task;
using abigail::tests::read_common::display_usage;
using abigail::tests::read_common::options;
+using abigail::tests::get_build_dir;
using abigail::dwarf_reader::read_corpus_from_elf;
using abigail::dwarf_reader::read_context;
@@ -33,6 +34,7 @@ using abigail::dwarf_reader::read_context_sptr;
using abigail::dwarf_reader::create_read_context;
using abigail::xml_writer::SEQUENCE_TYPE_ID_STYLE;
using abigail::xml_writer::HASH_TYPE_ID_STYLE;
+using abigail::xml_writer::type_id_style_kind;
using abigail::tools_utils::emit_prefix;
static InOutSpec in_out_specs[] =
@@ -494,46 +496,6 @@ using abigail::suppr::suppression_sptr;
using abigail::suppr::suppressions_type;
using abigail::suppr::read_suppressions;
-/// Set the suppression specification to use when reading the ELF binary.
-///
-/// @param read_ctxt the context used to read the ELF binary.
-///
-/// @param path the path to the suppression specification to read.
-static void
-set_suppressions(read_context& read_ctxt, const string& path)
-{
- suppressions_type supprs;
- read_suppressions(path, supprs);
- add_read_context_suppressions(read_ctxt, supprs);
-}
-
-/// Define what headers contain public types definitions.
-///
-/// This automatically generates suppression specifications from the
-/// set of header files present under a given directory. Those
-/// specifications actually suppress types that are *not* defined in
-/// the headers found at a given directory.
-///
-/// @param read_ctxt the context used to read the ELF binary.
-///
-/// @param path the path to a directory where header files are to be
-/// found.
-static void
-set_suppressions_from_headers(read_context& read_ctxt, const string& path)
-{
- vector<string> files;
- suppression_sptr suppr =
- abigail::tools_utils::gen_suppr_spec_from_headers(path, files);
-
- if (suppr)
- {
- suppr->set_drops_artifact_from_ir(true);
- suppressions_type supprs;
- supprs.push_back(suppr);
- add_read_context_suppressions(read_ctxt, supprs);
- }
-}
-
/// Task specialization to perform DWARF tests.
struct test_task_dwarf : public test_task
{
@@ -577,52 +539,35 @@ test_task_dwarf::test_task_dwarf(const InOutSpec &s,
void
test_task_dwarf::perform()
{
- abigail::ir::environment_sptr env;
-
set_in_elf_path();
set_in_suppr_spec_path();
set_in_public_headers_path();
- env.reset(new abigail::ir::environment);
- abigail::elf_reader::status status =
- abigail::elf_reader::STATUS_UNKNOWN;
- vector<char**> di_roots;
- ABG_ASSERT(abigail::tools_utils::file_exists(in_elf_path));
- read_context_sptr ctxt = create_read_context(in_elf_path,
- di_roots,
- env.get());
- ABG_ASSERT(ctxt);
- if (!in_suppr_spec_path.empty())
- set_suppressions(*ctxt, in_suppr_spec_path);
+ if (!set_out_abi_path()
+ || in_elf_path.empty())
+ return;
+ string abidw = string(get_build_dir()) + "/tools/abidw";
+ string drop_private_types;
if (!in_public_headers_path.empty())
- set_suppressions_from_headers(*ctxt, in_public_headers_path);
+ drop_private_types += "--headers-dir " + in_public_headers_path +
+ " --drop-private-types";
+ string type_id_style = "sequence";
+ if (spec.type_id_style == HASH_TYPE_ID_STYLE)
+ type_id_style = "hash";
- abigail::corpus_sptr corp = read_corpus_from_elf(*ctxt, status);
- // if there is no output and no input, assume that we do not care about the
- // actual read result, just that it succeeded.
- if (!spec.in_abi_path && !spec.out_abi_path)
- {
- // Phew! we made it here and we did not crash! yay!
- return;
- }
- if (!corp)
+ string cmd = abidw + " --no-architecture "
+ + " --type-id-style " + type_id_style
+ + " --no-corpus-path "
+ + drop_private_types + " " + in_elf_path
+ +" > " + out_abi_path;
+
+ if (system(cmd.c_str()))
{
- error_message = string("failed to read ") + in_elf_path + "\n";
- is_ok = false;
+ error_message = string("abidw failed:\n")
+ + "command was: '" + cmd + "'\n";
return;
}
- corp->set_path(spec.in_elf_path);
- // Do not take architecture names in comparison so that these
- // test input binaries can come from whatever arch the
- // programmer likes.
- corp->set_architecture_name("");
-
- if (!(is_ok = set_out_abi_path()))
- return;
-
- if (!(is_ok = serialize_corpus(out_abi_path, corp)))
- return;
if (!(is_ok = run_abidw()))
return;