SlickEdit Community

General => General Programming => Topic started by: achen on August 15, 2009, 12:57:07 AM

Title: Can't parse the function symbol name correctly
Post by: achen on August 15, 2009, 12:57:07 AM
I am using SE v13.0.1.0 to work with Microchip's 32-bit processor. The GCC based compiler tool suite provides some #define's to simplify the definition of an interrupt service routine, for example,
Code: [Select]
#define __ISR(v, ipl) __attribute__((vector(v), interrupt(ipl), nomips16))

/* the real function name is CoreTimerIntHandler, __ISR() is just an easy way to specify gcc __attribute__ */
void __ISR(_CORE_TIMER_VECTOR, ipl3) CoreTimerIntHandler(void)
{
   ...
}
This seems to screw up the SE's ability to parse the function name because it thinks the function name is __ISR() and ignore the rest, as shown in the Defs window. Is there anything that can be done in SE to ignore a symbol such as __ISR() in this case?
Title: Re: Can't parse the function symbol name correctly
Post by: Graeme on August 15, 2009, 05:04:53 AM
Add __ISR(a,b) to the C++ preprocessor #define list. Tools -> options -> languages -> C/C++ -> preprocessing  - then click the help button for more information.

Graeme
Title: Re: Can't parse the function symbol name correctly
Post by: achen on August 18, 2009, 11:06:34 PM
Excellent! It works great. Thanks.

Alan