Browse Prior Art Database

Process For Mass Procedural Source Code Compilation And Analysis Of Compile Listing Files On z/OS Systems Disclosure Number: IPCOM000207303D
Publication Date: 2011-May-25
Document File: 6 page(s) / 37K

Publishing Venue

The Prior Art Database


Disclosed is a process for greatly reducing the number of execution steps that are needed to process an entire source library on z/OS systems.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 23% of the total text.

Page 01 of 6

Process For Mass Procedural Source Code Compilation And Analysis Of Compile Listing Files On z/OS Systems

Occasions arise where analysis of source code members must be performed. Source members may not be fully self contained, but may include copybooks or other source code snippets which do not come together until compile time. The source code itself is incomplete without the inclusion of the analysis of such code snippets, and is difficult to analyze without having to manage working between both the source and the copybooks. Since compilation listings include images of both the source and the various referenced copybooks, it is often more desirable to analyze the compilation listing than the raw source code itself.

Typically, each source member and its associated copybook members are processed by an individual invocation of the compiler.

The Job Entry System (JES) component of z/OS has a physical limitation of a maximum of 256 execution steps per JOB stream,

which is problematic if the entire

contents of a source library are to be individually compiled, as there may be many thousands of entries in the library. For each source code member, the invocation of this procedure results in the run-time execution of two execution steps: a compilation step and a listing analysis step on z/OS systems. Such z/OS JES/invocation limitations put the following restrictions on users trying to perform such an activity:
• Generation of a system must be broken up into multiple JOBS
• The individual names of the components must be individually specified in the job control language (JCL) for both steps of each procedure in the job streams

• Steps for each individual source code to be processed must be coded. Consequently, the user must already know how many steps there will be and the names of the source modules. There may be alternative automated processes to acquire such lists and generate the required JCL; however, the limitation of 256 steps per job still applies.

One proposed solution for reducing the number of execution steps that are needed to compile the contents of an entire source library combines all of the
source modules into a huge composite source module and performs a single compile step to compile the input. The compiler itself is smart enough to individually process each logical source member in the composite module; however, this solution is designed to compile the source members without performing any intervening analysis of the compile listing analysis. With this solution, the compile listing is not retained in a file because it would contain a composite listing for all of the source members. If such a listing were retained, it would be far too large to be practical for analysis.

In order to process the listing for each member individually, each member must be compiled individually,

with the analysis of the listing occurring immediately after the

compilation. The compiler products, if invoked directly by JES, are not capable of...