To: J3 07-210 From: Bill Long and John Reid Subject: UTI 113 (p21): Is a co-array section a co-array? Date: 2007 May 01 References: J3/07-007r1 Discussion The sentence in the first paragraph of 2.4.6, "An element or section of an array co-array is not a co-array.", was added for clarification and not as a change. Previously, there was a gap here, corresponding to the sentence in the first paragraph of 2.4.5, "An array section is a subset of the elements of an array and is itself an array." This is the terminology that we have always had in the description of co-arrays. We could have changed this last year when we changed the meaning of 'co-array' to refer to an object on one image rather than the set of objects on all the images, but we did not. The main reason is that not all sections of a co-array are sufficiently regular to be associated as an actual argument with a co-array dummy argument, see the definition of 'co-array compatible' in 12.5.2.9 [317:8]. We agree, however, that it would be better to define as co-arrays those subobjects that can correspond to a co-array dummy argument. The main advantage is that is does way with the term 'co-array compatible'. We believe that item (4) in 7.2.1.2 [159:10-11] is correct. We agree that an edit is needed in 8.5.1. Similar edits are needed in 6.3.1 and 6.3.3.1. Edits to J3/07-007r1 [21:16] In 2.4.6 Co-array, para. 1, line 2, delete sentence "An element or section of an array co-array is not a co-array." [22:7+] In 2.4.6 Co-array, after para. 4 add new para: "A subobject of a co-array is a co-array if it does not have any co-subscripts, vector-valued subscripts, non-co-array allocatable component selection, or pointer component selection. The co-rank and co-bounds of the subobject co-array are those of the co-array." [129:29] In 6.3.1 ALLOCATE statement, para. 11, line 2, change "involves" to "allocates". [133:2] In 6.3.3.1 Deallocation of allocatable variables, para. 11, line 2, change "involves" to "deallocates". [196:21] In 8.5.1 Image control statements, para. 2, bullet 7, change "involving a co-array" to "that allocates or deallocates a co-array". [197:3] (typo) In 8.5.1 Image control statements, para. 3, line 3, change "term" to "team". [317:6-8] In 12.5.2.9 Co-array arguments, para. 2, lines 3-5, delete "or a subobject ... compatible.". [359:25] In 13.7.32 CO_ALL, para. 3, line 2, change "co-array compatible (12.5.2.9) and" to "a co-array". [360:3] In 13.7.33 CO_ANY, para. 3, line 2, change "co-array compatible (12.5.2.9) and" to "a co-array". [360:20] In 13.7.34 CO_COUNT, para. 3, line 2, change "co-array compatible (12.5.2.9) and" to "a co-array". [360:38] In 13.7.35 CO_FINDLOC, para. 3, line 2, delete "compatible (12.5.2.9) scalar or array". [362:7] In 13.7.37 CO_MAXLOC, para. 3, line 2, change "co-array compatible (12.5.2.9) and" to "a co-array". [362:29] In 13.7.38 CO_MAXVAL, para. 3, line 2, change "co-array compatible (12.5.2.9) and" to "a co-array". [363:6] In 13.7.39 CO_MINLOC, para. 3, line 2, change "co-array compatible (12.5.2.9) and" to "be a co-array". [363:28] In 13.7.40 CO_MINVAL, para. 3, line 2, change "co-array compatible (12.5.2.9) and" to "a co-array". [364:5] In 13.7.41 CO_PRODUCT, para. 3, line 2, change "co-array compatible (12.5.2.9) and" to "a co-array". [364:23] In 13.7.42 CO_SUM, para. 3, line 2, change "co-array compatible (12.5.2.9) and" to "a co-array".