Test suite results for test file webtbs/tw2129b.pp

Test run data :

Run ID:
Operating system: linux
Processor: powerpc64
Version: 3.3.1
Fails/OK/Total: 61/9155/9216
Version: 3.3.1
Full version: 3.3.1-15584-g2f9ed0576e
Comment: -Cb- -dCPUPOWERPC64LE -XR/home/muller/sys-root/powerpc64le-linux -Xd -Xr/home/muller/sys-root/powerpc64le-linux
Machine: cfarm421
Category: 1
SVN revisions: 2f9ed0576e:8b7dbb81b1:3f8bbd3b00:2f9ed0576e
Submitter: muller
Date: 2024/04/19 11:34:00 <> 2024/04/18
Previous run: 934318
Next run: 935649

Hide skipped tests

Hide successful tests

Test file "webtbs/tw2129b.pp" information:

t_id 1167
t_version 1.1
t_adddate 2003/10/26
t_result 0
t_knownrunerror 0

Detailed test run results:

tr_idruntr_oktr_skiptr_result
443971866934993TrueFalseSuccessfully run

Record count: 1

No log of 934993.

Source:

{ %version=1.1 }
{ Source provided for Free Pascal Bug Report 2129 }
{ Submitted by "Bill Rayer" on  2002-09-18 }
{ e-mail: lingolanguage@hotmail.com }

(*
Comp() cast has different effect in FPC.
Compiles using Delphi4:
  dcc32 -CC fpc19
Compiles in FPC 1.0.6:
  ppc386 -WC fpc19

When run, the Delphi version shows -6.5E+18, but the FPC version
shows zero. In Delphi, the comp() cast actually moves 8 bytes from
the double into the comp without converting the data, but FPC uses
floating point instructions to convert the data and therefore prints
zero.

In Delphi, if you want to convert a double to a float, you just use
the assignment "comp1 := dbl1" which corresponds to the FLD/FIST
opcodes. FPC should not use the comp() cast for doing this, since
it introduces a subtle incompatibility with Delphi.
*)

program fpc19;
var
  comp1 : comp;
  dbl1 : double;
  s : string;
begin
  dbl1 := -1e-128;
  comp1 := comp(dbl1);
  str(comp1,s);
  if s<>' 0.00000000000000E+0000' then
    begin
      writeln('error: ',s);
      halt(1);
    end;
end.

Link to SVN view of webtbs/tw2129b.pp source.