J3/17-140 To: J3 From: Malcolm Cohen Subject: Editor's report for 17-007r1 Date: 2017 March 10 1. Introduction This is the editor's report for producing 17-007r1. Papers are listed in order of application to the document, which is approximately the order in which they were passed. 2. Papers 17-110r3 Done. COMMENT: The effect of EXECUTE_COMMAND_LINE is however totally processor dependent, viz the semantics of the command to be executed. We do not say that at present, but we ought to. 17-120 Done. 17-121r1 Done. 17-124 Done. 17-105 Done. 17-112r1 [114:8+11] inserted comma the edit forgot, but which appeared in the "making that comment read" text. Ignored spurious left-over edit for [297:20]. Done. 17-113r2 [309:7+3] "specified by interface blocks" -> "specified by generic interface blocks" (be more specific) COMMENT: Text for [309:7+3] seems more correct, but still a big ugly. It could probably be advantageously wordsmithed. [315:0+18-19] "that calls" -> "that called" COMMENT: Text for [315:0+18-19] still a bit ugly. [337:near the end] "a an" -> "an". Done. 17-104 Done. I remembered to hyperlink the terms. 17-117r2 Done. 17-122r1 Done. 17-128 Done. 17-106 Done. 17-115r2 EXTRA EDIT: Deleted spurious comma after formula for the real model set. Done. 17-126 alternative Done. 17-129r2 Done. 17-108r1 non-alternative Done. 17-130r1 Done. 17-103r1 Done. 17-123r2 Added an Introduction entry for this change from the TS. [139:28-29] Did the edit in the r0 instead, as this one was wrong: it ended up without the image selector having a specified team. Done. 17-118 Done. 17-119 Done. 17-127 non-alternative Done. 17-107r4 [147:4] Added Oxford commas to the A and B and C chain. EXTRA EDIT: [147:whatever] Changed second "the processor-dependent positive integer value of the constant" (before STAT_FAILED_IMAGE) to "value"; this appeared in the "making" text, but the edit to do it was missing. EXTRA EDIT: Reduced the space between the main part of the last paragraph in STAT= and the bullet list. Done. 17-101r1 Done. 17-132 [169-170] I shortened the caption from "Type conformance for the intrinsic assignment statement" to "Intrinsic assignment type conformance". I did not move the table, and as of this edit it still crosses a page boundary. If people would prefer it not to have a page-break (although it is not now wrong, it is still a bit ugly) I could move it to the end of the subclause. COMMENT: NOTE 10.35 is unnecessarily in the middle of a subclause. [190:21] I made a mistake writing this edit, it should have been 190:26 concurrent-header, and the comma is before scalar-mask-expr. Did that instead. [214:16] Another typo in the edit: actually that was before form-team-spec-list. [342:33+-343:1-] After some experimenting I settled on a form where the formula does not have a line number but the rest of the paragraph (both before and after) does. Done. 17-131r2 EXTRA EDIT: [347:-3] Table 16.1, CO_REDUCE, "OPERATOR" -> "OPERATION". [371:17-18] "dummy data objects" -> "dummy data object" (typo in the edit, but the "making" text was correct). EXTRA EDIT: [422:18] "of" -> "with" for consistency with CO_REDUCE. [422:19] "shall be a scalar" -> "shall be a nonpolymorphic scalar" EXTRA EDIT: The "making" text deleted "arguments and", but there was no edit to do so. Instead of following the "making" text, I inserted nonpolymorphic (at 422:19 as mentioned above) letting me delete the entire sentence "The ... shall not be polymorphic." Done. 17-137 Many rewordings: "The effect of calling NORM2 with a zero-sized array is now specified" ->"The result of NORM2 for a zero-sized array argument has been clarified" (The sum of the empty set is the additive identity, so IMO it was implicitly specified before, but it was certainly not very clear.) "The TEAM facility allows an allocatable coarray to be allocated or deallocated on only a subset of all images." ->"This team facility allows an allocatable coarray to be allocated or deallocated on a subset of images." REJECT: "An allocate statement or deallocate statement with a coarray allocate object can report whether an image has failed or has stopped." (This was true of STAT_STOPPED_IMAGE in Fortran 2008. STAT_FAILED_IMAGE is already adequately signalled.) DIFFERENT: Instead of adding the new sentence "There is a new form of image selectors allowing a team number to specify the team of the indicated image." (1) added TEAM_NUMBER= to the team overview statement, and (2) moved STAT= from the team overview sentence to the image failure overview sentence. NOTE: The rest were under the bullet I introduced for changes from the TS: "Functions FAILED_IMAGES and STOPPED_IMAGES have no restriction on their return kind." ->"The intrinsic functions ... have no restriction on the kind of their result." "The OPERATION on CO_REDUCE is no longer required to be commutative." ->"The name of the function argument to the intrinsic function CO_REDUCE is OPERATION instead of OPERATOR; this argument is not required to be commutative." "There is a new error code, STAT_LOCK_FAILED_IMAGE, to indicate when when a LOCK is held by a failed image." ->"The named constant STAT_UNLOCKED_FAILED_IMAGE from the intrinsic module ISO_FORTRAN_ENV indicates that a lock variable was locked by an image that failed." EXTRA EDIT: "This document is organised in 16 clauses" -> "...19 clauses". Done. 17-109r2 Done. 17-125r3 "Additionally, the team number for the initial team is now allowed in image selectors, and in the intrinsic functions NUM_IMAGES and IMAGE_INDEX." ->"The team number for the initial team can be used in image selectors, and in the intrinsic functions NUM_IMAGES and IMAGE_INDEX." (don't have to say "additionally" because this is the bullet for the changes from the TS, and the appropriate verb is "can be used" not "allowed"). [22:36] "-1, which" -> "-1 which" [434:24] also changed "identifying" to "that identifies". Done. 17-135 Instead, changed the several "an invocation of" to "a reference to" (because that's how we usually say it). ACTION: I note this subclause (collectives) needs a bit of rewriting, because (a) Most of the paras begin "If the STAT argument is present", which is begging to be turned into a bullet list. (b) stopped and failed images are only error conditions if STAT is present, which does not make sense. I also note that the precedence of failed images is not bottom. That is inconsistent with other failed image handling situations, and appears to be contradicted by the STAT_FAILED_IMAGE subclause. ACTION: This contradiction needs to be fixed, either by changing the collectives subclause to accord with the STAT_FAILED_IMAGE subclause, or by changing the STAT_FAILED_IMAGE subclause so that the inconsistent behaviour between collectives and non-collectives is properly stated. Done. 17-136 [330:21+] "a procedure interface is interoperable" ->"the procedure defined or declared by the statement is interoperable" (it's not just any old procedure that is interoperable, it is the one being declared/defined). COMMENT: We talk about procedures being interoperable in clause 18, and we do not talk about abstract interfaces being interoperable. Maybe some wordsmithing here and there would be useful. EXTRA EDIT: Deleted BNF rule number from constraint C1552 (the first one following the BNF rule), because (a) it is unnecessary; (b) we don't put text between a BNF rule and its attached constraints - changing it to a general constraint instead of a rule-tied constraint makes that not a problem. REJECT: I did not delete C1555 as the assertion in the paper that "C1555 seems to be already covered by C1554" is wrong - there is a difference between "is interoperable" and "is of interoperable type". DIFFERENT: I did not reword C1556 as requested, because the suggested wording implicitly applied it to all dummy arguments, instead of just dummy arguments of this procedure. I rewrote it. [493:4] Actually the text in p1 that the edit says to replace is at 493:2, 493:4 is the first line of paragraph 2. I made the edit to paragraph 1 as requested. COMMENT: Paragraph 2 also begins "something if". Perhaps this should be "something if and only if". Done. 17-133r1 [231:3] I inverted the first two sentences of the new p2 so that they begin "This specifier shall appear" and "This specifier shall not appear", which reads better. COMMENT: Maybe the NOTE in the STATUS= subclause should remark that all the rules regarding the interaction of FILE= and STATUS= are in the FILE= subclause, instead of just noting the effect of a single one of those many rules. Done. 17-134 Done. ===END===