[cfe-dev] clang-cl equivalent option for VC++'s /EH(x)

Edward Diener eldlistmailingz at tropicsoft.com
Wed Nov 20 14:15:55 PST 2013


On 11/20/2013 1:15 PM, Reid Kleckner wrote:
> clang-cl currently does not expose this option because LLVM doesn't
> support VC++-compatible 32-bit exception handling today.  However, I
> believe it *does* support win64 exceptions, but I haven't tested it
> personally.

What do you mean by "win64" exceptions ?

>
> LLVM will probably never support the full asynchronous exception model
> of MSVC because it won't ever model control flow from each load, store,
> or div that might trap to associated cleanup code.
>
> I would support wiring up /EH(x) to support C++ exceptions on win64, and
> warning that we're ignoring it on 32-bit Windows like we do today.  We
> should probably warn on the 'a' modifier, since we won't implement it.

Does clang-cl therefore automatically handle synchronous C++ exceptions 
and not handle asynchronous structured error handling exceptions ?

Does it do anything about extern "C" functions which may or may not 
throw exceptions, or is this just a VC++-ism irrelevant to clang-cl ?

>
>
> On Tue, Nov 19, 2013 at 9:53 PM, Edward Diener
> <eldlistmailingz at tropicsoft.com
> <mailto:eldlistmailingz at tropicsoft.com>> wrote:
>
>     Does clang-cl have any equivalent option for VC++'s /EH(x) series of
>     choices for exception handling and asynchronous exception handling
>     when compiling under Windows using the VC++ RTL, since it does not
>     support the /EH(x) compiler flags ?





More information about the cfe-dev mailing list