Hello
I'm trying to Xpediter debug from Cobol program A calling program B with the codes like below:
Prog A:
. . .
CALL WS-PROG-B USING WS-PARMS
. . .
However, it abended with 0C4 when executed the above statement. Then, I changed it to static call as below and it worked fine that I can get into the source codes of PROG-B and debug line by line:
CALL 'PROG-B' USING WS-PARMS
Can anyone help me to understand what difference made by changing from dynamic to static call thus the Xpediter debug worked fine for static call?
Thanks, Roy
Dynamic call abend with 0C4
-
- Global moderator
- Posts: 3720
- Joined: Sat Dec 19, 2009 8:32 pm
- Skillset: Systems programming, SAS, COBOL, CICS, JCL, SMS, VSAM, etc.
- Referer: other forum
- Location: Dubuque, Iowa, USA
Re: Dynamic call abend with 0C4
A dynamic call means the COBOL program goes into the load library (STEPLIB or whatever) to find the subprogram load module, loads it, and executes it. A static call means the subprogram load module has been linked into the calling program's load module so there is no requirement to go into the load library. There are implications for Xpediter, obviously.what difference made by changing from dynamic to static call
-
- Posts: 23
- Joined: Thu Jul 21, 2016 10:10 pm
- Skillset: CICS/COBOL/JCL
- Referer: Google search
Re: Dynamic call abend with 0C4
Thanks Robert!
Guess the difference is the addressing of the PROG-B being called?
Guess the difference is the addressing of the PROG-B being called?
-
- Global moderator
- Posts: 3720
- Joined: Sat Dec 19, 2009 8:32 pm
- Skillset: Systems programming, SAS, COBOL, CICS, JCL, SMS, VSAM, etc.
- Referer: other forum
- Location: Dubuque, Iowa, USA
Re: Dynamic call abend with 0C4
Looking on the Internet, I see that if you want to debug program B (the subprogram) when there is a dynamic call, you need to break program A at the CALL statement and issue Xpediter command SOURCE B to be able to see the source of program B. The S0C4 abend means you're attempting to access storage you are not allowed to access. There are a variety of possible reasons (one example: program A has 31-bit addressing while program B is using 24-bit addressing and A passes a parameter to B).
-
- Similar Topics
- Replies
- Views
- Last post
-
- 1
- 8354
-
by sergeyken
View the latest post
Wed Nov 16, 2022 8:31 pm
-
- 5
- 1742
-
by willy jensen
View the latest post
Fri Dec 03, 2021 8:16 pm
-
- 10
- 3741
-
by Heisenberg
View the latest post
Fri Jun 23, 2023 4:00 pm
-
-
REXX call RACF service IRRSPK00 to generate Pass Tickets
by VladGoodman » Mon Feb 27, 2023 1:11 am » in CLIST & REXX - 4
- 2398
-
by Pedro
View the latest post
Fri Mar 17, 2023 11:40 pm
-
-
-
Call REXX dsn "independently" from ispf panel
by RazVorox » Wed Jun 07, 2023 11:32 am » in CLIST & REXX - 2
- 1818
-
by willy jensen
View the latest post
Wed Jun 07, 2023 1:23 pm
-