The nut of this question: is extern "C" void (*f)(); different from just void (*f)(); ?It appears to me as if 7.5.8 says "yes" to this question -- they are different.
The details: The OS has timer facilities based in C and a C struct. The C struct has a pointer to function in it (a time pop routine). I've always assumed that this pointer to function must point to a function with C language linkage. This sure becomes a pain though.
Thanks, Perry