[fpc-pascal]Apple Mac pointer problem

Marcel Martin mm10 at ellipsa.net
Thu Sep 23 22:18:06 CEST 2004


Stephen Downs a écrit :
> 
> I am porting a Mac CodeWarrior project to FreePascal and have hit a
> compile problem with a pointer. In my original code I have a structure
> defined along the lines of
> 
> testData = record
>    testIndex :  array [0..12] of integer;
> end;
> 
> testDataPointer = ^testData;
> testDataHandle = ^testDataPointer;
> 
> Within my main code I open a file and try to read it into my structure
> 
> testDataHdl := testDataHandle(NewHandleClear(sizeof(testData)));
> OSError := FSRead(fileRefNum, numberOfBytes, testDataHdl^)
> 
> The FSRead line fails with error: 62: Incompatible type for arg no. 3:
> Got "testDataPointer", expected "Ptr" - the third parameter for FSRead is a
> pointer. I presume this is because FreePascal uses typed pointers. I
> tried replacing testDataHdl^ by Ptr(testDataHdl)^ but that gives a
> similar error - Got "ShortInt", expected "Ptr"
> 
> Does anyone know how I can get around this?

This is very likely a stupid suggestion but have you tried this

  Ptr(testDataHdl^)

-- 
mm
http://www.ellipsa.net/
mm at ellipsa.no.sp.am.net  ( suppress no.sp.am. )




More information about the fpc-pascal mailing list