2010-02-24 20 views
10

ANTLR是否有任何現有的C++語法文件?ANTLR是否有工作的C++語法文件?

我正在尋找lex,而不是解析一些C++源代碼文件。

我枕着ANTLR grammar page,它看起來像有一個上市由Sun Microsystems here創建。

但是,它似乎是一個生成的解析器。

任何人都可以指向我的C++ ANTLR詞法分析器或語法文件嗎?

回答

2

C++解析器艱難構建。

我不能用經驗談論使用 ANTLR的C++語法。 Here I discuss通過閱讀我在ANTLR網站上看到的附註所學到的知識;本質上,作者提出了一個不完整的語法。那只是C++ 98。自從我看起來已經有一段時間了;可能有其他人。我們的DMS Software Reengineering Toolkitrobust C++ front end

詞法分析器處理所有爲ANSI,GCC3,MS Visual Studio 2008中,包括大精度浮點數等

[編輯的冗餘代碼:12/2011。現在處理C++ 11和OpenMP指令]

[編輯:3/2015:現在可以在GCC和MS變體中處理C++ 14。 See some parse trees here on SO]

擁有「只」一個解析器實際上並不是非常有用。除了「解析」之外,我們的前端將構建AST,構建精確的符號表(對於C++來說,這非常困難),執行函數本地流分析並允許您執行程序轉換等。 Life After Parsing

+3

我檢查了你的網站,好像你有一些很酷的工具價格合理,但你的網站可以在結構和外觀和感覺上做一些工作。 – 2010-06-07 11:49:42

+0

@安德烈:您可能會做出任何有建設性的言論,我們一直對改進感興趣。請發郵件至「[email protected]」。 – 2010-11-07 19:02:15

+0

你的項目與你說的免費的[Clang](http://clang.llvm.org/)比較起來怎麼樣?我在開玩笑,但仍然對你的答案感興趣! – rubenvb 2015-03-19 12:02:43