I have a constant array of function pointers in code space and I an trying to declare a pointer variable to point to this array and then assign the array address to the pointer variable. The C51 compiler gives an error 213 for the assignment. Is there anything obviously wrong with what I am trying to do.
extern const void (code * code ArrayOfFunc[])(); void (code * code * xdata ptrArrayOfFunc[])(); main() { ptrArrayOfFunc = ArrayOfFunc; }
Problem solved. A good nights sleep to recharge the grey matter works wonders.
typedef void (code * code FUNCPTR)(); extern const FUNCPTR ArrayOfFunc[]; FUNCPTR * xdata ptrArrayOfFunc; main() { ptrArrayOfFunc = ArrayOfFunc; (*ptrArrayOfFunc[0])(); }