Trailing-Edge
-
PDP-10 Archives
-
ap-c800d-sb
-
cbl12a.doc
There are no other files named cbl12a.doc in the archive.
CBL12A.DOC -- COBOL-68/COBOL-74 V12A Documentation
Sep 1979
COPYRIGHT (C) 1979 BY
DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.
THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE
INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER
COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY
OTHER PERSON. NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY
TRANSFERRED.
THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE
AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
CORPORATION.
DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL.
COBOL-68/COBOL-74 V12A Documentation Page 2
1.0 SUMMARY
This is the the first maintenance release of COBOL-68 Version 12 and
COBOL-74 version 12. It is the first release of common sources for
both compilers.
COBOL version 12A consists of:
COBOL version 12A(726)
CBL74 version 12A(726)
LIBOL version 12A(604)
C74OTS version 12A(604)
COBDDT version 12A(26)
ISAM version 12A(161)
LIBARY version 12A(30)
RERUN version 12A(6)
The above software will run on all supported monitors and has been
tested under TOPS-10 6.03A and 7.00.
This release contains the common sources for both COBOL-68 and
COBOL-74.
COBOL-74 version 12A conforms to the full ANSI highest level except
for:
IDX No multi-key ISAM
RPW It contains ANS-68 Report Writer (same as COBOL-68)
DEB No Debug module
See section 3 for known deficiencies.
See COBOL INSTALLATION GUIDE for configuration switch setting and
compatibility issues.
1.1 Bibliography
COBOL-68 LANGUAGE MANUAL AA-5057A-TK
COBOL-74 LANGUAGE MANUAL AA-5059A-TK
COBOL INSTALLATION GUIDE (COBOL.INS)
CBL12A.DOC, NEWCOB.MEM, AND SRT4B.DOC
1.2 Required Software
The following software is required to build COBOL V12A.
Name Version
---- -------
MACRO 53(1020)
LINK 4(765)
MAKLIB 2(20)
UUOSYM 13A(406)
COBOL-68/COBOL-74 V12A Documentation Page 3
EXTERNAL CHANGES and OPTIONS
2.0 EXTERNAL CHANGES AND OPTIONS
2.1 COBOL BUG FIXES SINCE COBOL-74 V12(601)
Note, edit 617 has been temporarily removed since it causes other
problems.
Edit 726 Fix COPY REPLACING when replaced item is an exact multiple of
six chars.
Edit 725 Make sure FFATAL is on if fatal errors exist.
Edit 724 Fix error in edit 722.
Edit 723 Fix edit 706 to point to correct record.
Edit 722 Fix COBOL-74 MOVE HIGH-VALUES or LOW-VALUES when PROGRAM
COLLATING SEQUENCE has been specified.
Edit 721 Fix COBOL-74 subscripted IF when PROGRAM COLLATING SEQUENCE
has been specified.
Edit 720 Fix COBOL-74 compare to SPACES when PROGRAM COLLATING
SEQUENCE has been specified.
Edit 717 Fix IF a NOT = SPACES for a ALPHANUMERIC and longer than 2040
characters.
Edit 716 Fix bad check for EBCDIC mode in subscripting.
Edit 715 Correct edit 566.
Edit 714 Break up long lines due to SIRUS bug.
Edit 713 Do TMPCOR UUO in the right address if CORE UUO is needed.
Edit 712 Not required, already in 12A in a different form.
Edit 711 Fix edit 674 for index items.
Edit 710 Set flag showing WORKING-STORAGE SECTION seen.
Edit 707 Fix edit 670 - it broke nested IFs.
Edit 706 Check RECORD CONTAINS clause against maximum record size.
Edit 705 Put out PERIOD ASSUMED message in right place.
Edit 704 Fix multiple COPY REPLACING ordering bug.
Edit 703 Bad code generated for SIXBIT SORT where key starts one
character into a word (non-BIS case only).
COBOL-68/COBOL-74 V12A Documentation Page 4
EXTERNAL CHANGES and OPTIONS
Edit 702 List comments in DATE-COMPILED paragraph.
Edit 701 Don't do improper optimizations - fix to SAMACM routine in
PMATCH.
Edit 700 Fix undeserved error for COMP-1 items with edit 674.
Edit 677 Tables expanding may cause DBMS USE PROCEDURES to get messed
up.
Edit 676 Fix edit 517, get listing right when space in column 7.
Edit 675 Check FIND RSE 3 syntax that could look like FIND RSE 5.
Edit 674 Generate error for bad value clause of 88 level item.
Edit 673 Fix quad-word rounding problem.
Edit 672 Fix Ill Mem Ref when someone defines a dataname TALLY.
Edit 671 Fix problem with linkage section subscripts.
Edit 670 Fix nested IF . ELSE problem.
Edit 667 Wrong code for EBCDIC KEYS with 2 bytes in last word.
Edit 666 Fix edit 661 (label BADSB4 was already defined in maintenance
sources).
Edit 665 Recover correctly from PROCEDURE DIVISION mis-spelled.
Edit 664 Fix multiply with 4-word intermediate problem.
Edit 663 Fix SKIPA optimization if previous instruction is JRST .+3.
Edit 662 Fix edit 557, define PICNXT common to phases B, C, and D.
Edit 661 Give error message rather than generating bad code for COMP-1
subscripts.
Edit 660 Fix error message points to wrong place for WRONG NUMBER OF
SUBSCRIPTS.
Edit 657 Fix problem with lookahead in COPY REPLACING integer.
Edit 656 Fix problems with DBMS USE PROCEDURES.
Edit 655 Check for premature EOF on library file.
Edit 654 Fix bad code generated sometimes for MOVE of item with two or
more subscripts.
Edit 653 Turn on FFATAL on assembly errors in phase G.
COBOL-68/COBOL-74 V12A Documentation Page 5
EXTERNAL CHANGES and OPTIONS
Edit 652 Allow null paragraph proceeding END DECLARATIVES.
Edit 651 Wrong byte pointer use in RPW CONTROL footer code.
Edit 650 Fix Ill Mem Ref when compiler expands tables for DBMS program
with USE PROCEDURES.
Edit 647 Wrong code generated for FILLER X(5), KEY X(8) in SIXBIT
SORT.
Edit 646 Fix error message always points to line 371 if error was in
subscripted COUNT item in UNSTRING statement.
Edit 645 Fix error recovery in SORT statement; also add restriction
to MERGE statement to not allow subscripting.
Edit 644 More error recovery for 88 level where 01 is not defined
uniquely.
Edit 643 Fix ?SIZTE RETURNED 0.
Edit 642 Fix MOVE CURRENCY STATUS OF RUN-UNIT to subscripted-item.
Edit 641 Fix incorrect test for operand is ACC at LASTOP in EXPGEN.
Edit 640 Fix ill mem ref when expanding tables in phase O.
Edit 637 Fix COMPUTE with COMP-1 result.
Edit 636 Fix various errors when compiling programs with fatal errors.
Edit 635 Fix size allocation for an item which RENAMES item-1 THRU
item-2.
Edit 634 Fix problems with 4-word COMP arithmetic.
Edit 633 Give better warning on line number wrap-around.
Edit 632 Remove second (wrong) definition of ARGSGN in IPCGEN.
Edit 631 Don't use ARG2 at PA258. thus preventing catastrophe in
phase D.
Edit 630 Fix edit 562 for non-BIS case.
Edit 627 Wrong code generated for EBCDIC 8 byte KEY with 1 or 3 bytes
in first word.
Edit 626 Fix MOVE of 3 char EBCDIC fig-const (COBOL-68 only).
Edit 625 Fix bad test for two word TEMP in PUTEMP.
Edit 624 Record size must match RECORD CONTAINS in F mode file.
COBOL-68/COBOL-74 V12A Documentation Page 6
EXTERNAL CHANGES and OPTIONS
Edit 623 Give error if SORT KEY contains OCCURS clause.
Edit 622 Wrong code generated for FILLER X, KEY X(9) in SIXBIT.
Edit 620 Store Seq. No. correctly for DATE-COMPILED paragraph.
Edit 617 If FGTPER is on don't test for replacement in COPY.
edit 616 Fix SUBI/ADDI optimization in LINKAGE SECTION.
Edit 615 Put remaining fixes from BWR file into official sources.
Edit 614 Decrement Tag count correctly for IF D.P. test (this was in
BWR file).
Edit 613 Make it possible to build compiler with DBMS=0 (this was in
BWR file).
Edit 612 Initialize FNOSUB at the start of phase D (this was in the
BWR file).
Edit 611 Fix IF DBMS-statement to generate correct code (this was in
BWR file).
Edit 610 Fix incorrect code generated in array where top level is COMP
and is referenced via constant subscript.
Edit 607 Fix ?NPCIN BECAME NEGATIVE when deleting code that can't be
reached.
Edit 606 Fix ?INTERNAL COMPILER ERROR if 01 item OCCURS usage is
non-DISPLAY.
Edit 605 Make variable length reads work usefully.
Edit 604 Put out correct error message on STRING of non-NUMERIC to
NUMERIC.
Edit 604 Clear ATEND flag on CLOSE REEL.
Edit 603 Fix ?ILL UUO. when CONTROL in RD refers to edited item.
Edit 602 Allow null section in Procedure Division.
COBOL-68/COBOL-74 V12A Documentation Page 7
EXTERNAL CHANGES and OPTIONS
2.2 COBOL BUG FIXES SINCE COBOL-68 V12(530)
Edit 601 Correct edit 546.
Edit 600 Adjust D.P. of "A" in accs if less than D.P. of "B".
Edit 577 Fix SET DOWN BY 262144 (i.e. <-1,,0>).
Edit 576 Fix ?BAD LITAB CODE - in ENABLE stmt code gen.
Edit 575 Fix MOVE ALL 'A' TO DISPLAY-ITEM (SUBSCRIPTED).
Edit 574 Don't set bit 1 for user-name external entry (bit went away).
Edit 573 Allow null paragraphs in DECLARATIVES.
Edit 572 Make tables be size 1 if DBMS or MSC/TCS turned off.
Edit 571 Finally fix edits 531 and 517.
Edit 570 Add quad-word rounding function.
Edit 567 Fix decimal point alignment in quad-word multiplies.
Edit 566 Float operands when target is COMP-1.
Edit 565 Pass NUMERIC EDITED fields to a subroutine correctly.
Edit 564 Fix bug in edit 537 - non-BIS only problem.
Edit 563 Ill. Mem. Ref. for FILLER X(3) or X(4), KEY X(8) in ASCII.
Edit 562 Fix SIXBIT 6 char FIG-CON compare when sign gets in the way.
Edit 561 Fix GO DEPENDING - /O problem.
Edit 560 Wrong code generated for FILLER X(3), KEY X(7) in SIXBIT.
Edit 557 Fix various COPY REPLACING bugs.
Edit 556 Fix GETTAB 135 if FILDAEMON is turned off in TOPS-10 monitor.
Edit 555 Fix miscellaneous problems with COBOL SORT.
Edit 554 Give error message if KEY in SORT statement is in the wrong
file.
Edit 553 Give warning if RECORDS/RERUN too large.
Edit 552 Give error if DECLARATIVES but no END DECLARATIVES.
Edit 551 Fix Catastrophe in Phase E.
COBOL-68/COBOL-74 V12A Documentation Page 8
EXTERNAL CHANGES and OPTIONS
Edit 550 Fix IF subscripted item is ALPHABETIC.
Edit 547 Fix EXAMINE REPLACING HIGH-VALUES BY.
Edit 546 Fix MULTIPLY -1 BY X generates a SETZM.
Edit 545 Fix statement after SUBTRACT 1 is compiled wrong.
Edit 544 Fix HIGH-VALUES compares for SIXBIT variables.
Edit 543 Fix bad literal table offsets.
Edit 542 Fix NUMERIC compare of field with decimal places with
expression with no decimal places.
Edit 541 Fix Catastrophe in Phase O if null INPUT or OUTPUT
procedures.
Edit 540 Fix CONTROL HEADING printed past line specified as last
DETAIL LINE.
Edit 537 Fix subscripted MOVE with "A" in acs.
Edit 536 Fix MOVE of COMP item to DISPLAY to only move the number of
characters in the COMP PIC.
Edit 535 Fix edit 273 for IF SET NOT EMPTY.
Edit 534 Fix COMPUTE gets answer from wrong ac.
Edit 533 Make STOP RUN work for WHEN in SEARCH.
Edit 532 Fix 511 to process errors correctly.
Edit 531 Fix 517 to compile copies correctly.
Edit 517 Improve readability of .LST file.
COBOL-68/COBOL-74 V12A Documentation Page 9
EXTERNAL CHANGES and OPTIONS
2.3 OTS BUG FIXES SINCE COBOL-74 V12(543)
Edit 603 Take out call to CLWSMU in CLSWEL (from edit 576).
Edit 602 ******* NOT USED *******
Edit 601 Make COBOL-74 FILE STATUS fixes available for COBOL-68.
Edit 600 Correctly shuffle SIXBIT records in SHFREC.
Edit 577 Put in check for no CR-LF in blocked 1 ASCII MTA file, allow
it with warning.
Edit 576 Put checkpoint FILOP in CLSWEL for 10's SMU type CLOSE
(flushes buffers).
Edit 575 Fix OPEN for spooled CDR when file is empty or nonexistent.
Edit 574 Check record pointer as well as key description of ISAM file.
Edit 573 Fix edit 571 to save ac 7,14 before call to SU.CL.
Edit 572 Fix infinite loop of typing out 0's if first CORE UUO fails
in RESET.
Edit 571 At C.CLOS, do not call SU.CL until all buffers are out.
Edit 570 Take out edit 557 and replaces it with code to force thawed
access COMPT. LOOKUP for all READ ONLY OPENS.
Edit 567 Fix three problems with the level in PERF.MAC.
Edit 566 Put in LKPSIZ definition that should have been in edit 565.
This edit is not needed for these sources, but is added to
conform with HOSS sources, which were the ones that missed
it.
Edit 565 Fix OPNELO to calculate file size when called from LFENQ.,
but not after.
Edit 564 Fix optional file routine YES.NO to eat whole answer line up
to EOL.
Edit 563 Check for illegal file name and give fatal error if found.
Edit 562 Dummy edit to get 10 and 20 sources back in sync.
Edit 561 Fix MTA label processing to allow for ANSI labels in monitor
version 4.
Edit 560 Fix edit 544.
Edit 557 Remove EXTENDED LOOKUP in OPEN and allow for OPEN READ ONLY
COBOL-68/COBOL-74 V12A Documentation Page 10
EXTERNAL CHANGES and OPTIONS
when another program has OPENED the file for simultanious
update.
Edit 556 Fix RESET with shared buffer areas to work for ISAM "save"
areas.
Edit 555 Fix read of EBCDIC file with recording mode of binary read
wrong number of characters.
Edit 554 Enclose quad-word routines in BIS conditional.
Edit 553 Allow no digits following a decimal point.
Edit 552 Fix ISAM Sequential READ after a WRITE which splits both a
data block and an index block.
Edit 551 Fix E0.6.1, E0.7.1, E0.9.1 not found in /R case.
Edit 550 Fix null conversion in LRDEQ.
Edit 547 Not used.
Edit 546 Fix smashing of ac when INSPECT REPLACING.
Edit 545 Store no. of characters in var. len. record in file table.
Edit 544 Check for missing half of PPN and fill in default.
COBOL-68/COBOL-74 V12A Documentation Page 11
EXTERNAL CHANGES and OPTIONS
2.4 OTS BUG FIXES SINCE COBOL-68 V12(525)
Edit 543 Move code to setup .JBHRL from CBLIO to COBST. This is
required for overlays on TOPS-20.
Edit 542 Fix ASCII to EBCDIC record conversion to recognize E-O-L
characters.
Edit 541 Fix BYTE mode to EBCDIC tape (gave Ill. Addr. in UUO).
Edit 540 Add quad-word rounding function.
Edit 537 Fix edit 521, use TMP.DP.
Edit 536 Make LIBOL identify an overlay file it can't find.
Edit 535 Fix LIBOL-12 to run with IQL.
Edit 534 Fix EOF for LOW-VALUES READ of ISAM files in SIMULTANEOUS
UPDATE.
Edit 533 Fix DISPLAY doesn't display trailing spaces.
Edit 532 Fix illegal instruction from LSU for SIMULTANEOUS UPDATE.
Edit 531 Fix error on WRITE of NON-STANDARD LABELS to NUL:
Edit 530 Fix device not available error to give the correct device
name.
Edit 527 Test for OVERFLOW and UNDERFLOW before fixing a floating
point number.
Edit 526 Fix ASCII writes to RANDOM file may put bit 35 on TOPS-20.
COBOL-68/COBOL-74 V12A Documentation Page 12
EXTERNAL CHANGES and OPTIONS
2.5 LIBARY BUG FIXES
Note, the editor commands have been removed from LIBARY.
Edit 30 Prevent looping "?Incorrect command" error.
Edit 27 Add SFD support and improve error messages.
Edit 26 Fix bug in /D caused by edit 24.
Edit 25 Put tab after line number on listing file.
Edit 24 Put page number on listing of library.
2.6 ISAM BUG FIXES
Edit 161 Fix tape label error routine at LTCTST:.
Edit 160 Issue warning U before X in KEY descriptor.
Edit 157 Fix FILOP. uuo for large files.
2.7 COBDDT BUG FIXES
Note, This version of COBDDT will not work with versions of COBOL
prior to v12A.
Edit 26 Add more new features. See NEWCOB.MEM.
Edit 25 Add better comments, minor bug fixes.
Add requirement that STOP command be typed in full.
Edit 24 Add NEXT <integer> command.
Edit 23 Fix breakpoint insertion after .REENTER.
Edit 22 Fix ?ITEM TOO LARGE FOR TEMP error to DISPLAY correctly.
COBOL-68/COBOL-74 V12A Documentation Page 13
EXTERNAL CHANGES and OPTIONS
2.9 SYNTACTIC and SEMANTIC CHANGES NOT YET DOCUMENTED
COMPUTE Statement
Internal support for double precision floating point has been
added to both the compiler and OTS. There is a new feature
test switch BISCMP which, if on, causes all COMPUTE
statements to coerce the data into double precision floating
point. In this version the feature test is OFF. This is
because the code has not had sufficient testing, however if
anyone turns it on and tries it out, we will fix any bugs
found. This code will only work on KL CPUs. There are no
plans to add double precision floating point as an external
data type.
VARIABLE LENGTH SEQUENTIAL RECORDS
Version 12A correctly reads and writes variable length
sequential records.
The simplest way to describe the record is as:
01 record PIC X OCCURS n TIMES DEPENDING ON data-name-1.
Where data-name-1 is not part of the record.
On WRITE all that has to be done is to setup data-name-1 to
the correct size and do the WRITE. On READ data-name-1 will
be setup correctly after the READ so that the user can tell
how big the record was.
OPEN EXTEND
This is the COBOL-74 OPEN EXTEND syntax. It allows the user
to append to a sequential file to either DSK or MTA.
DISPLAY IS DISPLAY-6/7/9
This clause has been added to the OBJECT COMPUTER paragraph
to allow the user to set the default DISPLAY mode. It is
similar to /X but also allows DISPLAY-7.
WRITE record FROM SPACES
This is an extension of WRITE record FROM data-name.
It is equivalent to
MOVE SPACES TO record.
WRITE record.
CHECKPOINT OUTPUT
The original syntax was:
ACCESS MODE IS INDEXED CHECKPOINT OUTPUT
at user's requests the syntax was expanded to cover RANDOM
and SEQUENTIAL also.
The action is to do a CHECKPOINT FILOP after every output
which is equivalent to, but much faster than, a CLOSE
followed by an OPEN. This should greatly increase the
COBOL-68/COBOL-74 V12A Documentation Page 14
EXTERNAL CHANGES and OPTIONS
reliability of ISAM files at the expense of performance.
BYTE MODE
This was in version 12 but undocumented. The syntax is
RECORDING MODE IS BYTE MODE [ASCII, SIXBIT, ...]
If BYTE MODE is used, the exact number of bytes is written on
the tape, it does not round up to the the word boundary.
This is valid only on magnetic tape.
DENSITY IS 6250
Allow the syntax for mag tape density of 6250 bpi.
SELECT file-name ASSIGN TO literal-1
This is an extension of the SELECT statement to allow devices
that look like COBOL reserved words to be used. Note the
literal must be a legal TOPS-10 style device name, no "-" for
example.
COBOL-68/COBOL-74 V12A Documentation Page 15
DEFICIENCES
3.0 DEFICIENCIES
3.1 NEW Deficiencies from COBOL v12
COPY REPLACING has some problems in that it is not possible to
replace either part of PIC xyz without replacing the whole.
i.e. REPLACING ==PIC S9(10)==
will work
but
REPLACING ==PIC== or REPLACING ==S9(10)== will not.
Note, it was never the intent (and it contravenes the ANSI
standard) for COPY REPLACING to replace part of a data-item.
REPLACING AA by BB should not turn AA-XYZ into BB-XYZ.
Programs which contain nested SEARCH statements generate
instructions which jump to themselves. These instructions never
get executed so the program works, however the optimizer does not
know how to handle them and goes into an infinite loop. For now
do not optimize programs which contain nested SEARCHes.
The LINK supplied with 7.00 for loading the monitor will not load
COBOL-74 subroutines, COBOL-68 is OK. Use field image LINK for
this case.
In COBOL-74 the statement
PROGRAM COLLATING SEQUENCE IS EBCDIC
is not supported even though the manual implies that it is.
MULTIPLY A BY B GIVING C ON SIZE ERROR ... *(1)
where A, B and C are double precision (BIS only) has a problem in
that the compiler generates code which, because of the ON SIZE
ERROR code, assumes that the conversion from 4-words to COMP has
already taken place so the wrong data is stored. Correct code is
generated if ON SIZE ERROR is not used or the intermediate temp
is not bigger than 18 digits.
DIVIDE A BY B GIVING C *(1)
where A, B and C are double precision COMP and have sufficient
decimal places so that A must be adjusted to be bigger than 18
digits so as not to lose precision (BIS only) then the compiler
generates wrong code for the divide by B. Note, this only
happens if B is COMP.
MULTIPLY/DIVIDE A BY B GIVING C *(1)
where A, B and C are double precision and where the intermediate
temp is 4-words (BIS only) and has more decimal places than C
then wrong results are generated when A and B have opposite sign.
CATASTROPHE IN PHASE C *(1)
If the FD has a RECORD CONTAINS clause but no data record then
the compiler will get a fatal error when it tries to diagnose the
COBOL-68/COBOL-74 V12A Documentation Page 16
DEFICIENCES
user error.
SOURCE-COMPUTER with no comment following it causes a fatal
error. *(1)
---------------
*(1) Untested patches exist for these problems. They will be
published after version 12A is released when they have had more
testing.
COBOL-68/COBOL-74 V12A Documentation Page 17
DEFICIENCES
********
* NOTE *
********
We do not reccomend that this change be installed unless your
installation is having problems transfering data TO an IBM
machine.
The ASCII to EBCDIC translation table was changed in version 12
(as the result of several SPRs) so that the translation of
graphics was more correct. However it is still not correct
according to IBM documentation, we are currently investigating
what VAX does to see if there can be a DEC to IBM standard we can
live with. However it seems that we now in some cases generate
incorrect EBCDIC characters for minus zero. The interim solution
for those who see this problem is to put the translation table
back the way it was in version 11 knowing then that the
translation of some graphics will be wrong.
In CHREQV.MAC change
E 133,255 to E 133,340
E 134,340 to ; 134
E 135,275 to E 135,320
E 136,137 to ; 136
E 140,171 to ; 140
E 175,320 to E 175,260
E 176,241 to ; 176
and before CAE insert
DSAE 134,155
DSAE 136,117
DSAE 140,174
DSAE 176,155
COBOL-68/COBOL-74 V12A Documentation Page 18
DEFICIENCES
3.2 OLD Deficiencies from before COBOL v12
Program ID same as filename, procedure name or data name results
in spurious error messages.
If A=B and C=D or E for subscripted A and C gives wrong code,
cause "SUBSCRIPT not POSITIVE" run time message if subscripts not
COMP or INDEX.
Using argument missing in call statement gives wrong error
message.
Misspelled column not handled properly in the report section.
Error not detected.
A RESET FINAL clause is legitimate only when FINAL is given as a
control. Violation of this rule goes undiagnosed. A RESET
clause can only accompany a sum clause. A RESET clause
accompanying a source clause receives no diagnostic.
Incorrect error message.
DATA-NAME RC which is defined on last line of the working-storage
section is incorrectly diagnosed as undefined in the declaratives
area of procedure division. It is considered to be defined ok in
the report section, however.
Incorrect error message.
COBOL rules make the presence of a data-name optional in the
control footing report description provided there is no need to
reference the report group. In the case where the data-name is
present the program compiles without error. In the case where
the data name is not present the compiler seems to be disallowing
sections in the procedure division.
DBMS error handling
Errors which relate to the schema are not tabulated in the error
count, and they go only to the TTY.
If "USE AFTER ERROR PROCEDURE ON x" where x is "INPUT", "OUTPUT
or "I-O" and "USE AFTER ERROR PROCEDURE ON file-name" are both
specified, then file-name may not be OPENed for x.
COBOL-68/COBOL-74 V12A Documentation Page 19
DEFICIENCES
4.0 Installation Instructions
See the COBOL-68/74 Installation Guide (COBOL.INS) for complete
installation instructions.
5.0 INTERNAL CHANGES
5.1 I/O Performance Metering
A new feature test switch, LSTATS and two new modules, METUNV.MAC and
METIO.MAC have been added to do OTS performance analysis. The feature
test switch is OFF in this release, however the save set LSTATS
contains a KL-10 version of the OTS with this feature turned on. See
IOPERF.MEM for details.
5.2 Misc.
1. The DATE and TIME routines have been moved from CBLIO.MAC to a new
routine TODAY.MAC.
2. The floating point conversion routines FLOT.1 and FLOT.2 have been
combined into one module FLOAT.
3. Most of the numeric constants in CBLIO.MAC have been replaced by
symbolic constants and the TX and MOVX macros have been used.
4. Wherever possible symbol definitions have been moved from CBLIO and
other modules into the appropriate UNV file.
5. The module UUO.MAC is no longer required and has been deleted.
[END OF FILE CBL12A.DOC]