Re: [RFC] docs: Define c_paren_attributes for attributes with arguments

From: Jonathan Corbet
Date: Wed Sep 21 2022 - 17:00:46 EST


Kees Cook <keescook@xxxxxxxxxxxx> writes:

> While Sphinx's "c_id_attributes" is needed for basic attributes, any
> attributes with arguments need to be defined in "c_paren_attributes"
> to avoid errors like:
>
> include/linux/fortify-string.h:116: warning: Function parameter or member '__builtin_strncpy' not described in '__diagnose_as'
> include/linux/fortify-string.h:116: warning: Function parameter or member '1' not described in '__diagnose_as'
> include/linux/fortify-string.h:116: warning: Function parameter or member '2' not described in '__diagnose_as'
> include/linux/fortify-string.h:116: warning: Function parameter or member '3' not described in '__diagnose_as'
>
> Move such attributes to "c_paren_attributes" and add __alloc_size
> and __diagnose_as to the list.

So which tree are those warnings coming from? I can't reproduce them
with linux-next.

As Akira noted, the kernel-doc script is the source of those warnings,
so changing the Sphinx configuration is unlikely to help. I think we
just need to teach kernel-doc to ignore those attributes.

Thanks,

jon