mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-09 19:28:55 +02:00
* enable the compiler to optimize away parts of System.PushExceptObject, if System.get_frame is not implemented, i.e. returning nil
git-svn-id: trunk@47058 -
This commit is contained in:
parent
ab9fa2012b
commit
c9fcc68ec1
@ -101,12 +101,14 @@ begin
|
|||||||
writeln ('In PushExceptObject');
|
writeln ('In PushExceptObject');
|
||||||
{$endif}
|
{$endif}
|
||||||
_ExceptObjectStack:=@ExceptObjectStack;
|
_ExceptObjectStack:=@ExceptObjectStack;
|
||||||
New(NewObj);
|
NewObj:=AllocMem(sizeof(TExceptObject));
|
||||||
NewObj^.Next:=_ExceptObjectStack^;
|
NewObj^.Next:=_ExceptObjectStack^;
|
||||||
_ExceptObjectStack^:=NewObj;
|
_ExceptObjectStack^:=NewObj;
|
||||||
|
|
||||||
NewObj^.FObject:=Obj;
|
NewObj^.FObject:=Obj;
|
||||||
NewObj^.Addr:=AnAddr;
|
NewObj^.Addr:=AnAddr;
|
||||||
|
if assigned(get_frame) then
|
||||||
|
begin
|
||||||
NewObj^.refcount:=0;
|
NewObj^.refcount:=0;
|
||||||
|
|
||||||
{ Backtrace }
|
{ Backtrace }
|
||||||
@ -135,6 +137,7 @@ begin
|
|||||||
End;
|
End;
|
||||||
NewObj^.framecount:=framecount;
|
NewObj^.framecount:=framecount;
|
||||||
NewObj^.frames:=frames;
|
NewObj^.frames:=frames;
|
||||||
|
end;
|
||||||
Result:=NewObj;
|
Result:=NewObj;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user