[PATCH] D31267: [codeview] Move type index remapping logic to type merger

Reid Kleckner via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Mar 22 16:35:34 PDT 2017


rnk added inline comments.


================
Comment at: lib/DebugInfo/CodeView/TypeStreamMerger.cpp:163
+Error TypeStreamMerger::visitKnownRecord(CVType &, ModifierRecord &R) {
+  return writeRecord(R, remapIndex(R.ModifiedType));
+}
----------------
zturner wrote:
> I forgot why we store `LastError` and proceed through the type stream, instead of just returning the error right away and failing.  Do you happen to know?
Yes, we want to be able to recover from corrupted records by skipping the record and mapping all uses of it to the untranslated type index. One bad type index shouldn't make us throw away all type information when linking.


https://reviews.llvm.org/D31267





More information about the llvm-commits mailing list