The AssertRangeWritten assertion lists the range of each variable which is written inside a loop.
The CSRD directive corresponding to the AssertFirstValue assertion appears after the DO statement to which it refers. An example of the CSRD$ directive for this assertion is:
CSRD$ RANGE WRITTEN i, j, b(1:m:1), a(1:m:1)
An example of its usage is as follows:
CSRD$ PARALLEL (J) CSRD$ LOOPLABEL 'ADDUP_do#1' DO J = 1, N CSRD$ FIRSTVALUE q, z(1:m:1) CSRD$ RANGE WRITTEN i, j, b(1:m:1), a(1:m:1) CSRD$ PRIVATE a(1:m), b(1:m), x, y CSRD$ LASTVALUE b(1:m:1), a(1:m:1) . . . END DO