[RFC v3] scripts: kernel-doc: reduce repeated regex expressions into variables

Joe Perches joe at perches.com
Fri Apr 30 02:03:09 UTC 2021


On Thu, 2021-04-29 at 17:39 -0600, Jonathan Corbet wrote:
> Aditya Srivastava <yashsri421 at gmail.com> writes:
> 
> > There are some regex expressions in the kernel-doc script, which are used
> > repeatedly in the script.
> > 
> > Reduce such expressions into variables, which can be used everywhere.
> > 
> > A quick manual check found that no errors and warnings were added/removed
> > in this process.
> > 
> > Suggested-by: Jonathan Corbet <corbet at lwn.net>
> > Signed-off-by: Aditya Srivastava <yashsri421 at gmail.com>
> > ---
> > Changes in v3:
> > - Remove variables for separate qualifiers in "sub dump_struct"
> > - Make a common variable for all the qualifiers
> > - Make $attribute global variable to use it at "sub check_sections" as well
> > 
> > Changes in v2:
> > - Rename $pointer_function to $function_pointer
> > - Combine elsif-block expressions at "sub dump_function" into lesser regex expressions
> > - Combine $prototype_end1,$prototype_end2 expressions into a common $prototype_end
> > 
> >  scripts/kernel-doc | 71 ++++++++++++++++++++++------------------------
> >  1 file changed, 34 insertions(+), 37 deletions(-)
> 
> So this looks good but ... it adds a warning to the build:
> 
> /stuff/k/git/kernel/Documentation/driver-api/media/v4l2-controls:823: ./include/media/v4l2-ctrls.h:964: WARNING: Invalid C declaration: Expected identifier in nested name. [error at 6]
>   const * v4l2_ctrl_get_menu (u32 id)
>   ------^
> 
> So it looks like something isn't being parsed quite identically?

Perhaps a few of the regexes from checkpatch could be used or
maybe a linux specific perl module produced.




More information about the Linux-kernel-mentees mailing list