Инструкция LEAVE используется для немедленного выхода из одного или нескольких повторяющихся циклов DO (т.е. из любой конструкции DO, отличной от простого цикла DO).
Выполнение группы инструкций завершается, и управление передается инструкции, следующей за предложением END, как если бы цикл закончился естественным образом после обработки условия завершения. Однако при этом управляющая переменная, если она есть, на выходе будет иметь то значение, которое она имела перед выполнением инструкции LEAVE.
Если имя не указано, то инструкция LEAVE завершает самый внутренний активный повторяющийся цикл. Если имя указано, то оно должно быть именем управляющей переменной текущего активного цикла, который может быть самым внутренним циклом; этот цикл (как и все активные циклы, вложенные в него) будет завершен. Потом управление передается инструкции, следующей за предложением END, соответствующим предложению DO выбранного цикла.
Пример: do i=1 to 5 say i if i=3 then leave end /* Будут выведены числа: 1, 2, 3 */
Примечания: