J3/06-238r1 Date: 16-aug 2006 To: J3 From: Bill Long and John Reid Subject: Issues 8-10 : allocatable co-arrays and SAVE Reference: J3/06-007 Issue 8 (page 97) This note really is about the SAVE attribute and is needed to support the the (very short) constraint at [97:2-3]. Edits make this clear and correct the error noticed by the editor. Issue 9 (page 97) The editor is suggesting that the difficulties associated with allocatable co-arrays in recursive procedures are exaggerated. We agree and provide edits to allow them. Issue 10 (page 98) Our edits for issue 9 address this except that save is required for a module variable if it has a co-array component. We wish to retain this since otherwise an unexpected implicit synchronization would be needed whenever the module ceases to be active. Edits to J3/06-007 [97:3]. In C549, delete 'and declared in a non-recursive procedure'. [97:3+]. Delete the first paragraph of NOTE 5.20. At the start of the second paragraph of NOTE 5.20, change 'Automatic' to 'This requirement for the SAVE attribute has the effect that automatic'. At the start of the final paragraph of NOTE 5.20, change 'that' to 'that are declared in a subprogram and'. [97:4-6]. Replace C550 by: C550 (R501) If the appears in the specification part of a module and the type specified has a co-array ultimate component, each entity in the shall have the SAVE attribute. [127:38]. Change 'same statement' to 'same statement at the same depth of recursion'. [131:10]. Change 'same statement' to 'same statement at the same depth of recursion'.