J3/04-291 Subject: Interop subgroup comments From: Interop subgroup / Bill Long Date: 3-May-2004 ------------------------------------ Comments on N1583. UK Comments, C5, edit for [279:34] --- Subgroup agrees with this edit. UK Comments, C5, edit for [398:8] --- Because a particular binding label, as a global entity, cannot be attached to two different derived types, the difficulty this edit was attempting to remedy cannot occur. In addition, there are possible cases where the user may want to not expose some component names in a bind(c) type to a Fortran user. [398:8] {Strike the edit proposed in N1583.} UK Comments, C8, edit for [77:21] --- The edit as currently written adds text to constraint C540. This should not be the case. The beginning of the edit is modified to avoid a back reference to the constraint. Replace the edit for [77:21] with: [77:21+] "If the value of the after discarding leading and trailing blanks has nonzero length, it shall be valid as an identifier on the companion processor." UK Comments, C8, edit for [265:12] --- Subgroup agrees with this edit. UK Comments, C8, edit for [279:28] --- Debate in WG5 plenary session on the issue of whether PRIVATE procedures are allowed to have binding labels lead to straw votes. The conclusion was to leave the standard unchanged on this issue. Therefore, the proposed edit at [279:28] should be deleted. [279:28] {Strike the edit proposed in N1583.} UK Comments, C8, edits for [403:4-6] and [403:8] --- These edits contain references to procedures, but are in the section on variables and common blocks. This was a typo in each comment. The edits should be repaced by: [403:4-6] Replace "If a variable ... ignored." by "If a variable or common block has the BIND attribute with the NAME= specifier and the value of its expression after discarding leading and trailing blanks has nonzero length, the variable or common block has this as its binding label. The case of letters in the binding label is significant." [403:8] Add "Otherwise the variable or common block has no binding label." at the end of the paragraph. UK Comment, C8, edit for [403:35] --- This edit relates to default binding labels for procedures. The current FCD omits mention of procedure pointers as exceptions which needs correction. The UK comment also included private procedures on the grounds that binding lalels would not be allowed for provate procedures. The second part of the UK edit is removed, reflecting the WG5 straw vote. The edit should be changed to: [403:35] Change "not a dummy procedure" to "not a dummy procedure or a procedure pointer". UK Comments, C8, edits for [403:32-34], and [403:36] --- Subgroup agrees with these edits. ---------------------------------------- US and UK Comments on N1587, [8:17-20] in the TR, N1581. --- Subgroup agrees that binding labels should not be allowed for procedures in a submodule, but proposes an alternate wording and move the constraint to [403:36+] in the FCD. Replace TR:[8:17-20] with: TR:[10:3+] [After the second paragraph of 15.4.1 insert the following constraint] C1506 A procedure defined in a submodule shall not have a binding label unless its interface is declared in the ancestor module. -----------------------------------------