Language elements that require change (quick reference)
Table 1 lists the language elements
different in OS/VS COBOL and Enterprise COBOL. This table
also lists conversion tools, if any, available to automate the conversion.
The language items listed
below are described in detail throughout this section, and are classified
and ordered according to the following categories:
- OS/VS COBOL language elements requiring other products
- OS/VS COBOL language elements not supported
- OS/VS COBOL language elements implemented differently
- Undocumented OS/VS COBOL extensions not supported
Language element | Conversion tool | Page |
---|---|---|
Abbreviated combined relation conditions | Abbreviated combined relation conditions | |
ACCEPT statement | ACCEPT statement | |
ALPHABETIC class changes | CCCA | ALPHABETIC class changes |
ALPHABET clause changes—ALPHABET key word | CCCA | ALPHABET clause changes |
Area A, periods in | CCCA | Area A, periods in |
Arithmetic statement changes | Arithmetic statement changes | |
ASSIGN . . . OR | CCCA | ASSIGN . . . OR |
ASSIGN TO integer system-name | CCCA | ASSIGN TO |
ASSIGN . . . FOR MULTIPLE REEL /UNIT | CCCA | ASSIGN . . . FOR MULTIPLE REEL /UNIT |
ASSIGN clause changes—assignment-name forms | CCCA | ASSIGN clause changes |
B symbol in PICTURE clause—changes in evaluation | B symbol in PICTURE clause | |
BDAM file handling | CCCA* | BDAM file handling |
BLANK WHEN ZERO clause and asterisk (*) override | BLANK WHEN ZERO | |
CALL identifier statement—B symbol in PICTURE clause | CALL identifier statement | |
CALL statement changes—procedure names and file names in USING phrase | CALL statement changes | |
CANCEL statement—B symbol in PICTURE clause | CANCEL statement | |
CLOSE . . . FOR REMOVAL statement | CLOSE . . . FOR REMOVAL | |
CLOSE statement—WITH POSITIONING, DISP phrases | CCCA | CLOSE statement |
Combined abbreviated relation condition changes | CCCA | Combined abbreviated relation condition changes |
Comparing group to numeric packed-decimal item | Comparing group to numeric packed-decimal item | |
COPY statement with associated names | CCCA | COPY statement |
Communication feature | Communication feature | |
CURRENCY-SIGN clause changes—'/', '=', and 'L' characters | CURRENCY-SIGN clause changes | |
CURRENT-DATE special register | CCCA | CURRENT-DATE special register |
DIVIDE . . . ON SIZE ERROR—change in intermediate results | DIVIDE . . . ON SIZE ERROR | |
Dynamic CALL statements to programs with alternate entry points without an intervening CANCEL | Dynamic CALL statements with alternate entry points | |
EXAMINE statement | CCCA | EXAMINE statement |
EXHIBIT statement | CCCA | EXHIBIT statement |
EXIT PROGRAM/GOBACK statement changes | EXIT PROGRAM/GOBACK statement changes | |
FILE STATUS clause changes | CCCA | FILE STATUS clause changes |
FILE-LIMIT clause of the FILE-CONTROL paragraph | CCCA | FILE-LIMIT clause of the FILE-CONTROL paragraph |
Flow of control, no terminating statement | Flow of control | |
FOR MULTIPLE REEL/UNIT | CCCA | FOR MULTIPLE REEL/UNIT |
GIVING phrase of USE AFTER STANDARD ERROR declarative | CCCA | GIVING phrase of USE AFTER STANDARD ERROR declarative |
IF . . . OTHERWISE statement changes | CCCA | IF . . . OTHERWISE statement changes |
Index names—nonunique | Index names | |
INSPECT statement—PROGRAM COLLATING SEQUENCE clause | INSPECT statement—PROGRAM COLLATING SEQUENCE clause | |
IS as an optional word | IS as an optional word | |
ISAM file handling | CCCA | ISAM file handling |
JUSTIFIED clause changes | CCCA | JUSTIFIED clause changes |
LABEL declaratives | LABEL declaratives | |
LABEL RECORDS clause with TOTALING/TOTALED AREA | CCCA | LABEL RECORDS clause with TOTALING/TOTALED AREA |
LABEL RECORD IS statement | LABEL RECORD IS statement | |
MOVE statement—binary value and DISPLAY value | MOVE statement—binary value and DISPLAY value | |
MOVE statements and comparisons—scaling changes | MOVE statements and comparisons—scaling changes | |
MOVE CORRESPONDING statement | CCCA | MOVE CORRESPONDING statement |
MOVE statement—multiple TO specification | MOVE statement—multiple TO specification | |
MOVE ALL—TO PIC 99 | MOVE ALL—TO PIC 99 | |
MOVE statement—warning message for numeric truncation | MOVE statement—warning message for numeric truncation | |
MULTIPLY ... ON SIZE ERROR—change in intermediate results | MULTIPLY ... ON SIZE ERROR | |
Nonunique program-ID names | CCCA | Nonunique program-ID names |
NOTE statement | CCCA | NOTE statement |
Numeric class test on group items | Numeric class test on group items | |
Numeric data changes | Numeric data changes | |
Numeric-editing changes (PICTURE clause) | Numeric-editing changes | |
OCCURS clause (order of phrases) | OCCURS clause | |
OCCURS DEPENDING ON—ASCENDING and DESCENDING KEY phrases | OCCURS DEPENDING ON—ASCENDING and DESCENDING KEY phrases | |
OCCURS DEPENDING ON—value for receiving items changed | CCCA | OCCURS DEPENDING ON—value for receiving items changed |
ON statement | CCCA | ON statement |
ON SIZE ERROR phrase—changes in intermediate results | ON SIZE ERROR phrase | |
OPEN statement failing for QSAM files (file status 39) | OPEN statement failing for QSAM files | |
OPEN statement failing for VSAM files (file status 39) | OPEN statement failing for VSAM files | |
OPEN statement with LEAVE, REREAD, and DISP phrases | CCCA | OPEN statement with LEAVE, REREAD, and DISP phrases |
OPEN REVERSED statement | OPEN REVERSED statement | |
OTHERWISE clause changes | OTHERWISE clause changes | |
Paragraph names not allowed as parameters | Paragraph names not allowed as parameters | |
PERFORM statement—changes in the VARYING and AFTER phrases | PERFORM statement—changes in the VARYING and AFTER phrases | |
PERFORM statement—second UNTIL | PERFORM statement—second UNTIL | |
Periods, consecutive in any division | Periods, consecutive in any division | |
Periods in Area A | CCCA | Periods in Area A |
Periods missing on paragraphs | CCCA | Periods missing on paragraphs |
Periods missing at the end of SD, FD, or RD | Periods missing at the end of SD, FD, or RD | |
PICTURE clause (numeric-editing changes) | PICTURE clause (numeric-editing changes) | |
PROGRAM COLLATING SEQUENCE clause changes | PROGRAM COLLATING SEQUENCE clause changes | |
Program-ID names, nonunique | CCCA | Program-ID names, nonunique |
Qualification - using the same phrase repeatedly | Qualification - using the same phrase repeatedly | |
READ statement - redefined record keys in the KEY phrase | READ statement - redefined record keys in the KEY phrase | |
READ and RETURN statement changes—INTO phrase | READ and RETURN statement changes—INTO phrase | |
READY TRACE and RESET TRACE statements | CCCA | READY TRACE and RESET TRACE statements |
RECORD CONTAINS n CHARACTERS clause | RECORD CONTAINS n CHARACTERS clause | |
RECORD KEY phrase and ALTERNATE RECORD KEY phrase | RECORD KEY phrase and ALTERNATE RECORD KEY phrase | |
REDEFINES clause in SD or FD entries | CCCA | REDEFINES clause in SD or FD entries |
REDEFINES clause with tables | REDEFINES clause with tables | |
Relation conditions | CCCA | Relation conditions |
REMARKS paragraph | CCCA | REMARKS paragraph |
RENAMES clause—nonunique, nonqualified data names | RENAMES clause | |
Report Writer statements | Report Writer Precompiler | Report Writer statements |
RERUN clause changes | RERUN clause changes | |
RESERVE clause changes | CCCA | RESERVE clause changes |
Reserved word list changes | CCCA | Reserved word list changes |
SEARCH statement changes | CCCA | SEARCH statement changes |
Segmentation changes—PERFORM statement in independent segments | Segmentation changes | |
SELECT statement without a corresponding FD | SELECT statement without a corresponding FD | |
SELECT OPTIONAL clause changes | CCCA | SELECT OPTIONAL clause changes |
SORT special registers | SORT special registers | |
SORT statement | SORT statement | |
SORT or MERGE | SORT or MERGE | |
Source language debugging changes | Source language debugging changes | |
START . . . USING KEY statement | CCCA | START . . . USING KEY statement |
STRING statement—PROGRAM COLLATING SEQUENCE clause | STRING statement—PROGRAM COLLATING SEQUENCE clause | |
STRING statement—sending field identifier | STRING statement—sending field identifier | |
Subscripts out of range—flagged at compile-time | Subscripts out of range | |
THEN as a statement connector | CCCA | THEN as a statement connector |
TIME-OF-DAY special register | CCCA | TIME-OF-DAY special register |
TOTALING/TOTALED AREA phrases in LABEL RECORDS clause | CCCA | TOTALING/TOTALED AREA phrases |
TRANSFORM statement | CCCA | TRANSFORM statement |
UNSTRING statement—PROGRAM COLLATING SEQUENCE clause | UNSTRING statement—PROGRAM COLLATING SEQUENCE clause | |
UNSTRING statement—coding with 'OR', 'IS', or a numeric edited item | CCCA | UNSTRING statement—coding with 'OR', 'IS', or a numeric edited item |
UNSTRING statement—multiple INTO phrases | UNSTRING statement—multiple INTO phrases | |
UNSTRING statements—subscript evaluation changes | UNSTRING statements—subscript evaluation changes | |
UPSI switches | CCCA | UPSI switches |
USE AFTER STANDARD ERROR—GIVING phrase | CCCA | USE AFTER STANDARD ERROR—GIVING phrase |
USE BEFORE STANDARD LABEL statement | CCCA | USE BEFORE STANDARD LABEL statement |
VALUE clause—signed value in relation to the PICTURE clause | CCCA | VALUE clause—signed value in relation to the PICTURE clause |
VALUE clause—condition names | CCCA | VALUE clause—condition names |
WHEN-COMPILED special register | CCCA | WHEN-COMPILED special register |
WRITE AFTER POSITIONING statement | CCCA | WRITE AFTER POSITIONING statement |
* This is a partial conversion for handling BDAM files. |