r175326 - Rework the visibility computation algorithm in preparation

John McCall rjmccall at apple.com
Wed Feb 20 12:24:28 PST 2013


On Feb 20, 2013, at 9:45 AM, Rafael EspĂ­ndola <rafael.espindola at gmail.com> wrote:
>> 2.) Visibility of specializations. Might need clang changes.
>> 
> ....
>> The specialization is explicitly marked as visible, and since string
>> is in a system header I can't change its visibility. Is this also an
>> intended change?
> 
> This reduces to
> 
> -------------------
> class foo {
> };
> 
> template<typename T>
> class bar {
>  void g();
> };
> 
> template<>
> __attribute__((visibility("default"))) void bar<foo>::g();
> 
> template<>
> void bar<foo>::g() {
> }
> -------------------------
> 
> Which looks like an unintended change. John, do you agree?

Yes, I think this definition clearly ought to get default visibility
regardless of compilation settings.

John.



More information about the cfe-commits mailing list