To: J3 Members J3/16-143 From: Van Snyder Subject: Type and type parameters of statement or construct entity Reference: 16-007 Date: 2016 January 25 1. Introduction =============== In 16.4p4, p5, and p10, certain variables that are statement or construct entities are specified to have the same type and type parameters that they would have if they were variables in the innermost executable construct or scoping unit containing the statement or construct. This does not cover the case of a variable of the same name existing (or not existing) in the innermost executable construct or scoping unit, and IMPLICIT NONE is applicable. 2. Edits ======== [490:21 16.4p5] Replace "otherwise" with "otherwise if there is a variable of the same name in the innermost executable construct or scoping unit containing the DATA statement or array constructor it has the same type and type parameters as that variable, and that type shall be integer; otherwise if IMPLICIT NONE is not in effect in the innermost executable construct or scoping unit containing the DATA statement or array constructor". [490:23 16.4p5] After "integer type" insert "; otherwise the or has no type and the DATA statement or array constructor is invalid". [490:29 16.4p6] Replace "otherwise" with "otherwise if there is a variable of the same name in the innermost executable construct or scoping unit containing the DO CONCURRENT \obs{or FORALL} it has the same type and type parameters as that variable, and that type shall be integer; otherwise if IMPLICIT NONE is not in effect in the innermost executable construct or scoping unit containing the DO CONCURRENT \obs{or FORALL}". [490:31 16.4p6] After "integer type" insert "; otherwise the has no type and the DO CONCURRENT \obs{or FORALL}" is invalid". [491:8 16.4p10] Replace "It" with "If there is a variable of the same name in the scoping unit containing the statement function statement it has the same type and type parameters as that variable, and that type shall be integer; otherwise if IMPLICIT NONE is not in effect in the scoping unit containing the statement function statement it". [491:9 16.4p10] After "function" insert "; otherwise the statement function dummy argument has no type and the statement function statement is invalid".