[fpc-pascal] Stack traces under Win64
denisgolovan
denisgolovan at yandex.ru
Tue Apr 2 22:03:08 CEST 2013
Hi all
I am trying to get stack traces for Win64 for exception, but BackTraceStrFunc still returns only hex representation.
My stack dumper is called via ExceptProc global variable.
Basically the procedure dumping exception stack follows below.
procedure TLogger.DumpExceptionBackTrace;
var
FrameNumber,
FrameCount : longint;
Frames : PPointer;
begin
if RaiseList=nil then
exit;
Log(BackTraceStrFunc(RaiseList^.Addr));
FrameCount:=RaiseList^.Framecount;
Frames:=RaiseList^.Frames;
for FrameNumber := 0 to FrameCount-1 do
Log(BackTraceStrFunc(Frames[FrameNumber]));
end;
Some info:
Actually I am doing cross-compilation from Linux x64 if it matters.
Linux version of the same application works fine.
I added both -gh and -gl parameters for compiler.
Am I doing something wrong?
Should I force the compiler to save debug info in some specific format on Win64?
Please comment.
--
Regards,
Denis Golovan
More information about the fpc-pascal
mailing list