Thanks. I had a misunderstanding that there is no need for casting if only return type differs and it is `void`. I digged into docs and found that it will be declared as `void objc_msgSendSuper(void)` in the future SDKs, so it will be impossible to make a call without casting.