To: J3 J3/10-117r1 From: Malcolm Cohen Subject: JP-2: Statement functions and C506 Date: 2010 February 15 This paper provides edits for comment JP-2 from the Ballot summary, N1802. Discussion: Constraint C506 at [88:11-14] lists the contexts where is not allowed in a type declaration statement. If the entity being declared is a statement function, initialization should not be allowed. Statement functions are allowed as an , as is clear in C508. However, is only allowed for . An is already required by C509 to be the name of a data object. Not only are statement functions not data objects (see the definition in clause 1), nor are external functions or intrinsic functions data objects. Thus C506 is flawed in that it specifies that impossible things should be disallowed. Edits to J3/09-007r3: [88:13] 5.2.1 "Type declaration statements / Syntax", in the 3rd constraint following "R503 ..." (constraint C506), Delete "an external function, an intrinsic function,". {Already ruled out by C509.} ===END===