Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Determining source file and line information for global symbols (UDT, modules) #109

Open
camden-smallwood opened this issue Jan 8, 2022 · 0 comments

Comments

@camden-smallwood
Copy link

camden-smallwood commented Jan 8, 2022

I'm currently working on a naive pdb-to-cpp decompiler, and there's a number of things that I've run into, but this one in particular doesn't appear to have been addressed in any prior issues, so hopefully someone can point me in the right direction...

Currently there appears to be no way to determine what source file and line a global symbol belongs to, which particularly afflicts decompilation of some user datatypes. Not all PDB files have identifier data in the IPI stream, or any private user datatypes, but may have global symbols which have all of the type information that would typically be present in the IPI stream.

While it is possible to keep track of the previous module of some global symbols by way of iterating over the module contributions, this still does not help with telling us which file and line in the module's include hierarchy they originate from. How are we supposed to retrieve this data?

Any help would be appreciated, thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant