Can you do something like this with a macro in C?
#define SUPERMACRO(X,Y) #define X Y
then
SUPERMACRO(A,B) expands to #define A B
I have a feeling not because the preprocessor only does one pass.
EDIT
Official gcc only. No third-party tools please.