Embedded C - Muitos argumentos para funcionar (ponteiro)

Estou tentando invocar a seguinte macro no meu arquivo .cpp:

#define IAP_ROM_LOCATION                0x1FFF1FF1UL
#define IAP_EXECUTE_CMD(a, b)           ((void (*)())(IAP_ROM_LOCATION))(a, b)

No entanto, quando ligo para a referida função, é assim:

IAP_EXECUTE_CMD(0, 0);

Eu recebo um erro dizendo muitos argumentos especificados? Como é isso? Gostaria muito de receber dica

ambiente de desenvolvimento é o GCC para o Cortex-M

questionAnswers(4)

yourAnswerToTheQuestion