Beware that this post is related to an SDK in maintenance mode
More Info: Consider nRF Connect SDK for new designs
This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Incompatible redefinition of macro "STATIC_ASSERT_SIMPLE" and "STATIC_ASSERT_MSG"

Hey,

I am getting a

warning:  #47-D: incompatible redefinition of macro "STATIC_ASSERT_SIMPLE"  (declared at line 215)
warning:  #47-D: incompatible redefinition of macro "STATIC_ASSERT_MSG"  (declared at line 216)

#ifdef __CC_ARM
	#define STATIC_ASSERT_SIMPLE(EXPR)      extern char (*_do_assert(void)) [sizeof(char[1 - 2*!(EXPR)])]
	#define STATIC_ASSERT_MSG(EXPR, MSG)    extern char (*_do_assert(void)) [sizeof(char[1 - 2*!(EXPR)])]
#endif

in file app_util.h coming from the following files:

nrf_drv_twi.c

nrfx_saadc.c

app_timer.c

app_error_weak.c

nrfx_twi.c

nrfx_timer.c

nrfx_twim.c

And some other files I created myself.

I wonder what the right way is of dealing with this warning. Using a #ifndef does not work and spawns errors.

Related