This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c/13134] [3.4 regression] Visibility attribute is ignored
- From: "austern at apple dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 24 Nov 2003 06:16:15 -0000
- Subject: [Bug c/13134] [3.4 regression] Visibility attribute is ignored
- References: <20031120005743.13134.bryner@brianryner.com>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From austern at apple dot com 2003-11-24 06:16 -------
Subject: Re: [3.4 regression] Visibility attribute is ignored
On Nov 23, 2003, at 7:09 PM, bryner at brianryner dot com wrote:
>
> ------- Additional Comments From bryner at brianryner dot com
> 2003-11-24 03:09 -------
> (In reply to comment #8)
>> I'm testing a patch right now that copies visibility from old
>> declarations to
>> new ones, and that allows visibility on new declarations to override
>> old ones,
>> *but* I'm treating default visibility as just the same as no
>> visibility
>> declaration. I don't like the idea of having something that's called
>> "default"
>> but that gives you different behavior than leaving it out. That
>> strikes me as
>> an artifact of the old implementation
>
> Unfortunately, that comes straight from the ELF visibility types.
> DEFAULT is
> one of these types. So from that point of view, it should not work any
> differently from the other visibility types.
To some extent it does work differently already: it's what you get if
you don't
specify something else. What I find inelegant is the idea that you get
DEFAULT
either by saying nothing or by explicitly saying visibility("default"),
but that
saying nothing means a slightly weaker thing than saying it explicitly.
I'd
really rather avoid having that if possible.
--Matt
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13134