[LLVMdev] Using C++'11 language features in LLVM itself

Michael Spencer bigcheesegs at gmail.com
Wed Jan 9 13:04:00 PST 2013

On Wed, Jan 9, 2013 at 11:54 AM, Chris Lattner <clattner at apple.com> wrote:
> On Jan 8, 2013, at 8:09 PM, Peter Newman <peter at uformia.com> wrote:
>>>> One other specific problem with this is that (I'm told) MSVC 2010 doesn't support range-based for loops.  I don't think it is reasonable to require windows users to be on MSVC 2012.  :-(
>>> I suspect you're right about that, but I'd appreciate if some MSVC
>>> users would speak up here. We shouldn't hold back on using range-based
>>> for loops if all our MSVC users are happy to move to MSVC 2012
>>> (assuming no problems with other platforms).
>> For our works project, we are still stuck on MSVC 2005 and MSVC 2010
>> (our software is a binary plugin to established products). Admittedly,
>> we are still sitting on LLVM 2.8 with patches from 2.9 (2.9 wouldn't
>> compile in MSVC 2010 for x64) . We want to move to current LLVM (not
>> least for the NVPTX and AMDIL targets), but have not yet had the
>> available man hours to do so.
> Ok.  Unfortunately, I don't think it makes sense for the general community to bend over backwards to support VC2005 anymore.  We're talking about LLVM 3.3 here (at the earliest), is there a strong reason you couldn't move to VC2010 by whenever you move up to LLVM 3.3?
> -Chris

LLVM has not been compatible with VS2005 for a long time.

And as a note to why you can be held back by external software on VS.
MSVC changes the C++ ABI with every release. If you have a 3rd party
product with no source access, or you need to dynamically link with a
specific version of that software, you must use the same VS version if
you use C++ in the ABI.

- Michael Spencer

More information about the llvm-dev mailing list