В FORTRAN (до Fortran 77, с которым я очень хорошо знаком), RETURN n
не используется для возврата значения функции;вместо этого он делает что-то похожее на то, что в других языках будет обрабатываться исключением: выход в местоположение кода, отличное от нормального.
Обычно вы вызываете такой SUBROUTINE
или FUNCTION
сметки в качестве аргументов, например,
CALL MYSUB(A, B, C, *998, *999)
...
998 STOP 'Error 1'
998 STOP 'Error 2'
, и если в MYSUB что-то пойдет не так, вы сделаете RETURN 1
или RETURN 2
(вместо обычного ВОЗВРАТА), и вы будете прыгать прямо к метке 998 или 999в вызывающей подпрограмме.
Вот почему обычно вам требуется целое число для этого RETURN - это не значение, а индекс, к которому вы хотите обратиться с ошибкой.
RETURN E
звучит неправильномне.Если нет синтаксиса, о котором я не знаю, предыдущий компилятор должен был пометить это как ошибку.