Fix variable-arity multiplication and so read-float
[jscl.git] / src / compiler / codegen.lisp
index b32e837..5247e52 100644 (file)
          (case (length (cdr form))
            (1 `(unary- ,(cadr form)))
            (t (reduce (lambda (x y) `(- ,x ,y)) (cdr form)))))
+        (*
+         (case (length (cdr form))
+           (0 1)
+           (t (reduce (lambda (x y) `(* ,x ,y)) (cdr form)))))
         ((and or)
          (reduce (lambda (x y) `(,(car form) ,x ,y)) (cdr form)))
         ((progn comma)