! { dg-do run } | |
! { dg-additional-sources ISO_Fortran_binding_18.c } | |
module fortran_binding_test_18 | |
use iso_c_binding | |
implicit none | |
contains | |
subroutine test(array) | |
integer(c_int) :: array(:) | |
array = 1 | |
end subroutine | |
function do_loop(array) result(the_sum) bind(c) | |
integer(c_int), intent(in out) :: array(:,:,:) | |
integer(c_int) :: the_sum, i, j | |
the_sum = 0 | |
array = 0 | |
do i=1,size(array,3) | |
do j=1,size(array,2) | |
call test(array(:,j,i)) | |
end do | |
end do | |
the_sum = sum(array) | |
end function | |
end module |