lib/sod-hosted.c (sod_makev): Use two statements rather than tricky expression.
[sod] / src / codegen-test.lisp
index 81fa3e0..6821059 100644 (file)
@@ -50,7 +50,7 @@
     (emit-insts codegen (list (make-set-inst "u" "v")
                              (make-set-inst "v" r))))
   (emit-inst codegen (make-while-inst "v" (codegen-pop-block codegen)))
-  (emit-inst codegen (make-if-inst "a" (make-set-inst "*a" "aa") nil))
+  (emit-inst codegen (make-if-inst "a" (make-set-inst "*a" "aa")))
   (deliver-expr codegen :return "u")
   (codegen-pop-function codegen "gcd"
                        (c-type (fun int
                             ("a"))
        do (ensure-var codegen name c-type-int init))
   (ensure-var codegen "g" c-type-int
-             (make-call-inst "gcd" (list "u" "v" "&a")))
-  (emit-inst codegen (make-expr-inst
-                     (make-call-inst "printf"
-                                     (list "\"%d*%d == %d (mod %d)\\n\""
-                                           "a" "u" "g" "v"))))
+             (make-call-inst "gcd" "u" "v" "&a"))
+  (deliver-call codegen :void "printf"
+               "\"%d*%d == %d (mod %d)\\n\"" "a" "u" "g" "v")
   (deliver-expr codegen :return 0)
   (codegen-pop-function codegen "main"
                        (c-type (fun int