14.10.8 noreturn

Вверх  Предыдущий  Следующий

Модификатор noreturn используется, для сообщения компилятору что это процедура (не возвращает результата). Эта информация может использоваться компилятором, чтобы избежать предупреждений о неинициализированных переменных или не установленных результатах.

В следующем примере, компилятор не выдаст предупреждение о том , что результат в функции F может быть не установлен:

procedure do_halt;noreturn;

begin

halt(1);

end;

 

function f(i : integer) : integer ;

begin

if (i<0) then

  do_halt // Если выполнится эта ветвь, результат неопределён

else

  result:=i;

end;