Convert a bind(c)character(kind=c_char) buffer + explicit
length into a Fortran allocatable string. No null-termination
assumption — c_len is authoritative (matches the recovered
precedent’s convention).
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.
Variables
Type
Visibility
Attributes
Name
Initial
integer,
private
::
i
Source Code
subroutine c_to_f_string(c_str,c_len,f_str)!! Convert a `bind(c)` `character(kind=c_char)` buffer + explicit!! length into a Fortran allocatable string. No null-termination!! assumption — `c_len` is authoritative (matches the recovered!! precedent's convention).integer(c_int),intent(in)::c_lencharacter(kind=c_char),intent(in)::c_str(c_len)character(len=:),allocatable,intent(out)::f_strinteger::iallocate(character(len=c_len)::f_str)do i=1,c_lenf_str(i:i)=c_str(i)end do end subroutine c_to_f_string