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

Lack of structures and classes forward declarations #77

Open
ALEXYAL opened this issue Aug 30, 2022 · 1 comment
Open

Lack of structures and classes forward declarations #77

ALEXYAL opened this issue Aug 30, 2022 · 1 comment

Comments

@ALEXYAL
Copy link

ALEXYAL commented Aug 30, 2022

Lack of forward declarations in 2 cases:

1 ---------------
struct A {
  A* p; //self ptr
}; 
2 ---------------
struct {
} A; //alias typedef
struct B {
  A* p; //ptr to typedefed structure
}

In both cases DIA PDB engine cannot resolve "p" member and in debugger it is inaccessible (cvdump shows type NONE). DWRARF format has different structure and DIA PDB engine not so sophisticated to create maps and resolves symbols in second path.

So I've add synthetic forward declarations (and pointers) for all structures and problem completely gone. Not very nice solution, but it works. (see attached fix.zip file)
fix.zip

@rainers
Copy link
Owner

rainers commented Sep 2, 2022

Thank you for contributing. It would be good if you could make a pull request with your changes so that it's easier to discuss them (e.g. removing the asserts is not so great), your authorship is kept in the commit log and the build checks are run before merging.

Can you also provide full examples demonstrating the issues?

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

2 participants