help-gplusplus
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Cannot catch exceptions on 64bit.


From: benjamin . bihler
Subject: Cannot catch exceptions on 64bit.
Date: Thu, 10 Apr 2008 02:50:07 -0700 (PDT)
User-agent: G2/1.0

Hi,

if I throw an exception in a shared library it cannot be caught in the
same library. The code for throwing the exception is

throw new TWTMeshingLib::Utils::CTWTException( "Vector length is
zero!", __FUNCTION__, __FILE__, __LINE__ );

and the catching code is

try {...}
catch (TWTMeshingLib::Utils::CTWTException *e)
{...}.

The program was compiled with g++ 4.1.2 on an OpenSUSE 64bit system
and on a Debian 64bit system. The exception can be caught, if the
library is linked statically and it can always be caught on 32 bit
systems. So probably the code itself is correct.

Is this a known problem? What can I do to catch exceptions within a
dynamic library on 64 bit systems?


Thank you very much,
Benjamin


reply via email to

[Prev in Thread] Current Thread [Next in Thread]