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.
elemental function strf_R8P(fm,n)result(str)!< Convert real to string.!<!<```fortran!< use penf!< print "(A)", str(fm=FR8P, n=1._R8P)!<```!=> 0.100000000000000E+001 <<<character(*),intent(in)::fm!< Format different from the standard for the kind.real(R8P),intent(in)::n!< Real to be converted.character(DR8P)::str!< Returned string containing input number.write(str,trim(fm))nendfunction strf_R8P