I was browsing some code and I came across this macro definition
#define D(x) do { } while (0)
And its used in the code like this,
D(("couldn't identify user %s", user));
I ran the code, and that particular line doesn't do anything. So, why would some one define a macro like that?
In case you're wondering, that macro is defined in the _pam_macros.h header file.