! { dg-do run } | |
! | |
! CO_REDUCE | |
! | |
implicit none (type, external) | |
intrinsic :: co_reduce | |
integer :: stat | |
integer :: i4, i4_2, i | |
i4 = 21 * this_image() | |
i4_2 = 21 | |
do i = 2, num_images() | |
i4_2 = i4_2 * 21 * i | |
end do | |
call co_reduce(i4, op_i4, stat=stat) | |
if (stat /= 0) STOP 1 | |
if (i4_2 /= i4) STOP 2 | |
contains | |
pure integer function op_i4(a,b) | |
integer, value :: a, b | |
op_i4 = a * b | |
end function op_i4 | |
end |