diff runtime/bool.c @ 12:31f8182f3433

Finished fib test and did some small work on the c backend
author Mike Pavone <pavone@retrodev.com>
date Mon, 25 May 2009 23:34:36 -0400
parents
children a24eb366195c d2f9b0a9403d
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/runtime/bool.c	Mon May 25 23:34:36 2009 -0400
@@ -0,0 +1,24 @@
+#include "bool.h"
+#include "func.h"
+#include "builtin.h"
+#include "context.h"
+#include <stddef.h>
+
+t_Boolean * val_yes;
+t_Boolean * val_no;
+#define lval ((t_Boolean *)(cdata->params[0]))->val
+
+MethodNoLocals(If,Boolean,
+	NumParams 1,
+	CallSpace 1)
+	
+	Param(0, TYPE_BOOLEAN)
+	
+	if(lval)
+	{
+		Ret(1, NULL)
+	} else {
+		Ret(1, cdata->params[0]);
+		Ret(0, NULL)
+	}
+EndFunc