Has GCC got the necessary pragma foo to implement this?
#define const_cast CONST_CAST_IS_FORBIDDEN #define dynamic_cast DYNAMIC_CAST_IS_NEVER_NECESSARY
etc...
its dirty, but it gets the job done
C-style cast at least doesn't make you pay through the nose in debug time or performance overheads - even if it is easily confusing :)