[clang] 6baa8e5 - [Clang][Docs] Clarify no_specializations wording (#218758)

via cfe-commits cfe-commits at lists.llvm.org
Wed Aug 26 02:39:23 PDT 2026


Author: Neha
Date: 2026-08-26T11:39:18+02:00
New Revision: 6baa8e536a200332e3754dabce20beb92a111608

URL: https://github.com/llvm/llvm-project/commit/6baa8e536a200332e3754dabce20beb92a111608
DIFF: https://github.com/llvm/llvm-project/commit/6baa8e536a200332e3754dabce20beb92a111608.diff

LOG: [Clang][Docs] Clarify no_specializations wording (#218758)

Fixes #143719

`[[clang::no_specializations]]` diagnoses both explicit specializations
and partial specializations. The old wording, "explicitly specialized",
is ambiguous because that term means only `template <>` specializations
in the C++ standard.

Added: 
    

Modified: 
    clang/include/clang/Basic/AttrDocs.td

Removed: 
    


################################################################################
diff  --git a/clang/include/clang/Basic/AttrDocs.td b/clang/include/clang/Basic/AttrDocs.td
index 5ec2a68bc038b..95e27ad9a47c4 100644
--- a/clang/include/clang/Basic/AttrDocs.td
+++ b/clang/include/clang/Basic/AttrDocs.td
@@ -1466,8 +1466,8 @@ Query for this feature with `__has_attribute(diagnose_if)`.
 def NoSpecializationsDocs : Documentation {
   let Category = DocCatDecl;
   let Content = [{
-`[[clang::no_specializations]]` can be applied to function, class, or variable
-templates which should not be explicitly specialized by users. This is primarily
+``[[clang::no_specializations]]`` can be applied to function, class, or variable
+templates for which neither an explicit specialization nor a partial specialization should be declared by users. This is primarily
 used to diagnose user specializations of standard library type traits.
   }];
 }


        


More information about the cfe-commits mailing list