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 comp2_final(gcomp,istate,ostate,clock,rc)type(ESMF_GridComp)::gcomptype(ESMF_State)::istate,ostatetype(ESMF_Clock)::clockinteger,intent(out)::rctype(ESMF_Field)::fieldtype(ESMF_FieldBundle)::fbtype(ESMF_Grid)::gridprint*,"i am comp2_final"call ESMF_StateGet(istate,"Comp2 Field",field,rc=rc)if(ESMF_LogFoundError(rcToCheck=rc,msg=ESMF_LOGERR_PASSTHRU,&line=__LINE__,&file=FILENAME))&return! bail outcall ESMF_FieldDestroy(field,rc=rc)if(ESMF_LogFoundError(rcToCheck=rc,msg=ESMF_LOGERR_PASSTHRU,&line=__LINE__,&file=FILENAME))&return! bail outcall ESMF_StateGet(istate,"Comp2 FieldBundle",fb,rc=rc)if(ESMF_LogFoundError(rcToCheck=rc,msg=ESMF_LOGERR_PASSTHRU,&line=__LINE__,&file=FILENAME))&return! bail out! For now do not worry about cleaning up fields inside FBcall ESMF_FieldBundleDestroy(fb,rc=rc)if(ESMF_LogFoundError(rcToCheck=rc,msg=ESMF_LOGERR_PASSTHRU,&line=__LINE__,&file=FILENAME))&return! bail outend subroutine comp2_final