type my_type
integer :: ii
integer, dimension(:), pointer :: y
integer, dimension(10) :: z
end type my_type
subroutine sub1(a)
integer, dimension(:), intent(out) :: a
end subroutine sub1
type ( my_type ) , dimension(:), allocatable :: x
call sub1(x(i-1)%y) ! <--- This is NOT allowed.