DSPRelated.com
Forums

Problems when declaring vector table with C++ project in CCS

Started by Francois Leroux November 28, 2005
Hi,

I have written some code in which I have an ASM file to declare my vector table for hardware and timer interrupts. In my main(), I used the following lines to point to the vector table:

extern far void vectors();
IRQ_setVecs(vectors); // point to the IRQ vector table

When the main() function is in a C file, that works fine. But right now I need to switch to C++ to merge an algorithm to the project. When I change the file containing the main() function from C to C++, this is what I get this message when building:

"main.cpp", line 325: warning: argument of type "void (*)()" is incompatible with parameter of type "void *" // refering to: IRQ_setVecs(vectors);

and this during linking:

undefined symbol : _vectors() in main.obj
undefined symbol : _GPS_Interrupt in vecs.obj // hardware interrupt
undefined symbol : _FMS_Interrupt in vecs.obj // hardware interrupt
undefined symbol : _Timer_Interrupt in vecs.obj

How is it possible to resolve this problem?

Regards,

Frank