I currently have a piece of code that I am working on using function pointers as callbacks. I am having trouble with an error from gcc stating "storage class specified for parameter `type name'" The relevant portion of code is:
error_t addCommand(uint8_t command, void (*callback)(uint16_t,uint8_t)){
This is actually using the nesC language for TinyOS but it seems to be a C issue. In my research on the issue I have found suggestions mostly stemming from one of two issues:
1. Something wrong in a header (missing semicolon)
2. passing a function pointer with a static or volatile value (i.e.
void (*callback)(volatile int, uint8_t)
I have eliminated problem 1 as far as I can tell. Problem 2 is only an issue if uint16_t or uint8_t are static of volatile (I don't have much experience with these types). Any tips/answers on how to solve this issue are greatly appreciated.
Also, if anyone is familiar with nesC the exact code looks more like this:
command error_t CommandEngine.addCommand(uint8_t command, void (*callback)(uint16_t,uint8_t)){
It may be possible that what nesC is adding to the C language causes this error but I don't think this is the case.
No comments:
Post a Comment