So i have some code like this:
void foo (int, int); void bar ( ) { //Do Stuff #if (IMPORTANT == 1) foo (1, 2); #endif }
#define SUPPRESS_UNUSED_WARN(var) \ int _dummy_tmp_##var = ((int)(var) & 0)
not work in IAR, change to this will work:
#define SUPPRESS_UNUSED_WARN(var) \ void _dummy_tmp_##var(void) { (void)(var); }