2011-08-16 7 views
2

AFAIK LRパーサーは、すべてテーブルベースのYACC類似ツールによって記述されます。gccはテーブルベースのコンパイラですか?

LLパーザは、再帰的なトップダウンの子孫アルゴリズムによって手動で書き込むことができますが、

gccの場合、まったく異なる解決法を使用していますか?

答えて

1

bisonを使用するgccの場合、これはyaccの書き換えです。今日は再帰的な降下パーサーがあるようです。

+0

Googleはgccのcフロントエンドの再帰的降下パーサーを表示していないようですが、それについての参考資料はありますか? –

0

gccのフロントエンドの実装に関する特定のポリシーはありません。フロントエンドの作成者は、実装している言語に最も適した手法を選択します。 C++のフロントエンドは、手書きの再帰的降下パーサーを使用します。

+0

'C++のフロントエンドは、手書きの再帰的なdescent parser'を使って、関連するソースや記事へのリンクを提供できますか? – asker

+0

私は実際にgccメーリングリストでそれを読んでいますが、[gccのWikipediaページ](http://en.wikipedia.org/wiki/GNU_Compiler_Collection)にも記載されています。 –

関連する問題