void foo(void){ bState = 0; MACRO_THING(bState); bState = bar(bState); // i call another function here bState++;}char bar(char state){ state &= GLOBAL_SOMETHING; return (state >> 4);}