25 July 2006 J3/06-207 Sub ject: Comments on C1107 and similar issues From: Van Snyder 1 Intro duction The phrase "for which component initialization is specified" within C1107 at [290:23] doesn't explicitly extend to components of components. . . . If it is interpreted to do so (and some processors do so interpret it), it appears to extend to components of allocatable or pointer components, which is absurd. The term "ultimate component" may not be right because it encompasses only components of intrinsic type. The term "subcomponent" isn't right because it crosses ALLOCATABLE or POINTER boundaries. A new term, say "direct component", is needed. On the other hand, if a component that is of derived type has default initialization, its ultimate components could be construed to have default initialization. 2 Edits -- assuming "ultimate comp onent" isn't right Edits refer to 06-007. Page and line numbers are displayed in the margin. Absent other instructions, a page and line number or line number range implies all of the indicated text is to be replaced by associated text, while a page and line number followed by + (-) indicates that associated text is to be inserted after (before) the indicated line. Remarks are noted in the margin, or appear between [ and ] in the text. [45:1- New ¶]----------------------------------------------------------------------- The direct comp onents of an ob ject of derived type are the components of that ob ject, and components of its nonpointer nonallocatable direct components. [290:23]----------------------------------------------------------------------- [Editor: " is specified (R448)" "component-initialization (R448) is speci- fied for a direct component (4.5.1)".] [294:14]----------------------------------------------------------------------- [Editor: "with" "for which a direct component has".] [315:36]----------------------------------------------------------------------- [If a component of a component of an actual argument associated with an INTENT(OUT) dummy has default initialization, does it become undefined? I think the intent is that it doesn't. Editor: Insert "direct" before "component".] [319:22]----------------------------------------------------------------------- [Editor: Insert "direct" before "component".] 3 Edits -- assuming "ultimate comp onent" is right Edits refer to 06-007. Page and line numbers are displayed in the margin. Absent other instructions, a page and line number or line number range implies all of the indicated text is to be replaced by associated text, while a page and line number followed by + (-) indicates that associated text is to be inserted after (before) the indicated line. Remarks are noted in the margin, or appear between [ and ] in the text. [290:23]----------------------------------------------------------------------- [Editor: " is specified (R448)" "component-initialization (R448) is speci- fied for an ultimate component (4.5.1)".] [294:14]----------------------------------------------------------------------- [Editor: "with" "for which an ultimate component has".] [315:36]----------------------------------------------------------------------- [If a component of a component of an actual argument associated with an INTENT(OUT) dummy has default initialization, does it become undefined? I think the intent is that it doesn't. Editor: Insert "ultimate" before "component".] [319:22]----------------------------------------------------------------------- [Editor: Insert "ultimate" before "component".] 25 July 2006 Page 1 of 1