[fpc-devel] Delphi incompatibly regarding PtrInt and NativeInt

Marco van de Voort marcov at stack.nl
Fri Oct 7 15:45:17 CEST 2011


In our previous episode, Graeme Geldenhuys said:
> I got an email from a Delphi XE2 user busy working on a 64-bit patch for
> tiOPF3. A few things he noted, which I see is different to how FPC done it.
> 
> Under 64-bit FPC we have the following:
> 
>   PtrInt = Int64;
> 
>   NativeInt  = PtrInt;
> 
> But apparently under 64-bit Delphi XE2
> 
>   PtrInt = Integer;        // Integer always being 32-bit, so is the
>                            // pointer then

ptrint in XE (and I assume XE2 too) does not exist in the base system, only
in some directx header. (dxtypes)

So there is no clash of types between Delphi and FPC in the base system,
just embarcadero using some duplicate identifier in some undocumented
peripheral header unit that FPC does not or not yet support.

Somebody/You can petition Embarcadero to rename the ptrint type in the
(minor) directx unit.  If they by some miracle happen to do it, it might
save some minor  confusion. 

In short: much ado about nothing.



More information about the fpc-devel mailing list