testmem.pp 555 B

12345678910111213141516171819202122232425262728293031
  1. program go32v2_crash;
  2. const
  3. MAX_SIZE = 256;
  4. SIZE_INC = 8;
  5. type
  6. TMemArray = array [0..MAX_SIZE div SIZE_INC] of pointer;
  7. var
  8. i : longint;
  9. MemArray : TMemArray;
  10. function Size(i: longint) : longint;
  11. begin
  12. Size:=1+SIZE_INC*i;
  13. end;
  14. begin
  15. FillChar(MemArray,Sizeof(MemArray),#0);
  16. for i:=0 to MAX_SIZE div SIZE_INC do
  17. begin
  18. GetMem(MemArray[i],Size(i));
  19. end;
  20. for i:=1 to MAX_SIZE div SIZE_INC do
  21. begin
  22. FreeMem(MemArray[i],Size(i));
  23. end;
  24. Writeln(stderr,'Everthing is fine');
  25. end.