This is great news. I am pulling down the mainline and will see if this clears things up.<br><br>- Tim<br><br><div class="gmail_quote">On Tue, Jan 20, 2009 at 11:54 PM, Duncan Sands <span dir="ltr"><<a href="mailto:baldrick@free.fr">baldrick@free.fr</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Hi,<br>
<div class="Ih2E3d"><br>
> The problem that I've run into is that the LLVM codebase does<br>
> certain "idiomatic" things with STL containers that cause assertion<br>
> failures in the Microsoft runtime. Most notably:<br>
> - Taking the address of the "first element" of an emtpy vector<br>
> (either &v[0] or &*v.begin())<br>
> - Using an iterator into a collection (even if just for iterator<br>
> comparison) after an erase() or similar on that collection has<br>
> invalidated all iterators<br>
> These assertions can occur in both debug and release configurations<br>
> (Microsoft includes certain assertions in the release runtime for<br>
> "security").<br>
<br>
</div>if you configure with --enable-expensive-checks on linux then I<br>
think all of these are checked.  The upcoming 2.5 llvm build is<br>
mostly clean but some issues did come up when building llvm-gcc.<br>
They are being worked on (at least I hope they are!), PR3358.<br>
<br>
Ciao,<br>
<br>
Duncan.<br>
_______________________________________________<br>
LLVM Developers mailing list<br>
<a href="mailto:LLVMdev@cs.uiuc.edu">LLVMdev@cs.uiuc.edu</a>         <a href="http://llvm.cs.uiuc.edu" target="_blank">http://llvm.cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a><br>
</blockquote></div><br>