To: J3 09-283r1 From: Bill Long Subject: DO CONCURRENT restrictions Date: 2009 August 12 References: J3/09-007r2 Discussion The current restrictions on variables referenced or defined in the body of a DO CONCURRENT construct include the following [177:13-14]: "A variable that is referenced in an iteration shall either be previously defined during that iteration, or shall not be defined or become undefined during any other iteration of the current execution of the construct." Variables that are defined then used in the same iteration are effectively local to the iteration. A user can make this clearer by using a BLOCK. A Note is provided for this. [177:28-] In 8.1.6.7 Restrictions on DO CONCURRENT constructs, after Note 8.9, add a new Note: "Note 8.9a A variable that is effectively local to each iteration of a DO CONCURRENT construct can be declared in a BLOCK construct within it. For example DO CONCURRENT (I = 1:N) BLOCK REAL :: T T = A(I) + B(I) C(I) = T + SQRT(T) END BLOCK END DO "