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.
Where possible, edges connecting nodes are
given different colours to make them easier to distinguish in
large graphs.
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.
Where possible, edges connecting nodes are
given different colours to make them easier to distinguish in
large graphs.
Source Code
SUBROUTINE FREE_FILE(UNIT,RC)implicit noneinteger,intent(out),OPTIONAL::RCinteger::UNITif(UNIT<0)then_ASSERT(-UNIT<=LAST_UNIT,'illegal io unit')_ASSERT(MTAKEN(-UNIT),'illegal io unit')MEM_units(-unit)%PREVREC=0ELSE if(UNIT==STD_OUT_UNIT_NUMBER)return if(UNIT/=UNDEF)then close(UNIT)IF(UNIT.LT.1.OR.UNIT.GT.LAST_UNIT)THEN WRITE(0,*)' BAD UNIT NUMBER ZFILCLR UNIT = ',UNIT_RETURN(ESMF_FAILURE)ELSETAKEN(UNIT)=.FALSE.MTAKEN(UNIT)=.FALSE.ENDIF end if END IF_RETURN(ESMF_SUCCESS)END SUBROUTINE FREE_FILE