On 11 May 2003 at 0:33, Frank Heckenbach wrote:
[...]
No, they are not declared "forward" - and they are not declared twice (I have done searches and greps just to verify that). I have since discovered however that it's not just those two (what happened was that the compiler stopped on the second error reported, instead of listing all the affected routines).
Somehow there must be two declarations, whether forward, interface, in different units etc.
Well, as I said, I have done grep searches, and there are no repeated declarations involved. One example is: FUNCTION InterlockedIncrement ( VAR lpAddend : LongInt ) : LongInt; WINAPI ( 'InterlockedIncrement' ); It is not referred to in any other source file.
WINAPI thus defined: {$define Stdcall attribute(stdcall)} {$define WINAPI(X) external name X; Stdcall}
If you can't find it out, please send me some example code ...
It is not possible to reduce this to any simple example that shows the problem. A simple unit with the above declarations compiles okay. But in the winprocs.pas source, it gives the error. There is no reason why it should. If you want to have a go, perhaps you can download the latest winapi release from contrib/chief/ on the GPC server.
Best regards, The Chief -------- Prof. Abimbola A. Olowofoyeku (The African Chief) web: http://www.bigfoot.com/~african_chief/