Using define inside a #define

Ian Lance Taylor iant@google.com
Thu Jul 28 19:31:00 GMT 2011


Oliver King-Smith <wine@tescina.com> writes:

> I would like to define a macro like
>
> #define MAKE_REG( r, a) #define r  (*(unsigned int *)(a))
>
> Obviously I can put a define on the same line but what I want is to be able to write:
> MAKE_REG( CRTL2, 0x1000020 );
>
> And then use CRTL2 just like I did CTRL1.  Is there any way of achieving my result in ANSI C?

No.

I would write a generator program.  Or if using C++ have the macro
define inline functions which return a reference.

Ian



More information about the Gcc-help mailing list