Use this function to define a variable length array type.
function nf90_def_vlen(ncid, name, base_typeid, xtypeid)
integer, intent(in) :: ncid
character (len = *), intent(in) :: name
integer, intent(in) :: base_typeid
integer, intent(out) :: xtypeid
integer :: nf90_def_vlen
NCIDNAMEBASE_TYPEIDXTYPEPNF90_NOERRNF90_EMAXNAMENF90_ENAMEINUSENF90_EBADNAMENF90_EBADIDNF90_EBADGRPIDNF90_EINVALNF90_ENOMEM