id
" and Objective-C's dynamic message handling will make the invocation work correctly at runtime. In some rare cases, this assumption is wrong. I'll look at situations where you need to be careful about sending messages to "id
" typed variables and a situation where a limitation in the Objective-C language requires a hideous workaround to avoid serious bugs.