32     & nf90_einval, nf90_enotvar
    37   integer, 
intent(in), 
optional:: dimord
    38   logical, 
intent(out), 
optional:: err
    39   integer, 
intent(out), 
optional:: stat
    41   integer:: mystat, vid, id, nd, idim_lo, idim_hi, ilast
    44   if (
present(dimord)) 
call dbgmessage(
'dimord=%d', i=(/dimord/))
    52     call dbgmessage(
'dimension map not associated')
    59   if (
present(dimord)) 
then    60     if (dimord < 0 .or. dimord <= 
size(map)) 
then    61       call dbgmessage(
'dimord=%d is out of 1..%d', i=(/dimord, 
size(map)/))
    71   call dbgmessage(
'idim scan range=(%d:%d)', i=(/idim_lo, idim_hi/))
    74   do, id = idim_lo, idim_hi
    75     ilast = map(id)%start + (map(id)%count * 2 - 1) * map(id)%stride
    77       & i=(/ilast, map(id)%allcount/))
    78     if (ilast >= 1 .and. ilast <= map(id)%allcount) 
then    79       map(id)%start = map(id)%start + map(id)%count * map(id)%stride
    91   if (
present(stat)) 
then    93     if (
present(err)) err = (mystat /= 
dc_noerr)
    97   call endsub(
'gtvarslicenext', 
'stat=%d', i=(/mystat/))
 
integer, parameter, public gt_efake
 
subroutine map_set(var, map, stat)
 
subroutine, public storeerror(number, where, err, cause_c, cause_i)
 
integer, parameter, public dc_noerr
 
subroutine, public dbgmessage(fmt, i, r, d, L, n, c1, c2, c3, ca)
 
subroutine, public beginsub(name, fmt, i, r, d, L, n, c1, c2, c3, ca, version)
 
subroutine, public map_lookup(var, vid, map, ndims)
 
integer, parameter, public gt_enomoredims
 
subroutine, public endsub(name, fmt, i, r, d, L, n, c1, c2, c3, ca)