Const pointers can be bitwise constructed from non-const pointers. This is not true for pointer conversions in general, e.g. where an offset may need to be applied in the case of multiple inheritance, but there is no way of detecting that at compile-time.