bug-gnucobol
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[open-cobol-list] Re: Sort Failure with Records larger than 2023 bytes


From: Roger While
Subject: [open-cobol-list] Re: Sort Failure with Records larger than 2023 bytes
Date: Thu Mar 31 10:22:03 2005

Hi Ron,
Re: 1 - Sounds good. Shoot over the code to me.

Re: 2 - Rejected. I know Bill is going to shoot me over this because 2002 allows it.
Pfui. IMHO, fiddling around with allocated sizes is a sure way to introduce
program errors.
In fact 2002 defines the case where the redefining object is larger than the original in which case it specifies to add bits to the field; however it then says that the size of
the original field stays the same. How is that supposed to work ?

Re: 3 - Yes, this is not the first time someone has requested this.
I think a better way would be to choose a new internal reserved word
(like RETURN-CODE is)
Bill, why wasn't this thought of in 2002 ?
How about something like NUMER-OF-PARAMETERS ?

Roger

Problem #1.
I have several COBOL applications that have many sections but the same =
paragraph names in each section. For example, Paragraph L00. was always =
the first and L99. was the last. The code in the section woudl then GO =
TO L99 to exit the section. But this caused problems because the program =
had many different paragraphs called L99. I added an array of =
(current-section) and then in cb_ref, scanned that array to find the =
paragraph that was in the same section as the GOTO.
Problem #2. When a REDEFINES was longer than the redefined item, it =
considered this an error. I changed this to be a warning and to smack =
the size of the redefined item to be the longer length.
Problem #3. I mostly use Micro Focus and it has an internal method for =
determining how many parameters are being passed on a CALL. My primary =
product has an old mainframe style API which needs to detect how many =
parameters where passed on the CALL. I changed the codegen.c module to =
search an array of known routines and replace them by a call to an =
alternate routine witht eh 1st parameter being the number of parameters =
on the CALL statement. it would be nice if there was more elegant =
solution.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]