An footprinted subprogram appears without footprint in component list

Document ID : KB000117010
Last Modified Date : 09/10/2018
Show Technical Document Details
Issue:
I have the following footprint problem:

Looking for a footprint for an element with CONRPT81 I get following result:
                                          CONRPT80:  LIBRARY MEMBER FOOTPRINT REPORT
 LIBRARY:  PUBLIC.JACQ1800.STG1.TASMLIB
 VOLUME:   VOL001
                      !--------------------------  F O O T P R I N T  -----------------------------!
 MEMBER     CSECT     ENVIRON   SYSTEM    SUBSYS    ELEMENT     TYPE      STG  VVLL  DATE    TIME LD

 SPGM001    SPGM001   ENV1      SYS0001   SSY0001   SPGM001     TASM001    1   0100  05OCT08 05:52

Compiling an element which include the element SPGM001 and SPGM002, I noticed that component list for the generated element shows no footprint for module SPGM001.
The component list looks like this:
 STEP: LINK     DD=SYSLIB   VOL=VOL001 DSN=PUBLIC.JACQ1800.STG1.TASMLIB
             MEMBER     VVLL   DATE   TIME  SYSTEM   SUBSYS   ELEMENT    TYPE     STG STE ENVRMNT  LD
  +0055      SPGM001
  +0002      SPGM002    0108  03AUG18 11:30 SYS0001  SSY0001  SPGM002    TASM001   1   0  ENV1


Why SPGM001 doesn't show the footprint information?
Environment:
All version of Endevor
z/OS
Cause:
If you look the CONRPT80 ran against library PUBLIC.JACQ1800.STG1.TASMLIB, you can see that footprint of element doesn't have *LOADMOD for element SPGM001 , i.e
                                          CONRPT80:  LIBRARY MEMBER FOOTPRINT REPORT
 LIBRARY:  PUBLIC.JACQ1800.STG1.TASMLIB
 VOLUME:   VOL001
                      !--------------------------  F O O T P R I N T  -----------------------------!
 MEMBER     CSECT     ENVIRON   SYSTEM    SUBSYS    ELEMENT     TYPE      STG  VVLL  DATE    TIME LD
 SPGM001    SPGM001   ENV1      SYS0001   SSY0001   SPGM001     TASM001    1   0100  05OCT08 05:52

The lack of CSECT *LOADMOD shows that there was no FOOTPRNT=CREATE action specified on the SYSLMOD DD of the link step.
*LOADMOD is a dummy csect used by Endevor specifically for footprinting load modules.
When the *LOADMOD appears in the CSECT field, the displayed footprint is for the load module associated to the CSECT listed.

Exemple of correct footprint for a load module:
 LIBRARY:  PUBLIC.JACQ1800.STG1.TASMLIB
 VOLUME:   VOL001
                      !--------------------------  F O O T P R I N T  -----------------------------!
 MEMBER     CSECT     ENVIRON   SYSTEM    SUBSYS    ELEMENT     TYPE      STG  VVLL  DATE    TIME LD
 SPGM002    *LOADMOD  ENV1      SYS0001   SSY0001   SPGM002     TASM001    1   0108  03AUG18 11:30
            SPGM002   ENV1      SYS0001   SSY0001   SPGM002     TASM001    1   0108  03AUG18 11:30

A footprint on the compile results in the SPGM002 (main CSECT) footprint
A footprint during the LINK results in the *LOADMOD footprint
Resolution:
Edit the Generate processor and add FOOTPRNT=CREATE on the SYSLMOD DD of the link step.