1 @interface MyClass
2 +(void)meth;
3 @end
4 
5 #define MACRO2(x) x
6 #define MACRO(x) MACRO2(x)
7 
test()8 void test() {
9   MACRO([MyClass meth]);
10 }
11 
12 #define INVOKE(METHOD, CLASS) [CLASS METHOD]
13 
test2()14 void test2() {
15   INVOKE(meth, MyClass);
16 }
17