The [.len] annotation to the first argument — is that documented somewhere?
I could not find it here: https://man7.org/linux/man-pages/man7/man-pages.7.html
I guess it is supposed to add clarity to the prototype but I've not seen this usage documented.
# examples
int pkey_mprotect(void addr[.len], size_t len, int prot, int pkey);
ssize_t read(int fd, void buf[.count], size_t count);