Does your code handle explicit template specializations with inconsistent DLL 
attributes?  I'm thinking of this test case:

  template <typename T> struct Foo { T get() { return {}; } };
  template <> struct __declspec(dllimport) Foo<int> { int get() { return 42; } 
};
  struct __declspec(dllexport) Bar : Foo<int> {
    int baz() { return Foo<int>::get(); }
  };
  Bar b;

MSVC appears to import Foo<int>::get(), but if I understand your code 
correctly, it will diagnose this.

http://reviews.llvm.org/D4264



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

Reply via email to