| ! { dg-do compile } |
| ! PR 25076 |
| ! We erroneously accepted it when a FORALL index was used in a triplet |
| ! specification within the same FORALL header |
| INTEGER :: A(10,10) |
| FORALL(I=1:10,J=I:10) ! { dg-error "FORALL index 'i' may not appear in triplet specification" } |
| A(I,J)=I+J |
| ENDFORALL |
| |
| forall (i=1:10, j=1:i) ! { dg-error "FORALL index 'i' may not appear in triplet specification" } |
| a(i,j) = 5 |
| end forall |
| |
| forall (i=1:10, j=1:10:i) ! { dg-error "FORALL index 'i' may not appear in triplet specification" } |
| a(i,j) = i - j |
| end forall |
| |
| forall (i=i:10) ! { dg-error "FORALL index 'i' may not appear in triplet specification" } |
| forall (j=1:j:i) ! { dg-error "FORALL index 'j' may not appear in triplet specification" } |
| a(i,j) = i*j |
| end forall |
| end forall |
| |
| forall (i=1:10:i) ! { dg-error "FORALL index 'i' may not appear in triplet specification" } |
| a(1,i) = 2 |
| end forall |
| |
| forall (i=1:10) |
| forall (j=i:10) |
| a(i,j) = i*j |
| end forall |
| end forall |
| END |