Raymond Toy wrote:

>>>>>>"Bj=F6rn" =3D=3D rn Lindberg <Bj> writes:
>>>>>>            
>>>>>>
>
>    >> I am trying to compile a shared library so that I can use it with=20
>    >> EXT:LOAD-FOREIGN, but when loading it I get this error:
>
>    Bj=F6rn> <...>
>
>    Bj=F6rn> Nevermind, I solved this problem. It seems that I had to manua=
>lly link=20
>    Bj=F6rn> against the C++ runtime when compiling the library. Now it loa=
>ds.
>
>Great!  I am curious, though, if a C++ library will work properly with
>CMUCL.  Are try/catch blocks working?  How do global objects (if any)
>get initialized?
>  
>
I (currently) do not have any global objects. As I said, the functions 
in the library available to CMUCL are declared as extern "C" to avoid 
the name mangling. Uncaught (on the C++ side) exceptions end up as a 
SIGABRT in CMUCL and drops me into the debugger. My intention is not to 
let any exceptions leak over though. Even if it is possible to recover 
from them in Lisp, you don't get any information from these errors.


Bj�rn


Reply via email to