Inconsistencies in data structures produced by Dyninst #1675
Labels
bug
parseAPI
This issue is directly related to parseAPI
user-reported
This issue was reported by someone outside of the core Dyninst developers
As the result of parsing a binary file Dyninst produces several entities and some relations between them. Among entities there are functions, blocks, and jump tables. Both blocks and jump tables can belong to a function (or to several functions). These relations are described by multiple data structures that should be kept in consistent state, namely:
To Reproduce
g++ -std=c++0x -g verify.cc -I/path/to/dyninst/include -L/path/to/dyninst/lib -lparseAPI -linstructionAPI -lsymtabAPI -ldynDwarf -ldynElf -lcommon -lelf -ldwarf -o verify
Expected behavior
No inconsistencies found by the test program.
System (please complete the following information):
Additional notes
The most likely culprit is finalization. It changes function boundaries a lot, and I don't see a lot of code that fixes other data structures.
Also, block may not be part of the function that created it, but I'm not sure if this is intended or not.
The text was updated successfully, but these errors were encountered: