しばらく前にVHDLユーザから、POP11をVHDLに変換するとエラーがあるという報告を受けていた。VHDL版だけの問題なので、時間があるときに対応しようと延び延びになって、ようやく対応できた。
VHDLのコード生成時に、ビット方向のORを取る演算子にビット長のチェックをしていなかったので、1ビットの信号のビット方向のORを取る操作をすると、vectorでない信号なのに、ビットインデクス"(0)"をつけてしまいVHDLのエラーとなるものだ。
元々1ビットの信号にビット方向ORを使う必要はないので、自分の確認では完全にもれていたものだ。
もう一つ、同じユーザから、POP11で信号の代入時に左辺と右辺のミスマッチがあるという指摘があった。これは、POP11の記述ミスだが、sfl2vlでワーニングを出し忘れていたので、ついでに追加。
これらは、20071030版で対策した。
VHDLのコード生成時に、ビット方向のORを取る演算子にビット長のチェックをしていなかったので、1ビットの信号のビット方向のORを取る操作をすると、vectorでない信号なのに、ビットインデクス"(0)"をつけてしまいVHDLのエラーとなるものだ。
元々1ビットの信号にビット方向ORを使う必要はないので、自分の確認では完全にもれていたものだ。
もう一つ、同じユーザから、POP11で信号の代入時に左辺と右辺のミスマッチがあるという指摘があった。これは、POP11の記述ミスだが、sfl2vlでワーニングを出し忘れていたので、ついでに追加。
これらは、20071030版で対策した。