COBCH1667 Perform range end before start

The overlapping PERFORM range, indicated by the preceding COBCH1664, is a result of the end of the PERFORM range preceding the start of the PERFORM range.
Note: This error message is only applicable to managed COBOL, and then only when compiled with the ILSHOWPERFORMOVERLAP directive.

The following example generates such an error due to the end of the range in the second PERFORM statement:

$set ilshowperformoverlap
perform a thru c.
perform c thru b.
                  *>  Errors are displayed as follows:
a section.        *>  COBCH1663E Overlapping perform range: 2 entries
display "In a".   *>  COBCH1664E    perform range: a thru c

b section.           
display "In b".

c section.        *>   COBCH1664E    Perform range: c thru b
display "In c".   *>   COBCH1667E       perform range end before start
go to a.