[cfe-commits] [patch] Template instantiation and visibility

Rafael EspĂ­ndola rafael.espindola at gmail.com
Mon Apr 23 05:39:51 PDT 2012


> Thanks. With this patch, 'printing' gives a different linker error:

This reduces to a really ugly case when compiling with -fvisibility=hidden.

template<typename T>
struct DEFAULT foo {
  void bar() {}
};
class zed;
template class foo<zed>;
class DEFAULT zed {
};

GCC propagates the DEFAULT in zed, we don't invalidate the visibility
of foo<zed>. I wonder if producing an error in here is not the best
option. I will check what we can do.

>
> Nico

Cheers,
Rafael



More information about the cfe-commits mailing list