================
@@ -5557,6 +5557,21 @@ See :doc:`LTOVisibility`.
   }];
 }
 
+def TypeVisibilityDocs : Documentation {
+  let Category = DocCatType;
+  let Content = [{
+The ``type_visibility`` attribute allows the ELF visibility of a type and its 
vague
+linkage objects (vtable, typeinfo, typeinfo name) to be controlled separately 
from
+the visibility of functions and data members of the type.
+
+For example, this can be used to give default visibility to the typeinfo and 
the vtable
+of a type while still keeping hidden visibility on its member functions and 
static data
+members.
+
+This attribute can only be applied to types and namespaces.
----------------
philnik777 wrote:

Maybe we also want to document the behavior of adding both 
`clang::type_visibility` and `gnu::visibility` to a namespace? (I think 
`clang::type_visibility` overrides `gnu::visibility`)

https://github.com/llvm/llvm-project/pull/79157
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to