mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-05-10 18:24:47 +02:00
58 lines
788 B
ObjectPascal
58 lines
788 B
ObjectPascal
program ExceptPrgStep;
|
|
uses sysutils;
|
|
|
|
var
|
|
i: integer;
|
|
|
|
procedure foo;
|
|
begin
|
|
raise Exception.create('a');
|
|
Freemem(GetMem(1));
|
|
end;
|
|
|
|
begin
|
|
try
|
|
foo;
|
|
Freemem(GetMem(1));
|
|
foo;
|
|
foo;
|
|
except
|
|
Freemem(GetMem(1));
|
|
end;
|
|
Freemem(GetMem(2));
|
|
|
|
try
|
|
try
|
|
foo;
|
|
Freemem(GetMem(1));
|
|
foo;
|
|
foo;
|
|
except
|
|
Freemem(GetMem(1));
|
|
end;
|
|
Freemem(GetMem(2));
|
|
except
|
|
Freemem(GetMem(1));
|
|
end;
|
|
|
|
try
|
|
try
|
|
raise Exception.create('a');
|
|
Freemem(GetMem(1));
|
|
Freemem(GetMem(1));
|
|
Freemem(GetMem(1));
|
|
finally
|
|
Freemem(GetMem(1));
|
|
end;
|
|
raise Exception.create('xxx');
|
|
Freemem(GetMem(2));
|
|
except
|
|
Freemem(GetMem(1));
|
|
end;
|
|
|
|
Freemem(GetMem(2));
|
|
Freemem(GetMem(2));
|
|
Freemem(GetMem(2));
|
|
|
|
end.
|