<div dir="ltr"><div>I have an application which works without asserting when using LLVM 7.</div><div><br></div><div>After upgrading to LLVM 8, whenever I try to generate debug records, I get the following assertion:</div><div><br></div><div>/home/dej/work/llvm_git/llvm-project/llvm/lib/IR/Metadata.cpp:634: void llvm::MDNode::resolveCycles(): Assertion `!N->isTemporary() && "Expected all forward declarations to be resolved"' failed.</div><div><br></div><div>Interestingly, this assert exists in LLVM 7, but my application does not trigger it.  I can only conclude that requirements have changed - some new requirement has been added to achieve "resolution".</div><div><br></div><div>Does anyone know what the new requirements could be?  Alternatively, how would I debug this?</div><div><br></div></div>