変数のインスタンス生成をEC木に含めるように修正

変数宣言の構文定義は木構造において以下の関係となる:

declaration
    : init_declarator_list

init_declarator_list
    : init_declarator

init_declarator
    : declarator

declarator
    : direct_declarator

それぞれのノードが担う処理は以下のようになる:

declaration: この時点で型が決まるので cur_initializer_type に型スペックをセット。

init_declarator_list: 複数の init_declarator を列挙。

init_declarator: インスタンス生成時に初期設定(代入)がある場合に、それを行う。

declarator: この時点で連動するVarの内容、およびcur_initializer_typeの型に従い、
インスタンスを生成する。

direct_declarator: この段階では変数名、および配列添字を、連動するVarにセットする。
これら情報はコンパイル段階で確定する情報としてあつかう。
すなわち配列添字は定数である必要がある。そのため、変数による添字指定による配列宣言は未サポート。
(変数添字による配列宣言をサポートするには、ここの処理を実行時にまで遅らせる必要がある)

変数インスタンス作成を行う関数 __new_var_initializer_{,local,global}() は、
型に関して外部変数 cur_initializer_type によって決定されるように修正。
すなわち、あらかじめ外部変数 cur_initializer_type に型を指定しておき、
その後にこの関数を実行するという手順となる。