> Oh, but while we're at it: fpc1.9.6 still gives me the Hint, that this
> PtrUInt/Address-Conversion isn't portable:
>
> |         WriteLn ('Runtime error ', ExitCode,
> |                  ' at 16#',
> |                  SysUtils.IntToHex (PtrUint(ErrorAddr),
> |                                     2 * SizeOf (ErrorAddr)),
> |                  '#');
>
> Is that fixed in the current version? Or am I thinking wrong when I
> think, this should - by definition - be portable? ;-)

It is only a hint. And Typecasting pointer <-> integer will always trigger
such a hint. It is usefull for ppl compiling on 32bit that they need to
look at thing carefully if it is what they intended. Typecasting a pointer
to longint on a 64bit target will give a warning instead.

But this hint/warning is independent of the first question about
integer/cardinal sizes. Please stay to the topic of the thread.




_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply via email to