Indicates that the external call ignores the values returned by the external routine in the return register(s).
A return line may specify a return class keyword alone, rather than as the argument to the CLASS keyword.
The following table shows the relationship between return CLASS and TYPE.
|
Type Requirements for the Return Line |
|
|
CLASS |
TYPE |
|
VALUE |
required |
|
STATUS |
optional, always used as LONG |
|
IGNORED |
optional, not relevant |
If CLASS=VALUE, TYPE is required. If CLASS=STATUS, TYPE is optional. STATUS always treats the return as LONG. If CLASS=IGNORED, TYPE is not used and may be omitted.
The following table shows how data types apply to the return line.
|
External Call Data Types A |
A | A |
|
DATA TYPE |
MEANING |
RETURN LINE USE |
|
DOUBLE |
Double floating point |
VALUE |
|
FLOATING |
Floating point |
VALUE |
|
G_FLOATING |
G_floating |
VALUE |
|
H_FLOATING |
H_floating |
NONE |
|
LONG |
Longword |
VALUE/STATUS |
|
QUAD |
Quadword |
VALUE |
|
BYTE |
Byte |
VALUE |
|
BYTEU |
Byte unsigned |
VALUE |
|
WORD |
Word |
VALUE |
|
WORDU |
Word unsigned |
VALUE |
|
LONGU |
Longword unsigned |
VALUE/STATUS |
|
STRING |
String data |
NONE |
External calling does not permit the H_FLOATING or STRING data types in the return line.
Example:
zcinit routine callname=lexp, linkname=lexp return class=status, type=long . . . zcallfin .end