14.9.13 noreturn

The noreturn modifier can be used to tell the compiler the procedure does not return. This information can used by the compiler to avoid emitting warnings about uninitialized variables or results not being set.

In the following example, the compiler will not emit a warning that the result may not be set in function 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;