dotnet / dotnet/symreader-converter

Validate multiple CV entries in debug directory

Open
#105 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C#
Stars
70
Forks
44
PR merge metrics
No merged PRs in 30d

Description

We should document what the semantics of multiple CodeView records is in a spec: https://github.com/dotnet/corefx/blob/master/src/System.Reflection.Metadata/specs/PE-COFF.md
I think we should disallow multiple portable CodeView records. Is there a way to distinguish record for native PDB vs. record for managed PDB in the native image? If we can I'd also disallow multiple managed PDB records (or perhaps even multiple native PDB records). If we don't disallow multiple portable records we would need to fix https://github.com/dotnet/corefx/blob/master/src/System.Reflection.Metadata/src/System/Reflection/PortableExecutable/PEReader.cs#L693 to also pick the last one. This would also require update of .NET Framework, so I would rather not do that. There seems to be no point in allowing multiple portable records. If we decide to disallow some combination of CV records, the converter should validate it and report an error.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.