To: J3 Members J3/16-189r2 From: Van Snyder & Stan Whitlock Subject: Comments on editor's report References: 16-175, 16-007r1 Date: 2016 June 07 1. Introduction =============== The edit for [16-007:389:17] from 16-130r1 was shortened to remove "is not the same variable as TO and" because FROM and TO are not permitted to be the same variable unless both are unallocated. Users have trouble finding this distant prohibition, and, having not found it, at least some of them make the assumption, not always incorrect, that intrinsic procedures might somehow be "magic," and in this case not do anything if FROM and TO are the same variable. That is, FROM remains allocated if it was initially allocated. At [16-007r1:403:31 13.9.137p4] we included "if the allocation status of TO is allocated, it is deallocated." This follows from 12.5.2.6p7 so we don't technically need to say it, but we found it helpful. It would be equally helpful to keep the entire edit from 16-130r1. A note to the effect that FROM and TO are prohibited to be the same variable unless both are unallocated would be larger, and more confusing than using eight extra words to say, effectively, "If FROM .and. .true." 2. Edits ======== [403:324 13.9.137p4] After the last sentence in the first bullet, add the sentence: "Note that if FROM and TO are the same variable, it shall be unallocated when MOVE_ALLOC is invoked." 3. Edits not to be made ======================= The introduction said: The edit for [16-007:460:47] was rejected on the grounds that "when" is correct, and "where" sounds very odd. Actually, "when" is incorrect because whether a variable has a deferred type parameter is a static property, not a run-time-varying property. If "where" sounds odd, how about replacing "when" with "if" at [16-007r1:476:47]? with a suggested edit of: [476:47 15.2.3.3] Replace "when" with "if". JOR disagrees with changing "when". 16-007r1 [476:47-477:1] says "The following statements illustrate the use of C_F_POINTER when the pointer to be set has a deferred type parameter:" "when" refers to "use of" not the properties of a variable. No edit to 16-007r1 is needed.