09-219
To: J3
From: Van Snyder
Subject: Pointer definition, undefinition, association, allocation
Date: 2009 April 30
References: 09-007r1
1. Discussion
There are some cases of pointer definition and undefinition induced by
associations other than pointer association that are not covered in
16.5.2.
Allocation and deallocation are both covered by 6.7.1.3p3. Maybe
deallocation should be covered separately in 6.7.3.2, since one might
not look for the relationship between deallocation of a variable and the
allocation status of associated variables in a subclause entitled
"Allocation of allocatable variables."
2. Edit
[447:13+ 16.5]----------------------------------------------------------
Editor: Insert a subclause
"16.5.1 General
There are four forms of association: name association, pointer
association, storage association, and inheritance association."
[451:22+ 16.5.2.3p1(4)(c)+]---------------------------------------------
Editor: Insert a paragraph:
"When a pointer becomes pointer associated, all pointers associated with
that pointer by name, storage or inheritance association become
associated with the same target."
[451:34+ 16.5.2.4p1(4)(c)+]---------------------------------------------
Editor: Insert a paragraph:
"When a pointer becomes disassociated, all pointers associated with that
pointer by name, storage or inheritance association become
disassociated."
[452:2+ 16.5.2.5p1(1)-]-------------------------------------------------
Editor: Insert a list item:
"(0) a pointer that is associated with the pointer by name, storage or
inheritance association becomes undefined."
3. Edits for allocation, deallocation and association.
I don't know whether we should do these. They make it easier to find
how deallocation affects associated variables, but it essentially says
the same thing twice, while now it's only said once.
[131:14-15 6.7.1.3p3]---------------------------------------------------
Editor: Replace the first sentence:
"When a variable is allocated, all associated allocatable variables
become allocated."
[132:19+ 6.7.3.2p1-]----------------------------------------------------
Editor: Insert a paragraph:
"When a variable is deallocated, all associated allocatable variables
become deallocated."