J3/09-277r1 To: J3 From: Van Snyder Subject: Problems with host association Date: 2009 August 11 References: 09-007r2 1. Introduction 16.5.1.4p2 says an external procedure declared by "an , , or ..." is a global identifier. These are ways that the EXTERNAL attribute can be specified, so they ought to be listed in 5.3.9, not here. A in an in a in which the EXTERNAL attribute appears apparently is not a global identifier. 16.5.1.4p2(1) says a in an in a , without any caveats about the name having the EXTERNAL attribute, is a local identifier. 16.5.1.4p2(12) directly contradicts 16.5.1.4p2. Procedure pointer names are not mentioned in the list in 16.5.1.4p2. They ought to be local identifiers. 2. Edits [96:40+ 5.3.9p3+]------------------------------------------------------- Editor: Insert a Note: "NOTE 5.12a The EXTERNAL attribute can be specified in a type declaration statement, by an interface body (12.4.3.2), by an EXTERNAL statement (12.4.3.5), or by a procedure declaration statement (12.4.3.6)." [446:6-7 16.5.1.4p2]---------------------------------------------------- Editor: Replace "Within ... appears" by "The name of an external procedure that is given the EXTERNAL attribute (5.3.9) within the scoping unit, or a name that appears within the scoping unit" [446:10 16.5.1.4p2(1)]-------------------------------------------------- Editor: At the end, append "unless it is a global identifier," [446:16+ 16.5.1.4p2(6)+]------------------------------------------------ Editor: Insert a list item: "(6a) a procedure pointer given the EXTERNAL attribute in the scoping unit," [446:22 16.5.1.4p2(12)]------------------------------------------------- Editor: At the end, append "unless it is a global identifier,"