By separating the macros definition and m4 config files, you can use 
"divert" to purge the output of macros file, the result will be pretty 
much similar with m4 confi file.

That is, you'll get the line numbers right if you use macros generating at most one line, but the column will still be wrong.
In my case, I have really complex macros (mostly generating SQL queries, subsequent PV assignations, checking, etc.), and this does not work :-(

Jérôme Martin | LongPhone
Responsable Architecture Réseau
122, rue la Boetie | 75008 Paris
Tel :  +33 (0)1 56 26 28 44
Fax : +33 (0)1 56 26 28 45
Mail : jmartin@longphone.fr
Web : www.longphone.com