With reference to the ‘extern “C”’ inclusion. I will add this into the next release (due in a couple of weeks or so). Could you send me your modified files so I get their positioning correct - I think they just need to be placed at the top and bottom of the header files but as I don’t have any C++ projects setup I cannot test this. Please send the files to r _dot_ barry (at) freertos.org.
With reference to the void * used for the queue and task handles. You are right - this is a pain. Unfortunately it has to be done this way because it is the only method I have found that will happily go through all the various compilers that FreeRTOS.org is built with. The method suggested by yourself breaks the build with at least one compiler - from memory I think this is the C18 compiler from Microchip.