avl added a comment. Since this patch extends number of cases when uncloned dies are created, it is worth to add following check:
void CompileUnit::fixupForwardReferences() { for (const auto &Ref : ForwardDIEReferences) { DIE *RefDie; const CompileUnit *RefUnit; PatchLocation Attr; DeclContext *Ctxt; std::tie(RefDie, RefUnit, Ctxt, Attr) = Ref; if (Ctxt && Ctxt->hasCanonicalDIE()) { assert(Ctxt->getCanonicalDIEOffset() && "Canonical die offset is not set"); Attr.set(Ctxt->getCanonicalDIEOffset()); } else { assert(RefDie->getOffset() && "Referenced die offset is not set"); <<<<<<<<<<<<<<<<<<<< Attr.set(RefDie->getOffset() + RefUnit->getStartOffset()); } } } CHANGES SINCE LAST ACTION https://reviews.llvm.org/D138176/new/ https://reviews.llvm.org/D138176 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits