-
Notifications
You must be signed in to change notification settings - Fork 4k
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
Add documents to PDB for types that have no methods with IL #56278
Conversation
…B. This new information adds expands the type definition table by including types that do not contain IL or types that have a method or methods that do not include all the documents under the method debug information table. Also expanded the pdb tests to test the information added and also tested navigating from a symbol to its corresponding document(s).
src/Compilers/Core/Portable/PEWriter/MetadataWriter.PortablePdb.cs
Outdated
Show resolved
Hide resolved
src/Compilers/Core/Portable/PEWriter/MetadataWriter.PortablePdb.cs
Outdated
Show resolved
Hide resolved
Tips for solving, or investigating, determinism and rebuild issues are readily accepted. Or even just a DLL diff tool :) |
I added two comments to give you an idea what to look for. Basically, we need to make sure that from build to build the same information is emitted in the same order and using the same values (ids, etc.). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🕐
Thank you very much, I think that's solved it. I probably should have realised too, as I had sorted the results in the test validate method too 🤦♂️ |
The rebuild tests don't like using the mapped document name. I'm guessing, based on the failures, that the custom debug info isn't being serialized and needs to be? I guess I need to add that? Not really sure how it all works. @RikkiGibson do you have any insight here? |
src/Compilers/CSharp/Test/Emit/PDB/TypeDefinitionDocumentTests.cs
Outdated
Show resolved
Hide resolved
src/Compilers/CSharp/Test/Emit/PDB/TypeDefinitionDocumentTests.cs
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🕐
…s in nested types to prevent duplicate documents being output
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@cston if you can have another look at this today, I'd really appreciate it, so we can get it in before the snap at 4pm. |
Co-authored-by: Charles Stoner <[email protected]>
Part of #55834
First two commits are from Samuel, subsequent is my cleanup/changes, but easiest to just look at the entire changeset as one.