While reading Codeview records which contain variable-length encoded integers,
such as LF_BCLASS, LF_ENUMERATE, LF_MEMBER, LF_VBCLASS or LF_IVBCLASS,
the record's size would be improperly calculated in cases where the value was
indeed variable-length (>= LF_NUMERIC). This caused a bad alignement on the
next record, which would/might crash later on.
Details
Details
Diff Detail
Diff Detail
- Repository
- rL LLVM
Event Timeline
test/DebugInfo/COFF/enum_var.ll | ||
---|---|---|
1 ↗ | (On Diff #140472) | I don't think this test exercises the fix. Only type stream merging and LLD exercise type index discovery. |
Comment Actions
My bad - I should have tested without the patch. Updated following @zturner's suggestion.