Seymour's statement is correct, but slightly misleading. The problem is not that the DCB and OPEN parameter list are in your CSECT. The problem is that your DCB and OPEN parameter list are in virtual storage above the 24-bit address line, and this is because your CSECT is in storage above the 24-bit address line. If your CSECT were below this line, then having your DCB and OPEN parameter list in the same CSECT would not be a problem. You could fix this ABEND by forcing your program to be executed in 24-bit storage, or you could fix it by dynamically acquiring some storage in 24-bit storage, then building your DCB and OPEN parameter list in that dynamically acquired area, and adjusting everything in your CSECT that points to either the DCB or the OPEN parameter list so that it points to the correct location within the dynamically acquired area below the line.
If you do a CLOSE on this DCB, the CLOSE parameter list will also have to be below the line. If you use other macros with this DCB, such as TRUNC, the parameter lists for those other macros may also need to be below the line. Check the IBM doc for each different macro you use with this DCB. Bill Fairchild ----- Original Message ----- From: "Shmuel Metz (Seymour J.)" <[email protected]> To: [email protected] Sent: Thursday, January 23, 2014 4:31:49 AM Subject: Re: rentrant Open In <!&!AAAAAAAAAAAYAAAAAAAAAJXIDufoOyhGhgKtFLrs5tbCgAAAEAAAAJxtFH/WwD1Mnt0mSSJO0/[email protected]>, on 01/22/2014 at 11:57 AM, MichealButz <[email protected]> said: >As I get s0c4 Your DCB and OPEN list are in your csect instead of in dynamically acquired storage. ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
