[fpc-devel] Safecall on Linux (and other unices?)
joshyfun at gmail.com
Thu Jul 22 21:18:06 CEST 2010
Thursday, July 22, 2010, 7:24:26 PM, you wrote:
>> is expected to produce the same effect (not internal implementation)
>> in any platform.
JM> Well, no. It is expected to produce the same effect as the C
JM> compilers on every platform. These may behave differently amongst
JM> different platforms.
So it is reasonable and "logical" that stdcall in platform A passes
parameters from left to right and in platform B passes them right to
left ? even called in both stdcall ? (stdcall in example).
Maybe move this to fpc-pascal ?
>> procedure (const a: record); safecall;
>> in Unix will produce a copy of "a" and in Windows a reference to "a"
JM> In Windows it currently only passes "a" by reference if the
JM> size of the record is > sizeof(pointer).
I was trying to simplify the idea without the details.
More information about the fpc-devel