------- Comment #4 from jakub at gcc dot gnu dot org 2006-04-03 11:18 ------- I'd say we should remember template's visibility and use that during instantiation, rather than the currently pushed visibility.
The question is if we want to do that for all template instantiations, or have cases where we override it based on e.g. template arguments. Say the S template from the testcase is instantiated with T = some_type_declared_in_anonymous_namespace. In this case the template instantation can't be used from outside of current .o file (except if export is ever implemented), so perhaps we could make the template instantiation hidden too. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27000