<div class="gmail_quote">On Sun, Jan 1, 2012 at 5:03 PM, Eli Friedman <span dir="ltr"><<a href="mailto:eli.friedman@gmail.com">eli.friedman@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
2012/1/1 Rafael Ávila de Espíndola <<a href="mailto:rafael.espindola@gmail.com">rafael.espindola@gmail.com</a>>:<br>
<div class="im">> The attached patch fixes PR10113 by disregarding template arguments in<br>
> LV computation when we already have an explicit visibility.<br>
><br>
> This is similar to what the code already does for types. Is it OK?<br>
<br>
</div>Disregarding the effect on visibility, this affects the linkage in<br>
ways which are clearly wrong.<br></blockquote><div><br></div><div>This falls out of my question as well -- why doesn't merge DTRT here? Put another way, once we encounter an explicit visibility specification for a declaration, why would we ever merge it away? (This is distinct from computing a visibility for a declaration from that of a set of N other declarations, some of which use an explicit visibility spec, some of which do not.) I feel like we should have better logic to make an explicit visibility spec trump all else while still merging linkage.... The current logic for merging of explicitly specified visibility makes no sense to me.</div>
</div>