There is a range of syntax designed specifically for managed COBOL. In addition, the native COBOL syntax is supported in managed COBOL, with a few exceptions. Also there are some words are now reserved.
There is syntax designed specifically for managed COBOL. We recommend you use this syntax, although you can continue to use the original native COBOL syntax, in virtually all situations.
However, there are some words that are now reserved. If your native code uses these reserved words, you get a Compiler error when you compile to managed code. You can change your data item names so that they don't conflict with a reserved word or you can unreserve the necessary words using the REMOVE Compiler directive.
In addition, the following syntax is not supported in managed COBOL:
- ACCEPT statement format 5.
- Adis (Extended Accept/Display).
- ALTER statement. This is supported but in segmented programs, an altered paragraph remains altered even when a segment is reloaded.
- CALL-CONVENTION.
- CHAIN statement. This is mapped to a CALL statement.
- DISPLAY of numeric fields. A signed numeric field displays an integer. Plus signs are not displayed.
- DISPLAY statement format 3.
- GLOBAL declaratives in nested programs.
- Mainframe pointers.
- Mainframe PERFORM statements (perform-type(osvs/vsc2)).
- Program names. Generally,
.dll names, program names and method names used in CALL and INVOKE statements must always be specified in upper case. However, if the AS phrase has been used in the called program to modify the program name, the case used in the CALL or INVOKE statement must exactly match that specified in the AS phrase.
- Screen section.
The syntax designed specifically for managed COBOL and some additional words are now reserved. If your native code uses words that are now reserved, you get a Compiler error when you compile to managed code. You can change your data item names so that they don't conflict with a reserved word or you can unreserve the necessary words using the REMOVE Compiler directive.