David Logan wrote:
PARM='TRAP(OFF)/' stops LE from gaining control, and will percolate the
original S0C1 up. Depending on the language, it could instead be specified
as:
PARM='/TRAP(OFF)'
(that is, play with the slash, it's either at the beginning or the end.)
1. If the main program is COBOL, it's program_parms/LE_parms;
for all other languages it's LE-parms/program_parms
2. If you run TRAP(OFF), you might not get correct behavior if
you are using LE services, since many depend on this being
on; in particular, COBOL XLMPARSE uses condition handling
for handling parse events.
Maybe a better alternative to get what you seem to be
after is TER(UAONLY) [give SYSxDUMP after condition handling
has run, no CEEDUMP]
or
TER(UAIMM) [give SYSxDUMP before condition handling has
run; condition handling then may or not be run]
OK. Now a brief <ad>
"Using LE Services in z/OS" is a three day, multi-language
(Assembler, COBOL, PL/I, and C) exploration of LE. Concepts,
survey of the services, building and using message tag files,
hands on labs in all four languages (work in the language of
your choice).
Details:
http://www.trainersfriend.com/Language_Environment_courses/m512descr.htm
--
Also, I hope to have the LE toolkit ready for our online store
by the end of this week (not sure if I'll make it, but it'll be
close). This will include tools to work with messages as well as
sample LE programs in all four languages mentioned above.
</ad>
David Logan
Manager of Product Development, Pitney Bowes Software, Inc.
http://centrus.com
4750 Walnut St, Suite 200
Boulder, CO 80301
W: (720) 564-3056
-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf
Of McKown, John
Sent: Monday, April 28, 2008 1:01 PM
To: [email protected]
Subject: Re: Language Enviroment HLASM question.
-----Original Message-----
From: IBM Mainframe Discussion List
[mailto:[EMAIL PROTECTED] On Behalf Of Steve Comstock
Sent: Monday, April 28, 2008 1:19 PM
To: [email protected]
Subject: Re: Language Enviroment HLASM question.
McKown, John wrote:
Is there any reason that anybody can think of for making an
ASSEMBLER
program an LE main routine, other than if it invokes some
LE subroutines
or COBOL (or other LE-enabled language) subroutines? What
about if it
uses the BPX... subroutines to do UNIX work?
More curious than anything else.
Assembler programs do not need to be LE for calling BPX routines.
But one nice side effect of making an Assembler program LE-conforming
is that it can then call C functions directly (you do not need to
invoke a C program that then calls the C functions you're after).
So printf, scanf, and so on can be invoked directly from the
Assembler program. But you don't want the tail wagging the dog,
it's always important to clearly define what the program is to
be doing.
<I won't even put an ad here ;-) />
I hadn't even considered using C language subroutines.
I do have one thing that I don't like. My "diagnostic" abends result in
LE getting control and "messing around" with the environment. It is
weird to see a U4087 on my job when I __know__ that I caused an S0C1. I
wish that I knew how to perculate the original abend code up to the JCL
level. Everything seems to come out as a U4087 (S0C1, S0C3, S0C7, etc).
--
Kind regards,
-Steve Comstock
The Trainer's Friend, Inc.
303-393-8716
http://www.trainersfriend.com
z/OS Application development made easier
* Our classes include
+ How things work
+ Programming examples with realistic applications
+ Starter / skeleton code
+ Complete working programs
+ Useful utilities and subroutines
+ Tips and techniques
==> call or email to receive a free sample student handout <==
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html