aboutsummaryrefslogtreecommitdiff
path: root/src/interp/c-util.boot
diff options
context:
space:
mode:
Diffstat (limited to 'src/interp/c-util.boot')
-rw-r--r--src/interp/c-util.boot15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/interp/c-util.boot b/src/interp/c-util.boot
index 66f13aae..c26887c2 100644
--- a/src/interp/c-util.boot
+++ b/src/interp/c-util.boot
@@ -1121,3 +1121,18 @@ backendCompileSPADSLAM(name,args,body) ==
if $PrettyPrint then PRETTYPRINT u
COMP370 [u]
name
+
+
+backendCompile2 form ==
+ form isnt [name,[type,args,:body],:junk] or junk ^= nil =>
+ MOAN FORMAT(nil,'"******* parenthesis error in (~S (~S ...) ...)",name,type)
+ type = "SLAM" => backendCompileSLAM(name,args,body)
+ LASSQ(name,$clamList) => compClam(name,args,body,$clamList)
+ type = "SPADSLAM" => backendCompileSPADSLAM(name,args,body)
+ type = "ILAM" => backendCompileILAM(name,args,body)
+ body := [name,[type,args,:body]]
+ if $PrettyPrint then PRETTYPRINT body
+ if not $COMPILE then SAY '"No Compilation"
+ else COMP370 [body]
+ name
+