2014-01-31 65 views
1

我有興趣在C上添加一些語言功能,我試圖找到一個很好的開源解析器,我可以用這個語法修改語法,但我沒有任何幸運然而。有誰知道一個好的「獨立」分析器,可以用這種方式修改嗎?開源ANSI C99解析器?

+0

這可能有助於:https://stackoverflow.com/questions/3471633/building-a-parser-with-clang –

+0

我絕對想到了鏗鏘,但我關閉了它的統一解析器,包括C++,目標-c等等。如果我成功並希望發佈我的新語言,那麼需要額外的代碼... –

+0

GCC有什麼問題?你會用*解析器來做什麼? –

回答

2

如果你用Python編寫它,你可以使用pycparser。它是一個完全符合C99語法分析器,使用3子句BSD許可證。

+0

我碰到過!這聽起來很棒,但我不確定我可以假設我一直都有python可用=( –

+0

@gct:你是什麼意思?CPython非常便攜,它們甚至有Android版本!另外,你可以嵌入它一個C程序 – refi64

+0

我仔細看了一下,看起來他們只是用Lexx/Yacc來生成他們的python代碼,所以它可能不是最容易修改的。 –