Test suite results for test file test/cg/tinitdon.pp

Test run data :

Run ID:
Operating system: linux
Processor: x86_64
Version: 3.2.3
Fails/OK/Total: 27/8127/8154
Version: 3.2.3
Full version: 3.2.3-1373-gae0fe8a6a0
Comment: -gl -Fl/usr/lib -Fl/usr/lib/gcc/x86_64-linux-gnu/10 -Fl/usr/lib/x86_64-linux-gnu -Cg -O2 -Fd
Machine: gcc13
Category: 1
SVN revisions: fdf93c5b29:c17a0e20f5:ae0fe8a6a0:d1c29e6cb9
Submitter: pierre
Date: 2024/04/19 10:45:00 <> 2024/04/09
Previous run: 934301
Next run: 935636

Hide skipped tests

Hide successful tests

Test file "test/cg/tinitdon.pp" information:

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

Detailed test run results:

tr_idruntr_oktr_skiptr_result
443589649934955TrueFalseSuccessfully run

Record count: 1

No log of 934955.

Source:

{
  this file checks that calling done from init is
  done correctly
}


program test_init_done;


type
   pobject = ^tobject;
   tobject = object
     val : longint;
     constructor init (call_done : boolean);
     destructor done; virtual;
     procedure check;
   end;


constructor tobject.init (call_done : boolean);
  begin
    val:=7;
    if call_done then
      begin
        done;
        fail;
      end;
  end;

destructor tobject.done;
  begin
    check;
  end;

procedure tobject.check;
  begin
    if val<>7 then
      begin
        writeln('Error in codegeneration');
        halt(1);
      end;
  end;

var
  obj1 : tobject;
  obj2 : pobject;

begin
  obj1.init(false);
  obj1.done;

  new(obj2,init(true));
  if assigned(obj2) then
      begin
        writeln('Error in codegeneration of fail');
        halt(1);
      end;
end.

Link to SVN view of test/cg/tinitdon.pp source.