Program heapex; { Program used to demonstrate the usage of heaptrc unit } Uses heaptrc; Var P1 : ^Longint; P2 : Pointer; I : longint; Marker : Longint; Procedure SetMarker (P : pointer); Type PLongint = ^Longint; begin PLongint(P)^:=Marker; end; Procedure Part1; begin // Blocks allocated here are marked with $FFAAFFAA = -5570646 Marker := $FFAAFFAA; New(P1); New(P1); Dispose(P1); For I:=1 to 10 do begin GetMem (P2,128); If (I mod 2) = 0 Then FreeMem(P2,128); end; GetMem(P2,128); end; Procedure Part2; begin // Blocks allocated here are marked with $FAFAFAFA = -84215046 Marker := $FAFAFAFA; New(P1); New(P1); Dispose(P1); For I:=1 to 10 do begin GetMem (P2,128); If (I mod 2) = 0 Then FreeMem(P2,128); end; GetMem(P2,128); end; begin SetExtraInfo(SizeOf(Marker),@SetMarker); Writeln ('Part 1'); part1; Writeln('Part 2'); part2; end.