The following sections detail the known areas of difficulty you may encounter when you submit RM/COBOL source programs to this COBOL system to produce executable code. Hints on how you can avoid these areas are also given.
Length of Nonnumeric Literals
The RM/COBOL system allows you to write source programs containing nonnumeric literals in the Procedure Division that are up to 2047 characters long. However, this COBOL system will accept only nonnumeric literals in the Procedure Division that are up to 160 characters long, as specified in the ANSI X3.23-1985 COBOL standard.
Source Code in Columns 73 to 80
This COBOL system ignores any of the code in your source programs which lies within columns 73-80 inclusive.
Linkage Section in Main Program
Under RM/COBOL, if the main program has a Linkage Section, it is initialized by the parameter passed on the command line. Under this COBOL system, it is illegal to reference Linkage Section items in the main program.
Reserved Words
System directives, such as MF or ANS85, activate various features and their associated reserved words in this COBOL language. As a result, you may receive errors when you submit source programs to this COBOL system with such directives set, because data items in them might have the same names as words which are defined as reserved words.
Numbering of Segments
The RM/COBOL system allows you to specify segment numbers greater than 99. However, this COBOL system conforms to segment number limit specified in the ANS X3.23-1985 COBOL standard, and allows you to specify segment numbers only in the range 0 to 99 inclusive.
Program Identification and Data-names
The RM/COBOL system allows the name given in the Program-ID paragraph and a data item in that program to be the same. However, this COBOL system does not allow the use of the same name for the Program-ID and a data item in the program, and requires instead that each should be unique.
Duplicate Paragraph-names
If your program contains duplicate paragraph-names, both COBOL systems will resolve references to the duplicate paragraph-names in the same way, provided the duplicate paragraph-names are only referenced from within the sections in which they are declared. If, however, you reference a duplicate paragraph-name from a different section from the one it is declared in, the RM/COBOL system will assume that the reference is to the next declaration of the duplicate paragraph-name, whereas this COBOL system will give an error when you are producing intermediate code.