
Inline adoc files when they are included exactly once. Also fix language tags because this inlining gives us better information on what language the code is written in.
57 lines
1.3 KiB
Plaintext
57 lines
1.3 KiB
Plaintext
== Why is this an issue?
|
|
|
|
Most COBOL environments do not support recursive ``++PERFORM++`` calls, since they can cause unpredictable results. This rule raises an issue when recursive ``++PERFORM++`` calls are used.
|
|
|
|
=== Noncompliant code example
|
|
|
|
[source,cobol]
|
|
----
|
|
PARAGRAPH1.
|
|
PERFORM PARAGRAPH2.
|
|
|
|
PARAGRAPH2.
|
|
PERFORM PARAGRAPH3.
|
|
|
|
PARAGRAPH3.
|
|
PERFORM PARAGRAPH1.
|
|
----
|
|
|
|
=== Compliant solution
|
|
|
|
[source,cobol]
|
|
----
|
|
PARAGRAPH1.
|
|
PERFORM PARAGRAPH2.
|
|
|
|
PARAGRAPH2.
|
|
PERFORM PARAGRAPH3.
|
|
|
|
PARAGRAPH3.
|
|
DISPLAY "THIS IS PARAGRAPH3".
|
|
----
|
|
|
|
ifdef::env-github,rspecator-view[]
|
|
|
|
'''
|
|
== Implementation Specification
|
|
(visible only on this page)
|
|
|
|
=== Message
|
|
|
|
Break the recursion between the following module(s): A, B, C...
|
|
|
|
|
|
'''
|
|
== Comments And Links
|
|
(visible only on this page)
|
|
|
|
=== on 24 Jan 2014, 13:13:39 Dinesh Bolkensteyn wrote:
|
|
Very interesting, ILE COBOL supports a "RECURSIVE" clause: \http://publib.boulder.ibm.com/infocenter/iadthelp/v7r1/index.jsp?topic=/com.ibm.etools.iseries.langref.doc/c092539591.htm
|
|
|
|
=== on 21 Aug 2015, 18:34:39 Ann Campbell wrote:
|
|
\[~freddy.mallet] since you had set this to blocker, I've added the bug tag, but ordinarily I would have downgraded to Major based on the description ("many environments do not support").
|
|
|
|
include::../comments-and-links.adoc[]
|
|
|
|
endif::env-github,rspecator-view[]
|