namespace namespace
Dave Korn
dave.korn.cygwin@googlemail.com
Wed Jul 8 00:31:00 GMT 2009
Jakub Jelinek wrote:
> On Tue, Jul 07, 2009 at 10:51:27PM +0100, Dave Korn wrote:
>>> 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(*).
>
> That would be a target bug then.
Yep, that's what I meant by target hooks.
>> 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?
>
> /* Update the properties.
> Make clone visible only within this translation unit. Make sure
> that is not weak also.
> ??? We cannot use COMDAT linkage because there is no
> ABI support for this. */
> DECL_EXTERNAL (new_node->decl) = 0;
> DECL_COMDAT_GROUP (new_node->decl) = 0;
> TREE_PUBLIC (new_node->decl) = 0;
> DECL_COMDAT (new_node->decl) = 0;
> DECL_WEAK (new_node->decl) = 0;
>
> Certainly !TREE_PUBLIC functions shouldn't be exported from the current
> assembly file in any way...
That should do for me. Thanks!
cheers,
DaveK
More information about the Gcc-patches
mailing list