IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference

  • 8,993 views
Uploaded on

Learn about IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference.This document presents the information you need to set up and use IBM Ported Tools for z/OS: Perl for z/OS......

Learn about IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference.This document presents the information you need to set up and use IBM Ported Tools for z/OS: Perl for z/OS Feature.This document is for the system programmers who run a z/OS system with z/OS UNIX System Services (z/OS UNIX), and for their users who use IBM Ported Tools for z/OS: Perl for z/OS Feature. On other open systems, some system programmer tasks may be done by an administrator. This document assumes the readers are familiar with z/OS systems and with the information for z/OS and its accompanying products. For more information on IBM System z, visit http://ibm.co/PNo9Cb.

Visit http://bit.ly/KWh5Dx to 'Follow' the official Twitter handle of IBM India Smarter Computing.

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
8,993
On Slideshare
8,993
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
3
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. z/OSIBM Ported Tools for z/OS: Perl for z/OSFeature User’s Guide and ReferenceSA23-1347-00
  • 2. z/OSIBM Ported Tools for z/OS: Perl for z/OSFeature User’s Guide and ReferenceSA23-1347-00
  • 3. NoteBefore using this information and the product it supports, be sure to read the general information under “Notices” on page225.First Edition, June 2006This edition applies to Version 1 Release 1 of IBM Ported Tools for z/OS: Perl for z/OS Feature (5655-M23) and toall subsequent releases and modifications until otherwise indicated in new editions.IBM welcomes your comments. A form for readers’ comments may be provided at the back of this document, or youmay address your comments to the following address:International Business Machines CorporationDepartment 55JA, Mail Station P3842455 South RoadPoughkeepsie, NY 12601-5400United States of AmericaFAX (United States & Canada): 1+845+432-9405FAX (Other Countries):Your International Access Code +1+845+432-9405IBMLink™(United States customers only): IBMUSM10(MHVRCFS)Internet e-mail: mhvrcfs@us.ibm.comWorld Wide Web: www.ibm.com/servers/eserver/zseries/zos/webqs.htmlIf you would like a reply, be sure to include your name, address, telephone number, or FAX number.Make sure to include the following in your comment or note:v Title and order number of this documentv Page number or topic related to your commentWhen you send information to IBM, you grant IBM a nonexclusive right to use or distribute the information in anyway it believes appropriate without incurring any obligation to you.© Copyright International Business Machines Corporation 2006. All rights reserved.US Government Users Restricted Rights – Use, duplication or disclosure restricted by GSA ADP Schedule Contractwith IBM Corp.
  • 4. ContentsTables . . . . . . . . . . . . . . . . . . . . . . . . . . . . vAbout this document . . . . . . . . . . . . . . . . . . . . . . viiWho should use this document? . . . . . . . . . . . . . . . . . . viiWhere to find more information . . . . . . . . . . . . . . . . . . . viiSoftcopy publications. . . . . . . . . . . . . . . . . . . . . . viiIBM Systems Center publications . . . . . . . . . . . . . . . . . viiUsing LookAt to look up message explanations . . . . . . . . . . . . viiiUsing IBM Health Checker for z/OS . . . . . . . . . . . . . . . . viiiChapter 1. Introduction . . . . . . . . . . . . . . . . . . . . . . 1Finding more information. . . . . . . . . . . . . . . . . . . . . . 1Supported utilities . . . . . . . . . . . . . . . . . . . . . . . . 1Restrictions and limitations . . . . . . . . . . . . . . . . . . . . . 2Chapter 2. Installing Perl for z/OS . . . . . . . . . . . . . . . . . 3Pre-installation planning . . . . . . . . . . . . . . . . . . . . . . 3File-System Allocation. . . . . . . . . . . . . . . . . . . . . . 3Files and directory structure . . . . . . . . . . . . . . . . . . . 3Migrating from open source versions of Perl . . . . . . . . . . . . . 3Post-installation setup . . . . . . . . . . . . . . . . . . . . . . . 6Add references to libperl.so. . . . . . . . . . . . . . . . . . . . 6Add symbolic link for man page . . . . . . . . . . . . . . . . . . 8Add symbolic link to perl in /usr/bin . . . . . . . . . . . . . . . . . 8Chapter 3. Installing user modules . . . . . . . . . . . . . . . . . 9Before you Begin . . . . . . . . . . . . . . . . . . . . . . . . 9Insure you have the necessary access . . . . . . . . . . . . . . . 9Acquire required utilities . . . . . . . . . . . . . . . . . . . . . 9Install prerequisite modules. . . . . . . . . . . . . . . . . . . . 9Steps for installing user modules . . . . . . . . . . . . . . . . . . 10Chapter 4. Considerations for porting or writing Perl scripts . . . . . . 11The path of perl on your system . . . . . . . . . . . . . . . . . . 11Bootstrap statement not required . . . . . . . . . . . . . . . . . . 11Calls to UNIX commands and utilities. . . . . . . . . . . . . . . . . 11Message numbers . . . . . . . . . . . . . . . . . . . . . . . 12File modes . . . . . . . . . . . . . . . . . . . . . . . . . . 12EBCDIC versus ASCII . . . . . . . . . . . . . . . . . . . . . . 12Converting hex values to characters in the CGI input stream . . . . . . . 13Sort order differences . . . . . . . . . . . . . . . . . . . . . 14Characters versus code points . . . . . . . . . . . . . . . . . . 14Non-contiguous character ranges . . . . . . . . . . . . . . . . . 16Chapter 5. Perl command reference . . . . . . . . . . . . . . . . 17Synopsis . . . . . . . . . . . . . . . . . . . . . . . . . . . 17Description . . . . . . . . . . . . . . . . . . . . . . . . . . 17Options. . . . . . . . . . . . . . . . . . . . . . . . . . . . 17Chapter 6. Perl messages . . . . . . . . . . . . . . . . . . . . 19Chapter 7. Related Messages . . . . . . . . . . . . . . . . . . 219© Copyright IBM Corp. 2006 iii
  • 5. Appendix A. Code pages . . . . . . . . . . . . . . . . . . . . 221Appendix B. Accessibility . . . . . . . . . . . . . . . . . . . . 223Using assistive technologies . . . . . . . . . . . . . . . . . . . 223Keyboard navigation of the user interface. . . . . . . . . . . . . . . 223z/OS information . . . . . . . . . . . . . . . . . . . . . . . . 223Notices . . . . . . . . . . . . . . . . . . . . . . . . . . . 225Trademarks. . . . . . . . . . . . . . . . . . . . . . . . . . 226Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227iv z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 6. Tables© Copyright IBM Corp. 2006 v
  • 7. vi z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 8. About this documentThis document presents the information you need to set up and use IBM PortedTools for z/OS: Perl for z/OS Feature.Who should use this document?This document is for the system programmers who run a z/OS system with z/OSUNIX System Services (z/OS®UNIX®), and for their users who use IBM PortedTools for z/OS: Perl for z/OS Feature. On other open systems, some systemprogrammer tasks may be done by an administrator.This document assumes the readers are familiar with z/OS systems and with theinformation for z/OS and its accompanying products.Where to find more informationWhere necessary, this document references information in other documents aboutthe elements and features of z/OS. For complete titles and order numbers for allz/OS documents, see z/OS Information Roadmap.Direct your request for copies of any IBM publication to your IBM representative orto the IBM branch office serving your locality.There is also a toll-free customer support number (1-800-879-2755) availableMonday through Friday from 6:30 a.m. through 5:00 p.m. Mountain Time. You canuse this number to:v Order or inquire about IBM publicationsv Resolve any software manufacturing or delivery concernsv Activate the program reorder form to provide faster and more convenient orderingof software updatesSoftcopy publicationsThe z/OS library is available on the z/OS Collection Kit, SK2T-6700. This softcopycollection contains a set of z/OS and related unlicensed product documents. TheCD-ROM collection includes the IBM®Library Reader™, a program that enablescustomers to read the softcopy documents.Softcopy z/OS publications are available for web-browsing and PDF versions of thez/OS publications for viewing or printing using Adobe Acrobat Reader. Visit the z/OSlibrary at www.ibm.com/servers/eserver/zseries/zos/bkserv/.IBM Systems Center publicationsIBM Systems Centers produce Redbooks that can be helpful in setting up and usingz/OS. You can order these publications through normal channels, or you can viewthem with a Web browser. See the IBM Redbooks site at www.ibm.com/redbooks.These documents have not been subjected to any formal review nor have theybeen checked for technical accuracy, but they represent current productunderstanding (at the time of their publication) and provide valuable information ona wide range of z/OS topics. You must order them separately.© Copyright IBM Corp. 2006 vii
  • 9. Using LookAt to look up message explanationsLookAt is an online facility that lets you look up explanations for most of the IBMmessages you encounter, as well as for some system abends and codes. UsingLookAt to find information is faster than a conventional search because in mostcases LookAt goes directly to the message explanation.You can use LookAt from the following locations to find IBM message explanationsfor z/OS elements and features, z/VM®, VSE/ESA™, and Clusters for AIX®andLinux:v The Internet. You can access IBM message explanations directly from the LookAtWeb site at http://www.ibm.com/eserver/zseries/zos/bkserv/lookat/.v Your z/OS TSO/E host system. You can install code on your z/OS or z/OS.esystems to access IBM message explanations, using LookAt from a TSO/Ecommand line (for example, TSO/E prompt, ISPF, or z/OS UNIX SystemServices).v Your Microsoft®Windows®workstation. You can install code to access IBMmessage explanations on the z/OS Collection (SK3T-4269), using LookAt from aMicrosoft Windows command prompt (also known as the DOS command line).v Your wireless handheld device. You can use the LookAt Mobile Edition with ahandheld device that has wireless access and an Internet browser (for example,Internet Explorer for Pocket PCs, Blazer, or Eudora for Palm OS, or Opera forLinux handheld devices). Link to the LookAt Mobile Edition from the LookAt Website.You can obtain code to install LookAt on your host system or Microsoft Windowsworkstation from a disk on your z/OS Collection (SK3T-4269), or from the LookAtWeb site (click Download, and select the platform, release, collection, and locationthat suit your needs). More information is available in the LOOKAT.ME filesavailable during the download process.Using IBM Health Checker for z/OSIBM Health Checker for z/OS is a z/OS component that installations can use togather information about their system environment and system parameters to helpidentify potential configuration problems before they impact availability or causeoutages. Individual products, z/OS components, or ISV software can provide checksthat take advantage of the IBM Health Checker for z/OS framework. This book mayrefer to checks or messages associated with this component.For additional information about checks and about IBM Health Checker for z/OS,see IBM Health Checker for z/OS: User’s Guide. z/OS V1R4, V1R5, and V1R6users can obtain the IBM Health Checker for z/OS from the z/OS Downloads pageat http://www.ibm.com/servers/eserver/zseries/zos/downloads/.SDSF also provides functions to simplify the management of checks. See z/OSSDSF Operation and Customization for additional information.viii z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 10. Chapter 1. IntroductionPerl, which stands for Practical Extraction and Report Language, is a generalpurpose, open source scripting language. Its powerful text manipulation functionsallow file maintenance and automation of system administration. It is also popularfor CGI programming on the web owing to its inherent ability to process text. It ishighly adaptable and intended to be easy to use and efficient.IBM Ported Tools for z/OS: Perl for z/OS Feature (Perl for z/OS) is a ported versionof the open source application Perl (version 5.8.7) available from cpan.org. Perl forz/OS has been tested and packaged for use on z/OS.This document is designed specifically for users of the Perl for z/OS product, andassumes the user has working knowledge of Perl. For more information on the IBMPorted Tools for z/OS product, go to the following site: http://www.ibm.com/servers/eserver/zseries/zos/unix/port_tools.htmlFinding more informationInformation specific to the z/OS UNIX implementation of Perl can be found in thisdocument. For general information about the Perl language including links toadditional reference sources, refer to the CPAN (Comprehensive Perl ArchiveNetwork) website:http://cpan.orgThe official online souce for Perl core user documentation can be found on thePerldoc website:http://perldoc.perl.org/Note: IBM is not responsible for content or examples provided by non-IBM Websites or other non-IBM resources.There are also several mailing lists that may prove useful. One such mailing list isperl-mvs, which provides a forum for people who are using perl on MVS platforms.Note that this mailing list is not provided or maintained by IBM. To subscribe to thismailing list, or to check out other Perl mailing lists that might be of interest, go tothe following site:http://lists.cpan.org/And finally, there is the MVS-OE forum which provides general discussions on z/OSUNIX topics. Go here to subscribe:http://www-03.ibm.com/servers/eserver/zseries/zos/unix/bpxa1dis.htmlSupported utilitiesIn addition to the perl module, Perl for z/OS provides support for additional utilitiesthat are included with the Perl application. The following is a list of utilitiessupported, along with a description of each:a2p awk to Perl translator. a2p takes an awk script specified on the commandline (or from standard input) and produces a comparable perl script on thestandard output.© Copyright IBM Corp. 2006 1
  • 11. cppstdinThis utility invokes the C preprocessor on standard input and send theoutput to stdout. It is primarily used by other Configure units that ask aboutpreprocessor symbols.enc2xsThis utility builds a Perl extension for use by Encode from either UnicodeCharacter Mapping files (.ucm) or Tcl Encoding Files (.enc). Besides beingused internally during the build process of the Encode module, you can useenc2xs to add your own encoding to perl. No knowledge of XS isnecessary.find2perlThis utility acts as a translator used to convert find command lines toequivalent Perl code.h2ph This utility converts any C header files specified to the corresponding Perlheader file format.h2xs This utility reads the .h file for a C library and then creates a skeleton forthe .xs file (this is required to build a Perl module which links to the library).It also constructs a system of directories and makefiles in which to buildand test the Perl module.instmodshThis utility provides an interactive shell type interface to query details oflocally installed Perl modules.libnetcfgThis utility is used to configure the libnet. Starting from Perl 5.8, libnet ispart of the standard Perl distribution, but the libnetcfg can be used for anylibnet installation. Also, without arguments, libnetcfg displays the currentconfiguration.psed This utility is a stream editor which reads the input stream consisting ofspecified files. It then processes the stream by applying edit commandscontained in a script and finally writes the resulting lines to standard output.s2p This utility produces verbose warning diagnostics.splain This utility produces verbose warning diagnostics.xsubppThis utility is a compiler used to convert Perl XS code into C code.Restrictions and limitationsThe below restrictions and limitations apply to Perl for z/OS:v The following encodings are not supported on EBCDIC:– Chinese– Japanese– Taiwanese– Korean2 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 12. Chapter 2. Installing Perl for z/OSThis chapter should be read before installing Perl for z/OS. It consists of thefollowing sections which provide pre-installation planning information and additionalpost-installation steps.v Pre-installation Planning. This section will provide recommendations forfile-system allocation and help on locating and relocating or removing opensource versions of Perl that may reside on your system.v Post-installation setup. This section provides required and optionalpost-installation steps such as providing symbolic links to Perl for z/OS,Pre-installation planningThe following sections provide you with information that will be helpful in planning toinstall Perl for z/OS.File-System AllocationPerl for z/OS will installed into /usr/lpp/perl. The Program Directory for IBMPorted Tools for z/OS describes that an HFS file-system of 2400 tracks of 3390DASD is required. This is approximately 136 M bytes (assuming 15 tracks/cyl849,960 bytes/cylinder for a 3390 device).Perl for z/OS supports the ability to be expanded dynamically with user modules(non-IBM supported modules which provide additional functionality, see Chapter 3,“Installing user modules,” on page 9 for more information). This is a very popularapproach amongst Perl users and most system administrators will find themselvesasked to consider adding user modules. While user modules can be installedoutside of Perl’s installation directory, there are times when you may find itbeneficial to install it in Perl’s installation directory. Because the defaultrecommendation is to mount the /usr/lpp/ file-system as read-only, it isrecommended that a separate file-system for the installation of Perl be mounted at/usr/lpp/perl to facilitate the addition of user modules.Files and directory structurePerl for z/OS will be installed into the following directories and files as follows:/usr/lpp/perl/ Parent directory for Perl for z/OS/usr/lpp/perl/bin Executeable modules/usr/lpp/perl/bin/perl Perl executeable/usr/lpp/perl/lib Parent directory of libraries/usr/lpp/perl/lib/5.8.7 Parent directory of v 5.8.7 libraries/usr/lpp/perl/man Parent directory of man pageThe following symbolic links are not automatically created by the installationprocess but it is recommended that they be created during post installation. (See“Post-installation setup” on page 6 for more information on defining these links):/usr/bin/perl -> /usr/lpp/perl/bin/perl/usr/lib/libperl.so -> /usr/lpp/perl/lib/5.8.7/os390-thread-multi/CORE//usr/man/C/man1/hpeza200.book -> /usr/lpp/perl/man/C/man1/hpeza200.bookMigrating from open source versions of PerlBefore installing Perl for z/OS, you should check if a previous open source versionof Perl acquired from another source has already been installed. Currently, opensource versions of Perl (unsupported by IBM) which have been enabled for z/OS© Copyright IBM Corp. 2006 3
  • 13. UNIX are available from CPAN.org and also the Tools and Toys webpage on thez/OS UNIX System Services (z/OS UNIX) web site (www.ibm.com/servers/eserver/zseries/zos/unix/bpxa1toy.html). Because these versions are not supported, youmay wish to remove them. However, Perl for z/OS can co-exist with previousversions, so if you choose to retain them, you will need to make sure that thelocation of the previous perl module and perl utilities does not conflict.Although Perl for z/OS is functionally equivalent to other available versions of Perlat the same level or earlier, Perl itself has occasionally introduced changes betweenversions which are not compatible with previous versions and so your usercommunity may need access to the previous version until those version-relatedmigration issues are resolved. So, we recommend initially retaining any previousversions until your user community has transitioned to Perl for z/OSThe Perl application consists of both executeable modules and libraries. Theexecutable modules and libraries for Perl for z/OS will be installed into directories in/usr/lpp/perl/. This is a unique directory specific to Perl for z/OS and so during theinstallation into these directories there should be no risk of conflict with open sourceversions of Perl.The libraries for the open source versions of Perl are typically installed in/usr/lib/perl5/ or /usr/local/lib/perl5/ and as stated earlier, these will notconflict with the libraries for Perl for z/OS.It is customary, however, for the executable modules (the module perl and Perl’sutility programs) or links to them, to be located in /usr/bin/ and/or/usr/local/bin/ and sometimes /bin/. The Perl for z/OS installation processrecommends as an additional post-installation step that symbolic links to perl bedefined in one of these directories and this is the point at which a conflict with aprevious version may occur. So, if you have a previous version, you will need tomake sure to remove or rename these.Tips for finding previous versions of PerlAs stated in “Migrating from open source versions of Perl” on page 3, the onlyconflict during the installation of Perl for z/OS and an open source version of Perlmay be in the /usr/bin/ and/or /usr/local/bin/ directories where theexecuteables are typically installed. There should be no conflict with the installationof the libraries. So, this section will focus on providing tips for finding theexecuteables. Once the perl executeable is found, it can be used to determine thelocation of the libraries.v Use the whence command. If perl is located in a directory which is defined in$PATH, then the whence command will indicate which directory it is in. From theUNIX command line, enter: whence perlv Check common directories. Typically, the perl module, or a link to it, is installedin one or more of the following directories:/usr/bin/usr/local/bin/bin (although not typical)Do an ″ls -ld perl*″ in each of these directories.v Use the find command. The find command is the most thorough method as itperforms a search on all directories. However, it can take several minutes to runon systems with heavily populated file-systems. Also, to check all paths, it willmost likely need to be run from a superuser. You may wish to restrict the find tosystem directories such as /usr or /bin. Examples:4 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 14. find /usr -type f -name "perl*"find /bin -type f -name "perl*"If you run this command from a non-superuser, you may wish to redirect all errormessages for directories you do not have access to to /dev/null. To do so, add″ 2> /dev/null″ to the end of the above find commands.v Use the perl -V command to find libraries. If you have located the perlmodule, you can use the -V option to identify the location of the libraries used bythat version of perl:perl -VAt the end of the output, you will find the location of the libraries. For example:@INC:/usr/local/lib/perl5/s390/5.00403/usr/local/lib/perl5/usr/local/lib/perl5/site_perl/s390/usr/local/lib/perl5/site_perl.Removing or relocating previous versions of PerlIf you have determined that you have a previous version of Perl, you need todetermine whether you should remove it or relocate it. We recommend that initiallyyou relocate previous versions-- rather than remove them-- until you are satisfiedthat your user community has no dependencies on it.Some other considerations:v Perl executables from previous versions which have been installed in thecommon locations should be relocated or removed to avoid conflict withexecutables provided with Perl for z/OS. The complete list of these potentialmodules follows (however, not all of these are supported in Perl for z/OS):perl perl5.8.*a2p find2perl pl2pm podchecker splainc2ph h2ph perlbug pod2html podselect xsubppcpan h2xs perlcc pod2latex provecppstdin instmodsh perldoc pod2man pseddprofpp libnetcfg perlivp pod2text pstructenc2xs perl piconv pod2usage s2pv The location of the Perl for z/OS libraries will be different from the directories ofthe open source versions, so there is not a requirement to relocate the opensource version of the libraries to install Perl for z/OS. However, if the previousversions are left installed in the customary locations, users not aware of the pathof the libraries for Perl for z/OS may mistake those open source libraries for thesupported libraries.v The location of the libraries is hard-coded into the executables, so if the librariesare moved, the previous executables will not work unless the user defines thepath to the libraries using the PERL5LIB environment variable. For example,presuming /usr/bin/oldperl is the new location of the Perl libraries:export PERL5LIB=/usr/bin/oldperlAnalyze existing perl scriptsIf you have an open source version of Perl installed, then most likely there are Perluser’s scripts on your system as well. While Perl does not guarantee that it isupwardly compatible, it is rare to encounter problems due to this. So, there is a highlikelihood that existing scripts will work fine with Perl for z/OS without modification.If you have Perl applications that are critical to your mission, however, you maywish to test them against Perl for z/OS before making Perl for z/OS the defaultChapter 2. Installing Perl for z/OS 5
  • 15. version of Perl on your system. This can be done by installing Perl for z/OS but notcreating the symbolic links in the standard directories such as /usr/bin. This way,you can continue to use the previous version while directing specific test scripts tothe new Perl for z/OS perl installed as /usr/lpp/perl/bin/perl.Perl Script Analysis Tool. The Perl Script Analysis Tool (psat.pl) is a scriptavailable for download from the http://www.ibm.com/servers/eserver/zseries/zos/unix/perl/index.html. This is a tool that can be run against one or more scripts andwhich will generate a report of error messages and warnings for any knownproblems. This is an evolving tool which will be regularly updated as and shouldnew potential pitfalls with existing scripts become known. You may wish to use thistool to perform a preliminary screening of existing Perl scripts before cutting over toPerl for z/OSPost-installation setupThis section describes the required and recommended post-installation steps.Add references to libperl.soThis step is required.. Perl for z/OS is a DLL (dynamic link library) application. Itrequires that the directory path of the primary DLL libperl.so be defined in theLIBPATH environment variable. (libperl.so is located in /usr/lpp/perl/lib/5.8.7/os390-thread-multi/CORE/).If not defined, when perl is executed, the user will see the following error:CEE3501S The module libperl.so was not found.The traceback information could not be determined.and a CEEDUMP file may be created.There are severals ways that LIBPATH can be updated and several places whereLIBPATH should be updated. The following sections describe these methods andplaces.Update LIBPATH environmentThere are three approaches to adding libperl.so to the LIBPATH environmentvariable which are summarized as follows and descibed in more detail below:1. (recommended) to create a symbolic link to libperl.so in a directory which isalready defined in the system default for LIBPATH;2. to add the directory containing libperl.so to the system default setting ofLIBPATH;3. to require the user to add the directory containing libperl.so to their LIBPATH.Create symbolic link to libperl.so in default LIBPATH. Unless your installationhas changed or removed it, the default system profile (/etc/profile which istypically based on /samples/profile) will include the directory /usr/lib. Forexample, in /etc/profile you might see:LIBPATH=/lib:/usr/lib:.export LIBPATHPresuming so, we recommend that you create a symbolic link to libperl.so in/usr/lib using the following shell commands (superuser authority will most likely berequired):cd /usr/libln -s /usr/lpp/perl/lib/5.8.7/os390-thread-multi/CORE/libperl.so libperl.so6 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 16. Add directory of libperl.so to default LIBPATH. An alternative to creating asymbolic link in /usr/lib is to add the directory containing libperl.so to the defaultLIBPATH. (This is not the preferred solution as it adds a directory to every user’sLIBPATH which is not needed by every user). To implement this approach, edit the/etc/profile file and add the directory to the existing LIBPATH definition. Forexample, change it to:LIBPATH=/lib:/usr/lib:/usr/lpp/perl/lib/5.8.7/os390-thread-multi/CORE:.export LIBPATHRequire user to add the libperl.so directory to their LIBPATH. This is the leastrecommended approach as it requires that the user know to do this before runningperl. This can be done by the user in two ways. The first would be to add theLIBPATH definition to their .profile in the same manner as shown for updating/etc/profile. The second approach would be to set it from the command line priorto executing perl or by preceeding the perl command or script with the modificationas shown in the following example:LIBPATH="/usr/lpp/perl/lib/5.8.7/os390-thread-multi/CORE:$LIBPATH" perl hello.plThis will cause LIBPATH to be changed only for the duration of the perl command.Update Webserver ConfigurationIn order to run Perl scripts through the IBM Http Server, the directory containinglibperl.so needs to be added to the LIBPATH variable defined in httpd.envvars(which is typically found in the directory /usr/lpp/internet/etc). For example:LIBPATH=/usr/lpp/internet/bin:/usr/lpp/internet/sbin:/usr/lpp/ldap/lib:/usr/lpp/perl/lib/5.8.7/os390-thread-multi/COREor if a link was created in /usr/lib to libperl.so as described earlier:LIBPATH=/usr/lpp/internet/bin:/usr/lpp/internet/sbin:/usr/lpp/ldap/lib:/usr/libUpdate cron jobsNote: If you have determined that there is not an open source version of Perlalready installed on your system, then this step can be skipped as there willbe not Perl scripts that are being run.cron is a unix utility which allows programs to be scheduled and automatically runat preset times or intervals. crontab is the utility used to schedule these programs.Because LIBPATH is not an environment variable that is automatically set when aprogram is run under cron, any scheduled jobs that invoke perl need to have theLIBPATH variable prepended to the command. For example, if the command ismyperlscript.pl, change it to:LIBPATH=/usr/lpp/perl/lib/5.8.7/os390-thread-multi/CORE myperlscript.plThe programs that have been scheduled to run under cron can be found in thedirectory /usr/spool/cron/crontabs. Each file in this directory has a name which isthe same as the user who scheduled the jobs and contains the jobs which theyhave scheduled. To find any perl programs which may be invoked, the grep utilitycan be used. grep is a command which will search a file or files for a specifiedstring. A Perl program can be invoked by passing a perl script to perl as anargument (ex: perl myperlscript.pl) or by defining perl on the shbang statementon the first line of a script (ex: #!/usr/bin/perl). It is customary to name Perlprograms with an extension of ″.pl″ or ″.cgi″, however, this is not a requirement, sothere is no full-proof way to find all perl programs, however the following grepcommands (when run by a superuser) will reveal most:Chapter 2. Installing Perl for z/OS 7
  • 17. cd /usr/spool/cron/crontabsgrep -l perl *grep -l ".pl"grep -l ".cgi"Should these commands reveal Perl programs, the crontab -u user command canbe used to modify these files. However, it may be best to contact the owners andhave them update their own crontab files as they will be most familiar with thesecommands.Add symbolic link for man pageThis step is not required, however, it is recommended to increase usabilityand minimize problems.The Perl for z/OS man page file is hpeza200.book and is located in the directory/usr/lpp/perl/man/C/man1/. In order to easily view this with simply the commandman perl, the directory /usr/lpp/perl/man/C (without the ″/man1/″) needs to beadded to the default MANPATH environment variable defined in /etc/profile.Alternately, the recommended approach is to create a symbolic link tohpeza200.book in the /usr/man/C/man1/ directory which is typically defined as thedefault path of MANPATH in /etc/profile. To do this:cd /usr/man/C/man1ln -s /usr/lpp/perl/man/C/man1/hpeza200.book hpeza200.bookAdd symbolic link to perl in /usr/binThis step is not required, however, it is recommended to increase usabilityand minimize problems.Perl is typically installed into /usr/bin (and sometimes also /usr/local/bin or /binalthough these are less often done). Most perl scripts are not invoked by passingthem as an argument to perl (as in: perl myperlscript.pl), but by defining perl asthe interpreter on the shbang statement (ex: #!/usr/bin/perl. Because Perl forz/OS is installed as /usr/lpp/perl/bin/perl, in order for these scripts to run, theshbang statements would need to be changed. So, it is recommended thatminimally a symbolic link for perl be created in /usr/bin which points to/usr/lpp/perl/bin/perl. For example:cd /usr/binln -s /usr/lpp/perl/bin/perl perlYou may also wish to create a symbolic link in /usr/local/bin which is less typicalthan /usr/bin although reasonably common. We do not recommend you create alink in /bin although that can be found on some systems.8 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 18. Chapter 3. Installing user modulesThis section provides instructions on how to install user modules for your perlapplication. User modules are a self-contained piece of Perl code that can be usedby a Perl program or by other Perl modules. It is conceptually similar to a C linklibrary, or a C++ class. They are typically written by users of Perl to enhance thefunctionality of Perl and are made available to the Perl user community throughrepositories such ashttp://cpan.org.Note: The process for adding user modules to the Perl for z/OS installation issupported by IBM, however, the user modules are not supported by IBM.Should you experience problems testing or running a user module, pleasecontact the author of that module as IBM will not be able to provide servicefor it. Additionally, you may want to share your question with other Perl forz/OS users by posting your question to the perl-mvs mailing list which canbe found at http://lists.cpan.org/.Before you BeginInsure you have the necessary accessThe default process for installing user modules is to install them into Perl’sinstallation directories. On most systems, this file-system will be mounted read-onlyand will require super-user or special authority.If you do not have this access, you can install to a local directory that you control,however, additional steps will be required to perform the initial installation and alsolater to access the module from your Perl program.Acquire required utilitiesThe installation process for most all user modules will require the use of the gzipand gmake utilities. These are not utilities provided with z/OS UNIX or supported byIBM. However, very usable versions can be downloaded from the IBM Tools andToys Web site, which is a repository of helpful applications for z/OS UNIX which arenot currently supported by IBM. These versions of gzip and gmake are not the latestversion available, however, there have been no reports of users experiencingproblems with them. For those who wish to have the latest and greatest versions ofgzip and gmake, the open source code is available from http://gzip.org andhttp://www.gnu.org/software/make.Note that while there are some similiarities between the z/OS UNIX make utility andgmake, there are enough differences that Perl user modules do not always buildcorrectly when using the z/OS UNIX make. So, it is recommended that gmake alwaysbe used to build user modules.Install prerequisite modulesSome modules require that prerequisite modules be installed first. Review theINSTALL, README, or similar help file provided in the module package to determinethis.© Copyright IBM Corp. 2006 9
  • 19. Steps for installing user modulesThis section describes the typical steps required to install most user modules.Occassionally, some modules will use a modified process which should bedescribed in an INSTALL, README, or similar help file provided in the modulepackage.1. Acquire the user module package (typically a ″tar.gz″ file-- a tar file whichhas been compressed with gzip). When transferring this file to your z/OS UNIXsystem, to prevent corruption of the file, be sure to use binary mode (alsoknown as image mode in some file transfer applications) as opposed to ″text″or ″ascii″ mode.2. Extract the files from the package. Most all packages will be designed sothat the extracted files are installed into a sub-directory (in the current directory)of the same name as the package. The file must first be uncompressed usinggzip. For example:gzip -d module-2.0.tar.gzThis will produce the tar file module-2.0.tar. The module file should next beextracted, or unwound, using the pax utility. (tar does not perform automaticcodepage translation and has a few other traits that make it the less desiredapplication for this). For example:pax -rvf module-2.0.tar -o to=IBM-1047This will extract the files and also convert them from the ASCII code page(ISO8849-1) to the EBCDIC code page (IBM-1047) at the same time.You can perform the gzip and pax commands in one step by piping the outputfrom gzip to pax as shown in the following example:gzip -cd module-2.0.tar.gz | pax -rv -oto=IBM-1047Note that if the package contains non-text files such as graphic files (jpg, gif,etc), they should be extracted in a second pass without the -o to=IBM-1047.For example:pax -rvf module-2.0.tar *.jpg3. Set up the environment. Define the following environment variables:export _C89_CCMODE=1export LIBPATH="$LIBPATH:/usr/lpp/perl/lib/5.8.7/os390-thread-multi/CORE"4. Build the module.cd module-2.0perl Makefile.PLgmake5. Test the module.gmake test6. Install the module.gmake install7. You are done. The module is now installed and ready for use.10 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 20. Chapter 4. Considerations for porting or writing Perl scriptsThe purpose of this chapter is to familiarize you with those aspects of Perl whichmay differ on z/OS UNIX as compared with other platforms. While every effort hasbeen made to ensure that the behavior of Perl for z/OS is consistent with Perl onother platforms, each platform has its unique characteristics that can affect how Perloperates. When writing a new Perl script, particularly one that might be used onother platforms, or when porting a Perl script from another platform to z/OS UNIX,you should keep in mind the issues discussed in this chapter.The following topics are discussed:v “The path of perl on your system”v “Bootstrap statement not required”v “Calls to UNIX commands and utilities”v “Message numbers” on page 12v “File modes” on page 12v “EBCDIC versus ASCII” on page 12The path of perl on your systemIt is standard practice to define the location of perl on the first line of a perl script.For example:#!/usr/bin/perlThe default installation path of the perl module is /usr/lpp/perl/bin/perl,however, it is recommended as a post-installation step that /usr/bin/perl becreated as a symbolic link to /usr/lpp/perl/bin/perl so that no changes arerequired to your perl scripts.Your system administrator may have purposely or accidentally overlooked creatingthis link, so if your perl script fails, verify that the location of perl on your sytemmatches that defined in your script.Bootstrap statement not requiredPrior to os/390 V2R8, the shell did not support the shbang ( ″#!...″, ″pound bang″,or ″Magic Number″), so the ″#!/usr/bin/perl″ statement was not recognized. Inorder to get perl scripts to run, you had to insert the following statement at thebeginning of the script:eval ’exec /usr/bin/perl -S $0 ${1+"$@"}’if 0;If you have these in your scripts, they should be removed and the proper shbangstatement used. If you leave them in, your scripts will still work fine (presumingyou’ve installed perl in the same location), but they will probably causeunneccessary confusion to new developers and also drag performance down a bit.Calls to UNIX commands and utilitiesWhen porting scripts from other platforms that contain calls to UNIX systemcommands or utilities, be aware that the syntax or behavior of these commandsmay vary. Two examples to illustrate this:© Copyright IBM Corp. 2006 11
  • 21. v The sort utility (not to be confused with the perl sort() function although thisissue applies to it as well), can sort data in a different order depending on theplatform. For more details, refer to “Sort order differences” on page 14.v The date command, while a standard utility on UNIX systems, may vary fromplatform to platform and an option supported by date on other platforms may notbe supported on z/OS UNIX, or vice-versa. The following examples show datecommands that would not execute on other platforms:z/OS: date -clinux: date -d "12/31/03 23:59" "+%s"FreeBSD: date "-j -f "%Y%m%d_%H:%M" 20031231_23:59 "+%s"Message numbersTo enhance serviceability, IBM assigns a unique message number to each warningand error message generated by Perl. These message numbers are of the formHPE2xxxx where xxxx is a unique four digit number.If your script or process needs to compare these messages against an expectedmessage, the presence of the message number can cause the message to notmatch. For this reason, message numbering can be disabled by setting the_PERL_NOMSGID environment variable to 1 prior to running the script. For example:export _PERL_NOMSGID=1File modesThe numeric value of file modes on z/OS UNIX differ from those in standard UNIX.The following example shows the difference between standard and z/OS UNIXusing Tie with read only mode:Standard UNIXtie(@a, "Tie::File", $file, mode =>0, recsep => $RECSEP)z/OS UNIXtie(@a, "Tie::File", $file, mode =>2, recsep => $RECSEP)ortie(@a, "Tie::File", $file, mode =>O_RDONLY, recsep => $RECSEP)Note: mode=>0 is for O_RDONLY on standard UNIX, but on z/OS UNIX it ismode=>2To prevent this from occurring, it is recommended that you use macros instead ofnumeric values for mode. The macros are listed below:v O_RDONLYv O_RDWRv O_WRONLYEBCDIC versus ASCIIEBCDIC, which stands for Extended Binary-Coded-Decimal Interchange Code, isthe code set used on z/OS UNIX. By contrast, ASCII is the dominant code set onalmost all other platforms. Scripts written for ASCII platforms without an awarenessof code set independent coding practices, can run incorrectly on z/OS UNIX. Thefollowing sections discuss some of these issues.It can be helpful to visualize the difference between the code pages and sographical representations of the EBCDIC (IBM-1047) and ASCII (ISO8859-1) codepages have been provided in Appendix A, “Code pages,” on page 221.12 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 22. For a general overview of character sets and code pages, refer to NationalLanguage Support Reference Manual, Volume 2, SE09-8002. For additionalinformation on running Perl in EBCDIC platforms, see "Considerations for runningPerl on EBCDIC platforms" in http://perldoc.perl.org/perlebcdic.htmlConverting hex values to characters in the CGI input streamA very common code phrase in Perl CGI scripts is the following:$value =~ s/%([a-fA-F0-9]{2})/pack(’C’,chr(hex($1)))/ge;A very similar variant of this which is sometimes seen with an early unofficial port ofPerl to OS/390 was (note the ’E’ versus ’C’ in the above):$value =~ s/%([a-fA-F0-9]{2})/pack(’E’,chr(hex($1)))/ge;Neither will (or should) work with Perl for z/OS and will need to be replaced withstatements shown later in this section.The intent of both of these statements is to convert characters which arerepresented in hex in the CGI data stream into the equivalent characters on thelocal platform. For example, consider the following URL:http://myurl.com/cgi-bin/display.pl?page=this is a testTo insure that the spaces are properly enterpreted as part of the value of page, theyare translated into the characters ″%20″. 0x20 is the hexidecimal value of the codepoint for a space in the ASCII code page. The resulting data passed to thedisplay.pl script is:id=this%20is%20a%20testIn order to be interpreted correctly, these hex characters need to be translated backinto their character representations. The first statement shown above is a verycommon code phrase used to do this.The problem with the above first statement is that it converts 0x20 to the EBCDICcharacter which corresponds to 0x20 which is not a space. The problem with theabove second statement is that the ’E’ option which returns the correct EBCDICcharacter, however, it is not supported by Perl.For this translation code to work correctly, it needs to be replaced with one of thefollowing:method 1:$value =~ s/%([a-fA-F0-9]{2})/chr(utf8::unicode_to_native(hex($1)))/ge;ormethod 2:$value =~ s/%([a-fA-F0-9]{2})/pack(’U’, hex($1))/ge;The difference between these two is that in the method 2, the UTF8-flag for thevariable is set on. This should not be an issue for most users, however, if you arenot certain, use method 1. Note that the utf8::unicode_to_native andutf8::native_to_unicode functions are undocumented but supported.Chapter 4. Considerations for porting or writing Perl scripts 13
  • 23. Sort order differencesThe default sort order differs between EBCDIC and ASCII platforms. When usingthe Perl sort() function, or calling the unix sort utility, you should be aware of thesedifferences.The following table demonstrates how the sort order varies. The ″Orig″ columnshow a random order of characters. The following columns show the different sortorders generated by the Perl sort() function and the unix sort utility on the z/OSUNIX and Linux platforms:---- ------------ ------------z/OS LinuxOrig sort() sort sort() sort---- ------ ---- ------ ----=A : 0 0 =0 = 9 9 :Z a : : 0: z = = 9A A A az Z Z Z A9 0 a a za 9 z z ZCharacters versus code pointsOne of the most common problems when porting scripts from other platforms toz/OS is caused by the technique of referring to characters using their codepoint(ordinal) value rather than their symbolic value. For example, consider the followingcode:$x=ord(’A’);if ($x == 0x41){ print "x is ’A’ n"; }else{ print "x is not ’A’ n"; }The if statement would only be true on an ASCII platform where the ordinal value ofthe character A is 0x41. If this code were run on z/OS UNIX, it would print x is not’A’ because the ordinal value of ’A’ on an EBCDIC codepage is 0xC1.Newline (″n″)The ordinal value of the newline (″n″) character is different between EBCDIC andASCII. So, the symbolic representation of this character should always be usedrather than the ordinal values. The following are incorrect and correct examples:print "Hello World 012"; # incorrectprint "Hello World n"; # correctThe following table shows the ordinal values of the newline and carriage returncharacters on EBCDIC and ASCII:Dec Octal HexEBCDIC 21 025 0x15ASCII 10 012 0xANewlines with IPC (Socket related functions)A common misconception in socket programming is that n eq 012 everywhere.When using protocols such as common Internet protocols, 012 and 015 are calledfor specifically, and the values of the logical n and r (carriage return) are notreliable. The following is an example:print SOCKET "Hi there, client!rn"; # Incorrectprint SOCKET "Hi there, client!015012"; # Correct14 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 24. However, using 015012 (or cMcJ, or x0Dx0A) can be tedious and unsightly, aswell as confusing to those maintaining the code. As such, the Socket modulesupplies a more convenient and user friendly method.use Socket qw(:DEFAULT :crlf);print SOCKET "Hi there, client!$CRLF" # CorrectWhen reading from a socket, remember that the default input record separator $/ isn , but robust socket code will recognize it as either 012 or 015012, which is endof line:while (<SOCKET>) {# ...}Because both CRLF and LF end in LF, the input record separator can be set to LF,and any CR stripped later. It is more effective to write it as follows:use Socket qw(:DEFAULT :crlf);local($/) = LF; # not needed if $/ is already 012while (<SOCKET>) {s/$CR?$LF/n/; # not sure if socket uses LF or CRLF, OK# s/015?012/n/; # same thing}This example is preferred over the previous one, even for UNIX platforms, becausenow any 015’s (cM’s) are stripped out.Similarly, functions that return text data, such as a function that fetches a Webpage, should translate newlines before returning the data, especially if they havenot yet been translated to the local newline representation. A single line of code willoften suffice:$data =~ s/015?012/n/g;return $data;For further reference, visit Writing portable Perl.pack and unpack functionsWhen using the pack and unpack functions, keep in mind that the length value istaken from the character code point. Because of this, the behavior of thesefunctions will differ when used on an EBCDIC platform as compared to an ASCII orother character set platform.The following is an example code fragment containing the unpack function:my $b = "Xt01234567n" x 100;my @a = unpack("(a1 c/a)*", $b);In the above code fragment, the unpack function is attempting to unpack $b into anarray with a resulting size of 200 with each value alternating between ″X″ and″01234567n″; for example, ($a[0] = ″X″; $a[1] = ″01234567n″;), where a1 refers tothe X value (a one character long string item) and c/a refers to ″01234567n″.However, this does not occur as expected on the EBCDIC system. The reason is inhow ″″ works in the unpack function. The value before the ″″ is the length-itemand the value after is the string-item. The length-item dictates the number ofstring-items to retrieve. In this case, the length-item is ″t″ (tab) which on an ASCIIsystem has the ordinal value of 9, indicating that a nine character long string itemshould to be retrieved next. (The ()* part indicates that this should be donerepetitively until the end of $b is encountered.) However, on the EBCDIC system,the ordinal value for t may not be 9. On some EBCDIC systems it is 5. Because ofChapter 4. Considerations for porting or writing Perl scripts 15
  • 25. this discrepancy in code points, the results of running the pack and unpackfunctions will differ if you are running in on EBCDIC platform as compared to anASCII or other platform. Because the z/OS environment is EBCDIC, you will needto be aware of this when using the pack and unpack functions in this environment.Non-contiguous character rangesEBCDIC does not have the alphabet in a contiguous manner - there are gaps. Forexample, the character ’>>’ that lies between ’i’ and ’j’ will not be translated by thetr/i-j/X. This works in the other direction too, if either of the range endpoints isnumeric, tr/x89-x91/X will translate x8b, even though ’x89’ is ’i’ and ’x91’ is ’j’and ’x8b’ are gapped characters from the alphabetic viewpoint. Thus, knowledge ofthese gapped characters on the z/OS platform is required to write scripts.16 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 26. Chapter 5. Perl command referenceSynopsisperl [switches] [--] [programfile] [arguments]DescriptionPerl, which stands for Practical Extraction and Report Language, is a generalpurpose, open source scripting language. Its powerful text-manipulation functionsallow file maintenance and automation of system administration. It is also popularfor CGI programming on the web owing to its inherent ability to process text. It ishighly adaptable and intended to be easy to use and efficient.For more information about Perl including links to additional reference sources, referto the CPAN (Comprehensive Perl Archive Network) Web site:http://cpan.orgOptionsPerl accepts the following command line switches:-0[octal]This option specifies the record separator as an octal (0 if no octal ispresent).-a This option turns on autosplit mode when used with -n or -p . It splits $_into the @F array, and inserts it as the first command inside the while loopcreated by -n or -p.-C[number/list]This option enables the listed Unicode features.-c This option specifies "check syntax only mode" (runs BEGIN and CHECKblocks).-d[:debugger]This option specifies the program to run with the debugger.-D[number/list]This option specifies debugging flags (argument is a bit mask or alphabetcharacters).-e programThis option enables a single line of the program to be entered (multiple -esare allowed, omit programfile).-F/pattern/This option specifies a pattern to split() on if the -a switch is also in effect.(//’s are optional).-i[extension]This option specifies that files processed by <> are to be edited in place. Itwill create a backup of the old file if an extension is supplied, by adding theextension to the name of the old file.-IdirectoryThis option specifies that the directory following -I are to be prefixed to@INC/#include (several -I’s are allowed).© Copyright IBM Corp. 2006 17
  • 27. -l[octal]This option enables line ending processing.-[mM][-]moduleThis option executes usemodule before executing the program. If the firstcharacter after the -M or -m is a minus (-), then the use is replaced withno.-n This option creates a ’while (<>) { ... }’ loop around the program.-p This option creates a ’while (<>) { ... }’ loop around the program, and alsoprints out each line of the loop iteration.-P This option specifies the program to be run through the C preprocessorbefore compilation by perl.-s This option enables rudimentary parsing for switches on the command lineafter the program name but before any filename arguments or the -- switchterminator.-S This option specifies that perl use the PATH environment variable to searchfor the program (unless the name of the program starts with a slash).-t This option specifies "taint" warnings to be turned on.-T This option specifies "taint" checks to be turned on.-u This option specifies perl to dump core after parsing the program.-U This option enables perl to perform unsafe operations.-v This option prints the version and patch level of the Perl program.-V[:variable]This option prints a summary of the major Perl configuration values (or asingle Config.pm variable).-W This option enables all warnings.-X This option disables all warnings.Perl18 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 28. Chapter 6. Perl messagesHPE20001 Ambiguous range in transliterationoperatorExplanation: You wrote something like tr/a-z-0//,which doesn’t mean anything. To include a - characterin a transliteration, put it either first or last. (In the past,tr/a-z-0// was synonymous with tr/a-y//, which wasprobably not what you would have expected.)Example: HPE20001 Ambiguous range intransliteration operatorSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Look at the place where thetransliterate operator is used in the regular expressionand check the syntax.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20002 arg argument is not a HASH or ARRAYelementExplanation: The argument to exists() must be a hashor array element, such as:$foo{$bar}$ref->{"susie"}In the message text:argargumentExample: HPE20002 foo argument is not a HASH orARRAY elementSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Go to the line number shown in theerror message and make sure that the argument toexists() is a hash or array element.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20003 delete argument is not a HASH orARRAY element or sliceExplanation: The argument to delete() must be eithera hash or array element, such as$foo{$bar}$ref->{"susie"}Example: HPE20003 delete argument is not a HASHor ARRAY element or sliceSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Go to the line number shown in theerror message and check to make sure that theargument to delete() is a hash or array element.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20004 exists argument is not a subroutinenameExplanation: The exists() function expects a functionname as argument, not the function call. exists &sub()will generate this error.Example: HPE20004 exists argument is not asubroutine nameSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Go to the line number shown in theerror message and check whether the exists function© Copyright IBM Corp. 2006 19
  • 29. argument is a function name and not the function call.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20005 ’!’ allowed only after types types infunctionExplanation: The ’!’ is allowed in pack() or unpack()only after certain types. See perlfunc/pack.In the message text:typesList of types, usually: ″sSiIlLxX″functionThe function name ″pack″ or ″unpack″Example: HPE20005 ’!’ allowed only after typessSiIlLxX in packSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that you are not using ’!’other than sSiIlLxX characters in the template section ofthe pack or unpack function.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20006 Attempt to string1 string2 a restrictedhashExplanation: The failing code tried to get or set a keythat is not in the current set of allowed keys of arestricted hash.In the message text:string1string Example: access disallowedstring2string Example Key ’name of key’Example: HPE20006 Attempt to access disallowedkey ’maths’ in a restricted hashSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check whether the key name you areusing is correct. Is it a key of the hash you are using?System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20007 Attempt to delete readonly key ’string’from a restricted hashExplanation: The failing code attempted to delete akey whose value has been declared read-only from arestricted hash.In the message text:stringstring LockedExample: HPE20007 Attempt to delete read-only key’sub’ from a restricted hashSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that you are not trying todelete the hash element whose value has beendeclared read-only.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.20 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 30. HPE20008 Args must match #! lineExplanation: The setuid emulator requires that thearguments used to invoke perl match the argumentsspecified on the #! line.Example: HPE20008 Args must match #! lineSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Because some systems impose aone-argument limit on the #! line, try combiningswitches. For example, change w -U to -wU.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20009 Arg too short for msgsndExplanation: msgsnd() requires a string whose lengthis greater than or equal to sizeof(long).Example: HPE20009 Arg too short for msgsndSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check the size of the argument sentto the msgsnd() function.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20010 Assignment to both a list and a scalarExplanation: If you assign to a conditional operator,the second and third arguments must either both bescalars or both be lists. Otherwise, Perl won’t knowwhich context to supply to the right side.Example: HPE20010 Assignment to both a list and ascalarSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Go to the line number displayed inthe error message and determine whether the secondand third arguments of the conditional operator shouldbe either scalar or list.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20011 ’|’ and ’>’ may not both be specified oncommand lineExplanation: Perl does its own command lineredirection and found that STDIN was a pipe, and thatan attempt was made to redirect STDIN using ’<’. Youcan use only one STDIN stream at a time.Example: HPE20011 ’|’ and ’>’ may not both bespecified on command lineSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use | and > together whenyou are running a Perl script in a VMS system.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20012 Bad arg length for function, is num,should be numExplanation: You passed a buffer of the wrong size toone of msgctl(), semctl() or shmctl().In the message text:Chapter 6. Perl messages 21
  • 31. functionfunction name Example: ″Socket::inet_ntoa″.numA number.Example: HPE20012 Bad arg length forSocket::inet_ntoa, is 4, should be 6System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: The arg length for the function youhave used in the script is not correct. Correct it asshown in the error. For ExampleBad arg length for Socket::inet_ntoa, is 4, should be 6Here inet_ntoa take arg length as 6 but 4 has beenpassed which is wrong.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20013 Bad arg length for function, length isnum, should be numExplanation: You passed a buffer of the wrong size toone of msgctl(), semctl() or shmctl().In the message text:functionfunction name Example: ″Socket::inet_ntoa″.numA number.Example: HPE20013 Bad arg length forSocket::inet_ntoa, length is 4, should be 6System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: The arg length for the function youhave used in the script is not correct. Correct it asshown in the error. For ExampleBad arg length for Socket::inet_ntoa, is 4, should be 6Here inet_ntoa take arg length as 6 but 4 has beenpassed which is wrong.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20014 Bad arg length for function, length isnum, should be at least numExplanation: You passed a buffer that was the wrongsize.In the message text:functionfunction name Example: ″Socket::inet_ntoa″.numA number.Example: HPE20014 Bad arg length forSocket::inet_ntoa length is 4, should be at least 6System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Correct the buffer size.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20015 Attempt to bless into a referenceExplanation: The CLASSNAME argument to thebless() operator is expected to be the name of thepackage to bless the resulting object into.Example: HPE20015 Attempt to bless into a referenceSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: A reference was supplied, as in thefollowing example:bless $self, $proto;22 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 32. Instead, do the following to avoid blessing into thereference:bless $self, ref($proto) "" $proto;System programmer response: No SystemProgrammer response is required.Problem determination: If you want to bless into thestringified version of the reference supplied, you need tostringify it yourself, as in the following example:bless $self, "$proto";Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20016 Bad evalled substitution patternExplanation: You’ve used the /e switch to evaluatethe replacement for a substitution, but perl found asyntax error in the code to evaluate.Example: HPE20016 Bad evalled substitution patternSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check the syntax for an unexpectedright brace (}) and correct it.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20017 Bad filehandle: filehandleExplanation: A symbol was passed to something (filehandling function) wanting a filehandle, but the symboldid not have a filehandle associated with it.In the message text:filehandlefilehandleExample: HPE20017 Bad filehandle: FHSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check to make sure open() is beingcalled. Also, make sure the function call is made incorrect package.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20018 Bad index while coercing array intohashExplanation: The index looked up in the hash foundas the 0’th element of a pseudo-hash is not legal.Example: HPE20018 Bad index while coercing arrayinto hashSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Index values must be at 1 or greater.See perlref.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20019 BEGIN failed--compilation abortedExplanation: An untrapped exception was raised whilea BEGIN subroutine was being executed. Compilationstops immediately and the interpreter is exited.Example: HPE20019 BEGIN failed--compilationabortedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.Chapter 6. Perl messages 23
  • 33. User response: Correct any errors in the the BEGINblock.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20020 Callback called exitExplanation: A subroutine invoked from an externalpackage via call_sv() exited by calling exit.Example: HPE20020 Callback called exitSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check whether call_sv() is exited bycalling exit, before calling call_sv().System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20021 Cannot compress integer in packExplanation: An argument to pack(″w″,...) was toolarge to compress. The BER compressed integer formatcan only be used with positive integers, and youattempted to compress Infinity or a very large number(> 1e308). See perlfunc/pack.Example: HPE20021 Cannot compress integer inpackSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: If you want to compress the integer, itshould either be a positive integer or it should be lessthan 1e308.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20022 Cannot compress negative numbers inpackExplanation: An argument to pack(″w″,...) wasnegative. The BER compressed integer format can onlybe used with positive integers.Example: HPE20022 Cannot compress negativenumbers in packSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Before you can compress the integer,it should either be a positive integer or it should be lessthan 1e308.System programmer response: No SystemProgrammer response is required.Problem determination: For more information, seeperlfunc/pack.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20023 Can only compress unsigned integersin packExplanation: An argument to pack(″w″,...) was not aninteger. The BER compressed integer format can onlybe used with positive integers, but something else wascompressed. See perlfunc/pack.Example: HPE20023 Can only compress unsignedintegers in packSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check the argument passed for pack.If the template that was used is w, then it should havean unsigned integer as the argument.24 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 34. System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20024 Can’t bless non-reference valueExplanation: Only hard references can be blessed.This is how Perl ″enforces″ encapsulation of objects.Example: HPE20024 Can’t bless non-reference valueSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check if you are trying to bless anon-reference value. This is not allowed.System programmer response: No SystemProgrammer response is required.Problem determination: See perlobj.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20025 Can’t chdir to dirExplanation: You called perl -x/foo/bar, but/foo/bar is not a directory that you can chdir to,possibly because it doesn’t exist.In the message text:dir directoryExample: HPE20025 Can’t chdir to foo/testSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: While running the perl program,check to make sure that the directory being givenexists.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20026 Can’t coerce array into hashExplanation: An array was used where a hash wasexpected, but the array has no information about how tomap from keys to array indicesExample: HPE20026 Can’t coerce array into hashSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: You cannot deal hash as an array .You can do that only with arrays that have a hashreference at index 0.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20027 Can’t coerce string1 to integer in string2Explanation: Certain types of SVs (scalar values) , inparticular real symbol table entries (typeglobs), cannotbe forced to stop being what they are.In the message text:string1string example: string,ref-to-glob etcstring2string example: integerExample: HPE20027 Can’t coerce ARRAY to integerin array derefSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: You can not change the behaviour ofglobs. Please don’t try to force the variable to change inthat case.System programmer response: No SystemChapter 6. Perl messages 25
  • 35. Programmer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20028 Can’t coerce string1 to number instring2Explanation: Certain types of SVs (scalar values) , inparticular real symbol table entries (typeglobs), cannotbe forced to stop being what they are.In the message text:stringstring example: string,ref-to-glob etcstring2string example: integerExample: HPE20028 Can’t coerce %s to number in%sSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not try to convert the string to anumber during arthematic operation.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20029 Can’t coerce string1 to string in string2Explanation: Certain types of SVs (scalar values) ,such as real symbol table entries (typeglobs), cannot beforced to stop being what they are.In the message text:string1string example: unknownstring2string example: stringExample: HPE20029 Can not coerce unknown tostring in lc.System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not try to convert the string to astring.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20030 Can’t call method ″function″ on anundefined valueExplanation: You used the syntax of a method call,but the slot filled by the object reference or packagename contains an undefined value.In the message text:functionfunction or module nameExample: HPE20030 Can’t call method ″process″ onan undefined valueSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check if the package you are using tocall the function is undefined.Something like this will reproduce the error:$BADREF = undef;process $BADREF 1,2,3;$BADREF->process(1,2,3);System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.26 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 36. HPE20031 Can’t call method ″function″ onunblessed referenceExplanation: A method call must know in whatpackage it is supposed to run. It ordinarily finds thisinformation from the object reference supplied, butobject references were not supplied in this case. Areference is not an object reference until it has beenblessed.In the message text:functionfunction or module nameExample: HPE20031 Can’t call method ″process″ onunblessed referenceSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure the object reference beingused is blessed.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20032 Can’t declare class for non-scalarnon-scalar in ″AccessSpecifier″Explanation: Currently, only scalar variables can bedeclared with a specific class qualifier in a ″my″ or ″our″declaration. The semantics may be extended for othertypes of variables in the future.In the message text:non-scalarnon scalar can be referenceAccessSpecifierAccess specifierExample: HPE20032 Can’t declare class fornon-scalar @socks in ″my″System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure you are not declaringaclass for non-scalar variableThe following example is not a scalar variable:’package Cat; my Cat @socks; here @socksSystem programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20033 Can’t declare non-scalar in″AccessSpecifier″Explanation: Only scalar, array, and hash variablescan be declared as ″my″ or ″our″ variables. They musthave ordinary identifiers as names.In the message text:non-scalarnon scalar can be dereferenceAccessSpecifierAccess specifierExample: HPE20033 Can not declare scalardereference in ″our″.System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Be sure that only dereferencevariables are declared as ″my″ or ″our″.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20034 Can’t do inplace edit without backupExplanation: The operating system cannot read froma deleted (but still opened) file.Example: HPE20034 Can’t do inplace edit withoutbackupSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.Chapter 6. Perl messages 27
  • 37. User response: Make sure the file is backed upbefore editing. To back up the file, do -i.bak, or arelated instruction.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20035 Can’t do setuidExplanation: This typically means that ordinary perltried to exec suidperl to do setuid emulation, butcouldn’t exec it. It looks for a name of the formsperl5.000 in the same directory that the perl executableresides under the name perl5.000, typically/usr/local/bin on UNIX machines.Example: HPE20035 Can’t do setuidSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: If the file is there, check the executepermissions. If it is not there, ask your systemadministrator why the file was removed.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20036 Unable to do waitpid with flagsExplanation: This machine does not have eitherwaitpid() or wait4(), so only waitpid() without flags isemulated.Example: HPE20036 Unable to do waitpid with flagsSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that this machine haswait4() and waitpid().System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20037 Can’t emulate -opt on #! lineExplanation: The #! line specifies a switch that doesnot make sense at this point.In the message text:optoption given with #! like -x -w.Example: HPE20037 Can’t emulate -x on #! lineSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Remove all incorrect opt from the #!line. An example of an incorrect opt is -x.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20038 Can’t exec filenameExplanation: Perl was trying to execute the indicatedprogram because that’s what the #! line said. If that isnot wanted, ″perl″ may need to be mentioned on the #!line somewhere.In the message text:filenamefile nameExample: HPE20038 Can’t exec test.plSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.28 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 38. User response: Make sure the right file name isspecified.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20039 Can’t find an opnumber for ″keyword″Explanation: A string of a form C<CORE::word> wasgiven to prototype(), but there is no builtin with thename C<word>.In the message text:keywordkeyword Example: continue,connect etcExample: HPE20039 Can’t find an opnumber for″continue″System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check that the prototype of thebuilt-in is correct and that there are no mispellings.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20040 Can’t find label labelExplanation: A goto was attempted to a label that isnot mentioned anywhere that is possible to goto. Seeperlfunc/goto.In the message text:labelThe labelExample: HPE20040 Can not find label jumphere.System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Define the label before using itSystem programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20041 Can’t find string terminator var str varanywhere before EOFExplanation: Perl strings can stretch over multiplelines.This message means that the closing delimiter wasomitted. Because bracketed quotes count nestinglevels, the following is missing its final parenthesis: printq(The character ’(’ starts a side comment.);In the message text:var It is a string type char variable, it can be:’″’) ? ’’’ :’″’.str The String.Example: HPE20041 Can’t find string terminator ″)″anywhere before EOFSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Because white space may have beenincluded before or after the closing tag, check thesyntax.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20042 Can’t forkExplanation: A fatal error occurred while trying to forkwhile opening a pipeline.Example: HPE20042 Can’t forkSystem action: Perl immediately stops interpreting theChapter 6. Perl messages 29
  • 39. file (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow local procedures for reportingproblems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20043 Can’t ″goto″ into the middle of aforeach loopExplanation: A ″goto″ statement was executed tojump into the middle of a foreach loop. Jumping into themiddle of foreach loop is not permissable. Seeperlfunc/goto.Example: HPE20043 Can’t ″goto″ into the middle of aforeach loopSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use ″goto″ to jump into anyconstruct that requires initialization, such as asubroutine or a foreach loop.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20044 Can’t ″goto″ out of a pseudo blockExplanation: A ″goto″ statement was executed tojump out of what might look like a block, except that itisn’t a proper block. This usually occurs if a ″goto″leaves from a sort() block or subroutine, which is notallowed. See perlfunc/goto.Example: HPE20044 Can’t ″goto″ out of a pseudoblockSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use any of the loop controloperators to exit out of a sort block or subroutine.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20045 Can’t goto subroutine from aneval-stringExplanation: The ″goto subroutine″ call can’t be usedto jump out of an eval ″string″. (It can be used to jumpout of an eval {BLOCK}, but this is not advisable.)Example: HPE20045 Can’t goto subroutine from aneval-stringSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use ″goto″ to enter a constructthat is optimized away, or to get out of a block,eval-string or subroutine.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20046 Can’t goto subroutine outside asubroutineExplanation: The ″goto subroutine″ call can onlyreplace one subroutine call for another. Seeperlfunc/goto.Example: HPE20046 Can’t goto subroutine outside asubroutineSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.30 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 40. Operator response: No System Operator response isrequired.User response: Do not use ″goto subroutine″ to getout of a subroutine. Try calling it out of an AUTOLOADroutine instead. Do not use it to go into any constructthat requires initialization, such as a subroutine or aforeach loop. Also, do not use it to go into a constructthat is optimized away, or to get out of a block orsubroutine given to sort.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20047 Can’t ignore signal CHLD, forcing todefaultExplanation: Perl detected that it is being run with theSIGCHLD signal (sometimes known as SIGCLD)disabled. Because disabling this signal will interfere withproper determination of exit status of child processes,Perl has reset the signal to its default value. Thissituation typically indicates that the parent programunder which Perl may be running (for example, cron) isbeing very careless.Example: HPE20047 Can’t ignore signal CHLD,forcing to defaultSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Make sure that SIG_DFL is usedwhen USE_SIGCHLD is defined.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20048 Can’t ″last″ outside a loop blockExplanation: A ″last″ statement was executed tobreak out of the current block, while there is no currentblock. Note that an ″if″ or ″else″ block does not countas a ″loopish″ block, as well as a block given to sort(),map() or grep(). By doubling the curlies, the same effectcan be achieved, because the inner curlies will beconsidered a block that loops once. See perlfunc/last.Example: HPE20048 Can’t ″last″ outside a loop blockSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use ″last″ to exit a block thatreturns a value. Because a block by itself issemantically identical to a loop that executes once, youcan use ″last″ to effect an early exit out of such a block.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20049 Can’t localize lexical variable varExplanation: Local was used on a variable name thatwas previously declared as a lexical variable using″my″. This is not allowed.In the message text:var The Variable.Example: HPE20049 Can’t localize lexical variableop_targSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: To localize a package variable of thesame name, qualify it with the package name.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Chapter 6. Perl messages 31
  • 41. Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20050 Can’t localize pseudo-hash elementExplanation: The following was found: C<< local$ar->{’key’} >> , where $ar is a reference to apseudo-hash. That has not been implemented yet.Example: HPE20050 Can’t localize pseudo-hashelementSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: You can achieve a similar effect bylocalizing the corresponding array element directly, suchas C<< local $ar->[$ar->[0]{’key’}] >> .System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20051 Can’t locate filenameExplanation: An attempt to do (or require, or use) afile failed, because that file could not be found. Perllooks for the file in all the locations mentioned in @INC,unless the file name included the full path to the file.See perlfunc/require.In the message text:filenameThe filename.Example: HPE20051 Can’t locate SvPV_nolenSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Try one of the following: Set thePERL5LIB or PERL5OPT environment variable to pointto the extra library, check to see if the script needs toadd the library name to @INC, or check the spelling ofthe file.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20052 Can’t locate object method ″method″via package ″pkg″Explanation: A method was called correctly, and itcorrectly indicated a package functioning as a class, butthat package doesn’t define that particular method, nordoes any of its base classes. See perlobj.In the message text:methodThe method name.pkgThe package name.Example: HPE20052 Can’t locate object method″hello″ via package ″foo″System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check whether the method is definedin this package. If it is not, then use the correctpackage.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20054 Can’t modify var1 in var2Explanation: The item indicated cannot be assignedto or changed, such as with an auto-increment.In the message text:var1The variable can be a constant/array/hash.var2The variable is scalar.Example: HPE20054 Can’t modify do block in localSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.32 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 42. Operator response: No System Operator response isrequired.User response: You cannot change the value of aconstant or built-in-value in scalar.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20055 Can’t modify non-lvalue subroutine callExplanation: Subroutines meant to be used in lvaluecontext should be declared as such. Lvalue subroutinesare still experimental and the implementation maychange in future versions of Perl. See Lvaluesubroutines.Example: HPE20055 Can’t modify non-lvaluesubroutine callSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: You can return a modifiable valuefrom a subroutine by declaring the subroutine to returnan lvalue.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20056 Can’t ″next″ outside a loop blockExplanation: A ″next″ statement was executed toreiterate the current block, but there are no currentblocks. An ″if″ or ″else″ block does not count as a″loopish″ block, neither does a block given to sort(),map() or grep(). You can usually double the curlies toget the same effect though, because the inner curlieswill be considered a block that loops once. Seeperlfunc/next.Example: HPE20056 Can’t ″next″ outside a loop blockSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use ″next″ to exit a block thatreturns a value. Because a block by itself issemantically identical to a loop that executes once,″next″ will exit such a block early.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20060 Can’t open perl script ″filename″:reasonExplanation: The script you specified cannot beopened for the indicated reason.In the message text:filenamefile namereasonStrings which gives the explanation for not openingthe file.Example: HPE20060 Can’t open perl script ″menu″:EDC5129I No such file or directory.System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: If you are debugging a script thatuses #! and normally rely on the shell’s $PATH search,use the -S option. Perl will do the search so you don’thave to type the path or `which $scriptname`.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.Chapter 6. Perl messages 33
  • 43. HPE20061 Can’t redefine active sort subroutinefunctionExplanation: Perl optimizes the internal handling ofsort subroutines and keeps pointers into them. Anattempt was made to redefine one such sort subroutinewhen it was currently active, which is not allowed.In the message text:functionfunction nameExample: HPE20061 Can’t redefine active sortsubroutine funcSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: If you want to redefine the sortroutine, you should write sort { &func } @x instead ofsort func @x .System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20062 Can’t ″redo″ outside a loop blockExplanation: A ″redo″ statement was executed torestart the current block, but there are no currentblocks.Example: HPE20062 Can’t ″redo″ outside a loop blockSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: You can usually double the curlybrackets to get the same effect because the inner curlybrackets will be considered a block that loops once.Note that an ″if″ or ″else″ block doesn’t count as a″loopish″ block; neither are blocks given to sort(), map()or grep().System programmer response: No SystemProgrammer response is required.Problem determination: See redo.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code:Automation: Not applicable.HPE20063 Can’t return illegalValue from lvaluesubroutineExplanation: Perl detected an attempt to return illegallvalues (such as temporary or readonly values) from asubroutine used as an lvalue. This is not allowed.In the message text:illegalValueIllegal value (undef,temporary or readonly values)Example: HPE20063 Can’t return undef from lvaluesubroutineSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not assign undef or readonlyvalue to lvalue.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20064 Can’t return outside a subroutineExplanation: The return statement was executed inmainline code, that is, where there was no subroutinecall to return out of.Example: HPE20064 Can’t return outside a subroutineSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not put the return statementoutside the subroutine.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.34 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 44. Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20065 Can’t take log of numExplanation: For ordinary real numbers, you can’ttake the logarithm of a negative number or zero. Usethe Math::Complex package that comes standard withPerl if you want to do that for the negative numbers.In the message text:numnumber (negative number or zero)Example: HPE20065 Can’t take log of zeroSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not take the log of a negativenumber or zero.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20066 Can’t take sqrt of numExplanation: For ordinary real numbers, you cannottake the square root of a negative number. Use theMath::Complex package that comes standard with Perlif you want to do that.In the message text:numnumber (negative number)Example: HPE20066 Can’t take sqrt of -5System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not take the square root of anegative number.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20067 Can’t undef active subroutineExplanation: A routine that is currently running cannotbe undefined. It can be redefined while it is running,though. You can even undefine the redefined subroutinewhile the old routine is running.Example: HPE20067 Can’t undef active subroutineSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check whether you are trying toundefine a routine that’s currently running.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20068 Can’t use bareword word as DataTyperef while ″strict refs″ in useExplanation: Only hard references are allowed by″strict refs″. Symbolic references are not allowed.In the message text:wordAny wordDataTypeData type like ARRAY HASH etc.Example: HPE20068 Can’t use bareword (″results″)as a HASH ref while ″strict refs″ in useSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: If you use use strict refs, be carefulabout the syntax while using the reference.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Chapter 6. Perl messages 35
  • 45. Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20069 Can’t use %! because Errno.pm is notavailableExplanation: The first time the %! hash is used, perlautomatically loads the Errno.pm module. The Errnomodule is expected to tie the %! hash to providesymbolic names for $! errno values.Example: HPE20069 Can’t use %! because Errno.pmis not availableSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: If you are using %!, make sure youhave Errno.pm in your system.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20070 Can’t use data-type for loop variableExplanation: Only a simple scalar variable may beused as a loop variable on a foreach.In the message text:data-typeAn invalid data-type.Example: HPE20070 Can’t use Non-scalar for loopvariableSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Use only a simple scalar variable asa loop variable on a foreach.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20071 Can’t use global magicVar in ″my″Explanation: An attempt was made to declare amagical variable as a lexical variable. This is notallowed. The magic can be tied to only one location(namely the global variable), and it would be confusingto have variables that looked like magical variables butwere not.In the message text:magicVarMagical variable.Example: HPE20071 Can’t use global $1 in ″my″System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure magical variables are notdeclared as lexical variables.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20072 Can’t use ″my var″ in sort comparisonExplanation: The global variables $a and $b arereserved for sort comparisons. You mentioned $a or $bin the same line as the <=> or cmp operator, and thevariable had earlier been declared as a lexical variable.In the message text:var variable nameExample: HPE20072 Can’t use ″my $a″ in sortcomparisonSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Either qualify the sort variable with36 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 46. the package name, or rename the lexical variable.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20073 Can’t weaken a nonreferenceExplanation: You tried to weaken something that wasnot a reference.Example: HPE20073 Can’t weaken a nonreferenceSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: You can weaken references only, notnon-references.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20074 Code missing after ’/’ in unpackExplanation: You had a (sub-)template that ends witha ’/’.Example: HPE20074 Code missing after ’/’ in unpackSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: There must be another template codefollowing the slash. See perlfunc/unpack.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20075 Code missing after ’/’ in packExplanation: You had a (sub-)template that ends witha ’/’.Example: HPE20075 Code missing after ’/’ in packSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: There must be another template codefollowing the slash. See perlfunc/pack.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20076 class Compilation failed in requireExplanation: Compilation failed due to failing ofBEGIN,CHECK or any other class.In the message text:classclass example BEGIN,CHECK etcExample: HPE20076 BEGIN failed--Compilation failedin requireSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check for any syntax errors or anynormal errors in classes included during the buildprocess (including BEGIN,CHECK).System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Chapter 6. Perl messages 37
  • 47. Automation: Not applicable.HPE20077 Constant(str1):str2str3str4Explanation: The parser found inconsistencies eitherwhile attempting to define an overloaded constant, orwhen trying to find the character name specified in the<N{...} escape. Maybe the corresponding overload orcharnames pragma was not loaded.In the message text:str1str1 is constant type.st2 The string str 2 may be ″$^H{″ or ″Call to &{$^H{″ .str3str3 may be ″(possibly a missing ″use charnames...″)″ or ″ ″.str4str4 may be ″} is not defined″ or ″}} did not return adefined value″.Example: HPE20077 Constant(overload):$^H{ } is notdefinedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Load the correct pragma.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20078 Constant is not const referenceExplanation: A constant value (perhaps declaredusing the use constant pragma) is being dereferenced,but it amounts to the wrong type of reference. Themessage indicates the type of reference that wasexpected. This usually indicates a syntax error indereferencing the constant value.In the message text:constconst nameExample: HPE20078 Constant is not PI referenceSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Correct the syntax error indeferencing the constant value. You may be trying todereference the constant variable.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20079 Copy method did not return areferenceExplanation: The method which overloads ″=″ isbuggy.Example: HPE20079 Copy method did not return areferenceSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: There may be a problem withoverloading ″=″. Check whether you used the correctway to overload ″=″.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20080 CORE::keyword is not a keywordExplanation: The CORE::namespace is reserved forPerl keywords.In the message text:keywordreserve word for a languageExample: HPE20080 CORE::namespace is not akeywordSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.38 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 48. Operator response: No System Operator response isrequired.User response: You cannot use words that arereserved as keyword in the perl script. Check the errormessage , change the name for which you see theerror, and then run the script.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20081 Count after length/code in unpackExplanation: You had an unpack template indicating acounted-length string, but you have also specified anexplicit size for the string.Example: HPE20081 Count after length/code inunpackSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not specify an explicit size for thestring when using an unpack template that indicates acounted-length string.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20082 arg defines neither package norVERSION--version check failedExplanation: You referred to a particular module file(for example, ″use Module 42″) but that module filedoes not have either package declarations or a$VERSION.In the message text:argargumentExample: HPE20082 Argv defines neither packagenor VERSION--version check failedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that the version you areusing as the argument is defined in the respectivepackage that you are providing with ″use″.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20083 Delimiter for here document is too longExplanation: In a here document construct like FOO ,the label FOO is too long for Perl to handle.Example: HPE20083 Delimiter for here document istoo longSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that the label name is nottoo long for Perl to handle.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20084 DESTROY created new reference todead object ’OBJ’Explanation: A DESTROY() method created a newreference to the object that is being destroyed. Perl isconfused, and prefers to abort rather than create adangling reference.In the message text:OBJoject nameChapter 6. Perl messages 39
  • 49. Example: HPE20084 DESTROY created newreference to dead object ’CGI::Session’System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: In the line number mentioned in theerror message, make sure the object used is active.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20085 ″filename″ did not return a true valueExplanation: A required (or used) file must return atrue value to indicate that it compiled correctly and ranits initialization code correctly.In the message text:filenamescript file nameExample: HPE20085 test.pm did not return a truevalueSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that the files that you aregiving with require ends with a ″1;″, so that they alwaysreturn the true value.System programmer response: No SystemProgrammer response is required.Problem determination: In perl for packages at theend it is always made to return true value.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20086 arg does not define $module::VERSION--version check failedExplanation: You specified a certain module (forexample, ″use Module 42″) but that module did notdefine a $VERSION.In the message text:argArgumentmodulemodule nameExample: HPE20086 Argv does not define$Module::VERSION--version check failedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that the$Module::VERSION variable is defined in the specifiedmodule. If it is, then you can ″use″ the versionargument for the respective module.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20087 ’/’ does not take a repeat count infunctionExplanation: You cannot put a repeat count of anykind right after the ’/’ code.In the message text:functionfunction name like pack or unpack hereExample: HPE20087 ’/’ does not take a repeat countin packSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: In the error line, check if you haveused a repeat count of any kind right after the ’/’ code ineither pack or unpack.System programmer response: No SystemProgrammer response is required.40 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 50. Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20088 entering effective uid failedExplanation: While under the use filetest pragma,switching the real and effective UIDs failed.Example: HPE20088 entering effective uid failedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: In the error line, check if you aredoing switching of real and effective UIDs properly.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20089 entering effective gid failedExplanation: While under the use filetest pragma,switching the real and effective GIDs failed.Example: HPE20089 entering effective gid failedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: In the error line, check if you aredoing switching of real and effective GIDs properly.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20090 Excessively long < > operatorExplanation: The contents of a < > operator cannotexceed the maximum size of a Perl identifier. If you’rejust trying to glob a long list of file names, try using theglob() operator, or put the file names into a variable andglob that.Example: HPE20090 Excessively long < > operatorSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Look to see if the perl identifier usedin the error line is longer than Perl can handle. If youmust use a long name, store it in a variable beforeusing it.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20091 exec? I’m not *that* kind of operatingsystemExplanation: The exec function is not implemented inMacPerl.Example: HPE20091 exec? I’m not *that* kind ofoperating systemSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: You cannot use exec because it isnot implemented in MacPerl.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.Chapter 6. Perl messages 41
  • 51. HPE20092 Execution of filename aborted due tocompilation errorsExplanation: The final summary message when a Perlcompilation fails.In the message text:filenamefile name.Example: HPE20092 Execution of test.pl aborted dueto compilation errorsSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Resolve the error messages, one byone, until you stop getting the error message.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20093 class failed--call queue abortedExplanation: An untrapped exception was raised whileexecuting a CHECK, INIT, or END subroutine.Processing of the remainder of the queue of suchroutines has been prematurely ended.In the message text:classClass nameExample: HPE20093 END failed--call queue abortedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Resolve the error messages, one byone, until you stop getting the error message.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20094 fcntl is not implementedExplanation: The fcntl() function isn’t available onyour system.Example: HPE20094 fcntl is not implementedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check if fcntl has been implementedon your machine. Contact the system administrator if ithasn’t.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20095 Final $ should be $ or $nameExplanation: You have to decide whether the final $ ina string was meant to be a literal dollar sign, or wasmeant to introduce a variable name that happens to bemissing. So you have to put either the backslash or thename.Example: HPE20095 Final $ should be $ or $nameSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: In the error line, if you want to use $as part of the string, you have to put the backslash (/)before $.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.42 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 52. HPE20096 Format not terminatedExplanation: A Format must be terminated by a linewith a solitary dot. Perl reached the end of your filewithout finding such a line.Example: HPE20096 Format not terminatedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Use solitary dots to end the Format inthe script.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20097 Global symbol ″name″ requires explicitpackage nameExplanation: You specified ″use strict vars″, whichindicates that all variables must either be lexicallyscoped (using ″my″), declared beforehand using ″our″,or explicitly qualified to say which package the globalvariable is in (using ″::″).In the message text:nameSymbol nameExample: HPE20097 Global symbol ″$i″ requiresexplicit package nameSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: If you use Strict in the script, ensurethat all the variables used in the script are lexicalvariables.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20098 Glob not terminatedExplanation: The lexer saw a left angle bracket in aplace where it was expecting a term, so it’s looking forthe corresponding right angle bracket and not finding it.You may have omitted needed parentheses, and youreally meant a ″less than″.Example: HPE20098 Glob not terminatedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check the glob function and check formatching right and left angle brackets.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20099 ()-group starts with a count in functionExplanation: A ()-group started with a count. A countis supposed to follow something: a template characteror a ()-group.In the message text:functionfunction name like unpack or pack .Example: HPE20099 ()-group starts with a count inpackSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: In pack or unpack, count shouldfollow the template character or group.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Chapter 6. Perl messages 43
  • 53. Automation: Not applicable.HPE20100 filename had compilation errors.Explanation: The final summary message when aperl -c fails.In the message text:filenameFile nameExample: HPE20100 test.pl had compilation errors.System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Because this is the final message,there are no actions that you can take. First run thescript using perl -c which will list down the syntax errorsand then debug the script.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20101 filename has too many errorsExplanation: The parser stopped parsing the programafter ten errors. Additional error messages would likelybe uninformative.In the message text:filenameFile nameExample: HPE20101 test.pl has too many errorsSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Correct the errors and continue.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20102 Illegal declaration of anonymoussubroutineExplanation: When using the sub keyword toconstruct an anonymous subroutine, you must alwaysspecify a block of codeExample: HPE20102 Illegal declaration of anonymoussubroutineSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that the Anonymoussubroutine is followed by the block of code.System programmer response: No SystemProgrammer response is required.Problem determination: See perlsub for furtherreference.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20103 Illegal declaration of subroutine subExplanation: A subroutine was not declared correctly.For more information, see perlsub.In the message text:subThe subrotine name.Example: HPE20103 Illegal declaration of subroutinefooSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check the syntax of the declaringsubroutine and make any corrections that arenecessary.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.44 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 54. Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20104 Illegal division by zeroExplanation: You tried to divide a number by 0. Eithersomething was wrong in your logic, or you need to put aconditional in to guard against meaningless input.Example: HPE20104 Illegal division by zeroSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Go to the line number mentioned inthe error message and make sure that you are notdividing a number by 0; it is illegal.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20105 Illegal modulus zeroExplanation: You tried to divide a number by 0 to getthe remainder.Example: HPE20105 Illegal modulus zeroSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Go to the line number mentioned inthe error message and check if you tried to divide anumber by 0 to get the remainder.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20106 Illegal number of bits in vecExplanation: The number of bits in vec() (the thirdargument) must be a power of two from 1 to 32 (or 64,if your platform supports that).Example: HPE20106 Illegal number of bits in vecSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Go to the line number mentioned inthe error message and make sure that number of bits invec() (the third argument) is a power of two from 1 to32.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20107 In EBCDIC the v-string componentscannot exceed 2147483647Explanation: An error peculiar to EBCDIC. Internally,v-strings are stored as Unicode code points, andencoded in EBCDIC as UTF-EBCDIC. TheUTF-EBCDIC encoding is limited to code points nolarger than 2147483647 (0x7FFFFFFF).Example: HPE20107 In EBCDIC the v-stringcomponents cannot exceed 2147483647System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Go to the line number mentioned inthe error message and make sure that the v-string sizeis below the limit in EBCDIC.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.Chapter 6. Perl messages 45
  • 55. HPE20108 Insecure directory in env_varExplanation: You tried to do something that thetainting mechanism didn’t like. The tainting mechanismis turned on when you’re running setuid or setgid, orwhen you specify -T to turn it on explicitly. The taintingmechanism labels all data that’s derived directly orindirectly from the user, who is considered to beunworthy of your trust. If any such data is used in a″dangerous″ operation, you get this error.In the message text:env_varenvironmental variable like $ENV{PATH}.Example: HPE20108 Insecure directory in$ENV{PATH}.System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that the directory is correctand secure.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20109 Invalid range ″BegChar-EndChar″ intransliteration operatorExplanation: The range specified in the tr/// or y///operator had a minimum character greater than themaximum character.In the message text:BegCharFirst character in the specified rangeEndCharLast character in the specified rangeExample: HPE20109 Invalid range ″9-$″ intransliteration operatorSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: The range you have specified for troperator is not correct; make sure you mention thecorrect range. For reference, see perlop.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20110 Invalid separator character code inattribute listExplanation: Something other than a colon or whitespace was seen between the elements of an attributelist. If the previous attribute had a parameter list inparentheses, perhaps that list was terminated too soon.In the message text:codeCodes like $,&Example: HPE20110 Invalid separator character ’$’ inattribute listSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that the attribute list hasvalid separator characters.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20111 ioctl is not implementedExplanation: The ioctl() function is not supported.Example: HPE20111 ioctl is not implementedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: In some machines, ioctl is notimplemented. Contact your system administrator.System programmer response: No SystemProgrammer response is required.46 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 56. Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20112 IO layers (like ’layer’) unavailableExplanation: Because your Perl has not beenconfigured to support PerlIO, you cannot use IO layers.In the message text:layerPerl IO layersExample: HPE20112 IO layers (like ’APR’) unavailableSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: In order to use PerlIO, Perl must beconfigured with ’useperlio’. Contact your systemadministrator if you have questions.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20113 Label not found for ″last label″Explanation: You named a loop to break out of, butyou are not currently in a loop of that name, not even ifyou count where you were called from.In the message text:labelLabel nameExample: HPE20113 Label not found for ″last LOOP″System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that the label name is inthe script. Also see last.System programmer response: No SystemProgrammer response is required.Problem determination: There should be a section ofscript by that name as shown in the following example:LOOP:$a = foo{$a};.....Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20114 Label not found for ″next label″Explanation: You named a loop to continue, butyou’re not currently in a loop of that name, not even ifyou count where you were called from.In the message text:labelLabel nameExample: HPE20114 Label not found for ″next LOOP″System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Be sure that the label name is thescript. Also see perlfunc/next..System programmer response: No SystemProgrammer response is required.Problem determination: There should be a section ofscript by that name as shown in the below example.LOOP:$a = foo{$a};.....Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20115 Label not found for ″redo label″Explanation: You named a loop to restart, but you’renot currently in a loop of that name, not even if youcount where you were called from.In the message text:labelLabel nameChapter 6. Perl messages 47
  • 57. Example: HPE20115 Label not found for ″redo LOOP″System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that the label name is inthe script. Also see redo.System programmer response: No SystemProgrammer response is required.Problem determination: There should be a section ofscript by that name as shown in the below example.LOOP:$a = foo{$a};.....Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20116 length/code after end of string inunpackExplanation: While unpacking, the string buffer wasempty when an unpack length/code combination tried toobtain more data. This results in an undefined value forthe length.Example: HPE20116 length/code after end of string inunpackSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Go to the line number mentioned inthe error message and check for the unpack parameter.Also see perlfunc/pack .System programmer response: No SystemProgrammer response is required.Problem determination: The length specified in theunpack function should be more than the string we usein the function.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20117 Malformed PERLLIB_PREFIXExplanation: An error peculiar to OS/2.PERLLIB_PREFIX should be of the form prefix1;prefix2or prefix1 prefix2 with nonempty prefix1 and prefix2. If Cprefix1 is indeed a prefix of a built-in library search path,prefix2 is substituted.Example: HPE20117 Malformed PERLLIB_PREFIXSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: The error may appear if componentsare not found. Try to install the component.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20118 Malformed prototype for function:strExplanation: You tried to use a function with amalformed prototype. The syntax of function prototypesis given a brief compile-time check for obvious errorslike invalid characters. A more rigorous check is runwhen the function is called.In the message text:functionThe function namestr A string consisting argumnets to the functionExample: HPE20118 Malformed prototype for main::jk:$jk1,$jk2,$jk3System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Correct the prototype of the function.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).48 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 58. Automation: Not applicable.HPE20119 ’%’ may not be used in packExplanation: You can’t pack a string by supplying achecksum, because the checksum process losesinformation, and you can’t go the other way.Example: HPE20119 ’%’ may not be used in packSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Go to the line number mentioned inthe error message and make sure that the pack orunpack function call is included. Also seeperlfunc/unpack .System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20120 Missing argument to -optExplanation: The argument to the indicated commandline switch must follow immediately after the switch,without intervening spaces.In the message text:optoption here -c.Example: HPE20120 Missing argument to -cSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check for the space in thecommand-line argument.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20121 Missing comma after first argument tofunction functionExplanation: While certain functions allow you tospecify a filehandle or an ″indirect object″ before theargument list, this isn’t one of them.In the message text:functionFunction name.Example: HPE20121 Missing comma after firstargument to pack functionSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that function argumentsare separated by commas.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20122 Missing control char name in cExplanation: A string enclosed in double quotesended with ″c″, without the required control charactername.Example: HPE20122 Missing control char name in cSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: c is a control character. If you wantto use c , then you need escape it using .System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.Chapter 6. Perl messages 49
  • 59. HPE20123 Missing name in ″my sub″Explanation: The reserved syntax for lexically-scopedsubroutines requires that they have a name with whichthey can be found.Example: HPE20123 Missing name in ″my sub″System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Assign a name, followed by ″my sub″,to the lexically-scoped subroutines.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20124 Missing $ on loop variableExplanation: Variables are always mentioned with the$ in Perl, unlike the shells, where it can vary from oneline to the next.Example: HPE20124 Missing $ on loop variableSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Go to the line number mentioned inthe error message and add the $ to the variable.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20125 Missing right curly or square bracketExplanation: The lexer counted more opening braces({) or brackets ([} than closing ones. As a general rule,you will find the missing one near the place you werelast editing.Example: HPE20125 Missing right curly or squarebracketSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Go to the line number mentioned inthe error message and insert the missing closing brace(}) or bracket (]).System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20126 Module name must be constantExplanation: Only a bare module name is allowed asthe first argument to a ″use″.Example: HPE20126 Module name must be constantSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Only package name to be given after″use″ extension of the package should not be specified.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20127 Module name required with -opt optionExplanation: The -M or -m options say that Perl shouldload some module, but you omitted the name of themodule.In the message text:optoption like -mExample: HPE20127 Module name required with -moption50 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 60. System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Consult perlrun for full details about-M and -m.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20128 More than one argument to openExplanation: The open function has been asked toopen multiple files. This can happen if you are trying toopen a pipe to a command that takes a list ofarguments, but have forgotten to specify a piped openmode.Example: HPE20128 More than one argument toopenSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Go to the line number listed in theerror message where you have given more argumentsin the open function . Also see perlfunc/open for details.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20129 ’/’ must be followed by ’a*’, ’A*’ or ’Z*’in packExplanation: You had a pack template indicating acounted-length string. Currently the only items that canhave their length counted are a*, A* or Z*.Example: HPE20129 ’/’ must be followed by ’a*’, ’A*’or ’Z*’ in packSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check whether ’/’ is followed by ’a*’,’A*’ or ’Z*’ in the pack function, if it does not, you needto add it.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20130 ’/’ must follow a numeric type inunpackExplanation: You had an unpack template thatcontained a ’/’, but this did not follow some unpackspecification producing a numeric value. Seeperlfunc/pack.Example: HPE20130 ’/’ must follow a numeric type inunpackSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Go to the line number mentioned inthe error message and check whether the unpacksyntax is proper; that is, ’/’ must follow a numeric type inunpack.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20131 ″my sub″ not yet implementedExplanation: Lexically-scoped subroutines have notyet been implemented.Example: HPE20131 ″my sub″ not yet implementedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Chapter 6. Perl messages 51
  • 61. Operator response: No System Operator response isrequired.User response: You cannot localize the subroutinebecause lexically-scoped subroutines have not yet beenimplemented.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20132 Negative ’/’ count in unpackExplanation: The length count obtained from alength/code unpack operation was negative.Example: HPE20132 Negative ’/’ count in unpackSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check in the error line for the unpackfunction whether the length count is negative. Also seeperlfunc/pack .System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20133 Negative lengthExplanation: You tried to do a read/write/send/recvoperation with a buffer length that is less than 0.Example: HPE20133 Negative lengthSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: If the error is while using the readingof file, then try to read the data whose size is within thelimit.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20134 Negative offset to vec in lvalue contextExplanation: When vec is called in an lvalue context,the second argument must be greater than or equal tozero.Example: HPE20134 Negative offset to vec in lvaluecontextSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure, in lvalue context, that thesecond argument is greater than or equal to zero.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20135 No opt allowed while running setuidExplanation: Certain operations are deemed to be tooinsecure for a setuid or setgid script to even be allowedto attempt. Generally speaking, there will be anotherway to do what you want that is, if not secure, at leastsecurable.In the message text:optoption Like -PExample: HPE20135 No -P allowed while runningsetuidSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: When you are using setuid, do not52 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 62. use certain options such as -P. For more details, seePerl security.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20136 No comma allowed after filehandleExplanation: A list operator that has a filehandle or″indirect object″ is not allowed to have a commabetween that and the following arguments. Otherwise itwould just be another one of the arguments. Onepossible cause for this is that you expected to haveimported a constant to your name space with use orimport. Howerver, the import did not take place. It may,for example, be that your operating system does notsupport that particular constant.In the message text:filehandlefile handlesExample: HPE20136 No comma allowed afterfilehandleSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: A comma is not allowed afterfilehandle or indirect object, for exampleprint FOOBAR, "This text is color FOOBARn";The above print statement is incorrect; you need to takeoff the comma after FOOBAR.System programmer response: No SystemProgrammer response is required.Problem determination: While an explicit import listwould probably have caught this error earlier, it naturallydoes not remedy the fact that your operating system stilldoes not support that constant. Maybe you have a typoin the constants of the symbol import list of use orimport or in the constant name at the line where thiserror was triggered.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20138 No DB::DB routine definedExplanation: The currently executing code wascompiled with the -d switch, but for some reason thecurrent debugger (for example, perl5db.pl or aDevel::module did not define a routine to be called atthe beginning of each statement.Example: HPE20138 No DB::DB routine definedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check with the system administratorwhether perl5db.pl is available on your machine.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20139 No DBsub routineExplanation: The executing code was compiled withthe d switch, but for some reason the current debugger(for example, perl5db.pl or a Devel::module) didn’tdefine a DB::sub routine to be called at the beginning.of each ordinary subroutine call.Example: HPE20139 No DBsub routineSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check whether the DB::sub routine tobe called at the beginning of each ordinary subroutinecall is defined.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.Chapter 6. Perl messages 53
  • 63. HPE20140 No group ending character ’code’found in templateExplanation: A pack or unpack template has anopening ’(’ or ’[’ without its matching counterpart.In the message text:codeCharacter codes.Example: HPE20140 No group ending character ’)’found in templateSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: In the error line, check the syntax ofpack or unpack. A closing bracket may be missing.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20142 No #! lineExplanation: The setuid emulator requires that scriptshave a well-formed #! line even on machines that do notsupport the #! construct.Example: HPE20142 No #! lineSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Some machines do not support the #!construct. For those machines, do not use #!.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20143 ″no″ not allowed in expressionExplanation: The ″no″ keyword is recognized andexecuted at compile time, and does not return a usefulvalue.Example: HPE20143 ″no″ not allowed in expressionSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use keywords. For moreinformation, refer to Perl modules.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20146 No package name allowed for variablevar in ″our″Explanation: Fully qualified variable names are notallowed in ″our″ declarations. Such syntax is reservedfor future extensions.In the message text:var variable nameExample: HPE20146 No package name allowed forvariable $foo in ″our″System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: You must have given something likethis our $foo::bar. That is not allowed. Because youcannot localize the variable of a package, remove ″our″from the decleration.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.54 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 64. HPE20147 No Perl script found in inputExplanation: You called perl -x, but a line beginningwith #! and containing the word ″perl″ was not found inthe file.Example: HPE20147 No Perl script found in inputSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check to see if the first line #!contains the word ″perl″.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20148 No setregid availableExplanation: Configure did not find anythingresembling the setregid() call for your system.Example: HPE20148 No setregid availableSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that setregid() is set up onyour system.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20149 No setreuid availableExplanation: Configure did not find anythingresembling the setreuid() call for your system.Example: HPE20149 No setreuid availableSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that setreuid() is set up onyour system.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20150 No such class nameExplanation: You provided a class qualifier in a ″my″or ″our″ declaration, but this class does not exist at thispoint in your program.In the message text:nameclass name.Example: HPE20150 No such class MyClassSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that the class name youare using in the error line is present.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20151 No such pseudo-hash field ″fieldname″Explanation: You tried to access an array as a hash,but the field name used is not defined. The hash atindex 0 should map all valid field names to array indicesfor that to work.In the message text:fieldnamepseudo hash field name.Example: HPE20151 No such pseudo-hash field″maths″Chapter 6. Perl messages 55
  • 65. System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: You can use the array as a hash (inthis case, it is called a ’pseudo hash’), but the hashindex must be properly mapped.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20152 No such pseudo-hash field str1 invariable str2 of type pkgExplanation: You tried to access a field of a typedvariable where the type does not know about the fieldname. The field names are looked up in the %FIELDShash in the type package at compile time. The%FIELDS hash is %usually set up with the ’fields’pragma.In the message text:str1The str1 is the field name.str2The str2 is the variable.pkgThe package nameExample: HPE20152 No such pseudo-hash field″notthere″ in variable $obj3 of type D3System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check that the field is present in thepackage and if it isn’t, do not try to access it.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20153 Not a CODE referenceExplanation: Perl was trying to evaluate a referenceto a code value (that is, a subroutine), but found areference to something else instead.Example: HPE20153 Not a CODE referenceSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: You can use the ref() function to findout what kind of ref it really was. See also perlref .System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20154 Not a format referenceExplanation: I am not sure how you managed togenerate a reference to an anonymous format, but thisindicates you did, and that it did not exist.Example: HPE20154 Not a format referenceSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: A reference to anonymous formatdoes not exist. Make sure you are using the referencefor existing format.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20155 Not a GLOB referenceExplanation: Perl was trying to evaluate a referenceto a ″typeglob″ (that is, a symbol table entry that lookslike *foo), but found a reference to something else56 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 66. instead. You can use the ref() function to find out whatkind of ref it really was.Example: HPE20155 Not a GLOB referenceSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: See perlref for more information onreferences and try to correct the error.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20156 Not a HASH referenceExplanation: Perl was trying to evaluate a referenceto a hash value, but found a reference to somethingelse instead. You can use the ref() function to find outwhat kind of ref it really was.Example: HPE20156 Not a HASH referenceSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: You are trying to deference becauseyou think that the reference is a hash reference, which itis not. Use ref() to find the reference type and then tryusing it.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20157 Not an ARRAY referenceExplanation: Perl was trying to evaluate a referenceto an array value, but found a reference to somethingelse instead. You can use the ref() function to find outwhat kind of ref it really was.Example: HPE20157 Not an ARRAY referenceSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: You are trying to deference thinkingthat reference is an array reference but it is somethingelse. Use ref() to check the reference type and then tryusing it.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20158 Not a perl scriptExplanation: The setuid emulator requires that scriptshave a well-formed #! line even on machines that don’tsupport the #! construct. The line must mention perl.Example: HPE20158 Not a perl scriptSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that the #! construct ispresent and includes perl.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20159 Not a SCALAR referenceExplanation: Perl was trying to evaluate a referenceto a scalar value, but found a reference to somethingelse instead. You can use the ref() function to find outwhat kind of ref it really was.Example: HPE20159 Not a SCALAR referenceSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Chapter 6. Perl messages 57
  • 67. Operator response: No System Operator response isrequired.User response: You are trying to deference becauseyou think that the reference is scalar reference, which itis not. Use ref() to find the reference type and then tryusing it.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20160 Not a subroutine referenceExplanation: Perl was trying to evaluate a referenceto a code value (that is, a subroutine), but found areference to something else instead. You can use theref() function to find out what kind of ref it really was.Example: HPE20160 Not a subroutine referenceSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: You are trying to deference thinkingthat reference is subroutine but it is something else.Check the reference type using ref() and then try usingit.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20161 Not enough arguments for functionExplanation: The function requires more argumentsthan you specified.In the message text:functionFunction nameExample: HPE20161 Not enough arguments for TreeSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that the function indicatedby the error message has enough arguments.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20162 Null filename usedExplanation: You can’t require the full file name,because on many machines that means the currentdirectory.Example: HPE20162 Null filename usedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that the file name usedwith require is not a full file name. For more information,see perlfunc/require.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20163 Null picture in formlineExplanation: The first argument to formline must be avalid format picture specification. It was found to beempty, which probably means you specified anuninitialized value.Example: HPE20163 Null picture in formlineSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check the syntax for formline. For58 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 68. more information, see perlform.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20164 Offset outside stringExplanation: You tried to do a read/write/send/recvoperation with an offset pointing outside the buffer. Thesole exception to this is that sysread()ing past thebuffer will extend the buffer and zero pad the new area.Example: HPE20164 Offset outside stringSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: In the line number mentioned in theerror message, cross-check for read/write/send/recvoperation with buffer.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20165 Out of memory during ″large″ requestfor num bytes, total sbrk() is num bytesExplanation: The malloc() function returned 0,indicating there was insufficient remaining memory (orvirtual memory) to satisfy the request. However, therequest was judged large enough (compile-time defaultis 64K), so a possibility to shut down by trapping thiserror is granted.In the message text:numA number of bytes.Example: HPE20165 Out of memory during ″large″request for 134221824 bytes, total sbrk() is 64000 bytesSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: When you request for memory, makesure it does not exceed 64k bytes.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20166 Out of memory during request for numbytes, total sbrk() is num bytesExplanation: The malloc() function returned 0,indicating there was insufficient remaining memory (orvirtual memory) to satisfy the request.In the message text:numA number of bytes.Example: HPE20166 Out of memory during requestfor 1016 bytes, total sbrk() is 1000 bytesSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: The request was judged to be small,so the possibility to trap it depends on the way perl wascompiled. By default it is not trappable. However, ifcompiled for this, Perl may use the contents of $^M asan emergency pool after die()ing with this message. Inthis case the error is trappable once, and the errormessage will include the line and file where the failedrequest happened.System programmer response: No SystemProgrammer response is required.Problem determination: Error message will includethe line and file where the failed request happenedbased on this correct the allocation of memory.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.Chapter 6. Perl messages 59
  • 69. HPE20167 Out of memory during request for numbytes, total sbrk() is num bytes!Explanation: The malloc() function returned 0,indicating there was insufficient remaining memory (orvirtual memory) to satisfy the request.In the message text:numA number of bytes.Example: HPE20167 Out of memory during requestfor 1016 bytes, total sbrk() is 1000 bytesSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: The request was judged to be small,so the possibility to trap it depends on the way perl wascompiled. By default it is not trappable. However, ifcompiled for this, Perl may use the contents of $^M asan emergency pool after die()ing with this message. Inthis case the error is trappable I<once>, and the errormessage will include the line and file where the failedrequest happened.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20168 Out of memory during ridiculouslylarge requestExplanation: You can’t allocate more than2^31+″small amount″ bytes.Example: HPE20168 Out of memory duringridiculously large requestSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: In the line mentioned in the errormessage, check if there are any errors in the Perlprogram. For example, $arr[time] instead of$arr[$time].System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20169 pack/unpack repeat count overflowExplanation: You can’t specify a repeat count so largethat it overflows your signed integers.Example: HPE20169 pack/unpack repeat countoverflowSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: In the error line, change the repeatcount to an acceptable number. See perlfunc/pack .System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20170 panic: kid popen errno readExplanation: forked child returned anincomprehensible message about its errno. This is aninternal error that cannot be resolved by the user.Example: HPE20170 panic: kid popen errno readSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Go to the error line and determinewhether forking is happening properly.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).60 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 70. Automation: Not applicable.HPE20171 Can’t locate object method ″function″via package ″package″Explanation: You called a method correctly, and itcorrectly indicated a package functioning as a class, butthat package doesn’t define that particular method, nordoes any of its base classes.In the message text:functionThe function name.packageThe package name.Example: HPE20171 Can’t locate object method″func″ via package ″packa″System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check for the function definition in theparticular package given in the error message.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20172 Permission deniedExplanation: The setuid emulator in suidperl decidedyou were up to no good.Example: HPE20172 Permission deniedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check the file permissions for thesetuid emulator.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20173 ’P’ must have an explicit size inunpackExplanation: The unpack format P must have anexplicit size, not ″*″.Example: HPE20173 ’P’ must have an explicit size inunpackSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: When you use P in unpack, you mustspecify the exact length. For more information, seeperlfunc/unpack.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20174 -P not allowed for setuid/setgid scriptExplanation: The script would have to be opened bythe C preprocessor by name, which provides a racecondition that breaks security.Example: HPE20174 -P not allowed for setuid/setgidscriptSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use the -P option if you areusing setuid or setgid in script.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.Chapter 6. Perl messages 61
  • 71. HPE20175 POSIX getpgrp cannot take anargumentExplanation: Your system has POSIX getpgrp(), whichtakes no argument, unlike the BSD version, which takesa pid.Example: HPE20175 POSIX getpgrp can’t take anargumentSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use arguments with getpgrp().System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20176 Prototype not terminatedExplanation: You have omitted the closingparenthesis in a function prototype definition.Example: HPE20176 Prototype not terminatedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check the script to see whether youhave omitted the closing parenthesis in a functionprototype for any functions.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20177 Quantifier in {,} bigger than numExplanation: There is currently a limit to the size ofthe min and max values of the {min,max} construct. The<-- HERE shows in the regular expression about wherethe problem was discovered.In the message text:numnumber (here Quantifier max limit.)Example: HPE20177 Quantifier in {,} bigger than32766System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Quantifier (min and max) in {,} reqularexpression you have given is greater than limited value.Try providing less than the maximum value.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20178 Quantifier follows nothingExplanation: You started a regular expression with aquantifier. Backslash it if you meant it literally. The <--HERE shows in the regular expression about where theproblem was discovered. See perlref.Example: HPE20178 Quantifier follows nothingSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: If you use Quantifier, then it cannotbe empty. Check to see whether the regular expressionthat uses the quantifier is empty or not.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.62 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 72. HPE20179 Range iterator outside integer rangeExplanation: One (or both) of the numeric argumentsto the range operator ″..″ are outside the range whichcan be represented by integers internally. One possibleworkaround is to force Perl to use magical stringincrement by prepending ″0″ to your numbers.Example: HPE20179 Range iterator outside integerrangeSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that the arguments usedfor range operator is an integer.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20180 Reallocation too large: datasizeExplanation: You cannot allocate more than 64K onan MS-DOS machine.In the message text:datasizedata size.Example: HPE20180 Reallocation too large: 700000System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: If you are using MS-DOS, you cannotallocate more than 64K. Try to reduce the size of data.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20181 Recompile perl with -DDEBUGGING touse -D switch (did you mean -d ?)Explanation: You cannot use the -D ion unless thecode to produce the desired output is compiled intoPerl, which entails some overhead, which is why it iscurrently left out of your copy.Example: HPE20181 Recompile perl with-DDEBUGGING to use -D switch (did you mean -d ?)System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use the -D option because itrequires extra support.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20182 Recursive inheritance detected inpackage ’package’Explanation: More than 100 levels of inheritance wereused. Probably indicates an unintended loop in yourinheritance hierarchy.In the message text:packagePackage name.Example: HPE20182 Recursive inheritance detectedin package ’IN::PACKAGE″System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure you have not used morethan limited levels of inheritance in script.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Chapter 6. Perl messages 63
  • 73. Automation: Not applicable.HPE20183 Recursive inheritance detected whilelooking for method ’function’ inpackage ’package’Explanation: More than 100 levels of inheritance wereencountered while invoking a method.In the message text:functionFunction namepackagePackage nameExample: HPE20183 Recursive inheritance detectedwhile looking for method ’circle’ in package ’drawing’System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Probably indicates an unintendedloop in your inheritance hierarchy. Check the script tofind out if there is any looping in your inheritance.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20184 Script is not setuid/setgid in suidperlExplanation: The suidperl program was invoked on ascript without a setuid or setgid bit set.Example: HPE20184 Script is not setuid/setgid insuidperlSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check whether the setuid or setgid bitis set.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20185 Search pattern not terminatedExplanation: The lexer could not find the finaldelimiter of a // or m{} construct. Remember thatbracketing delimiters count nesting level. Missing theleading $ from a variable $m may cause this error.Example: HPE20185 Search pattern not terminatedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response:Example print "$X{What ho?}";Here perl sees the ? and interprets it as the beginningof a pattern match operator, similar to /.If you use ? then make sure you you escape it and use.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20186 select not implementedExplanation: This machine does not implement theselect() system call.Example: HPE20186 select not implementedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Machine may not have select call.Contact system administrator.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.64 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 74. Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20187 Self-ties of arrays and hashes are notsupportedExplanation: Self-ties of arrays and hashes are notsupported in the current implementation.Example: HPE20187 Self-ties of arrays and hashesare not supportedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Self-ties are of arrays and hashes arenot supported in the current implementation, so youcannot use it.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20188 Sequence (? incompleteExplanation: A regular expression ended with anincomplete extension ″(?″. The <-- HERE shows in theregular expression about where the problem wasdiscovered.Example: HPE20188 Sequence (? incompleteSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Regular expression is ending withincomplete Sequence (? , which leads to the error.Therefore, make sure you end the sequence.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20189 Sequence (code...) not recognizedExplanation: You used a regular expression extensionthat does not make sense. The <-- HERE shows in theregular expression about where the problem wasdiscovered.In the message text:codecodes(some character sequence in regularexpression.)Example: HPE20189 Sequence (?<;...) not recognizedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Regular expression has Sequence((?<; ...) , which is not recognized. This leads to error,and therefore you can not use such sequence.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20190 Sequence (?#... not terminatedExplanation: A regular expression comment must beterminated by a closing parenthesis. Embeddedparentheses are not allowed. The <-- HERE shows inthe regular expression about where the problem wasdiscovered.Example: HPE20190 Sequence (?#... not terminatedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Regular expression in whichSequence (?#... not terminated, which leads to error.Make sure you terminate it.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Chapter 6. Perl messages 65
  • 75. Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20191 Sequence (?code...) not implementedExplanation: A proposed regular expression extensionhas the character reserved but has not yet been written.The <-- HERE shows in the regular expression aboutwhere the problem was discovered.In the message text:codecodes (some character sequence in regularexpression.)Example: HPE20191 Sequence (?<...) notimplementedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Sequence (?<...) not implemented, soyou can not use it in a regular expression.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20192 Sequence (?{...}) not terminated or not{}-balancedExplanation: If the contents of a (?{...}) clausecontains braces, they must balance in order for Perl toproperly detect the end of the clause.Example: HPE20192 Sequence (?{...}) not terminatedor not {}-balancedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: In the regular expression pleasemake sure the brackets are balanced properly.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20193 setegid() not implementedExplanation: You tried to assign to $), and youroperating system doesn’t support the setegid() systemcall (or equivalent), or at least Configure didn’t think so.Example: HPE20193 setegid() not implementedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check whether your system supportsthe setegid() call.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20194 seteuid() not implementedExplanation: You tried to assign to < $> >, and youroperating system doesn’t support the seteuid() systemcall (or equivalent), or at least Configure didn’t think so.Example: HPE20194 seteuid() not implementedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check whether your system supportsthe seteuid() call.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.66 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 76. HPE20195 setpgrp can’t take argumentsExplanation: Your system has the setpgrp() from BSD4.2, which takes no arguments, unlike POSIX setpgid(),which takes a process ID and process group ID.Example: HPE20195 setpgrp can’t take argumentsSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that the setpgrp functioncall at the error line does not pass any argument.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20196 setrgid() not implementedExplanation: You tried to assign to value to $>, andyour operating system doesn’t support the setrgid()system call (or equivalent), or at least Configure didn’tthink so.Example: HPE20196 setrgid() not implementedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check whether your system supportssetrgid().System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20197 setruid() not implementedExplanation: You tried to assign to value $< , andyour operating system doesn’t support the setruid()system call (or equivalent), or at least Configure didn’tthink so.Example: HPE20197 setruid() not implementedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: The version of Perl that you are usingdoes not support setruid.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20198 Setuid/gid script is writable by worldExplanation: The setuid emulator won’t run a scriptthat is writable by the world, because the world mighthave written on it already.Example: HPE20198 Setuid/gid script is writable byworldSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: The file name you mention withrequire should be within quotes.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20199 <> should be quotesExplanation: You wrote require file when youshould have written require ’file’ .Example: HPE20199 <> should be quotesSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.Chapter 6. Perl messages 67
  • 77. User response: The file name you mention withrequire should be within quotes.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20200 Your random numbers are not thatrandomExplanation: When trying to initialize the random seedfor hashes, Perl could not get any randomness out ofyour system.Example: HPE20200 Your random numbers are notthat randomSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Because Perl could not get anyrandomness out of your system, this indicates thatsomething is wrong. Check the hash syntax.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20201 You need to quote functionExplanation: You assigned a bareword as a signalhandler name. Unfortunately, you already have asubroutine of that name declared, which means thatPerl 5 will try to call the subroutine when theassignment is executed, which is probably not what youwant.In the message text:functionThe function name Example: packExample: HPE20201 You need to quote ″pack″System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: If it is what you want, put an & infront.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code:Automation: Not applicable.HPE20202 YOU HAVEN’T DISABLED SET-IDSCRIPTS IN THE KERNEL YET! FIXYOUR KERNEL, OR PUT A CWRAPPER AROUND THIS SCRIPT!Explanation: You may not be able to disable set-idscripts in the kernel because you may not have thesources to your kernel.Example: HPE20202 YOU HAVEN’T DISABLEDSET-ID SCRIPTS IN THE KERNEL YET!n FIX YOURKERNEL, OR PUT A C WRAPPER AROUND THISSCRIPT!nSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Either fix the kernel or put a Cwrapper around the script.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20203 ’x’ outside of string in unpackExplanation: You had a pack template that specified arelative position after the end of the string beingunpacked. See perlfunc/pack.Example: HPE20203 ’x’ outside of string in unpackSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.68 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 78. Operator response: No System Operator response isrequired.User response: Correct the template by providing theposition inside the string.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20204 ’X’ outside of string in unpackExplanation: You had a (un)pack template thatspecified a relative position before the beginning of thestring being (un)packed. See perlfunc/pack.Example: HPE20204 ’X’ outside of string in unpackSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Correct the template by providing theposition inside the string.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20205 ’@’ outside of string in unpackExplanation: You had a template that specified anabsolute position outside the string being unpacked. Formore information, see perlfunc/unpack.Example: HPE20205 ’@’ outside of string in unpackSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Correct the template by providing theposition inside the string.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20206 Within []-length ’*’ not allowed infunctionExplanation: The count in the (un)pack template maybe replaced by [TEMPLATE] only if TEMPLATE alwaysmatches the same amount of packed bytes that can bedetermined from the template alone. This is not possibleif it contains * -length.In the message text:functionThe function will be pack or unpack.Example: HPE20206 Within []-length ’*’ not allowed inpackSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Correct the template by removing *from the template.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20207 Within []-length ’code’ not allowed infunctionExplanation: The count in the (un)pack template maybe replaced by [TEMPLATE] only if TEMPLATE alwaysmatches the same amount of packed bytes that can bedetermined from the template alone. This is not possibleif it contains any of the xphs @, /, U, u, w or a *-length.In the message text:functionThe function will be pack or unpack.codeThe codes will be one of these @, /, U, u, w or a *.Chapter 6. Perl messages 69
  • 79. Example: HPE20207 Within []-length ’/’ not allowed inpackSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: If the following codes are present inthe template, remove them: @, /, U, u, w or a *-,System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20208 Wide character in functionExplanation: Perl encountered a wide character(greater than 255) when it wasn’t expecting one. Thiswarning is on by default for functions. For moreinformation, see perlfunc/binmode and perlfunc/open.In the message text:functionThe function name.Example: HPE20208 Wide character in printSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: The easiest way to turn off thewarning is to add the :utf8 layer to the output, binmodeSTDOUT, ’:utf8’. Another way is to add no warnings’utf8’; but this is not often recommended. In general,you should explicitly mark the filehandle with anencoding.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20209 Wide characterExplanation: Perl encountered a wide character(>255) when it wasn’t expecting one. For moreinformation, see perlfunc/binmode and perlfunc/open.Example: HPE20209 Wide characterSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: The easiest way to turn off thiswarning is to add the :utf8 layer to the output, binmodeSTDOUT, ’:utf8’. Another way is to add no warnings’utf8’; but this is not often recommended. In general,you should explicitly mark the filehandle with anencoding.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20210 Wide character in $/Explanation: Perl encountered a wide character(greater than 255) when it wasn’t expecting one. Formore information, see perlfunc/binmode andperlfunc/open.Example: HPE20210 Wide character in $/System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: The easiest way to turn off thiswarning is to add the :utf8 layer to the output, binmodeSTDOUT, ’:utf8’. Another way is to add no warnings’utf8’; but this is not often recommended. In general,you should explicitly mark the filehandle with anencoding.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).70 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 80. Automation: Not applicable.HPE20211 Warning: Use of ″op″ withoutparentheses is ambiguousExplanation: You wrote a unary operator followed bysomething that looks like a binary operator that couldalso have been interpreted as a term or unary operator.In the message text:op operator.Example: HPE20211 Use of ″rand″ withoutparentheses is ambiguousSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Use parentheses as appropriate. Forinstance, if you know that the rand function has adefault argument of 1.0, and you write rand + 5;youmay think that you wrote the same thing as rand() + 5.However, you got rand(+5). Using parenthese wouldhave prevented that situation.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: S- A severe warning (default).Automation: Not applicable.HPE20212 Warning: something’s wrongExplanation: You passed warn() an empty string (theequivalent of warn "") or you called it with no args and$_ was emptyExample: HPE20212 Warning: something’s wrongSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Provide the warn function witharguments.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20213 Version number must be constantnumberExplanation: The attempt to translate a use Modulen.n LIST statement into its equivalent BEGIN blockfound an internal inconsistency with the version number.This is an internal error that cannot be resolved by theuser.Example: HPE20213 Version number must beconstant numberSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20214 Variable ″var″ will not stay sharedExplanation: An inner (nested) named subroutine isreferencing a lexical variable defined in an outersubroutine. When the inner subroutine is called, it willprobably see the value of the outer subroutine’s variableas it was before and during the *first* call to the outersubroutine. In this case, after the first call to the outersubroutine is complete, the inner and outer subroutineswill no longer share a common value for the variable. Inother words, the variable will no longer beshared.Furthermore, if the outer subroutine isanonymous and references a lexical variable outsideitself, then the outer and inner subroutineswill nevershare the given variable.In the message text:var The variable name.Example: HPE20214 Variable ″a″ will not stay sharedSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.Chapter 6. Perl messages 71
  • 81. User response: Make the inner subroutineanonymous, using the sub {} syntax. When inneranonymous subs that reference variables in outersubroutines are called or referenced, they areautomatically rebound to the current values of suchvariables.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20215 Variable ″var″ may be unavailableExplanation: An inner (nested) anonymous subroutineis inside a named subroutine, and outside that isanother subroutine; and the anonymous (innermost)subroutine is referencing a lexical variable defined in theoutermost subroutine.In the message text:var The variable name.Example: HPE20215 Variable ″v″ may be unavailableSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Make the middle subroutineanonymous, using the sub {} syntax. Perl has specificsupport for shared variables in nested anonymoussubroutines; a named subroutine in between interfereswith this feature.System programmer response: No SystemProgrammer response is required.Problem determination: sub outermost { my $a; submiddle { sub { $a } } } If the anonymous subroutineis called or referenced (directly or indirectly) from theoutermost subroutine, it will share the variable as youwould expect. But if the anonymous subroutine is calledor referenced when the outermost subroutine is notactive, it will see the value of the shared variable as itwas before and during the *first* call to the outermostsubroutine, which is probably not what you want.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20216 Can’t locate object method ″method″via package ″pkg″ (perhaps you forgotto load ″pkg″?)″Explanation: You called a method correctly, and itcorrectly indicated a package functioning as a class, butthat package doesn’t define that particular method, andneither does any of its base classes. For moreinformation, see perlobj.In the message text:methodThe method name.pkgThe package name.Example: HPE20216 Can’t locate object method″hello″ via package ″foo″ (perhaps you forgot to load″foo″?)″System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check whether the method is definedin this package. If the method isn’t defined, use thecorrect package.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20217 ″keyword″ variable var masks earlierdeclaration in same strExplanation: A ″my″ or ″our″ variable has beenredeclared in the current scope or statement, effectivelyeliminating all access to the previous instance.In the message text:k The Keyword will be my or our.var The variable name.str The string will be scope or statment.Example: HPE20217 ″my″ variable ab masks earlierdeclaration in same scopeSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.72 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 82. User response: Check to be sure that the earliervariable will still exist until the end of the scope or untilall closure referents to it are destroyed.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20218 Variable length lookbehind notimplementedExplanation: Lookbehind is allowed only forsubexpressions whose length is fixed and known atcompile time. For more information, see perlre.Example: HPE20218 Variable length lookbehind notimplementedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Use fixed length for lookbehind In thesubexpression.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20219 Lookbehind longer than ″length″ notimplementedExplanation: There is a limit on the length of stringthat lookbehind can handle.In the message text:lengthThe maximum length of the string.Example: HPE20219 Lookbehind longer than ″255″not implementedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Provide the length of the string withthe maximum limit.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20220 Unknown switch condition (?(strExplanation: The condition part of a(?(condition)if-clause″else-clause) construct is notknown. The condition may be lookahead or lookbehind(the condition is true if the lookahead or lookbehind istrue), a (?{...}) construct (the condition is true if the xphevaluates to a true value), or a number (the condition istrue if the set of capturing parentheses named by thenumber matched).In the message text:str The condition part (?(condition)if-clause″else-clause) of string.Example: HPE20220 Unknown switch condition (?(x)in regexSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: In the regex, correct the(?(condition)if-clause″else-clause) construct with propercondition. For more information, see perlre.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20221 Unmatched (Explanation: Unbackslashed parentheses mustalways be balanced in regular expressions. For moreinformation, see perlre.Chapter 6. Perl messages 73
  • 83. Example: HPE20221 Unmatched (System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Balance the regular expression withthe correct number of parentheses.System programmer response: No SystemProgrammer response is required.Problem determination: If you’re a vi user, the % keyis valuable for finding the matching parenthesis.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20222 Unmatched )Explanation: Unbackslashed parentheses mustalways be balanced in regular expressions. For moreinformation, see perlre.Example: HPE20222 Unmatched )System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Balance the regular expression withthe correct number of parentheses.System programmer response: No SystemProgrammer response is required.Problem determination: If you’re a vi user, the % keyis valuable for finding the matching parenthesis.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20223 Can’t do {n,m} with n > mExplanation: Minima must be less than or equal tomaxima. For more information, see perlre.Example: HPE20223 Can’t do {n,m} with n > mSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Correct the regular expression withthe minima and maxima properly defined.System programmer response: No SystemProgrammer response is required.Problem determination: If you want your regexp tomatch something 0 times, just put {0}.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20224 Regexp *+ operand could be emptyExplanation: The part of the regexp subject to eitherthe * or + quantifier could match an empty stringExample: HPE20224 Regexp *+ operand could beemptySystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Correct the regexp.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20225 Nested quantifiersExplanation: You can’t quantify a quantifier withoutintervening parentheses. Things like ** or +* or ?* areillegal. Note that the minimal matching quantifiers,C<*?>, C<+?>, and C appear to be nested quantifiers,but aren’t. For more information, see perlre.Example: HPE20225 Nested quantifiersSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Put parentheses between thequantifiers.System programmer response: No SystemProgrammer response is required.74 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 84. Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20226 Unmatched [Explanation: The brackets around a character classmust match. For more information, see perlre.Example: HPE20226 Unmatched [System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Correct the regex by matching thebrackets. If you want to include a closing bracket in acharacter class, backslash it or put it first.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20227 Internal urpExplanation: Something went awry in the regularexpression parser. This is an internal error occurred thatcannot be resolved by the user.Example: HPE20227 Internal urpSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: Trappable errors may betrapped using the eval operatorSource: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20228 Missing right brace on char{}Explanation: Missing right brace in p{...} orP{...}.In the message text:charThe char will be p or P.Example: HPE20228 Missing right brace on p{}System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Provide the missing right brace.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20229 Missing right brace on x{}Explanation: A right brace is missing in the x{}.Example: HPE20229 Missing right brace on x{}System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Provide the right brace.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.Chapter 6. Perl messages 75
  • 85. HPE20230 /str/ should probably be written as ″str″Explanation: You used a pattern where Perl expectedto find a string, as in the first argument to join. Perl willtreat the true or false result of matching the patternagainst $_ as the string, which may not be what youhad in mind.In the message text:str Any string.Example: HPE20230 /hello/ should probably bewritten as ″hello″System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Provide the argument as stringinstead of a pattern.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20231 sort is now a reserved wordExplanation: Before sort was a keyword, peoplesometimes used it as a filehandle.Example: HPE20231 sort is now a reserved wordSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: If you are using sort as a filehandle orsomething else, change it.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20232 Sort subroutine didn’t return a numericvalueExplanation: A sort comparison routine must return anumber. For more information, see perlfunc/sort.Example: HPE20232 Sort subroutine didn’t return anumeric valueSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Use <=> or cmp in sort to return anumetric value.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20233 Sort subroutine didn’t return singlevalueExplanation: A sort comparison subroutine cannotreturn a list value with more or less than one element.For more information, see perlfunc/sort.Example: HPE20233 Sort subroutine didn’t returnsingle valueSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Provide the proper number ofelements.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.76 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 86. HPE20234 Substitution pattern not terminatedExplanation: The lexer couldn’t find the interiordelimiter of an s/// or s{}{} construct. Remember thatbracketing delimiters count nesting level. Missing theleading $ from variable $s may cause this errorExample: HPE20234 Substitution pattern notterminatedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Correct the substitution with a interiordelimiter, so that the pattern is properly terminated.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20235 Substitution replacement notterminatedExplanation: The lexer couldn’t find the final delimiterof an s/// or s{}{} construct. Remember that bracketingdelimiters count nesting level. Missing the leading $from variable $s may cause this error.Example: HPE20235 Substitution replacement notterminatedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Correct the substitution with a finaldelimiter, so that the pattern is properly terminated.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20236 Switch (?(condition)... contains toomany branchesExplanation: A (?(condition)if-clause″else-clause)construct can have at most two branches (the if-clauseand the else-clause). For more information, see perlre.Example: HPE20236 Switch (?(condition)... containstoo many branchesSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: If you want one or both to containalternation, such as using this"that"other, enclose it inclustering parentheses:(?(condition)(?:this″that″other)″else-clause)System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20237 Switch condition not recognizedExplanation: If the argument to the(?(...)if-clause″else-clause) construct is a number, it canbe only a number. For more information, see perlre.Example: HPE20237 Switch condition not recognizedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Correct the construct by providing anumber as a argument.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.Chapter 6. Perl messages 77
  • 87. HPE20238 switching effective uid is notimplementedExplanation: While under the use filetest pragma,we cannot switch the real and effective UIDs or GIDs.Example: HPE20238 switching effective uid is notimplementedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not attempt to switch the effectiveUID.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20239 switching effective gid is notimplementedExplanation: While under the use filetest pragma,we cannot switch the real and effective UIDs or GIDs.Example: HPE20239 switching effective gid is notimplementedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not attempt to switch the effectiveGID.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20241 filename syntax OKExplanation: The syntax of this particular file is fine. Itis displayed when you use it as perl -c filenameExample: HPE20241 test.pl syntax OKSystem action: It will compile the perl file and checkfor syntax.Operator response: No System Operator response isrequired.User response: If you see this message, you canassume that the syntax of the file is correct. You can goahead and execute it.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code:Automation: Not applicable.HPE20242 syntax errorExplanation: Probably means you had a syntax error.Common reasons include: keyword is misspelled,semicolon is missing, comma is missing, an opening orclosing parenthesis is missing, an opening or closingbrace is missing, a closing quote is missing.Example: HPE20242 syntax errorSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check the syntax and correct it.System programmer response: No SystemProgrammer response is required.Problem determination: The only way to figure outwhat’s triggering the error is to call perl -c repeatedly,deleting half the program each time to see if the errorgoes away.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.78 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 88. HPE20243 System V IPC is not implemented onthis machineExplanation: The System V interprocesscommunication mechanisms like semaphores, messagequeues and shared memory, are not implemented onyour machine.Example: HPE20243 System V IPC is notimplemented on this machineSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use functions related toSystem V IPC.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20244 System V msgxxx is not implementedon this machineExplanation: System V msgrcv, msgctl and otherfunctions are not implemented on your machine.Example: HPE20244 System V msgxxx is notimplemented on this machineSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use the message queuefunctions provided by System V.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20245 System V semxxx is not implementedon this machineExplanation: System V semget, semctl and otherfunctions are not implemented on your machine.Example: HPE20245 System V semxxx is notimplemented on this machineSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use the semaphore functionsprovided by System V.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20246 -T and -B not implemented onfilehandlesExplanation: Perl can’t peek at the stdio buffer offilehandles when it doesn’t know about your kind ofstdio. You’ll have to use a filename instead.Example: HPE20246 -T and -B not implemented onfilehandlesSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Use -T and -B on filename instead offilehandleSystem programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.Chapter 6. Perl messages 79
  • 89. HPE20247 Target of goto is too deeply nestedExplanation: You tried to use goto to reach a labelthat was too deeply nested for Perl to reach.Example: HPE20247 Target of goto is too deeplynestedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Avoid using a deeply nested goto, sothat Perl can easily resolve it.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20248 That use of $[ is unsupportedExplanation: Assignment to $[ is now strictlycircumscribed, and interpreted as a compilerdirective.This is to prevent the problem of one modulechanging the array base out from under another moduleinadvertently. For more information, see perlvar/$[.Example: HPE20248 That use of $[ is unsupportedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: You can say only one of $[ = 0; $[ =1; ... local $[ = 0; local $[ = 1; ...System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20249 The crypt() function is unimplementeddue to excessive paranoia.Explanation: Configure couldn’t find the crypt()function on your machine, probably because yourvendor didn’t supply it.Example: HPE20249 The crypt() function isunimplemented due to excessive paranoia.System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use the crypt() function if it isnot implemented on your machine.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20250 The stat preceding -l _ wasn’t an lstatExplanation: It does not make sense to test thecurrent stat buffer for symbolic linkhood if the last statthat wrote to the stat buffer already went past thesymlink to get to the real file.Example: HPE20250 The stat preceding -l _ wasn’t anlstatSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Use an actual file name instead.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.80 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 90. HPE20251 The stat preceding lstat() wasn’t anlstatExplanation: It does not make sense to test thecurrent stat buffer for symbolic linkhood if the last statthat wrote to the stat buffer already went past thesymlink to get to the real file.Example: HPE20251 The stat preceding lstat() wasn’tan lstatSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Use an actual file name instead.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20252 The ’unique’ attribute may only beapplied to ’our’ variablesExplanation: Currently this attribute is not supportedon my or sub declarations. For more information, seeperlfunc/our.Example: HPE20252 The ’unique’ attribute may onlybe applied to ’our’ variablesSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use the ’unique’ attribute onmy and sub. Use it only on our.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20254 thread failed to start:strExplanation: The entry point function ofthreads->create() failed for some reasonIn the message text:str The str explains the reason, as why the threadfailed to start.Example: HPE20254 thread failed to start: Usage:Thread::Signal::_threadpid()System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Use this particular function in theformat as specified in the Usage part of the error.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20255 times not implementedExplanation: Your version of the C library apparentlydoesn’t do times()Example: HPE20255 times not implementedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Don’t use the times function.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.Chapter 6. Perl messages 81
  • 91. HPE20256 Too deeply nested ()-groups in functionExplanation: Your pack or unpack template contains()-groups with a very deep nesting level.In the message text:functionThe function will be pack or unpack.Example: HPE20256 Too deeply nested ()-groups in%sSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Correct the template with propernesting.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20257 Too few args to syscallExplanation: There has to be at least one argumentto syscall() to specify the system call to call.Example: HPE20257 Too few args to syscallSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Provide the proper number ofarguments to syscall().System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20258 Too many args to syscalExplanation: Perl supports a maximum of 14arguments to syscall().Example: HPE20258 Too many args to syscalSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Limit the number of arguments to 14to syscall().System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20259 Too many arguments for functionExplanation: The function requires fewer argumentsthan you specified.In the message text:functionThe function name.Example: HPE20259 Too many arguments for packSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check the limit of arguments for thefunction and provide only that number of arguments.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.82 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 92. HPE20260 Transliteration pattern not terminatedExplanation: The lexer couldn’t find the interiordelimiter of a tr/// or tr[][] or y/// or y[][] construct.Example: HPE20260 Transliteration pattern notterminatedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Correct the tranliteration by providingcorrect interior delimiter.System programmer response: No SystemProgrammer response is required.Problem determination: Missing the leading $ fromvariables $tr or $y may cause this error.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20261 Transliteration replacement notterminatedExplanation: The lexer couldn’t find the final delimiterof a tr///, tr[][], y/// or y[][] construct.Example: HPE20261 Transliteration replacement notterminatedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Correct the transliteration by providingthe final delimiter.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20262 ’descriptor’ trapped by operation maskExplanation: You tried to use an operator from a Safecompartment in which it’s disallowed. For moreinformation, see Safe.In the message text:descriptoropcode descriptor.Example: HPE20262 ’pushmark’ trapped by operationmaskSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Avoid using an operator in the SafeCompartment.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20263 truncate not implementedExplanation: Your machine doesn’t implement a filetruncation mechanism that Configure knows about.Example: HPE20263 truncate not implementedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use the truncate function.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.Chapter 6. Perl messages 83
  • 93. HPE20264 Type of arg num to function must be var(not descriptor)Explanation: This function requires the argument inthat position to be of a certain type. Arrays must be@NAME or @{EXPR}. Hashes must be %NAME or%{EXPR}. For more information, see perlref.In the message text:numArgument PositionfunctionAny function which takes array or hash asargument.var A var will be a hash or an array.descriptorOpcode DescriptorExample: HPE20264 Type of arg 1 to push must bearray (not scalar dereference)System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: No implicit dereferencing isallowed--use the {EXPR} forms as an explicitdereference.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20265 umask not implementedExplanation: Your machine doesn’t implement theumask function and you tried to use it to restrictpermissions for yourself (EXPR & 0700).Example: HPE20265 umask not implementedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use the umask function.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20266 Unable to create sub named ″sub″Explanation: You attempted to create or access asubroutine with an illegal name.In the message text:subThe subroutine name.Example: HPE20266 Unable to create sub named″$foo″System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check the name of the subroutineand correct it.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20267 Undefined format ″str″calledExplanation: The format indicated doesn’t seem toexist. For more information, see perlform.In the message text:str The illegal format.Example: HPE20267 Undefined format ″STDOUT″calledSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Correct the format with the correctfield definitions.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.84 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 94. Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20268 Undefined sort subroutine ″sub″ calledExplanation: The sort comparison routine specifieddoesn’t seem to exist. For more information, seeperlfunc/sort.In the message text:subA SubroutineExample: HPE20268 Undefined sort subroutine″main::langcmp″ calledSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Correct the way that the sortsubroutine was defined.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20269 Undefined subroutine &″sub″ calledExplanation: The subroutine indicated hasn’t beendefined, or if it was, it has since been undefinedIn the message text:subThe subroutine name.Example: HPE20269 Undefined subroutine&main::max calledSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Provide the definition for thesubroutine.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20270 Undefined subroutine calledExplanation: The anonymous subroutine you’re tryingto call hasn’t been defined, or if it was, it has sincebeen undefined.Example: HPE20270 Undefined subroutine calledSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Provide the definition for thesubroutine.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20271 Undefined subroutine in sortExplanation: The sort comparison routine specified isdeclared but doesn’t seem to have been defined yet.For more information, see perlfunc/sort.Example: HPE20271 Undefined subroutine in sortSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Provide the definition for the declaredsort subroutine.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Chapter 6. Perl messages 85
  • 95. Automation: Not applicable.HPE20272 Undefined top format ″str″ calledExplanation: The format indicated doesn’t seem toexist. For more information, see perlform.In the message text:str The illegal top format.Example: HPE20272 Undefined top format″STDOUT_TOP″ calledSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Correct the top format.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20273 Unknown BYTEORDERExplanation: There are no byte-swapping functions fora machine with this byte order.Example: HPE20273 Unknown BYTEORDERSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Don’t use byte orders other than LittleEndian and Big Endian.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20274 Unknown open() mode ’mode’Explanation: The second argument of 3-argumentopen() is not among the list of valid modes: < , > ,>> , +< , +> , +>> , -" , "- , <& , < >& .In the message text:modeInvalid modeExample: HPE20274 Unknown open() mode ’<<-’System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Provide the correct file openingmodes as specified.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20275 Bad name after sym strExplanation: You started to name a symbol by usinga package prefix, and then didn’t finish the symbol.In the message text:symThe symbol name.str The str may be ″ ’ ″ or ″::″ .Example: HPE20275 Bad name after mypack::System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: You cannot interpolate outside ofquotes, so $var = ’myvar’; $sym = mypack::$var; is notthe same as $var = ’myvar’; $sym = ″mypack::$var″; Ifyou want to name a symbol with a package prefix, itshould be in ″ ″.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.86 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 96. Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20276 Bareword ″str″ not allowed while ″strictsubs″ in useExplanation: With ″strict subs″ in use, a bareword isonly allowed as a subroutine identifier, in curly bracketsor to the left of the ″=>″ symbol.In the message text:str The string is bareword.Example: HPE20276 Bareword ″foo″ not allowedwhile ″strict subs″ in useSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Avoid using bareword when usingstrict subs.You need to predeclare a subroutine if thebareword is subroutine name.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20277 Can’t find Unicode property definition″str″Explanation: The Unicode property you used is notamong the list of Unicode properties.In the message text:str The definition of unicode property.Example: HPE20277 Can’t find Unicode propertydefinition ″Ltter″System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: If you did mean to use a Unicodeproperty, refer to perlunicode for the list of knownproperties. If you didn’t mean to use a Unicode property,escape the p, either by p (just the p) or by Qp (therest of the string, until possible E).System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20278 Can’t locate object method ″method″via package ″pkg″Explanation: You called a method correctly, and itcorrectly indicated a package functioning as a class, butthat package doesn’t define that particular method, nordoes any of its base classes. For more information, seeperlobj.In the message text:methodThe method name.pkgThe package name.Example: HPE20278 Can’t locate object method″hello″ via package ″foo″System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check whether the method is definedin this package. If it is not, then use the correctpackage.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20279 Can’t return array to lvalue scalarcontextExplanation: You tried to return a complete array froman lvalue subroutine, but you called the subroutine in away that made Perl think you meant to return only onevalue.Example: HPE20279 Can’t return array to lvaluescalar contextSystem action: Perl immediately stops interpreting theChapter 6. Perl messages 87
  • 97. file (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: You probably meant to writeparentheses around the call to the subroutine, which tellPerl that the call should be in list context.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20280 Can’t return hash to lvalue scalarcontextExplanation: You tried to return a complete hash froman lvalue subroutine, but you called the subroutine in away that made Perl think you meant to return only onevalue.Example: HPE20280 Can’t return hash to lvaluescalar contextSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: You probably meant to includeparentheses around the call to the subroutine, whichtells Perl that the call should be in list context.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20281 goto must have labelExplanation: Unlike with ″next″ or ″last″, you’re notallowed to goto an unspecified destination. For moreinformation, see perlfunc/goto.Example: HPE20281 goto must have labelSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Provide the proper label for goto.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20282 Identifier too longExplanation: Perl limits identifiers (names of thingssuch as variables and functions) to about 250characters for simple names, and somewhat more forcompound names (like $A::B). You’ve exceeded Perl’slimits.Example: HPE20282 Identifier too longSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Check whether your identifier is morethan 250 characters. If it is, then reduce the number ofcharacters so that it meets the limits.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20283 Illegal binary digit ’num’Explanation: You used a digit other than 0 or 1 in abinary number.In the message text:numIt can be any other digit than 0 or 1.Example: HPE20283 Illegal binary digit ’2’System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.88 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 98. User response: For binary numbers, use 0 or 1.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20284 Illegal binary digit ’num’ ignoredExplanation: You may have tried to use a digit otherthan 0 or 1 in a binary number. Interpretation of thebinary number stopped before the offending digit.In the message text:numIt may be any other digit than 0 or 1.Example: HPE20284 Illegal binary digit ’3’ ignoredSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: For binary numbers, use 0 or 1.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20285 Illegal character char(carriage return)Explanation: Perl normally treats carriage returns inthe program text as it would any other white space,which means you should never see this error when Perlwas built using standard options.In the message text:charThe char is octal value of carriage return.Example: HPE20285 Illegal character 015(carriagereturn)System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Your version of Perl appears to havebeen built without this support. Talk to your Perladministrator.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20286 Illegal octal digit ’digit’ ignoredExplanation: You may have tried to use an 8 or 9 inan octal number. Interpretation of the octal numberstopped before the 8 or 9.In the message text:digitThe digit will be 8 or 9.Example: HPE20286 Illegal octal digit ’8’ ignoredSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Do not use use 8 or 9 digit in an octalnumberSystem programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20287 Illegal octal digit ’digit’Explanation: You used an 8 or 9 in an octal number.In the message text:digitThe digit will be 8 or 9.Example: HPE20287 Illegal octal digit ’9’System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Chapter 6. Perl messages 89
  • 99. Operator response: No System Operator response isrequired.User response: Do not use a 8 or 9 digit in an octalnumber.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20288 Invalid type ’char’ in functionExplanation: The given character is not a valid packor unpack type. For more information, seeperlfunc/pack.In the message text:charAny invalid character.functionThe function will be pack or unpack.Example: HPE20288 Invalid type ’z’ in packSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use characters that are notvalid when using the pack or unpack function.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20289 Invalid type ’,’ in functionExplanation: The ’,’ is not a valid pack or unpack typebut used to be ignored.In the message text:funtionThe function will be pack or unpack.Example: HPE20289 Invalid type ’,’ in pack.System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Remove the ’,’ in the pack or unpackfunction.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20290 Invalid type ’char’ in unpackExplanation: The given character is not a validunpack type. For more information, see perlfunc/pack.In the message text:charAny invalid character.Example: HPE20290 Invalid type ’k’ in unpackSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Use a valid character for the unpacktype.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20291 Invalid type ’char’ in packExplanation: The given character is not a valid packtype. For more information, see perlfunc/pack.In the message text:characterAny invalid character.Example: HPE20291 Invalid type ’m’ in packSystem action: Perl immediately stops interpreting the90 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 100. file (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Use a valid character in pack.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20292 BEGIN not safe aftererrors--compilation abortedExplanation: Perl found a BEGIN {} subroutine (or ause directive, which implies a BEGIN {}) after one ormore compilation errors had already occurred. Since theintended environment for the BEGIN {} could not beguaranteed (due to the errors), and since subsequentcode likely depends on its correct operation, Perlstopped compiling.Example: HPE20292 BEGIN not safe aftererrors--compilation abortedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Remove the compilation errors andthen run the script again.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20293 Socket::function not implemented onthis architectureExplanation: This socket function is not available onyour machine.In the message text:functionThe function will be pack_sockaddr_un orunpack_sockaddr_un.Example: HPE20293 Socket::pack_sockaddr_un notimplemented on this architectureSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use the socket function.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20294 leaving effective uid failedExplanation: While under the use filetest pragma,switching the real and effective UIDs failed.Example: HPE20294 leaving effective uid failedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not switch the real and effectiveUIDs.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20295 leaving effective gid failedExplanation: While under the use filetest pragma,switching the real and effective GIDs failed.Example: HPE20295 leaving effective gid failedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not switch real and effective GIDs.System programmer response: No SystemChapter 6. Perl messages 91
  • 101. Programmer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20296 Malformed integer in [] in functionExplanation: Only digits are permitted between thebrackets enclosing a numeric repeat count. For moreinformation, see perlfunc/pack.Example: HPE20296 Malformed integer in [] in packSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Use only numeric count.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20298 Number too longExplanation: Perl limits the representation of decimalnumbers in programs to about 250 characters. You’veexceeded that length.Example: HPE20298 Number too longSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Try using scientific notation: "1e6"instead of "1_000_000".System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20299 Operation `str1’: no method found,str2argument str3str4str5str6Explanation: An attempt was made to perform anoverloaded operation for which no handler was defined.While some handlers can be autogenerated in terms ofother handlers, there is no default handler for anyoperation, unless the fallback overloading key isspecified to be true. For more information, see overload.In the message text:str1The operation.str2The str2 may be ″ ″ or ″left ″.str3The str3 may be ″in overloaded package″ or ″hasno overloaded magic″.str4The str4 is empty or package name.str5The str5 may be ″ ″ or ’right argument has nooverloaded magic magic″ or ″right argument inoverloaded package″.str6The str6 is empty or package name.Example: HPE20299 Operation `cmp’: no methodfound, left argument in overloaded packageGraph::Edge, right argument in overloaded packageGraph::EdgeSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Define the handler for the overloadedfunction.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.92 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 102. HPE20300 Empty char{}Explanation: p and P are used to introduce anamed Unicode property. You used p or P in a regularexpression without specifying the property name.In the message text:charThe character p or P.Example: HPE20300 Empty p{}System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Provide a Unicode property in theregex like p{Letter}. Do not keep it empty.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20301 Reference to nonexistent groupExplanation: You used something like 7 in yourregular expression, but there are not at least seven setsof capturing parentheses in the expression. If youwanted to have the character with value 7 inserted intothe regular expression, prepend a zero to make thenumber at least two digits: 07.Example: HPE20301 Reference to nonexistent groupSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Correct the regular expression withthe existing group.System programmer response: No SystemProgrammer response is required.Problem determination: Trappable errors may betrapped using the eval operator.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20302 Internal disasterExplanation: Something went wrong in the regularexpression parser.This is an internal error that cannotbe resolved by the user.Example: HPE20302 Internal disasterSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Because Perl is not able to determinethe regular expression, you should verify the regularexpression and rewrite it.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20303 Variable ″var″ is not importedExplanation: While ″use strict″ was in effect, youreferred to a global variable that you apparently thoughtwas imported from another module, because somethingelse of the same name (usually a subroutine) isexported by that module. It usually means you put thewrong funny character on the front of your variable.In the message text:var The variable name.Example: HPE20303 Variable ″@a″ is not importedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Use unique variable names. Toprevent ambuguity errors, do not use duplicate variablenames in the same module even if you are importingfrom another module.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Chapter 6. Perl messages 93
  • 103. Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20304 (Did you mean &sub instead?)Explanation: You probably referred to an importedsubroutine &FOO as $FOO or some such.In the message text:subThe subroutine name.Example: HPE20304 (Did you mean $FOO instead?)System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Use & when you are referring to asubroutine.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20305 Had to create sym unexpectedlyExplanation: A routine asked for a symbol from asymbol table; however, the symbol was not defined inthe table so it had to be created on an emergency basisto prevent a core dump.In the message text:symThe symbol.Example: HPE20305 Had to create len unexpectedlySystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Define the symbol.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: S- A severe warning (default).Automation: Not applicable.HPE20307 Value of construct can be ″0″; test withdefined()Explanation: In a conditional expression, you usedHANDLE, <*> (glob),each(), or readdir() as a booleanvalue. Each of these constructs can return a value of″0″, which would make the conditional expression false.That is probably not what you intended.In the message text:constructThe Construct.Example: HPE20307 Value of HANDLE can be ″0″; testwith defined()System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: When using these constructs inconditional expressions, test their values with thedefined operator.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20309 Eval-group in insecure regularexpressionExplanation: Perl detected tainted data when trying tocompile a regular expression that contains the (?{ ...}) zero-width assertion, which is not safe. See perlreand perlsec for more information.Example: HPE20309 Eval-group in insecure regularexpressionSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Use a secure regular expression.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.94 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 104. Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20310 Junk on end of regexpExplanation: The regular expression parser isconfused.This is an internal error that cannot beresolved by the user.Example: HPE20310 Junk on end of regexpSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Delete any junk data that may beincluded with the regular expression.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20311 Eval-group not allowed at runtime, usere ’eval’Explanation: Perl tried to compile a regularexpression containing the (?{ ... }) zero-widthassertion at run time, as it would when the patterncontains interpolated values.Example: HPE20311 Eval-group not allowed atruntime, use re ’eval’System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use zero-width assertion, evenif you have to use another pattern like eval().System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20312 UTF-16 surrogate 0xunicodeExplanation: You tried to generate half of an UTF-16surrogate by requesting a Unicode character betweenthe code points 0xD800 and 0xDFFF (inclusive). Thatrange is reserved exclusively for the use of UTF-16encoding (by having two 16-bit UCS-2 characters); butPerl encodes its characters in UTF-8, so what you got isan illegal character.In the message text:unicodeThe Unicode characterExample: HPE20312 UTF-16 surrogate 0xDFFE.System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: If you know what you are doing, youcan turn off the warning by no warnings ’utf8’;. Youcan also use the Unicode character in the range.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20313 Malformed UTF-16 surrogateExplanation: Perl thought it was reading UTF-16encoded character data but encountered a malformedUnicode surrogate.Example: HPE20313 Malformed UTF-16 surrogateSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Provide the correct UTF-16 character.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlChapter 6. Perl messages 95
  • 105. Module: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20314 SWASHNEW didn’t return an HV refExplanation: An internal error occurred that cannot beresolved by the user.Example: HPE20314 SWASHNEW didn’t return an HVrefSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20315 SWASHGET didn’t return result ofproper lengthExplanation: An internal error occurred that cannot beresolved by the user.Example: HPE20315 SWASHGET didn’t return resultof proper lengthSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20316 panic: swash_fetchExplanation: An internal error occurred that cannot beresolved by the user.Example: HPE20316 panic: swash_fetchSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20317 panic: utf16_to_utf8: odd bytelen numExplanation: Something tried to call utf16_to_utf8 withan odd (as opposed to even) byte length. This is aninternal error that cannot be resolved by the user.In the message text:numThe lengthExample: HPE20317 panic: utf16_to_utf8: odd bytelen3.System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Use even byte lengths.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.96 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 106. HPE20318 Unicode character 0xunicode is illegalExplanation: Certain Unicode characters have beendesignated off-limits by the Unicode standard andshould not be generated. If you know what you aredoing, you can turn off this warning by no warnings’utf8’; .In the message text:unicodeThe unicode character.Example: HPE20318 Unicode character 0xDFFF isillegalSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Use characters that are allowed bythe Unicode standard.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20319 Using an array as a reference isdeprecatedExplanation: You tried to use an array as a reference,as in << @foo->[23] >> or << @$ref->[99] >>. Versionsof perl <= 5.6.1 used to allow this syntax, but shouldn’thave. It is now deprecated, and will be removed in afuture version.Example: HPE20319 Using an array as a reference isdeprecatedSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Do not use arrays as a reference.Instead, use arrays such as @foo [19].System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: D- A deprecation (optional).Automation: Not applicable.HPE20320 Using a hash as a reference isdeprecatedExplanation: You tried to use a hash as a reference,as in << %foo->{"bar"} >> or << %$ref->{"hello"} >>.Versions of perl <= 5.6.1 used to allow this syntax, butshouldn’t have. It is now deprecated, and will beremoved in a future version.Example: HPE20320 Using a hash as a reference isdeprecatedSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Do not use hash as a reference.Instead, you can use hash as %foo{″bar″}.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: D- A deprecation (optional).Automation: Not applicable.HPE20321 NOT IMPL LINE numExplanation: The target line was not implemented.In the message text:numLine numberExample: HPE20321 NOT IMPL LINE %dSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Implement the target line.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code:Chapter 6. Perl messages 97
  • 107. Automation: Not applicable.HPE20322 Possible precedence problem onbitwise operator operatorExplanation: Your program uses a bitwise logicaloperator in conjunction with a numeric comparisonoperator, like this : if ($x & $y == 0) { ... } Thisexpression is actually equivalent to $x & ($y == 0), dueto the higher precedence of ==. This is probably notwhat you want.In the message text:operatorThe operatorExample: HPE20322 Possible precedence problem onbitwise & operatorSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: If you really meant to write, disablethe warning, or, better yet, put the parentheses explicitlyand write $x & ($y == 0)).System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20323 Useless use of function with no valuesExplanation: You used the push() or unshift() functionwith no arguments apart from the array, like push(@x) orunshift(@foo). That won’t usually have any effect onthe array, so is completely useless.In the message text:functionThe functionExample: HPE20323 Useless use of push() with novaluesSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: It is possible that push(@tied_array)could have some effect if the array is tied to a class thatimplements a PUSH method. If so, you can write it aspush(@tied_array,()) to avoid this warning.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20324 defined(@array) is deprecatedExplanation: defined() is not usually useful on arraysbecause it checks for an undefined scalar value.Example: HPE20324 defined(@array) is deprecatedSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Do not use defined() with arrays. Ifyou want to see if the array is empty, use if (@array){ # not empty } for example.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: D- A deprecation (optional).Automation: Not applicable.HPE20325 (Maybe you should just omit thedefined()?)Explanation: defined() is not always useful because itchecks for an undefined scalar value.Example: HPE20325 (Maybe you should just omit thedefined()?)System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Do not not use defined(). If you wantto obtain results similar to what defined() provides, useanother function, especially in the case of array or hash.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: Perl98 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 108. Module: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20326 defined(%hash) is deprecatedExplanation: defined() is not usually useful on hashesbecause it checks for an undefined scalar value.Example: HPE20326 defined(%hash) is deprecatedSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Do not use defined() in the case ofhash. If you want to see if the hash is empty, just useif (%hash) { # not empty } for example.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: D- A deprecation (optional).Automation: Not applicable.HPE20327 panic: unexpected lvalue entersubargs: type/targ optype:opargExplanation: This is an internal error that cannot beresolved by the user.In the message text:optypeop typeopargop argumentExample: HPE20327 panic: unexpected lvalueentersub args: type/targ READ:fdSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20328 panic: unexpected lvalue entersubentry via type/targ optype:opargExplanation: This is an internal error that cannot beresolved by the user.In the message text:optypeop typeopargop argumentExample: HPE20328 panic: unexpected lvalueentersub entry via type/targ READ:fdSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20329 Unexpected constant lvalue entersubentry via type/targ optype:opargExplanation: The lvalue entered is not correct.In the message text:optypeop typeopargop argumentExample: HPE20329 Unexpected constant lvalueentersub entry via type/targ READ:fdSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.Chapter 6. Perl messages 99
  • 109. User response: Check the syntax while using thelvalue with sub.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20330 internal error: obsolete functionsave_hints() calledExplanation: Perl tried to compile a regularexpression containing the (?{ ... }) zero-widthassertion at run time, as it would when the patterncontains interpolated values. Because that is a securityrisk, it is not allowed. See perlre for more information.Example: HPE20330 internal error: obsolete functionsave_hints() calledSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: It is not permitted, but if you still wantto do this, you can explicitly build the pattern from aninterpolated string at run time and use that in an eval().System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20331 Can’t define subroutine function (GV isunique)Explanation: Each function should have a uniquename.In the message text:functionfunction nameExample: HPE20331 Can’t define subroutine func (GVis unique)System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that all function names areunique.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20332 Can’t redefine unique subroutinefunctionExplanation: Every function should have uniquename.In the message text:functionfunction nameExample: HPE20332 Can’t redefine unique subroutineStore.System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Use a different name for the function,because you cannot reuse function names.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20333 panic: ck_grepExplanation: The program failed an internalconsistency check trying to compile a grep.This is aninternal error that cannot be resolved by the user.Example: HPE20333 panic: ck_grepSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.100 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 110. User response: Follow local procedures for reportingproblems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20334 panic: ck_splitExplanation: Failed an internal consistency checktrying to compile a split. This is an internal error thatcannot be resolved by the user.Example: HPE20334 panic: ck_splitSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow local procedures for reportingproblems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20335 Found = in conditional, should be ==Explanation: You used = instead of == in conditional.Example: HPE20335 Found = in conditional, shouldbe ==System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: You said if ($foo = 123) when youmeant if ($foo == 123) (or something like that).System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20336 Useless use of sort in scalar contextExplanation: You used sort in scalar context, as in :my $x = sort @y; This is not very useful, and perlcurrently optimizes this away.Example: HPE20336 Useless use of sort in scalarcontextSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Do not use sort on scalars.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20337 Useless use of var in void contextExplanation: You did something without a side effectin a context that does nothing with the return value,such as a statement that doesn’t return a value from ablock, or the left side of a scalar comma operator. Veryoften, this points to a failure of Perl to parse yourprogram the way you thought it would. For example,you’d get this if you mixed up your C precedence withPython precedence and said $one, $two = 1, 2; whenyou meant to say ($one, $two) = (1, 2); Anothercommon error is to use ordinary parentheses toconstruct a list reference when you should be usingbrackets or curlies. For example, if you say $array =(1,2); when you should have said $array = [1,2]; Thebrackets and curlies explicitly turn a list value into ascalar value, while parentheses do not. So when aparenthesized list is evaluated in a scalar context, thecomma is treated like the comma operator in C; that is,the left argument is thrown away, which is not what youwant. See perlre for more information. This warning willnot be issued for numerical constants equal to 0 or 1since they are often used in statements like 1 whilesub_with_side_effects() ; String constants that wouldnormally evaluate to 0 or 1 are warned about.Chapter 6. Perl messages 101
  • 111. In the message text:var The variable.Example: HPE20337 Useless use of %s in voidcontextSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Check the variable that was used.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20338 Applying regex to var1 will act onscalar(var2)Explanation: The pattern match (<CODE>//<code>),substitution (<CODE>s///<code>), and transliteration(<CODE>tr///<code>) operators work on scalar values.If you apply one of them to an array or a hash, it willconvert the array or hash to a scalar value -- the lengthof an array, or the population info of a hash -- and thenwork on that scalar value. This is probably not what youmeant to do. See perlfunc/grep and perlfunc/map foralternatives.In the message text:regexThe Regular expression can be pattern match,substitution or transliteration.var1The variable can be array or hash.var2The variable can be scalar.Example: HPE20338 Applying substitution to array willact on scalar(@array).System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Check whether you are using (patternmatch, substitution or transliteration) regular expressionon scalar values. If you are, then do not use it.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20339 Parentheses missing around ″var″ listExplanation: You said something like my $foo, $bar =@_; when you meant my ($foo, $bar) = @_; Rememberthat ″my″, ″our″, and ″local″ bind tighter than comma.In the message text:var The variable.Example: HPE20339 Parentheses missing around″$foo″ list .System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Use parentheses when using listbecause the comma operator takes precedence.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20340 Bareword found in conditionalExplanation: The compiler found a bareword where itexpected a conditional, which often indicates that an ″″or && was parsed as part of the last argument of theprevious construct; for example: open FOO ″″ die. Itmay also indicate a misspelled constant that has beeninterpreted as a bareword: use constant TYPO => 1; if(TYOP) { print ″foo″ }Example: HPE20340 Bareword found in conditionalSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Check the expression beforecompiling. Use strict pragma to avoid such errors.System programmer response: No System102 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 112. Programmer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20341 Runaway prototypeExplanation: Subroutine complains if it isn’t suppliedwith parameters matching some pre-specified template.Example: HPE20341 Runaway prototypeSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Check the parameters to thesubroutine.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20342 Constant subroutine sub redefinedExplanation: You redefined a subroutine which hadpreviously been eligible for inlining. Seeperlsub/″Constant Functions″ for commentary andworkarounds.In the message text:subThe subroutine.Example: HPE20342 Constant subroutine sub()redefinedSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Previously compiled invocations ofthe function will still be using the old value of thefunction. If you need to be able to redefine thesubroutine, you need to ensure that it isn’t inlined, eitherby dropping the () prototype (which changes callingsemantics, so beware) or by thwarting the inliningmechanism in some other way, such as sub not_inlined() { 23 if $]; }.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: S- A severe warning (default).Automation: Not applicable.HPE20343 Subroutine sub redefinedExplanation: You redefined a subroutine.In the message text:subThe Subroutine.Example: HPE20343 Subroutine sub() redefinedSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: To suppress this warning, say{no warnings ’redefine’;eval "sub name { ... }";}System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20344 Use of -l on filehandle filehandleExplanation: A filehandle represents an opened file,and when you opened the file it already went past anysymlink you are presumably trying to look for. Theoperation returned undef.In the message text:filehandleThe filehandle.Example: HPE20344 Use of -l on filehandle FOOChapter 6. Perl messages 103
  • 113. System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Use a filename instead.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20345 panic: sysopen with multiple argsExplanation: This is an internal error that cannot beresolved by the user.Example: HPE20345 panic: sysopen with multipleargsSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20346 More than one argument to ’mode&’openExplanation: The open function has been asked toopen multiple files. This can happen if you are trying toopen a pipe to a command that takes a list ofarguments, but have forgotten to specify a piped openmode. See perlfun for more information.In the message text:modeThe mode.Example: HPE20346 More than one argument to `<&’openSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: In the modes argument add the pipedopen mode.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20347 Unrecognized signal name ″signal″Explanation: You specified a signal name to the kill()function that was not recognized. Issue kill –l in yourshell to see the valid signal names on your system.In the message text:signalSignal name which is not recognized from thesystem.Example: HPE20347 Unrecognized signal name″sigtra″System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Use a signal name that has alreadybeen defined.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.104 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 114. HPE20348 More than one argument to ’>mode’openExplanation: The open function has been asked toopen multiple files. This can happen if you are trying toopen a pipe to a command that takes a list ofarguments, but have forgotten to specify a piped openmode. See perlfunc/open for more information.Example: HPE20348 More than one argument to ’>-’openSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: In the modes argument add the pipedopen mode.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20349 More than one argument to ’<mode’openExplanation: The open function has been asked toopen multiple files. This can happen if you are trying toopen a pipe to a command that takes a list ofarguments, but have forgotten to specify a piped openmode. See perlfunc/open for more information.Example: HPE20349 More than one argument to ’<-’openSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: In the modes argument add the pipedopen mode.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20350 function not implementedExplanation: You tried to do something with a functionbeginning with ″sem″, ″shm″, or ″msg″ but System VIPC is not implemented in your machine.In the message text:functionThe function.Example: HPE20350 sem not implementedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: In some machines, the functionalitymay exist but not be configured, so configure themachine before processing. For help, consult yoursystem support.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20351 No code specified for -eExplanation: The -e option was specified, but therewas no code for it to execute.Example: HPE20351 No code specified for -eSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Since the -e option stands forexecution, it should follow the expression to execute.Therefore, make sure you have provided an expressionfollowed by -e option.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.Chapter 6. Perl messages 105
  • 115. HPE20352 No directory specified for -IExplanation: Directory not mention for -I option.Example: HPE20352 No directory specified for -ISystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: When using the -l option, specify adirectory.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20353 package version vers1 required--this isonly version vers2Explanation: You are trying to include a package thatis not allowed in the version of Perl you are using.In the message text:packagepackage namevers1Required version numbervers2Current version numberExample: HPE20353 File::Spec version 0.08required--this is only version 0.87System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Use the version of Perl that allowsthe package you want to include.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20354 POSIX class [:char_seq:] unknownExplanation: The class in the character class [: :]syntax is unknown. See perlre for more information.In the message text:char_seqThe character sequence.Example: HPE20354 POSIX class [: :] unknownSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: The POSIX character classes do nothave the is prefix the corresponding C interfaces have:in other words, it’s [[:print:]],not isprint.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20355 POSIX syntax [char_seq] is reserved forfuture extensionsExplanation: Within regular expression characterclasses ([]) the syntax beginning with ″[%c″ and endingwith ″%c]″ is reserved for future extensions. See perlrefor more information.In the message text:char_seqThe character sequence.Example: HPE20355 POSIX syntax [%c %c] isreserved for future extensions .System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: If you need to represent thosecharacter sequences inside a regular expressioncharacter class, just quote the square brackets with thebackslash: ″[%c″ and ″%c]″.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: Perl106 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 116. Module: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20356 POSIX syntax [char_seq] belongsinside character classesExplanation: The character class constructs [: :], [= =],and [. .] go inside character classes, the [] are part ofthe construct, for example:/[012[:alpha:]345]/. Note that[= =] and [. .] are not currently implemented; they aresimply placeholders for future extensions and will causefatal errors. See perlre for more information.In the message text:char_seqThe character sequence.Example: HPE20356 POSIX syntax [%c %c] belongsinside character classesSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Do not use character class constructs[: :], [= =], and [. .] outside a character class.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20357 shm I/O not implementedExplanation: You don’t have System V sharedmemory IPC on your system.Example: HPE20357 shm I/O not implementedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: The functionality may exist but not beconfigured. Consult your system support.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20358 suidperl is no longer needed since thekernel can now execute setuid perlscripts securely.Explanation: Suidperl is not required to run the perl.Normal user can only run it SUID is been disabled.Example: HPE20358 suidperl is no longer neededsince the kernel can now execute setuid perl scriptssecurely.System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: If you get this error then run the perlnormally no need of using suidperl.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20359 Trailing Explanation: The regular expression ends with anunbackslashed backslash. See perlre for moreinformation.Example: HPE20359 Trailing System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check the regular expression andadd backslash, if one is needed.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Chapter 6. Perl messages 107
  • 117. Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20360 Allocation too large:datasizeExplanation: You can’t allocate more than 64K on anMS-DOS machine.In the message text:datasizeSize of data in bytes.Example: HPE20360 Allocation too large:0xfffeSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check the system configuration andchange the allocation.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: X- A very fatal error (non-trappable).Automation: Not applicable.HPE20361 Allocation too large:datasizeExplanation: You can’t allocate more than 64K on anMS-DOS machine.In the message text:datasizeSize of data in bytes.Example: HPE20361 Allocation too large:0xffffSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response:User response: Check the system configuration andchange the allocation.System programmer response:Problem determination: No additional information.Source: PerlModule:Routing code:Descriptor code: X- A very fatal error (non-trappable).Automation:HPE20362 Ambiguous call resolved asCORE::sub(), keywordExplanation: A subroutine that you declared has thesame name as a Perl keyword, and you have used thename without qualification for calling one or the other.Perl decided to call the builtin because the subroutine isnot imported. To force interpretation as a subroutinecall, either put an ampersand before the subroutinename, or qualify the name with its package.Alternatively, you can import the subroutine (or pretendthat it’s imported with the use subs,/code> pragma). Tosilently interpret it as the Perl operator, usethe ,code>CORE:: prefix on the operator (e.g.CORE::log($x)) or declare the subroutine to be anobject method. (See perlsub/″Subroutine Attributes″ formore information.)In the message text:subSubroutinekeywordKeywordExample: HPE20362 Ambiguous call resolved asCORE::sub(), subSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Because the subroutine name wasthe same as the keyword name, either use a differentname for the subroutine or put an ampersand in front ofit.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20363 Ambiguous use of -sub resolved as-&sub()Explanation: You said something that may not beinterpreted the way you thought.In the message text:subSubroutine.Example: HPE20363 Ambiguous use of -FOOresolved as -&FOO()108 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 118. System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Make the use of sub more clear bysupplying a missing quote, operator, parenthesis pair ordeclaration.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20364 Ambiguous use of char resolved asoperator charExplanation: You said something that may not beinterpreted the way you thought.In the message text:charCharacter.Example: HPE20364 Ambiguous use of * resolved asoperator *System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Make the use of char clear bysupplying a missing quote, operator, parenthesis pair ordeclaration.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20365 Ambiguous use of char1{subchar2}resolved to char1subchar2Explanation: Within regular expression characterclasses ([]), the syntax beginning with ″[%c″ and endingwith ″%c]″ is reserved for future extensions. See perlrefor more information.In the message text:char1Funny CharactersubSubroutinechar2Constant CharacterExample: HPE20365 Ambiguous use of #{sub[}resolved to #sub[System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: If you need to represent thosecharacter sequences inside a regular expressioncharacter class, just quote the square brackets with thebackslash: ″[%c″ and ″%c]″.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20366 Ambiguous use of char{sub} resolvedto charsubExplanation: Within regular expression characterclasses ([]) the syntax beginning with ″[%c″ and endingwith ″%c]″ is reserved for future extensions. The <--HERE shows in the regular expression about where theproblem was discovered. See perlre for moreinformation.In the message text:charFunny CharactersubSubroutineExample: HPE20366 Ambiguous use of #{sub}resolved to #subSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: If you need to represent thosecharacter sequences inside a regular expressioncharacter class, just quote the square brackets with thebackslash: ″[%c″ and ″%c]″.Chapter 6. Perl messages 109
  • 119. System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20367 Argument ″str″ isn’t numeric in str1Explanation: The indicated string was fed as anargument to an operator that expected a numeric valueinstead.In the message text:strStringstr1StringExample: HPE20367 Argument ″foo″ isn’t numeric infooSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Use a numeric value.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20368 Argument ″str″ isn’t numericExplanation: The indicated string was fed as anargument to an operator that expected a numeric valueinstead.In the message text:strStringExample: HPE20368 Argument ″bar″ isn’t numericSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Give a numeric value to theargument.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20369 Argument list not closed for PerlIOlayer ″str″Explanation: When pushing a layer with argumentsonto the Perl I/O system you forgot the ) that closes theargument list. (Layers take care of transforming databetween external and internal representations.) Perlstopped parsing the layer list at this point and did notattempt to push this layer.In the message text:str String will be a layer.Example: HPE20369 Argument list not closed forPerlIO layer ″stdio″System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Use ’)’ and close the list. It may bethe result of the value of the environment variablePERLIO.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20370 Array @var missing the @ in argumentnum of descriptor()Explanation: In previous versions of Perl, you wereable to omit the @ on array names in some spots.However, this feature is now deprecated.In the message text:110 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 120. var Array type variablenumNumber of ArgumentsdescriptorDescriptor typeExample: HPE20370 Array @ash missing the @ inargument 3 of null operation()System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Use @ when referring to arrays.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: D- A deprecation (optional).Automation: Not applicable.HPE20371 Hash %var missing the % in argumentnum of descriptor()Explanation: Previous versions of Perl let you omitthe % on hash names in some spots. This feature isnow deprecated.In the message text:var Hash type variablenumNumber of ArgumentsdescriptorDescriptor typeExample: HPE20371 Hash %ash missing the % inargument 3 of null operation()System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Use %% when referring to arrays.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: D- A deprecation (optional).Automation: Not applicable.HPE20372 assertion botched (str1?): str2filename:nExplanation: The malloc package that comes withPerl had an internal failure. This is an internal error thatcannot be resolved by the user.In the message text:str1str1 can be dignostics messagestr2The code which generated dignostics messagefilenamefile namen line numberExample: HPE20372 assertion botched (chunk’s tailoverwrite?): ((unsigned int *)((caddr_t)ovp + nb))[-1] ==0x55555555 (malloc.c:2226)System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow local procedures for reportinga problem to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20373 assertion botched (Explanation: The malloc package that comes withPerl had an internal failure. This is an internal error thatcannot be resolved by the user.Example: HPE20373 assertion botched (System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow local procedures for reportingproblems to IBM.System programmer response: No SystemChapter 6. Perl messages 111
  • 121. Programmer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20374 A thread exited while num threads wererunningExplanation: When using threaded Perl, a thread (notnecessarily the main thread) exited while there were stillother threads running. See perl/threads for moreinformation.In the message text:numNumber of threadsExample: HPE20374 A thread exited while 3 threadswere runningSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Collect the return values of thecreated threads by joining them before exiting from themain thread.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20375 Attempt to free unreferenced globpointersExplanation: The reference counts got confused onsymbol aliases. This is an internal error that cannot beresolved by the user.Example: HPE20375 Attempt to free unreferencedglob pointersSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow local procedures for reportingproblems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20376 Attempt to free non-existent sharedstring ’str1’str2Explanation: Perl maintains a reference countedinternal table of strings to optimize the storage andaccess of hash keys and other strings. This is aninternal error that cannot be resolved by the user.In the message text:str1String will be Hex Key.str2String will be UTF or empty stringExample: HPE20376 Attempt to free non-existentshared string ’str’″ ″System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not decrement the reference countof a string that is not in the table.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20377 Attempt to free non-arena SV: 0xaddrExplanation: All SV objects are supposed to beallocated from arenas that will be garbage-collected onexit. An SV was discovered to be outside any of thosearenas. ″This is an internal error that cannot beresolved by the user.112 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 122. In the message text:addrMemory address.Example: HPE20377 Attempt to free non-arena SV:0x123456System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20378 Attempt to free unreferenced scalar:SV 0xaddrExplanation: Perl went to decrement the referencecount of a scalar to see if it would go to 0, anddiscovered that it had already gone to 0 earlier, andshould have been freed, and in fact, probably wasfreed. This could indicate that SvREFCNT_dec() wascalled too many times, or that SvREFCNT_inc() wascalled too few times, or that the SV was mortalizedwhen it shouldn’t have been, or that memory has beencorrupted.In the message text:addrMemory address.Example: HPE20378 Attempt to free unreferencedscalar: SV 0x247458System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Do not free scalar whose referencecount is zero.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20379 Attempt to free temp prematurely: SV0xaddrExplanation: Mortalized values are supposed to befreed by the free_tmps() routine. It indicates thatsomething else is freeing the SV before the free_tmps()routine gets a chance, which means that thefree_tmps() routine will be freeing an unreferencedscalar when it does try to free it.In the message text:addrMemory address.Example: HPE20379 Attempt to free tempprematurely: SV 0x567894System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Do not free temp before free_tmps()routine.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20380 Attempt to pack pointer to temporaryvalueExplanation: You tried to pass a temporary value (likethe result of a function, or a computed expression) tothe ″p″ pack() template. This means the result containsa pointer to a location that could become invalidanytime, even before the end of the current statement.Example: HPE20380 Attempt to pack pointer totemporary valueSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: To avoid this warning, use literals orglobal values as arguments to the ″p″ pack() templateto avoid this warning.Chapter 6. Perl messages 113
  • 123. System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20381 Attempt to use reference as lvalue insubstrExplanation: You supplied a reference as the firstargument to substr() used as an lvalue. Seeperlfunc/substr for more information.Example: HPE20381 Attempt to use reference aslvalue in substrSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Before supplying a reference tosubstr(), you need to dereference it first.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20382 Bad filehandle: symExplanation: A symbol was passed to somethingwanting a filehandle, but the symbol has no filehandleassociated with it. You may not have done an open(); ifyou did, you may have done it in another package.In the message text:symSymbol.Example: HPE20382 Bad filehandle: ioSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check that the filehandle is validbefore using it in other functions.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20383 Bad free() ignoredExplanation: An internal routine called free() onsomething that had never been malloc()ed in the firstplace.Example: HPE20383 Bad free() ignoredSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Set the environment variablePERL_BADFREE to 0.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: S- A severe warning (default).Automation: Not applicable.HPE20384 Bad hashExplanation: One of the internal hash routines waspassed a null HV pointer. ″This is an internal error thatcannot be resolved by the user.Example: HPE20384 Bad hashSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.114 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 124. Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20385 Bad realloc() ignoredExplanation: An internal routine called realloc() onsomething that had never been malloc()ed in the firstplace.Example: HPE20385 Bad realloc() ignoredSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Set environment variablePERL_BADFREE to 1.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: S- A severe warning (default).Automation: Not applicable.HPE20386 Bad symbol for arrayExplanation: An internal request asked to add anarray entry to something that wasn’t a symbol tableentry. This is an internal error that cannot be resolvedby the user.Example: HPE20386 Bad symbol for arraySystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Add a symbol in a symbol table forarray.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20387 Bad symbol for hashExplanation: An internal request asked to add a hashentry to something that wasn’t a symbol table entry.This is an internal error that cannot be resolved by theuser.Example: HPE20387 Bad symbol for hashSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Add a symbol in a symbol table forhash. Follow your local procedures for reportingproblems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20388 Bad symbol for filehandleExplanation: An internal request asked to add afilehandle entry to something that wasn’t a symbol tableentry. This is an internal error that cannot be resolvedby the user.Example: HPE20388 Bad symbol for filehandleSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Add a symbol in a symbol table forfilehandle. Follow your local procedures for reportingproblems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.Chapter 6. Perl messages 115
  • 125. HPE20389 Bad symbol for filehandle (GV isunique)Explanation: An internal request asked to add afilehandle entry to something that wasn’t a symbol tableentry. This is an internal error that cannot be resolvedby the user.Example: HPE20389 Bad symbol for filehandle (GV isunique)System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Add a symbol in a symbol table forfilehandle. Follow your local procedures for reportingproblems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20390 Bareword ″package″ refers tononexistent packageExplanation: You used a qualified bareword of theform Foo::, but the compiler saw no other uses of thatnamespace before that point.In the message text:packagePackage nameExample: HPE20390 Bareword ″Foo::″ refers tononexistent packageSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: You need to predeclare a package.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20391 char better written as $charExplanation: Outside of patterns, backreferences liveon as variables. The use of backslashes isgrandfathered on the right-hand side of a substitution,but stylistically it is better to use the variable formbecause other Perl programmers will expect it.In the message text:charCharcterExample: HPE20391 1 better written as $1System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Variable form works better if there aremore than 9 backreferences.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20392 Scalar value var better written as $varExplanation: You’ve used an array/hash slice(indicated by @) to select a single element of anarray/hash. Generally it’s better to ask for a scalar value(indicated by $). The difference is that $foo[&bar]always behaves like a scalar, both when assigning to itand when evaluating its argument, while @foo[&bar]behaves like a list when you assign to it, and provides alist context to its subscript, which can do weird things ifyou’re expecting only one subscript.In the message text:var The variable name.Example: HPE20392 Scalar value @foo[&bar] betterwritten as $foo[&bar]System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Use $ when you reference to an arrayor hash.116 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 126. System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20393 dump() better written as CORE::dump()Explanation: You used the obsolescent dump() built-infunction, without fully qualifying it as CORE::dump().Maybe it’s a typo. See Perl functions for moreinformation.Example: HPE20393 dump() better written asCORE::dump()System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: dump() function is now largelyobsolete, partly because it’s very hard to convert a corefile into an executable, and because the real compilerbackends for generating portable bytecode andcompilable C code have superseded it. That’s why youshould now invoke it as CORE::dump().System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20394 Binary number >0b11111111111111111111111111111111non-portableExplanation: The binary number you specified islarger than 2**32-1 (4294967295) and therefore is notportable between systems. See perlport for moreiinformation about portability concerns.Example: HPE20394 Binary number >0b11111111111111111111111111111111 non-portableSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Change the binary number to be lessthan 2**32-1 (4294967295).System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20395 Bit vector size > 32 non-portableExplanation: Bit vector sizes larger than 32 is notportable between systems.Example: HPE20395 Bit vector size > 32 non-portableSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Change the size of the bit vector tobe equal to or less than 32.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20396 Bizarre copy of str1 in str2Explanation: Perl detected an attempt to copy aninternal value that is not copyable. This is an internalerror that cannot be resolved by the user.In the message text:str1stringstr2stringExample: HPE20396 Bizarre copy of sting in lcSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.Chapter 6. Perl messages 117
  • 127. User response: Follow local procedures for reportinga problem to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20397 Bizarre copy of strExplanation: Perl detected an attempt to copy aninternal value that is not copyable. This is an internalerror that cannot be resolved by the user.In the message text:strstringExample: HPE20397 Bizarre copy of stringSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow local procedures for reportinga problem to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20400 msgsnd not implementedExplanation: Send an ipc message (m!c) is notimplemented.Example: HPE20400 msgsnd not implementedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check whether msgsnd has beenimplemented in your machine.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20401 msgrcv not implementedExplanation: The msgrcv perl routine, which calls thesystem msgrcv function that is used to read a messagefrom a message queue, is not implemented.Example: HPE20401 msgrcv not implementedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use the msgrcv routine in themessage queue code.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20402 semop not implementedExplanation: The semop perl routine, which calls theSystem V IPC function semop to perform semaphoreoperations such as signaling and waiting, is notimplemented.Example: HPE20402 semop not implementedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use the semop routine.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.118 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 128. Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20403 Can’t open a referenceExplanation: An attempt was made to open a scalarreference for reading or writing, using the 3-arg open()syntax : open FILEH, ’>’, $ref; but the version of Perl iscompiled without perlio, and this form of open is notsupported. This warning is related to IO.Example: HPE20403 Can’t open a referenceSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Use the 3-arg open syntax to do a fileopen after compiling perl with perlio.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20404 Missing command in piped openExplanation: An attempt was made to use theopen(FH, "" command") or open(FH, "command "")construction, but the command was missing or blank.This warning is related to pipes.Example: HPE20404 Missing command in piped openSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: The open(FH, ″″command″)construction should be used with the command filled inappropriately.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20405 Can’t open bidirectional pipeExplanation: An attempt was made to say open(CMD,""cmd""), which is not supported. This warning isrelated to pipes.Example: HPE20405 Can’t open bidirectional pipeSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: You can try several modules in thePerl library to open a birectional pipe, such asIPC::Open2. You could also try directing the the pipe’soutput to a file using ″>″, and then have it read under adifferent filehandle.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20406 Filehandle STDstr reopened asfilehandle only for inputExplanation: A filehandle was opened for readingwhich has the same ID as STDOUT or STDERR. TheSTDOUT or STDERR was closed previously. Thewarning is related to IO.In the message text:str The string could be OUT or ERRfilehandleThe filehandleExample: HPE20406 Filehandle STDOUT reopenedas FOO only for inputSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Do not open a filehandle having thesame ID as STDOUT or STDERR.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlChapter 6. Perl messages 119
  • 129. Module: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20407 Filehandle STDIN reopened asfilehandle only for outputExplanation: A filehandle was opened for writing thathas the same filehandle ID as STDIN. This happenedsince STDIN was closed previously. This warning isrelated to IO.In the message text:filehandleThe filehandleExample: HPE20407 Filehandle STDIN reopened asFOO only for outputSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Do not open a filehandle that has thesame ID as STDIN.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20408 Can’t do inplace edit: filename is not aregular fileExplanation: An attempt was made to use the -iswitch on a special file in /dev or a FIFO. The file wasignored. This severe warning is of type inplace. Thisbelongs to the inplace category.In the message text:filenameThe file nameExample: HPE20408 Can’t do inplace edit: /dev/fd0 isnot a regular fileSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Do not attempt to inplace edit aspecial file such as a file in /dev or a FIFO.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: S- A severe warning (default).Automation: Not applicable.HPE20409 Can’t do inplace edit: filename wouldnot be uniqueExplanation: The file system does not support filenames longer than 14 characters and Perl was unableto create a unique file name during inplace editing withthe -i switch. The file was ignored. This belongs to theinplace category.In the message text:filenameThe filenameExample: HPE20409 Can’t do inplace edit:filename1234567 would not be uniqueSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Do not use a file name that is notunique while doing a inplace edit.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: S- A severe warning (default).Automation: Not applicable.HPE20410 Can’t rename filename1 to filename2:errnodisplay, skipping fileExplanation: The rename done by the -i switch failedfor some reason, probably because you don’t have writepermission to the directory.In the message text:filename1The original file name120 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 130. filename2The new file nameerrnodisplayThe string representation of the errnoExample: HPE20410 Can’t rename /usr1/file1 to/usr1/file1bak: EDC5111I Permission denied, skippingfileSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Check whether you have permissionto write to the appropriate directory and then attempt ainplace edit.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: S- A severe warning (default).Automation: Not applicable.HPE20411 Can’t remove filename: errnodisplay,skipping fileExplanation: An inplace edit was requested withoutcreating a backup file. Perl was unable to remove theoriginal file to replace it with the modified file. The filewas left unmodified.In the message text:filenameThe filename.errnodisplayThe string representation of the errno.Example: HPE20411 Can’t remove file1: EDC5133I:No space left on device, skipping fileSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: A backup file should always becreated first before doing an inplace edit.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: S- A severe warning (default).Automation: Not applicable.HPE20412 Can’t do inplace edit on filename:errnodisplayExplanation: The file was not created due to theindicated reason.In the message text:filenameThe filename.errnodisplayThe string representation of the errno.Example: HPE20412 Can’t do inplace edit on file1:EDC5129I No such file or directory.System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: One of the reasons for a failure to doin-place edit is there is no such file or directory onwhich the edit is attempted. Verify that the mentionedfile exists and then try the edit again.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: S- A severe warning (default).Automation: Not applicable.HPE20413 Wide character in printExplanation: Unicode strings were output to a streamwithout a I/O layer. The raw bytes used internally will beused (these could either be the native character set orUTF-8 as the case may be). The warning is issued ifthe string contains a character beyond 0x00FF.Example: HPE20413 Wide character in printSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Prepend binmode(STDOUT, ″:utf8″)to the script to avoid this warning.System programmer response: No SystemProgrammer response is required.Chapter 6. Perl messages 121
  • 131. Problem determination: perl -e ’print ″x{DF}n″,″x{0100}x{DF}n″’; This generates the warning andproduces a fairly useless mixture of bytes. This isbecause a character > 0x00FF was used. You canavoid this situation by prepending binmode(STDOUT,″:utf8″) to the print call.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20414 Use of construct is deprecatedExplanation: The construct indicated is no longerrecommended for use, generally because there’s abetter way to do it, and also because the old way hasbad side effects.In the message text:constructThe construct name for example ″package″ with noarguments. If the package is called without anyarguments, then this message displaysExample: HPE20414 Use of ″package″ with noarguments is deprecatedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Use the appropriate construct in placeof the deprecated construct.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: D- A deprecation (optional).Automation: Not applicable.HPE20415 (Missing semicolon on previous line?)Explanation: This message is in conjunction with themessage ″HPE20697 item found where operatorexpected″.Example: HPE20415 (Missing semicolon on previousline?)System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Check whether the syntax andpunctuation of the code is correct. However, do notautomatically put a semicolon on the previous line justbecause you saw this message.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: S- A severe warning (default).Automation: Not applicable.HPE20416 (Do you need to predeclare str?)Explanation: This message in conjunction with themessage ″HPE20697 item found where operatorexpected″ often means a subroutine or module name isbeing referenced that hasn’t been declared yet. Thismay be because of ordering problems in your file, orbecause of a missing ″sub″, ″package″, ″require″, or″use″ statement.In the message text:str The subroutine name or package name or modulenameExample: HPE20416 (Do you need to predeclarefoo?)System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: If something that isn’t defined yet isbeing referenced, you do not have to define thesubroutine or package before the current location. Youcan use an empty ″sub foo;″ or ″package FOO;″ toenter a ″forward″ declaration.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: S- A severe warning (default).Automation: Not applicable.122 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 132. HPE20417 (Missing operator before str)Explanation: This message is in conjunction with themessage ″HPE20697 item found where operatorexpected″. Often the missing operator is a comma. Thisbelongs to the syntax category. The operator could bemissing before the end of line or before a construct or avariable or a part of a statement.In the message text:str The string ’end of line’ or a part of a statement or avariable or a constructExample: HPE20417 (Missing operator before $var?)″System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Check whether a comma (or someother operator) is missing before the end of line if theoperator is expected just before the end of line. If not,look for a missing operator before a part of a statementor a construct or a variable.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: S- A severe warning (default).Automation: Not applicable.HPE20418 panic: constant overflowed allocatedspaceExplanation: The space required to store a constantvalue is greater than the space allocated for it. This isan internal error that cannot be resolved by the userExample: HPE20418 panic: constant overflowedallocated spaceSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow local procedures for reportingproblems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20419 panic: YYMAXLEVELExplanation: This is in the context of the parser. Theyyactlevel variable has reached a threshold value whichis defined as a macro, YYMAXLEVEL. The yyactlevelvariable should have a value less than YYMAXLEVEL.This is an internal error that cannot be resolved by theuserExample: HPE20419 panic: YYMAXLEVELSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20420 panic: INTERPCASEMODExplanation: The lexer got into a bad state at a casemodifier. This is an internal error that cannot beresolved by the user.Example: HPE20420 panic: INTERPCASEMODSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow local procedures for reportingproblems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Chapter 6. Perl messages 123
  • 133. Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20421 panic: yylexExplanation: The lexer got into a bad state whileprocessing a case modifier. This is an internal error thatcannot be resolved by the user.Example: HPE20421 panic: yylexSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow local procedures for reportingproblems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20422 panic: INTERPCONCATExplanation: The lexer got into a bad state parsing astring with brackets. This is an internal error that cannotbe resolved by the user.Example: HPE20422 panic: INTERPCONCATSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow local procedures for reportingproblems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20423 Unrecognized character xhexcharExplanation: The Perl parser has no idea what to dowith the specified character in the Perl script (or eval).Perhaps an attempt was made to run a compressedscript, a binary program, or a directory as a Perlprogram.In the message text:hexcharThe unrecognized 2 byte hex characterExample: HPE20423 Unrecognized character x03System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Avoid running a script or a programwhich contains the above mentioned characters.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20424 (Maybe you didn’t strip carriagereturns after a network transfer?)Explanation: This message appears in conjunctionwith ″HPE20285 Illegal character char(carriage return)″.Typically, literal carriage returns within program text aretreated as white space. A preprocessor symbol wasdefined that treats carriage returns within program textmore strictly. Maybe a network transfer was completedbut carriage returns were not stripped from the text.Example: HPE20424 (Maybe you didn’t strip carriagereturns after a network transfer?)System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use carriage returns after anetwork transfer.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.124 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 134. Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20425 panic: input overflowExplanation: An internal error occurred that cannot beresolved by the user.Example: HPE20425 panic: input overflowSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20426 Unterminated <> operatorExplanation: The lexer found a left angle bracket in aplace where it was expecting a term, so it’s looking forthe corresponding right angle bracket, and not finding it.Chances are some needed parentheses were left outearlier in the line, and the intended code was really a″less than″.Example: HPE20426 Unterminated <> operatorSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Ensure that all parentheses areclosed before a left angled bracket is used alone tomean a ’less-than’ sign.System programmer response: No SystemProgrammer response is required.Problem determination: Trappable errors may betrapped using the eval operatorSource: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20427 panic: scan_numExplanation: scan_num() got called on something thatwasn’t a number. This is an internal error that cannot beresolved by the user.Example: HPE20427 panic: scan_numSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow local procedures for reportingproblems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20428 msg program_name has too manyerrors.Explanation: The parser has given up trying to parsethe program after ten errors. Further error messageswould likely be uninformative. This error is fatal.In the message text:msgThe error message which may contain: (Missingsemicolon on previous line?) or (Missing operatorbefore %.*s?)program_nameThe program nameExample: HPE20428 Syntax error in file ./a.t at line258, next 2 tokens ″my (″ Syntax error in file ./a.t at line272, next 2 tokens ″my $hnrcIsNew ″ Syntax error in file./a.t at line 580, next 2 tokens ″my $email″ Syntax errorin file ./a.t at line 618, next 2 tokens ″local $debug ″Syntax error in file ./a.t at line 651, next 2 tokens ″my(″Syntax error in file ./a.t at line 724, next token ″}″Syntax error in file ./a.t at line 785, next token ″}″Syntax error in file ./a.t at line 792, next 2 tokens ″}″Syntax error in file ./a.t at line 801, next 2 tokens ″}″Syntax error in file ./a.t at line 808, next 2 tokens ″}″ a.thas too many errors.nSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Chapter 6. Perl messages 125
  • 135. Operator response: No System Operator response isrequired.User response: Minimize the number of errors in thePerl programSystem programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20429 Unsupported script encodingUTF32-LEExplanation: The program file begins with a ByteOrder Mark which marks it in a Unicode encoding thatPerl cannot read.Example: HPE20429 Unsupported script encodingUTF32-LESystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use the utf32-le encoding if itis not supported on the current version of perl.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20430 Unsupported script encodingUTF16-LEExplanation: The program file begins with a ByteOrder Mark which marks it in a Unicode encoding thatPerl cannot read.Example: HPE20430 Unsupported script encodingUTF16-LESystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use the utf16-le encoding if itis not supported on the current version of Perl.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20431 Unsupported script encodingUTF16-BEExplanation: The program file begins with a ByteOrder Mark which marks it in a Unicode encoding thatPerl cannot read.Example: HPE20431 Unsupported script encodingUTF16-BESystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use the utf16-be encoding if itis not supported on the current version of Perl.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20432 Unsupported script encodingUTF32-BEExplanation: The program file begins with a ByteOrder Mark which marks it in a Unicode encoding thatPerl cannot read.Example: HPE20432 Unsupported script encodingUTF32-BESystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use the utf32-be encoding if itis not supported on the current version of Perl.126 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 136. System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20433 Reversed symbol1symbol2 operatorExplanation: The assignment operator was writtenbackwards. The = must always come last, to avoidambiguity with subsequent unary operators.In the message text:symbol1The ’+’ or ’-’ symbolsymbol2The symbol =Example: HPE20433 Reversed += operatorSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Always place the = sign last to avoidthe warning.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20434 Multidimensional syntax construct notsupportedExplanation: Multidimensional arrays aren’t writtenlike $foo[1,2,3].In the message text:constructThe multidimensional array representationExample: HPE20434 Multidimensional syntax$foo[1,2,3] not supportedSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Represent multi-dimensional arraysas $foo[1][2][3], as in C.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20435 Can’t use num to mean symbol num inexpressionExplanation: In an ordinary expression, backslash is aunary operator that creates a reference to its argument.A backslash can be used to indicate a backreference toa matched substring only as part of a regularexpression pattern. Trying to do this in ordinary Perlcode produces a value that prints out looking likeSCALAR(0xdecaf).In the message text:numThe number indicating the matched variablesymbolThe $ symbolExample: HPE20435 Can’t use 1 to mean $1 inexpressionSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Use the $ form instead of thebackslash form.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.Chapter 6. Perl messages 127
  • 137. HPE20436 Operator or semicolon missing beforesymbol1var2Explanation: A variable or subroutine call was usedwhere the parser was expecting an operator. The parserassumed that an operator was really intended to beused. However, that assumption could be incorrect. Thissevere warning belongs to the ambiguous category.In the message text:symbol1The symbol which could be a ’*’var2The pointer variableExample: HPE20436 Operator or semicolon missingbefore *foo at - line 8.System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Do not use a variable or subroutinecall where an operator is expected.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: S- A severe warning (default).Automation: Not applicable.HPE20437 Precedence problem: open filehandleshould be open(filehandle)Explanation: The old irregular construct open FH ″″die; is now misinterpreted as open(FH ″″ die); becauseof the strict regularization of Perl 5’s grammar into unaryand list operators. (The old open was a little of both.)Parentheses should be placed around the filehandle, orthe new ″or″ operator should be used instead of ″″″″.This severe warning belongs to the precedencecategory.In the message text:filehandleThe filehandleExample: HPE20437 Precedence problem: open FOOshould be open(FOO)System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Use parentheses around thefilehandle when calling an open of the form : openfilehandle ″″ die;System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: S- A severe warning (default).Automation: Not applicable.HPE20438 Possible attempt to separate wordswith commasExplanation: qw() lists contain items separated bywhitespace; therefore commas aren’t needed toseparate the items. (You may have used differentdelimiters than the parentheses shown here; braces arealso frequently used.) This warning belongs to the qwcategory.Example: HPE20438 Possible attempt to separatewords with commasSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: If you have something like thefollowing: qw! a, b, c !; Then that should should bewritten as : qw! a b c !;System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20439 Possible attempt to put comments inqw() listExplanation: qw() lists contain items separated bywhite space; as with literal strings, comment charactersare not ignored, but are instead treated as literal data.(delimiters different from the ones shown here mighthave been used; braces are also frequently used.)Example: HPE20439 Possible attempt to putcomments in qw() list128 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 138. System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: For comments, the qw() list should bebuilt with quotes and commas: @list = ( ’a’, # acomment ’b’, # another comment );System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20440 Illegal character in prototype for sub :varExplanation: An illegal character was found in aprototype declaration. Legal characters in prototypes are$, @, %, *, ;, [, ], &, and . This warning belongs to thesyntax category.In the message text:subThe subroutine namevar The malloced stringExample: HPE20440 Illegal character in prototype formain::badproto : @barSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Use legal characters for thesubroutine prototype.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20441 Possible unintended interpolation ofvar in stringExplanation: Something like `@foo’ was indicated in adouble-quoted string but there was no array @foo inscope at the time. To indicate a literal @foo, it shouldbe written as @foo; otherwise you need to find outabout the array in question. This warning belongs to theambiguous category.In the message text:var The pointer variableExample: HPE20441 Possible unintendedinterpolation of @arr in stringSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: An array should be indicated in adouble=quoted string as @fooSystem programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20442 elseif should be elsifExplanation: The code containing elseif will beinterpreted as an attempt to call a method named ’elseif’for the class returned by the following block. Thissevere warning belongs to the syntax category.Example: HPE20442 elseif should be elsifSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Use elsif instead of elseif.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: S- A severe warning (default).Automation: Not applicable.Chapter 6. Perl messages 129
  • 139. HPE20443 op(...) interpreted as functionExplanation: If a list operator is followed by a leftparenthesis, the list operator is treated as a functionwith all operators and arguments within the pair ofparentheses. This warning belongs to the syntaxcategory.In the message text:op The list operatorExample: HPE20443 sort (...) interpreted as functionSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Do not use parentheses when callinga list operator to prevent it from being treated as afunction.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20444 Misplaced _ in numberExplanation: An underscore (underbar) character in anumeric constant did not separate two digits.Example: HPE20444 Misplaced _ in numberSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: The underscore (underbar) charactershould be used appropriately.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20445 Integer overflow in numformat numberExplanation: The hexadecimal, octal or binary numberwhich has been specified either as a literal or as anargument to hex() or oct() is too big for the architecture,and has been converted to a floating point number. Ona 32-bit architecture, the largest hexadecimal, octal orbinary number representable without overflow is0xFFFFFFFF, 037777777777, or0b11111111111111111111111111111111 respectively. Notethat Perl transparently promotes all numbers to afloating point representation internally--subject to loss ofprecision errors in subsequent operations. This warningbelongs to the overflow category.In the message text:numformatThe numeric format. It can have values : decimal,hexadecimal, octal or binary.Example: HPE20445 Integer overflow in binarynumberSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Make sure that the numbers used arewithin range.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20446 numformat number > num non-portableExplanation: Because the specified number is largerthan the permissible value, it is not portable betweensystems. The largest permissible value is 2**32 - 1. Thiswarning belongs to the portable category.See perlport for more on portability concerns.In the message text:numformatThe numeric format which could be hexadecimal,octal or binarynumThe numberExample: HPE20446 Hexadecimal number > 0xffffffffnon-portable130 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 140. System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Use a number less than or equal to2**32 -1 to make it portable between systems.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20447 Integer overflow in decimal numberExplanation: Because the decimal number, which hasbeen specified either as a literal or as an argument tohex() or oct(), is too big for the architecture, it has beenconverted to a floating point number. On a 32-bitarchitecture, the largest binary number representablewithout overflow is0b11111111111111111111111111111111. Note that Perltransparently promotes all numbers to a floating pointrepresentation internally--subject to loss of precisionerrors in subsequent operations. This warning belongsto the overflow category.Example: HPE20447 Integer overflow in decimalnumberSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Use decimal numbers within range.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20448 panic: paren_elems_to_push < 0Explanation: An internal error occurred that cannot beresolved by the user.Example: HPE20448 panic: paren_elems_to_push < 0System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedure forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20449 panic: end_shiftExplanation: An internal error occurred that cannot beresolved by the user.Example: HPE20449 panic: end_shiftSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20450 panic: unknown regstclass numExplanation: The starting class for the regularexpression was not known.In the message text:numnumbersExample: HPE20450 panic: unknown regstclass 10System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Chapter 6. Perl messages 131
  • 141. Operator response: No System Operator response isrequired.User response: Use the correct class in the regularexpression.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20452 function() called too early to checkprototypeExplanation: A function was called that has aprototype before the parser saw a definition ordeclaration for it, and Perl could not check that the callconforms to the prototype. For more information, seeperlsub.In the message text:functionThe function name.Example: HPE20452 foo() called too early to checkprototypeSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Either an early prototype declarationfor the subroutine in question needs to be added, or thesubroutine definition needs to be moved ahead of thecall to get proper prototype checking. Alternatively, ifyou are sure that the function is being called correctly,an ampersand before the name would help avoid thewarning.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20453 Can’t call method ″method″ strExplanation: A method was not called because apackage or object was not referenced, or a value wasnot specified.In the message text:methodThe method name.str The reason string. It could be either ″without apackage or object reference″ or ″on an undefinedvalue″Example: HPE20453 Can’t call method ″meth″ on anundefined value at - line 1System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that either an object orpackage is referenced, or a value is defined, before amethod is called.System programmer response: No SystemProgrammer response is required.Problem determination: A Fatal error may be trappedusing the eval operator.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20454 Can’t check filesystem of script″scriptname″ for nosuid/noexecExplanation: For some reason, the file system of thescript cannot be checked for nosuid or noexec. This isan internal error which should not be seen.In the message text:scriptnameThe script name.Example: HPE20454 Can’t check filesystem of scripta.pl for nosuid/noexecSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.132 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 142. Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20455 Setuid script ″scriptname″ on nosuidfilesystemExplanation: An attempt was made to run a setuidscript on a file system that does not support the setuidbit.In the message text:scriptnameThe script name.Example: HPE20455 Setuid script a.pl on nosuidfilesystemSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check whether a script has the setuidbit set before attempting it on a nosuid filesystem. Itshould show permissions like : ″-rwsr--r--″. The ’s’ in thepermissions indicates that the setuid bit is set.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20456 Setuid script ″scriptname″ on noexecfilesystemExplanation: A script, which has the setuid bit set,was attempted on a file system where running a scriptis not allowed because the noexec permission was set.In the message text:scriptnameThe script name.Example: HPE20456 Setuid script b.pl on noexecfilesystemSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Verify if the script has the setuid bitset. Also, verify whether the file system has the noexecpermission set before you attempt to run the script.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20457 Setuid script changedExplanation: The permissions of the script have beenchanged so as to set the setuid bit. However, if the shelldoes not support setuid scripts, the script will not run.Example: HPE20457 Setuid script changedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: While changing a script to enable thesetuid bit, ensure that the shell on which you intend torun the script supports setuid scripts.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20458 Setuid script on nosuid or noexecfilesystemExplanation: An attempt was made to run a setuidscript on a file system that either is a noexec file systemor does not support the setuid bit.Example: HPE20458 Setuid script on nosuid ornoexec filesystemSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.Chapter 6. Perl messages 133
  • 143. User response: Check whether a script has the setuidbit set before attempting it on a nosuid file system. Itshould show permissions like : ″-rwsr--r--″. The ’s’ in thepermissions indicates that the setuid bit is set. Alsoverify whether the filesystem allows setting the setuid bitor if it is a noexec filesystem (may be verified by themount options).System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20459 Setuid script not plain fileExplanation: If a script is read from a socket, a pipeor another device, the setuid emulator won’t run thatscript.Example: HPE20459 Setuid script not plain fileSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not run a perl script from a socket,a pipe or any other device.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20460 Setuid script name may not begin withdashExplanation: The name of the setuid script began witha dash, which is not allowed.Example: HPE20460 Setuid script name may notbegin with dashSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: cond_signal should be called on avariable that is shared.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20461 No setuid script nameExplanation: There is no name for the setuid scriptExample: HPE20461 No setuid script nameSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Assign a name to the setuid script.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20462 Can’t do setegid!Explanation: The setegid() call failed within the setuidemulator of suidperl.Example: HPE20462 Can’t do setegid!System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check whether the calling processhas appropriate privileges before calling setegid. Also,the setegid should be attempted only if the gid is equalto the real group id or the saved set-group-id.System programmer response: No SystemProgrammer response is required.Problem determination: Check whether the callingprocess has appropriate privileges to call setegid or ifthe gid is not equal to the real -group id or savedset-group-id.134 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 144. Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20463 Can’t do seteuid!Explanation: The function to set the effective user IDof the calling process failed. The value of the UIDargument may not be valid and is not supported by theimplementation. It is also possible that the process doesnot have appropriate privileges and UID does not matchthe real user ID or the saved set-user-ID.Example: HPE20463 Can’t do seteuid!System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Use a valid UID argument to theseteuid call and also ensure that the process that iscalling seteuid has appropriate privileges.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20464 Can’t exec ″filename″: errnodisplayExplanation: A system(), exec(), or piped open callcould not execute the named program for the indicatedreason. This warning belongs to the exec category.In the message text:filenameThe filename.errnodisplayThe string form of the errnoExample: HPE20464 Can’t exec /u/isldev/file1:EDC5129I No such file or directory. at b.t line 2.System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Verify that the file has correctpermissions, it is present in $ENV{PATH}, the executablehas been compiled for the same architecture that it isbeing attempted to run on, and that the #! line in thescript points to the Perl interpreter which has been built.System programmer response: No SystemProgrammer response is required.Problem determination: Typical reasons for thefailure include: the permissions were wrong on the file,the file wasn’t found in $ENV{PATH}, the executable inquestion was compiled for another architecture, or the#! line in a script points to an interpreter that can’t berun for similar reasons. (Or maybe your system doesn’tsupport #! at all.)Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20470 Can’t locate package variable for@package::ISAExplanation: The @ISA array contained the name ofanother package that does not seem to exist.In the message text:variableThe pointer variable corresponding to the packagein questionpackageThe package nameExample: HPE20470 Can’t locate package Foo for@main::ISASystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Verify that the @ISA array for apackage contains names of existing packages.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.Chapter 6. Perl messages 135
  • 145. HPE20471 Cannot modify non-existent substringExplanation: A nonexistent string was passed to theinternal function that does assignment in a substr()routine. The internal routine attempts to replace anexisting substring with the new specified substring butfails because the original string is missing.Example: HPE20471 Cannot modify non-existentsubstringSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Call the substr() routine in such a waythat a valid substring is generated and passed to theinternal assignment function.System programmer response: No SystemProgrammer response is required.Problem determination: For example:$a = ″this is a sample string″;$b = substr, $a, 5, 6, ″replace″;print ″a : $an″;a: thissamplesample stringThe example just shown is not the actual scenario.During the course of the above, if the original stringgoes missing while calling the internal routine whichdoes an insert (replace), the message is generated.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20472 Can’t open filename: errnodisplayExplanation: The implicit opening of a file through useof the <> filehandle, either implicitly under the -n or -pcommand-line switches, or explicitly, failed for theindicated reason. Usually this is because the readpermission for the file named on the command line isnot available. This severe warning belongs to theinplace category.In the message text:filenameThe filename.errnodisplayThe string form of the errnoExample: HPE20472 Can’t open file1: EDC5111IPermission denied.System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Verify that appropriate readpermissions are available for the file named on thecommand line.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: S- A severe warning (default).Automation: Not applicable.HPE20476 Checking overloading of operator inpackage packageExplanation: The operator that might have beenoverloaded could be one of the following:1. conversion operators (bool, +0, ″″)2. arithmetic operators (+, -, *,/, %, **, x, . , neg)3. logical operators (!)4. bitwise operators (&,″, ~, ^, !, <<, >>)5. assignment operators (+=, -=, *=, /=, %=, **=,x=, .=,<<=, >>=, ++, --)In the message text:operatorThe operatorpackageThe package nameExample: HPE20476 Checking overloading of`DESTROY’ in package `IO::Handle’System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Use the overload pragma to overloadan operator appropriately if the overloading check aboveindicates an error.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.136 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 146. Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20477 str method `method’ overloading`operator’ ″″in package `package’Explanation: Either the method overloading anoperator in a package could not be resolved or a stubwas found while resolving the method overloading anoperator in a package.In the message text:str The string which could be either of : 1) Stub foundwhile resolving, 2) Can’t resolve.methodThe method nameoperatorThe operator namepackageThe package nameExample: HPE20477 Stub found while resolvingmethod foo overloading ’+’ in package packfooSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Use the overload pragma correctly todefine a method overloading an operator.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20479 Can’t return array to lvalue scalarcontextExplanation: You tried to return a complete array froman lvalue subroutine, but you called the subroutine in away that made Perl think you meant to return only onevalue.Example: HPE20479 Can’t return array to lvaluescalar contextSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check whether parentheses areneeded around around the call to the subroutine. Theparentheseses tell Perl that the call should be in listcontext.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20480 Can’t return hash to lvalue scalarcontextExplanation: You tried to return a complete hash froman lvalue subroutine, but you called the subroutine in away that made Perl think you meant to return only onevalue.Example: HPE20480 Can’t return hash to lvaluescalar contextSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Write parentheses around the call tothe subroutine, which tell Perl that the call should be inlist context.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20481 Can’t stat script scriptnameExplanation: The fstat call fails on a script which isopen already. This is an internal error that cannot beresolved by the userIn the message text:scriptnameThe script name.Example: HPE20481 Can’t stat script foo.plSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Chapter 6. Perl messages 137
  • 147. Operator response: No System Operator response isrequired.User response: Follow local procedures for reportingproblems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: Check if a normal stat callworks. If it doesnt, its likely that the stat call has aproblem on the platform. If it works, then, the stat callspecifically has a problem with opening the filehandleand not a normal filename.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20484 Can’t upgrade that kind of scalarExplanation: A scalar value is generally representedusing a struct SV. When the scalar value is upgraded toa more complex form by adding more ’members’ to thestructure, the upgradation takes place based on thevalue of the flags member of the struct SV. If the valueof the flags does not match any of the predefinedvalues, it means that the structure (scalar value) cannotbe upgraded. It also indicates that an inter-conversionwas attempted between some of the top SV types(corresponding to some of the defined flagsvalues).This is an internal error that cannot be resolvedby the user.Example: HPE20484 Can’t upgrade that kind of scalarSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow local procedures for reportingproblems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20485 Can’t upgrade to undefExplanation: A struct SV may be upgraded to morecomplex forms like IV, NV, RV, PV and so on. Theundefined SV is at the bottom of these forms, in thescheme of upgradability. Upgrading to undef indicatesan error in the code calling sv_upgrade. This is aninternal error that cannot be resolved by the user.Example: HPE20485 Can’t upgrade to undefSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow local procedures for reportingproblems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20486 Can’t upgrade filter_add data toSVt_PVIOExplanation: The filter_add function which associatesthe filter object and the source stream attempts toupgrade a new struct SV to SVt_PVIO (which is acomplex struct SV form) and fails. This is prior toassigning the filter object to the successfully upgradedSV struct. This is an internal error that cannot beresolved by the user.Example: HPE20486 Can’t upgrade filter_add data toSVt_PVIOSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow local procedures for reportingproblems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.138 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 148. Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20488 ″use″ not allowed in expressionExplanation: The ″use″ keyword is recognized andexecuted at compile time, and returns no useful value.Example: HPE20488 ″use″ not allowed in expressionSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use the ’use’ keyword in anexpression.System programmer response: No SystemProgrammer response is required.Problem determination: For more information, seeperlmod.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20489 Character in ’C’ format wrapped inpackExplanation: This error is generated when "C" is usedto format unicode characters.The "C" format is only forencoding native operating system characters (ASCII,EBCDIC,and so on) and not for Unicode characters.Example: HPE20489 Character in ’C’ format wrappedin packSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Use the pack("C",$x) syntax only if0<$x<255. If you actually want to pack Unicodecodepoints, use the "U" format instead.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20490 Character in ’c’ format wrapped inpackExplanation: Pack was called in the following format: pack("c", $x) where $x is either less than -128 ormore than 127. The "c" format is only for encodingnative operating system characters (ASCII, EBCDIC,and so on) and not for Unicode characters.Example: HPE20490 Character in ’c’ format wrappedin packSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Use the format pack("c", $x) only if-128<$x<127. If you wanted to pack Unicode codepoints,you can use the "U" format instead.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20491 error_msg Compilation failed in regexpExplanation: Perl could not compile the regularexpression. This is a fatal error.In the message text:error_msgAn error message providing additional information.Example: HPE20491 Global symbol ″$RE_PAREN″requires explicit package name at (re_eval 2) line 2.Compilation failed in regexpSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Ensure that global symbols havebeen declared using explicit package names. Othererrors which show up in the string as in the explanationfield above need to be avoided appropriately.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlChapter 6. Perl messages 139
  • 149. Module: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20493 Complex regular subexpressionrecursionExplanation: The regular expression engine usesrecursion in complex situations where back-tracking isrequired. Recursion depth is limited to 32766, orperhaps less in architectures where the stack cannotgrow arbitrarily. (″Simple″ and ″medium″ situations arehandled without recursion and are not subject to a limit.)Example: HPE20493 Complex regular subexpressionrecursionSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Try shortening the string underexamination; looping in Perl code ( for example, withwhile) rather than in the regular expression engine. Ortry rewriting the regular expression so that it is simpleror backtracks less. (See perlfaq2 for information aboutMastering Regular Expressions.)System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20494 cond_signal() called on unlockedvariableExplanation: Cond_signal is used to wake up anotherthread that is inside a cond_wait call. To ensure that thesignallng thread does not call cond_signal before thesignaled thread has had a chance to wait, cond_signalis called on a locked variable that can be locked onlyafter the waiting thread has relinquished the lock (whichis after it has entered cond_wait). This warning belongsto the threads category.Example: HPE20494 cond_signal() called on unlockedvariableSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Ensure that a variable is lockedbefore calling cond_signal on it.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20495 cond_broadcast() called on unlockedvariableExplanation: Within a thread-enabled program, anattempt was made to call cond_broadcast on a variablethat was not locked. The cond_broadcast function isused to wake up a different waiting thread whichrelinquished the lock after calling cond_wait. Thecond_broadcast function should be called after lockingthe variable. This warning belongs to the threadscategory.Example: HPE20495 cond_broadcast() called onunlocked variableSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Call cond_broadcast on a variablethat is locked.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20496 cond_signal can only be used onshared valuesExplanation: cond_signal was used on a variable thatwas not shared. This means if cond_signal is called ona variable within a main thread, it will not be able towake up a different thread where the variable cannot beaccessed.Example: HPE20496 cond_signal can only be usedon shared valuesSystem action: Perl immediately stops interpreting the140 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 150. file (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Ensure that cond_signal is called ona variable that is shared.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20498 Argument to cond_broadcast needs tobe passed as refExplanation: The argument to the cond_broadcastfunction was not passed as a reference. This happensspecifically when the argument was passed but it wasnot passed as a reference.Example: HPE20498 Argument to cond_broadcastneeds to be passed as refSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: The argument to the cond_broadcastfunction should be passed as :cond_broadcast_enabled(ref), where ref is thereference.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20499 Semicolon seems to be missingExplanation: A syntax error was probably caused by amissing semicolon, or possibly by some other missingoperator, such as a comma.Example: HPE20499 Semicolon seems to be missingSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Check the syntax. You can use the -coption to check the syntax.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20500 Use of uninitialized value str functionExplanation: An undefined value was used as if itwere already defined. It was interpreted as a ″″ or a 0,but maybe it was a mistake.In the message text:str stringfunctionfunction nameExample: HPE20500 Use of uninitialized value inconcatenationSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: You can use the undefined value toperform certain operation. To suppress the warningmessage, assign a defined value to your variables.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20501 Unquoted string ″str″ may clash withfuture reserved wordExplanation: You used a bareword that mightsomeday be claimed as a reserved word.In the message text:str stringChapter 6. Perl messages 141
  • 151. Example: HPE20501 Unquoted string ″string″ mayclash with future reserved wordSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: If you are using bareword, put it inquotes. It is best to put such a word in quotes, orcapitalize it somehow, or insert an underbar into it. Youmight also declare it as a subroutine.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20502 Unsuccessful fileopr on filenamecontaining newlineExplanation: A file operation was attempted on a filename, but failed. Perhaps it did not succeed becausethe file name contained a newline, which can occur ifyou did not use chomp() to remove trailing newlines.In the message text:fileoprfile operationsExample: HPE20502 Unsuccessful write on filenamecontaining newlineSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Perform chomp() before using the filein the script.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20503 Cannot use datatype ref as datatype refExplanation: You have mixed up your referencetypes. You have to dereference a reference of the typeneeded.In the message text:datatypedatatypeExample: HPE20503 Can’t use ARRAY ref as HASHrefSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: While deferencing, you must makesure that the type of reference the variable has usesref() function. You can use the ref() function to test thetype of the reference, if need be.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20504 Cannot use string (″str″) as datatype refwhile ″strict refs″ in useExplanation: Only hard references are allowed by″strict refs″. Symbolic references are disallowed.In the message text:str stringdatatypedatatypeExample: HPE20504 Cannot use string (″STRING″)as ARRAY ref while ″strict refs″ in useSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: If you are using strict ref, then youneed to make sure you are referencing the symbolicconstant.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.142 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 152. Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20505 Cannot use an undefined value asdatatype referenceExplanation: A value used as either a hard referenceor a symbolic reference must be a defined value.In the message text:datatypedatatypeExample: HPE20505 Cannot use an undefined valueas ARRAY referenceSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that you are using thedefined value for symbolic references.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20506 Modification of non-creatable arrayvalue attempted, subscript numExplanation: You tried to make an array value springinto existence, and the subscript was probably negative,even counting from end of the array backwards.In the message text:numnumberExample: HPE20506 Modification of non-creatablearray value attempted, subscript -1System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure you are using the rightarray index.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20507 Modification of non-creatable hashvalue attempted, subscript ″str″Explanation: You tried to create a hash value, but itcould not be created.In the message text:str stringExample: HPE20507 Modification of non-creatablehash value attempted, subscript ″default″System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Change the initial value of the default.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20508 Modification of a read-only valueattemptedExplanation: You tried, directly or indirectly, to changethe value of a constant. You did not, of course, try ″2 =1″, because the compiler catches that.Example: HPE20508 Modification of a read-only valueattemptedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: But an easy way to do the same thingis:Chapter 6. Perl messages 143
  • 153. sub mod { $_[0] = 1 }mod(2);Another way is to assign to a substr() that’s off the endof the string.Yet another way is to assign to a C<foreach> loopI<VAR> when I<VAR> is aliased to a constant in thelook I<LIST>:$x = 1;foreach my $n ($x, 2) {$n *= 2; # modifies the $x,# but fails on# attempt to modify# the 2}System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20509 Out of memory!Explanation: The malloc() function returned 0,indicating there was not enough remaining memory (orvirtual memory) to satisfy the request. Perl has nooption but to exit immediately.Example: HPE20509 Out of memory!System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check to see if you are using morethan 64k bytes of memory.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: X- A very fatal error (non-trappable).Automation: Not applicable.HPE20510 Insecure dependency in function stateExplanation: You tried to do something that thetainting mechanism did not like. The tainting mechanismis turned on when you are running setuid or setgid, orwhen you specify -T to turn it on explicitly.In the message text:functionA functionstateThe state Perl was in which contributed to theproblem.Example: HPE20510 Insecure dependency in globwhile running with -TSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: The tainting mechanism labels alldata that is derived directly or indirectly from the user. Ifany such data is used in a ″dangerous″ operation, youget this error.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20511 Unsupported socket function ″function″calledExplanation: Your machine does not support theBerkeley socket mechanism, or at least that is whatConfigure thought.In the message text:functionfunctions (socket functions)Example: HPE20511 Unsupported socket function″recv″ calledSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check whether your machinesupports Berkeley socket or has been configured to useit.System programmer response: No System144 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 154. Programmer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20512 Unsupported directory function″function″ calledExplanation: Your machine does not support opendir()and readdir().In the message text:functionfunctions (directory function)Example: HPE20512 Unsupported directory function″readdir″ calledSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check whether your machinesupports opendir() and readdir().System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20513 The function function is unimplementedExplanation: The function indicated is notimplemented on this architecture, according to theprobings of Configure.In the message text:functionThe unimplemented functionExample: HPE20513 The pipe function isunimplementedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Function is not implemented in yoursystem. Contact system administrator.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20514 ″my″ variable var can’t be in a packageExplanation: Lexically scoped variables aren’t in apackage, so it doesn’t make sense to try to declare onewith a package qualifier on the front.In the message text:varvariable nameExample: HPE20514 ″my″ variable fp can’t be in apackageSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Use local() if you want to localize apackage variable.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20515 Can’t localize through a referenceExplanation: You said something like local $$ref ,which Perl can’t currently handle. When it goes torestore the old value of whatever $ref pointed to afterthe scope of the local() is finished, it can’t be sure that$ref will still be a reference.Example: HPE20515 Can’t localize through areferenceSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Chapter 6. Perl messages 145
  • 155. Operator response: No System Operator response isrequired.User response: Be sure that you are not localizing thereference.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20516 panic: memory wrapExplanation: An internal error occurred that cannot beresolved by the user.Example: HPE20516 panic: memory wrapSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20517 Goto undefined subroutine &packageExplanation: This is displaced when you try to debugthe executable file of error script.In the message text:packagepackage nameExample: HPE20517 Goto undefined subroutine&Apache::Constants::SERVER_ERRORSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: If you are running a error script youwill get this error. Correct the error in the script and thenrun the script.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20518 Goto undefined subroutineExplanation: The subroutine specified on the gotostatement is not defined.Example: HPE20518 Goto undefined subroutineSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Verify that the name has not beenmisspelled and that the subroutine has been includedinto your program.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20519 str returned from lvalue subroutine inscalar contextExplanation: In scalar array is returned by lvaluesubroutine.In the message text:strstringExample: HPE20519 Array returned from lvaluesubroutine in scalar contextSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: You are trying to something like this.146 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 156. sub lv0 : lvalue { };lv0 = (2,3);In second line left hand side is in scalar context and lefthand side in list context to fix this you can givesomething like this.sub lv0 : lvalue { };(lv0) = (2,3);System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20520 no argument for locked method callExplanation: The lock method was called without anyargument.Example: HPE20520 no argument for locked methodcallSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: lock method call expect argument.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20521 bad top format referenceExplanation: top format reference is not correct.Example: HPE20521 bad top format referenceSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Change the top format reference,using the correct syntax.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20522 Possible memory corruption: functionoverflowed 3rd argumentExplanation: An ioctl() or fcntl() returned more thanPerl was bargaining for. Perl guesses a reasonablebuffer size, but puts a sentinel byte at the end of thebuffer just in case. This sentinel byte got clobbered, andPerl assumes that memory is now corrupted.In the message text:functionfunctionExample: HPE20522 Possible memory corruption:ioctl overflowed 3rd argumentSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure you have passed thecorrect number of argument for the ioctl or fcntlfunctions.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20523 Argument to lock needs to be passedas refExplanation: lock function is passed withnon-reference argument. The argument to lock has tobe reference variable.Example: HPE20523 Argument to lock needs to bepassed as refSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.Chapter 6. Perl messages 147
  • 157. User response: Make sure that the argument you arepassing to the lock function is a reference variable.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20524 Argument to share needs to be passedas refExplanation: share function take only reference as theargument.Example: HPE20524 Argument to share needs to bepassed as refSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that you are passing areference to the share function.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20525 panic: destruct destroyed thread thread(string)Explanation: An internal error occurred that cannot beresolved by the user.In the message text:threadthreadstringreasonExample: HPE20525 panic: destruct destroyed threadnew (somereason)System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20526 panic: cannot find thread dataExplanation: An internal error occurred that cannot beresolved by the user.Example: HPE20526 panic: cannot find thread dataSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20527 Cannot join a detached threadExplanation: After a thread has been detached, itruns until it is finished. Perl will then automatically cleanup after it.Example: HPE20527 Cannot join a detached threadSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Try to check whether the thread isstill alive before joining it.System programmer response: No System148 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 158. Programmer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20528 Thread already joinedExplanation: You cannot join a thread that hasalready been joined. If you try to do that, an exceptionwill be raised.Example: HPE20528 Thread already joinedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: If you want to join a thread that hasalready been joined, you must free the thread firstbefore joining it again.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20529 destruct tid @ string by thread nowknown_threadsExplanation: Clean up after thread is done withthread_destruct is called. This is an information-onlymessage.In the message text:numnumber.threadthreadstringreasonknown_threadthread which does not have thread idExample: HPE20529 destruct 45 @ tinterp by threadnow knownthread.System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: No action needs to be taken becausethis is an information-only message.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20530 CLONE objExplanation: Joining the thread, this code needs totake the return value from the call_sv and send it back.If the object being cloned is not valid, this error willoccur.Example: HPE20530 CLONE SocketPac::unpack.System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: If cloning is attempted on a non validobject, this error will occur. Determine the cause and tryre-running the script.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20531 Argument to cond_wait needs to bepassed as refExplanation: Arugument to cond_wait is not areference.Example: HPE20531 Argument to cond_wait needs tobe passed as refSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Chapter 6. Perl messages 149
  • 159. Operator response: No System Operator response isrequired.User response: Make sure that you are passing theright argument to cond_wait.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20532 cond_wait lock needs to be passed asrefExplanation: reference argument is expected at theerror line.Example: HPE20532 cond_wait lock needs to bepassed as refSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Pass the refrence argument forcond_wait.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20533 Argument to cond_timedwait needs tobe passed as refExplanation: Reference argument is expected at theerror line.Example: HPE20533 Argument to cond_timedwaitneeds to be passed as refSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check whether the argument at theerror line is a reference.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20534 cond_timedwait lock needs to bepassed as refExplanation: reference argument is expected at theerror line.Example: HPE20534 cond_timedwait lock needs to bepassed as refSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure cond_timedwait lock hasonly reference argument.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20535 Argument to cond_signal needs to bepassed as refExplanation: cond_signal function expect referenceargument.Example: HPE20535 Argument to cond_signal needsto be passed as refSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure you are passing areference argument for cond_signal.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: Perl150 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 160. Module: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20536 Cannot share globs yetExplanation: sharing of perl globs is not allowed.Example: HPE20536 Cannot share globs yetSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not share perl globs.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20537 Cannot share subs yetExplanation: sharing of perl subs is not allowed.Example: HPE20537 Cannot share subs yetSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not share perl subs.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20538 cond_timedwait not supported on thisplatformExplanation: cond_timedwait not supported in thisplatform.Example: HPE20538 cond_timedwait not supportedon this platformSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: You cannot use cond_timedwaitbecause this funciton is not supported in this platform.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20539 panic: cond_timedwait (num)Explanation: An internal error occurred that cannot beresolved by the user.In the message text:numnumberExample: HPE20539 panic: cond_timedwait (100)System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20540 panic: cond_timedwaitExplanation: An internal error occurred that cannot beresolved by the user.Example: HPE20540 panic: cond_timedwaitSystem action: Perl immediately stops interpreting theChapter 6. Perl messages 151
  • 161. file (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20541 Invalid value for shared scalarExplanation: This occurs when you use the sharedattribute on a blessed object.Example: HPE20541 Invalid value for shared scalarSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use shared attributes forblessed objects.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20542 thread waiting - owned by fileownerfilename:linenumExplanation: When DEBUG_LOCKS is set, one canlock the particular line of the file. If another person trysto access it, this error will be showed.In the message text:threadthreadfileownerowner of filefilenameName of file.linenumline number which is locked.Example: HPE20542 process1 waiting - owned byISLDEV test.pm:1000System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Warning message showed you needto wait until lock is released,System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20543 refvar s=var has no shared SVExplanation: Not able to find the pointer for theshared variable.In the message text:var Shared variablerefvarThe variable that has the pointer.Example: HPE20543 vai s=var has no shared SVSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check to make sure the syntax forsharing variables is correct.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.152 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 162. HPE20544 variable is not sharedExplanation: Not able to find the shared variable.In the message text:variablevariableExample: HPE20544 $hashref is not sharedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that you are searching forthe correct shared variable.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20545 Explicit blessing to ’’ (assumingpackage main)″Explanation: You are blessing a reference to a zerolength string. This has the effect of blessing thereference into the package main.Example: HPE20545 Explicit blessing to ’’ (assumingpackage main)″System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: You may want to provide a defaulttarget package. For example: bless($ref, $p ″″’MyPackage’);System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20546 panic: cond_timedwait-resetExplanation: An internal error occurred that cannot beresolved by the user.Example: HPE20546 panic: cond_timedwait-resetSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20547 panic: join with a thread with strangeordinal numExplanation: An internal error occurred that cannot beresolved by the user.In the message text:numNumber.Example: HPE20547 panic: join with a thread withstrange ordinal 4System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.Chapter 6. Perl messages 153
  • 163. HPE20548 panic: join with a thread which couldnot startExplanation: An internal error occurred that cannot beresolved by the user.Example: HPE20548 panic: join with a thread whichcould not startSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20549 Use of /c modifier is meaninglesswithout /gExplanation: (W regexp) You used the /c modifier witha regex operand, but didn’t use the /g modifier.Example: HPE20549 Use of /c modifier ismeaningless without /gSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Use /g if you want to use the /cmodifier. (This may change in the future.)System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20550 Use of /c modifier is meaningless ins///Explanation: You used the /c modifier in asubstitution. This has no value.Example: HPE20550 Use of /c modifier ismeaningless in s///System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Do not use the /c modifier insubstitutions because it will not work.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20559 Too late to run INIT blockExplanation: A INIT block is being defined during runtime proper, when the opportunity to run them hasalready passed.Example: HPE20559 Too late to run INIT blockSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Perhaps you are loading a file withrequire or do when you should be using use instead. Orperhaps you should put the require or do inside aBEGIN blockSystem programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.154 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 164. HPE20560 panic: cannot push :perlio for PerlIOExplanation: An internal error occurred that cannot beresolved by the user.In the message text:PerlIOPerl ioExample: HPE20560 panic: cannot push :perlio forutf8System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20561 panic: decode did not return a valueExplanation: An internal error occurred that cannot beresolved by the user.Example: HPE20561 panic: decode did not return avalueSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20562 panic: decode did not return UTF-8’string’Explanation: This is an internal error that cannot beresolved by the user.In the message text:stringstringExample: HPE20562 panic: decode did not returnUTF-8 ’HYPHEN’System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Please follow your local proceduresfor reporting a problem to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20563 panic: encode did not return a valueExplanation: An internal error occurred that cannot beresolved by the user.Example: HPE20563 panic: encode did not return avalueSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.Chapter 6. Perl messages 155
  • 165. HPE20564 panic: opcode ″string″ value num isinvalidExplanation: An internal error occurred that cannot beresolved by the user.In the message text:stringoperation namenumoperation codeExample: HPE20564 panic: opcode ″READ″ value 64is invalidSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20565 panic: invalid bitspec for ″string″ (typebitspec)Explanation: This is an internal error that cannot beresolved by the user.In the message text:stringoperation namebitspecbits specificationExample: HPE20565 panic: invalid bitspec for ″shift″(type 0x77ef)System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Please follow your local proceduresfor reporting a problem to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20566 panic: opcode num (string) out of rangeExplanation: An internal occur occurred that cannotbe resolved by the user.In the message text:stringoperation namenumoperation codeExample: HPE20566 panic: opcode 68 (read) out ofrangeSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20567 panic: unexpected simple REx opcodenumExplanation: An internal error occurred that cannot beresolved by the user.In the message text:numoperation codeExample: HPE20567 panic: unexpected simple RExopcode 68System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.156 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 166. Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20568 panic: pregfree comppadExplanation: An internal error occurred that cannot beresolved by the user.Example: HPE20568 panic: pregfree comppadSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20569 panic: regfree data code ’code’Explanation: An internal error occurred that cannot beresolved by the user.In the message text:codecodesExample: HPE20569 panic: regfree data code ’d’System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20570 panic: Devel::DProf inconsistentsubroutine returnExplanation: Devel::DProf called a subroutine thatexited using goto(LABEL), last(LABEL) or next(LABEL).Leaving that way a subroutine called from an XSUB willlikely lead to a crash of the interpreter. This is a bugthat may be fixed in the future.This is an internal errorthat cannot be resolved by the user.Example: HPE20570 panic: Devel::DProf inconsistentsubroutine returnSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow local procedures for reportingproblems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20571 panic: top_envExplanation: The compiler attempted to do a goto, orsomething similar. This is an internal error that cannotbe resolved by the user.Example: HPE20571 panic: top_envSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.Chapter 6. Perl messages 157
  • 167. User response: Follow local procedures for reportingproblems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20572 panic: restartopExplanation: An internal routine requested a goto (orsomething like it), and didn’t supply the destination.When you are using goto, you have to mention thedestination label. This is an internal error that cannot beresolved by the user.Example: HPE20572 panic: restartopSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20573 panic: pp_splitExplanation: Something terrible went wrong in settingup for the split. This is an internal error that cannot beresolved by the user.Example: HPE20573 panic: pp_splitSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow local procedures for reportinga problem to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20574 panic: unlock_condpair unlockingnon-mutexExplanation: An internal error occurred that cannot beresolved by the user.Example: HPE20574 panic: unlock_condpairunlocking non-mutexSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20575 panic: unlock_condpair unlockingmutex that we don’t ownExplanation: An internal error occurred that cannot beresolved by the user.Example: HPE20575 panic: unlock_condpairunlocking mutex that we don’t ownSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.158 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 168. Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20576 panic: mapstartExplanation: The compiler is confused with respect tothe map() function. This is an internal error that cannotbe resolved by the user.Example: HPE20576 panic: mapstartSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow local procedures for reportingproblems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20577 panic: bad gimme: numExplanation: An internal error occurred that cannot beresolved by the user.In the message text:numnumberExample: HPE20577 panic: bad gimme: 5System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20578 panic: returnExplanation: We popped the context stack to asubroutine or eval context, and then discovered it wasn’ta subroutine or eval context. This is an internal errorthat cannot be resolved by the user.Example: HPE20578 panic: returnSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow local procedures for reportingproblems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20579 panic: lastExplanation: We popped the context stack to a blockcontext, and then discovered it wasn’t a block context.This is an internal error that cannot be resolved by theuser.Example: HPE20579 panic: lastSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Chapter 6. Perl messages 159
  • 169. Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20580 panic: gotoExplanation: We popped the context stack to acontext with the specified label, and then discovered itwasn’t a context we know how to do a goto in. This isan internal error that cannot be resolved by the user.Example: HPE20580 panic: gotoSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20581 panic: dieExplanation: We popped the context stack to an evalcontext, and then discovered it wasn’t an eval context.This is an internal error that cannot be resolved by theuser.Example: HPE20581 panic: dieSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20582 panic: pp_matchExplanation: The internal pp_match() routine wascalled with invalid operational data. This is an internalerror that cannot be resolved by the user.Example: HPE20582 panic: pp_matchSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20583 panic: pp_match start/end pointersExplanation: The internal pp_match() routine wascalled with invalid operational data. This is an internalerror that cannot be resolved by the user.Example: HPE20583 panic: pp_match start/endpointersSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.160 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 170. HPE20584 panic: pp_iterExplanation: The foreach iterator got called in anon-loop context frame. This is an internal error thatcannot be resolved by the user.Example: HPE20584 panic: pp_iterSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20585 panic: pp_substExplanation: The internal pp_subst() routine wascalled with invalid operational data. This is an internalerror that cannot be resolved by the user.Example: HPE20585 panic: pp_substSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20586 panic: sv_setpvn called with negativestrlenExplanation: An internal error occurred that cannot beresolved by the user.Example: HPE20586 panic: sv_setpvn called withnegative strlenSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20587 panic: del_backrefExplanation: Failed an internal consistency checkwhile trying to reset a weak reference. This is aninternal error that cannot be resolved by the user.Example: HPE20587 panic: del_backrefSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.Chapter 6. Perl messages 161
  • 171. HPE20588 panic: sv_insertExplanation: The sv_insert() routine was told toremove more string than there was string. This is aninternal error that cannot be resolved by the user.Example: HPE20588 panic: sv_insertSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20589 panic: sv_pos_b2u: bad byte offsetExplanation: An internal error occurred that cannot beresolved by the user.Example: HPE20589 panic: sv_pos_b2u: bad byteoffsetSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20590 semi-panic: attempt to dup freed stringExplanation: The internal newSVsv() routine wascalled to duplicate a scalar that had previously beenmarked as free. This is an internal error that cannot beresolved by the user.Example: HPE20590 semi-panic: attempt to dup freedstringSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20591 panic: frexpExplanation: The library function frexp() failed, makingprintf(″%f″) impossible. This is an internal error thatcannot be resolved by the user.Example: HPE20591 panic: frexpSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.162 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 172. HPE20592 panic: ss_dup inconsistencyExplanation: An internal error occurred that cannot beresolved by the user.Example: HPE20592 panic: ss_dup inconsistencySystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20593 panic: mallocExplanation: Something requested a negative numberof bytes of malloc. This is an internal error that cannotbe resolved by the user.Example: HPE20593 panic: mallocSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Increase the size of bucket because itrequires a positive number of bytes. ″1 if does not fit, -1if easily fits in a smaller bucket, otherwise 0″.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20594 panic: reallocExplanation: Something requested a negative numberof bytes of realloc. This is an internal error that cannotbe resolved by the user.Example: HPE20594 panic: reallocSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Increase the size of bucket because itrequires a positive number of bytes. ″1 if does not fit, -1if easily fits in a smaller bucket, otherwise 0″.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20595 panic: callocExplanation: Something requested a negative numberof bytes of realloc. This is an internal error that cannotbe resolved by the user.Example: HPE20595 panic: callocSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.Chapter 6. Perl messages 163
  • 173. HPE20596 panic: pthread_getspecificExplanation: An internal error occurred that cannot beresolved by the user.Example: HPE20596 panic: pthread_getspecificSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20597 panic: pthread_setspecificExplanation: An internal error occurred that cannot beresolved by the user.Example: HPE20597 panic: pthread_setspecificSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20598 panic: perl_cond_wait called by lastrunnable threadExplanation: An internal error occurred that cannot beresolved by the user.Example: HPE20598 panic: perl_cond_wait called bylast runnable threadSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20599 panic: no strftimeExplanation: An internal error occurred that cannot beresolved by the user.Example: HPE20599 panic: no strftimeSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20600 NULL regexp parameterExplanation: The internal pattern matching routinesare out of control. This is an internal error that cannotbe resolved by the user.Example: HPE20600 NULL regexp parameterSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.164 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 174. Operator response: No System Operator response isrequired.User response: Parameter regular expression shouldnot be Null. Follow your local procedures for reportingproblems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20601 corrupted regexp programExplanation: The regular expression engine gotpassed a regexp program without a valid magic number.This is an internal error that cannot be resolved by theuser.Example: HPE20601 corrupted regexp programSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20602 regexp memory corruptionExplanation: The regular expression engine gotconfused by what the regular expression compiler gaveit. This is an internal error that cannot be resolved bythe user.Example: HPE20602 regexp memory corruptionSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check the regular expression.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20603 corrupted regexp pointersExplanation: The regular expression engine gotconfused by what the regular expression compiler gaveit. This is an internal error that cannot be resolved bythe user.Example: HPE20603 corrupted regexp pointersSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check the regular expression.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20604 regexp unwind memory corruptionExplanation: The regular expression engine gotconfused by what the regular expression compiler gaveit. This is an internal error that cannot be resolved bythe user.Example: HPE20604 regexp unwind memorycorruptionSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemChapter 6. Perl messages 165
  • 175. Programmer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20605 List form of piped open notimplementedExplanation: The list form of piped open is notimplemented for perl version 5.007003 and below.Example: HPE20605 List form of piped open notimplementedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: If you type the following commandline syntax while using perl version 5.007003 and below,the subsequent error will occur:perl -le "print $]; open(P, ’-"’, $^X, ’-e’, 1)or die $!"5.007003List form of piped open not implemented at -e line 1.%SYSTEM-F-ABORT, abortSystem programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20606 Unknown Unicode option letter optExplanation: You specified an unknown Unicodeoption. See Running the Perl interpreter documentationof the -C switch for a list of known options.In the message text:optThe Option.Example: HPE20606 Unknown Unicode option letter-dSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Provide the correct letter of theUnicode option.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20607 Unknown Unicode option value optExplanation: You specified an unknown Unicodeoption. See Running the Perl interpreter documentationof the -C switch for the list of known options.In the message text:optThe Option.Example: HPE20607 Unknown Unicode option value-C7System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Provide the correct Unicode optionvalue.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20608 Filehandle filehandle opened only for strputExplanation: A file is opened in read mode and youare trying to write to it. Or, a file is opened in writemode and you are trying to read it.In the message text:166 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 176. filehandlefile handler.str stringExample: HPE20608 Filehandle FH opened only forinputSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: If a file is opened in read mode, youcannot write to it. Similarly, if a file is opened in writemode, you cannot read it. Make sure to only write tofiles in write mode, and read from files in read mode.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20609 Filehandle opened only for str putExplanation: A file is opened in read mode, and youare trying to write to it. Or, a file is opened in writemode, and you are trying to read from it.In the message text:str string (in or out)Example: HPE20609 Filehandle opened only for inputSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: If a file is opened in read mode, youcan only read the file. Similarly, if a file is opened inwrite mode, you can only write to the file.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20610 (Are you trying to call functionpars ondirhandle filehandle?)Explanation: You could flock on a normal file that isuniquely associated to each directory (like ″${dir}.lock″.Since flock is advisory only, you cannot rely on itoutside your application.In the message text:functionfunction nameparsparanthesesfilehandlefile handlerExample: HPE20610 t(Are you trying to call flock() ondirhandle SOMEDIR?)nSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not depend on flock outside yourapplication.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20611 (Are you trying to call function pars ondirhandle?)Explanation: You can flock on a normal file that isuniquely associated to each directory (like ″${dir}.lock″.Since flock is advisory only, you cannot depend on itoutside your application.In the message text:functionfunction nameparsparanthesesExample: HPE20611 (Are you trying to call %s%s ondirhandle?)System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.Chapter 6. Perl messages 167
  • 177. User response: Do not rely on flock outside yourapplication.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20612 A variable may not be unsharedExplanation: An attempt was made to unshare avariable; this is not allowed.Example: HPE20612 A variable may not be unsharedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: There are certain shared variablesthat cannot be unshared. Try to avoid unsharing thesevariables.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20613 Usage: attributes::boots trap $moduleExplanation: A usage error occurred while using thebootstrap function. It may be a result of a mismatchedargument.Example: HPE20613 Usage: attributes::boots trap$moduleSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check to make sure the bootstrapfunction is being used correctly.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20614 Usage: attributes::_modify_attrs$reference, @attributesExplanation: A usage error occured while using theattributes::_modify_attrs function. It may be a resultof a mismatched argument.Example: HPE20614 Usage: attributes::_modify_attrs$reference, @attributesSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check to make sure theattributes__modify_attrs function is being usedcorrectly.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20615 Usage: attributes::_fetch_attrs$referenceExplanation: A usage error occured while using theattributes::_fetch_attrs function. It may be a resultof a mismatched argument.Example: HPE20615 Usage: attributes::_fetch_attrs$referenceSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check to make sure theattributes::_fetch_attrs function is being usedcorrectly.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: Perl168 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 178. Module: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20616 Usage: attributes::_guess_stash$referenceExplanation: A usage error occured while using theattributes::_guess_stash function. It may be a resultof a mismatched argument.Example: HPE20616 Usage: attributes::_guess_stash$referenceSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check to make sure theattributes__guess_stash function is being usedcorrectly.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20617 Usage: attributes::reftype $referenceExplanation: A usage error occured while using theattributes::_reftype function. It may be a result ofmismatched arguments.Example: HPE20617 Usage: attributes::reftype$referenceSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check to make sure theattributes::_reftype function is being used correctly.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20618 Usage: attributes::_warn_reserved ()Explanation: A usage error occured while using theattributes::_warn_reserved function. It may bebecause of a mismatch of arguments.Example: HPE20618 Usage:attributes::_warn_reserved ()System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check to make sure theattributes__warn_reserved function is being usedcorrectly.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20619 Size magic not implementedExplanation: The size of the sv magic variable is notimplemented.Example: HPE20619 Size magic not implementedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: The size of the magic variable is notimplemented. Therefore, you can not use the mg_sizefunction.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.Chapter 6. Perl messages 169
  • 179. HPE20620 No such hook: hookExplanation: Internal hook set using the %SIG hashkey, which was passed for the %SIG, is not correct.In the message text:hookhook name (eg. __DIE__)Example: HPE20620 No such hook: ALRMSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check to make sure the hook beingused is correct.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20621 SIGSignal handler ″signalhandler″ notdefined.Explanation: The signal handler named in %SIGdoesn’t, in fact, exist. Perhaps you put it into the wrongpackage.In the message text:SignalSignal Example INT,IO etcsignalhandlersignal handler basically functionExample: HPE20621 SIGINT handler ″signal_inite″not defined.System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Check if the signal handler name iscorrect or you are using the right package,System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20622 No such signal: SIGsignalExplanation: You specified a signal name as asubscript to %SIG that was not recognized.In the message text:signalSignal name which is not recognized from thesystem.Example: HPE20622 No such signal: SIGABTSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Try using kill -l in your shellsession to see a list of valid signal names on yoursystem.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20623 Do not know how to handle magic oftype varExplanation: The internal handling of magicalvariables has been cursed. This is an internal error thatcannot be resolved by the user.In the message text:var The variable name.Example: HPE20623 Do not know how to handlemagic of type howSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.170 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 180. Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20624 Bizarre SvTYPE [num]Explanation: On some platforms such as Windowswhere the fork() system call is not available, Perl can bebuilt to emulate fork() at the interpreter level.In the message text:numnumberExample: HPE20624 Bizarre SvTYPE [139]System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: The best solution is to get a versionof Perl that works properly with fork() commands or findanother method for running the scripts.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20625 Cloning substitution context isunimplementedExplanation: The context type is cloning substitution,but it is not implemented.Example: HPE20625 Cloning substitution context isunimplementedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Cloning substitution context is notimplemented. Check to make sure the context type ofthe cloning substitution is implemented.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20626 Invalid argument to sv_cat_decodeExplanation: Out of 5 arguments, there may be invalidargument passed to sv_cat_decode.Example: HPE20626 Invalid argument tosv_cat_decodeSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure to pass the appropriateargument, correct the error, and then re-run the script.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20627 Undefined value assigned to typeglobExplanation: An undefined value was assigned to atypeglob, a *foo = undef. This does nothing.Example: HPE20627 Undefined value assigned totypeglobSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Make sure to use the correct syntax;the syntax should be undef *foo.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Chapter 6. Perl messages 171
  • 181. Automation: Not applicable.HPE20628 Reference is already weakExplanation: You have attempted to weaken areference that is already weak.Example: HPE20628 Reference is already weakSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Check if a reference has alreadybeen weakened or not by using isweak() beforeweakening a reference.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20629 Reference miscount in sv_replace()Explanation: The internal sv_replace() function washanded a new SV with a reference count of other than1.Example: HPE20629 Reference miscount insv_replace()System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Reference count should be 1 insv_replace().System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20630 Newline in left-justified string forxprintfExplanation: There is a newline in a string to be leftjustified by printf or sprintf. The padding spaces willappear after the newline.In the message text:x will be ″s″ if the function is ″sprintf″ or blank if″printf″.Example: HPE20630 Newline in left-justified string forsprintfSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Remove the newline from the stringand put formatting characters in the sprintf format.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20631 Cannot create %s::ISAExplanation: Cannot create the package to place inISA.In the message text:packageThe package nameExample: HPE20631 Cannot create main::ISASystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check the syntax of the package.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.172 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 182. HPE20632 Use of inherited AUTOLOAD fornon-method method::fun() is deprecatedExplanation: As an accidental feature, AUTOLOADsubroutines are looked up as methods (using the @ISAhierarchy) even when the subroutines to be autoloadedwere called as plain functions (e.g.Foo::bar()), not asmethods (e.g. < Foo->bar() > or <$obj->bar() >). Perlissues an optional warning when non-methods useinherited AUTOLOADs. The simple rule is: inheritance willnot work when autoloading non-methods.In the message text:methodThe method name.functionThe function name.Example: HPE20632 Use of inherited AUTOLOAD fornon-method Foo::bar() is deprecatedSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: In any module that used to dependon inheriting AUTOLOAD for non-methods from a baseclass named BaseClass, execute *AUTOLOAD =&BaseClass::AUTOLOAD during startup. In code that saysuse AutoLoader; @ISA = qw(AutoLoader); you shouldremove AutoLoader from @ISA and change useAutoLoader; to use AutoLoader ’AUTOLOAD’;.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: D- A deprecation (optional).Automation: Not applicable.HPE20633 Use of $str is deprecatedExplanation: If you are using $# , it was an attempt toemulate a poorly defined awk feature. If you are using$* , this variable turned on multi-line pattern matching,both for you and any subroutines that you happen tocall.In the message text:str The string may be # or *. .Example: HPE20633 Use of $# is deprecatedSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Use an explicit printf() or sprintf()instead for $# . For $* , you should use the //m and //smodifiers to do that, without the dangerousaction-at-a-distance effects of $*.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: D- A deprecation (optional).Automation: Not applicable.HPE20634 Name ″str1::str2″ used only once:possible typoExplanation: Typographical errors often show up asunique variable names. If you had a good reason forhaving a unique name, then just mention it againsomehow to suppress the message.In the message text:str1The string.str2The string.Example: HPE20634 Name ″main::files″ used onlyonce: possible typoSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: The our declaration is provided tosupress the message purpose.NOTE: This warning detects symbols that have beenused only once, so $c, @c, %c, *c, &c, sub c{}, c(), andc (the filehandle or format) are considered the same; ifa program uses $c only once but also uses any of theothers, it will not trigger this warning.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.Chapter 6. Perl messages 173
  • 183. HPE20635 substr outside of stringExplanation: You tried to reference a substr() thatpointed outside of a string. That is, the absolute value ofthe offset was larger than the length of the string. Seesubstr. This warning is fatal if substr is used in an lvaluecontext (as the left hand side of an assignment or as asubroutine argument, for example).Example: HPE20635 substr outside of stringSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Substring should be within the range.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20636 Constant subroutine sub undefinedExplanation: You undefined a subroutine which hadpreviously been eligible for inlining. See Perlsubroutines for commentary and workarounds.In the message text:subThe subroutine.Example: HPE20636 Constant subroutine subPI()undefinedSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Previously compiled invocations ofthe function will still be using the old value of thefunction. If you need to be able to redefine thesubroutine, you need to ensure that it is not inlined,either by dropping the () prototype (which changescalling semantics, so beware) or by thwarting theinlining mechanism in some other way, such assub not_inlined () {23 if $];}System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20637 Odd number of elements inanonymous hashExplanation: You specified an odd number ofelements to initialize a hash, which is unusual, becausehashes come in key/value pairs.Example: HPE20637 Odd number of elements inanonymous hashSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Select an even number of elementsto initialize a hash.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20638 splice() offset past end of arrayExplanation: You attempted to specify an offset thatwas past the end of the array passed to splice().Splicing will instead commence at the end of the array,rather than past it. See splice.Example: HPE20638 splice() offset past end of arraySystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Try explicitly pre-extending the arrayby assigning $#array = $offset.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.174 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 184. Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20639 Use of freed value in iterationExplanation: Perhaps you modified the iterated arraywithin the loop? This error is typically caused by codelike the following:@a = (3,4);@a = () for (1,2,@a);For speed and efficiency reasons, Perl internally doesnot do full reference-counting of iterated items. Hence,deleting such an item in the middle of an iterationcauses Perl to see a freed value.Example: HPE20639 Use of freed value in iterationSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure not to modify arrays whilethey are being iterated over.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20640 Reference found where even-sized listexpectedExplanation: You gave a single reference where Perlwas expecting a list with an even number of elements(for assignment to a hash).Example: HPE20640 Reference found whereeven-sized list expectedSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: This usually means that you used theanon hash constructor when you meant to use parens.In any case, a hash requires key/value pairs.%hash = { one => 1, two => 2, }; # WRONG%hash = [ qw/ an anon array / ]; # WRONG%hash = ( one => 1, two => 2, ); # right%hash = qw( one 1 two 2 ); # also fineUse even numbered lists only.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20641 Odd number of elements in hashassignmentExplanation: You specified an odd number ofelements to initialize a hash, which is unusual, becausehashes come in key/value pairs.Example: HPE20641 Odd number of elements in hashassignmentSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Use even number of elements toinitialize a hash.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20642 glob failed (can’t start child:errnodisplay)Explanation: Something went wrong with the externalprogram(s) used for glob and < <*.c> >. Usually, thismeans that you supplied a glob pattern that caused theexternal program to fail and exit with a nonzero status.If the message indicates that the abnormal exit resultedin a coredump, this may also mean that your csh (Cshell) is broken.In the message text:errnodisplayError number with its description.Example: HPE20642 glob failed (can’t start child:3362 no such file)Chapter 6. Perl messages 175
  • 185. System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Change all of the csh-relatedvariables in config.sh: If you have tcsh, make thevariables refer to it as if it were csh (e.g.full_csh=’/usr/bin/tcsh’); otherwise, make them allempty (except that d_csh should be ’undef’) so thatPerl will think csh is missing. In either case, after editingconfig.sh, run ./Configure -S and rebuild Perl.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20643 glob failed (child exited with statusnum errnodisplay)Explanation: Something went wrong with the externalprogram(s) used for glob and < <*.c> >. Usually, thismeans that you supplied a glob pattern that caused theexternal program to fail and exit with a nonzero status.If the message indicates that the abnormal exit resultedin a coredump, this may also mean that your csh (Cshell) is broken.In the message text:numNumber.errnodisplayError number with its description.Example: HPE20643 glob failed (child exited withstatus 1,coredump)System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: You should change all of thecsh-related variables in config.sh: If you have tcsh,make the variables refer to it as if it were csh (e.g.full_csh=’/usr/bin/tcsh’); otherwise, make them all empty(except that d_csh should be ’undef’) so that Perl willthink csh is missing. In either case, after editingconfig.sh, run ./Configure -S and rebuild Perl.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20644 utf8 ″xunicode″ does not map toUnicodeExplanation: When reading in different encodings,Perl tries to map everything into Unicode characters.The bytes you read in are not legal in this encoding, forexample utf8 ″xE4″ does not map to Unicode if you tryto read in the a-diaereses Latin-1 as UTF-8.In the message text:unicodeThe unicode character.Example: HPE20644 utf8 ″xE4″ does not map toUnicodeSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Check the Unicode character todetermine whether it is present in that encoding.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20645 Deep recursion on anonymoussubroutineExplanation: This subroutine has called itself indirectly100 times more than it has returned.Example: HPE20645 Deep recursion on anonymoussubroutineSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: This probably indicates an infiniterecursion, unless you’re writing unusual benchmarkprograms, in which case it indicates something else.System programmer response: No System176 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 186. Programmer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20646 Deep recursion on subroutine ″sub″Explanation: This subroutine has called itself (directlyor indirectly) 100 times more than it has returned.In the message text:subThe subroutine name.Example: HPE20646 Deep recursion on subroutine″main::sum″System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: This probably indicates an infiniterecursion, unless you are writing unusual benchmarkprograms, in which case it indicates something else.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20647 Use of reference ″str″ as array indexExplanation: You tried to use a reference as an arrayindex; this is probably not what you meant, becausereferences in numerical contexts tend to be hugenumbers, and therefore usually indicates programmererror.In the message text:str The string may be a refrence.Example: HPE20647 Use of reference ″ref″ as arrayindexSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: If you intended to use the referenceas an array index, explicitly numify your reference, likeso: $array[0+$ref]. This warning is not given foroverloaded objects, because you can overload thenumification and stringification operators.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20648 Possible Y2K bug: strExplanation: You are concatenating the number 19with another number, which could be a potential Year2000 problem.In the message text:str The string.Example: HPE20648 Possible Y2K bug: 00System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: This warning can only be seen whenspecified by -DPERL_Y2KWARN configuration option.Normally, this warning message is not seen as Perl isY2K complaint.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20649 About to append an integer to ’19’Explanation: This message is displayed withHPE20648 and clarifies the reason for the Y2K warning.Example: HPE20648 Possible Y2K bug: HPE20649about to append an integer to ’19’System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Chapter 6. Perl messages 177
  • 187. Operator response: No System Operator response isrequired.User response: Make sure not to append an integerto ’19’.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20650 panic: unknown argument type num,line numExplanation: This is an internal error that cannot beresolved by the user.In the message text:numnumberExample: HPE20650 panic: unknown argument type10, line 20System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20651 panic: unknown argument type num,arg num, line numExplanation: This is an internal error that cannot beresolved by the user.In the message text:numnumberExample: HPE20651 panic: unknown argument type4, arg 5, line 11System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20652 panic: aryrefarg num, line numExplanation: This is an internal error that cannot beresolved by the user.In the message text:numnumberExample: HPE20652 panic: aryrefarg 6, line 11System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20653 panic: PerlIO layer array corruptExplanation: If the PerlIO layer is mentioned but notdefined, this error will occur.Example: HPE20653 panic: PerlIO layer array corrupt178 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 188. System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20654 panic: sysconf: stringExplanation: This is an internal error that cannot beresolved by the user.In the message text:stringstringExample: HPE20654 panic: sysconf: pagesize notknownSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20655 panic: sysconf: pagesize unknownExplanation: This is an internal error that cannot beresolved by the user.Example: HPE20655 panic: sysconf: pagesizeunknownSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20656 panic: bad pagesize numExplanation: This is an internal error that cannot beresolved by the user.In the message text:numnumberExample: HPE20656 panic: bad pagesize = -1064System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20657 panic: sprintf overflow - memorycorrupted!Explanation: This is an internal error that cannot beresolved by the user.Example: HPE20657 panic: sprintf overflow - memorycorrupted!System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Chapter 6. Perl messages 179
  • 189. Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20658 panic: Off-page sbrkExplanation: This is an internal error that cannot beresolved by the user.Example: HPE20658 panic: Off-page sbrkSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20659 panic: do_trans_simple line nExplanation: The internal do_trans routines werecalled with incorrect operational data. This is an internalerror that cannot be resolved by the user.In the message text:n The line number.Example: HPE20659 panic: do_trans_simple line 9System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20660 panic: do_trans_count line nExplanation: The internal do_trans routines werecalled with incorrect operational data. This is an internalerror that cannot be resolved by the user.In the message text:n The line number.Example: HPE20660 panic: do_trans_count line 9System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20661 panic: do_trans_complex line nExplanation: The internal do_trans routines werecalled with incorrect operational data. This is an internalerror that cannot be resolved by the user.In the message text:n The line number.Example: HPE20661 panic: do_trans_complex line 7System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.180 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 190. Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20662 panic: do_trans_simple_utf8 line nExplanation: The internal do_trans routines werecalled with incorrect operational data. This is an internalerror that cannot be resolved by the user.In the message text:n The line number.Example: HPE20662 panic: do_trans_simple_utf8 line8System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20663 panic: do_trans_complex_utf8 line nExplanation: The internal do_trans routines werecalled with incorrect operational data. This is an internalerror that cannot be resolved by the user.In the message text:n The line number.Example: HPE20663 panic: do_trans_complex_utf8line 5System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20664 panic: magic_len: numExplanation: This is an internal error that cannot beresolved by the user.In the message text:numnumberExample: HPE20664 panic: magic_len: 150System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20665 panic: magic_killbackrefsExplanation: Failed an internal consistency checkwhile trying to reset all weak references to an object.This is an internal error that cannot be resolved by theuser.Example: HPE20665 panic: magic_killbackrefsSystem action: Perl immediately stops interpreting theChapter 6. Perl messages 181
  • 191. file (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20666 panic: magic_mutexfreeExplanation: This is an internal error that cannot beresolved by the user.Example: HPE20666 panic: magic_mutexfreeSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20667 panic: pad_allocExplanation: The compiler got confused about whichscratch pad it was allocating, as well as freeing,temporaries and lexicals from. This is an internal errorthat cannot be resolved by the user.Example: HPE20667 panic: pad_allocSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20668 panic: pad_sv poExplanation: An invalid scratch pad offset wasdetected internally. This is an internal error that cannotbe resolved by the user.Example: HPE20668 panic: pad_sv poSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20669 panic: pad_swipe curpadExplanation: The compiler got confused about whichscratch pad it was allocating, as well as freeing,temporaries and lexicals from. This is an internal errorthat cannot be resolved by the user.Example: HPE20669 panic: pad_swipe curpadSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No System182 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 192. Programmer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20670 panic: pad_swipe poExplanation: An invalid scratch pad offset wasdetected internally. This is an internal error that cannotbe resolved by the user.Example: HPE20670 panic: pad_swipe poSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20671 panic: pad_reset curpadExplanation: The compiler got confused about whichscratch pad it was allocating and freeing temporariesand lexicals from. This is an internal error that cannotbe resolved by the user.Example: HPE20671 panic: pad_reset curpadSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20672 panic: pad_free curpadExplanation: The compiler got confused about whichscratch pad it was allocating and freeing temporariesand lexicals from. This is an internal error that cannotbe resolved by the user.Example: HPE20672 panic: pad_free curpadSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20673 panic: pad_free poExplanation: An invalid scratch pad offset wasdetected internally. This is an internal error that cannotbe resolved by the user.Example: HPE20673 panic: pad_free poSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Chapter 6. Perl messages 183
  • 193. Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20674 panic: cv_clone: stringExplanation: This is an internal error that cannot beresolved by the user.In the message text:stringstringExample: HPE20674 panic: cv_clone: namesvSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20675 panic: save_threadsv called innon-threaded perlExplanation: This is an internal error that cannot beresolved by the user.Example: HPE20675 panic: save_threadsv called innon-threaded perlSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20676 panic: corrupt saved stack indexExplanation: The savestack was requested to restoremore localized values than there are in the savestack.This is an internal error that cannot be resolved by theuser.Example: HPE20676 panic: corrupt saved stack indexSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20677 panic: leave_scope pad codeExplanation: This is an internal error that cannot beresolved by the user.Example: HPE20677 panic: leave_scope pad codeSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.184 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 194. HPE20678 panic: leave_scope inconsistencyExplanation: The savestack probably got out of sync.At least, there was an invalid enum on the top of it. Thisis an internal error that cannot be resolved by the user.Example: HPE20678 panic: leave_scopeinconsistencySystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20679 Constant(string) unknown: stringExplanation: A new constant which is properly notknown.In the message text:stringstringExample: HPE20679 Constant(undef) unknown:possibly a missing ″use charnames ...″System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check the syntax of the constant andcorrect any errors.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20680 Constant subroutine package::functionredefinedExplanation: You redefined a subroutine which hadpreviously been eligible for inlining.In the message text:functionfunction namepackagepackage nameExample: HPE20680 Constant subroutine Constantsubroutine Compress::Zlib redefinedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: See perlsub ″Constant Functions″ forcommentary and workarounds.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20681 Subroutine package::function redefinedExplanation: You redefined a subroutine.In the message text:functionfunction namepackagepackage nameExample: HPE20681 Subroutine compress::zipredefinedSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: To suppress this warning, say { nowarnings ’redefine’; eval ″sub name { ... }″; }System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlChapter 6. Perl messages 185
  • 195. Module: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20682 (?p{}) is deprecated - use (??{})Explanation: This error will occur if you are using theregular expression similar to m/(?p{ ’a’ })/.Example: HPE20682 (?p{}) is deprecated - use (??{})System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: ? is used mostly to indicate theending match, so either escape the ? character or donot use it at the begining.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20683 Invalid attribute name attrExplanation: The attribute name used has either aspecial character or $ in the begining.In the message text:attrattribute nameExample: HPE20683 invalid attribute name j$uSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check the syntax and correct anyerrors.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20684 Invalid subroutine reference or nameExplanation: Reference to subroutine is not correct.Example: HPE20684 Invalid subroutine reference ornameSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check the syntax of the subroutinereference.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20685 (Did you mean ″local″ instead of″our″?)Explanation: ″our″ does not localize the declaredglobal variable. You have declared it again in the samelexical scope, which seems superfluous.Example: HPE20685 (Did you mean ″local″ instead of″our″?)System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Use ″local″ to localize the variable.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.186 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 196. HPE20686 ″our″ variable var redeclaredExplanation: You seem to have already declared thesame global once before in the current lexical scope.var The Variable.Example: HPE20686 ″our″ variable foo redeclaredSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Do not declare a variable which hasalready been declared.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20687 DiedExplanation: You passed an empty string to die()(the equivalent of die ""), or you called it with no argsand both $@ and $_ were empty.Example: HPE20687 DiedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: When you are using the die()function, make sure to pass arguments to it.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20688 do_study: out of memoryExplanation: This should have been caught bysafemalloc() instead. This is an internal error thatcannot be resolved by the user.Example: HPE20688 do_study: out of memorySystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20689 Exiting str1 via str2Explanation: You are exiting an eval/format/specialblock construct (like a sort block orsubroutine)/subroutine/substitution by unconventionalmeans, such as with a goto or a loop control statement.In the message text:str1The string may be eval/format/special blockconstruct.str2The string may be goto, or a loop controlstatement.Example: HPE20689 Exiting eval via gotoSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: You cannot use goto or loop to exitfrom a subroutine or block.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.Chapter 6. Perl messages 187
  • 197. HPE20690 (Skipping label #num label)Explanation: If the label which you encounter is notthe label your searching for, this error message willappear.In the message text:numnumberlablelable nameExample: HPE20690 (Skipping label #2 lable)System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: While searching for the right label,this message will be displayed until the label is found.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20691 (Found label #num label)Explanation: While searching for the label, if you hitthe correct one, this message will be displayed.In the message text:numnumberlabellable nameExample: HPE20691 (Found label #2 LEVEL)System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: When the label is found, thismessage will be displayed.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20692 (Found loop #%ld)Explanation: Control ops (cops) are one of the threeops OP_NEXTSTATE, OP_DBSTATE, andOP_SETSTATE that are separate statements. They holdinformation important for lexical state and errorreporting. At run time, PL_curcop is set to point to themost recently executed cop, and thus can be used todetermine our current state. This error generated whenthe current state gets into a loop. This is an internalerror that cannot be resolved by the user.In the message text:numA long numberExample: HPE20692 (Found loop #20394)System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20693 Octal number > 037777777777non-portableExplanation: The octal number you specified is largerthan 2**32-1 (4294967295) and therefore non-portablebetween systems. See perlport for more on portabilityconcerns.Example: HPE20693 Octal number > 037777777777non-portableSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Make sure the octal number is withinthe range.188 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 198. System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20696 Format str redefinedExplanation: You redefined a format.In the message text:str The string.Example: HPE20696 Format STDOUT redefinedSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: To suppress this warning, say{no warnings ’redefine’;eval "format NAME =...";}System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20697 str found where operator expectedExplanation: The Perl lexer knows whether to expecta term or an operator. If it sees what it knows to be aterm when it was expecting to see an operator, it givesyou this warning.In the message text:str The string can be a term.Example: HPE20697 Bareword found where operatorexpectedSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Replace the bareword with anoperator or delimiter, such as a semicolon.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: S- A severe warning (default).Automation: Not applicable.HPE20698 sdbm store returned num, errno num,key ″string″Explanation: This warning is emmitted when you tryto store a key or a value that is too long. It means thatthe change was not recorded in the database.In the message text:stringstringnumnumberExample: HPE20698 sdbm store returned -1, errno22, key ″...″System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: There are a number of limits on thesize of the data that you can store in the SDBM file.The most important is that the length of a key, plus thelength of its associated value, may not exceed 1008bytes.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20699 No write permission to sdbm fileExplanation: You can read the file but you cannotwrite to it.Example: HPE20699 No write permission to sdbm fileSystem action: Perl immediately stops interpreting theChapter 6. Perl messages 189
  • 199. file (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check the permissions of the file andchange it to write mode.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20700 Unrecognized escape code passedthroughExplanation: You used a backslash-charactercombination which is not recognized by Perl as havingany special meaning. code will be displayed as is.In the message text:codeA characterExample: HPE20700 Unrecognized escape J. passedthroughSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: It is not an error to use this escapecharacter sequence, however, since it is not recognizedby Perl, verify that you wish to use that charactersequence as is instead of replacing it with an escapesequence which is recognized by Perl.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20701 db is not of type SDBM_FileExplanation: db is not connected to the SDBM_File,but you are trying to perform the SDBM_File operation.Example: HPE20701 db is not of type SDBM_FileSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure you have db connected tothe SDBM_File before performing such operation.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20702 Cannot reswap uid and euidExplanation: The setreuid() call failed for somereason in the setuid emulator of suidperl.Example: HPE20702 Cannot reswap uid and euidSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Examine the call to setreuid andcorrect any errors.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20703 Cannot apply ″layer″ in non-PerlIO perlExplanation: While providing a new interface to theUSE_PERLIO implementation, if the layer is other than:raw, this error will occur.In the message text:layerlayers like :raw and :bytesExample: HPE20703 Cannot apply ″:bytes″ innon-PerlIO perlSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.190 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 200. Operator response: No System Operator response isrequired.User response: Please confirm which layer you areusing.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20704 Recursive call to Perl_load_module inPerlIO_find_layerExplanation: This is an internal error occurred thatcannot be resolved by the user.Example: HPE20704 Recursive call toPerl_load_module in PerlIO_find_layerSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20705 Layer does not match this version ofPerlExplanation: The layer you are using does not matchthe version of Perl that is currently active.Example: HPE20705 Layer does not match thisversion of PerlSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure the version of Perlcurrently in use supports the layer.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20706 Don’t know how to get file nameExplanation: Failed to get the name of the perlIO.Example: HPE20706 Don’t know how to get file nameSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check the passed parameter to makesure its correct.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20707 ’X’ outside of string in functionExplanation: You had a pack() template that specifieda relative position after the end of the string beingunpacked or packed. For more information, seeperlfunc/packIn the message text:f The function name.Example: HPE20707 ’X’ outside of string in unpackSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Correct the relative position so that itis before the end of the string.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Chapter 6. Perl messages 191
  • 201. Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20708 ’code’ allowed only after types string infunctionExplanation: The ’!’ is allowed in pack() or unpack(),only after certain types.In the message text:codecodesstringstringfunctionfunction like pack or unpackExample: HPE20708 ’!’ allowed only after typessSiIlLxX in unpackSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: See perl functions for moreinformation on pack() or unpack().System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20709 Cannot use both ’<’ and ’>’ after type’%c’ in %sExplanation: You cannot use < or > after type ’I’ inpack or unpack.In the message text:codecodesfunctionfunction like pack or unpackExample: HPE20709 Can’t use both ’<’ and ’>’ aftertype ’I’ in packSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check to make sure you are notusing < or > next to I in pack or unpack.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20710 Cannot use ’code’ in a group withdifferent byte-order in functionExplanation: You cannot use the < or > in a groupwith a different byte-order in the pack or unpackfunction.In the message text:codecodesfunctionfunction like pack or unpackExample: HPE20710 Cannot use ’<’ in a group withdifferent byte-order in unpackSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure you are not using < or > ina group in pack or unpack.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20711 Duplicate modifier ’char’ after ’char’ infunctionExplanation: You have applied the same modifiermore than once after a type in a pack template. Formore information, see perlfunc/pack192 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 202. In the message text:charA modifier.funtionThe funtion may be pack or unpack.Example: HPE20711 Duplicate modifier ’>’ after ’I’ inpackSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Check your template. If you are usingthe same modifier, remove it from the template.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20712 Attempt to tie unique GVExplanation: Attempting to tie a unique GV (gobalvariable) to a variable.Example: HPE20712 Attempt to tie unique GVSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that you are not trying totie a unique GV to a normal variable.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20713 Value of node is num in Offset macroExplanation: If the value of node is < 0, this error willoccur.In the message text:numnumberExample: HPE20713 Value of node is -1 in OffsetmacroSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check the parameter passed to themacro.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20714 Value of node is num in Length macroExplanation: If the value of node is < 0, this error willoccur.In the message text:numnumberExample: HPE20714 value of node is -1 in LengthmacroSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check the parameter passed to themacro.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.Chapter 6. Perl messages 193
  • 203. HPE20716 ndbm store returned num, errno num,key ″string″Explanation: This warning is emitted when you try tostore a key or a value that is too long. It means that thechange was not recorded in the database.In the message text:stringstringnumnumberExample: HPE20716 ndbm store returned -1, errno22, key ″...″System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: There are a number of limits on thesize of the data that you can store in the SDBM file.The most important is that the length of a key, plus thelength of its associated value, may not exceed 1008bytes.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20717 No write permission to ndbm fileExplanation: You can read the file but cannot write toit.Example: HPE20717 No write permission to ndbm fileSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check the permissions and change itto write mode.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20747 Unrecognized escape char in characterclass passed throughExplanation: You used a backslash-charactercombination which is not recognized by Perl insidecharacter classes. The character was understoodliterally.In the message text:charA character class.Example: HPE20747 Unrecognized escape d incharacter class passed throughSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Do not use a backslash-charactercombination in a character class.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20751 strxfrm() gets absurdExplanation: This error occurs while setting up a newcollation locale.Example: HPE20751 strxfrm() gets absurdSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure your using the rightparameters.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).194 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 204. Automation: Not applicable.HPE20752 PERL_SIGNALS illegal: ″SignalVal″Explanation: When attempting to get theenvironmental variable, a legal value must be provided,or this error will occur.In the message text:SignalValSignal value.Example: HPE20752 PERL_SIGNALS illegal:″Language″System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: For legal values, refer toperlrun/PERL_SIGNALS and then select one for use.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20753 Cannot use ’code’ after -mnameExplanation: While using the -m option, if it isfollowed by any other character, this error occurs.In the message text:codecodes.Example: HPE20753 Cannot use ’n’ after -mnameSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure -m is not followed by anyother characters.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20755 Wrong syntax (suid) fd script name″filename″Explanation: In the fd script, the file will always bepresent in the /dev/fd/ . Therefore, if you indicate thatthe file is in the current directory, this error will occur.In the message text:filenamefile nameExample: HPE20755 Wrong syntax (suid) fd scriptname ″%s″System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: If you are using fd script, make sureyour file is in the /dev/fd/ directory.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20756 Missing (suid) fd script nameExplanation: No file name was provided whileattempting to run the script.Example: HPE20756 Missing (suid) fd script nameSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure you provide the current filename.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Chapter 6. Perl messages 195
  • 205. Automation: Not applicable.HPE20757 Cannot run with cpp -P with CPPSTDINundefinedExplanation: Since CPPSTDIN is undefined, youcannot use -P .Example: HPE20757 Cannot run with cpp -P withCPPSTDIN undefinedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure you do not use -P ifCPPSTDIN is undefined.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20758 Cannot fix broken locale name″LocaleCat″Explanation: Occasionaly, setlocale function presentsthis error.In the message text:LocaleCatcategory and locale argument passed for setlocaleExample: HPE20758 Cannot fix broken locale name″es_ES@euro LANG=es_ES.ISO-8859-15 ″.System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check if you have given the categoryand locale argument properly.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20759 Need (suid) fdscript in suidperlExplanation: If you are using suidperl, then youshould provide fdscript which should be present in/dev/fd/.Example: HPE20759 Need (suid) fdscript in suidperlSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: If you are using suidperl to run thescript, make sure you are using fdscript.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20760 Cannot access() scriptExplanation: Access to the script was denied. This isbecause the path could not be found, or any of thedesired access modes were not granted.Example: HPE20760 Cannot access() scriptSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check the permissions for thespecified path.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20761 Real UID cannot exec scriptExplanation: An attempt was made to execute a scriptfor which permissions were not given.Example: HPE20761 Real UID cannot exec scriptSystem action: Perl immediately stops interpreting the196 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 206. file (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check if your real uid has thepermission to run the script. Otherwise, log in assuperuser and run the script.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20762 Very long #! lineExplanation: The first line #! of the script may be toolong.Example: HPE20762 Very long #! lineSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check to make sure the length of thescript’s first line (which is provided to specify the path ofthe perl interpretor) is within the normal range.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20763 Cannot change argv to have fd scriptExplanation: Arguments cannot be changed to fdscript.Example: HPE20763 Can’t change argv to have fdscriptSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: In suidperl, do not attempt to changethe original argument list.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20764 Effective UID cannot exec scriptExplanation: This error occured because an attemptwas made to execute a script for which permissionswere not given.Example: HPE20764 Effective UID cannot exec scriptSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check the permissions of the file forthe effective UID.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20765 (suid) fdscript needed in suidperlExplanation: You should have superuser permissionand use suidperl to run the fdscript, otherwise this errorwill occur.Example: HPE20765 (suid) fdscript needed in suidperlSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Use suidperl to run fdscript.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Chapter 6. Perl messages 197
  • 207. Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20766 Syntax errorExplanation: If the syntax is not correct in the script,an error will be shown.Example: HPE20766 Syntax errorSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: First compile the code using -c optionso that you will get to know the systax correctness.Then execute the script.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20767 No opt allowed while running setgidExplanation: Certain operations are deemed to be tooinsecure for a setuid or setgid script to even be allowedto attempt. There will be other ways to do what youwant that are, if not secure, at least securable. Seeperlsec for more information.In the message text:optoption like -PExample: HPE20767 No -P allowed while runningsetuidSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: When you are using setgid, youcannot use certain options like -P.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20768 No opt allowed with (suid) fdscriptExplanation: Certain operations are deemed to be tooinsecure for a setuid or setgid script to even be allowedto attempt. There are other ways to do what you wantthat are, if not secure, at least securable.In the message text:optoption Like -PExample: HPE20768 No -e allowed with (suid) fdscriptSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: You can not use -e option with (suid)fdscript.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20769 No opt allowed in suidperlExplanation: -e option used in suidperl.In the message text:optThe option.Example: HPE20769 No -e allowed in suidperlSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check to make sure -e is not used insuidperl .System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.198 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 208. Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20770 Unrecognized switch: -opt (-h will showvalid options)Explanation: You specified an illegal option to Perl.In the message text:optThe option.Example: HPE20770 Unrecognized switch: -p (-h willshow valid options)System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check to make sure all providedoptions are acceptable ( use -h to show valid options). Ifall options provided are valid, check the #! line to see ifit’s supplying the bad switch on your behalf.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20771 suidperl needs (suid) fd scriptExplanation: suidperl requires fdscript to include thescripting language.Example: HPE20771 suidperl needs (suid) fd scriptSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: If you are using suidperl, make sure ithas an fdscript frame.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20772 Unbalanced scopes: num moreENTERs than LEAVEsExplanation: The exit code detected an internalinconsistency in how many blocks were entered andleft. This is an internal error that cannot be resolved bythe user.In the message text:numNumber.Example: HPE20773 Unbalanced saves: 1000 moreENTERs than LEAVEsSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20773 Unbalanced saves: num more savesthan restoresExplanation: The exit code detected an internalinconsistency in how many values were temporarilylocalized. This is an internal error that cannot beresolved by the user.In the message text:numNumber.Example: HPE20773 Unbalanced saves: 1000 moresaves than restoresSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Chapter 6. Perl messages 199
  • 209. Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20774 Unbalanced tmps: num more allocsthan freesExplanation: The exit code detected an internalinconsistency in how many mortal scalars wereallocated and freed. This is an internal error that cannotbe resolved by the user.In the message text:numNumber.Example: HPE20774 Unbalanced tmps: 1000 moreallocs than freesSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20775 Unbalanced context: num morePUSHes than POPsExplanation: The exit code detected an internalinconsistency in how many execution contexts wereentered and left. This is an internal error that cannot beresolved by the user.In the message text:numNumber.Example: HPE20775 Unbalanced context: 1000 morePUSHes than POPsSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20776 Unbalanced string table refcount:(num) for ″function″Explanation: The unbalanced string table refcount isbecause the refcount on the struct refcounted_he isn’tbeing dropped properly. This is an internal erroroccurred that cannot be resolved by the user.In the message text:functionfunction namenumnumberExample: HPE20776 Unbalanced string tablerefcount: (1) for ″signal_connect″System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.200 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 210. HPE20777 Scalars leaked: varExplanation: Something went wrong in Perl’s internalbookkeeping of scalars: not all scalar variables weredeallocated by the time Perl exited. This is an internalerror that cannot be resolved by the user.In the message text:var The variable may be long double.Example: HPE20777 Scalars leaked: 0System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: This usually indicates is a memoryleak, which is detrimental, especially if the Perl programis intended to be long-running. Check to make sure allscalars are deallocated before the program exits.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20778 Invalid option -Dopt, use -D’’ to seechoicesExplanation: You used an invalid switch along with-D.In the message text:optAn invalid optionExample: HPE20778 invalid option -Dz, use -D’’ tosee choicesSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Check for valid options using perl -D.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20779 -Dp not implemented on this platformExplanation: This switch is not available on theEBCDIC platform.Example: HPE20779 -Dp not implemented on thisplatformSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Do not use this switch.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20790 Cleaning loops: SV at 0x″address″Explanation: Called by sv_clean_all() for each live SV.However, some barnacles may remain, clinging totypeglobs.In the message text:addressaddressExample: HPE20790 Cleaning loops: SV at0x%″UVxf″System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: This is not a user level error.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.Chapter 6. Perl messages 201
  • 211. HPE20791 oops: oopsAVExplanation: An internal warning that the grammar isconfused. This is an internal error that cannot beresolved by the user.Example: HPE20791 oops: oopsAVSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: S- A severe warning (default).Automation: Not applicable.HPE20792 oops: oopsHVExplanation: An internal warning that the grammar isconfused. This is an internal error that cannot beresolved by the user.Example: HPE20792 oops: oopsHVSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: S- A severe warning (default).Automation: Not applicable.HPE20793 Page overflowExplanation: A single call to write() produced morelines than can fit on a page. See perlform for moreinformation.Example: HPE20793 Page overflowSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Reduce the number of lines to bewritten.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20794 perl: warning: Setting locale failed.Explanation: This means that your locale settings hadLC_ALL set to ``En_US’’, and LANG exists but has novalue. Perl tried to believe you but could not. Instead,Perl gave up and resorted to the ``C’’ locale, the defaultlocale that should always work. See perllocale sectionLOCALE PROBLEMS.Example: HPE20794 perl: warning: Setting localefailed.System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Check your locale setting, or thelocale installation on your system, for any problems (forexample, broken or missing system files).System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: S- A severe warning (default).Automation: Not applicable.HPE20795 perl: warning: Setting locale failed forthe categories:Explanation: This locale setting warning is displayed ifyou have not given a proper value for a particularlocale.Example: HPE20795 perl: warning: Setting localefailed for the categories:202 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 212. System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: This error will occur if you are tryingto set the following: LC_CTYPE LC_COLLATESystem programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20796 perl: warning: Please check that yourlocale settings:Explanation: This locale setting warning is displayed ifyou have not given a proper value.Example: HPE20796 perl: warning: Please check thatyour locale settings:System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: The following are some appropriatelocale settings that you can use:LC_CTYPE LC_ALL LANGUAGESystem programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20797 perl: warning: Falling back to thestandard locale (″C″).Explanation: The whole warning message will looksomething like: perl: warning: Setting locale failed. perl:warning: Please check that your locale settings: LC_ALL= ″En_US″, LANG = (unset) are supported and installedon your system. perl: warning: Falling back to thestandard locale (″C″).Example: HPE20797 perl: warning: Falling back to thestandard locale (″C″).System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: If your system cannot take the localesetting that you have provided, try providing a differentlocale setting, or accept the default.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20798 perl: warning: Failed to fall back to thestandard locale (″C″).Explanation: Sometimes the system cannot set thedefault locale.Example: HPE20798 perl: warning: Failed to fall backto the standard locale (″C″).System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Check your setting.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20799 perl: warning: Cannot fall back to thestandard locale (″C″).Explanation: You tried to set locale but failed. As aresult, the system tried to set the default value, butfailed as well.Example: HPE20799 perl: warning: Cannot fall back tothe standard locale (″C″).System action: Displays the warning and continuesinterpreting the script.Chapter 6. Perl messages 203
  • 213. Operator response: No System Operator response isrequired.User response: Check your setting.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20830 Hexadecimal number > 0xffffffffnon-portableExplanation: The hexadecimal number you specifiedis larger than 2**32-1 (4294967295) and thereforenon-portable between systems. See perlport for moreon portability concerns.Example: HPE20830 Hexadecimal number > 0xffffffffnon-portableSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Use a hexadecimal number less thanor equal to 2**32-1 (4294967295).System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20831 Illegal switch in PERL5OPT: -optExplanation: The PERL5OPT environment variablemay only be used to set the following switches:-[DIMUdmtw].In the message text:optThe switch option.Example: HPE20831 Illegal switch in PERL5OPT: -DSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: You should only use the followingswitches -[DIMUdmtw] .System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: X- A very fatal error (non-trappable).Automation: Not applicable.HPE20834 Integer overflow in binary numberExplanation: The binary number you have specified,either as a literal or as an argument, is too big for yourarchitecture, and has been converted to a floating pointnumber.Example: HPE20834 Integer overflow in binarynumberSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: On a 32-bit architecture, the largestbinary number representable without overflow is0b11111111111111111111111111111111. Note that Perltransparently promotes all numbers to a floating pointrepresentation internally--subject to loss of precisionerrors in subsequent operations.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20835 Integer overflow in hexadecimalnumberExplanation: The hexadecimal number you havespecified either as a literal or as an argument to hex() istoo big for your architecture, and has been converted toa floating point number.Example: HPE20835 Integer overflow in hexadecimalnumber204 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 214. System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: On a 32-bit architecture, the largesthexadecimal number representable without overflow is0xFFFFFFFF. Perl transparently promotes all numbersto a floating point representation internally--subject toloss of precision errors in subsequent operations.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20836 Integer overflow in octal numberExplanation: The octal number you have specifiedeither as a literal or as an argument to oct() is too bigfor your architecture, and has been converted to afloating point number.Example: HPE20836 Integer overflow in octal numberSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: On a 32-bit architecture, the largestoctal number representable without overflow is037777777777. Perl transparently promotes all numbersto a floating point representation internally--subject toloss of precision errors in subsequent operations.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20837 Illegal hexadecimal digit ’num’ ignoredExplanation: You may have tried to use a characterother than 0 - 9 or A - F, a - f in a hexadecimal number.In the message text:numThe number.Example: HPE20837 Illegal hexadecimal digit ’m’ignoredSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Interpretation of the hexadecimalnumber stopped before the illegal character. Use a validdigit.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20839 Invalid conversion in strprintf:Explanation: The conversion you specified for printf orsprintf is invalid. For more information, seeperlfunc/sprintfIn the message text:str The string will be ″s″ or ″″ which will make it eithersprintf or printf .Example: HPE20839 Invalid conversion in printf:System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Refer to perlfunc/sprintf for validconversions and use any that you require.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.Chapter 6. Perl messages 205
  • 215. HPE20840 Invalid separator characterchar1char2char1 in PerlIO layerspecification layerExplanation: When pushing layers onto the Perl I/Osystem, something other than a colon or whitespacewas seen between the elements of a layer list. If theprevious attribute had a parenthesised parameter list,perhaps that list was terminated too soon.In the message text:char1The character can be ″ or .char2The invalid separator character can be .layerThe layername.Example: HPE20840 Invalid separator character $/$ inPerlIO layer specification PerlIOSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: You should use only a colon orwhitespace for seperating PerlIO layers.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20841 function not implemented on thisarchitectureExplanation: This function is not available on yourmachine.In the message text:functionThe function name.Example: HPE20841 foo not implemented on thisarchitectureSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use this function.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20842 SHMLBA is not defined on thisarchitectureExplanation: SHMLBA is not defined on yourmachine.Example: HPE20842 SHMLBA is not defined on thisarchitectureSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use SHMLBA.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20843 nl_langinfo() not implemented on thisarchitectureExplanation: The nl_langinfo() function is notimplemented on your machine.Example: HPE20843 nl_langinfo() not implemented onthis architectureSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: This function cannot be used on yourarchitecture and should not be called from your script.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.206 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 216. Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20844 POSIX::function not implemented onthis architectureExplanation: The POSIX function indicated is notimplemented on this architecture.In the message text:functionThe function name.Example: HPE20844 POSIX::setsid not implementedSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not use this function on yourmachine.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20845 lstat() on filehandle filehandleExplanation: You tried to do an lstat on a filehandle.In the message text:filehandleThe filehandle.Example: HPE20845 lstat() on filehandle STDSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: lstat() is used only on filenames, sodo not use lstat on filehandles.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: S- A severe warning (default).Automation: Not applicable.HPE20846 (Might be a runaway multi-linecharcharstring starting on line n)Explanation: An advisory indicating that the previouserror may have been caused by a missing delimiter ona string or pattern, because it eventually ended earlieron the current line.In the message text:charAny character.n Line no.Example: HPE20846 (Might be a runaway multi-line ″″string starting on line 1)System action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Check for a missing end quote.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: S- A severe warning (default).Automation: Not applicable.HPE20847 ″sym″ never introducedExplanation: The symbol in question was declared butsomehow went out of scope before it could possiblyhave been used.In the message text:symThe Symbol.Example: HPE20847 ″s″ never introducedSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Either declare the symbol if you wantto use it now, or declare it globally.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Chapter 6. Perl messages 207
  • 217. Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: S- A severe warning (default).Automation: Not applicable.HPE20848 No dbm on this machineExplanation: This is counted as an internal error, asevery machine should supply dbm nowadays, andbecause Perl comes with SDBM. This is internal errorthat cannot be resolved by the user. For moreinformation, see SDBM_File.Example: HPE20848 No dbm on this machineSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20850 NULL OP IN RUNExplanation: An internal routine called run() with anull opcode pointer. This is an internal error that cannotbe resolved by the user.Example: HPE20850 NULL OP IN RUNSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20851 Cannot declare descriptor in varExplanation: Only scalar, array, and hash variablesmay be declared as ″my″ or ″our″ variables. They musthave ordinary identifiers as names.In the message text:descriptorThe opcode descriptor.var The var will be ″my″ or ″our″.Example: HPE20851 Cannot declare scalardereference in mySystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Do not declare opcode descriptorssuch as ″null operation″, ″stub″, ″scalar″, ″pushmark″,″wantarray″, as ″my″ or ″our″.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20852 lock can only be used on sharedvaluesExplanation: Attempting to lock unshared values.Example: HPE20852 lock can only be used on sharedvaluesSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: If you are trying something like thefollowing,$hashref->{key};lock $hashref->{key};then this will create an error. To lock an element, youfirst need to share it before locking it.System programmer response: No System208 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 218. Programmer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20853 cond_wait can only be used on sharedvaluesExplanation: cond_wait only accepts locked variablesas arguments, so the variables need to be shared.Example: HPE20853 cond_wait can only be used onshared valuesSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check if you are trying to pass anunshared variable as the parameter for cond_wait.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20854 cond_wait lock must be a shared valueExplanation: The argument passed to cond_wait mustbe a shared variable or shared value.Example: HPE20854 cond_wait lock must be ashared valueSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: When you are using cond_wait lock,make sure you are doing it on a shared variable.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20855 You need a lock before you cancond_waitExplanation: cond_wait takes only locked variables asarguments, so the variables need to be shared.Example: HPE20855 You need a lock before you cancond_waitSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: You need a lock before you cancond_wait a variable.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20856 cond_timedwait can only be used onshared valuesExplanation: cond_timedwait takes only lockedvariables as arguments, so the variable must be shared.Example: HPE20856 cond_timedwait can only beused on shared valuesSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that cond_timedwait callsonly shared values.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.Chapter 6. Perl messages 209
  • 219. HPE20857 cond_timedwait lock must be a sharedvalueExplanation: cond_timedwait lock was applied to anunshared value.Example: HPE20857 cond_timedwait lock must be ashared valueSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: cond_timedwait must only be appliedto a shared value.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20858 cond_broadcast can only be used onshared valuesExplanation: The cond_broadcast function workssimilarly to cond_wait. Trying to call cond_broadcast onnon-shared values.Example: HPE20858 cond_broadcast can only beused on shared valuesSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure the variable, for which youare calling cond_broadcast on, is shared.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20859 Internal error, could not set TLSExplanation: The error occured while setting thethread. This is an internal error that cannot be resolvedby the user.Example: HPE20859 Internal error, could not set TLSSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check to make sure the parametersare correct while threading.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20860 Internal error, could not get TLSExplanation: TLS (Transport Layer Security) erroroccured due to some internal problem. This is aninternal error that cannot be resolved by the user.Example: HPE20860 Internal error, couldn’t get TLSSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Contact the system administrator.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: P- An internal error you shouldnever see (trappable).Automation: Not applicable.HPE20861 DProf: don’t know what subroutine toprofileExplanation: -d:DProf failed to figure out whichsubroutine is taking more time.210 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference
  • 220. Example: HPE20861 DProf: don’t know whatsubroutine to profileSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Check to see if there is a bug inDevel::DProf mail perl5-porters@perl.org, and correctany that are found.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20863 DProf: run perl with -d to use DProf.Explanation: If -d is missed out while using DProf, thiserror will occur.Example: HPE20863 DProf: run perl with -d to useDProf.System action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Syntax for using DProf -> perl-d:DProf scriptname.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20864 Wide character in Socket::inet_ntoaExplanation: Perl encountered a wide character(greater than 255 bytes) when it was not expecting one.Example: HPE20864 Wide character inSocket::inet_ntoaSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Add the :utf8 layer to the output,binmode STDOUT, ’:utf8’System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20866 Wide character inSocket::pack_sockaddr_inExplanation: Perl encountered a wide character(greater than 255) when it was not expecting one.Example: HPE20866 Wide character inSocket::pack_sockaddr_inSystem action: Displays the warning and continuesinterpreting the script.Operator response: No System Operator response isrequired.User response: Add the :utf8 layer to the output,binmode STDOUT, ’:utf8’ .System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: W- A warning (optional).Automation: Not applicable.HPE20867 Bad getcc subscriptExplanation: The argument passed to getcc was morethan 10.Example: HPE20867 Bad getcc subscriptSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Check that the argument passed togetcc is less than or equal to 10.System programmer response: No SystemProgrammer response is required.Chapter 6. Perl messages 211
  • 221. Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20868 Bad setcc subscriptExplanation: Subscipt for setcc is not correct.Example: HPE20868 Bad setcc subscriptSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Set a value in the c_cc field of atermios object. The c_cc field is an array so an indexmust be specified. $termios->setcc( &POSIX::VEOF, 1 );System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20869 Action is not of type POSIX::SigActionExplanation: While performing a POSIX sigaction, ifthe sv_isa function returns false, this error will occur.Example: HPE20869 Action is not of typePOSIX::SigActionSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure that the parameter passedto POSIX::sigaction is proper.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20870 Cannot supply an old action without aHANDLERExplanation: Perl failed to remember the old action.This is an internal error that cannot be resolved by theuser.Example: HPE20870 Cannot supply an old actionwithout a HANDLERSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Follow your local procedures forreporting problems to IBM.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.HPE20871 Cannot supply an action without aHANDLERExplanation: Vector new Perl handler through %SIG.(The core signal handlers read %SIG to dispatch.).Action without the HANDLER causes this error.Example: HPE20871 Cannot supply an action withouta HANDLERSystem action: Perl immediately stops interpreting thefile (before any statements are run) and exits.Operator response: No System Operator response isrequired.User response: Make sure you are passing thecorrect handler.System programmer response: No SystemProgrammer response is required.Problem determination: No additional information.Source: PerlModule: Not applicable.Routing code: Not applicable.Descriptor code: F- A fatal error (trappable).Automation: Not applicable.212 z/OS V1.1.1 IBM Ported Tools for z/OS: Perl for z/OS Feature User’s Guide and Reference