ILE COBOL Programmer's Guide

A Sample Binder Listing

The following sample listings illustrate the binder listing produced using the CRTPGM command. References to the figures are made throughout the following text. These references are indexed by the reverse printing of letters on a black background, for example ((Z)). The reverse letters in the text correspond to the letter found in the figures.

Command Option Summary

The Command Option Summary is produced whenever a binder listing is requested. It shows what options were used when the ILE program was created. You may want to store this information description of the command for some future reference when you need to create the program again. Figure 20 shows you the command option summary listing.

Figure 20. CRTPGM Command Option Summary Listing


                                                   Create Program                                                       Page     1
5722WDS V5R3M0  030905                                                             CBLGUIDE/EXTLFL    ISERIES1  03/09/15  13:14:03
 Program  . . . . . . . . . . . . . . . . . . . . . :   EXTLFL
   Library  . . . . . . . . . . . . . . . . . . . . :     CBLGUIDE
 Program entry procedure module . . . . . . . . . . :   *FIRST
   Library  . . . . . . . . . . . . . . . . . . . . :
 Activation group . . . . . . . . . . . . . . . . . :   *NEW
 Creation options . . . . . . . . . . . . . . . . . :   *GEN        *NODUPPROC  *NODUPVAR   *WARN       *RSLVREF
 Listing detail . . . . . . . . . . . . . . . . . . :   *FULL
 Allow update . . . . . . . . . . . . . . . . . . . :   *YES
 Allow bound *SRVPGM library name update  . . . . . :   *NO
 User profile . . . . . . . . . . . . . . . . . . . :   *USER
 Replace existing program . . . . . . . . . . . . . :   *YES
 Authority  . . . . . . . . . . . . . . . . . . . . :   *LIBCRTAUT
 Target release . . . . . . . . . . . . . . . . . . :   *CURRENT
 Allow reinitialization . . . . . . . . . . . . . . :   *NO
 Storage model  . . . . . . . . . . . . . . . . . . :   *SNGLVL
 Interprocedural analysis . . . . . . . . . . . . . :   *NO
 IPA control file . . . . . . . . . . . . . . . . . :   *NONE
 IPA replace IL data  . . . . . . . . . . . . . . . :   *NO
 Text . . . . . . . . . . . . . . . . . . . . . . . :   *ENTMODTXT
 Module      Library              Module      Library              Module      Library              Module      Library
 EXTLFL      CBLGUIDE
 Service                          Service                          Service                          Service
 Program     Library              Program     Library              Program     Library              Program     Library
 *NONE
 Binding                          Binding                          Binding                          Binding
 Directory   Library              Directory   Library              Directory   Library              Directory   Library
 *NONE

Extended Summary Table

The Extended Summary Table is provided if *EXTENDED or *FULL is supplied. It contains statistical information that provides a general view of the imports and exports that the binder resolved. Figure 21 shows the layout of the Extended Summary Table.

Figure 21. CRTPGM Listing - Extended Summary Table


                                                   Create Program                                                       Page     3
5722WDS V5R3M0  030905                                                             CBLGUIDE/EXTLFL    ISERIES1  03/09/15  13:14:03
                                                       Extended Summary Table
   Valid definitions  . . . . . . . . . . :           341 (A)
     Strong . . . . . . . . . . . . . . . :           340
     Weak . . . . . . . . . . . . . . . . :             1
   Resolved references  . . . . . . . . . :            16 (B)
     To strong definitions  . . . . . . . :            15
     To weak definitions  . . . . . . . . :             1
                             * * * * *   E N D  O F  E X T E N D E D  S U M M A R Y  T A B L E   * * * * *

The Extended Summary Table provides statistical information on the following items:

(A)
Valid definitions: This field provides the number of named variables or procedures available for exporting. The definitions are further categorized as strong definitions or weak definitions. For strong definitions, storage is allocated for the variable or procedure. For weak definitions, storage is referenced for the variable or procedure.

In ILE COBOL, the outermost COBOL source program and its associated CANCEL procedure will have strong definitions. EXTERNAL data and EXTERNAL files will have weak definitions. CALL, CANCEL, and SET ENTRY to an external static procedure will have module imports that are strong definitions. References to EXTERNAL data and EXTERNAL files will have module imports that are weak definitions.

(B)
Resolved references: This field provides the number of imports that are matched with inter-module exports.

The usage counts shown in Figure 21 are in decimal form.

Brief Summary Table

This Brief Summary Table, available when *BASIC, *EXTENDED, or *FULL is specified, provides information that reflects what was found to be in error during the binding process. Figure 22 shows the layout of the Brief Summary Table.

Figure 22. CRTPGM Listing - Brief Summary Table


                                                   Create Program                                                       Page     4
5722WDS V5R3M0  030905                                                             CBLGUIDE/EXTLFL    ISERIES1  03/09/15  13:14:03
                                                        Brief Summary Table
 Program entry procedures . . . . . . . . . . . :   1  (C)
   Symbol    Type      Library     Object      Bound       Identifier
     (F)      (G)        (H)       (I)           (J)          (K)
             *MODULE   CBLGUIDE    EXTLFL      *YES        _Qln_pep
 Multiple strong definitions  . . . . . . . . . :   0  (D)
 Unresolved references  . . . . . . . . . . . . :   0  (E)
                                * * * * *   E N D  O F  B R I E F  S U M M A R Y  T A B L E   * * * * *

The table consists of three lists with the number of entries in each of the following categories:

(C)
Program entry procedures: The number of procedures that get control from a calling program.

(D)
Multiple strong definitions: The number of module export procedures with the same name. This should be 0.

(E)
Unresolved references: The number of imported procedures or variables for which no export was located. This should be 0.

(F)
Symbol #: The Symbol number is from the Binder Information Listing shown in Binding Information Listing. If *BASIC is specified for the DETAIL parameter, this area is blank.

(G)
Type: The type of the object containing the identifier is shown in the Type field.

(H)
Library: The name of the library containing the object is shown in the Library field.

(I)
Object: The name of the object which has the program entry procedure, unresolved reference, or strong definition is shown in the Object field.

(J)
Bound: If this field shows a value of *YES for a module object, the module object is bound by copy. If this field shows a value of *YES for a program, the program is bound by reference. If this field shows a value of *NO for a module object or program, that object is not included in the bind.

(K)
Identifier: The name of the procedure or variable from module source is shown in the Identifier field.

In this example, the total number of program entry procedures, unresolved references, or multiple strong definitions are 1, 0, 0 respectively. The usage counts shown in Figure 22 are in decimal form.

Binding Information Listing

This listing, which provides much more detailed information about the binding process, is available if *EXTENDED or *FULL is specified. Figure 23 shows the layout of the Binder Information Listing.

Figure 23. CRTPGM Listing - Binder Information Listing


                                                   Create Program                                                       Page     5
5722WDS V5R3M0  030905                                                             CBLGUIDE/EXTLFL    ISERIES1  03/09/15  13:14:03
                                                     Binder Information Listing
 Module . . . . . . . . . . . :   EXTLFL     (L)
   Library  . . . . . . . . . :     CBLGUIDE
   Bound  . . . . . . . . . . :     *YES
   Change date/time . . . . . :     00/08/15  13:11:40
   Teraspace storage enabled  :     *YES
   Storage model  . . . . . . :     *SNGLVL
       Number    Symbol      Ref       Identifier                                   Type      Scope       Export       Key
        (M)       (N)       (O)           (P)                                         (Q)      (R)          (S)       (T)
       00000001  Def                   EF1_ffd                                      Data      Module      Weak              190
 ****                                  Best weak definition
       00000002  Def                   EF1MAIN                                      Proc      Module      Strong
       00000003  Def                   EF1MAIN_reset                                Proc      Module      Strong
       00000004  Ref         000000A7  _Qln_rut                                     Data
       00000005  Ref         00000001  EF1_ffd                                      Data
       00000006  Ref         000000C6  _Qln_cancel_handler                          Proc
       00000007  Ref         000000D6  _Qln_cancel_handler_pep                      Proc
       00000008  Ref         000000A8  _Qln_init_mod                                Proc
       00000009  Ref         000000A9  _Qln_init_mod_bdry                           Proc
       0000000A  Ref         000000AA  _Qln_init_oprg                               Proc
       0000000B  Ref         000000B9  _Qln_recurse_msg                             Proc
       0000000C  Ref         00000022  _Qln_disp_norm                               Proc
       0000000D  Ref         000000BE  _Qln_stop_prg                                Proc
       0000000E  Ref         000000BB  _Qln_cancel_msg                              Proc
       0000000F  Ref         000000BD  _Qln_fc_hdlr                                 Proc
       00000010  Ref         0000012A  Q LE leDefaultEh                             Proc
       00000011  Ref         00000131  Q LE leBdyCh                                 Proc
       00000012  Ref         00000161  Q LE leActivationInit                        Proc
       00000013  Ref         00000132  Q LE leBdyEpilog                             Proc
 Service program  . . . . . . :   QLNRACPT
   Library  . . . . . . . . . :     QSYS
   Bound  . . . . . . . . . . :     *YES
   Change date/time . . . . . :     00/08/14  18:54:04
   Teraspace storage enabled
     modules  . . . . . . . . :     *ALL
   Storage model  . . . . . . :     *SNGLVL
       Number    Symbol      Ref       Identifier                                   Type      Scope       Export       Key
       00000014  Def                   _Qln_DateISODescriptor                       Data                  Strong
       00000015  Def                   _Qln_TimeISODescriptor                       Data                  Strong
       00000016  Def                   _Qln_acpt_norm                               Proc                  Strong
       00000017  Def                   _Qln_acpt_console                            Proc                  Strong
       00000018  Def                   _Qln_acpt_session                            Proc                  Strong
       00000019  Def                   _Qln_acpt_time                               Proc                  Strong
          
·
·
·
0000015B Def CEESECI Proc Strong 0000015C Def CEEDYWK Proc Strong 0000015D Def CEELOCT Proc Strong 0000015E Def CEEUTC Proc Strong 0000015F Def CEEGMT Proc Strong 00000160 Def CEEUTCO Proc Strong 00000161 Def Q LE leActivationInit Proc Strong 00000162 Def Q LE leActivationInitRouter Proc Strong 00000163 Def QleActBndPgm Proc Strong 00000164 Def QleGetExp Proc Strong 00000165 Def Q LE leCheck Proc Strong * * * * * E N D O F B I N D E R I N F O R M A T I O N L I S T I N G * *

(L)
Module and Library: This field identifies the library and name of the module object or service program that was processed.

(M)
Number: A unique identifier assigned to each data item or ILE procedure in this program. This number is used for cross referencing.

(N)
Symbol: This field identifies the symbol as an export or an import. If this field shows a value of Def then the symbol is an export. If this field shows a value of Ref then the symbol is an import.

(O)
Ref: This field is blank if Symbol is Def or contains a symbol number if the value in the Symbol column is Ref. If the Symbol column is Ref, this field contains the unique number identifying the export (Def) that satisfies the import request.

(P)
Identifier: This is the name of the symbol that is exported or imported.

(Q)
Type: If the symbol name is an ILEprocedure, this field contains Proc. If the symbol name is a data item, this field contains Data.

(R)
Scope: This field identifies the level at which the exported symbol name can be accessed.

(S)
Export: This field identifies whether the data items be exported has a weak definition or a strong definition.

(T)
Key: This field contains the length of weak exported items. The values shown in this field are in hexadecimal form.

The columns of the listing contain the following information:

Cross Reference Listing

The cross reference listing, provided only if *FULL is specified, is useful to the programmer who has a large binder listing and wants a handy index for it. The cross reference listing alphabetically lists all the unique identifiers in the binder listing with a corresponding list of all the definitions and resolved references of that identifier. Figure 24 shows the layout of the Cross Reference Listing.

Figure 24. CRTPGM Listing - Cross Reference Listing


                                                   Create Program                                                       Page    15
5722WDS V5R3M0  030905                                                             CBLGUIDE/EXTLFL    ISERIES1  03/09/15  13:14:03
                                                      Cross-Reference Listing
                                                                    --------Refs--------
         Identifier                                     Defs        Ref         Ref         Type        Library       Object
            (U)                                          (V)                (W)              (X)         (Y)           (Z)
         __CEEDOD                                       0000014F                            *SRVPGM     QSYS          QLEAWI
         __CEEGSI                                       00000150                            *SRVPGM     QSYS          QLEAWI
         __CEEHDLR                                      0000013C                            *SRVPGM     QSYS          QLEAWI
         __CEEHDLU                                      0000013D                            *SRVPGM     QSYS          QLEAWI
         __CEERTX                                       00000135                            *SRVPGM     QSYS          QLEAWI
         __CEETSTA                                      0000014E                            *SRVPGM     QSYS          QLEAWI
         __CEEUTX                                       00000136                            *SRVPGM     QSYS          QLEAWI
         _C_session_cleanup                             00000144                            *SRVPGM     QSYS          QLEAWI
         _C_session_open                                00000145                            *SRVPGM     QSYS          QLEAWI
         _Qln_acos                                      000000D7                            *SRVPGM     QSYS          QLNRMATH
         _Qln_acpt_attribute                            0000001D                            *SRVPGM     QSYS          QLNRACPT
         _Qln_acpt_console                              00000017                            *SRVPGM     QSYS          QLNRACPT
         _Qln_acpt_da                                   0000002B                            *SRVPGM     QSYS          QLNRACPT
         _Qln_acpt_date                                 0000001A                            *SRVPGM     QSYS          QLNRACPT
         _Qln_acpt_date_yyyy                            0000002C                            *SRVPGM     QSYS          QLNRACPT
         _Qln_acpt_day                                  0000001B                            *SRVPGM     QSYS          QLNRACPT
         _Qln_acpt_day_of_week                          0000001C                            *SRVPGM     QSYS          QLNRACPT
         _Qln_acpt_day_yyyy                             0000002D                            *SRVPGM     QSYS          QLNRACPT
         _Qln_acpt_io_feed                              00000021                            *SRVPGM     QSYS          QLNRACPT
         _Qln_acpt_lda                                  0000001F                            *SRVPGM     QSYS          QLNRACPT
         _Qln_acpt_norm                                 00000016                            *SRVPGM     QSYS          QLNRACPT
         _Qln_acpt_open_feed                            00000020                            *SRVPGM     QSYS          QLNRACPT
         _Qln_acpt_pip                                  0000001E                            *SRVPGM     QSYS          QLNRACPT
         _Qln_acpt_session                              00000018                            *SRVPGM     QSYS          QLNRACPT
         _Qln_acpt_time                                 00000019                            *SRVPGM     QSYS          QLNRACPT
               
·
·
·
Q LE leBdyCh 00000131 00000011 *SRVPGM QSYS QLEAWI Q LE leBdyEpilog 00000132 00000013 *SRVPGM QSYS QLEAWI Q LE leCheck 00000165 *SRVPGM QSYS QLEAWI Q LE leDefaultEh 0000012A 00000010 *SRVPGM QSYS QLEAWI Q LE AG_prod_rc 00000129 *SRVPGM QSYS QLEAWI Q LE AG_user_rc 00000128 *SRVPGM QSYS QLEAWI Q LE HdlrRouterEh 00000138 *SRVPGM QSYS QLEAWI Q LE RtxRouterCh 00000137 *SRVPGM QSYS QLEAWI QleActBndPgm 00000163 *SRVPGM QSYS QLEAWI QleGetExp 00000164 *SRVPGM QSYS QLEAWI QlnDumpCobol 000000C0 *SRVPGM QSYS QLNRMAIN QlnRtvCobolErrorHandler 000000C1 *SRVPGM QSYS QLNRMAIN QlnSetCobolErrorHandler 000000C2 *SRVPGM QSYS QLNRMAIN * * * * * E N D O F C R O S S - R E F E R E N C E L I S T I N G * * * * *

The fields contain the following information:

(U)
Identifier: The name of the export that was processed during symbol resolution.

(V)
Defs: The unique identification number associated with each export.

(W)
Refs: Lists the unique identification numbers of the imports (Ref) that were resolved to this import (Def).

(X)
Type: Identifies whether the export can from a module object (*MODULE) or a service program (*SRVPGM).

(Y)
Library: The name of the library in which the symbol described on this line has been defined.

(Z)
Object: The name of the module object or service program in which the symbol described on this line has been defined.

Binding Statistics

The Binding Statistics section is produced only when the *FULL value is used on the DETAIL parameter. It shows how much system CPU time was used to bind specific parts of the program. These values may only have meaning to you when compared to similar output from other ILE programs or other times when a particular program has been created. The value for the binding language compilation CPU time is always zero for an ILE program. Figure 25 shows the layout of the Binding Statistics.

Figure 25. CRTPGM Listing - Binding Statistics


                                                   Create Program                                                       Page    22
5722WDS V5R3M0  030905                                                             CBLGUIDE/EXTLFL    ISERIES1  03/09/15  13:14:03
                                                         Binding Statistics
 Symbol collection CPU time . . . . . . . . . . . . . . . . . :                .001
 Symbol resolution CPU time . . . . . . . . . . . . . . . . . :                .000
 Binding directory resolution CPU time  . . . . . . . . . . . :                .009
 Binder language compilation CPU time . . . . . . . . . . . . :                .000
 Listing creation CPU time  . . . . . . . . . . . . . . . . . :                .082
 Program/service program creation CPU time  . . . . . . . . . :                .020
 Total CPU time . . . . . . . . . . . . . . . . . . . . . . . :                .322
 Total elapsed time . . . . . . . . . . . . . . . . . . . . . :               1.145
                                 * * * * *   E N D  O F  B I N D I N G  S T A T I S T I C S   * * * * *
*CPC5D07 - Program EXTLFL created in library CBLGUIDE.
                           * * * * *   E N D  O F  C R E A T E  P R O G R A M  L I S T I N G   * * * * *


[ Top of Page | Previous Page | Next Page | Table of Contents | Index ]