Task.h : error: 'uxIndexToNotify' undeclared

Hi,
I’m using FreeRTOS v10.4.0
I’m using ulTaskNotifyTakeIndexed (new v10.4.0) function, I’ve set in FreeRTOSConfig.h :

#define configUSE_TASK_NOTIFICATIONS 1
#define configTASK_NOTIFICATION_ARRAY_ENTRIES 4

When I compile I get this error:

/Source/include/task.h:2561:32: error: ‘uxIndexToNotify’ undeclared (first use in this function)

Then I digged in task.h and found this at line 2560:

#define ulTaskNotifyTakeIndexed( uxIndexToWaitOn, xClearCountOnExit, xTicksToWait )
ulTaskGenericNotifyTake( ( uxIndexToNotify ), ( xClearCountOnExit ), ( xTicksToWait ) )

It’s a bug or I’m missing something in C (replace uxIndexToNotify by uxIndexToWaitOn) ?

Olivier

I can confirm this is a bug. I was trying to work out why our test code built and passed with this bug present - which turned out to be because the test code has a loop variable that is also called uxIndexToNotify so the inlined macro used that. We will get a fix forthwith.

1 Like

Thank you @papyDoctor for your finding. We’ll update you here (or you can watch our repo) when we have patched the bug.

1 Like

I have logged a bug for this here https://github.com/FreeRTOS/FreeRTOS-Kernel/issues/175

This has subsequently been fixed in V10.4.1 which is now available at https://github.com/FreeRTOS/FreeRTOS when you check out the latest release.

1 Like