I think you had asked about controlling the output of a COBOL compile for VSE.

Per the VSE COBOL manual:

Advanced Topics
Note: *CONTROL does not turn options on and off. It only allows listing control for those listing options in effect for the compilation. The keywords that may
appear are: SOURCE and NOSOURCE, MAP and NOMAP, LIST and NOLIST.

So in your COPY source, you put *CONTROL NOLIST and be sure to set it back when you are done.

It is more like using a 5 lb hammer to crack a walnut.

HTHs
Steve Thompson


On 2/16/2026 4:13 PM, David Clark wrote:
There are no MACROs in VSE COBOL.   There is no OOP in VSE COBOL.  There
are no classes, user-defined functions, or user-defined procedures in VSE
COBOL.  Existing legacy use of my subroutine will continue to function
without recompilation.  Recompiling a legacy use of my subroutine will not
require the programmer to make any changes to their code.  It is completely
transparent to the caller.

The only change comes if the caller decides to use the new scripting
support and, even then, it is a "simple" change for them--they just use the
new parameter layout (all layouts are in a copybook).  They can even use
the new layout in a legacy call to the new subroutine.  I am handling
everything on my end--except their choice of the layout they pass to me,
and that is well documented as to what they can do between the legacy
layout and the new scripting layout (which supports both).

The only gotcha in all of this is that I am simply re-basing the input
string DSECT address by +2 bytes for the remainder of the assembler
program.  Even then, it is only an issue for the next person coming after
me that they understand what I have done.  It will be documented.

Thanks,
Dave Clark



Reply via email to