Index: sc/Makefile
===================================================================
--- sc.orig/Makefile	2014-05-18 14:18:57.049996065 -0500
+++ sc/Makefile	2014-05-18 14:20:54.953997896 -0500
@@ -336,7 +336,7 @@
 # real effect on the reliability of the program, but may concern some
 # people who don't understand them.
 #CFLAGS=-DSYSV3 -O2 -Wall -pipe
-CFLAGS=-DSYSV3 -O2 -pipe
+CFLAGS=-DSYSV3 -O2 -pipe -g
 LIB=-lm -lncurses
 
 # All of the source files
Index: sc/cmds.c
===================================================================
--- sc.orig/cmds.c	2014-05-18 14:18:57.049996065 -0500
+++ sc/cmds.c	2014-05-18 14:20:54.953997896 -0500
@@ -2406,7 +2406,7 @@
     } else {
 	switch (e->op) {
 	    case 'v':
-		if (e->e.v.vp->flags & is_cleared) {
+		if (e->e.v.vp->flags & flag_is_cleared) {
 		    e->op = ERR_;
 		    e->e.o.left = NULL;
 		    e->e.o.right = NULL;
Index: sc/help.c
===================================================================
--- sc.orig/help.c	2014-05-18 14:18:57.049996065 -0500
+++ sc/help.c	2014-05-18 14:20:54.957997896 -0500
@@ -15,6 +15,8 @@
 #include "sc.h"
 #endif /* QREF */
 
+#include <stdlib.h>
+
 char *intro[] = {
 " ",
 #if defined(QREF) && defined(TROFF)
Index: sc/interp.c
===================================================================
--- sc.orig/interp.c	2014-05-18 14:18:57.049996065 -0500
+++ sc/interp.c	2014-05-18 14:20:54.957997896 -0500
@@ -2159,7 +2159,7 @@
 	    n->v = start;
 	    start += inc;
 	    n->flags |= (is_changed|is_valid);
-	    n->flags &= ~(is_cleared);
+	    n->flags &= ~(flag_is_cleared);
 	}
     }
     else if (calc_order == BYCOLS) {
@@ -2170,7 +2170,7 @@
 	    n->v = start;
 	    start += inc;
 	    n->flags |= (is_changed|is_valid);
-	    n->flags &= ~(is_cleared);
+	    n->flags &= ~(flag_is_cleared);
 	}
     }
     else error(" Internal error calc_order");
@@ -2461,7 +2461,7 @@
     if (v->format)
 	scxfree(v->format);
     v->format = NULL;
-    v->flags = (is_changed|is_cleared);
+    v->flags = (is_changed|flag_is_cleared);
     changed++;
     modflg++;
 }
Index: sc/sc.c
===================================================================
--- sc.orig/sc.c	2014-05-18 14:18:57.049996065 -0500
+++ sc/sc.c	2014-05-18 14:20:54.957997896 -0500
@@ -84,15 +84,6 @@
 int	wasforw	= FALSE;
 #endif
 
-void		update();
-void		repaint();
-extern void	doshell();
-extern void	gohome();
-extern void	leftlimit();
-extern void	rightlimit();
-extern void	gototop();
-extern void	gotobottom();
-
 char    curfile[PATHLEN];
 char    revmsg[80];
 
@@ -165,7 +156,7 @@
     if (*pp == NULL) {
         if (freeents != NULL) {
 	    *pp = freeents;
-	    (*pp)->flags &= ~is_cleared;
+	    (*pp)->flags &= ~flag_is_cleared;
 	    (*pp)->flags |= may_sync;
 	    freeents = freeents->next;
 	} else
@@ -827,7 +818,7 @@
 			    break;
 			case 'c':
 			    showcell = (!showcell);
-			    repaint(lastmx, lastmy, fwidth[lastcol]);
+			    repaint(lastmx, lastmy, fwidth[lastcol], 0, A_STANDOUT);
 			    error("Cell highlighting %sabled.",
 				    showcell ? "en" : "dis");
 			    --modflg;	/* negate the modflg++ */
Index: sc/sc.h
===================================================================
--- sc.orig/sc.h	2014-05-18 14:18:57.049996065 -0500
+++ sc/sc.h	2014-05-18 14:20:54.957997896 -0500
@@ -304,7 +304,7 @@
 #define is_deleted   0020
 #define is_locked    0040
 #define is_label     0100
-#define is_cleared   0200
+#define flag_is_cleared   0200
 #define may_sync     0400
 
 /* cell error (1st generation (ERROR) or 2nd+ (INVALID)) */
@@ -630,3 +630,14 @@
 #else
 #include <memory.h>
 #endif
+
+
+void update(int anychanged);
+void repaint(int x, int y, int len, int attron, int attroff);
+
+void     doshell();
+void     gohome();
+void     leftlimit();
+void     rightlimit();
+void     gototop();
+void     gotobottom();
Index: sc/vi.c
===================================================================
--- sc.orig/vi.c	2014-05-18 14:18:57.049996065 -0500
+++ sc/vi.c	2014-05-18 14:20:54.961997896 -0500
@@ -33,13 +33,6 @@
 char *regex();
 #endif
 
-void doshell();
-void gohome();
-void leftlimit();
-void rightlimit();
-void gototop();
-void gotobottom();
-
 #define istext(a) (isalnum(a) || ((a) == '_'))
 
 /*#define bool	int*/
