diff --git a/src/pl/tcl/pltcl.c b/src/pl/tcl/pltcl.c
index 333109cc95e0538bf344599bc412af4e4628fe0f..a57812e20a4606f8547613259d49d8c389ef34ad 100644
--- a/src/pl/tcl/pltcl.c
+++ b/src/pl/tcl/pltcl.c
@@ -3,7 +3,7 @@
  *			  procedural language (PL)
  *
  * IDENTIFICATION
- *	  $Header: /cvsroot/pgsql/src/pl/tcl/pltcl.c,v 1.21 2000/04/16 04:19:41 tgl Exp $
+ *	  $Header: /cvsroot/pgsql/src/pl/tcl/pltcl.c,v 1.22 2000/05/23 01:59:05 tgl Exp $
  *
  *	  This software is copyrighted by Jan Wieck - Hamburg.
  *
@@ -1064,7 +1064,7 @@ pltcl_trigger_handler(FmgrInfo *proinfo)
 
 	if (ret_numvals % 2 != 0)
 	{
-		ckfree(ret_values);
+		ckfree((char *) ret_values);
 		elog(ERROR, "pltcl: invalid return list from trigger - must have even # of elements");
 	}
 
@@ -1086,7 +1086,7 @@ pltcl_trigger_handler(FmgrInfo *proinfo)
 	if (sigsetjmp(Warn_restart, 1) != 0)
 	{
 		memcpy(&Warn_restart, &save_restart, sizeof(Warn_restart));
-		ckfree(ret_values);
+		ckfree((char *) ret_values);
 		pltcl_restart_in_progress = 1;
 		if (--pltcl_call_level == 0)
 			pltcl_restart_in_progress = 0;
@@ -1156,7 +1156,7 @@ pltcl_trigger_handler(FmgrInfo *proinfo)
 	if (rettup == NULL)
 		elog(ERROR, "pltcl: SPI_modifytuple() failed - RC = %d\n", SPI_result);
 
-	ckfree(ret_values);
+	ckfree((char *) ret_values);
 	memcpy(&Warn_restart, &save_restart, sizeof(Warn_restart));
 
 	return rettup;
@@ -1581,7 +1581,7 @@ pltcl_SPI_prepare(ClientData cdata, Tcl_Interp *interp,
 		free(qdesc->argvalues);
 		free(qdesc->arglen);
 		free(qdesc);
-		ckfree(args);
+		ckfree((char *) args);
 		return TCL_ERROR;
 	}
 
@@ -1730,7 +1730,7 @@ pltcl_SPI_execp(ClientData cdata, Tcl_Interp *interp,
 	 ************************************************************/
 	if (callargs != NULL)
 	{
-		ckfree(callargs);
+		ckfree((char *) callargs);
 		callargs = NULL;
 	}
 
@@ -1843,7 +1843,7 @@ pltcl_SPI_execp(ClientData cdata, Tcl_Interp *interp,
 						  TCL_VOLATILE);
 			if (callargs != NULL)
 			{
-				ckfree(callargs);
+				ckfree((char *) callargs);
 				callargs = NULL;
 			}
 			return TCL_ERROR;
@@ -1867,7 +1867,7 @@ pltcl_SPI_execp(ClientData cdata, Tcl_Interp *interp,
 					qdesc->argvalues[j] = (Datum) NULL;
 				}
 			}
-			ckfree(callargs);
+			ckfree((char *) callargs);
 			callargs = NULL;
 			pltcl_restart_in_progress = 1;
 			Tcl_SetResult(interp, "Transaction abort", TCL_VOLATILE);
@@ -1890,7 +1890,7 @@ pltcl_SPI_execp(ClientData cdata, Tcl_Interp *interp,
 		 * Free the splitted argument value list
 		 ************************************************************/
 		memcpy(&Warn_restart, &save_restart, sizeof(Warn_restart));
-		ckfree(callargs);
+		ckfree((char *) callargs);
 		callargs = NULL;
 	}
 	else