<div dir="ltr">Hello, <br><br>I am editing the LowerTypeTests pass in LLVM, and part of my additions include the following 3 lines of code:<div><br></div><div><font face="monospace">// newTypeName is a std::string<br>MDString* newMD = MDString::get(M.getContext(), newTypeName);<br>ArrayRef<Metadata*> mdArray {ConstantInt::get(Int64Ty, 0), newMD};<br>auto* node = MDTuple::get(M.getContext(), mdArray);<br></font><br>Thus far, I have been developing on a version of Clang with debugging symbols enabled, and this code has worked. However, on the Release+Asserts version, the third line results in a segmentation fault. The backtrace for the error, up to the method I'm working on, is as follows:<br><font face="monospace"><br>// signal handling...<br> #4 0x00005556e48d6120 llvm::ReplaceableMetadataImpl::getOrCreate(llvm::Metadata&) (/home/sjessu/build-no-debug/bin/clang-10+0x2787120)<br> #5 0x00005556e48db8c2 llvm::MetadataTracking::track(void*, llvm::Metadata&, llvm::PointerUnion<llvm::MetadataAsValue*, llvm::Metadata*>) (/home/sjessu/build-no-debug/bin/clang-10+0x278c8c2)<br> #6 0x00005556e48dbc12 llvm::MDNode::MDNode(llvm::LLVMContext&, unsigned int, llvm::Metadata::StorageType, llvm::ArrayRef<llvm::Metadata*>, llvm::ArrayRef<llvm::Metadata*>) (/home/sjessu/build-no-debug/bin/clang-10+0x278cc12)<br> #7 0x00005556e48dd70d llvm::MDTuple::getImpl(llvm::LLVMContext&, llvm::ArrayRef<llvm::Metadata*>, llvm::Metadata::StorageType, bool) (/home/sjessu/build-no-debug/bin/clang-10+0x278e70d)<br> #8 0x00005556e4a4b293 (anonymous namespace)::LowerTypeTestsModule::lower() (.part.1843) (/home/sjessu/build-no-debug/bin/clang-10+0x28fc293)<br></font><br><br>Crucially, <i>this error does not occur in the Debug version</i>, so I am lost as to how to diagnose it. I have checked that <font face="monospace">newMD </font><font face="arial, sans-serif">is non-null and contains the value I expect. Are there any discrepancies in the Debug version as compared to the Release + Asserts version that would cause such an error? Thanks for your help!<br></font><br>Best, <br>Shishir Jessu<br><br><br></div></div>