VALUES_N
スタックポインタの指すデータを取り出しvals[i]レジスタ,VAL0ポインタにセットする。
VALUES_Nは、RECEIVE_ALLの反対の動作を行う。通常、RECEIVE_ALLと対で操作を行う。
値は最大でSCM_VM_MAX_VALUES - 1 個の多値をサポートし、それ以上ではエラーとなる。(現時点では19個)
VALUES はコンパイル時に多値の個数が分かっている場合に使われる。(values 1 2 3 4 5) の場合は5個として処理。VALUES_N は個数が分からない場合に使われる。 例えば、a というリストがあって (apply values a) とした場合など。
現在では、使用されていないと思われる。VALUES_N が使われていないのは stdlib.c にある C で書かれた values 手続きがあるからだと思われる。
コメントはありません。 コメント/Reading Gauche/vm/insn/VALUES_N?