编译报错expected identifier before ‘(’ token

可能原因:宏定义中命名冲突

宏里面是这么写的:

s.name=name

其中name是宏参数

宏调用处,传入name的是(...)

替换之后变成

s.(...)=(...)

所以编译报错说括号前缺少标识符。