Lite-C does not known "functions" in C-Terms, but only "function pointers".
If you write
you have declared two function pointers foo and bar (which you can swap):
void * tmp = foo;
foo = bar;
bar = foo;
foo(); // will call error("bar")
bar(); // will call error("foo")
This allows monkey patching functions for your own needs
Also: Function Prototypes (without definition) will not have the value NULL but a special value that will error "empty function called in ..."