To: J3 12-130 From: Reinhold Bader/Bill Long Subject: Edits to 12-119 Date: 2012 February 13 References: 12-119 The changes proposed are from an email sent by Reinhold Bader 11-feb-2012. Edits to 12-119: -------------------- In 7.2 RANK, The example does not really make clear why this function is needed. Replacing the existing sentence by "If X is a dummy argument declared with REAL X(..) and is argument associated with an effective argument that was declared REAL Y(:,:,:), RANK(X) has the value 3." {Modified slightly from Reinhold's original.} --------------------- In 8.3.5.5 CFI_establish, in the paragraph following the extents description, in the penultimate sentence change "... but does not describe a Fortran assumed-shape array". to "... but does not describe a data object." {Objects other that assumed-shape arrays are included in the list of things not described.} --------------------- In 8.6 Restrictions on lifetimes, paragraph 2, last sentence, change "object it describes" to " object described by the C descriptor". {Clarify "it".} ----------------------- In 8.7 Interoperability of procedures and procedure interfaces, paragraph 5, second sentence (top of page 31) change: "The C descriptor shall describe an object with the same characteristics as the effective argument; " to "The C descriptor shall describe an object with the same \cf{attribute} as the dummy argument and otherwise with the same characteristics as the effective argument; " {In a call from Fortran to C, the attribute member of a C descriptor pointed to by a formal parameter gets its value from the corresponding dummy argument in the Fortran interface. The other members get their values from the corresponding effective argument. Whether an object is allocatable, pointer, or neither is a characteristic, so the current sentence is misleading.} ------------------------ In 8.7 Interoperability of procedures and procedure interfaces, replace the last paragraph with: "An absent argument in an interoperable Fortran procedure corresponds to a formal parameter or actual argument in C that has the value of a null pointer." {The last sentence on that page appears to limit the use of OPTIONAL to the case of a Fortran program invoking a C implementation of a procedure.}