! Tests WHERE statement with a data dependency program where_4 integer, dimension(5) :: a integer, dimension(5) :: b a = (/1, 2, 3, 4, 5/) b = (/1, 0, 1, 0, 1/) where (b .ne. 0) a(:) = a(5:1:-1) endwhere if (any (a .ne. (/5, 2, 3, 4, 1/))) call abort end program