Charalampos Alexopoulos <[EMAIL PROTECTED]> wrote: > class Timer0: > { > public: > static const vector overflow = _VECTOR(9); > ... > ... > };
This simply cannot work using the current interrupt vector handling of avr-libc. The main reason is that the __vector_N name /must/ be a global symbol, and it /must not/ be a C++ mangled name, so you cannot hide it somewhere within your class. If the vector is not found by the linker by this global name, the linker will simply fill in the default stubs from gcrt0.o which are weak global symbols intended to fill into any vector slot not defined by a user application. You might perhaps do some dirty tricks using global name aliases, but as others already pointed out, I also doubt this will have any practical utility beyond puristic academic value. By the time an interrupt is triggered by hardware, there is simply no "object" the run-time environment could pick up to "bind" the vector onto. -- cheers, J"org .-.-. --... ...-- -.. . DL8DTL http://www.sax.de/~joerg/ NIC: JW11-RIPE Never trust an operating system you don't have sources for. ;-) _______________________________________________ AVR-GCC-list mailing list AVR-GCC-list@nongnu.org http://lists.nongnu.org/mailman/listinfo/avr-gcc-list