Removing default build of gcc

David Chisnall theraven at FreeBSD.org
Sat Jan 26 16:50:10 UTC 2013


On 26 Jan 2013, at 15:22, Konstantin Belousov wrote:

> Your initial assesment of the problem as a misbehaviour of the combination
> of filtering and versioning made no sense to me, I asked you to provide
> the isolated test case, which you did not.

The test case in the PR was such a test case.  libstdc++ and libsupc++ export a few symbols (including the ones that I mentioned in the email that you are replying to) with different versions.  The end result is that you get some cases where some code (typically in libsupc++) 

I am not claiming that this is an rtld bug, so I don't know why you keep going on about it as if I am.  I do not know why you want me to provide you with an isolated test case for a bug that is assigned to me and that I am in the process of fixing.

> Our implementation of filters indeed only allows for the filtered
> symbol to have the same version as the filtee symbol. I re-read the
> SUN documentation about filters (who had designed them), and looked at
> what Linux does there. It seems to me that Sun document spirit forces
> us to behave in a way which our rtld currently does. Linux behaviour is
> useless there, IMHO, since their rtld just inserts filtee before filter
> in the global lookup order (I may be wrong there).

This is COMPLETELY IRRELEVANT to the bug in question, which is that our libcxxrt and libsupc++ version scripts have some incorrect symbol versions.

> I do suggest (again) that the way to fix the issue is to provide the
> isolated test-case and decide if the behaviour of rtld is right.

It is correct.  I am not claiming it is incorrect.  I don't know why you keep repeating that I am.  

> If we
> conclude that the problem is not in rtld but in the versioning mismatch
> between libraries (libstdc++ and libsupc++), I again suggest to provide
> the patch for review first. The ABI seems to become too unwieldly, and
> making ad-hoc changes there could paint us into the corner.

I have a patch, which fixes it in some cases and has been tested, but misses some others.  I am preparing a patch that fixes the versioning consistently across libsupc++ and libcxxrt to match libstdc++.  I want to do this as a single patch, rather than an ad hoc series of changes.  My aim is, as it has always been, to preserve the existing ABI. 

David
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 841 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://lists.freebsd.org/pipermail/freebsd-toolchain/attachments/20130126/779e6001/attachment.sig>


More information about the freebsd-toolchain mailing list