nobody wrote on Monday, February 14, 2005:
I’m preparing a port to the C167 microcontroller (Infineon) to be published here. Now I encountered the following problem with the Keil IDE.
As I use the EC++ - Compiler supplied in the actual version of Keil’s IDE there’s a problem in queue.c. The line
typedef xQUEUE * xQueueHandle;
makes a different definition as given in queue.h
typedef void * xQueueHandle;
This is used to hide the xQUEUE-structure from the user. So far so good. The EC++ - Compiler now tries to find a overloaded function with the queue.h - definition. In queue.c there’s only xQUEUE definition. A linker-error (unresolved symbol) is the result.
My suggestion : Let’s change the definition of xQueueHandle in queue.c to void * too. When one does this, almost any occurence of the variable “pxQueue” in queue.c has to be changed to “((xQUEUE *)pxQueue)”.
I did this and it solved all problems with queue.c and queue.h. Please discuss this suggestion. I offer you my version of the v2.6.0 queue.c with this changes (~50 items to change !).
Thanks, Daniel Braun
eMail : Guru79@web.de