[fpc-devel] CThreads.pp
Jonas Maebe
jonas.maebe at elis.ugent.be
Fri Nov 16 19:21:09 CET 2012
On 16 Nov 2012, at 19:15, Ewald wrote:
> Well, the compiler gives this error:
> `Incompatible types: got
> "<address of function(Pointer,QWord,TThreadFunc,Pointer,LongWord,var Pointer):^untyped;Register>" expected
> "<procedure variable type of function(Pointer,QWord,TThreadFunc,Pointer,LongWord,var TThreadID):^TThreadRec;Register>"
>
> Rather weird, no? Have I missed something? Or is this due to the fact that I declare my threadmanager record using a typed constant?
In what syntax mode are you compiling? Keep in mind that turning a procedure/function into a procvar is different in FPC/ObjFPC and TP/Delphi modes (with/out the @).
> No, it's definetly sem_open, the litteral error is:
> `Error: Identifier not found "sem_open"`
>
> My uses list contains the exact same units as in CThreads.pp, in the same order, so I don't see why the symbol isn't found. Also, the entire load of $idfdef's are also copied into my source code.
The sem_open declaration is included in cthreads via rtl/darwin/pthread.inc (I know it's not actually a pthreads function, but that was the most logical place to put it)
Jonas
More information about the fpc-devel
mailing list