From help-request at octave dot org Thu Jan 20 16:48:36 2005 Subject: PS: Building Octave on cygwin with gcc3.3.3 From: "John W. Eaton" To: "Paul Thomas" Cc: "John W. Eaton" , Date: Thu, 20 Jan 2005 17:51:54 -0500 On 20-Jan-2005, Paul Thomas wrote: | Thus, I came to the conclusion that some other part of gcc than new/delete | is primarily responsible. I am beginning, from other non-octave indications, | to SUSPECT virtual functions and their Vtable accesses as the culprit. I | intend to use a model of the octave classes to do comparative timing tests. It is possible that having virtual functions forces some exception handling code to be generated. I don't know the details. It seems that you could easily check this by looking at the generated code. In any case, I don't think it is reasonable to think of Octave's use of virtual functions as the bug that needs to be fixed. It seems to me that the solution to all of this mess is to have a version of GCC that uses a better method of exception handling (we'll need that anyway, as it is likely that in the future, Octave will use exception handling more extensively). As I understand it, we already have a fix, but the current implementation causes some problems for code that combines C++ exception handling with W32 API functions. Another problem that has not received much attention (as far as I can tell) is why libstdc++ is not built as a shared library on Windows systems. Does anyone have any clues about why that is not done by default? Having a shared libstdc++ would make .oct files much smaller. jwe ------------------------------------------------------------- Octave is freely available under the terms of the GNU GPL. Octave's home on the web: http://www.octave.org How to fund new projects: http://www.octave.org/funding.html Subscription information: http://www.octave.org/archive.html -------------------------------------------------------------