COBOL

  • 1.  Another compiler bug

    Posted Fri September 13, 2024 04:18 PM

    PP 5655-EC6 IBM Enterprise COBOL for z/OS  6.4.0 P240202       BAD1      Date 09/13/2024  Time 12:55:08   Page     3      
      LineID  PL SL  ----+-*A-1-B--+----2----+----3----+----4----+----5----+----6----+----7-|--+----8 Map and Cross Reference 
    /* BAD1                                                                                                                   
      000001         000100 identification division.                                         COBOL6.4                         
      000002         000200 program-id. bad1.                                                                                 
      000003         000300                                                                                                   
      000004         000400 data division.                                                                                    
      000005         000500 working-storage section.                                                                          
      000006         000600 01  hold-info                   pic x dynamic limit 210.                                          
      000007         000700 procedure division.                                                                               
      000008         000800     goback.                                                                                       
      000009         000900 end program bad1.                                                                                 
    */ BAD1                                                                                                                   
    CURRENT PHASE: IGYCPGEN                                                                                                   
    CURRENT LINE NUMBER: 000000                                                                                               
    REGISTERS 0 - 15:                                                                                                         
    1527030E 00000084 000C1BCC 00000000         00026DD0 00000000 0000FDEC 0001DA14                                           
    00000000 00000000 0001DA14 10635BB8         152701DC 1526FF20 906358DA 000164DA                                           
    PP 5655-EC6 IBM Enterprise COBOL for z/OS  6.4.0 P240202       BAD1      Date 09/13/2024  Time 12:55:08   Page     4      
    LineID  Message code  Message text                                                                                        
                                                                                                                              
            IGYPG5125-U   The compilation was terminated due to a compiler error in phase id:  "IGYCPGEN".                    
                                                                                                                              
                                                                                                                              
            IGYPG5201-U   Internal compiler error code "PTEXT-07" occurred.                                                   
                                                                                                                              
    Messages    Total    Informational    Warning    Error    Severe    Terminating                                           
    Printed:       2                                                          2                                               
    * Statistics for COBOL program BAD1:                                                                                      
    *    Source records = 9                                                                                                   
    *    Data Division statements = 1                                                                                         
    *    Procedure Division statements = 1                                                                                    
    *    Generated COBOL statements = 0                                                                                       
    *    Program complexity factor = 1                                                                                        
    End of compilation 1,  program BAD1,  highest severity 16.                                                                
    

    Looks like if a dynamic length string is defined but not used this occurs.  If it's used in the procedure division it works fine.



    ------------------------------
    Frank Swarbrick
    ------------------------------


  • 2.  RE: Another compiler bug

    Posted Mon September 16, 2024 06:44 AM

    Hi Frank,

    I've not been able to reproduce this problem. Do you have your compiler linklisted or APF authorized? If the former, does STEPLIBing to the compiler resolve the problem?

    Bernie



    ------------------------------
    Bernie Rataj
    Technical Support Professional
    IBM Canada Ltd.
    Markham

    https://www.ibm.com/products/cobol-compiler-zos
    https://www.ibm.com/products/pli-compiler-zos
    ------------------------------



  • 3.  RE: Another compiler bug

    Posted Mon September 16, 2024 12:33 PM

    Hmm, how odd. 

    I am using STEPLIB already:

    //COB      EXEC PGM=IGYCRCTL,
    //           PARM='TERM PGMN(LU) &EXITS &COBOPT'        
    //STEPLIB  DD  DSN=IGY.SIGYCOMP,DISP=SHR                

    Not sure what else to do.  Not a show stopper, of course, as I simply can remove the field if I am not using it.

    Here are my compiler options, in case that is helpful.

    Options in effect:                                                      
     NOADATA                                                                
       ADV                                                                  
       AFP(NOVOLATILE)                                                      
       APOST                                                                
       ARCH(10)                                                             
       ARITH(COMPAT)                                                        
     NOAWO                                                                  
       BLOCK0                                                               
       BUFSIZE(30720)                                                       
     NOCICS                                                                 
       CODEPAGE(1140)                                                       
     NOCOMPILE(S)                                                           
       CONDCOMP(NOSKIPSRC)                                                  
     NOCOPYLOC                                                              
       COPYRIGHT('FirstBank')                                               
     NOCURRENCY                                                             
       DATA(31)                                                             
       DBCS                                                                 
     NODECK                                                                 
     NODEFINE                                                               
     NODIAGTRUNC                                                            
       DISPSIGN(SEP)                                                        
     NODLL                                                                  
     NODUMP                                                                 
       DYNAM                                                                
       EXIT(INEXIT(FBCOBXIT),NOPRTEXIT,NOLIBEXIT,NOADEXIT,MSGEXIT(FBCOBXIT))
     NOEXPORTALL                                                            
     NOFASTSRT                                                              
       FLAG(I,I)                                                            
     NOFLAGSTD                                                              
       HGPR(NOPRESERVE)                                                     
     NOINITCHECK                                                            
     NOINITIAL                                                              
       INLINE                                                               
       INTDATE(LILIAN)                                                                                                                  
       INVDATA(FORCENUMCMP,CLEANSIGN)                                                                                                   
     NOJAVAIOP                                                                                                                          
       LANGUAGE(EN)                                                                                                                     
       LINECOUNT(60)                                                                                                                    
     NOLIST                                                                                                                             
       LP(32)                                                                                                                           
       MAP(HEX)                                                                                                                         
       MAXPCF(60000)                                                                                                                    
     NOMDECK                                                                                                                            
     NONAME                                                                                                                             
       NSYMBOL(NATIONAL)                                                                                                                
     NONUMBER                                                                                                                           
     NONUMCHECK                                                                                                                         
       NUMPROC(NOPFD)                                                                                                                   
       OBJECT                                                                                                                           
       OFFSET                                                                                                                           
       OPTIMIZE(1)                                                                                                                      
       OUTDD(SYSOUT)                                                                                                                    
     NOPARMCHECK                                                                                                                        
       PGMNAME(LONGUPPER)                                                                                                               
       QUALIFY(COMPAT)                                                                                                                  
       RENT                                                                                                                             
       RMODE(ANY)                                                                                                                       
     NORULES                                                                                                                            
     NOSERVICE                                                                                                                          
     NOSEQUENCE                                                                                                                         
       SMARTBIN                                                                                                                         
       SOURCE(DEC)                                                                                                                      
       SPACE(1)                                                                                                                         
     NOSQL                                                                                                                              
       SQLCCSID                                                                                                                         
     NOSQLIMS                                                                                                                           
       SSRANGE(ZLEN,ABD)                                                                                                                
       STGOPT                                                                                                                 
       SUPPRESS                                                                                                               
       TERM                                                                                                                   
       TEST(NOEJPD,DWARF,SOURCE,NOSEPARATE)                                                                                   
     NOTHREAD                                                                                                                 
       TRUNC(STD)                                                                                                             
       TUNE(10)                                                                                                               
     NOVBREF                                                                                                                  
       VLR(STANDARD)                                                                                                          
       VSAMOPENFS(SUCC)                                                                                                       
     NOWORD                                                                                                                   
       XMLPARSE(XMLSS)                                                                                                        
       XREF(FULL)                                                                                                             
       ZWB



    ------------------------------
    Frank Swarbrick
    ------------------------------



  • 4.  RE: Another compiler bug

    Posted Mon September 16, 2024 06:31 PM

    Thanks for the options Frank, and for reporting the problem.

    I've opened internal work item 173977 for this, having discovered that the STGOPT option is the proximal cause. Seems like something has gotten messed up... 

    Bernie



    ------------------------------
    Bernie Rataj
    Technical Support Professional
    IBM Canada Ltd.
    Markham

    https://www.ibm.com/products/cobol-compiler-zos
    https://www.ibm.com/products/pli-compiler-zos
    ------------------------------



  • 5.  RE: Another compiler bug

    Posted Mon September 16, 2024 06:49 PM

    Ah, that makes sense.  Thanks.

    I posted about another obscure error a week or two ago.  Have you seen that?



    ------------------------------
    Frank Swarbrick
    ------------------------------



  • 6.  RE: Another compiler bug

    Posted Mon September 30, 2024 02:43 PM

    Hi Frank,

    I've opened APAR PH63477 for this issue, it will be part of the October 2024 month-end compiler PTF.

    Bernie

    It may take a day or so before this link works:

    PH63477: Unused dynamic length item with STGOPT leads to compiler failure IGYPG5125-U IGYPG5201-U error code "PTEXT-07"
    https://www.ibm.com/support/pages/apar/PH63477



    ------------------------------
    Bernie Rataj
    Technical Support Professional
    IBM Canada Ltd.
    Markham

    https://www.ibm.com/products/cobol-compiler-zos
    https://www.ibm.com/products/pli-compiler-zos
    ------------------------------