To: J3 Members J3/16-142 From: Van Snyder Subject: Comments on Clause 15 Reference: 16-007 Date: 2016 January 25 1. Edits ======== [457:14 15.1p3] Replace "an assumed length" with "assumed length or specified length greater than one". {See NOTE 15.25.} [457:19 15.2.1p1] Replace "and" with a comma. After "C_FUNPTR" insert ", and the procedures in 15.2.3". [457:33 15.2.2p3] After "companion processor" insert "(2.5.7)". A cross reference to the definition of the term ought to appear at least once in Clause 15 -- the earlier the better. [457:34 15.2.2p3] Replace "C processor" with "companion processor". [460:47 15.2.3.3] Replace "when" with "where". [461:6 15.2.3.3] Replace "will associate" with "associates". Replace "specify" with "specifies". [461:26,28 15.2.3.5p5] Replace "FPTR" with "CPTR twice. [462:16 15.2.3.6p8] Replace "C processor" with "companion processor". [463:9-10 15.3.2p1] Delete "If the type ... value is one." [463:17+2-3 Table 15.2] If possible, reorganize the header for the middle column so that it occupies two lines instead of three. If not possible, at least move "module" onto the second line instead of leaving "ule" so lonesome on the second line. The continuation header on the next page has the same problem. [464:0+17 NOTE 15.7] Replace "derived" by "defined" (typedef means "type definition," doesn't it?) [464:1- NOTE 15.8+] Insert a NOTE: "NOTE 15.8a If the type is character and the length is not specified by a constant expression having the value one, a descriptor (15.4) is used." [464:4+2 NOTE 15.9] Replace "C processor" with "companion processor". [464:4+2,3 NOTE 15.9] Replace "the same" with "a single" twice. Using "the same" might lead one to believe that object pointers and function pointers necessarily have the same representation. [469 NOTE 15.23:2, 6-8] After "simply contiguous" insert "(6.5.4)". Delete "A dummy ... or a pointer." This simply repeats the definition in 6.5.4. [472:21 15.5.4p9] Replace "which" with "that". [474:17 15.5.5.2p2] Replace "Formal" with "Actual". It's clear from the descriptions, as in Clause 13, that it's requirements on the actual parameters (arguments in Clause 13) being described. [475:15 15.5.5.3p2] Replace "Formal" with "Actual". [475:20-21 15.5.5.3p2] Append "if \cf{dv->rank} > 0" twice. [476:4 15.5.5.4p2] Replace "Formal" with "Actual". [476:23 15.5.5.5p2] Replace "Formal" with "Actual". [476:36 15.5.5.5p2] Replace "will be" with "is". [477:11+6 NOTE 15.30] Replace "will produce" with "produces". [478:4 15.5.5.6p2] Replace "Formal" with "Actual". [478:12 15.5.5.7p2] Replace "Formal" with "Actual". [478:14 15.5.5.7p2] Set "strides" in code font. [479:34 15.5.5.8p2] Replace "Formal" with "Actual". [480:32 15.5.5.9p2] Replace "Formal" with "Actual". [482:21+11,12,14 NOTE 15.33] Replace "will create" with "creates". Replace "will become" with "becomes" twice. [483:17 15.9.2p2] [484:9 15.10.1p3] Replace "called" with "invoked". [484:17 15.10.1p5] After "invoked as" insert "or during execution of". [511:40+] Insert a list item: "o the value of the \cf{base_addr} member of a CFE_cdesc_t object if the object it describes has zero size (15.5.3);" [512:10+] Insert a list item: "o the result of procedures defined by Fortran and procedures defined by means other than Fortran both performing input/output operations on the same external file (15.10.1);" [485:21+ 15.10.4p2+] Insert NOTE 15.35a: "NOTE 15.35a A variable that is a pending communication affector is required to have the ASYNCHRONOUS attribute (5.5.4)." 2. Comments and questions without edits ======================================= Maybe these need edits. [461:27 15.2.3.5p5] The description invites the reader to imagine that CPTR has a pointer component. 15.3.3 says it does not. [462:10 15.2.3.6[6] The description invites the reader to imagine that C_PTR has a pointer component. 15.3.3 says it does not. [464:0+1 Table 15.2] Is it possible to get the table number into the continuation caption? Also tops of pages 473 and 474 for Tables 15.4 and 15.5. [466:9 15.3.6p1] This says that an array is interoperable only if it is of explicit shape or assumed size. Didn't the TS provide for descriptors for assumed-shape and deferred-shape arrays? [483:17 15.9.2p2] What is the binding label if NAME= appears but the string has zero length after trimming leading and trailing blanks? [484:27 15.10.2p2] What is the binding label if NAME= appears but the string has zero length after trimming leading and trailing blanks? [485:9-21 15.10.4] Why did we invent the term "pending communication affector" for a concept that is identical to "pending input/output storage sequence affector"? Why not call them both "pending storage sequence affector"?