linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
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


  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).