Das geringste Übel wäre meiner Meinung nach den Rückgabewert unnötigerweise im except-Block zu setzen. Das hätte wohl wenigstens keine Auswirkungen auf den Normalfall:
Delphi-Quellcode:
function f(): Byte;
begin
try
Result := 42;
except
Exception.RaiseOuterException( EProgrammerNotFound.Create('
derp') );
Result := 0;
// unnötig, aber compiler ist happy
end;
end;
Oder - du setzt das Result einfach
nach dem try..except.