To: J3 07-265r1 From: Malcolm Cohen Subject: UTI 102 (p514): C_PTR undefinition events Date: 2007/08/07 References: J3/07-007r2 1. Discussion The editor observes that the wording "a variable of type C_PTR becomes undefined if its value is the C address of the variable that becomes undefined" is not appropriate since it recurses. The proposed wording is better. 2. Terminology We have inadvertently used the term "terminates" in contexts other than terminating a loop. Normally we use "completion of execution" for constructs other than loops. This paper contains edits to fix these inconsistencies. 3. Edits to J3/07-007r2 [208:2] "construct" -> "loop, or completing execution of another construct". [503:9] "Upon termination" -> "On completion of execution". [504:31] "termination" -> "completion of execution". [504:43] "is terminated" -> "completes execution". [512:44] Delete "and"; [512:47] Append ", and" (there was a missing full stop here); [512:47+] Add a new item 3(c): "a variable of type C_PTR whose value is the C address of an unsaved local variable of the subprogram becomes undefined." [514:3-5] Delete existing item (18) [514:10-12] Delete the existing item (21) [514:15+] Delete UTI 102 if this issue has been solved. [514:16] Replace the existing item (23) with: "When a BLOCK construct completes execution: (a) its unsaved local variables become undefined, and (b) a variable of type C_PTR whose value is the C address of an unsaved local variable of the BLOCK construct becomes undefined." ===END===