This is the mail archive of the
java-patches@gcc.gnu.org
mailing list for the Java project.
Re: namespace namespace
- From: Dave Korn <dave dot korn dot cygwin at googlemail dot com>
- To: Dave Korn <dave dot korn dot cygwin at googlemail dot com>
- Cc: Jakub Jelinek <jakub at redhat dot com>, Andrew Haley <aph at redhat dot com>, gcc-patches <gcc-patches at gcc dot gnu dot org>, Java Patch List <java-patches at gcc dot gnu dot org>
- Date: Tue, 07 Jul 2009 22:51:27 +0100
- Subject: Re: namespace namespace
- References: <4A40DBB9.80703@intertwingly.net> <4A40E497.8090601@redhat.com> <4A4139C1.5060806@intertwingly.net> <4A41EF61.4060902@redhat.com> <4A421391.6020901@intertwingly.net> <4A48FC28.60608@redhat.com> <4A49F80E.3000605@gmail.com> <4A4A07F5.2040806@redhat.com> <4A4A101A.3090609@gmail.com> <4A4A136A.8040404@redhat.com> <20090630133910.GY4462@tyan-ft48-01.lab.bos.redhat.com> <4A4A1A51.90306@gmail.com>
Dave Korn wrote:
> Jakub Jelinek wrote:
>>>> 000139c0 t
>>>> __ZN3gnu5javax3net3ssl8provider11CipherSuiteC1EPNS3_15CipherAlgorithmEPNS3_20KeyExchangeAlgorithmEPNS3_18SignatureAlgorithmEPNS3_12MacAlgorithmEiiiPN4java4lang6StringE.clone.1
>> No, C++ FE is innocent. *.clone.NNN are created by function versioning, see
>> clone_function_name, and are never exported.
> ^^^^^^^^^^^^^^^^^^^^^^^
>
>> If . doesn't work even for non-exported symbols on your target, the target
>> is misconfigured (look at NO_DOT_IN_LABEL and NO_DOLLAR_IN_LABEL), if it
>> works, why do you have problems with it?
>
> I don't, but I didn't know that for sure until you said above that it would
> definitely never be exported.
Ok, now I do, and they are(*).
I take it that this is a bug in the dllexport attribute getting propagated
unduly to clones when it should only be applied to the original (non-cloned)
version, and not that these clones are meant to be externally visible for some
reason I don't understand?
There's presumably an issue with the handling in the backend hooks, which I
should be able to track down without too much difficulty, but you could help
me with one bit of advice: how do I detect when I've been handed the tree for
a decl of a cloned function rather than an original?
cheers,
DaveK
--
(*) - http://sourceware.org/ml/binutils/2009-07/msg00076.html