To: J3 J3/07-107
From: Van Snyder
Subject: Zero-size objects
Date: 2007 January 22
Zero-size arrays and zero-length strings are fairly obvious concepts.
Zero-size derived-type objects are less obvious.
[87:4+]
8.2.3a Zero-size data objects.
An array that has zero elements is a zero-size array.
A character string that has zero length is a zero-length character string.
A derived-type object that has no components, or in which all components
are zero-size objects, is a zero-size derived-type object. Components can
have zero size by being declared to have zero size, or by depending upon
type parameter values in such a way that they have zero size.
A zero-size storage sequence consists of zero objects, or of objects all
of which have zero size.
[498:9] "and zero-length strings" => ", zero-length strings, and zero-
size derived-type objects".
[500:5+]
(19a) Allocation of a zero-length character string causes the string
to become defined.
(29b) Allocation of a zero-size derived-type variable causes the object
to become defined.