[LLVMdev] Interactions between LLVM and the Microsoft C++ runtime

Tim Foley tim.foley.is at gmail.com
Wed Jan 21 14:39:03 PST 2009


This is great news. I am pulling down the mainline and will see if this
clears things up.

- Tim

On Tue, Jan 20, 2009 at 11:54 PM, Duncan Sands <baldrick at free.fr> wrote:

> Hi,
>
> > The problem that I've run into is that the LLVM codebase does
> > certain "idiomatic" things with STL containers that cause assertion
> > failures in the Microsoft runtime. Most notably:
> > - Taking the address of the "first element" of an emtpy vector
> > (either &v[0] or &*v.begin())
> > - Using an iterator into a collection (even if just for iterator
> > comparison) after an erase() or similar on that collection has
> > invalidated all iterators
> > These assertions can occur in both debug and release configurations
> > (Microsoft includes certain assertions in the release runtime for
> > "security").
>
> if you configure with --enable-expensive-checks on linux then I
> think all of these are checked.  The upcoming 2.5 llvm build is
> mostly clean but some issues did come up when building llvm-gcc.
> They are being worked on (at least I hope they are!), PR3358.
>
> Ciao,
>
> Duncan.
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20090121/d6f738ca/attachment.html>


More information about the llvm-dev mailing list