> 1, A simple method. > We did some experiments, and we could get the list of functions that need to > be considered directly through this script: > > $ spatch --tokens-c drivers/of/base.c 2>&1 | grep "Tag3 " | grep > "of_node_put() on it when done." | awk -F " - " '{print $1}' | grep -o > "of_[[:print:]]*"
Thanks for your command demonstration. * How are the chances to get these tags better documented? https://github.com/coccinelle/coccinelle/blob/66a1118e04a6aaf1acdae89623313c8e05158a8d/docs/manual/spatch_options.tex#L165 * Would you like to combine the texts from the first two greps in a single search pattern? * I imagine that sort criteria can become relevant for the determined function name list. * Will a software build script be needed for this purpose? > 2, A general method. > We also try to get the list of functions to consider by writing a SmPL, > but this method is not feasible at present, because it is not easy to parse > the comment > header information of these functions. I am curious if corresponding software development challenges will be picked up more. > @r1@ > identifier fn; > comment x; This item is not mentioned as a key word in the manual for the semantic patch language so far while the word is used at seven places in this document. > @@ > > struct device_node * fn (...) > { > ... > } You can not get the desired information if a metavariable like “x” is not actually used in the SmPL search code. How do you think about to take corresponding source code positions better into account? > 3, It's probably interesting to get valuable informations from the comments > of a function. Other development tools provide better support for this data processing area. > We will continue to learn the source code of coccinelle and try to find a way > to achieve it. How will the situation evolve here? > Please kindly give me some help. Do you find the following clarification request interesting? Fix two calls for the program “ocamldoc” https://github.com/coccinelle/coccinelle/issues/111 > We will continue to optimize this SmPL and send a V2 version next week. I got another development concern in the meantime. It seems that you would like to use iteration functionality (add_if_not_present). https://github.com/coccinelle/coccinelle/blob/99e081e9b89d49301b7bd2c5e5aac88c66eaaa6a/docs/manual/cocci_syntax.tex#L1826 How will it matter here? Regards, Markus