Add :application-type parameter for save-lisp-and-die on Windows.
[sbcl.git] / src / runtime / vars.c
index 3ee6f55..21147fe 100644 (file)
@@ -9,14 +9,12 @@
  * files for more information.
  */
 
-/*
- * $Header$
- */
-
 #include <stdio.h>
+#include <string.h>
 #include <sys/types.h>
 #include <stdlib.h>
 
+#include "sbcl.h"
 #include "runtime.h"
 #include "vars.h"
 #include "os.h"
@@ -31,7 +29,7 @@ struct var {
     lispobj obj;
     lispobj (*update_fn)(struct var *var);
     char *name;
-    long clock;
+    sword_t clock;
     boolean map_back, permanent;
 
     struct var *nnext; /* Next in name list */
@@ -40,7 +38,7 @@ struct var {
 
 static int hash_name(char *name)
 {
-    unsigned long value = 0;
+    uword_t value = 0;
 
     while (*name != '\0') {
         value = (value << 1) ^ *(unsigned char *)(name++);
@@ -52,7 +50,7 @@ static int hash_name(char *name)
 
 static int hash_obj(lispobj obj)
 {
-    return (unsigned long)obj % OBJ_BUCKETS;
+    return (uword_t)obj % OBJ_BUCKETS;
 }
 
 void flush_vars()
@@ -76,8 +74,8 @@ void flush_vars()
                 free(var);
             }
         }
-    bzero(NameHash, sizeof(NameHash));
-    bzero(ObjHash, sizeof(ObjHash));
+    memset(NameHash, 0, sizeof(NameHash));
+    memset(ObjHash, 0, sizeof(ObjHash));
     tempcntr = 1;
 
     for (var = perm; var != NULL; var = next) {
@@ -157,7 +155,7 @@ struct var *define_var(char *name, lispobj obj, boolean perm)
 }
 
 struct var *define_dynamic_var(char *name, lispobj updatefn(struct var *),
-                              boolean perm)
+                               boolean perm)
 {
     struct var *var = make_var(name, perm);
 
@@ -178,12 +176,12 @@ lispobj var_value(struct var *var)
     return var->obj;
 }
 
-long var_clock(struct var *var)
+sword_t var_clock(struct var *var)
 {
     return var->clock;
 }
 
-void var_setclock(struct var *var, long val)
+void var_setclock(struct var *var, sword_t val)
 {
     var->clock = val;
 }