Thank you to the always-helpful Lizette!

Yes, I have "looked at" a lot of things. You know how these things are: you
head down one path, you hit some negative, so you head down some other path,
and then you hit some new negative, so perhaps you go back to the first path
...

>From the LE P/G, 3.4.4.1.1:

When TRAP(ON,SPIE) is in effect, Language Environment is notified of abends
and program interrupts. Language semantics, C/C++ signal handlers, PL/I
ON-units, and user-written condition handlers can then be invoked to handle
them. An exception to this behavior is that Language Environment cannot
handle Sx22 abends, even if TRAP(ON) is specified.

I interpret that as saying that no matter how you slice it, LE will not
handle/trap/pass/indicate operator cancels.

It turns out the documentation is not really correct. I can issue an ABEND
X'122',,,SYSTEM from my own code and LE handles it perfectly. What it cannot
do is any SDWACLUP ABENDs including operator cancel, and there appears to be
no getting around that with LE facilities.

> I have seen LE being touchy at times when a process tries to override what
it wants to do.

Or even when you don't LOL! Yes, if this path is successful, I will go to
TRAP(OFF) so we are not fighting with each other.

Charles

-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[email protected]] On
Behalf Of Lizette Koehler
Sent: Wednesday, August 28, 2013 8:00 AM
To: [email protected]
Subject: Re: LE U4088 Reason 63 -- no back chain

This is just a question.

Have you looked at using a LE User Handled Condition instead of an ESTAEX?

CEEHDLR-Register User-written condition handler

z/OS V1R12.0 Language Environment Programming Reference
SA22-7562-12

CEEHDLR registers a user-written condition handler for the current stack
frame. The user condition handler is invoked when:

    It is registered for the current stack frame by CEEHDLR, and
    The Language Environment condition manager requests the condition
handler associated with the current stack frame handle the condition.

Language Environment places the user-written condition handlers associated
with each stack frame in a queue. The queue can be empty at any given time.
The Language Environment condition manager invokes the registered condition
handlers in LIFO (last in, first out) order to handle the condition.

The opposite of CEEHDLR, which registers a user-written condition handler,
is CEEHDLU, which unregisters the handler. You do not necessarily need to
use CEEHDLU to remove user-written condition handlers you registered with
CEEHDLR. Any user-written condition handlers created through CEEHDLR and not
unregistered by CEEHDLU are unregistered automatically by Language
Environment, but only when the associated stack frame is removed from the
stack.


I have seen LE being touchy at times when a process tries to override what
it wants to do.

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to