Hello, I'm using FPC 2.6 (rc) x86_64 on Linux with JSONParser.
I've written the following code: ----------------------- uses fpjson, jsonparser, SysUtils, classes; var parser : TJSONParser; json_file : TFileStream; begin json_file := TFileStream.Create('/tmp/test.json', fmOpenRead); json_file.position := 0; parser := TJSONParser.create(json_file); writeln('JSON: ', parser.Parse.AsJSON); FreeAndNil(parser); FreeAndNil(json_file); end. --------------------- It works well, but compiling with -gh gives the following return: $ ./test_json JSON: { "Hello" : "World", "TheAnswerForWorldUniverseAndEverything" : 42, "Array" : ["a", 1, 3.14000000000000E+000] } Heap dump by heaptrc unit 70 memory blocks allocated : 7060/7208 53 memory blocks freed : 6274/6408 17 unfreed memory blocks : 786 True heap size : 458752 True free heap : 455296 Should be : 455776 Call trace for block $00007FA261D57660 size 16 $000000000042BB8C $000000000042B974 $000000000042BEA7 $000000000042B94F $000000000042BCF8 $000000000042B92A $000000000042B663 $0000000000400180 Call trace for block $00007FA261D575C0 size 16 $000000000042BAED $000000000042B974 $000000000042BEA7 $000000000042B94F $000000000042BCF8 $000000000042B92A $000000000042B663 $0000000000400180 Call trace for block $00007FA261D67E40 size 32 $000000000041637A $000000000042B94F $000000000042BCF8 $000000000042B92A $000000000042B663 $0000000000400180 Call trace for block $00007FA261D57520 size 16 $000000000042B918 $000000000042BEA7 $000000000042B94F $000000000042BCF8 $000000000042B92A $000000000042B663 $0000000000400180 Call trace for block $00007FA261D67D80 size 18 $0000000000499691 $000000000042B94F $000000000042BCF8 $000000000042B92A $000000000042B663 $0000000000400180 Call trace for block $00007FA261D67CC0 size 24 $000000000047C0D8 $000000000047BE34 $0000000000428B13 $000000000042BE45 $000000000042B94F $000000000042BCF8 $000000000042B92A $000000000042B663 Call trace for block $00007FA261D67C00 size 24 $0000000000428B13 $000000000042BE45 $000000000042B94F $000000000042BCF8 $000000000042B92A $000000000042B663 $0000000000400180 Call trace for block $00007FA261D57480 size 16 $000000000042BE45 $000000000042B94F $000000000042BCF8 $000000000042B92A $000000000042B663 $0000000000400180 Call trace for block $00007FA261D57340 size 16 $000000000042BAED $000000000042B974 $000000000042BCF8 $000000000042B92A $000000000042B663 $0000000000400180 $0000000000400180 Call trace for block $00007FA261D5F520 size 70 $000000000041637A $000000000042B92A $000000000042B663 $0000000000400180 Call trace for block $00007FA261D67B40 size 20 $000000000041637A $000000000042B92A $000000000042B663 $0000000000400180 Call trace for block $00007FA261D470C0 size 384 $000000000041637A $000000000042B92A $000000000042B663 $0000000000400180 Call trace for block $00007FA261D573E0 size 16 $000000000042B918 $000000000042BCF8 $000000000042B92A $000000000042B663 $0000000000400180 Call trace for block $00007FA261D67A80 size 22 $0000000000499691 $000000000042BCF8 $000000000042B92A $000000000042B663 $0000000000400180 Call trace for block $00007FA261D5F440 size 56 $000000000047EA32 $000000000042A53B $000000000042BC43 $000000000042B92A $000000000042B663 $0000000000400180 Call trace for block $00007FA261D67900 size 24 $000000000042A53B $000000000042BC43 $000000000042B92A $000000000042B663 $0000000000400180 Call trace for block $00007FA261D572A0 size 16 $000000000042BC43 $000000000042B92A $000000000042B663 $0000000000400180 Is that a memory leak in the library, or am I missing something here ? Thanks, Ido
_______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal