Test suite results for test file webtbs/tw2129.pp

Test run data :

Free Pascal Compiler Test Suite Results

View Test suite results

Please specify search criteria:
File:
Operating system:
Processor:
Version
Date
Submitter
Machine
Comment
Limit
Cond
Category
Only failed tests
Hide skipped tests
List all tests

Test file "webtbs/tw2129.pp" information:

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

Detailed test run results:

Record count: 50

Total = 50

OK=50 Percentage= 100.00

Result type Cat. Count Percentage First date Last Date
Successfully run 50 100.0 2024/05/17 10:38:00 39 2024/05/17 12:19:00 173
i386 11 22.0 2024/05/17 11:09:00 236 2024/05/17 12:18:00 45
m68k 1 2.0 2024/05/17 11:17:00 244 2024/05/17 11:17:00 244
sparc 1 2.0 2024/05/17 12:01:00 74 2024/05/17 12:01:00 74
powerpc 1 2.0 2024/05/17 11:30:00 242 2024/05/17 11:30:00 242
arm 1 2.0 2024/05/17 11:05:00 37 2024/05/17 11:05:00 37
x86_64 22 44.0 2024/05/17 10:50:00 23 2024/05/17 11:57:00 35
powerpc64 2 4.0 2024/05/17 11:34:00 242 2024/05/17 11:39:00 59
mips 1 2.0 2024/05/17 11:21:00 241 2024/05/17 11:21:00 241
mipsel 1 2.0 2024/05/17 11:26:00 47 2024/05/17 11:26:00 47
aarch64 6 12.0 2024/05/17 10:38:00 39 2024/05/17 12:15:00 38
sparc64 1 2.0 2024/05/17 12:19:00 173 2024/05/17 12:19:00 173
riscv64 1 2.0 2024/05/17 11:56:00 31 2024/05/17 11:56:00 31
loongarch64 1 2.0 2024/05/17 11:13:00 34 2024/05/17 11:13:00 34
linux 40 80.0 2024/05/17 10:38:00 39 2024/05/17 12:19:00 173
solaris 10 20.0 2024/05/17 11:17:00 44 2024/05/17 12:18:00 45
3.3.1 21 42.0 2024/05/17 10:50:00 23 2024/05/17 12:19:00 173
3.2.2 10 20.0 2024/05/17 11:17:00 44 2024/05/17 12:18:00 45
3.2.3 19 38.0 2024/05/17 10:38:00 39 2024/05/17 12:15:00 38

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 }

{$mode delphi}

(*
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<>'-6.53142228756617E+0018' then
    begin
      writeln('error');
      halt(1);
    end;
end.

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