yaccによるコード生成演習

昨夜から着手。まずはテキストのpdfから提示されたひな形をコピペ。書かれていない構造体や変数の宣言を追加してコンパイル通るところまでできた。構文解析のアクションで記号表を作っていったのと同様にコード生成も埋めていく感じ。どの文法でどのようなコードを生成するか、ざっと演習テキストに書かれているので、読みながらアクションに転記していき動作を確認してみるといった繰り返しで大部分は出来そう。最後にコードを出力(表示)する部分を、最初に入れてみて、部分的にコード生成を確認してみるかな。1パスなので、バックパッチの無いコードからやってみよう。
まずはオンライン体験とか思ってかんたんなプログラムをコンパイルしてみた。

var a;
begin
    a:=123
end.

オンライン体験コーナーからコード生成が外されていた。なにか問題があったのかな・・・ ソースをダウンロードしてオフラインでやってくださいとのこと。