Dear Julia,

I have tried the following semantic filter approach out.

@safety_check_with_pointer@
identifier input, member, process, work;
statement is, es;
type input_type, return_type;
@@
 return_type work(input_type * input)
 {
  ... when any
(
* if (!input)
     return ... ;
|
* if (unlikely(ZERO_OR_NULL_PTR(input)))
     return ... ;
|
* if (!input || ... process(& input->member) ... )
     return ... ;
|
* if (input && ... process(& input->member) ... )
     is
  else
     es
)
  ... when any
 }

elfring@Sonne:~/Projekte/Coccinelle/janitor> spatch.opt -sp-file 
show_input_parameter_validation7.cocci 
~/Projekte/Linux/next-patched/fs/kernfs/dir.c
init_defs_builtins: /usr/local/share/coccinelle/standard.h
293 300
Fatal error: exception Failure("minus: parse error: \n = File 
\"show_input_parameter_validation7.cocci\", line 16, column 20,  charpos = 
293\n    around = 'process', whole content = * if (!input || ... process(& 
input->member) ... )\n")


Does the Coccinelle software not like my placement of the SmPL ellipsis within 
a condition specification?

Regards,
Markus
_______________________________________________
Cocci mailing list
[email protected]
https://systeme.lip6.fr/mailman/listinfo/cocci

Reply via email to