! 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
