Date: Sat, 26 Jan 2013 16:35:31 +0000 From: David Chisnall <theraven@FreeBSD.org> To: Konstantin Belousov <kostikbel@gmail.com> Cc: toolchain@FreeBSD.org Subject: Re: Removing default build of gcc Message-ID: <8A0C6AD5-F247-4488-B44A-85AC2D539D4D@FreeBSD.org> In-Reply-To: <20130126152225.GC2522@kib.kiev.ua> References: <74D8E686-3679-46F2-8A08-4CF5DFC020CA@FreeBSD.org> <20130125113122.GN2522@kib.kiev.ua> <E0EA1F1F-99BB-47F5-94A3-1C197F680BD9@bsdimp.com> <20130125195941.GW2522@kib.kiev.ua> <F27709EE-6C8E-4943-BFAF-CF05AB34C1ED@FreeBSD.org> <20130126152225.GC2522@kib.kiev.ua>
index | next in thread | previous in thread | raw e-mail
[-- Attachment #1 --] 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 [-- Attachment #2 --] -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.18 (Darwin) iQIcBAEBAgAGBQJRBAXTAAoJEKx65DEEsqIdbcsQALSJ8dbfVWKtXszQc+p6wJG2 cA4mHmRaeDUBcJ0iCwIQQhtwysmYLZ3varoPoOs/2GDZI1LXxXlmThbjOyn57K3x 2GtKju7UaZFxxcWBfEvv5Je4gUXpXDUxuqtzbalMKjHFrrkFRvDLv2z1P57md5Aa 3BxMmg3cnq41qcHdq2Uepq+Vg87UCo76MHGgs9JR5CWSVDqG9FYEu+rZG7Pcr/jd cYRoX/GuG+GCvzJnEc7i/eSPmJD1YhMG6qHPw9lXlewo0nehg0HBENgfhFr5AHo9 /02mD5XzoI3BI8RfeeUKNDkhrPdeqEXR8K5eDvzjf73eCke5kQ1jQio6zhx/O/2Q FHpQ5MXfOeRGsXdjeshktUSgJFH6N5ToepO2EcJ8E4x7y+I82E5ylU2b1OCJ/DGZ H/4zIXw852oXF8Fua4qeIIGOufQirBAY5xY2Bm4Bd/QN6k89NKb7e7e2MP6CSumz Q6GM4TPDI+Ixvvmi5tF7lPyrYaLDDCChWBZK5oAeifLh7yAV6u49T4ykQ81QjTtj 4LiyvRxf03u1yeioX8MKwzJ3ITrcamRlQCcJzrDLThGS9uBNWRefYf32yq3tAeZt wtE/WdDngiivL0OS9a0cGn8FB7tVcRiyv+NxPChj6v2tPQK2uZN1x+ZZmrB+rtt6 UNSN371KvxhVl3jL9mGq =HW4T -----END PGP SIGNATURE-----home | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?8A0C6AD5-F247-4488-B44A-85AC2D539D4D>
