Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Source Code
subroutine file_gunzip(filename)character(len=*)::filenamecharacter(len=3),parameter::type='.gz'logical::iexist,iopeninteger::unit!inquire(file=reg(filename),exist=iexist)if(iexist)return!nothing to be done:!inquire(file=reg(filename)//type,exist=iexist)if(.not.iexist)then write(*,"(A)")"file "//reg(filename)//" not found, not even with .gz extension"stop endif write(*,"(A)")"deflate "//reg(filename)//type call system("gunzip "//reg(filename)//type)inquire(file=reg(filename),opened=iopen,number=unit)if(iopen)close(unit)end subroutine file_gunzip