var p : pointer;
... p:=@mem[a000:000]; |
while false do
begin {.. code ...} end; |
label 1;
... try if not(final) then goto 1; // this line will cause an error finally ... end; 1: ... |
...
try p; finally ... exit; // This exit ISN'T allowed end; ... |
If the procedure p raises an exception the nally block is executed. If the execution reaches the exit, it's unclear what to do: exiting the procedure or searching for another exception handler