Danny Smith wrote:
On Sat, Sep 13, 2003 at 12:43:38PM -0400, Rolf Campbell wrote:
Christopher Faylor wrote:
On Sat, Sep 13, 2003 at 12:20:39PM -0400, Rolf Campbell wrote:
Is this new gcc supposed to be ABI compatible with 3.2.x? Because I
can't link in libraries compiled with an older version of cygwin g++.
/c/temp/cppunit-1.8.0/src/cppunit/TestSucessListener.cpp: undefined
reference to `___gxx_personality_v0'
/c/temp/cppunit-1.8.0/src/cppunit/../../include/cppunit/TestListener.h:33:
undefined reference to `__Unwind_Resume'
gcc 3.2-3 used Dwarf2 exceptions, which worked most of the time. (In fact,
I don't recall any bug reports at all on cygwin list). But it didn't work
with w32api callbacks, nor with some combinations of compiler switches
(notably -mcpu=i586 or -mno-accumulate-outgoing-args and
-fomit-frame-pointer).
cygwin gcc-3.3.1 uses setjmp-longjmp exception mechanism,
mingw does too and has done since gcc-3.2.1.
The two undefined references are Dwarf2 specific. The corresponding
SjLj symbols are __gxx_personality_sj0 and __Unwind_SjLj_Resume.
Danny
Ok, are there command-line switches to change the exception mechanism
used? I would like to be able to use cygwin gcc 3.2 to build libraries
that work with cygwin gcc 3.3.
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/