Das geht wie in C auch

avr-gcc foo.cpp -mmcu=xxx ....
avr-gcc foo.meine-sonderlocken-endung -x c++ -mmcu=xxx ...

Code:
#include <avr/io.h>
#include <avr/signal.h>

#if defined (__cplusplus)
extern "C" {
#endif /* __cplusplus */    

SIGNAL (SIG_NAME)
{
   /* machwas */
}

INTERRUPT (SIG_NAME)
{
   /* mach was */
}

#if defined (__cplusplus)
}
#endif /* __cplusplus */
Im Zweifelsfalls hilft auch der Beitag/Quellcode-Beispiele zu avr-gcc im Wissensbereich. Dahin musst du dich aber durchclicken, weil die Links hier zerbröselt werden.