This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/32470] [4.2/4.3 regression] fvisibility=hidden without effect in some cases
- From: "gd at spherenet dot de" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 1 Oct 2007 14:42:13 -0000
- Subject: [Bug c++/32470] [4.2/4.3 regression] fvisibility=hidden without effect in some cases
- References: <bug-32470-14745@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #7 from gd at spherenet dot de 2007-10-01 14:42 -------
Just to be sure I understood everything correctly. Assume the following code:
namespace foo __attribute__((__visibility__("default"))) {
...
}
namespace foo {
...
}
The same binding level is used for both namespace definitions, but visibility
is pushed/popped only when entering/leaving the scope of the first definition.
The only purpose of has_visibility is to indicate that visibility was pushed
for the current namespace definition and needs to be popped when leaving. Yes?
Then we have to reset the has_visibility flag (or drop the flag and find
another way to signal that visibility needs to be popped).
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32470