On 06 May 2008, at 17:37, Kristofer Skaug wrote:
1) Have been reading the FAQs and other things but cannot seem to
find the
referenced sections in the FPC manuals that contain Delphi vs FPC
language
(in)compatability notes. The RTL manual doesn't appear to load from
the FPC
website.
There's a list available at http://wiki.freepascal.org/Code_Conversion_Guide
It should indeed probably be referenced from the FAQ or so. A number
of the points raised at http://www.freepascal.org/port.var are also
valid when coming from Delphi rather than from Turbo Pascal.
2) How do I convert a Delphi function like this:
function PtrAt(p:pointer; const Offset:LongWord):pointer;
begin
Result := Ptr(LongWord(p)+Offset);
end;
FPC barked at my use of Ptr(), saying:
"Error: Wrong number of parameters specified for call to "ptr""
And indeed in systemh.inc, "ptr" is defined as:
Function ptr(sel,off:Longint):farpointer; (...)
which appears to be some kind of TP compatability function.
But the modern Delphi Ptr() function takes only a 32-bit numeric
address as
argument. Is there an equivalent for this in FPC?
Simply use a Pointer-typecast (that will also work in Delphi). In
Delphi Ptr() is probably internally also simply converted ta Pointer-
typecast.
I can't help with the other issues, but others probably can.
Jonas
_______________________________________________
fpc-pascal maillist - fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal