<html><head><meta http-equiv="Content-Type" content="text/html charset=windows-1252"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><div><br></div>I forgot to mention this in my initial email.<div><br></div><div>The build of LLVM that I was using was commit <span style="font-family: Menlo; font-size: 11px;">a0d5d7aed8e177cea381b3d054d80c212ece9f2c</span></div><div><font face="Menlo"><span style="font-size: 11px;">The date on the commit is: </span></font><span style="font-family: Menlo; font-size: 11px;">Date: </span><span style="font-family: Menlo; font-size: 11px;"> </span><span style="font-family: Menlo; font-size: 11px;">Fri Sep 26 12:34:06 2014</span></div><div><font face="Menlo"><span style="font-size: 11px;"><br></span></font></div><div><font face="Menlo"><span style="font-size: 11px;">Also:</span></font></div><div><font face="Menlo"><span style="font-size: 11px;">Today I grabbed the ToT llvm/clang/clang-extra-tools and I’m working on getting my code to be compatible with it.</span></font></div><div><font face="Menlo"><span style="font-size: 11px;"><br></span></font></div><div><font face="Menlo"><span style="font-size: 11px;">I can switch back and forth between the current ToT llvm and the old one.</span></font></div><div><font face="Menlo"><span style="font-size: 11px;"><br></span></font></div><div><font face="Menlo"><span style="font-size: 11px;">Thanks,</span></font></div><div><font face="Menlo"><span style="font-size: 11px;"><br></span></font></div><div><font face="Menlo"><span style="font-size: 11px;">.Chris.</span></font></div><div><font face="Menlo"><span style="font-size: 11px;"><br></span></font></div><div><font face="Menlo"><span style="font-size: 11px;"><br></span></font><div><div>On Jan 18, 2015, at 12:52 PM, Duncan P. N. Exon Smith <<a href="mailto:dexonsmith@apple.com">dexonsmith@apple.com</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite">I'm not sure what's going on, but I do know this code wouldn't <br>(or, shouldn't) compile on ToT for the last couple of months,<br>since `Value` and `MDNode` belong to different class hierarchies.<br><br><blockquote type="cite">On 2015 Jan 17, at 15:16, Christian Schafmeister <<a href="mailto:chris.schaf@verizon.net">chris.schaf@verizon.net</a>> wrote:<br><br>Hello,<br><br>I wonder if someone would know what is going on below.<br><br><br>All of a sudden I’m getting this assertion thrown:<br><br>Assertion failed: (New->getType() == getType() && "replaceAllUses of value with new value of different type!"), function replaceAllUsesWith, file /Users/meister/Development/externals-clasp/llvm36/lib/IR/Value.cpp, line 345.<br><br>It’s happening when DIBuilder::finalize is being called at the end of a source file compilation.<br><br>Here’s the most illuminating debugging information I could pull out of a frame:<br><br><br>(lldb) <br>frame #6: 0x0000000103a67c3e clasp_boehm_d`llvm::DIDescriptor::replaceAllUsesWith(this=0x00007fff5fb9e288, D=0x000000010985b330) + 254 at DebugInfo.cpp:399<br> 396 <span class="Apple-tab-span" style="white-space:pre"> </span> MDNode *Node = const_cast<MDNode *>(DbgNode);<br> 397 <span class="Apple-tab-span" style="white-space:pre"> </span> const MDNode *DN = D;<br> 398 <span class="Apple-tab-span" style="white-space:pre"> </span> const Value *V = cast_or_null<Value>(DN);<br>-> 399 <span class="Apple-tab-span" style="white-space:pre"> </span> Node->replaceAllUsesWith(const_cast<Value *>(V));<br> 400 <span class="Apple-tab-span" style="white-space:pre"> </span> MDNode::deleteTemporary(Node);<br> 401 <span class="Apple-tab-span" style="white-space:pre"> </span>}<br> 402 <span class="Apple-tab-span" style="white-space:pre"> </span><br>(lldb) print Node<br>(llvm::MDNode *) $3 = 0x00000001180b74c0<br>(lldb) call Node->dump()<br>!{i32 786468}<br><br>(lldb) call V->dump()<br>!{}<br><br>(lldb) <br><br><br><br><br>Here’s the first part of the backtrace:<br><br>(lldb) bt<br>* thread #1: tid = 0x4ec96f, 0x00007fff93137866 libsystem_kernel.dylib`__pthread_kill + 10, queue = 'com.apple.main-thread', stop reason = signal SIGABRT<br> frame #0: 0x00007fff93137866 libsystem_kernel.dylib`__pthread_kill + 10<br> frame #1: 0x00007fff8cd8035c libsystem_pthread.dylib`pthread_kill + 92<br> frame #2: 0x0000000103ca78ab clasp_boehm_d`raise(sig=6) + 27 at Signals.inc:373<br> frame #3: 0x0000000103ca7962 clasp_boehm_d`abort + 18 at Signals.inc:390<br> frame #4: 0x0000000103ca7941 clasp_boehm_d`__assert_rtn(func=0x000000010432361c, file=0x00000001043231df, line=345, expr=0x0000000104323720) + 129 at Signals.inc:386<br> frame #5: 0x0000000103bfa48d clasp_boehm_d`llvm::Value::replaceAllUsesWith(this=0x00000001180b74c0, New=0x000000010985b330) + 317 at Value.cpp:344<br> frame #6: 0x0000000103a67c3e clasp_boehm_d`llvm::DIDescriptor::replaceAllUsesWith(this=0x00007fff5fb9e288, D=0x000000010985b330) + 254 at DebugInfo.cpp:399<br> * frame #7: 0x0000000103a4e8e9 clasp_boehm_d`llvm::DIBuilder::finalize(this=0x0000000116bba4e0) + 185 at DIBuilder.cpp:40<br> frame #8: 0x00000001010cd4c8 clasp_boehm_d`core::IndirectVariadicMethoid<core::policies::policies_<>, llvmo::DIBuilder_O, void (this=0x000000010c6ea5b8, lcc_resultP=0x00007fff5fb9eb58, arg0=<unavailable>)()>::invoke(gctools::multiple_values<core::T_O>*, gctools::smart_ptr<core::T_O>) + 232 at external_wrappers_indirect_methoids.h:2704<br> frame #9: 0x00000001010cd1f1 clasp_boehm_d`core::IndirectVariadicMethoid<core::policies::policies_<>, llvmo::DIBuilder_O, void (this=0x000000010c6ea5b8, lcc_resultP=0x00007fff5fb9eb58, lcc_nargs=1, lcc_fixed_arg0=0x000000010d1dd098, lcc_fixed_arg1=0x0000000000000000, lcc_fixed_arg2=0x0000000000000000, lcc_fixed_arg3=0x0000000000000000, lcc_fixed_arg4=0x0000000000000000)()>::invoke(gctools::multiple_values<core::T_O>*, unsigned long, core::T_O*, core::T_O*, core::T_O*, core::T_O*, core::T_O*) + 577 at external_wrappers_indirect_methoids.h:2698<br> frame #10: 0x00000001009a2426 clasp_boehm_d`core::SingleDispatchGenericFunctionClosure::invoke(this=0x000000010c6ea558, lcc_resultP=0x00007fff5fb9eb58, lcc_nargs=1, lcc_fixed_arg0=0x000000010d1dd098, lcc_fixed_arg1=0x0000000000000000, lcc_fixed_arg2=0x0000000000000000, lcc_fixed_arg3=0x0000000000000000, lcc_fixed_arg4=0x0000000000000000) + 2022 at <a href="http://singleDispatchGenericFunction.cc">singleDispatchGenericFunction.cc</a>:183<br> frame #11: 0x00000001010f5d5f clasp_boehm_d`sp_FUNCALL(resultP=0x00007fff5fb9f168, closure=0x000000010c6ea558, lcc_nargs=1, lcc_fixed_arg0=0x000000010d1dd098, lcc_fixed_arg1=0x0000000000000000, lcc_fixed_arg2=0x0000000000000000, lcc_fixed_arg3=0x0000000000000000, lcc_fixed_arg4=0x0000000000000000) + 815 at <a href="http://intrinsics.cc">intrinsics.cc</a>:272<br><br><br><br><br><br></blockquote><br></blockquote></div><br></div></body></html>