To: J3 10-222 From: John Reid Subject: Interop TR: Requirement 1 Date: 2010 October 07 References: 10-165r2, ISO/IEC 1539-1:2010, N1820 DISCUSSION Requirement 1 of N1820 is A mechanism should be provided to enable a C programmer to conveniently obtain the address of a particular element within an assumed-rank, assumed-shape, allocatable, or pointer array. This can be done by adding an extra function. I have assumed that the changes of 10-203r1 have been accepted so that the type CFI_index_t is available. EDITS to 10-165r2: [11:3] Change "Eight" to "Six". [11:9] Change the line to "If an error occurs during execution of the function that returns an int value, the returned value is". [12:1-] Add new section: 5.2.6.1a void * CFI_address ( const CFI_cdesc_t *, const CFI_index_t subscripts[] ); <> CFI_address returns the address of the object described by the C descriptor or an element of it. The object shall not be an unallocated allocatable or a pointer that is not associated. The number of elements in the subscripts array shall be greater than or equal to the rank of the object. If the object is an array, the result is the address of the element of the object that the first elements of the subscripts array would specify if used as subscripts. If the object is scalar, the result is its address and the subscripts array is ignored.