是否可以使用ANTLR解析C头文件?

时间:2011-02-22 12:28:05

标签: c parsing antlr

我是编译器业务的新手,并使用ANTLR语法(开源)来解析具有许多外部头文件的C源文件,即包含文件和库文件等。

这些头文件的定义语法是什么?有没有办法将这些包含文件解析为简单的源文件?

是否可以将所有这些源+包含文件集成到一个包中,并使用ANTLR或其他C语法分析器(JavaCC)对其进行解析。

等待你的建议。

1 个答案:

答案 0 :(得分:1)

为C实现预处理器和解析器的完整链并不容易。但是您可以重用现有的预处理器(例如gcc -E)和现有的解析器(clang -Xclang -ast-print-xml或gcc-xml都是不错的选择)然后解析一个简单的XML输出。