[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Octave-bug-tracker] [bug #49296] Visual Studio build issue
From: |
Bill Greene |
Subject: |
[Octave-bug-tracker] [bug #49296] Visual Studio build issue |
Date: |
Sun, 9 Oct 2016 12:42:43 +0000 (UTC) |
User-agent: |
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.143 Safari/537.36 |
Follow-up Comment #4, bug #49296 (project octave):
>Maybe something in the compatibility
>between the two compilers and how exceptions are thrown/caught?
My understanding is that this is generally a problem between different
C++ compilers. After googling around and also experimenting, I have not
been able to find a C++ exception type that can be thrown by a VC++ DLL
and caught by a MinGW main program.
I believe that the setjmp/longjmp mechanism used in Octave 4.0 for
implementing mexErr* was superior to the C++ exceptions used in 4.2.
I think it is perfectly reasonable to tell users that any exception
thrown in a mex module should also be caught in that module. So
having Octave itself throw exceptions in the mexErr* functions is a
bad design decision IMHO.
By the way, matlab is built with VC++ on windows. But they *do* support
writing mex functions with MinGW by, presumably, *not* throwing exceptions
in the mexErr* functions.
_______________________________________________________
Reply to this item at:
<http://savannah.gnu.org/bugs/?49296>
_______________________________________________
Message sent via/by Savannah
http://savannah.gnu.org/