View Issue Details

IDProjectCategoryView StatusLast Update
0034378FPCCompilerpublic2020-10-12 11:37
ReporterDmitry Yershov Assigned ToJonas Maebe  
PrioritynormalSeverityminorReproducibilityalways
Status resolvedResolutionduplicate 
Platformx64OSWindows 
Product Version3.0.4 
Summary0034378: Compiler understands type "Extended" as "Double".
DescriptionThe x64 fpc compiler understands the type "Extended" as the "Double".

Therefore the example "p1" stops on compiler error.

Run example "p2" to see that the size of "Extended" is the same as for "Double".
Steps To Reproduceprogram p1;

procedure Test(aValue: Double); overload;
begin
  WriteLn(aValue);
end;

procedure Test(aValue: Extended); overload;
begin
  WriteLn(aValue);
end;

begin
  Test(2.9);
end.
Additional Informationprogram p;

begin
  WriteLn('SizeOf(Real)=',SizeOf(Real));
  WriteLn('SizeOf(Double)=',SizeOf(Double));
  WriteLn('SizeOf(Extended)=',SizeOf(Extended),', but has to be 10');
  Readln;
end.
Tags64bit
Fixed in Revision
FPCOldBugId
FPCTarget
Attached Files

Relationships

has duplicate 0037905 resolvedFlorian datatype extended is casted of double in Win64 give haevy error by Float to string when FPU87 10 byte 

Activities

Florian

2018-10-03 18:55

administrator   ~0111226

The extended type is deprecated on win64 by MS, so it maps to double.

If you really know what you are doing, you can recompile the compiler with -dFPC_SUPPORT_X87_TYPES_ON_WIN64 to get it back, but you are at your own at this point.

Issue History

Date Modified Username Field Change
2018-10-03 18:49 Dmitry Yershov New Issue
2018-10-03 18:52 Dmitry Yershov Tag Attached: 64bit
2018-10-03 18:55 Florian Note Added: 0111226
2018-10-03 18:55 Florian Status new => resolved
2018-10-03 18:55 Florian Resolution open => no change required
2018-10-03 18:55 Florian Assigned To => Florian
2018-10-03 18:55 Jonas Maebe Assigned To Florian => Jonas Maebe
2018-10-03 18:55 Jonas Maebe Resolution no change required => duplicate
2020-10-12 11:37 Sven Barth Relationship added has duplicate 0037905