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

remove CodeView check on pdb create #2974

Closed
wants to merge 1 commit into from
Closed

remove CodeView check on pdb create #2974

wants to merge 1 commit into from

Conversation

trivalik
Copy link

@trivalik trivalik commented Apr 24, 2023

try to fix #2973

Problem

No CodeView blocks pdb generation.

Solution

Generate a guid with zeroed timestamp in case no CodeView exists.

@christophwille
Copy link
Member

Can you provide evidence (eg some docs) why that is a proper fix?

@trivalik
Copy link
Author

No, but generation works.

@siegfriedpammer
Copy link
Member

"generation works", yes, but debuggers might reject the PDB because it does not match the timestamp/hash stored in the DLL. Some debuggers will refuse to load any PDB at all, if the DebugView entry is missing.

Someone from the Visual Studio Debugger team even contributed a way for the Visual Studio Debugger to pass an ID to the PDB Generator that is used/accepted by the VS Debugger: #2678... there are a couple of pointers in the PR description.

@trivalik
Copy link
Author

I see, after further testing. If you build a project without a pdb. Then it is impossible to use the created pdb in Visual Studio. Maybe a improve of the error text would make sense then, that builded programs without debug information the use of a generated is not possible. Only ILSpy itself could load the pdb right now, but makes not really sense, as long as obfuscated names could not be overridden via pdb.

@christophwille
Copy link
Member

I am closing this because aside from generating a pdb, it doesn't create a working pdb.

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

Successfully merging this pull request may close these issues.

Can't create pdb from assembly, doesn't contain PE Debug Directory Entry
3 participants