[fix] Check for errors in PyArray_CanCastTypeto DEPRECATE

If a user had set warnings to raise errors, then this DEPRECATE would
leave us with an unpropagated exception and cause havoc downstream.

Unfortunately there is no way to propagate an exception from here, so
we just have to throw it away :-(. But this is still better than the
alternative...
[fix] If we fail to raise an error, at least dump something to the console
Merge pull request #3806 from njsmith/fix_cancasttypeto_deprecation

[fix] Check for errors in PyArray_CanCastTypeto DEPRECATE