FreeRTOS for LPC213X_IAR issue with 'queue.c'

nobody wrote on Wednesday, August 09, 2006:

Having ‘xQueueHandle’ declared differently in queue.c and queue.h gives me a W6 warning (type conflict) at link time for:  xQueueCreate, xQueueReceive, xQueueReceiveFromISR, xQueueSend, and xQueueSendFromISR functions.

The xQueueHandle is defined as a ‘void *’ !!?? (in queue.h) Why isn’t the xQUEUE structure and the xQueueHandle typedef, just moved in queue.h, so we simply have to include queue.h and use it, as it is defined ?


Yves Lavoie

rtel wrote on Wednesday, August 09, 2006:

Data hiding.  The implementation of the queue is completely hidden from code outside of the queue.c source file.  This means the user cannot directly alter the structures or have any other dependency on the queue implementation.  In theory you could completely change the queue implementation and be guaranteed not to break any other code.

You can turn the warning off.