[llvm-dev] Propagation of foreign c++ exceptions (msvc, x64, llvm 3.7.1, MCJIT) through IR code

Reid Kleckner via llvm-dev llvm-dev at lists.llvm.org
Thu Jan 21 10:15:58 PST 2016


This sounds like https://llvm.org/bugs/show_bug.cgi?id=24233.

On Thu, Jan 21, 2016 at 6:21 AM, koffie drinker via llvm-dev <
llvm-dev at lists.llvm.org> wrote:

> Hi all,
>
> I have the following code:
>
> [use llvm to generate ir_func() ]
>
> in side the ir_func() there's a call to a native cpp function that throws
> an exception.
> (Just imagine changing the fibonacci example and calling a native c++ func
> that throws inside the fibonacci body)
>
> I can't seem to catch "foreign" exception or any exception using the
> following pseudo code:
>
> try {
> // cast function ptr and execute
>    ir_func();
> } catch (const myEx&) {
> } catch (...) {
> }
>
> Looking at:
> *LLVM_ENABLE_EH:BOOL*Build LLVM with exception-handling support. This is
> necessary if you wish to link against LLVM libraries and make use of C++
> exceptions in your own code that need to propagate through LLVM code.
> Defaults to OFF.
> It seems to be exactly what I require.
>
> I enabled LLVM_ENABLE_EH and LLVM_ENABLE_RTTI but it doesn't seems to
> work.
> I also tested it with /EHs /EHsc in msvc. It makes no difference
>
> I also looked at the ExceptionDemo.cpp, but it seems to be unsupported
> under windows. Do I need to try catch and retrhow in my ir_func() ?
>
> Regards,
>
>
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160121/c4710213/attachment.html>


More information about the llvm-dev mailing list