COBOL Report Writer Precompiler (IBM-supplied),

product no. 5798-DYR

 

For contact details, see bottom of this webpage.

z/OS and OS/390


Latest release: 1.6.01  --  available through Maintenance service only

Summary of features:

Compatibility with IBM Enterprise (Vnext) COBOL Version 5
Simpler modular structure
Simpler customization process
Compatibility with new IBM XML commands
Full catchup with issued Apars (listed under previous release below)
Many error corrections
STYLE NARROW for Kanji

APAR fixes available for the following problems (December 2016)

VJR6001 – INEXIT(RW) With CA Optimizer

Possible Abend searching for 'CAOTSMON'.

The Precompiler may 'Abend' with a 0C4 condition, which becomes a U3002 from the compiler. This happens beause the Precompiler is checking for loadmodule 'CAOTSMON', the CA Optimizer program, whose name is located at a high offset within the loadmodule.

VJR6002 – **CONTROL RW not first in source

Possible HEAP Error Message.

If a '**CONTROL RW' directive is not the first line in a source, the only lines that may precede it are (any number of) CBL/PROCESS LINES. If the option NORW was in effect and any other source line preceded the **CONTROL RW' line, (whether a comment, a blank line, a line of code or any other directive such as SKIP or EJECT), the precompiler failed with a HEAP ERROR 3 message.

VJR6003 – Reduce severity of INVALID OPTION messages

Severity too severe - curtails compilation.

If the precompiler sees an invalid option in the parm string or PROCESS(CBL), it issues one of the messages RW-892-U PRECOMPILER OPTION %: INVALID SYNTAX, RW-893-U PRECOMPILER OPTION %: OPERAND(S) INVALID ..., RW-894-U PRECOMPILER OPTION % UNKNOWN OR IN WRONG ... which are all level U, causing the (pre-)compilation to end abruptly. Other systems, including the compiler and 3rd-party processors issue a mild warning or error. This amendment changes the severity of the above messages from U to E.

VJR6004 – Do not scan MAP, LIST, OFFSET options

New COBOL 5/6 options mishandled by precompiler.

The COBOL options MAP, LIST, OFFSET were scanned by earlier versions of the the procompiler for reasons which were relevant at that time. (LIST was PMA(P), OFFSET was CLI(ST)). Because the MAP option acquired a sub-option MAP(HEX) beginning with COBOL 5, it is no longer desirable for it to be scanned. This amendment also prevents LIST and OFFSET from being scanned, making them similarly future-proof.

VJR6005 – MAP, LIST, OFFSET options: further

Additional consequences.

Apar VJR6004, which prevent scanning of certain COBOL options, had undesirable additional consequences which this update corrects.





Previous release: 1.5.00  --  available through Maintenance service only

Summary of features:

Full compatibility with Enterprise COBOL®, including release 3.4.
New features of COBOL 2002 Standard
Conditional Precompilation
Full NATIONAL support
Comprehensive Multiple Files feature
Corrections to known problems, incorporation of all previous mods.

Important notice for installers of release 1.5.00 (Sep 2005)

Do not install Release 1.5.00 in the same SMP/E zone as one containing the previous release.
This release does not delete the old release. The SMP/E steps appear to work but the text NOT SEL is printed against most of the new functions and hardly anything is copied. Always run the IVP (jcl CXRTEST).


APAR fixes available for the following problems (February 2012)


VJR5045 – INEXIT(RW) With CA Optimizer
This Apar reverses the effect of Apar VJR5005 which is harmful in certain cases where CA Optimizer is not running.

VJR5044 – A DBCS Character Should Occupy 2 Columns
The Precompiler incorrectly assigned only one column per DBCS character instead of two.

VJR5043 – Kanji Data-Names Corrupted
A character in a Kanji Data-Name that looks like a quote, apostrophe or question mark confuses the Precompiler.

VJR5042 – Precompiler retains lower memory
The Precompiler uses a small sector of lower memory and fails to release it at the end of its execution.

VJR5041 – Precompiler retains allocated memory
The Precompiler, both inexit and standalone, sometimes fails to release all the memory it has allocated.

VJR5040 – Compiler messages on front page lost
If a source program begins with CBL/PROCESS line(s), the Printexit may suppress Compiler messages that should normally appear on the front page before the Options.

VJR5039 – No space between Program Name and Date
If the Program Name is 8 characters long, the Printexit prints it squashed up against the date.

VJR5038 – Suppression of Compiler’s IGYLI0090-W message
Compiler may find sequence errors during ‘Library phase’ but its message was suppressed giving a mysterious rc = 4 and warning message at the end referring to a non-existent message.

VJR5037 – Allow Report Section to be empty
Allow the REPORT SECTION header to be followed immediately by another section or division.  Previously, severe diagnostic messages were issued on encountering an empty Report Section.

VJR5036 – Precompiler options misplaced on front page
IWith Enterprise COBOL 4.1, precompiler options settings appear above or below the compiler options rather than alongside them.  This amendment fixes the problem but works with all versions of IBM COBOL.

VJR5035 – As VJR5034, affected by sequence columns

VJR5034 – Precompiler inserted its own comment lines at start
The precompiler causing compiler errors by inserting its own comment lines before the CBL/PROCESS statement.  This happens when the first source statement is not recognized (e.g. is not IDENTIFICATION DIVISION).

VJR5033 – hex '27' with long literals
Related to VJR5032, affecting long literals.

VJR5032 – hex '27'
If the character represented by hex '27' appears in the source, e.g. as part of a literal, the precompiler erroneously changes it to a space.

VJR5031 – Missing spaces in XREF
If the XREF option is used, line number changed by the Printexit may have no spaces between them.  This can cause an 0C9 Abend in some third-party systems.

VJR5030 – Missing CONFIGURATION SECTION
CONFIGURATION SECTION will be assumed if omitted before SOURCE-COMPUTER, OBJECT-COMPUTER or SPECIAL-NAMES, for compatibility with the previous release.

VJR5029 – NOSOURCE option when no Printexit
If NOSOURCE specified in the precompiler/compiler options with the stand-alone precompiler or the Inexit without the Printexit,  the precompiler may fail with a 0C1 abend.

VJR5028 – Continuation into A-margin
If a word is erroneously continued, by a “-“ in column 7 of the next line, into the A-margin, i.e. before column 12, in the Procedure Division, an internal error may result.

VJR5027 – Variable records with Page Buffer
A RECORD CONTAIN m TO n or RECORD IS VARIABLE clause in FD when PAGE BUFFER feature used may cause erroneous message PAGE BUFFER WIDTH EXCEEDED at run time.

VJR5026 – REPORT SECTION before WORKING-STORAGE
Although this is a non-standard permitted extension, it sometimes caused compilation errors due to loss of a chunk of generated Data Division.  This order is now definitely permitted in all cases.

VJR5025 – COUNT of item with FUNCTION clause
If a COUNT refers to an elementary item with a FUNCTION clause, wrong code is generated.

VJR5024 – PROCESS in Columns 1-6
If a PROCESS directive begins in columns 1 to 6 in the source line, and the Printexit option is in use, the source line is corrupted by a “0” (zero) character and a compilation error results.

VJR5023 – Control Heading For Page when all Lines Not Present
If all the LINE clauses of a CH FOR PAGE [OR controls] group are subject to a PRESENT WHEN (other than at the 01 level) or an ODO and all its LINEs are absent at a specific instant, serious misalignment of Detail lines may occur.

VJR5022 – Message 061 From Error to Warning
Error 061 “Absolute line follows relative line” was only a Warning in the previous release but is now an Error.  This Apar changes it back to a Warning, for compatibility.

VJR5021 – Overflow of Replaced Lines Misaligned
When a COPYbook line containing sequence numbers and/or identification columns has an element replaced by a longer piece of text, so that the line overflows onto a new line, the new line may encroach into the A-margin.

VJR5020 – Allow a “Literal” to be Continued into the A-Margin
If a continuation of a literal in the Report Section starts before column 12, a compilation error is signalled, in deference to the standard rules.  This Apar relaxes the rule so that this is allowed, for compatibility with the previous release.

VJR5019 – Corruption of Control Name in Intermediate Source
If an RD contains a CONTROL(S) clause, under certain circumstances the precompiler corrupts the name of the control identifier amd generates a spurious 'S'  and a string of numerals.  (Compare VJR5006, although this is a different case.)

VJR5018 – Erroneous Error 169 With SUM Term
If a SOURCE expression is defined using SUM terms, such as (SUM OF A) / (SUM OF B), and with a PICTURE having more than 12 integer places, an erroneous Error 169 message is given.

VJR5017 – Error in Continuations and Doubled Quotes
If a non-numeric “literal” in quotes contains a doubled quote as part of the text, an error may occur if the literal is continued between the two quotes; same for apost.

VJR5016 – Lost period in FD with COPY
If an FD statement contains  a COPY clause, the precompiler sometimes deletes the final period.

VJR5015 – Garbage after PROGRAM-ID
If the PROGRAM-ID etc. paragraph has a premature period before an additional phrase such as INITIAL, no error is given and the phrase has no effect.

VJR5014 – Erratic behavior of long detail names
If the program contains a large number of long DETAIL group names, a reference to them in the procedure division (such as a GENERATE) may cause corruption resulting in an Abend or erroneous “%” characters.

VJR5013 – NORW setting shown in listing as RW
If the RW option is set to NORW (by customizing or in the JCL), overridden by a *CONTROL RW directive in the source, the setting printed in “Precompiler Options in Effect” is shown as RW.

VJR5012 – Literal X’….’ may be split over 2 lines
If a report section item has a VALUE with a hexadecimal literal above a certain length, the literal may be copied by the precompiler with the X on a different line from the rest of the literal.

VJR5011 – *CONTROL RW causes compilation error
If a source program has the directive *CONTROL RW (with a single asterisk) at or near the start, the precompiler leaves it unchanged, resulting in an E-level diagnostic.

VJR5010 – Very large sources corrupt sequence numbers
If a source program is more than 65535 lines long, the sequence printed on the left side by the Print Exit are incorrect; in certain cases a S0C1 abend occurs.

VJR5009 – National Items in REPLACE / REPLACING
If the text to be replaced or the replacement text contains national data,  the text may fail to be matched or may be replaced incorrectly.

VJR5008 - Spurious SKIP Directive
If a source line begins with the characters SKIP at the start of a data-name, the precompiler misinterprets this as a SKIP directive.

VJR5007 - Spurious Continuation Indicator
If an RD has a large number of sum counters, the precompiler may generate a spurious "-" in continuation column 7;
this causes a compilation error due to an "undefined data name".

VJR5006 - Long CONTROLS clause
If an RD has a CONTROLS clause with a large number of operands (e.g. 15 with 15 characters average), the
precompiler may generate a 'non-COBOL character', a spurious 'S'  and a string of numerals.

VJR5005 - Inexit(RW) With CA Optimizer
If the compiler with Inexit(RW) is invoked by CA Optimizer, an S0C4 abend results because the precompiler cannot
locate the address of the "Parm" string.

VJR5004 - Inexit(RW) Double Invocation
If a the compiler is invoked by certain COBOL processors, e.g. Compuware's, an S0C4 abend results because
the compiler and Inexit are invoked twice, which exposed an error in the Inexit.

VJR5003 - UPON group-name on new line
If a SUM clause had an "UPON group-name" clause with the group-name starting on a new
source line, an erroneous message RW-124-S was issued.

VJR5002 - literal missing opening delimiter
A missing opening quote/apostrophe on a list of "literals" caused the Precompiler to loop with an
internal error message.

VJR5001 - date format in listing header
The Printexit prints a "friendly" date format instead of mm/dd/yy which certain third-party
products don't recognize; this Apar restores the format to plain mm/dd/yy.

Special update for Japanese Language (Nov 2005)

This update is currently unnumbered and is available on request
The precompiler now aligns DBCS (double-byte character set) items correctly and scans DBCS names correctly; DBCS report items occupy 2 columns per character but may begin on an even or odd column.

Previous release: 1.4.11

PTF updates:

UJ04006 - Run-Time update, Year 2000
UJ04007 - Run-Time update, Year 2000
UJ04008 - Run-Time update, Year 2000
UJ04010 - Various Hyper Fixes
UJ04011 - Various Fixes to JCL Procedures


APARs superseded by PTFs UJ040010 and UJ04011:

VJR4013 - Missing DDname in PRNT file handler
VJR4031 - Some run-time routines not re-entrant
VJR4066 - Repeating PICTURE insertion symbol
VJR4069 - Unpaired Apostrophe in Comment Paragraph
VJR4071 - Duplicated RD with SUM
VJR4072 - Allow '-' as alternative to '/' in PPSNS parameter
VJR4073 - 'BLOCK 0 TO .' (sic) trips precompiler
VJR4074 - Period starting erroneous continuation
VJR4075 - No error on missing INITIATE
VJR4076 - SOURCE CURRENT-DATE and PRESENT WHEN
VJR4077 - 'LAST FOOTING integer' causes heap error 04
VJR4078 - Absolute LINE after relative LINE
VJR4079 - Message RW-133 rewording
VJR4080 - MGENER and LGSEQ options
VJR4083 - PROCESS as paragraph name
VJR4084 - Commas generated after PROCESS SECTION
VJR4085 - Output from LIST option missing
VJR4081 - Faults with CXRCOMPR
VJR4082 - Modules CXRPBF02-06 not installed


New APARs, provided with level 1.4.11:

VJR4053 - Function DAY had restricted window
VJR4054 - ditto
VJR4061 - Install-Verify program and INTDATE option
VJR4062 - Install-Verify program for VS COBOL II
VJR4067 - Function DAY ambiguity of parameters
VJR4068 - ditto


Optional APAR (Sep 2001)

VJR4087 - Invocation of Precompiler via ATTACH


New APAR (Oct 2001)

VJR4088 - Precompiler with ALL31(ON)


New APARS (April 2004)

VJR4089 - CICS option mishandled by precompiler
VJR4090 - XML GENERATE statement


New APAR (May 2004)

VJR4091 - Binary characters in input source

 


PTF updates up to UJ04011 plus APAR VJR4088 are recommended for z/OS (all releases) and IBM COBOL for z/OS and OS/390 Release 3.1.

PTF updates up to UJ04009 are recommended for OS/390 release 2.10 and IBM COBOL for OS/390 Release 2.1 and Language Environment/370 Release 7 and above.

PTF updates up to UJ04009 are necessary for full Year 2000 compliance.

Current Level 1.4.11 printed on the listing heading as "4.11". Minimum Level for Year 2000 Compliance: 1.4.09.



VSE

Base release (before updates): 1.4.1

Latest release (after updates): 1.4.19


Current updates:


WJ04001 run-time century compliance
WJ04002 4-character year in listing header
WJ04003 Freevis "failure"
WJ04004 Illegal SVC X'83' with VSE 1.4.3
WJ04005 COPY...REPLACING giving just period
WJ04006 NEXT GROUP clause in TYPE CF FINAL
WJ04007 Precompiler Various Hyper Fixes, November 1998
WJ04008 Precompiler Y2K and MLE Updates, November 1998
WJ04009 Run-Time Y2K Updates, December 1998
WJ04010 Corrections to COPY...REPLACING and REPLACE, June 2000
WJ04011 Corrections to COPY...REPLACING and REPLACE, June 2000


Updates WJ04001, WJ04008 and WJ04009 are necessary for full Year 2000 compliance.

Current level: 1.4.19, printed on the listing heading as "4.19". Minimum Level for Year 2000 Compliance: 1.4.18.



VM

Base release (before updates): 1.4.0

Current zaps:


CJ04001 miscellaneous precompiler fixes
CJ04002 issuing RWCOBOL2 command twice in succession
CJ04003 precompiler fix
CJ04004 miscellaneous non-year-2000 updates to precompiler
CJ04005 year-2000 updates to precompiler

Other updates:

RWUPD971 run-time century compliance
RWUPD981 run-time century compliance, second set


Updates RWUPD981 and CJ04005 are necessary for full Year 2000 compliance.


Contact Details


Telephone Number: UK and Rest of World

UK(44)-208-540-8409

Telephone Numbers: US and Canada

from 3am to 6pm Eastern Standard Time: 206-725-7431
(from midnight to 3pm Pacific Time)

Fax: Worldwide

UK(44)-208-544-9395


E-mail: 

Support@spc-systems.com



IBM Retain (IBM customers only): 

Please contact your local technical rep. The Retain Queue is COBRW,136. You may also access your usual IBM Software Support number. It is advisable to notify the support e-mail (see above) also.


Minimum Level for Year 2000 Compliance: 1.4.5, printed on the listing heading as "4.05".

To order copies of these updates, or to register for service and support, email us now. New licenses include one year's support and update service, from date of installation, with renewable annual maintenance.