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
_______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal