Am 09.08.2013 11:15, schrieb Antonio Fortuny:

Le 09/08/2013 10:22, Mattias Gaertner a écrit :
clamav3.pas(324,12) Error: Forward declaration not solved
"OpenLongFileName(const AnsiString,const LongInt):QWord;"

Any comment ?
Maybe there is a unit in your implementation uses section that
redefines THandle.
On the declaration (following Ctrl + mouse left click) leads to QWord: THandle --> PtrUInt (LCLType) --> QWord (systemh.inc) on the implementaion: THnadle --> System.THandle (sysutilf.inc) --> THandle --> LongInt (sysosh.inc)

Well done. In the interface units uses declares: LCLIntf, LCLType, LMessages, FileUtil;
In the implemantaion uses declares   Classes,  sysutils;
OK. It is a Delphi conversion and I didn't pay enough attention to it

But the isn't there some ambiguity between LCL declarations and FPC declarations for what is obviously the same type ?
Might be related to the fact that the LCL often uses the THandle to store a pointer on non-Windows widgetsets. On e.g. Linux x86_64 THandle is defined as a longint because of file operations... There might not be a solution with which anyone can live :/

Regards,
Sven

--
_______________________________________________
Lazarus mailing list
Lazarus@lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

Reply via email to