J3/14-123 To: J3 From: Van Snyder Subject: OPEN statement and changeable modes Date: 2014 February 12 1. Introduction =============== 9.5.6.1p6 [14-007:208:32-33] says "The ERR=, IOSTAT=, and IOMSG= specifiers from an OPEN statement have no effect on any subsequent OPEN statement." There is nothing similar for any other statement. This is apparently because the first sentence of 9.5.6.1p6 says "only the specifiers for changeable modes (9.5.2) may have values different from those of the existing connection." It's not obvious this is needed, since ERR= etc. do not specify values for a connection. If it's needed, the existing sentence is an inscrutably opaque way to address this. Should we (a) delete it, (b) add ERR= etc. to the list of specifiers that can have "different values" (whatever that means), (c) replace it with a note to the effect that ERR= etc. do not specify "values for a connection", or (d) do something else? 2. Edits for (c) case ===================== [14-007:208:32-33] Replace the final sentence of 9.5.6.1p6 with a NOTE: NOTE 9.18a The ERR=, IOSTAT= and IOMSG= specifiers do not specify values for a connection [, and therefore may be different from any that appeared in a prior OPEN statement for the same connection]. 3. Really big hammer ==================== Extend INTENT to cover statement specifiers. Specify INTENT for all specifiers in all statements that have specifiers. At [14-007:208:32] Insert "INTENT(IN)" after "only". Add a specification, in the INTENT subclause, that values are assigned to INTENT(OUT) or INTENT(INOUT) statement specifiers either "according to the rules for intrinsic assignment" or "as if by an intrinsic assignment statement".