Graeme Geldenhuys wrote 8 lines
Op 2010-11-01 11:26, Sven Barth het geskryf:
>
> A little entry about some details of Delphi x64 I stumbled on today:
And let me guess, they took no cues from FPC, and had to make sure there is
as much "incompatibility" as humanly possible! This is why I say, FPC
should cut any ties with Delphi and simply innovate on it's own.
There are times where I think the same...
Show quoted text 9 lines
> > So, Extended = Double.
>
> // how is this in FPC? Extended is just not available on x86_64, or?
> (well... I don't use Extended anyway ^^)
FPC has Extended and it's rang is 19-20 significant digits with range:
1.9E-4932 ? 1.1E4932
It's size is 10 bytes.
I'm aware that FPC has Extended. But the point is that it's not supported on all platforms, cause not every platform can handle 80bit floating points.
My question was more: Is Extended usable/enabled on Win64 or is it Extended=Double as well?
Show quoted text 8 lines
> > Type sizes for 64: SizeOf(Integer)=4,
> SizeOf(NativeInt)=SizeOf(Pointer)=8,
Oh f**k, please don't tell me FPC is now going to downgrade Integer to a
32-bit type only. This will break such a LOT of programs!!
Ehhhh... In modes "objfpc" and "delphi" SizeOf(Integer) = 4 is already the case no matter what bitness your system has. For that purpose "PtrInt" (and "PtrUInt") were added. Only in modes "fpc" and "tp" SizeOf(Integer) = 2 is true (one can argue whether that was a good decision but that's the way it is...)
Show quoted text 5 lines
> // they needed to call it NativeInt, didn't they? They couldn't have
> gone with PtrInt -.-
Definitely not, because that would be FPC compatible.
Yes... although I found a statement some time ago when they introduced "exit with argument". In a comment to that a Delphi developer said "We never broke compatibility with FPC on purpose". It's a pity that I'm not able to find that statement again :(
Regards,
Sven