This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: Strange linking behaviour in conjunction with ARM-EABI unwinding routines (__cxa_begin_cleanup)
- From: Andreas Schwab <schwab at suse dot de>
- To: "Thomas Schmid via binutils" <binutils at sourceware dot org>
- Cc: Thomas Schmid <scth2000 at yahoo dot de>
- Date: Tue, 12 Sep 2017 10:03:21 +0200
- Subject: Re: Strange linking behaviour in conjunction with ARM-EABI unwinding routines (__cxa_begin_cleanup)
- Authentication-results: sourceware.org; auth=none
- References: <2091035514.147309.1505201756429.ref@mail.yahoo.com> <2091035514.147309.1505201756429@mail.yahoo.com>
On Sep 12 2017, "Thomas Schmid via binutils" <binutils@sourceware.org> wrote:
> When I compile and link a simple C++-library consisting of the files
> test.cpp, TestClass.cpp, TestClass.h
> some unwinding support routines like '__cxa_begin_cleanup' are
> weak-referenced from the library,
> 'objdump -T' showing them as
> 00000000 w D *UND* 00000000 __cxa_begin_cleanup
> 00000000 w D *UND* 00000000 __cxa_call_unexpected
>
> '__cxa_begin_cleanup' is implemented in libsupc++, which our library is
> linked with, but the function is not linked into the library.
> Why?
Weak references don't pull in archive members.
Andreas.
--
Andreas Schwab, SUSE Labs, schwab@suse.de
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."