David Edelsohn wrote: > /* If defined in this object and visibility is not default, must be > local. */ > else if (DECL_VISIBILITY (exp) != VISIBILITY_DEFAULT) > local_p = true; > > Why does binds_local_p return true for non-default visibility?
I was just about to ask that. It's an intermediate case: more local than default visibility, but not *that* local. If the function is defined, then it probably does bind locally, in that nothing can come along later and replace the definition we saw. I think the DECL_EXTERNAL case should go before the visibility checks in default_binds_local_p_1. A DECL_EXTERNAL entity never binds locally. -- Mark Mitchell CodeSourcery [EMAIL PROTECTED] (650) 331-3385 x713