2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-08-22 01:59:26 +00:00
bind/cocci/return-void-from-void.spatch
Ondřej Surý 9dfa33050b Add semantic patch to find void f() { ... return ((void)g())); ... }
When a function returns void, it can be used as an argument to return in
function returning also void, e.g.:

void in(void) {
  return;
}

void out(void) {
  return (in());
}

while this is legal, it should be rewritten as:

void out(void) {
  in();
  return;
}

The semantic patch just find the occurrences, and they need to be fixed
by hand.
2019-12-06 13:42:18 +01:00

20 lines
145 B
Plaintext

@ rule1 @
identifier f1;
@@
void f1(...)
{
...
}
@ rule2 @
identifier rule1.f1;
identifier f2;
@@
void f2(...) {
...
* return(f1(...));
...
}