On 22 Jul 2010, at 19:05, José Mejuto wrote:

> procedure (a: pointer); cdecl;
> 
> is expected to produce the same effect (not internal implementation)
> in any platform.

Well, no. It is expected to produce the same effect as the C compilers on every 
platform. These may behave differently amongst different platforms.

> So:
> 
> procedure (const a: record); safecall;
> 
> in Unix will produce a copy of "a" and in Windows a reference to "a"

In Windows it currently only passes "a" by reference if the size of the record 
is > sizeof(pointer).


Jonas_______________________________________________
fpc-devel maillist  -  [email protected]
http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply via email to