On Apr 18, 2012, at 8:35 PM, Chandler Carruth wrote:
> On Wed, Apr 18, 2012 at 8:09 PM, Rafael Espíndola 
> <[email protected]> wrote:
> I have a small concern that if a users writes an explicit
> attribute in a class member,  he will find it surprising when it gets
> overwritten.
> 
> I'm not sufficiently well versed in visibility rules to really chime in on 
> what the right model is, but there is a simple solution to this problem at 
> least: add a warning about explicit member visibility attributes that get 
> overridden?

But all of the attributes here have an effect.  If you instantiated
Rafael's template at a type with non-hidden visibility, e.g. int,
the member's attribute still takes precedence.  The attribute is
only "overridden" in the specific case of instantiating the
template at a hidden argument.  I'm not convinced this is
actually a problem that bears a warning, vs. something that
we should defer to some hypothetical "explain everything that's
happening with this symbol" IDE query.

John.
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to