On Thu, Sep 9, 2010 at 4:25 AM, JonY <[email protected]> wrote: > On 9/8/2010 23:34, Mario Emmenlauer wrote: >> Please excuse my ignorance, I just read the subject and not the details >> but I would like to note that throwing/catching exceptions between DSO's >> (dynamically linked objects) can be very tricky with gcc, see >> http://gcc.gnu.org/wiki/Visibility >> >> esp. the Section "Problems with C++ exceptions" >> >> I couldn't get exceptions to work between DSO's _at_all_ when the >> exceptions where defined in a static library. So you might want to >> take a close look before using them. Hope this is useful, and if not, >> please forgive my ignorance! >> > > OP says the DLL is C code. Exception doesn't automatically mean C++. > umm, Mario may be on the right track. Does mexPrintf() use C++ string class? If so, and you are using auto-import to link in libstdc++.dll, then the problems described at: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16612, may bite. Unless libstdc++ basic_string class is marked as dllimport, _S_empty_rep is effectively hidden and different modules will have different addresses for _S_empty_rep. This can be fised by compiling libstdc++
------------------------------------------------------------------------------ This SF.net Dev2Dev email is sponsored by: Show off your parallel programming skills. Enter the Intel(R) Threading Challenge 2010. http://p.sf.net/sfu/intel-thread-sfd _______________________________________________ Mingw-w64-public mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
