This release provides the following functional enhancements
described in this and the other IBM PL/I books.
Debugging improvements
- The TEST option has been enhanced so that users can choose to view the source in the listing
and in the Debug Tool source window as that source would appear after a user-specified
preprocessor had been run (or after all the preprocessors had been run).
Performance improvements
- The BASR instruction will now be used instead of the BALR instruction.
- The conversions of FIXED DEC with large precision to FLOAT will be inlined and
speeded up by the use of FIXED BIN(63) as an intermediary.
- The CHAR built-in when applied to CHAR expressions will now always be inlined.
- The code generated for conversions of FIXED BIN(p,q) to unscaled FIXED DEC has been significantly improved.
- TRTR will be used, under ARCH(7), for SEARCHR and VERIFYR in the same situations
where TRT would be used for SEARCH and VERIFY.
- UNPKU will be used to convert some PICTURE to WIDECHAR (rather than making a library call).
Usability enhancements
- IEEE Decimal Floating-Point (DFP) is supported.
- The new MEMCONVERT built-in function will allow the user to convert arbitrary lengths of data between arbitrary code pages.
- The new ONOFFSET built-in function will allow the user to have easy access to another piece of information formerly
available only in the runtime error message or dump, namely the offset in the user procedure at which a condition was raised.
- The new STACKADDR built-in function will return the address of the current dynamic save area (register 13 on z/OS) and
will make it easier for users to write their own diagnostic code.
- The length of the mnemonic field in the assembler listing will be increased to allow for better support of the
new z/OS instructions that have long mnemonics.
- More of the right margin will be used in the attributes, cross-reference and message listings.
- The CODEPAGE option will now accept 1026 (the Turkish code page) and 1155 (the 1026 code page plus the Euro symbol).
- The new MAXNEST option allows the user to flag excessive nesting of BEGIN, DO, IF and PROC statements.
- Under the new (and non-default) suboption NOELSEIF of the RULES option,
the compiler will flag any ELSE statement that is immediately followed by an IF statement and
suggest that it be rewritten as a SELECT statement.
- Under the new (and non-default) suboption NOLAXSTG of the RULES option,
the compiler will flag declares where a variable A is declared as BASED on ADDR(B) and STG(A) > STG(B)
not only (as the compiler did before) when B is AUTOMATIC, BASED or STATIC with constant extents but
now also when B is a parameter declared with constant extents.
- The new QUOTE option will allow the user to specify alternate code points for the quote (") symbol since this symbol
is not code-page invariant.
- The new XML compiler option can be used to specify that the tags in the output of the XMLCHAR built-in function
be either in all upper case or in the case in which they were declared.
- For compilations that produce no messages, the compiler will now include a line saying "no compiler messages" where
the compiler messages would have been listed.
- The MACRO preprocessor will support a new suboption that will allow the user to specify whether it should process
only %INCLUDE statements or whether it should process all macro statements.
- The integrated SQL preprocessor will now generate DB2 precompiler style
declares for all *LOB_FILE, *LOCATOR, ROWID, BINARY and VARBINARY SQL types,
in addition to the BLOB, CLOB and DBCLOB SQL types already supported,
when the LOB(DB2) SQL preprocessor option is selected.
|
This information center is powered by Eclipse technology. (http://www.eclipse.org)