I was attempting some generic programming (specifically trying to modify some template code that worked on function pointers to accept more generic function objects) and I ran across a situation where I needed the type of a result of a potentially overloaded function call. Even though, given the symbol name and the types of the arguments, the result type can be determined at compile type, it seems to be inaccessible in the general case. I spent something like an hour trying to figure out how boost::bind solved the problem until I realized that it didn't. I probably should learn to read the documentation before jumping directly into source code.
Here's hoping that typeof
makes it into the next revision of the C++ standard.