[fpc-pascal] Access violation in an empty project declaring heaptrc
silvioprog
silvioprog at gmail.com
Thu Mar 3 03:06:43 CET 2016
Hello,
Just create a project like this:
program project1;
{$mode objfpc}{$H+}
uses heaptrc;
begin
end.
Now, compile and try to run that, you will get this error:
Heap dump by heaptrc unit
0 memory blocks allocated : 0/0
0 memory blocks freed : 0/0
0 unfreed memory blocks : 0
True heap size : 131072 (1856 used in System startup)
True free heap : 129216
An unhandled exception occurred at $770E8E19:
EAccessViolation: Access violation
$770E8E19
$770E8D28
$0040A8C9
$0040A456
$00413BC2
Why an access violation in an empty project, is it a heaptrc bug?
Now, if you compile and run this project below with -gh:
program project1;
{$mode objfpc}{$H+}
begin
end.
You will get:
Heap dump by heaptrc unit
47 memory blocks allocated : 1173/1280
47 memory blocks freed : 1173/1280
0 unfreed memory blocks : 0
True heap size : 163840 (112 used in System startup)
True free heap : 163728
What means "112 used in System startup"? I have a project that in some
cases I get:
Heap dump by heaptrc unit
90 memory blocks allocated : 2827/3072
90 memory blocks freed : 2827/3072
0 unfreed memory blocks : 0
True heap size : 196608
True free heap : 196480
Should be : 196608
So it seems that the "Should be : 196608" in this case is related to the
128 used in the system startup, because when I comment all the code in this
project I get "128 used in System startup".
--
Silvio Clécio
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-pascal/attachments/20160302/221abe9a/attachment.html>
More information about the fpc-pascal
mailing list