On Thu, 2021-04-29 at 17:39 -0600, Jonathan Corbet wrote: > Aditya Srivastava <yashsri421@xxxxxxxxx> 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@xxxxxxx> > > Signed-off-by: Aditya Srivastava <yashsri421@xxxxxxxxx> > > --- > > 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.