Program heapex; { Program used to demonstrate the usage of heaptrc unit } Uses heaptrc; Var P1 : ^Longint; P2 : Pointer; I : longint; begin New(P1); // causes previous allocation not to be de-allocated New(P1); Dispose(P1); For I:=1 to 10 do begin GetMem (P2,128); // When I is even, deallocate block. We loose 5 times 128 // bytes this way. If (I mod 2) = 0 Then FreeMem(P2,128); end; GetMem(P2,128); // This will provoke an error and a memory dump Freemem (P2,64); end.