rsmith added a comment.

In https://reviews.llvm.org/D51789#1234903, @ldionne wrote:

> I think now's a good time to bikeshed the name of the attribute if you have 
> other suggestions.


OK, so the semantics of this attribute are "explicit instantiation declarations 
or definitions applied to the enclosing class do not apply to this member", 
right? So it opts the member out of both `extern template` and (non-`extern`) 
`template`, but only when applied to an enclosing class.

Maybe something like `exclude_from_explicit_instantiation`? That's a little 
longer than I'd like, but if it's going to be hidden behind a macro most of the 
time I could live with it.
Or maybe `no_transitive_instantiation`? That's less explicit about the purpose 
of the attribute, but is a more comfortable length.


Repository:
  rC Clang

https://reviews.llvm.org/D51789



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to