[LLVMdev] [cfe-dev] [RFC] Raising LLVM minimum required MSVC version to 2013 for trunk

Yaron Keren yaron.keren at gmail.com
Sun Aug 24 00:45:23 PDT 2014


"Why do developers make such ridiculous statements about broken tools?"

Richard, clang on Windows is not completely compatible with either mingw or
Visual C++ toolchains so it's not (yet! clang is improving all the time) a
practical alternative.

1) clang TLS is not compatible with mingw implementation emutls, so no
C++11 concurrency. (anyone know of a solution?)
2) clang does not produce debug information in Visual C++ format (except
for line infromation), so no debugging.

I'm not sure is SEH support is ready in clang.

 This leaves a C++ developer two main choices, the mingw toolchain or
the Visual
C++ one. I'm not choosing based on brouchures or blog posts. I do work with
both toolchains extensively. My preference for development work is working
around the C++ limitations of Visual C++ in exchange for developing under
Visual Studio IDE which I find most productive.

YMMV, please, I'm not trying to start a flame war.

Ideally, I'd like to see clang completely support Visual C++ ABI and
debugging info so we'll have the best solution, clang with Visual Studio
and integrated debugger.

Yaron



2014-08-24 4:49 GMT+03:00 Óscar Fuentes <ofv at wanadoo.es>:

> Alex Rosenberg <alexr at leftfield.org> writes:
>
> > On Aug 23, 2014, at 1:24 PM, Renato Golin <renato.golin at linaro.org>
> wrote:
> >>
> >> Also,
> >> compiling Clang with MSVC and making Clang MSVC compatible are two
> >> completely different things. A commercial toolchain based on MSVC
> >> compatibility doesn't necessarily need to be compiled with MSVC
> >> itself.
> >
> > But it must. If you want to be able to use LLVM DLLs inside a Windows
> > app, it has to be built with MSVC because they have their own C++ ABI.
>
> This is false. LLVM libraries can be used on C++ Windows applications
> just fine without using MSVC at all.
>
> > At some point, Clang will support Microsoft's ABI well enough to
> > consider a bootstrap instead.
>
> AFAIK Clang bootstraps on MinGW-w64.
>
> To go back on topic: C++ features advertised by MSVC as recently
> supported usually are too immature to be used on practice. So looking at
> a brochure is not enough when deciding what you gain when you upgrade
> your MSVC install.
>
> _______________________________________________
> cfe-dev mailing list
> cfe-dev at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140824/5798a24d/attachment.html>


More information about the llvm-dev mailing list