this works but generates N dummy fns (the compiler won't merge them) #[interrupt] fn DMA_CHANNEL1 { on_irq() } #[interrupt] fn DMA_CHANNEL2 { on_irq() } #[interrupt] fn DMA_CHANNEL3 { on_irq() } ... fn on_irq() { ... stuff }