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