[<prev] [next>] [day] [month] [year] [list]
Message-ID: <9169c754-17ef-f820-8335-2015e3c37782@web.de>
Date: Tue, 4 Jun 2019 13:28:39 +0200
From: Markus Elfring <Markus.Elfring@....de>
To: Wen Yang <wen.yang99@....com.cn>
Cc: linux-doc@...r.kernel.org, cocci@...teme.lip6.fr,
linux-kernel@...r.kernel.org, Gilles.Muller@...6.fr,
Masahiro Yamada <yamada.masahiro@...ionext.com>,
Michal Marek <michal.lkml@...kovi.net>,
Nicolas Palix <nicolas.palix@...g.fr>,
Julia Lawall <julia.lawall@...6.fr>
Subject: Re: Coccinelle: semantic patch for missing of_node_put
> let add_function f c =
> if not (List.mem f !relevant_functions)
> then
> begin
> let s = String.concat " "
> (
> (List.map String.lowercase_ascii
> (List.filter
> (function x ->
> Str.string_match
> (Str.regexp "[a-zA-Z_\\(\\)][-a-zA-Z0-9_\\(\\)]*$")
> x 0) (Str.split (Str.regexp "[ .;\t\n]+") c)))) in
I would interpret one of these function calls in the way
that text splitting is performed here also for space characters
after a concatenation was performed.
> Printf.printf "comments: %s\n" s;
> if contains s relevant_str
> then
> Printf.printf "Found relevant function: %s\n" f;
> relevant_functions := f :: !relevant_functions;
> end
>
> @r@
> identifier fn;
> comments c;
> type T = struct device_node *;
> @@
>
> T@c fn(...) {
> ...
> }
>
> @script:ocaml@
> f << r.fn;
> c << r.c;
> @@
>
> let (cb,cm,ca) = List.hd c in
> let c = String.concat " " cb in
> add_function f c
Can an other data processing variant be more reasonable?
Regards,
Markus
Powered by blists - more mailing lists