================
@@ -425,6 +425,12 @@ Attribute Changes in Clang
        size_t count;
      };
 
+- The attributes ``sized_by``, ``counted_by_or_null`` and ``sized_by_or_null```
+  have been added as variants on ``counted_by``, each with slightly different 
semantics.
+  ``sized_by`` takes a byte size parameter instead of an element count, 
allowing pointees
+  with unknown size. The ``counted_by_or_null`` and ``sized_by_or_null`` 
variants are equivalent
+  to their base variants, except the pointer can be null regardless of 
count/size value.
----------------
delcypher wrote:

Nit: Maybe it's worth calling out (because it's really not obvious) that the 
only valid count for `__sized_by` when the pointer is `NULL` is `0`, 
`__sized_by_or_null` allows **any** count value when the pointer is `NULL`. We 
could also note that this isn't currently enforced.

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

Reply via email to