//extern "C" void foo (void*);
extern void foo (void*);
template <typename T, void(*cb)(T*)> class Test {};
typedef Test<void, foo> TestVoid;
SunStudio C++ compiler will fail if I try to use the 1st prototype, and reports:line 5: Error: Template parameter cb requires an expression of type void(*)(void*).
1 Error(s) detected.
No idea why this happens...

