0
我在antlr网站上下载了一个c预处理器语法。但它有一个错误,我不知道如何纠正它。C预处理器的ANTLR语法
macroExpansion
: id=IDENTIFIER WS? LPAREN WS? RPAREN -> ^(EXPAND $id)
| id=IDENTIFIER WS? LPAREN WS? macArgs WS? RPAREN -> ^(EXPAND $id macArgs?)
规则宏扩展就会出问题了下面的代码:
typedef VOID (WINAPI *PFIBER_START_ROUTINE)(LPVOID lpFiberParameter);
由于以下VOID令牌将被视为参数,但实际上VOID仅仅是一个宏不是一个函数马可。
如何更改语法?希望任何人都可以帮助我。谢谢!