compiling this :
subroutine problem
use ISO_C_BINDING
implicit none
interface choix
subroutine choix1(machin)
import :: C_INTPTR_T, C_PTR, C_INT32_t
implicit none
integer(C_INTPTR_T), intent(IN) :: machin
end
subroutine choix2(machin)
import :: C_INTPTR_T, C_PTR, C_INT32_t
implicit none
type(C_PTR), intent(IN) :: machin
end
end interface
type(C_PTR) :: cptr
integer(C_INT64_T) :: int64
call choix(transfer(int64,cptr))
end
produces this :
> flang -c problem3.F90
F90-W-0000-Internal compiler error. ast_visit sees ast of 0 0 (problem3.F90: 19)
F90-S-0000-Internal compiler error. local_flow: ast visited 77 (problem3.F90: 19)
same problem with nvfortran 23.7 (reported to Nvidia)