J3/06-270 Date: 3 August 2006 To: J3 From: Bill Long and John Reid Subject: Issue 73 : IMAGE_TEAM constraints Reference: J3/06-007 Discussion of issue 73 (page 439) We update the content of issue 73 to be self-contained and refer to J3/06-007. We have also corrected an error in one of the edits. 06-174r3 contains this note NOTE 13.19 To allow an implementation to define IMAGE_TEAM to have pointer properties, co-arrays are not permitted to be of this type. [end NOTE] for inclusion where issue 73 appears in J3/06-007. Teams are always built collectively from an image list using the FORM_TEAM intrinsic. The values may differ among the images of a team. They might contain detailed information on such things as which images are its neighbors in the hardware, or the location of the image in a reduction tree. It would be quite wrong to use in the executing image a team variable value from a different image. As the editor noted, the normative text supporting Note 13.19 is missing. This was removed recently, but we feel it should be put back. The "special" derived types IMAGE_TEAM, C_PTR, and C_FUNPTR are very likely to have pointer properties and contain information that is specific to the image where it was defined. Use of these data on a different image could lead to various errors. Because of their image-specific nature, little useful functionality is lost by disallowing co-arrays of these special types. Edits to J3/06-007 [62:15+] Add another constraint: "C443a (R441) A component of derived type IMAGE_TEAM (13.8.3.5), C_PTR, or C_FUNPTR (15.3.3) shall not be a co-array." [95:17] Replace constraint C541 by "C541 A co-array shall not be of derived type IMAGE_TEAM (13.8.3.5) or C_PTR (15.3.3) and shall not have the POINTER attribute." [118:9+] Add para: "A that is a co-indexed object shall not have a subcomponent that is a pointer or of derived type IMAGE_TEAM (13.8.3.5), C_PTR, or C_FUNPTR (15.3.3)." [438:24+] Add NOTE 13.25a To allow an implemention to define IMAGE_TEAM to have pointer properties, co-arrays are not permitted to be of this type. [end NOTE]