Enterprise PL/I for Z/OS V5.2 Compiler and Runtime Migration Guide RULES(NOLAXCTL)

Enterprise PL/I for Z/OS V5.2 Compiler and Runtime Migration Guide RULES(NOLAXCTL)

Enterprise PL/I for z/OS IBM Compiler and Run-Time Migration Guide Version 5 Release 2 GC27-8930-01 Enterprise PL/I for z/OS IBM Compiler and Run-Time Migration Guide Version 5 Release 2 GC27-8930-01 Note Before using this information and the product it supports, be sure to read the general information under “Notices” on page 197. First Edition (September 2017) | This edition applies to Version 5 Release 2 of Enterprise PL/I for z/OS, 5655-PL5, and to any subsequent releases until otherwise indicated in new editions or technical newsletters. Make sure you are using the correct edition for the level of the product. Order publications through your IBM representative or the IBM branch office serving your locality. Publications are not stocked at the address below. A form for readers' comments is provided at the back of this publication. If the form has been removed, address your comments to: IBM Corporation, Department H150/090 555 Bailey Ave San Jose, CA, 95141-1099 United States of America When you send information to IBM, you grant IBM a nonexclusive right to use or distribute the information in any way it believes appropriate without incurring any obligation to you. © Copyright IBM Corporation 1999, 2017. US Government Users Restricted Rights – Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. Contents Tables ............... ix Determining how applications will have access to the library .............. 19 Figures ............... xi Setting up a regression testing procedure .... 21 Taking performance measurements ...... 22 Cutting over to production use ........ 22 About this book .......... xiii Using your documentation ......... xiii Chapter 4. Planning to move to the new How to send your comments ........ xiv Accessibility .............. xv compiler .............. 23 Preparing to move your source to the new compiler 23 Installing Enterprise PL/I......... 23 Part 1. Overview .......... 1 Assessing storage requirements....... 23 Educating your programmers on new compiler Chapter 1. Do I need to recompile? ... 3 features............... 24 Migration basics ............. 3 Taking an inventory of your applications .... 24 Runtime migration - Moving to Language Taking an inventory of vendor tools, packages, Environment ............. 4 and products ............. 24 Compiler migration ........... 4 Taking an inventory of PL/I applications ... 24 Migration roadmap ............ 5 Prioritizing your applications ........ 25 Service support for OS PL/I and PL/I for MVS & Determining conversion priority ...... 25 VM ................. 5 Setting up move/no move categories ..... 25 Making application program updates...... 26 Chapter 2. Introducing the new compiler and run time ............. 7 Part 3. Moving existing applications Product relationships - compiler, run time, Debug to Language Environment ..... 29 Tool ................. 7 General PL/I compiler information ....... 7 Chapter 5. Running existing Language Environment's runtime support for other programs ............... 8 applications under Language Advantages of the new compiler and run time ... 8 Environment ............ 31 Major changes with the new compiler and run time . 9 Invoking existing applications ........ 31 General conversion tasks .......... 10 Considerations for non-CICS applications ... 31 Planning your strategy ......... 10 Considerations for CICS applications ..... 32 Moving to the Language Environment run time 10 Link-editing existing applications ....... 32 Recompiling your source with Enterprise PL/I . 11 Adding Enterprise PL/I programs to existing Chapter 6. Considerations before applications ............. 11 migrating.............. 35 Differences in runtime options ........ 35 Part 2. Conversion Strategies ... 13 Deleted runtime options ......... 35 Replaced runtime options ........ 35 Chapter 3. Planning the move to New runtime options .......... 36 Language Environment ....... 15 Differences in condition handling ....... 37 Timing differences ........... 37 Preparing to move to the Language Environment Differences in performing some fixed decimal runtime library ............. 15 divides with large precision ........ 38 Installing Language Environment ...... 15 Unhandled condition differences ...... 38 Assessing storage requirements....... 15 IBMBXITA and IBMBEER differences ..... 38 Educating your programmers about Language ABEND U4039 differences ........ 38 Environment ............. 16 Severity differences ........... 39 Taking an inventory of your applications .... 16 Differences in PLICALLA and PLICALLB support 39 Vendor tools, packages, and products..... 17 PLICALLA considerations ........ 39 PL/I applications ........... 17 PLICALLB considerations ........ 39 Existing PL/I load modules ........ 18 Differences in preinitialization support ..... 41 Deciding how to phase in Language Environment 18 Differences in PLISRTx support........ 42 Handling multilanguage conversion ..... 18 Differences in multitasking support ...... 42 © Copyright IBM Corp. 1999, 2017 iii Differences in OS PL/I shared library support ... 42 RECORD I/O ............ 64 Differences in DATE/TIME built-in functions ... 43 STREAM I/O............. 64 Differences in User Return Code ....... 43 Structure expressions .......... 65 Differences in runtime messages ....... 43 Array expressions ........... 65 Differences in PLIDUMP .......... 44 DEFAULT statement .......... 65 Differences in storage report......... 45 Extents of automatic variables ....... 65 Differences in Interlanguage Communication Built-in functions ........... 66 support................ 45 DEFINED BIT aggregates......... 66 Differences in assembler support ....... 46 OPTIONS(REENTRANT) ......... 66 iSUB defining ............ 66 Chapter 7. Object module and load LABEL arrays ............ 66 module considerations ........ 49 DBCS ............... 67 GRAPHIC and POSITION ........ 67 OS PL/I Version 1 object module and load module Macro preprocessor........... 67 compatibility .............. 49 Options restricted ............ 67 OS PL/I Version 1 Release 5.1 ....... 49 Options not supported .......... 68 OS PL/I Version 1 Release 5 ........ 50 Restrictions on other interfaces to the compiler .. 68 OS PL/I Version 1 Release 3.0 - Release 4.0 ... 51 Batch compilation ........... 68 OS PL/I earlier than Version 1 Release 3.0 ... 51 Invoking the compiler from assembler .... 69 OS PL/I Version 2 object module and load module Compiling under TSO .......... 69 compatibility .............. 51 Specifying INCLUDE data set names ..... 70 Summary of support for OS PL/I object modules Defining the SYSLIN data set ....... 70 and load modules ............ 51 Compiler time and space requirements ..... 70 AMODE(24) restrictions .......... 70 Chapter 8. Link-Edit considerations .. 53 EXTERNAL names restricted ........ 71 SCEERUN ............... 53 Listing differences ............ 71 Symbol table considerations ......... 53 Control block differences .......... 72 NCAL linkage editor option ......... 53 ISAM support differences.......... 72 ENTRY cards .............. 54 Using OS PL/I math routines ........ 54 Chapter 11. Understanding the new compiler's options.......... 73 Chapter 9. Subsystem considerations 55 Understanding the effect of default options on CICS considerations ........... 55 compatibility .............. 73 Updating CICS system definition (CSD) file .. 55 BACKREG(5) ............. 73 Error handling ............ 55 BIFPREC(15) ............. 74 Restrictions on user-written condition handlers CMPAT(V2) ............. 74 under CICS ............. 56 EXTRN(FULL) ............ 75 Macro-level interface .......... 56 LIMITS(EXTNAME(7)) ......... 75 FETCHing a PL/I MAIN Procedure ..... 56 NORENT and WRITABLE ........ 76 STACK runtime option ......... 56 SYSTEM .............. 76 Runtime output ............ 56 Choosing nondefault options for even more Abend codes used by PL/I under CICS .... 57 compatibility .............. 76 IMS considerations ............ 57 COMMON ............. 77 Interfaces to IMS ........... 57 DFT(NOBIN1ARG) ........... 77 SYSTEM(IMS) compile-time option ..... 57 DEFAULT(LINKAGE(SYSTEM)) ...... 77 PLICALLA support in IMS ........ 57 DFT(OVERLAP) ............ 77 PSB language options supported ...... 58 NOREDUCE ............. 77 Storage usage considerations ....... 58 NORESEXP ............. 78 Coordinated condition handling under IMS .. 58 RULES(LAXCTL) ........... 78 Performance enhancement with Library Retention RULES(NOLAXINOUT NOLAXSEMI) .... 78 (LRR) ............... 59 NOWRITABLE ............ 78 DB2 considerations ............ 59 Choosing options for improved performance ... 79 ARCH ............... 79 Part 4. Moving to the new compiler 61 BIFPREC(31) ............. 79 DEFAULT(NONASGN) ......... 79 Chapter 10. Understanding the DEFAULT(CONNECTED) ........ 80 limitations of the new compiler .... 63 DEFAULT(REORDER) .......... 80 DEFAULT(NOOVERLAP) ........ 80 Language Environment requirements ...... 63 OPTIMIZE(2)/OPTIMIZE(3) ........ 80 Language not supported .......... 63 REDUCE .............. 81 Language restricted............ 63 NORENT .............. 82 iv Enterprise PL/I for z/OS V5.2 Compiler and Runtime Migration Guide RULES(NOLAXCTL) .......... 82 Initializing BASED .......... 104 Choosing options for better quality ...... 83 Initializing CONTROLLED ........ 104 RULES(NOLAXDCL) .......... 83 Initializing STATIC .......... 104 RULES(NOLAXIF) ........... 83 Retaining unused declarations........ 104 RULES(NOLAXLINK) .......... 84 Retaining unused INTERNAL STATIC .... 104 RULES(NOLAXMARGINS)

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    228 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us