This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

libsupc++, _cxa references, and Dinkum libcpp


Hi.

I'm working on porting gcc-3.2.3 to the various QNX platforms.  We use both
libstdc++ and Dinkumware libcpp for C++.  The difficulty here is that gcc
(actually cc1plus I think) is emitting __cxa* symbols, like the call:

  push_throw_library_fn (get_identifier ("__cxa_call_unexpected"), tmp);

in gcc/cp/except.c:init_exception_processing().  So when I build the
Dinkumware with gcc-3.2.3, the libcpp ends up with these undefined references
to various __cxa symbols.  These symbols are in libsupc++, but so are a number
of other symbols that conflict with the Dinkumware.

Does a way exist now to resolve this?  If not, perhaps the __cxa stuff coud be
split out of libsupc++ into a libcxa.a that gets linked into libsupc++, but
could also be installed/used for this kind of situation.  This is what I am
considering doing internally, but I would have to potentially update my lib
with each gcc release.

Thoughts?  Comments?

Thanks.
GP


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]