I was going through the WARN_ON_ONCE macro definition. I have doubt regarding the following line, what is the use of !!
before condition. If we remove !!
then also same will be stored in __ret_warn_once
.
int __ret_warn_once = !!(condition);
What will happen when compiler executing the following source line.
static bool __section(.data.unlikely) __warned;