J3/17-164 To: J3 From: Malcolm Cohen Subject: Coarray-related editorial fixes Date: 2017 June 22 1. Introduction This paper collects a set of minor editorial fixes related to coarray exposition. 2. Discussion. (a) In the COSHAPE intrinsic description, the references to UCOBOUND and LCOBOUND are not hyperlinked and not indexed. They should definitely be hyperlinked; I think it is reasonable for them to be indexed here too. (b) Team values *identify* a team, they don't *specify* a team. (c) Inconsistent wording for TEAM_TYPE and EVENT_TYPE; both are permitted to have allocatable components, but EVENT_TYPE has "each nonallocatable component is fully default-initialized" while TEAM_TYPE has "each component is fully default-initialized". These should use the same wording. (d) Inconsistent wording for EVENT_TYPE, LOCK_TYPE and TEAM_TYPE; these are all extensible types, but in exactly two of them we go on to spell out that "extensible" means "not sequence and not BIND(C)". Either we need to say it three times, or we do not need to say it. In the view of /Data, this is belabouring the obvious. We don't say every time something is type real "therefore it is not of type COMPLEX and has no imaginary part". This might have been useful to point out once long ago, but that time has surely passed. Especially since the word "extensible" is hyperlinked and indexed, so either checking the definition via the index (for paper users) or clicking twice (for electron users) takes us to the definition which states "does not have the BIND attribute or the SEQUENCE attribute". Therefore, this paper recommends deleting this unnecessary and duplicative normative text. (Alternatively, the sentence could be triplicatively added to the EVENT_TYPE subclause.) 3. Edits to N2123 (17-007r1) [373:30] 16.9.55 COSHAPE, p5 Result Value, Hyperlink and index both UCOBOUND and LCOBOUND. [388:39] 16.9.85 GET_TEAM, heading, insert space between the intrinsic name and the left parenthesis. {Correct formatting.} [388:42] Same subclause, p3 Argument, Change "value shall be" to "value is". {Grammar: too many "shall be"s in the sentence.} [389:2] same subclause, p5 Result Value, Change "specifying" to "that identifies", {Correct terminology.} [389:3] same paragraph, Change "or the current team" to "or if the current team", {Grammar: the antecedants are wrong to omit the if here.} [389:3,4] Same paragraph, Change "specifies" to "identifies", twice. {Correct terminology.} [443:10-12] 16.10.2.19 LOCK_TYPE, p1, Delete sentence "Therefore ... type.". {Unnecessarily redundant and duplicative.} [445:7-8] 16.10.2.32 TEAM_TYPE, p1, Delete sentence "Therefore ... type.". {Unnecessarily redundant and duplicative.} [445:8] Same paragraph, Between "Each" and "component is fully" insert "nonallocatable". {Make wording consistent.} This makes 16.10.2.32p1 read in full: "TEAM_TYPE is a derived type with private components; no component is a pointer. It is an extensible type with no type parameters. Each nonallocatable component is fully default-initialized." ===END===