1

andを使用した単純なパーサーの実装がGNU bisonありflexます。正常に動作し、コマンドラインから複数のファイルを解析できます

./program file1.m file2.m 

そして、ファイルを逆の順序でロードします (それはあまり重要ではありません)。

ただし、問題は、取得する行番号 ( に構文エラーがある場合file1.mなど) が、 の linember にfile1の行数を加えたものになることfile2です。

そのため、バイソンは各ファイルの後に行番号をリセットしていません。どうすればそれを達成できますか?私は少しグーグルして見つけましyy_flush_bufferたが、それをどのように使用するか、またはそれが実際に必要なものであるかどうかはよくわかりません.

誰もこれを行う方法を知っていますか? 前もって感謝します。

4

1 に答える 1