Compiler warning in task.c

I get the following error by trying to follow the FreeRTOS video tutorials. As a beginner I do not know, which Header File might be missing or which other configuration setting might be wrong or incomplete.

…/ThirdParty/FreeRTOS/tasks.c:1678:6: warning: implicit declaration of function ‘prvReaddTaskToReadyList’; did you mean ‘prvAddTaskToReadyList’? [-Wimplicit-function-declaration]
1678 | prvReaddTaskToReadyList( pxTCB );
| ^~~~~~~~~~~~~~~~~~~~~~~
| prvAddTaskToReadyList

I don’t know where you got these broken FreeRTOS (version ?) sources from or if you accidentally changed the file, but the official sources are correct.
And the compiler is most likely right with it’s assumption about using prvAddTaskToReadyList.

Thank you. It is most likely that I changed something accidently while following the online training course. Getting back to the original file will cause all changes to be reset, which I wanted to avoid.

Hello Andreas,

If you do not want to get back to the original file, then you can just do a diff between the official source for task.c and your source. That way you can get to know what has been (accidentally) changed.

Hi, did you ever resolve this? I am following a Udemy course for stm32f407, and I get the same error.

Assuming you are getting warning about prvReaddTaskToReadyList, I do not see this function in tasks.c - FreeRTOS-Kernel/tasks.c at main · FreeRTOS/FreeRTOS-Kernel · GitHub. Can you try to use an official FreeRTOS version?

Hello,
I have the same problem. I just compared the task.c file which I copied into the project folder with the downloaded one and they are different. Since both files were the same, the copied one must be automatically changed during the compilation or by another build process. It is unlikely that this change was made accidentally because there are multiple occurrences of ‘prvAddTaskToReadyList’ in the tasks.c file and all are replaced with ‘prvReaddTaskToReadyList’. I know this could be due to a refactoring procedure like rename, but I did not use this on the current project. This error popped up after I added SEGGER to the project. Before it has compliled fine. I renamed the function to the original name and now it works again, but it is strange…

I figured out the problem. The problem is the SEGGER patch file provided for the FreeRTOS Udemy online course. When applying the patch the FreeRTOS source files are modified to work with SEGGER. Due to a wrong section in the patch file the functions are renamed to a non existent function name.

Thank you for sharing your solution!