https://sourceware.org/bugzilla/show_bug.cgi?id=33577
--- Comment #31 from H.J. Lu <hjl.tools at gmail dot com> --- (In reply to Ali Bahrami from comment #29) > In my opinion, the only basis for treating a symbol > as hidden should be that it specifies hidden visibility > it it's st_other field, as extracted by ELF[32|64]_ST_VISIBILITY. > Similarly, the only basis for treating a symbol as local > is that it has STB_LOCAL visibility. The version may reflect > those things, but it doesn't determine them. > > While symbols with VER_NDX_LOCAL are almost always local > (as opposed to globals that actually have hidden visibility), > we know there are other cases where it applies, as we've been > discussing. So I would say that index 0 is the index to be used > when no other version index applies. If I could go back to 1994 > with this discussion fresh in my mind, I might suggest that > it be named VER_NDX_NONE. > > I don't think we should rename it now of course, that > ship has sailed. Rename to VER_NDX_NONE may be too late. But https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/linkers-libraries/version-symbol-section.html can be updated to clarify what version index 0 really means for unversioned global/weak defined/undefined symbols. -- You are receiving this mail because: You are on the CC list for the bug.
