J3/13-317r2 To: J3 From: Dan Nagle & Malcolm Cohen Subject: delete obsolete DO forms UK-10.1b Date: 2013 October 15 1. Introduction The nonblock DO construct, involving shared DO termination and termination on a statement other than END DO or CONTINUE, has been obsolescent since Fortran 90 and causes confusion and program errors. It was decided at the Delft meeting to delete these forms. 2. Specifications The nonblock forms of the do loop are deleted. This includes the shared termination forms of the do loop. 3. Syntax The nonblock forms are no longer valid syntax. Shared termination of do loops is no longer valid syntax. 4. Edits to 10-007r1 [intro] Add new feature "The nonblock forms of the DO construct have been deleted." {remove obsolete terms from branch target statement definition} [4:38] delete ", ," {remove alternative definitions} [174:12] Delete paragraph 5 (no info). [174:13-14] Delete rule R813 entirely. [174:15: 8.1.6.2 heading, delete "block". [174:16] R814, delete "block-". {the main event} [175:6-32] delete subclause 8.1.6.3 {NOTE: This deletes text that would otherwise be changed by 13-316.} {remove non-block do from range discussion} [175:37-42] delete the paragraph {remove non-block discuss from the execution cycle discussion} [176:28-31] delete the small-font sentences, that is, delete "If, as a result, ... was most recently executed." {repair cycle discussion} [177:12-13] delete the final sentence of the paragraph: "If this ... is not executed." [177:17-19] delete the final two sentences of the paragraph: "In a non block ... is then executed." {repair discussion of branching} [187:6] delete "a , a ," {add to deleted list} {note interaction with edits proposed in 13-316} [463:41+] Add item to the new "Deleted features from Fortran 2008" added by 13-316r2. "(2) Nonblock DO construct The nonblock forms of the DO loop were confusing and hard to maintain. Shared termination and dual use of labeled action statements as do terminaton and branch targets were especially error-prone." {repair the obsolescent list} [464:7-8] delete bullet (2) {clean the examples} [484:32-485:37] delete the lot