Created attachment 31862 [details] Example source file The sparse static C language checker has a type attribute __attribute__((nocast)) ... which issues a warning if a type is implicitly converted unless it is exactly the same type (changes in constness is permitted, presumably changes in volatility *should* be permitted as well). The attached example file produces: nocast.c:11:24: warning: implicit cast to nocast type nocast.c:23:24: warning: implicit cast to nocast type