scc

simple c99 compiler
git clone git://git.simple-cc.org/scc
Log | Files | Refs | Submodules | README | LICENSE

0150-define.c (295B)


      1 /*
      2  * f(2) will expand to 2*g, which will expand to 2*f, and in this
      3  * moment f will not be expanded because the macro definition is
      4  * a function alike macro, and in this case there is no arguments.
      5  */
      6 #define f(a) a*g
      7 #define g f
      8 
      9 int
     10 main(void)
     11 {
     12         int f = 0;
     13 
     14         return f(2);
     15 }