8.6.3 Function Pointers
The MPLAB XC compiler fully supports pointers to functions, which allows functions to be called indirectly. These are often used to call one of several function addresses stored in a user-defined C/C++ array, which acts like a lookup table.
Function pointers are always 32 bits in size and hold the address of the function to be called.
Any attempt to call a function with a function pointer containing NULL will result in an ifetch Bus Error.