0
我正在編寫玩具OO語言的編譯器。我使用Flex和Bison將它寫入C語言。Flex /野牛多通類解析
考慮下面的語法:
class MyClass {
int m_n;
void MyFunc(int b) {
m_n = 5;
m_p = b;
}
int m_p;
}
我當前的代碼會抱怨說,在MYFUNC,M_P尚未宣佈(有很好的理由)。於是,我來到了,我需要一個多通道分析技術得出結論 - 沿着線的東西:
第1次 - 過程變量聲明
第2次 - 過程函數定義
首先 - 是這是解決問題的最好方法嗎?我應該考慮其他方法嗎?其次 - 如果這是一個有利的解決方案,我會繼續使用可重入的詞法分析器/解析器來實現它嗎?
感謝
你可以看看這個項目:http://svn.c0demonkey.com/listing.php?repname=njc-oo&path=%2Ftrunk%2F#path_trunk_(通過semant.c完成 - 非常複雜代碼儘管:) – halfdan 2011-04-13 22:05:40