次: , 前: Precedence Decl, 上: Declarations


3.6.3 値型の集合

%union宣言は、意味値に対して可能なデータ型すべての集合を指定します。 キーワード%unionに続いて、C言語における共用体の宣言と同様に、 ブレースで囲んだ宣言の並びを書きます。

例を示します。

     %union {
       double val;
       symrec *tptr;
     }

これは、2つの選択可能な型doublesymrec *があると、 宣言しています。 それぞれの型には、名前valtptrが与えられています。 これらの名前は、%tokentype宣言の中で、 終端記号あるいは非終端記号に対する型を選ぶために使えます (see Nonterminal Symbols)。

C言語での共用体宣言とは異なり、閉じブレースの後にセミコロンを 書いてはいけないことに注意してください。