Skip to content

inconsistent NumStmt: changed from 1 to 2の回避策

goyacc を使ったコードでカバレッジを取得するとき、以下のエラーが発生する場合がある。

error parsing coverage: inconsistent NumStmt: changed from 1 to 2

具体的な理由までは追ってないけど、goyacc が生成したコードで #line ディレクティブを使っていることが理由らしい。なので -l オプションを与えて回避するといい。

//go:generate goyacc -l gram.y