diff --git a/lisp/vars.c b/lisp/vars.c
index e2c1df04b7fcac2bba7c05b7fe9ef15cd071bcaa..b43396b4aba38d9d5eba6901ac3dc839a1031792 100644
--- a/lisp/vars.c
+++ b/lisp/vars.c
@@ -1,4 +1,4 @@
-/* $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/vars.c,v 1.3 2004/07/08 17:49:04 rtoy Exp $ */
+/* $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/vars.c,v 1.4 2005/08/01 21:53:00 rtoy Exp $ */
 #include <stdio.h>
 #include <sys/types.h>
 #include <stdlib.h>
@@ -103,10 +103,16 @@ lispobj obj;
 
 static struct var *make_var(char *name, boolean perm)
 {
-    struct var *var = (struct var *)malloc(sizeof(struct var));
+    struct var *var;
     char buffer[256];
     int index;
 
+    var = (struct var *)malloc(sizeof(struct var));
+    if (var == NULL) {
+      perror("malloc");
+      exit(1);
+    }
+    
     if (name == NULL) {
         sprintf(buffer, "%d", tempcntr++);
         name = buffer;