07-198r3 To: J3 From: Van Snyder/Dick Hendrickson Subject: Comments on Clause 8 Date: 9 May 2007 1 Edits Edits refer to 07-007r1. Page and line numbers are displayed in the margin. Absent other instructions, a page and line number or line number range implies all of the indicated text is to be replaced by associated text, while a page and line number followed by + (-) indicates that associated text is to be inserted after (before) the indicated line. Remarks are noted in the margin, or appear between [ and ] in the text. [178: Note 8.3] ---------------------------------------------------------- [Editor: Delete "It is usually a transfer of control".] [178:7-10] --------------------------------------------------------------- [Editor: Move [178:7-9] to [178:10+]. At [178:10] replace "<
>" by "<>".] [178:23]----------------------------------------------------------------- Change text of C803 to " shall not be a variable" [178:30] ----------------------------------------------------------------- ["execution of its " is not defined. Editor: Replace "execution of its " by "evaluation of every expression within every that is a variable designator and evaluation of every other ,".] [179:2] ------------------------------------------------------------------ [Editor: Exchange "SELECT TYPE" and "ASSOCIATE" and change "a" to "an" since we describe them in subclauses in the exchanged order.] [180:14] ----------------------------------------------------------------- [Editor: Replace "<>" by "<>".] [181:5] ------------------------------------------------------------------ [We don't usually restate a constraint within itself. Editor: Delete "the s . . . that is,".] [184:2] ------------------------------------------------------------------ Purpose and forms of the DO construct [184:13] ----------------------------------------------------------------- [Editor: Delete.] [187:36] ----------------------------------------------------------------- [Editor: Replace "belonging" by "that belongs to" for consistency with the next list item".] [188:21] ----------------------------------------------------------------- [Editor: replace "a processor dependent" by "an undefined" [189: Note 8.14] --------------------------------------------------------- [Editor: Replace "SUM(A(I,J,:)*B(:,I,J))" by "DOT_PRODUCT ( A(I, J, :), B(:, I, J) )".] [190:2] ------------------------------------------------------------------ [Editor: Replace "<>" by "<>".] [191:12] ----------------------------------------------------------------- [Editor: Replace "<>" by "<>".] [192:29] ----------------------------------------------------------------- [Editor: Replace "whose . . . evaluated" by "causes evaluation of every expression within every that is a variable designator and evaluation of every other ".] [193:6+]------------------------------------------------------------------ (5) Otherwise, no block is executed. [194:6-7] ---------------------------------------------------------------- [Editor: Replace "the EXIT . . . it" by "a construct name appears, the EXIT statement".] [197:1-2] ---------------------------------------------------------------- [Editor: Replace "contains" by "invokes"; delete "reference to a"; replace second "reference" by "invocation".] [197:5] ------------------------------------------------------------------ [Editor: Delete "known as".] [202:18] ----------------------------------------------------------------- [Editor: insert "execution" after "QUERY statement".] [202:24] ----------------------------------------------------------------- [Editor: Insert "execution of " after "follow".] [203:3] ------------------------------------------------------------------ [Editor: Change "in some" to "by a".] [204:Note 8.44, line 2] -------------------------------------------- [Editor: Replace "will not necessarily" by "might not".] [205: Note 8.45] --------------------------------------------------------- [Editor: Delete "the" in "from the a synchronization".] [485:1] ------------------------------------------------------------------[Editor: Insert a new numbered item (9) "a DO CONCURRENT construct is terminated and the pointer's association status changed in more than one iteration of the construct,"] --------------------------------------------------------------------------- 2 Questions without edits, Straw votes taken and necessary edits moved to part 1 [188:19-22] -------------------------------------------------------------- Was there a conscious decision taken that variables defined in more than one iteration are undefined after the construct terminates, while pointers whose pointer association status is changed in more than one iteration have a processor-dependent association status? Could we make them both either undefined or processor-dependent? If we make the pointers undefined, we should say so in 16.5.2.2.3, not here. Straw vote: What should the pointer association status be 07 change it to undefined 0 leave as processor dependent 05 undecided Subgroup will change it to "undefined", see edit to 188:21 and 485:1 in part 1 [179:5] ------------------------------------------------------------------ [Editor: Insert "if that dimension of the has an extent; otherwise that dimension has no upper bound" to take care of the possibility the is a whole assumed-size dummy argument.] [123:8+]------------------------------------------------------------------ [Editor: Insert a new paragraph:] An that is construct associated in an ASSOCIATE or SELECT TYPE construct with a that is a whole assumed-size array is a whole assumed-size array. Straw vote: Should we allow assumed size arrays as a ? 0 Yes, add words as above 9 No, 3 Undecided subgroup will take no more action on this Use of an assumed size array already disallowed by text on 123:9-11. -------------------------------------------------------------------------- No further action: [180:34] ----------------------------------------------------------------- [Editor: Replace "of the . . . statements" by "selector of a CASE statement in a CASE construct".] [183:13] ----------------------------------------------------------------- [Editor: Replace "this" by "that".] [183: Note 8.9] ---------------------------------------------------------- ["succeeds" could be read as "not fails". Editor: Replace "succeeds" by "follows" on the second line. In the penultimate line replace "will always precede' by "always precedes".] [186:23] ----------------------------------------------------------------- An in a DO CONCURRENT construct has a scope of the construct (16.4). The type and kind of the index variables and their values for the iterations of the construct" [186:24] ----------------------------------------------------------------- change references at end to "(7.2.4.1, 7.2.4.2)" [186:25-27] -------------------------------------------------------------- [Editor: Delete.] [187:9] ------------------------------------------------------------------ [Editor: Insert "simultaneously or" after "occur".] [188:9] ------------------------------------------------------------------ C827 A procedure referenced within a DO CONCURRENT construct shall be pure. [188:14] ----------------------------------------------------------------- [Editor: Replace "in" by "during".] [188:16-18] -------------------------------------------------------------- [Editor: Delete "A variable . . . terminate." because it's said at 16.6.6(16) which is the correct place [188:19] ----------------------------------------------------------------- [Editor: Replace "in" by "during".] [188:23] ----------------------------------------------------------------- [Editor: Replace "in" by "during".] [188:27-28] -------------------------------------------------------------- [Editor: Replace "in" by "during" twice.] [188: Note 8.12] --------------------------------------------------------- [Editor: Replace "in" by "during".] [189: Note 8.15] --------------------------------------------------------- [Editor: In the second line replace "will continue" by "continues".] [189: Note 8.17] --------------------------------------------------------- [Editor: Replace "example represents" by "silly example illustrates".] HPC subgroup will look at changing the example. [192:10-11] -------------------------------------------------------------- Do we need to constrain against abstract types? If not, should we insert a note explaining how pointless it would be? [199:8-9] ---------------------------------------------------------------- [Editor: Delete "that was".] [201:9] ------------------------------------------------------------------ [Editor: Replace "executed" by "execute".] [201: Note 8.38] --------------------------------------------------------- [Editor: In the second paragraph of Note 8.38, replace "will wait" by "waits".] [202: Note 8.39] --------------------------------------------------------- [Editor: Replace "will be waiting" by "wait"; replace first "will finish" by "finishes"; delete "will" in second "will finish".] [202:18] ----------------------------------------------------------------- [Editor: Replace "execution" by "executed"] [11:32] ------------------------------------------------------------------ Use syntax instead of constraint R214 action-stmt is or or or or or R214a if-consequent-action-stmt is [11:41-44,50] ------------------------------------------------------------ [Editor: Delete.] [191:3-5] ---------------------------------------------------------------- [Editor: Replace "" by "" and delete C830.]