To: J3 J3/18-179r1 From: Bill Long Subject: Ballot Comments GB061 and GB062 Date: 2018-June-12 Ballot Comment -------------- This paper covers two Comments because their edits affect the same line of text in N2146. In their DIS Ballot for draft N2146 of Fortran 2018, the GB comment 3061 reads: "Correction. A type cannot be equal to a macro but it can have the value of a type code, which we believe is what was intended." In their DIS Ballot for draft N2146 of Fortran 2018, the GB comment 062 reads: "As defined, "type" does not cover all possible interoperable types." with the suggested edits: GB061: In the definition of parameter "type" change "shall be one of" to "shall have the value of one of". GB062: In the definition of parameter "type", after "18.4" insert "or a positive value corresponding to an interoperable C type". Discussion ---------- GB061: The expectation was that the text of the macro name would be used as the actual argument. But that does just evaluate to a value and any other way of specifying the same value would work equally well. The proposed edit in the ballot makes that more clear. GB062: In 18.5.4, in the text describing the Type code macros in Table 18.4, paragraph 9 reads "If the processor supports interoperability of a Fortran intrinsic type with a C type not listed in Table 18.4, the processor shall define a type specifier value for that type which is positive and distinct from all other type specifiers." The existing description of the "type" formal parameter to CFI_establish only allows values from Table 18.4, omitting any possibility of using one of the extra ones specified by the implementation. This was an unintended oversight. Additionally, an edit is needed to note this change in the Introduction. Edit to N2146 ------------- [xix:Introduction] In the Introduction, append to final sentence of "Features previously described by ISO/IEC TS 29113:2012", ", and the type argument to CFI_establish can have a positive value corresponding to an interoperable C type", deleting the "and" inserted by paper 18-169. [498:18.5.5.5] In 18.5.5.5 The CFI_establish function, paragraph 2, Formal parameters, in the description of the "type" parameter, change "shall be one of" to "shall have the value of one of", and at the end of the sentence append "or a positive value corresponding to an interoperable C type". {Resulting in the whole description of type reading type shall have the value of one of the type codes in Table 18.4 or a positive value corresponding to an interoperable C type. }