可変個引数を取るマクロの定義はできますか?
やりたいのは、

MYMACRO(fmt, ...)

を

printf("%s(%d): " fmt, __FILE__, __LINE__, ...)

みたいに展開することです。

MYMACRO("%s の点数は %d点です", name, pts);

とやれば

printf("%s(%d): " "%s の点数は %d点です", __FILE__, __LINE__, name, pts);

というようにです。
なおこのマクロでは、展開の都合で fmt は文字列定数という制限が付くことになります。