Test suite results for test file tbs/tb0240.pp

Test run data :

Run ID:
Operating system: linux
Processor: i386
Version: 3.3.1
Fails/OK/Total: 46/9610/9656
Version: 3.3.1
Full version: 3.3.1-15584-g2f9ed0576e
Comment: -XR/home/muller/sys-root/i386-linux -Xd -Xr/home/muller/sys-root/i386-linux
Machine: gcc188
Category: 1
SVN revisions: 2f9ed0576e:8b7dbb81b1:3f8bbd3b00:2f9ed0576e
Submitter: muller
Date: 2024/04/19 11:34:00
Previous run: 934311
Next run: 935655

Hide skipped tests

Hide successful tests

Test file "tbs/tb0240.pp" information:

t_id 470
t_adddate 2003/10/03
t_result 0
t_knownrunerror 0

Detailed test run results:

tr_idruntr_oktr_skiptr_result
443839241934995TrueFalseSuccessfully run

Record count: 1

No log of 934995.

Source:

{ Old file: tbs0280.pp }
{ problem with object finalization.                    OK 0.99.13 (FK) }

{$mode objfpc}
{$H+}

program memhole;

type
  TMyClass = class
    s: String;
  end;
  plongint = ^longint;

procedure dotest;

var
  c: TMyClass;
  s : string;

begin
  s:='world';
  s:='Hallo '+s;
  writeln((plongint(s)-4)^);
  c := TMyClass.Create;
  writeln(longint(c.s));
  c.s := Copy('Test', 1, 4);
  writeln((plongint(c.s)-4)^);
  c.free;
end;

var
   membefore : longint;
begin
  membefore:=memavail;
  writeln(memavail);
  dotest;
  writeln(memavail);
  if membefore<>memavail then
    begin
      Writeln('Memory hole using ansi strings in classes');
      Halt(1);
    end
  else
    Writeln('No memory hole unsing ansi strings in classes');
end.

Link to SVN view of tbs/tb0240.pp source.