To: J3 07-331 From: Bill Long Subject: UTI 132 Date: 2007 November 09 References: J3/07-007r3, J3/07-240, J3/07-283 When creating 07-007r3, the editor rejected the following edit from paper 07-240: ---------- [244:3-4] Editor: Combine C932 and C933: C932 (R915) A variable that is an shall not be a whole assumed-size array or a procedure pointer. ---------- with the objection documented in 07-283: ----------- [244:3-4] REJECTED. C933 is broken - a variable is a data object, a procedure pointer is a procedure. Added UTI 132. ----------- (Becasue of an oversight, UTI 132 does not actually appear in 07-007r3.) Proposed fix is to leave C932 as is, and fix C933. Alternatively, an edit is supplied to repair the change suggested in 07-240. I assume C933 was added when we allowed "variable" to be a function reference with a pointer result, and we did not want to allow this expansion in the context of the list in a READ statement. If we intended to allow this, then C933 should just be deleted. Edit to J3/07-007r3: Alternative 1 (Fix C933): [229:27] In 9.6.3 "Data transfer input/output list" replace constraint C933 which reads "A variable that is an shall not be a procedure pointer." with: "C933 (R915) A variable that is an shall not be a reference to a function." ------------------ Alternative 2 (Combine fixed C933 with C932): [229:26-27] In 9.6.3 "Data transfer input/output list" combine the first two constraints (C932 and 933) into one: "C932 (R925) A variable that is an shall not be a whole assumed-size array or a reference to a function." ------------------ Alternative 3 (Delete C933): [229:27] In 9.6.3 "Data transfer input/output list" delete constraint C933 which reads "A variable that is an shall not be a procedure pointer."