hum ok, so it's actually that (as expected actually) `dbprintf` defined to `//` is actually defined to nothing, and then this expands to
```C
if (...)
  (...);
int ret=0;
```
So although it's valid, it's quite ugly and the arguments ARE evaluated, just doesn't do much.  You probably should rather use `DebugStatement()` or alike:

```C
/* this is similar in general.h, take a look */
#if DEBUG
# define DebugStatement(x) x
#else
# define DebugStatement(x) /* nothing */
#endif

/* ... */

DebugStatement(pritnf(...));
```
(…the ctags one expands to `<statament>;`, and then you mustn't put a semicolon yourself)