Thanks. I'll point him to it. He has already, somewhat jokingly, said "fix it!" But COBOL doesn't have the DWIW (Do What I Want) verb.
On Wed, Sep 11, 2013 at 12:46 PM, Sambataro, Anthony (NIH/NBS) [E] < [email protected]> wrote: > Could you point the programmer to the COBOL Reference and the following > section? > > Alignment rules > ..... > Alphanumeric, alphanumeric-edited, alphabetic, DBCS > For these receiving items, the following rules apply: > 1. The data is aligned at the leftmost character position, and (if > necessary) > truncated or padded with spaces at the right. > > And since the caller's data/storage address is passed to the subroutine > the caller's data area gets padded. > > -----Original Message----- > From: John McKown [mailto:[email protected]] > Sent: Wednesday, September 11, 2013 1:21 PM > To: [email protected] > Subject: Re: COBOL "problem" (not really), but sort of. > > I can try that. The programmer says that he intents to define the passed > in area in the calling program at the front of his WORKING-STORAGE so that > the area is larger. I.e. it is _planning_ on a buffer overflow and _hoping_ > that it doesn't affect the calling program. I don't have authority to > disallow this. And we don't do any kind of peer review because we just > don't have the people left. > > > On Wed, Sep 11, 2013 at 12:09 PM, Thomas Berg <[email protected] > >wrote: > > > I would say: the READ .. INTO .. statement doesn't look at the > > numerical value in the length field, it only looks at the max possible > > length as defined. And acts accordingly. > > > > > > > > Best Regards > > Thomas Berg > > ___________________________________________________________________ > > Thomas Berg Specialist zOS\RQM\IT Delivery SWEDBANK AB (Publ) > > > > > -----Original Message----- > > > From: IBM Mainframe Discussion List > > > [mailto:[email protected]] On Behalf Of John McKown > > > Sent: Wednesday, September 11, 2013 7:02 PM > > > To: [email protected] > > > Subject: COBOL "problem" (not really), but sort of. > > > > > > A programmer came by today with a problem. He is sometimes getting a > > > S0C4-4 abend in a COBOL program. This is a subroutine. One of the > > > parameters passed in is a data area, which can be of various > > > lengths. It is defined with an OCCURS DEPENDING ON with a data > > > element within the area. I.e. the first 05 level is PIC S9(5) COMP. > > > The subroutine does a READ of a data set into this area. This is > > > where the abend occurs. The reason is because the OCCURS DEPENDING > > > ON maximum size is significantly larger than what the caller is > > > passing it. And the READ to the 01 is trying to pad the entire > possible 01 level with blanks. > > > > > > The problem is how do I describe this to a COBOL programmer who just > > > doesn't "get it". He expects COBOL to _not_ pad the "non existent" > > > occurrences with blanks. And, if fact, to not even reference this > > > area wherein they would have resided, had they existed. I'm just get > > > "deer in headlights" looks. I'm not using the correct words, somehow. > > > > > > -- > > > As of next week, passwords will be entered in Morse code. > > > > > > Maranatha! <>< > > > John McKown > > > > > > -------------------------------------------------------------------- > > > -- For IBM-MAIN subscribe / signoff / archive access instructions, > > > send email to [email protected] with the message: INFO > > > IBM-MAIN > > > > ---------------------------------------------------------------------- > > For IBM-MAIN subscribe / signoff / archive access instructions, send > > email to [email protected] with the message: INFO IBM-MAIN > > > > > > -- > As of next week, passwords will be entered in Morse code. > > Maranatha! <>< > John McKown > > ---------------------------------------------------------------------- > For IBM-MAIN subscribe / signoff / archive access instructions, send email > to [email protected] with the message: INFO IBM-MAIN > > ---------------------------------------------------------------------- > For IBM-MAIN subscribe / signoff / archive access instructions, > send email to [email protected] with the message: INFO IBM-MAIN > -- As of next week, passwords will be entered in Morse code. Maranatha! <>< John McKown ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
