#include <stdio.h>
#ifdef DEBUG
#define CHECK(expr) foo(expr)
#else
#define CHECK(expr)
#endif /* DEBUG */
int bar ( int x, int y, int z)
{
//do nothing
return 0 ;
}
int main( void )
{
int a= 0 , b = 0 , c = 0 ;
int x = bar( a, b, c) ; /* bar has to be called for both DEBUG begin defined and undefined */
CHECK( x) ;
return 0 ;
}
I2luY2x1ZGUgIDxzdGRpby5oPgoKI2lmZGVmIERFQlVHCiNkZWZpbmUgQ0hFQ0soZXhwcikgZm9vKGV4cHIpCiNlbHNlCiNkZWZpbmUgQ0hFQ0soZXhwcikKI2VuZGlmIC8qIERFQlVHICovCgppbnQgYmFyIChpbnQgeCwgaW50IHksIGludCB6KQp7CiAgICAvL2RvIG5vdGhpbmcKICAgIHJldHVybiAwOwp9CgppbnQgbWFpbih2b2lkKQp7CiAgICBpbnQgYT0gMCwgYiA9IDAsIGMgPSAwOwogICAgaW50IHggPSBiYXIoYSwgYiwgYyk7IC8qIGJhciBoYXMgdG8gYmUgY2FsbGVkIGZvciBib3RoIERFQlVHIGJlZ2luIGRlZmluZWQgYW5kIHVuZGVmaW5lZCAqLyAKICAgIENIRUNLKHgpOwogICAgcHJpbnRmKCJIZWxsbywgd29ybGQhXG4iKTsKICAgIHJldHVybiAwOwp9Cg==
compilation info
prog.c: In function 'main':
prog.c:18:9: error: unused variable 'x' [-Werror=unused-variable]
int x = bar(a, b, c); /* bar has to be called for both DEBUG begin defined and undefined */
^
cc1: all warnings being treated as errors
stdout