The following restrictions apply to the code analysis functionality:
Branch prediction
Branch prediction is not enabled. For example, this will not be detected as unreachable code by Dead Code Analysis:
if 0 equals 1
display "Unreachable code"
else
display "World"
end-if
Conditional compilation
Conditional compilation is not supported.
Data Flow Analysis
The following functionality is not supported:
- By value
- Entry points
- Following data through internal calls to entry points within the same program (re-entrant)
- JSON parse syntax
- Multi-program source
- Section fall through
- Selecting a data item from the file-control section
- Qualified paragraph names (paragraph OF section)
- Nested programs
Code Analysis rules
Nested programs are not supported.
ENTRY defined through variable
ENTRY statements defined through variables are not supported, and the ENTRY's statements will be marked as dead even if they
can be called.
working-storage section.
78 entry-name value "my-entry-name".
procedure division.
entry entry-name
display "this is my-entry-name"
goback
.
In the example above, the DISPLAY statement will be marked as dead even if it can be called.
Local variable declarations
Local variable declarations are not supported.
JVM COBOL support
The
JVM COBOL syntax is not supported.
Program Flow Graph
The following functionality is not supported:
- By value
- Entry points
- JSON parse syntax
- Multi-program source - multi-program COBOL files only show the graph for the first program.
- Section fall through
- Qualified paragraph names (paragraph OF section)
Projects stored on a network share
- The Program Flow Graph and Data Flow Analysis features are not available for projects stored on a network share. To work with
these features, you need to copy the projects to a local drive.
- Code slicing is not supported.
Supported programming languages
Only the COBOL language is supported.