Avoid PLI Main procedures using GOTO statement (PL1) | CAST Appmarq

Avoid PLI Main procedures using GOTO statement (PL1)


Rule Definition
Using Goto code breaks the process execution flow and makes the code more difficult to understand and maintain

Remediation
Try to reduce the number of GO TO and when it is possible replace it with alternative statements.

Violation Code Sample
MY_PROG: PROC OPTIONS(MAIN) REORDER;
  …  
GOTO TEST; 
... 
TEST:
END MY_PROG;

Related Technologies

Health Factor

  Total Quality Index


Technical Criterion
CWE-1075 - Unconditional Control Flow Transfer outside of Switch Block

About CAST Appmarq

CAST Appmarq is by far the biggest repository of data about real IT systems. It's built on thousands of analyzed applications, made of 35 different technologies, by over 300 business organizations across major verticals. It provides IT Leaders with factual key analytics to let them know if their applications are on track.

Benchmark Statistics

Global Compliance

92.80%

Total Violations
2,755
Total Opportunities
38,279
Average Violations / App.
551.00
The compliance score represents 1 minus the ratio between the number of times a rule has been violated compared to the number of opportunities in a set of applications that the rule could have been violated.

Industry Insights

Manufacturing

93.38%

Financial Services

81.96%

IT & Business Consulting

100.00%