diff --git a/src/backend/catalog/index.c b/src/backend/catalog/index.c
index 18375763a5128a4d72cd137bb70ec2476ff04d68..eefa44c72970ae5512eed1c6026332ad470718ee 100644
--- a/src/backend/catalog/index.c
+++ b/src/backend/catalog/index.c
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *    $Header: /cvsroot/pgsql/src/backend/catalog/index.c,v 1.7 1996/11/06 07:31:21 scrappy Exp $
+ *    $Header: /cvsroot/pgsql/src/backend/catalog/index.c,v 1.8 1996/11/08 00:44:30 scrappy Exp $
  *
  *
  * INTERFACE ROUTINES
@@ -1514,6 +1514,12 @@ DefaultBuild(Relation heapRelation,
 	econtext = makeNode(ExprContext);
 	FillDummyExprContext(econtext, slot, heapDescriptor, buffer);
     }
+	else
+	{
+		econtext = NULL;
+		tupleTable = 0;
+		slot = NULL;
+	}
 #endif /* OMIT_PARTIAL_INDEX */        
 
     /* ----------------
diff --git a/src/backend/catalog/pg_aggregate.c b/src/backend/catalog/pg_aggregate.c
index fa1298dfbfe1a60aec055e526015117503ac079e..3e03110a72d63f1ffc6cffb0134dfb9c51395a6d 100644
--- a/src/backend/catalog/pg_aggregate.c
+++ b/src/backend/catalog/pg_aggregate.c
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *    $Header: /cvsroot/pgsql/src/backend/catalog/pg_aggregate.c,v 1.3 1996/11/06 07:31:23 scrappy Exp $
+ *    $Header: /cvsroot/pgsql/src/backend/catalog/pg_aggregate.c,v 1.4 1996/11/08 00:44:32 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -286,7 +286,7 @@ AggNameGetInitVal(char *aggName, Oid basetype, int xfuncno, bool *isNull)
 	transtype = ((Form_pg_aggregate) GETSTRUCT(tup))->aggtranstype1;
 	initValAttno = Anum_pg_aggregate_agginitval1;
     }
-    else if (xfuncno == 2) {
+    else /* can only be 1 or 2 */ {
 	transtype = ((Form_pg_aggregate) GETSTRUCT(tup))->aggtranstype2;
 	initValAttno = Anum_pg_aggregate_agginitval2;
     }
diff --git a/src/backend/catalog/pg_operator.c b/src/backend/catalog/pg_operator.c
index 74db99fa0e583d3b6f6f30da1d4c47d7cef104d3..c4a202a2a0324c6e052cffc8e50d78bbda99cd84 100644
--- a/src/backend/catalog/pg_operator.c
+++ b/src/backend/catalog/pg_operator.c
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *    $Header: /cvsroot/pgsql/src/backend/catalog/pg_operator.c,v 1.5 1996/11/06 07:31:24 scrappy Exp $
+ *    $Header: /cvsroot/pgsql/src/backend/catalog/pg_operator.c,v 1.6 1996/11/08 00:44:33 scrappy Exp $
  *
  * NOTES
  *    these routines moved here from commands/define.c and somewhat cleaned up.
@@ -452,7 +452,7 @@ OperatorDef(char *operatorName,
     char	nulls[ Natts_pg_operator ];
     char	replaces[ Natts_pg_operator ];
     Datum       values[ Natts_pg_operator ];
-    Oid 	other_oid;
+    Oid 	other_oid = 0;
     Oid		operatorObjectId;
     Oid		leftTypeId = InvalidOid;
     Oid		rightTypeId = InvalidOid;
@@ -958,21 +958,25 @@ OperatorCreate(char *operatorName,
 	commObjectId = OperatorGet(commutatorName,  /* commute type order */
 				   rightTypeName,
 				   leftTypeName);
+    else commObjectId = 0;
     
     if (negatorName)
 	negObjectId  = OperatorGet(negatorName,
 				   leftTypeName,
 				   rightTypeName);
+    else negObjectId = 0;
     
     if (leftSortName)
 	leftSortObjectId = OperatorGet(leftSortName,
 				       leftTypeName,
 				       rightTypeName);
+    else leftSortObjectId = 0;
     
     if (rightSortName)
 	rightSortObjectId = OperatorGet(rightSortName,
 					rightTypeName,
 					leftTypeName);
+    else rightSortObjectId = 0;
     
     /* ----------------
      *  Use OperatorDef() to define the specified operator and
diff --git a/src/backend/catalog/pg_proc.c b/src/backend/catalog/pg_proc.c
index 2e54d42ae351a55639ea9c2d8501a18e1cf71bba..947bdc6051b9ab681edb899e72bad587977e08de 100644
--- a/src/backend/catalog/pg_proc.c
+++ b/src/backend/catalog/pg_proc.c
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *    $Header: /cvsroot/pgsql/src/backend/catalog/pg_proc.c,v 1.4 1996/11/06 07:31:25 scrappy Exp $
+ *    $Header: /cvsroot/pgsql/src/backend/catalog/pg_proc.c,v 1.5 1996/11/08 00:44:34 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -92,7 +92,6 @@ ProcedureCreate(char *procedureName,
 	    if (strcmp(languageName, "sql") == 0) {
 		elog(WARN, "ProcedureDefine: sql functions cannot take type \"opaque\"");
 	    }
-	    else
 		toid = 0;
 	} else {
 	    toid = TypeGet(strVal(t), &defined);
@@ -151,7 +150,6 @@ ProcedureCreate(char *procedureName,
 	if (strcmp(languageName, "sql") == 0) {
 	    elog(WARN, "ProcedureCreate: sql functions cannot return type \"opaque\"");
 	}
-	else
 	    typeObjectId = 0;
     }
     
diff --git a/src/backend/commands/copy.c b/src/backend/commands/copy.c
index 0f593d6ec5467d5ba7e23c422ea2149a940290ca..535386b36293fa3512ca843b8d99bd876b7c24e9 100644
--- a/src/backend/commands/copy.c
+++ b/src/backend/commands/copy.c
@@ -6,7 +6,7 @@
  *
  *
  * IDENTIFICATION
- *    $Header: /cvsroot/pgsql/src/backend/commands/copy.c,v 1.14 1996/11/06 08:21:31 scrappy Exp $
+ *    $Header: /cvsroot/pgsql/src/backend/commands/copy.c,v 1.15 1996/11/08 00:45:22 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -130,9 +130,9 @@ DoCopy(char *relname, bool binary, bool oids, bool from, bool pipe,
                 } else fp = stdout;
             } else {
                 mode_t oumask;  /* Pre-existing umask value */
-                (void) umask((mode_t) 0);
+                oumask =  umask((mode_t) 0);
                 fp = fopen(filename, "w");
-                (void) umask(oumask);
+                umask(oumask);
                 if (fp == NULL) 
                     elog(WARN, "COPY command, running in backend with "
                          "effective uid %d, could not open file '%s' for ",
diff --git a/src/backend/executor/execAmi.c b/src/backend/executor/execAmi.c
index 0fae4f2d05ab659e42920283e6d62c69a9a7273c..dedb9d3b054768466c5f5fa895ab25a7db089ed4 100644
--- a/src/backend/executor/execAmi.c
+++ b/src/backend/executor/execAmi.c
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *    $Header: /cvsroot/pgsql/src/backend/executor/execAmi.c,v 1.3 1996/11/06 06:47:26 scrappy Exp $
+ *    $Header: /cvsroot/pgsql/src/backend/executor/execAmi.c,v 1.4 1996/11/08 00:45:54 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -37,7 +37,11 @@
 #include "executor/nodeIndexscan.h"
 #include "executor/nodeSort.h"
 #include "executor/nodeTee.h"
+#include "executor/execdebug.h"
 #include "optimizer/internal.h" /* for _TEMP_RELATION_ID_ */
+#include "access/genam.h"
+#include "access/heapam.h"
+#include "catalog/heap.h"
 
 /* ----------------------------------------------------------------
  *   	ExecOpenScanR
@@ -401,7 +405,7 @@ ExecCreatR(TupleDesc tupType,
 {
     Relation 	relDesc;
 
-    EU4_printf("ExecCreatR: %s type=%d oid=%d\n",
+    EU3_printf("ExecCreatR: %s type=%d oid=%d\n",
 	       "entering: ", tupType, relationOid);
     CXT1_printf("ExecCreatR: context is %d\n", CurrentMemoryContext);
     
diff --git a/src/backend/executor/nodeIndexscan.c b/src/backend/executor/nodeIndexscan.c
index db918eb3cd3fe62a186361dfcb9027f11e86756d..12b5a9c6c7587d088f8d2279d592326df3012c90 100644
--- a/src/backend/executor/nodeIndexscan.c
+++ b/src/backend/executor/nodeIndexscan.c
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *    $Header: /cvsroot/pgsql/src/backend/executor/nodeIndexscan.c,v 1.4 1996/11/06 06:47:42 scrappy Exp $
+ *    $Header: /cvsroot/pgsql/src/backend/executor/nodeIndexscan.c,v 1.5 1996/11/08 00:45:57 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -593,14 +593,12 @@ ExecInitIndexScan(IndexScan *node, EState *estate, Plan *parent)
 	n_keys = 	length(qual);
 	scan_keys = (n_keys <= 0) ? NULL :
 	    (ScanKey)palloc(n_keys * sizeof(ScanKeyData));
+	run_keys = (n_keys <= 0) ? NULL :
+		(int *)palloc(n_keys * sizeof(int));
 	
 	CXT1_printf("ExecInitIndexScan: context is %d\n",
 		    CurrentMemoryContext);
 	
-	if (n_keys > 0) {
-	    run_keys = (int *)	palloc(n_keys * sizeof(int));
-	}
-	
 	/* ----------------
 	 *  for each opclause in the given qual,
 	 *  convert each qual's opclause into a single scan key
@@ -613,9 +611,9 @@ ExecInitIndexScan(IndexScan *node, EState *estate, Plan *parent)
 	    Node	*rightop; 	/* expr on rhs ... */
 	    
 	    int		scanvar; 	/* which var identifies varattno */
-	    AttrNumber	varattno; 	/* att number used in scan */
+	    AttrNumber	varattno = 0; 	/* att number used in scan */
 	    Oid		opid;		/* operator id used in scan */
-	    Datum	scanvalue; 	/* value used in scan (if const) */
+	    Datum	scanvalue = 0; 	/* value used in scan (if const) */
 	    
 	    /* ----------------
 	     *	extract clause information from the qualification
diff --git a/src/backend/executor/nodeMaterial.c b/src/backend/executor/nodeMaterial.c
index d836ae98e80c9e597d8df39c8d132893bfc72277..282113fad5fddee4d874a394c6bb79b3dd9ad559 100644
--- a/src/backend/executor/nodeMaterial.c
+++ b/src/backend/executor/nodeMaterial.c
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *    $Header: /cvsroot/pgsql/src/backend/executor/nodeMaterial.c,v 1.4 1996/11/06 06:47:44 scrappy Exp $
+ *    $Header: /cvsroot/pgsql/src/backend/executor/nodeMaterial.c,v 1.5 1996/11/08 00:45:58 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -190,7 +190,7 @@ ExecInitMaterial(Material *node, EState *estate, Plan *parent)
     Plan		*outerPlan;
     TupleDesc		tupType;
     Relation		tempDesc;
-    int			len;
+    /* int			len; */
     
     /* ----------------
      *  assign the node's execution state
diff --git a/src/backend/executor/nodeMergejoin.c b/src/backend/executor/nodeMergejoin.c
index 94bf950c579fb6c2b3854270d4ad4385052615d5..5124d62ef60f339972491a9eada4fd86a6f89ade 100644
--- a/src/backend/executor/nodeMergejoin.c
+++ b/src/backend/executor/nodeMergejoin.c
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *    $Header: /cvsroot/pgsql/src/backend/executor/nodeMergejoin.c,v 1.3 1996/11/06 06:47:45 scrappy Exp $
+ *    $Header: /cvsroot/pgsql/src/backend/executor/nodeMergejoin.c,v 1.4 1996/11/08 00:45:59 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -80,6 +80,7 @@
 #include "executor/executor.h"
 #include "executor/execdefs.h"
 #include "executor/nodeMergejoin.h"
+#include "executor/execdebug.h"
 #include "utils/lsyscache.h"
 
 /* ----------------------------------------------------------------
diff --git a/src/backend/executor/nodeTee.c b/src/backend/executor/nodeTee.c
index ee8be28ca539ae1afe078c8df6c1a0940c44ccc4..2ade8729f9074dfde7717c585ac768c42dfc4a2c 100644
--- a/src/backend/executor/nodeTee.c
+++ b/src/backend/executor/nodeTee.c
@@ -15,7 +15,7 @@
  *	ExecEndTee
  *
  * IDENTIFICATION
- *    $Header: /cvsroot/pgsql/src/backend/executor/Attic/nodeTee.c,v 1.3 1996/11/06 06:47:46 scrappy Exp $
+ *    $Header: /cvsroot/pgsql/src/backend/executor/Attic/nodeTee.c,v 1.4 1996/11/08 00:46:01 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -32,7 +32,9 @@
 #include "executor/executor.h"
 #include "executor/nodeTee.h"
 #include "catalog/catalog.h"
+#include "catalog/heap.h"
 #include "tcop/pquery.h"
+#include "access/heapam.h"
 
 /* ------------------------------------------------------------------
  *	ExecInitTee
@@ -484,6 +486,8 @@ ExecEndTee(Tee* node, Plan* parent)
 	    orig = CurrentMemoryContext;
 	    MemoryContextSwitchTo(teeState->tee_mcxt);
 	  }
+	  else
+		orig = 0;
 
 	  if (teeState->tee_leftScanDesc)
 	    {
diff --git a/src/include/executor/execdebug.h b/src/include/executor/execdebug.h
index 29638d658a98ddc2adc661ced477f4e49af9cb60..3a47ef01aa13b9b160f84f6f3e412a9956f98fe3 100644
--- a/src/include/executor/execdebug.h
+++ b/src/include/executor/execdebug.h
@@ -6,13 +6,15 @@
  *
  * Copyright (c) 1994, Regents of the University of California
  *
- * $Id: execdebug.h,v 1.1 1996/08/28 07:22:06 scrappy Exp $
+ * $Id: execdebug.h,v 1.2 1996/11/08 00:46:14 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */
 #ifndef EXECDEBUG_H
 #define EXECDEBUG_H
 
+#include "access/printtup.h"
+
 /* ----------------------------------------------------------------
  *	debugging defines.
  *
@@ -221,11 +223,15 @@ extern int     NIndexTupleInserted;
 #define EU_nodeDisplay(l)		nodeDisplay(l, 0)
 #define EU_printf(s)			printf(s)
 #define EU1_printf(s, a)		printf(s, a)
+#define EU2_printf(s, a)		printf(s, a, b)
+#define EU3_printf(s, a)		printf(s, a, b, c)
 #define EU4_printf(s, a, b, c, d)	printf(s, a, b, c, d)
 #else
 #define EU_nodeDisplay(l)		
 #define EU_printf(s)			
 #define EU1_printf(s, a)		
+#define EU2_printf(s, a, b)
+#define EU3_printf(s, a, b, c)
 #define EU4_printf(s, a, b, c, d)	
 #endif /* EXEC_UTILSDEBUG */