From: Mark Wooding Date: Tue, 22 Sep 2015 10:27:11 +0000 (+0100) Subject: src/module-output.lisp, test/chimaera.sod: Add output items for user code. X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~mdw/git/sod/commitdiff_plain/d437292a11e89c11c839145237a1871316593800 src/module-output.lisp, test/chimaera.sod: Add output items for user code. It seems likely that many modules will want to add plain C code to the implementation output, and declarations to the header, so provide standard output items `early_user' and `user' for this purpose. --- diff --git a/src/module-output.lisp b/src/module-output.lisp index 42044e3..8632a02 100644 --- a/src/module-output.lisp +++ b/src/module-output.lisp @@ -113,7 +113,9 @@ (defmethod hook-output progn ((module module) (reason (eql :h)) sequencer) (:guard :start) (:typedefs :start) :typedefs (:typedefs :end) (:includes :start) :includes (:includes :end) + (:early-user :start) :early-user (:early-user :end) (:classes :start) (:classes :end) + (:user :start) :user (:user :end) (:guard :end) :epilogue) @@ -161,7 +163,9 @@ (defmethod hook-output progn ((module module) (reason (eql :c)) sequencer) :constraint (:prologue (:includes :start) :includes (:includes :end) + (:early-user :start) :early-user (:early-user :end) (:classes :start) (:classes :end) + (:user :start) :user (:user :end) :epilogue) (:prologue diff --git a/test/chimaera.sod b/test/chimaera.sod index e9b9077..193d5ec 100644 --- a/test/chimaera.sod +++ b/test/chimaera.sod @@ -46,7 +46,7 @@ class Serpent : Animal { class Chimaera : Lion, Goat, Serpent { } -code c : user [classes end, user, epilogue] { +code c : user { /*----- Main driver code --------------------------------------------------*/ static void tickle_animal(Animal *a)