!program to test nested forall construct and forall maskprogram testimplicit noneinteger a(4,4)integer i,jdo i=1,4do j=1,4a(j,i)=j-ienddoenddoforall(i=2:4,a(1,i).GT.-2)forall(j=1:4,a(j,2).GT.0)a(j,i)=a(j,i-1)end forall end forall if(any(a.ne.reshape((/0,1,2,3,-1,0,2,3,-2,-1,0,1,-3,-2,-1,0/),&(/4,4/))))call abortend