Page 1 of 2

LE is intercepting my dumps.

PostPosted: Sat Oct 02, 2010 1:36 am
by Balr14
I have an Assembler language program that calls a COBOL routine. The COBOL routine is getting a S0C4 abend, but LE is intercepting the dump so I can't see what's failing. Any suggestions?

Re: LE is intercepting my dumps.

PostPosted: Sat Oct 02, 2010 3:30 am
by Robert Sample
You can usually tell something from the LE dump. What dump DD statement(s) have you added to your JCL?

Re: LE is intercepting my dumps.

PostPosted: Sun Oct 03, 2010 7:26 am
by Balr14
I have:
SYSOUT
SYSPRINT
SYSABEND
SYSUDUMP

Does the COBOL program execute in the same enclave as the calling Assembler module?

Re: LE is intercepting my dumps.

PostPosted: Sun Oct 03, 2010 7:33 am
by dick scherrer
Hello,

See if this will help:
http://publib.boulder.ibm.com/infocente ... ym1apc.htm

Do you know if the COBOL program was actually executing or was the 0c4 encountered while trying to activate that code?

Does anything change if you use static / dynamic call?

If you put a display as the first executable instruction n the called COBOL module, is it executed?

Is there any diagnostic info in any of those SYSOUTs?

Re: LE is intercepting my dumps.

PostPosted: Sun Oct 03, 2010 8:11 am
by steve-myers
Hint: LE is not intercepting "your" dump. It is intercepting "your" ABEND. If you check the books you should find a way to prevent LE from intercepting ABENDs.

By the way: if your Assembler code is fully LE compliant, and I'd bet it isn't, the LE dump should provide what you need.

Re: LE is intercepting my dumps.

PostPosted: Mon Oct 04, 2010 7:54 pm
by Balr14
The abend appears to be within the COBOL module on a call to VSAM; I'm attempting to verify that.

You are right about the Assembler module not being LE compliant, I believe. It was written in 1995 and never implemented. I inherited it and am trying to get it to work, because a client asked for it now.

Re: LE is intercepting my dumps.

PostPosted: Mon Oct 04, 2010 10:14 pm
by steve-myers
There are at least two possibilities here.
  • The Assembler program is calling your Cobol program as though it were called directly from JCL. If that's the case it doesn't matter if your Assembler program is LE compliant.
  • The Assembler program is calling the Cobol program as though the Cobol program is a subroutine. If this is the case your Assembler program must not only be LE compliant, it must establish an LE environment if it is not establish when it's called.
Only you can figure that out; that's why you're getting the big bucks. We're sitting out here in Internet land and getting no bucks!

Re: LE is intercepting my dumps.

PostPosted: Mon Oct 04, 2010 11:28 pm
by Balr14
The LE dump shows the COBOL program running in it's own enclave. I suspect that's a big part of the problem.

Re: LE is intercepting my dumps.

PostPosted: Mon Oct 04, 2010 11:34 pm
by dick scherrer
Hello,

The abend appears to be within the COBOL module on a call to VSAM
The OPEN perhaps. . .?

The called module is possibly trying to use memory it doesn't "have".

Re: LE is intercepting my dumps.

PostPosted: Tue Oct 05, 2010 1:34 am
by Bill Dennis
I seem to recall tha you needed to pass a run-time parm to let the dump process happen. The slash means give the remainder of the PARM to LE.
//step1 EXEC PGM=asmpgm,PARM='your normal parm if any /TRAP(OFF)'