An attempted allocation or assignment that raises the AREA
condition has no effect.
Cause and syntax
The AREA condition is raised in either of the following circumstances:
When an attempt is made to allocate a based variable within
an area that contains insufficient free storage for the allocation
to be made.
When an attempt is made to perform an area assignment, and the
target area contains insufficient storage to accommodate the allocations
in the source area
A message is printed and the ERROR condition is raised.
Normal return
On normal return from the ON-unit, the action is as follows:
If the condition was raised by an allocation and the ON-unit
is a null ON-unit, the allocation is not attempted again.
If the condition was raised by an allocation, the allocation
is attempted again. Before the attempt is made, the area reference
is reevaluated. Thus, if the ON-unit has changed the value of a
pointer qualifying the reference to the inadequate area so that
it points to another area, the allocation is attempted again within
the new area.
If the condition was raised by an area assignment, or by a SIGNAL
statement, execution continues from the point at which the condition
was raised.