== Why is this an issue?

If the second procedure of a PERFORM THRU is not defined after the first one, the source code is semantically incorrect and the program doesn't behave as expected.


=== Noncompliant code example

[source,cobol]
----
  PERFORM SECOND-P THRU FIRST-P.
  ...

 FIRST-P.
   ...

 SECOND-P.
   ...
----


=== Compliant solution

[source,cobol]
----
  PERFORM FIRST-P THRU SECOND-P.
  ...

 FIRST-P.
   ...

 SECOND-P.
   ...
----

ifdef::env-github,rspecator-view[]

'''
== Implementation Specification
(visible only on this page)

=== Message

The procedure 'XXXX' must be defined before 'YYYY'.


endif::env-github,rspecator-view[]
