diff --git a/Modules/_cursesmodule.c b/Modules/_cursesmodule.c
index 0360994..dfa1012 100644
--- a/Modules/_cursesmodule.c
+++ b/Modules/_cursesmodule.c
@@ -114,9 +114,8 @@
     curses module in other ways.  So the code will just specify 
     explicit prototypes here. */
 extern int setupterm(char *,int,int *);
-#ifdef sgi
-extern char *tigetstr(char *);
-extern char *tparm(char *instring, ...);
+#ifdef __sgi
+#include <term.h>
 #endif
 
 #if defined(sgi) || defined(__sun__)
@@ -721,7 +720,7 @@
     PyErr_SetString(PyExc_TypeError, "getch requires 0 or 2 arguments");
     return NULL;
   }
-  return PyInt_FromLong(rtn);
+  return PyInt_FromLong((long)rtn);
 }
 
 static PyObject *
@@ -1305,7 +1304,6 @@
   switch(ARG_COUNT(args)) {
   case 0:
     return PyCursesCheckERR(scroll(self->win), "scroll");
-    break;
   case 1:
     if (!PyArg_Parse(args, "i;nlines", &nlines))
       return NULL;
@@ -1325,7 +1323,6 @@
     if (!PyArg_Parse(args,"(ii);start,count",&st,&cnt))
       return NULL;
     return PyCursesCheckERR(touchline(self->win,st,cnt), "touchline");
-    break;
   case 3:
     if (!PyArg_Parse(args, "(iii);start,count,val", &st, &cnt, &val))
       return NULL;
diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c
index f17b95a..8ff353f 100644
--- a/Modules/posixmodule.c
+++ b/Modules/posixmodule.c
@@ -1215,7 +1215,7 @@
 	int i;
 	if (!PyArg_ParseTuple(args, "i:umask", &i))
 		return NULL;
-	i = umask(i);
+	i = (int)umask(i);
 	if (i < 0)
 		return posix_error();
 	return PyInt_FromLong((long)i);
