<div>Dear all,</div><div><br></div><div>I am writing a compiler backend using LLVM with MSVC and have noticed that in LLVM version 2.6 it is no longer possible to use Just-In-Time Debugger at the point of assertion failure. The call stack is printed instead and the debugger stops at some strange location with the call stack like the following:</div>
<div><br></div><div>><span class="Apple-tab-span" style="white-space:pre"> </span>msvcr80d.dll!_NMSG_WRITE(int rterrnum=5111881)  Line 198<span class="Apple-tab-span" style="white-space:pre">    </span>C</div><div> <span class="Apple-tab-span" style="white-space:pre">   </span>msvcr80d.dll!_close_nolock(int fh=7209065)  Line 93 + 0x67 bytes<span class="Apple-tab-span" style="white-space:pre">    </span>C</div>
<div> <span class="Apple-tab-span" style="white-space:pre">     </span>msvcr80d.dll!_close_nolock(int fh=5111881)  Line 93 + 0x67 bytes<span class="Apple-tab-span" style="white-space:pre">    </span>C</div><div> <span class="Apple-tab-span" style="white-space:pre">   </span>msvcr80d.dll!_close_nolock(int fh=7209065)  Line 93 + 0x67 bytes<span class="Apple-tab-span" style="white-space:pre">    </span>C</div>
<div> <span class="Apple-tab-span" style="white-space:pre">     </span>msvcr80d.dll!_close_nolock(int fh=6619238)  Line 93 + 0x67 bytes<span class="Apple-tab-span" style="white-space:pre">    </span>C</div><div> <span class="Apple-tab-span" style="white-space:pre">   </span>libmmd.dll!0069006e() <span class="Apple-tab-span" style="white-space:pre">      </span></div>
<div> <span class="Apple-tab-span" style="white-space:pre">     </span>[Frames below may be incorrect and/or missing, no symbols loaded for libmmd.dll]<span class="Apple-tab-span" style="white-space:pre">    </span></div><div> <span class="Apple-tab-span" style="white-space:pre">    </span>msvcr80d.dll!_close_nolock(int fh=7209065)  Line 93 + 0x67 bytes<span class="Apple-tab-span" style="white-space:pre">    </span>C</div>
<div> <span class="Apple-tab-span" style="white-space:pre">     </span>msvcr80d.dll!_close_nolock(int fh=6619238)  Line 93 + 0x67 bytes<span class="Apple-tab-span" style="white-space:pre">    </span>C</div><div> <span class="Apple-tab-span" style="white-space:pre">   </span>libmmd.dll!0069006e() <span class="Apple-tab-span" style="white-space:pre">      </span></div>
<div> <span class="Apple-tab-span" style="white-space:pre">     </span>msvcr80d.dll!_close_nolock(int fh=7209065)  Line 93 + 0x67 bytes<span class="Apple-tab-span" style="white-space:pre">    </span>C</div><div> <span class="Apple-tab-span" style="white-space:pre">   </span>msvcr80d.dll!_close_nolock(int fh=6619238)  Line 93 + 0x67 bytes<span class="Apple-tab-span" style="white-space:pre">    </span>C</div>
<div> <span class="Apple-tab-span" style="white-space:pre">     </span>libmmd.dll!0069006e() <span class="Apple-tab-span" style="white-space:pre">      </span></div><div> <span class="Apple-tab-span" style="white-space:pre">    </span>msvcr80d.dll!_close_nolock(int fh=7209065)  Line 93 + 0x67 bytes<span class="Apple-tab-span" style="white-space:pre">    </span>C</div>
<div> <span class="Apple-tab-span" style="white-space:pre">     </span>msvcr80d.dll!_close_nolock(int fh=6619238)  Line 93 + 0x67 bytes<span class="Apple-tab-span" style="white-space:pre">    </span>C</div><div> <span class="Apple-tab-span" style="white-space:pre">   </span>libmmd.dll!0069006e() <span class="Apple-tab-span" style="white-space:pre">      </span></div>
<div> <span class="Apple-tab-span" style="white-space:pre">     </span>msvcr80d.dll!_close_nolock(int fh=5111881)  Line 93 + 0x67 bytes<span class="Apple-tab-span" style="white-space:pre">    </span>C</div><div> <span class="Apple-tab-span" style="white-space:pre">   </span>msvcr80d.dll!_close_nolock(int fh=5111881)  Line 93 + 0x67 bytes<span class="Apple-tab-span" style="white-space:pre">    </span>C</div>
<div> <span class="Apple-tab-span" style="white-space:pre">     </span>msvcr80d.dll!_close_nolock(int fh=5111881)  Line 93 + 0x67 bytes<span class="Apple-tab-span" style="white-space:pre">    </span>C</div><div> <span class="Apple-tab-span" style="white-space:pre">   </span>msvcr80d.dll!_close_nolock(int fh=5177412)  Line 93 + 0x67 bytes<span class="Apple-tab-span" style="white-space:pre">    </span>C</div>
<div><br></div><div>Is there a way to get the old behaviour of handling (or indeed "not handling") the assertion failures?</div><div><br></div><div>Best regards,</div><div>Victor</div><div><br></div>