IBM Support

SE70544 - RPGLE-CMPL-UNPRED LINEAR MAIN PI EXTPGM(GLOBAL_CONSTANT)

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

 APAR (Authorized Program Analysis Report)

Abstract

RPGLE-CMPL-UNPRED LINEAR MAIN PI EXTPGM(GLOBAL_CONSTANT)

Error Description

An ILE RPG program has the MAIN keyword in a Control statement.
The EXTPGM keyword of the Procedure Interface (PI) for the main
procedure has a global named constant as its parameter. The    
compile fails with msgMCH3203 or with msgMCH4227 rc7.          
                                                               
The following program demonstrates the problem:                
ctl-opt main(Main);                                            
dcl-c thisProgram const('TEST');                                
dcl-proc Main;                                                  
dcl-pi *n extpgm(thisProgram) end-pi;                          
end-proc;                                                      

Problem Summary

****************************************************************
* USERS AFFECTED: All ILE RPG programmers.                     *
****************************************************************
* PROBLEM DESCRIPTION: An ILE RPG program has the MAIN keyword *
*                      in a Control statement. The EXTPGM      *
*                      keyword of the Procedure Interface (PI) *
*                      for the main procedure has a global     *
*                      named constant as its parameter. The    *
*                      compile fails with msgMCH3203 or with   *
*                      msgMCH4227 rc7.                         *
****************************************************************
* RECOMMENDATION:                                              *
****************************************************************
An ILE RPG program has the MAIN keyword in a Control statement  
specifying that the named procedure is the linear main procedure
for the module.                                                
                                                               
The EXTPGM keyword of the Procedure Interface (PI) for the      
linear main procedure has a global named constant as its        
parameter. The compile fails with msgMCH3203 or with            
msgMCH4227-rc7.                                                
                                                               
The following program demonstrates the problem:                
   ctl-opt main(Main);                                          
   dcl-c thisProgram const('TEST');                            
   dcl-proc Main;                                              
      dcl-pi *n extpgm(thisProgram) end-pi;                    
   end-proc;                                                    

Problem Conclusion

The ILE RPG compiler will be changed so that a global named    
constant can be used for the EXTPGM keyword of the procedure    
interface for a linear main procedure.                          

Temporary Fix

                                                               

Comments

                                                               

Circumvention


PTFs Available

R720 SI69115   9123
R730 SI69572   9311

Affected Modules

         
         

Affected Publications

Summary Information

Status............................................ CLOSED PER
HIPER........................................... No
Component.................................. 5770WDS30
Failing Module.......................... NONE
Reported Release................... R720
Duplicate Of..............................




IBM i Support

IBM disclaims all warranties, whether express or implied, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. By furnishing this document, IBM grants no licenses to any related patents or copyrights. Copyright © 1996,1997,1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 IBM Corporation. Any trademarks and product or brand names referenced in this document are the property of their respective owners. Consult the Terms of use link for trademark information

[{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG15Q","label":"APARs - OS\/400 General"},"Component":"","ARM Category":[],"Platform":[{"code":"PF012","label":"IBM i"}],"Version":"V7R1M0;V7R2M0;V7R3M0","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG16C","label":"APARs - IBM i 7.1 environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF012","label":"IBM i"}],"Version":"V7R1M0;V7R2M0;V7R3M0","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG16E","label":"APARs - IBM i 7.2 environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF012","label":"IBM i"}],"Version":"V7R1M0;V7R2M0;V7R3M0","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG16G","label":"APARs - IBM i 7.3 environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF012","label":"IBM i"}],"Version":"V7R1M0;V7R2M0;V7R3M0","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
15 November 2019