extern "C" { extern void __assert_fail (__const char *__assertion, __const char *__file, unsigned int __line, __const char *__function); } template class Signal { public: template void connect(void (V::*method)()) { __assert_fail ("o", "WSignal", 899, __PRETTY_FUNCTION__); } }; class WAbstractArea { Signal signal; void setResource( ); void resourceChanged(); }; void WAbstractArea::setResource( ) { signal.connect(&WAbstractArea::resourceChanged); }