_GTLSEG - allocate an unsavable SEGID in the Argument Stack.

(GCOS8 only)

Usage:

C:
   #include <climb.h>
   ptr = _gtlseg(svec);
PL6:
   DCL X_GET_LOCAL_SEGID ENTRY(2);
   X_GET_LOCAL_SEGID(svec,ptr);

Where:

const struct _vector *svec;
points to a shrink vector framing an area of memory.
void *ptr;
is the pointer value resulting from the shrink operation, pointing to the beginning of the segment. The generated SEGID can be extracted from the lowest 12 bits of this pointer.

Description:

"_gtlseg" allocates a SEGID in the Argument Stack. This slot is marked as "unsavable" in the map of Argument Stack slots that is maintained by the SEGID allocation routines. Therefore, if you call "_save_arg_stack" to save the Argument Stack, the contents of this particular slot will not be saved.

See Also:

expl nsc lib _gtseg
general SEGID allocation routine.
expl nsc lib _frseg
for freeing allocated SEGIDs.
expl nsc lib _gtsseg
for marking a specific SEGID as busy.
expl nsc lib _save_arg_stack
for saving the Argument Stack before an OCLIMB.
expl nsc lib _restore_arg_stack
for restoring the Argument Stack after an OCLIMB.

Copyright © 1996, Thinkage Ltd.