added is_convertible for non-const pointers