When a derived-type as no component, its elem_len will be set to
zero when emboxed. Update the function to let empty derived-type
pointer/target succeed the test.
Example extracted from gfortran test pointer_init_8
module m type :: c end type c type, extends(c) :: d end type d type(c), target :: x end module use m class(c), pointer :: px => x if (.not. associated(px, x)) STOP 1 end