http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46045
--- Comment #3 from Michael Builov <mbuilov at gmail dot com> 2010-10-17 15:51:16 UTC --- Just a warning with -Wextra, but no warnings with -Wall -pedantic. I found a bug with this code: struct A { #definer dump(_a_) \ do { \ Struct A *a = _a_; \ printf("%d, %d\n", a->k, a->m); \ } while (0) Struct *b, a; dump(b); /* fine */ dump(a); /* crash */