<snip>
what about the normal completion reason code (R0)? 
</snip>
"Normal completion reason code" is not a concept supported by z/OS. Of 
course there is "value in R0 upon normal completion" but that is not 
surfaced.

The TCB/STCB has the information that is available. Since you attached 
with ECB the TCB/STCB still remain, until you DETACH.
STCBCMP/STCBCMPC is the best field for the return code (whether normal or 
abnormal completion).
TCBARC has the abend reason code when bit TCBRV316 is on (looks like no 
one ever noticed the need to provide a suitable name for that bit, since 
it is never set directly in the code -- the abend macro ends up setting 
the bit into the high byte of the abend code). This is defined only for an 
abend event. I don't think the RB chain is intact at the time you are 
looking, so I don't think you can find the regs from 
time-of-normal-completion unless they're in the TCBGRSx fields (I did not 
check, but that seems very unlikely).  It appears that TCBARC will have 
the value from the abend's R15 whether or not REASON was specified, but 
TCBRV316 will be off if REASON was not specified.

<snip>
At ABEND, R15 contains the REASON. 
</snip>
To be picky, that is true only when the ABEND was issued with the REASON 
keyword. Otherwise, R15 contains a value that might or might not be 
considered a reason by the ABEND invoker.

<snip>
you can check the ABTERM flag in the subtask's TCB.
</snip>
The intended way to tell is now (and has been for quite a while) 
TcbEndingAbnormally (see the comments for STCBCMP).


Peter Relson
z/OS Core Technology Design


----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to