instance is an instance of the type identified by
and issues a warning if this is not the case. Returns
to a pointer to
No warning will be issued if
NULL will be returned.
This macro should only be used in type implementations.