diff --git a/src/encode.c b/src/encode.c
index 726c09cd568ca02480cf0c78693f4f716350e06b..a3d789dc9c96abb5cd8a1b487b112245760cce84 100644
--- a/src/encode.c
+++ b/src/encode.c
@@ -168,7 +168,7 @@ static void encode_value2(struct svalue *val, struct encode_data *data)
     check_stack(1);
     push_svalue(val);
     APPLY_MASTER("nameof", 1);
-    if(sp[-1].type == val[-1].type)
+    if(sp[-1].type == val->type)
       error("Error in master()->nameof(), same type returned.\n");
     code_entry(val->type, 0,data);
     encode_value2(sp-1, data);
diff --git a/src/las.c b/src/las.c
index 6ea1d1e1a6f9c9ae973ca86aa3e13c2e891f9c86..779b1ce746e429209c58cc6d9429e40a20cb9153 100644
--- a/src/las.c
+++ b/src/las.c
@@ -4,7 +4,7 @@
 ||| See the files COPYING and DISCLAIMER for more information.
 \*/
 #include "global.h"
-RCSID("$Id: las.c,v 1.18 1997/02/07 01:06:12 hubbe Exp $");
+RCSID("$Id: las.c,v 1.19 1997/02/11 01:52:26 hubbe Exp $");
 
 #include "language.h"
 #include "interpret.h"
@@ -1047,6 +1047,8 @@ static int depend_p2(node *a,node *b)
   int e;
 
   if(!a || !b || is_const(a)) return 0;
+  aa.err=0;
+  bb.err=0;
   for(e=0;e<MAX_LOCAL;e++) aa.locals[e]=bb.locals[e]=VAR_UNUSED;
   for(e=0;e<MAX_GLOBAL;e++) aa.globals[e]=bb.globals[e]=VAR_UNUSED;