The C++ standard claims that the run-time penalty of using dynamic_cast is neglectable. We should profile and apply the suggestion if confirmed.