From: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
To: Linux Doc Mailing List <linux-doc@vger.kernel.org>
Cc: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>,
linux-kernel@vger.kernel.org, Jonathan Corbet <corbet@lwn.net>
Subject: [PATCH 07/17] scripts: kernel-doc: proper handle @foo->bar()
Date: Tue, 17 Mar 2020 15:54:16 +0100 [thread overview]
Message-ID: <69af92761e5e286f00c29105615de20d1dcab9c3.1584456635.git.mchehab+huawei@kernel.org> (raw)
In-Reply-To: <cover.1584456635.git.mchehab+huawei@kernel.org>
The pattern @foo->bar() is valid, as it can be used by a
function pointer inside a struct passed as a parameter.
Right now, it causes a warning:
./drivers/firewire/core-transaction.c:606: WARNING: Inline strong start-string without end-string.
In this specific case, the kernel-doc markup is:
/**
* fw_core_remove_address_handler() - unregister an address handler
* @handler: callback
*
* To be called in process context.
*
* When fw_core_remove_address_handler() returns, @handler->callback() is
* guaranteed to not run on any CPU anymore.
*/
With seems valid on my eyes. So, instead of trying to hack
the kernel-doc markup, let's teach it about how to handle
such things. This should likely remove lots of other similar
warnings as well.
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
---
scripts/kernel-doc | 2 ++
1 file changed, 2 insertions(+)
diff --git a/scripts/kernel-doc b/scripts/kernel-doc
index f2d73f04e71d..d15c8ea95d93 100755
--- a/scripts/kernel-doc
+++ b/scripts/kernel-doc
@@ -214,6 +214,7 @@ my $type_constant2 = '\%([-_\w]+)';
my $type_func = '(\w+)\(\)';
my $type_param = '\@(\w*((\.\w+)|(->\w+))*(\.\.\.)?)';
my $type_fp_param = '\@(\w+)\(\)'; # Special RST handling for func ptr params
+my $type_fp_param2 = '\@(\w+->\S+)\(\)'; # Special RST handling for structs with func ptr params
my $type_env = '(\$\w+)';
my $type_enum = '\&(enum\s*([_\w]+))';
my $type_struct = '\&(struct\s*([_\w]+))';
@@ -249,6 +250,7 @@ my @highlights_rst = (
[$type_member_func, "\\:c\\:type\\:`\$1\$2\$3\\\\(\\\\) <\$1>`"],
[$type_member, "\\:c\\:type\\:`\$1\$2\$3 <\$1>`"],
[$type_fp_param, "**\$1\\\\(\\\\)**"],
+ [$type_fp_param2, "**\$1\\\\(\\\\)**"],
[$type_func, "\$1()"],
[$type_enum, "\\:c\\:type\\:`\$1 <\$2>`"],
[$type_struct, "\\:c\\:type\\:`\$1 <\$2>`"],
--
2.24.1
next prev parent reply other threads:[~2020-03-17 14:54 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <cover.1584456635.git.mchehab+huawei@kernel.org>
2020-03-17 14:54 ` [PATCH 01/17] docs: amu: supress some Sphinx warnings Mauro Carvalho Chehab
2020-03-17 14:54 ` [PATCH 02/17] docs: arm64: booting.rst: get rid of some warnings Mauro Carvalho Chehab
2020-03-17 14:54 ` [PATCH 03/17] docs: pci: boot-interrupts.rst: improve html output Mauro Carvalho Chehab
2020-03-17 22:06 ` Bjorn Helgaas
2020-03-17 14:54 ` [PATCH 04/17] kernel: futex.c: get rid of a docs build warning Mauro Carvalho Chehab
2020-03-17 16:58 ` Peter Zijlstra
2020-03-17 17:36 ` Jonathan Corbet
2020-03-17 19:16 ` Peter Zijlstra
2020-03-20 15:28 ` Thomas Gleixner
2020-03-20 15:43 ` Jonathan Corbet
2020-03-20 16:00 ` Mauro Carvalho Chehab
2020-03-23 16:33 ` Thomas Gleixner
2020-03-17 14:54 ` [PATCH 05/17] devfreq: devfreq.h: get rid of some doc warnings Mauro Carvalho Chehab
2020-03-18 4:08 ` Chanwoo Choi
2020-03-17 14:54 ` [PATCH 06/17] firewire: firewire-cdev.hL get rid of a docs warning Mauro Carvalho Chehab
2020-03-17 17:27 ` Stefan Richter
2020-03-17 14:54 ` Mauro Carvalho Chehab [this message]
2020-03-17 14:54 ` [PATCH 08/17] lib: bitmap.c: get rid of some doc warnings Mauro Carvalho Chehab
2020-03-17 14:54 ` [PATCH 09/17] rcu: update.c: " Mauro Carvalho Chehab
2020-03-17 16:45 ` Paul E. McKenney
2020-03-17 14:54 ` [PATCH 10/17] net: phy: sfp-bus.c: get rid of docs warnings Mauro Carvalho Chehab
2020-03-18 6:39 ` David Miller
2020-03-17 14:54 ` [PATCH 11/17] net: core: dev.c: fix a documentation warning Mauro Carvalho Chehab
2020-03-18 6:40 ` David Miller
2020-03-17 14:54 ` [PATCH 12/17] gpio: gpiolib.c: fix a doc warning Mauro Carvalho Chehab
2020-03-18 9:15 ` Bartosz Golaszewski
2020-03-27 10:22 ` Linus Walleij
2020-03-27 13:47 ` Mauro Carvalho Chehab
2020-03-27 19:25 ` Linus Walleij
2020-03-17 14:54 ` [PATCH 13/17] i2c: include/linux/i2c.h: " Mauro Carvalho Chehab
2020-03-17 15:03 ` Wolfram Sang
2020-03-17 15:05 ` Mauro Carvalho Chehab
2020-03-22 16:21 ` Wolfram Sang
2020-03-17 14:54 ` [PATCH 14/17] infiniband: pa_vnic_encap.h: get rid of a warning Mauro Carvalho Chehab
2020-03-19 0:36 ` Jason Gunthorpe
2020-03-27 14:32 ` Mauro Carvalho Chehab
2020-03-27 15:51 ` Jason Gunthorpe
2020-03-17 14:54 ` [PATCH 15/17] ata: libata-core: fix a doc warning Mauro Carvalho Chehab
2020-03-17 14:54 ` [PATCH 16/17] fs: inode.c: get rid of docs warnings Mauro Carvalho Chehab
2020-03-17 14:54 ` [PATCH 17/17] regulator: driver.h: fix regulator_map_* function names Mauro Carvalho Chehab
2020-03-18 21:57 ` Applied "regulator: driver.h: fix regulator_map_* function names" to the regulator tree Mark Brown
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=69af92761e5e286f00c29105615de20d1dcab9c3.1584456635.git.mchehab+huawei@kernel.org \
--to=mchehab+huawei@kernel.org \
--cc=corbet@lwn.net \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).