cpp/types/is pointer interconvertible with class

Given an object of type, determines whether  refers to a subobject of  and  is pointer-interconvertible with its subobject. The program is ill-formed if is not a complete type.

If is not a, or  is not an object type, or  is equal to , the result is always.

Return value
if refers a subobject of  and  is pointer-interconvertible with its subobject, otherwise , where  is an object of type.