diff --git a/src/c/compiler.d b/src/c/compiler.d index 0a1dfc26a..cee4b4476 100644 --- a/src/c/compiler.d +++ b/src/c/compiler.d @@ -1402,10 +1402,18 @@ c_multiple_value_bind(cl_object args, int flags) FEillegal_variable_name(var); if (c_declared_special(var, specials)) { c_register_var(var, FLAG_PUSH, TRUE); - asm_op2(OP_VBINDS, n); + if (n) { + asm_op2(OP_VBINDS, n); + } else { + asm_op(OP_BINDS); + } } else { c_register_var(var, FALSE, TRUE); - asm_op2(OP_VBIND, n); + if (n) { + asm_op2(OP_VBIND, n); + } else { + asm_op(OP_BIND); + } } asm_c(var); }