! Program to test WHERE on unknown size arrays
program where_3
   integer A(10, 2)
   A = 0
   call sub(A)
contains
subroutine sub(B)
   integer, dimension(:, :) :: B
   B(1:5, 1) = 0
   B(6:10, 1) = 5
   where (B(:,1)>0)
      B(:,1) = B(:,1) + 10
   endwhere
   if (any (B .ne. reshape ((/0, 0, 0, 0, 0, 15, 15, 15, 15, 15, &
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0/), (/10, 2/)))) STOP 1
end subroutine
end program