[PATCH] kernel-doc: handle spaces in array size

From: Randy Dunlap
Date: Fri Apr 06 2007 - 14:48:07 EST


From: Randy Dunlap <randy.dunlap@xxxxxxxxxx>

Unfortunately, kernel-doc has problems with a struct field like this:
uint8_t databuf[NAND_MAX_PAGESIZE + NAND_MAX_OOBSIZE];

simply due to the spaces around the "+" sign, so drop all spaces inside
[...] so that parsing is done correctly (in some sense).

Warning(linux-2.6.20-git15/include/linux/mtd/nand.h:304): No description found for parameter 'NAND_MAX_OOBSIZE]'

This needs to sit in -mm for awhile to see if it has any adverse effects.

And yes, this is just a hack until kernel-doc learns to do better
parsing.

Signed-off-by: Randy Dunlap <randy.dunlap@xxxxxxxxxx>
---
scripts/kernel-doc | 6 ++++++
1 file changed, 6 insertions(+)

--- linux-2.6.21-rc6.orig/scripts/kernel-doc
+++ linux-2.6.21-rc6/scripts/kernel-doc
@@ -1452,6 +1452,12 @@ sub create_parameterlist($$$) {
$arg =~ s/\s*:\s*/:/g;
$arg =~ s/\s*\[/\[/g;

+ # no spaces inside [array size expression];
+ # messes up split/pop/shift/unshift below;
+ while ($arg =~ m/\[.*\s.*\]/) {
+ $arg =~ s/\[(.*)\s(.*)\]/\[$1$2\]/;
+ }
+
my @args = split('\s*,\s*', $arg);
if ($args[0] =~ m/\*/) {
$args[0] =~ s/(\*+)\s*/ $1/;
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/