J3/00-119 Date: 17 February, 2000 To: J3 From: Minoru Tanaka, Chair IPSJ/ITSCJ/SC22/Fortran WG Subject: Review of the J3 Responses to Interpretation Requests from Japan IPSJ/ITSCJ/SC22/Fortran WG reviewed the J3 responses given at J3's 150th meeting. All the responses except for those listed below are acceptable. Here, ">>" indicates the J3 response and "##" indicates Japan's view regarding it. JP-14) 5.2.10 R539 (Page 62 Line 13,14) states that: "R539 data-stmt-repeat is scalar-int-constant or scalar-int-constant-subobject" The syntactic definition of scalar-int-constant-subobject can be derived from int-constant-subobject (1.6.3). Add the definition of int-constant-subobject. >> A constant-subobject is a subobject of a named constant. We will add clarifying text to Fortran 2000. ## We agree that the change may be postponed to F2K. However, the change should be done as a BNF definition of int-constant-subobject, to which the meta rule (1.6.3) scalar XYZ is XYZ Constraint: scalar XYZ shall be a scalar. is applied, rather than adding some plain text explanation. JP-18) In 7.1.1.1, a constraint below R702 states that: "subobject shall be a subobject designator whose parent is a constant. A variable that is a primary shall not be a whole assumed-size array." The second sentence,`A variable that ...',should be `Constraint: A variable that...'. >> Recommended for Fortran 2000. ## We agree that this is not a serious defect in the standard. But it is a small problem for JIS Fortran. Because we have already divided the Constraint into two separate ones. We would appreciate it if you take it into account, and do it now. JP-20) In 7.5.3.2, the paragraph before NOTE 7.49 states that "A statement that is part of a where-body-construct shall not be a branch target statement." The term `branch target statement' is defined to be one of a specific set of statements, and is not appropriate here. Replace this with a constraint such as: "Constraint: A statement label of any statement that is part of a where-body-construct shall not be referred to from outside of the construct." The same applies to 7.5.4.1 (FORALL). >> Recommended for Fortran 2000. ## The correction of wording could be postponed. But, we believe that the rule should be a constraint. Wasn't it the intention? JP-27) In the second sentence from the bottom of 8.2: "It is permissible to branch to an end-do-stmt or a do-term-action- stmt only from within its DO construct." "end-do-stmt" should be "end-do". >> Recommended for Fortran 2000. ## An end-do is an end-do-stmt or a continue-stmt, and both of them should be allowed for a branch target only from within the construct. We believe this is a defect to be fixed in a corrigendum. JP-32) The first sentence of NOTE 10.25: "List-directed input/output allows data editing according to the type of the list item instead of by a format specifier." "format specifier" should be "format specification". >> Recommended for Fortran 2000. ## This is also a simple fix which can be agreed easily. List- directed input/output _is_done_by_a_format_specifier_ (R913) of the form "*". JP-36) Page 192/ line 17 (The last line of 12.2.1.1): In dummy data objects, the size is allowed to be assumed. However the characters of "size," is still small. It should be changed to normal size. >> Deferred to editor. ## That "size, " is no longer obsolescent. This is known as a historical error. Obsolescence indication is an important thing, which has to be done correctly. Why not fix it now? JP-41) p.278, in the item (3) of 14.1.2.4: (3) A procedure is not established in a scoping unit if it is neither established to be generic nor established to be specific. Change "procedure" to "procedure name". >> Deferred to editor. ## It's also a simple little fix. Why not now? JP-42) p.289, in the item (6) of 14.7.5: (6) A reference to a procedure causes the entire dummy argument data object to become defined if the entire corresponding actual argument is defined with a value that is not a statement label. Delete the obsolescent-font part. >> Recommended for Fortran 2000. ## This portion is a deleted feature of Fortran 95. It has to be deleted as soon as possible, even if it has only minor impact, which always happens regarding a deleted feature. JP-43) p.304, in the following part of B.1.1: "R901 io-implied-do-control is do-variable = scalar-numeric-expr , ..." Change "R901" to "R918". >> Deferred to editor. ## Why not now? JP-46) p.311, in the following line of the program in C.1.3: CURRENT => CURRENT % NEXT_CELL Change "CELL" to "NODE". >> Deferred to editor. ## Why not now? JP-47) p.317, in the following line of the program in C.4.6: X(2:N-1) = (X(1:N-2) + 2*X(2:N-1) + X(3:N+1) ) / 4 Change "X(3:N+1)" to "X(3:N)". >> Deferred to editor. ## Why not now? JP-48) p.342, in the following sentence in C.11.2.3.2: This decision will be recorded as the true elements of an array FLIP. Change "FLIP" to "FLIPS". >> Deferred to editor. ## Why not now? ---------------------- Takata, Masayuki (Mr.) Department of Sociology and Human Studies, Edogawa University Komaki 474, Nagareyama, Chiba, 270-0198 Japan phone: +81-471-52-0661 ext.356 fax: +81-471-54-2490 email: takata@edogawa-u.ac.jp