[an error occurred while processing this directive]

HP OpenVMS Systems Documentation

Content starts here

HP COBOL
User Manual


Previous Contents Index


Appendix A
Compiler Implementation Specifications

The following list summarizes the specifications and restrictions for the HP COBOL compiler. The compiler issues diagnostic messages whenever you exceed its design parameters.

  • Run-time storage (generated object code and data) for COBOL programs cannot exceed 2,147,483,647 bytes.
  • The length of an FD's record cannot exceed 32,767 bytes for a sequential file, 32,234 bytes for an indexed file, or 32,255 bytes for a relative file. For SD records, the length cannot exceed 32,759 bytes for a sequential file, 32,226 bytes for an indexed file, or 32,247 bytes for a relative file.
  • On OpenVMS, bucket size for relative and indexed files cannot be greater than 63.
  • A sequential disk file's multiblock count cannot be greater than 127.
  • The physical block size for a sequential tape file must be from 20 to 65,532 bytes, inclusively. <>
  • Run-time storage for an indexed file's RECORD KEY or ALTERNATE RECORD KEY data item must not be greater than:
    • 255 bytes on OpenVMS systems
    • 120 bytes on Tru64 UNIX systems
  • The number of bytes in the string making up a VALUE OF ID file name or data name must not exceed 255.
  • The number of indexed file RECORD KEY and ALTERNATE RECORD KEY data items must not exceed 255 per file.
  • The maximum number of segments in a segmented key is eight.
  • The number of literal phrases specified to define an alphabet in an ALPHABET clause of the SPECIAL-NAMES paragraph must not be greater than 256.
  • The value of a numeric literal in a literal phrase of an ALPHABET clause must not be greater than 255.
  • The value of a switch number in the SWITCH clause of the SPECIAL-NAMES paragraph must be from 1 to 16, inclusively.
  • The value of a numeric literal in the SYMBOLIC CHARACTERS clause must be from 1 to 256, inclusively.
  • On OpenVMS, the value of an integer in the EXTENSION option of the APPLY clause must be from 0 to 65,535, inclusive.
  • The value of an integer in the WINDOW option of the APPLY clause must be from 0 to 127, inclusive, or equal to 255.
  • The value of the integer in the RESERVE AREAS clause must not be greater than 127.
  • If a data item is allocated more than 268,435,455 bytes, a COBOL program cannot reference it except with INITIALIZE and CALL BY REFERENCE.
  • Alphanumeric or numeric edited picture character-strings cannot represent more than 255 standard data format characters.
  • Alphanumeric or alphabetic picture character-strings cannot represent more than 268,435,455 standard data format characters.
  • A nonnumeric literal cannot be greater than 256 characters.
  • A hexadecimal literal cannot be greater than 256 hexadecimal digits.
  • A PICTURE character-string cannot contain more than 256 characters.
  • The number of operands in the USING phrase of a CALL statement cannot be greater than 255.
  • The number of USING files in a SORT or MERGE statement cannot exceed 10.
  • On OpenVMS, the maximum number of characters in a subschema pathname specification is 256. <>
  • The maximum static nesting depth of contained programs is 256.
  • The maximum number of characters in a user-word in HP COBOL is 31. The maximum number of characters allowed in a user-word as defined by the ANSI COBOL standard is 30. The compiler issues an informational diagnostic if you use 31-character user-words. The maximum number of characters in an external report file name is 30.
  • On OpenVMS, the maximum number of strings associated with the /AUDIT command line qualifier is 64.
  • The maximum number of characters in a Oracle CDD/Repository pathname specification is 256.
  • The maximum number of levels in a database subschema record definition supported by HP COBOL is 49.
  • The maximum number of digits in a numeric database data item supported by HP COBOL is 31 for Alpha and I64 and 18 for VAX.
  • The maximum number of standard data format characters in a character-type database data item is 65,535. <>
  • The maximum number of digits in a picture character string describing fixed-point numeric and numeric-edited data items is 31 for Alpha and I64 and 18 for VAX.
  • The maximum number of digits in numeric literals is 31 for Alpha and I64 and 18 for VAX.
  • The maximum number of characters in a picture character string is 50.
  • The maximum number of digits supported in most intrinsic functions is 31 for Alpha and I64 and 18 for VAX.
  • The maximum number of digits in numeric SORT/MERGE keys is 31 for Alpha and I64 and 18 for VAX.
  • The maximum number of digits in PACKED-DECIMAL (COMP-3) numeric and unsigned DISPLAY numeric ISAM keys is 31 for Alpha and I64 and 18 for VAX.
  • The SORT-32 (available on OpenVMS) record size limit is 65,535 bytes.
  • The SORT-32 key size limit is 65,529 bytes. <>
  • The Hypersort (available on Alpha and I64) key size limit is 65,535 bytes. <>
  • If a file is assigned to magnetic tape media and you use the BLOCK CONTAINS clause in the associated file description, the number of characters in a physical block determined from the BLOCK CONTAINS clause must be an even multiple of 8.
  • If a file is assigned to a disk medium and you use the BLOCK CONTAINS clause in the associated file description, the BLOCK CONTAINS value must be an even multiple of 1024.
  • The maximum number of lines in any report file is 999,998,000,001.
  • The maximum subscript value for any subscript or index name is 2,147,483,647.
  • In the OCCURS n TIMES clause of a Data Description entry, the maximum allowable value for n is 2,147,483,647.
  • On OpenVMS, the maximum static scoping depth of database USE procedures is 84.
  • The maximum number of operands in a given COBOL DML statement
    is 255. <>
  • In a PERFORM n TIMES statement, the maximum allowable value for n is 2,147,483,647.
  • The maximum static nesting depth of nested IF statements is 64.
  • The maximum number of levels for subscripts is 48.
  • The maximum number of files in a MULTIPLE FILE TAPE clause is 255.
  • For files assigned to magnetic tape, the record size for variable-length record files cannot exceed 9995 characters.
  • For files assigned to magnetic tape, the block size must be from 20 to 999,999 characters, inclusive.
  • For files assigned to magnetic tape, the number of files in a given volume set cannot exceed 9999 files.
  • The number of magnetic tapes spanned by a single file cannot exceed 9999 tapes.


Previous Next Contents Index