The following code fails to compile with nvfortran 23.1:
function cpp_str_get (str, i) bind (C) result (c)
use iso_c_binding
type(c_ptr), intent(in), value :: str
integer(c_int), intent(in), value :: i
character(c_char) :: c
c = achar (0)
end function cpp_str_get
leads to
: error: local/nvidia/hpc_sdk/Linux_x86_64/23.1/compilers/share/llvm/bin/llc: /tmp/nvfortranQNzc_VA5C9bP.ll:9:2: error: multiple definition of local value named ‘c_300’
%c_300 = alloca [1 x i8], align 4Preformatted text