! Copyright (C) GFD Dennou Club, 2000. All rights reserved subroutine GTVarPutLine(var, err) use gtdata_types, only: GT_VARIABLE use dc_error use dc_string, only: toChar, put_line use gtdata_generic, only: Get, Inquire use dc_trace, only: beginsub, endsub, DbgMessage implicit none type(GT_VARIABLE), intent(inout):: var logical, intent(out), optional:: err real, allocatable:: rvalue(:) integer:: siz, stat, i logical:: myerr call beginsub('gtvarputline', '%d', i=(/var%mapid/)) call Inquire(var, size=siz) call DbgMessage('size = %d', i=(/siz/)) stat = 0 allocate(rvalue(siz), stat=stat) if (stat /= 0) then stat = GT_ENOMEM goto 950 endif call Get(var, rvalue, size(rvalue), err=myerr) if (myerr) then stat = errorcode() goto 950 endif do, i = 1, size(rvalue) call put_line(trim(toChar(rvalue(i)))) end do deallocate(rvalue, stat=stat) if (stat /= 0) stat = GT_ENOMEM ! 950 continue call StoreError(stat, "GTVarPutLine", err) call endsub('gtvarputline', '%d stat=%d', i=(/var%mapid, stat/)) end subroutine