Guardian Procedure Calls Reference Manual (G06.25+)

Guardian Procedure Calls (R)
Guardian Procedure Calls Reference Manual522629-013
13-45
REFPARAM_BOUNDSCHECK_ Procedure
return 0;
}
A function with no parameters cannot use _frame_edge(), nor can a C++ function
whose first parameter is a reference (that is, not a value or a pointer).
Syntax for TAL Programmers
Parameters
error returned value
INT
returns one of the following values:
0 No error. The procedure successfully executed; the specified memory area is
in bounds. See “Considerations” for a discussion of what it means to be in
bounds.
1 The specified memory area is out of bounds. Accessing the area might cause
an addressing trap or system-generated nondeferrable signal.
2 The address is in a read-only area and the check was made for read/write
access. The effect of attempting to write to the area depends on whether your
process is a native process or a TNS process: for a native process, the system
might deliver a nondeferrable signal to the process; for a TNS process, the
write operation might not take effect.
3 The address area is in bounds in an extensible segment, but disk space for the
extensible segment could not be allocated. If you try to write to this area, the
effect depends on whether your process is a TNS process or a native process:
a TNS process might terminate with a “no memory available” trap (trap 12); a
native process might receive a SIGNOMEM signal.
4 The
start-address parameter points to a location on the TOSSTACK but
the calling procedure is not executing on the TOSSTACK. This error can occur
only on a TNS processor.
5 An absolute address was supplied in
start-address for a native process
but
flags.<14> was not set to allow an absolute address.
error := REFPARAM_BOUNDSCHECK_ ( start-address ! i
,area-length ! i
,framestart ! i
,flags ); ! i